←2012-12 2013-01 2013-02→ ↑2013 ↑all
2013-01-01
00:00:15 <nooga> I'm proud to host a new year's eve for a number of people, including Rolf Henrik and Thomas Monrad Erlandsen
00:00:40 <nooga> and I'm more than sure that they will outdrink me tonight
00:01:19 <oerjan> OKAY
00:02:20 <coppro> happy UTC new year
00:02:40 <elliott> nooga: who
00:02:46 <nooga> 1 hour late
00:02:51 <nooga> elliott: whe who
00:02:56 <nooga> damn
00:02:58 <nooga> who who
00:03:12 <oerjan> elliott: he's abducted some norwegians, clearly
00:03:21 <oerjan> and are forcing them to drink
00:03:25 <oerjan> *is
00:03:49 <nooga> i think they will kill me for another one tbh
00:07:30 <fizzie> High-voltage alcohol sounds dangerous.
00:07:35 <fizzie> What counts as some?
00:09:30 <nooga> high voltage is 40%-60%
00:09:46 -!- Tod-Autojoined2 has joined.
00:09:47 -!- Tod-Autojoined has quit (Read error: Connection reset by peer).
00:10:04 <nooga> you should know, as a Finnish
00:10:34 <Phantom_Hoover> help i'm starting to like the taste of champagne
00:10:56 <monqy> woops
00:10:58 <fizzie> The taste of change.
00:11:06 <nooga> oh no
00:11:10 <elliott> Phantom_Hoover: gross we're no longer friends
00:11:15 <nooga> Phantom_Hoover: puke instntly
00:11:39 <monqy> i've never had the champagne
00:11:51 <Phantom_Hoover> elliott, it's not my fault i was forced to drink it from an early age
00:11:58 <nooga> are you seriosu monqy ?
00:12:04 <nooga> serious*
00:12:06 <nooodl> forced?
00:12:24 <nooodl> i've never had the champagne either...
00:12:37 <hagb4rd> social conventions
00:12:40 <hagb4rd> cheers droogies
00:12:57 <monqy> yes im serious
00:13:09 <nooga> hagb4rd: cheers nolifes
00:13:38 <hagb4rd> ^rot13 nolifes
00:13:39 <fungot> abyvsrf
00:13:53 <fizzie> ^rot13 cheers
00:13:53 <fungot> purref
00:16:34 <nooga> a pierdole
00:17:19 <hagb4rd> spoko nooga
00:17:25 -!- GreyKnight has joined.
00:17:59 <nooga> no nie wątpie
00:18:14 <GreyKnight> hey it's 2013
00:18:30 <hagb4rd> happy new one greyknight
00:18:54 <GreyKnight> hm I'm not sure what to do with this year
00:19:16 <nooga> make it 2x more awesome than the previous one
00:19:21 * GreyKnight tries to eat it
00:19:58 <fizzie> If you eat it, nobody else will have it.
00:20:00 <nooodl> idea: a rot13-like cypher that rot10-encodes the consonants and rot3-encodes the vowels: http://codepad.org/wX3YL1lI
00:21:49 <GreyKnight> http://esolangs.org/wiki/Numberwang_%28brainfuck_derivative%29
00:21:58 <GreyKnight> Zzzz
00:22:15 <Bike> is meant to produce code that appears extremely random and impossible to understand
00:22:24 <nooodl> increment (increase by one)
00:22:36 <nooodl> wow...
00:22:58 <nooodl> it's literally the most boring esolang and this is coming from the guy who made zeptobasic
00:24:34 <nooga> meh
00:25:18 <fizzie> I thought Numberwang was something else... wait, that's a different Numberwang?
00:25:57 <GreyKnight> there is also http://esolangs.org/wiki/Numberwang
00:26:05 <nooga> meeeeeh
00:26:12 <nooga> fuick
00:26:13 <ais523> fizzie: it's a spoof gameshow
00:26:16 <ais523> that's pretty funny
00:26:18 -!- Nisstyre-laptop has quit (Quit: Leaving).
00:26:51 <fizzie> I know (FSVO) of that, but I was thinking of that other esolang.
00:28:44 <elliott> it's not really a "spoof gameshow" given that it isn't actually a real gameshow
00:29:00 <monqy> gameshow spoof
00:30:29 <GreyKnight> "spoof" means things are real :-I
00:31:00 <oerjan> ^rot13 spoof
00:31:01 <fungot> fcbbs
00:31:13 <monqy> like a spoof but it's just in your head
00:34:33 <GreyKnight> ^rot13 2013
00:34:35 <fungot> 2013
00:35:53 <oerjan> GreyKnight: *GASP*
00:35:58 <oerjan> ^rot13 GASP
00:35:59 <fungot> TNFC
00:38:09 -!- ion has quit (Ping timeout: 255 seconds).
00:39:05 -!- GreyKnight has quit (Ping timeout: 265 seconds).
00:39:41 -!- GreyKnight has joined.
00:41:00 -!- ion has joined.
00:48:38 -!- GreyKnight has quit (Ping timeout: 252 seconds).
00:51:02 -!- GreyKnight has joined.
00:53:13 <GreyKnight> `quote
00:53:14 <HackEgo> 587) <elliott> fizzie: It's like a JIT, if JITs were... strings.
00:55:45 <Phantom_Hoover> if jits were strings, compilers would ride
00:58:33 -!- GreyKnight has quit (Ping timeout: 244 seconds).
01:01:53 -!- GreyKnight has joined.
01:05:21 <fizzie> Huh, weird. This popular Finnish computers-etc. shop is selling fancy Norwegian bottled water.
01:06:32 <fizzie> http://en.wikipedia.org/wiki/Voss_(water) "three blindfolded wine experts rated Voss water lowest of the six waters tested, which included Helsinki public tap water" but why would you ask a wine expert to test water?
01:07:21 <Jafet> They couldn't find bottled water experts
01:07:39 <fizzie> I suppose we're such a small place, that might be difficult.
01:07:46 <fizzie> I'm sure there are some American bottled water experts.
01:07:50 <elliott> gosh, a sample size of *three*
01:08:04 -!- asiekierka has joined.
01:08:21 -!- GreyKnight has quit (Ping timeout: 245 seconds).
01:08:37 <fizzie> The funniest, these guys are speaking of the waters just like I imagine they'd be speaking of wines.
01:08:41 <fizzie> Sadly, the article is in Finnish.
01:09:01 <kmc> happy megasecond 1357!
01:09:13 <fizzie> "Secondary water is pretty much translucent spring day in suitable adjectives, such as fresh and bright and tangy, thinking about the new house." Yeah, there's something lost in translation there, I'd say.
01:10:39 <oerjan> `frink 1357 megaseconds -> year
01:10:48 <HackEgo> 43.001653617620127899
01:10:59 <nooga> wines?
01:11:02 <Jafet> `run date +%s
01:11:04 <oerjan> > 2013 - 43
01:11:04 <HackEgo> 1357002663
01:11:06 <lambdabot> 1970
01:11:16 <oerjan> OKAY
01:11:27 <nooga> YAKO
01:11:52 -!- GreyKnight has joined.
01:11:57 <fizzie> Party like it's 1357e6?
01:12:14 <oerjan> megaseconds are a bit short for partying
01:12:36 <nooga> rpc8ecc
01:12:44 <oerjan> `frink 1 megasecond -> days
01:12:53 <HackEgo> 625/54 (approx. 11.574074074074074)
01:13:11 <fizzie> At least you can have a party reasonably often.
01:13:20 <nooga> why are you people such nerds
01:13:26 <fizzie> (Or maybe a megasecond-long party?)
01:13:40 <oerjan> nooga: shush, you are still drunk
01:13:40 <elliott> fizzie: "thinking about the new house"
01:13:41 <elliott> really good
01:13:52 <nooga> drunk or not
01:14:14 <nooga> I'm completely capable of understanding you all
01:14:17 <nooga> and
01:14:28 <oerjan> you are not half as think as we drunk you are?
01:14:29 <nooga> I had a great time tonight
01:14:41 <fizzie> elliott: Actually, the guy's surname is "Uusitalo", lit. "Newhouse".
01:14:53 <nooga> half as we you think
01:14:53 <elliott> fizzie: fuck you for ruining that for m
01:14:54 <elliott> e
01:14:57 <elliott> i hate you
01:15:17 <fizzie> It's what I do.
01:18:33 -!- WeThePeople has joined.
01:22:23 <nooga> love it
01:24:39 -!- GreyKnight has quit (Ping timeout: 276 seconds).
01:27:25 -!- GreyKnight has joined.
01:28:34 <GreyKnight> is nooga drunk enough to start creating BF derivatives :-I
01:32:55 -!- etb has joined.
01:36:16 -!- GreyKnight has quit (Ping timeout: 244 seconds).
01:36:38 -!- GreyKnight has joined.
01:39:26 <nooga> GreyKnight: shush
01:40:07 <oerjan> when your brain cannot be usefully distinguished from a brick, you are drunk enough
01:41:19 <nooga> I think you underestimate my capabilities
01:41:44 <kmc> `frink 1 year -> second
01:41:51 <HackEgo> 3.1556925974678400e+7
01:42:00 <nooga> brb
01:42:14 <nooga> i have to throw my macbook at my brother
01:46:23 -!- nooga has quit (Ping timeout: 245 seconds).
01:46:59 <ais523> fizzie: oh wow, the plot for anticipation2's tape position heatmap is neat
01:47:01 <ais523> you can see the tripwires
01:58:13 <oerjan> :t (>->)
01:58:15 <lambdabot> Not in scope: `>->'
01:58:15 <lambdabot> Perhaps you meant one of these:
01:58:15 <lambdabot> `>>' (imported from Control.Monad.Writer),
01:59:18 <Jafet> @hoogle (>.>)
01:59:19 <lambdabot> No results found
01:59:24 <Jafet> @hoogle (<.<)
01:59:24 <lambdabot> No results found
01:59:39 <Jafet> (\o\)
02:00:01 <oerjan> Jafet: i was (implausibly) checking if the new pipes library had been imported to lambdabot
02:00:25 * elliott hopes it isn't.
02:01:44 <oerjan> because you don't like pipes, or because you think lambdabot should be restricted to ubiquitous stuff?
02:02:00 <elliott> well maybe a bit of both
02:02:18 <elliott> I like lens in lambdabot, not convinced any sort of pipey conduity library would be useful
02:06:43 <kmc> loud pipes save lives
02:09:29 -!- nooga has joined.
02:14:11 -!- nooga has quit (Ping timeout: 245 seconds).
02:18:25 -!- nooga has joined.
02:28:22 -!- Jafet has quit (Quit: Leaving.).
02:31:20 <oerjan> fungot: wisdom please
02:31:21 <fungot> oerjan: mr president, commissioner, ladies and gentlemen, changing this matter could be formalised because cuba was not present in a special group, namely girls and women in these countries.
02:31:54 <oerjan> obviously.
02:34:08 -!- nooga has quit (Ping timeout: 255 seconds).
02:51:50 -!- copumpkin has quit (Ping timeout: 252 seconds).
02:52:23 -!- copumpkin has joined.
02:53:38 <hagb4rd> it would be nice if fungot were able to learn something by talking to people in the channel. we could implement some simple heuristics and a few syntax patterns like statements (e.g.: "bood is red"; "red is a color"), or conditionals like ("if you jump into water, you get wet") etc
02:53:40 <fungot> hagb4rd: mr president, commissioner, first may i also ask you to think a little about it coming as i do with the fact that parliament now has a 220 fnord middle class and is responsible for coordinating humanitarian aid to the economic and monetary affairs, on the current debate raging in america, the philippines. while protesting peacefully against the erection of a fnord military force ( article 17 of the eu' s member states
02:54:38 <Bike> the erection of a fnord military force sounds like a grevious matter indeed.
02:54:39 <hagb4rd> with time fungot could be able to make relations between objects/verbs
02:54:41 <fungot> hagb4rd: madam president, by way of question, is that this parliament has always shown willingness to set up a new method of certification was also introduced, which caused extremely widespread damage, both to restate and to demand access to medical care.' the states: ' we must continue with these meetings for as long as it is that future action will include an examination of the current council presidency's suggestion that we
02:54:52 <Bike> "let's use a neural network"
02:55:25 <hagb4rd> sth like that
02:55:49 <hagb4rd> but maybe less sophisticated
02:56:21 <Bike> a dendrite network
02:56:32 <hagb4rd> i'd like the idea of starting it from scratch at least for training/learning issues
02:58:11 <hagb4rd> and keep things at basic level
02:58:54 <Phantom_Hoover> let's use
02:59:00 <Phantom_Hoover> genetic algorithms
02:59:08 <Phantom_Hoover> and fractals
03:00:15 <kmc> a neural network wired to a support vector machine wired to a fractal genetic algorithm wired to a guy in Bangladesh who gets 3¢ for each right answer
03:00:24 <fizzie> I'd just import Mentifex's AI MIND into it if it came to that.
03:00:27 <hagb4rd> lol
03:00:37 -!- Frooxius has quit (Ping timeout: 252 seconds).
03:00:48 -!- Jafet has joined.
03:01:41 <hagb4rd> @google Mentifex's AI MIND
03:01:42 <lambdabot> http://www.nothingisreal.com/mentifex_faq.html
03:01:42 <lambdabot> Title: The Arthur T. Murray/Mentifex FAQ
03:03:16 <hagb4rd> "Murray claims that Mind is an artificial mind which is capable of thought, sentience, and linguistic communication. At the moment, however, it does not appear to do anything except spew meaningless and ungrammatical strings of words." <-- doesn't sound promising at all
03:03:19 <Bike> i'm always disappointed that the full glory of his TLD proposal isn't on there
03:03:37 <Bike> hagb4rd: nonsense, he's already up to the latest in befunge-oriented ircbot engineering
03:04:04 <fizzie> fungot: Say something meaningful.
03:04:05 <fungot> fizzie: mr president, ladies and gentlemen, i would like to say to the honourable member who appealed for a special unit for work-related health problems in general.
03:04:53 <Bike> that's... I think I could diagram that as grammatical! better get to work mister ifex
03:05:08 <hagb4rd> fungot: red is a coulour
03:05:09 <fungot> hagb4rd: madam president, the commission's communication also deals with the social and cultural life. the issue that mr sacrdeus is addressing. it has not been accepted, and we must follow the path which more than ever the development of an external strategy for areas in the european union
03:05:18 <Phantom_Hoover> fizzie, man, that thing's from a time when 'meme' wasn't common parlance
03:05:21 <hagb4rd> fungot: what is red?
03:05:21 <fungot> hagb4rd: mr president, a more efficient organisation for fighting against poverty and social exclusion are other issues.
03:05:26 <ais523> hmm, when's the last time the president of the EU was a woman?
03:05:56 <ais523> fizzie: also, is fungot in europarl mode rigged to always start "mr president" or "madam president"?
03:05:57 <fungot> ais523: madam president, it is because too much ground has been given by parliament to the conclusions of the european union
03:06:05 <ais523> or doe sit just do that because most of the sentences start like that?
03:06:17 <oerjan> ais523: i'd assume that's the president of the parliament
03:06:28 <ais523> oerjan: hmm, which might be a different person?
03:06:31 <elliott> I wouldn't be surprised if the answer was never
03:06:31 <ais523> the EU is confusing
03:06:32 <fizzie> ais523: Not "rigged", it's just a natural consequence of the model. And it's not quite always.
03:06:35 <Bike> fungot: i ain't the president of nothing mother fucker
03:06:36 <ais523> but I didn't realise it was that confusing
03:06:36 <fungot> Bike: mr president, i close my eyes and i had better not give in to the blackmail which says " if we do so.
03:06:42 -!- GreyKnight has quit (Ping timeout: 276 seconds).
03:06:49 <oerjan> ais523: i'm pretty sure they recently changed the system to add at least one more president
03:07:40 <oerjan> ais523: there were _3_ EU presidents accepting the nobel prize this year :P
03:08:08 <oerjan> one was the parliament one, which was the one i didn't know
03:08:12 <ais523> oerjan: so basically, the rule of the EU
03:08:18 <ais523> is that you make everyone a president
03:08:21 <oerjan> then there were barroso and rompuy[sp?]
03:08:24 <fizzie> I don't have a script for back-converting (or dumping models, or enough awakeness to peek at the binary data), otherwise I'd check the actual probabilities of starting with that.
03:08:31 <ais523> so that you can use "mr president" or "madam president" despite not knowing their names
03:08:42 <ais523> I imagine it could be awkward if you didn't know their genders (or if they weren't gender-binary people)
03:08:55 <oerjan> barroso is the president of the commision iirc
03:09:12 <oerjan> and rompuy is the new kind, who is sort of coordinating or something
03:09:16 <Bike> is there a preferred honorific in place for our first nonbinary president?
03:09:34 <fizzie> Ser President.
03:09:37 -!- GreyKnight has joined.
03:09:56 <Bike> isn't that too much like "sir", though
03:10:10 <fizzie> It's in use, for some values of use.
03:10:11 <oerjan> but anyway, since fungot is doing parliament speeches i assume e is referring to the president of the parliament.
03:10:12 <fungot> oerjan: mr president, you are interpreting the text in front of the cars on fnord -the requirement that fuel consumption data be included in an annex to our rules of procedure, and so it is with specific reference to the fact that with this resolution.
03:10:30 <GreyKnight> hagb4rd: not sure, I know a few human beings who could be described that way
03:11:02 <hagb4rd> GreyKnight: what do you mean?
03:12:07 <hagb4rd> what do you refer to?
03:12:50 <hagb4rd> i'm lost :(
03:14:06 <oerjan> "There have been twenty-eight Presidents since the Parliament was created in 1952, thirteen of whom have served since the first Parliamentary election in 1979. Two Presidents have been women and most have come from the older member states."
03:14:53 -!- ais523 has quit.
03:15:05 -!- GreyKnight has quit (Ping timeout: 255 seconds).
03:15:24 -!- greyooze has joined.
03:15:33 <greyooze> hagb4rd: "At the moment, however, it does not appear to do anything except spew meaningless and ungrammatical strings of words."
03:15:48 <oerjan> Simone Veil 1979-1983, Nicole Fontaine 1999-2002
03:15:57 <oerjan> ^style
03:15:57 <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
03:16:03 <oerjan> ^style europarl
03:16:03 <fungot> Selected style: europarl (European Parliament speeches during approx. 1996-2006)
03:16:15 <oerjan> that would appear to be the latter, then
03:16:25 <hagb4rd> you should know that the president of the E.U. is just the guy shaking many hands having no power at all
03:16:38 <Bike> "guy", you say
03:16:51 <oerjan> hagb4rd: that's probably rompuy then
03:18:46 -!- greyooze has changed nick to GreyKnight.
03:19:43 <oerjan> oh my mistake, the EU actually has _four_ presidents, one of them just wasn't at the nobel award
03:19:52 <hagb4rd> lol
03:19:54 <Phantom_Hoover> hagb4rd, don't eat the lies! the president's hand is implanted with a small taser to keep the heads of state in line
03:19:57 <oerjan> or wasn't speaking, anyway
03:20:30 <oerjan> oh wait no
03:20:40 <oerjan> one of them is a country, not a person :P
03:20:47 <oerjan> (currently cyprus)
03:21:57 <fizzie> mr:0.598 madam:0.143 i:0.069 the:0.051 we:0.011 and the other 335 possible initial words have frequencies <1%.
03:22:17 <oerjan> and also there's three of them, the current, previous and next one
03:22:19 <fizzie> (Disclaimer: fungot might be implementing the selection algorithm wrong.)
03:22:20 <fungot> fizzie: various points should be made very clear and strict regulations would eliminate the southern states. these questions can be summarised as follows: the council should accept the wonderful job done by the spanish fleet. it began to fish scorpion fish gallineta in spanish in november and december of 1995 that the commission will work with optimum efficiency. that is why we welcome the debate which arose out of turkey' s po
03:22:25 <fizzie> Ha!
03:22:56 <monqy> fungot...you got cut off....
03:22:57 <fungot> monqy: mr president, adoption of the common organization of the market in question. the incoming irish presidency if it has binding legal status its content must, of course, that we can support the report, namely paragraph 59, in particular the idea that only a rigorous budgetary framework set until 2006, because there are regions, such as whether the threshold should be higher than the ospar value, to wit, the burden of proof
03:23:12 <monqy> fungot..........
03:23:12 <fungot> mlsqn: mr president, i would like to take this opportunity of describing to you on behalf of the committee on budgets. on 17 february, it was also agreed to draw up a policy for the pharmaceutical industry is essential for europe to maintain a balance between the united states
03:23:20 <monqy> mlsqn, nice
03:23:45 <fizzie> "various" has a frequency of approximately 0.000059834. (1/16713, to be exact.)
03:24:41 <oerjan> wait it may not actually be previous and next, but ... darn it.
03:24:54 -!- GreyKnight has quit (Ping timeout: 276 seconds).
03:25:20 <elliott> fizzie: why is it mlsqn...
03:25:24 <elliott> monqy: imo /nick mlsqn
03:25:58 <monqy> elliott: that corruption thing that happens sometimes when it cuts off(that's why i said fungot i wanted the corruptions)
03:25:59 <fungot> monqy: mr president, on behalf of mr bertens our distinguished rapporteur on cyprus. peace and tranquillity in the balkans. and then the uk. in each case. we are living in direct danger and fear, are being prevented from taking what in a lot of energy can contribute towards our progress to date in ireland under the community support frameworks, when we ought to remind ourselves of the appalling attack on madrid, which is not be
03:26:07 <fizzie> Because the message was sent by "mlsqn!~oe:monqy!~help@pool-98-108-214-230.snloca.dsl-w.verizon.net".
03:26:16 <oerjan> there's an 18-month trio, each country of which is president for 6 months.
03:26:27 <fizzie> Europarl is probably the most likely dataset to cause corruption, APPROPRIATELY ENOUGH.
03:27:03 <elliott> monqy: yeah i know but...
03:27:46 -!- GreyKnight has joined.
03:28:47 <Jafet> fungot for president
03:28:48 <fungot> Jafet: mr president, i would like to remind the commission, we also said that it would be useful if the presidency explained this to him personally and have it recognized in the european union's democratic principles like any other place such as algeciras to mention the kyoto objective, to which he replied that he could reply that the commission has recently put forward a number of years to cover their repayment. this is in pla
03:28:55 <hagb4rd> which actually means that country pay the bills at the cocktail-parties in this period
03:29:07 <Jafet> fungot five president
03:29:08 <fungot> Jafet: mr president, commissioner vitorino, feel really has been somewhat abandoned by the world health organisation claims. this is the cornerstone of the union institutions will respond in a moment. i would therefore ask you to look into the matter once and for all purposes should be deducted from capital to prevent the influx and concentration of the population, together with a sensible judicial system. we take your words to
03:30:47 <hagb4rd> so, that's how it works
03:30:56 <hagb4rd> fungot: tell me about politics
03:30:57 <fungot> hagb4rd: mr president, i think it is much less willing to bow to the majority of the people who suffer from genetic and other medical centres. over six million diagnoses are made annually in europe.
03:31:05 <hagb4rd> it works!
03:31:26 <fizzie> http://sprunge.us/fGjM look at it go.
03:31:45 <oerjan> those horrible genetic centres
03:32:35 <Jafet> We need medical centres for medical centres
03:39:01 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:40:51 <fizzie> For comparison, most likely opening words for ^style irc: i:0.108 POPAREN:0.028 the:0.028 and:0.027 you:0.026 but:0.025 it:0.025 what:0.021 it's:0.019 so:0.018 i'm:0.017 that:0.015 if:0.014 UNK:0.014 that's:0.012 PODQUOT:0.010 is:0.010 how:0.010 and then it goes <1%.
03:41:02 <fizzie> ("POPAREN" is a "(".)
03:42:27 -!- Vorpal has quit (Ping timeout: 276 seconds).
03:43:22 <Jafet> fungot: ("unk
03:43:23 <fungot> Jafet: ladies and gentlemen, i would ask the commission to make proposals for further improvement. but, madam president-in-office of the council, making way for his opponent and probably lawfully elected successor, vojislav kostunica, without any opportunity to present his views on these legal issues.
03:43:49 <Jafet> @google vojislav kostunica
03:43:51 <lambdabot> http://en.wikipedia.org/wiki/Vojislav_Ko%C5%A1tunica
03:43:51 <lambdabot> Title: Vojislav Koštunica - Wikipedia, the free encyclopedia
03:44:13 <fizzie> I may have to sleeb, it's 05:44am already in here.
03:45:59 <elliott> fizzie: lame
03:48:21 -!- GreyKnight has quit (Ping timeout: 245 seconds).
03:50:22 -!- oerjan has quit (Quit: Sleeb is für the week).
03:51:38 -!- GreyKnight has joined.
03:52:39 <Jafet> Weep for the sleek
03:54:11 <Jafet> ^style fungot
03:54:12 <fungot> Selected style: fungot (What I've said myself)
03:54:23 <Jafet> fungot style
03:54:24 <fungot> Jafet: perhaps, if i could but learn is when you're fairies, you know, that thing. what you have? transform! this trading house. it's
03:54:56 <hagb4rd> awful
03:55:37 <Jafet> I wonder what fungot converges to.
03:55:38 <fungot> Jafet: or is it just me, or i: yet, you rogue!
04:02:34 -!- GreyKnight has quit (Ping timeout: 265 seconds).
04:06:08 -!- GreyKnight has joined.
04:06:27 -!- GreyKnight has quit (Client Quit).
04:06:43 -!- GreyKnight has joined.
04:20:56 -!- Jafet has quit (Quit: Leaving.).
04:23:51 -!- GreyKnight has quit (Ping timeout: 265 seconds).
04:25:25 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
04:26:50 -!- GreyKnight has joined.
05:02:03 <kmc> happy EST new year!
05:05:51 <etb> yeee
05:06:13 <elliott> kmc: fuck EST
05:06:13 <elliott> fuck life
05:06:17 <elliott> fuck everything
05:07:35 <etb> no man no
05:08:59 <elliott> yes
05:11:34 -!- GreyKnight has quit (Ping timeout: 255 seconds).
05:12:18 -!- greyooze has joined.
05:12:21 -!- greyooze has changed nick to GreyKnight.
05:12:30 * GreyKnight shoots elliott with a firework -----==>
05:12:55 <kmc> don't fuck a wood chipper
05:18:14 -!- DHeadshot has joined.
05:21:28 -!- GreyKnight has quit (Ping timeout: 255 seconds).
05:23:03 -!- nooodl has quit (Ping timeout: 245 seconds).
05:24:55 -!- GreyKnight has joined.
05:29:57 <quintopia> oh
05:37:28 -!- GreyKnight has quit (Ping timeout: 240 seconds).
06:40:23 <kmc> yes indeed
06:40:26 <kmc> `quote
06:40:31 <HackEgo> 302) <crystal-cola> (im not a lawyer) <crystal-cola> (im just making stuff up
06:40:35 <kmc> `quote
06:40:36 <HackEgo> 688) <zzo38> Yes, it is true; I don't really like PHP either.
06:40:38 <kmc> `quote
06:40:40 <HackEgo> 6) <oerjan> what, you mean that wasn't your real name? <Warrigal> Gosh, I guess it is. I never realized that.
06:40:42 <kmc> `quote
06:40:43 <HackEgo> 692) <Phantom_Hoover> "Category 4 ("professional") fireworks are for sale only to fireworks professionals. They have no restrictions," <Phantom_Hoover> OK I need to become a pyrotechnician. <ais523> Phantom_Hoover: that's like wanting to become a locksmith <ais523> so that you can legally own lockpicks <Phantom_Hoover> Did I mention when I want
06:40:43 <kmc> `quote
06:40:45 <HackEgo> 451) <fungot> elliott: an old colonel lost, but a new brother gained. together they will ascend, each time you must be adventurin'.
06:58:34 -!- asiekierka has quit (Excess Flood).
07:00:37 -!- asiekierka has joined.
07:06:20 <kmc> `quote
07:06:21 <HackEgo> 282) <monqy> I've only watched bad movies about video game. I enjoyed every second of it.
07:17:02 <elliott> is this slomo quoting
07:19:37 <monqy> did 692 get cut off
07:22:20 <elliott> yes
07:47:56 -!- WeThePeople has quit (Quit: Leaving).
08:09:06 -!- Bike has quit (Quit: sleep).
08:22:53 -!- sebbu has quit (Read error: Connection reset by peer).
08:23:23 -!- sebbu has joined.
08:36:54 <kmc> [mp3float @ 0x7fb7575fb400]big_values too big
08:38:41 <shachaf> error: 'long long long' is too long for GCC
08:59:11 -!- zzo38 has quit (Remote host closed the connection).
09:11:58 -!- etb has quit (Ping timeout: 240 seconds).
09:31:17 -!- sirdancealot has quit (Remote host closed the connection).
09:40:36 -!- sebbu2 has joined.
09:40:57 -!- sebbu2 has quit (Changing host).
09:40:57 -!- sebbu2 has joined.
09:43:53 -!- sebbu has quit (Ping timeout: 245 seconds).
10:02:07 -!- Jafet has joined.
10:53:53 -!- asiekierka has quit (Excess Flood).
10:54:00 -!- asiekierka has joined.
11:02:18 <hagb4rd> `log Did I mention when I want
11:02:49 <HackEgo> 2013-01-01.txt:06:40:43: <HackEgo> 692) <Phantom_Hoover> "Category 4 ("professional") fireworks are for sale only to fireworks professionals. They have no restrictions," <Phantom_Hoover> OK I need to become a pyrotechnician. <ais523> Phantom_Hoover: that's like wanting to become a locksmith <ais523> so that you can legally own lockpicks <Phanto
11:05:12 <hagb4rd> `pastelog Did I mention when I want
11:05:27 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.4822
11:09:56 <hagb4rd> `help
11:09:56 <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/
11:14:14 -!- nooga has joined.
11:40:06 <Jafet> `stat help
11:40:08 <HackEgo> stat: cannot stat `help': No such file or directory
11:40:15 <Jafet> `run which help
11:40:17 <HackEgo> No output.
11:44:00 <hagb4rd> `ls bin
11:44:01 <HackEgo> ​? \ @ \ WELCOME \ addquote \ allquotes \ anonlog \ calc \ define \ delquote \ etymology \ forget \ fortune \ frink \ google \ hatesgeo \ interp \ joustreport \ jousturl \ json \ karma \ karma- \ karma+ \ learn \ log \ logurl \ lua \ luac \ luarocks \ luarocks-admin \ macro \ maketext \ marco \ No \ pastaquote \ paste \ pastefortune
11:52:52 -!- AnotherTest has joined.
11:53:02 <AnotherTest> hello
11:54:04 -!- AnotherTest has quit (Client Quit).
11:54:25 -!- AnotherTest has joined.
11:58:57 <hagb4rd> `ls
11:58:58 <HackEgo> bin \ canary \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ ibins \ interps \ karma \ lib \ luabuild \ luafilesystem-1.6.2-1.rockspec \ luafilesystem-1.6.2-1.src.rock \ luarocks.err \ luarocks.out \ paste \ penlight-1.0.0-1.rockspec \ penlight-1.0.0-1.src.rock \ quotes \ quotese \ share \ wisdom
11:59:44 <hagb4rd> `ls bin > help.txt
11:59:45 <HackEgo> ls: cannot access bin > help.txt: No such file or directory
12:00:24 <hagb4rd> `ls paste
12:00:25 <HackEgo> paste.10030 \ paste.1009 \ paste.1013 \ paste.1014 \ paste.10183 \ paste.10198 \ paste.10249 \ paste.10325 \ paste.10348 \ paste.10378 \ paste.10571 \ paste.10590 \ paste.10605 \ paste.10757 \ paste.10835 \ paste.10941 \ paste.10997 \ paste.11095 \ paste.11100 \ paste.11140 \ paste.11204 \ paste.11295 \ paste.11427 \ paste.11437 \ paste.11439 \ pas
12:00:41 <hagb4rd> `ls bin > /paste/help.txt
12:00:43 <HackEgo> ls: cannot access bin > /paste/help.txt: No such file or directory
12:01:06 <hagb4rd> `ls bin >| /paste/help.txt
12:01:07 <HackEgo> ls: cannot access bin >| /paste/help.txt: No such file or directory
12:11:30 -!- Phantom_Hoover has joined.
12:17:13 -!- DHeadshot has quit (Ping timeout: 245 seconds).
12:18:45 -!- DHeadshot has joined.
12:23:05 <hagb4rd> `pwd
12:23:06 <HackEgo> ​/hackenv
12:23:29 <hagb4rd> `ls bin > paste/help.txt
12:23:31 <HackEgo> ls: cannot access bin > paste/help.txt: No such file or directory
12:34:40 <hagb4rd> http://www.youtube.com/watch?v=j7AsYxY6nz4 <-- good ol` caleb quotes
12:34:59 <monqy> quit
12:35:04 -!- monqy has quit (Quit: hello).
12:48:07 -!- sebbu2 has changed nick to sebbu.
13:24:05 -!- Phantom_Hoover has quit (Remote host closed the connection).
14:15:55 -!- nooodl has joined.
14:53:05 -!- WeThePeople has joined.
15:02:40 <FreeFull> http://chrisdone.com/z/
15:19:09 -!- mig22 has joined.
15:20:29 -!- carado has joined.
15:29:31 -!- Phantom_Hoover has joined.
15:34:33 -!- copumpkin has joined.
15:57:52 -!- Frooxius has joined.
16:22:07 -!- etb has joined.
16:22:27 -!- etb has quit (Client Quit).
16:22:31 -!- flood0r2 has joined.
16:23:04 -!- flood0r2 has changed nick to etb.
17:07:46 -!- Bike has joined.
17:17:13 -!- sebbu has quit (Read error: Connection reset by peer).
17:17:41 -!- sebbu has joined.
17:35:11 -!- Taneb has joined.
17:45:18 <nortti> "We have DOS, Windows, OS/2, XENIX, and NT. It's Microsoft against Microsoft against Microsoft against Microsoft."
17:45:23 -!- AnotherTest has quit (Read error: No route to host).
17:45:52 -!- AnotherTest has joined.
17:50:12 <Sgeo> Ugh, I commented on my Tumblr, it isn't showing up
17:50:24 <Sgeo> I think maybe the Javascript won't show comments that look like they're from the future?
17:50:43 <Sgeo> Because my computer's clock is a bit slow, when I initially posted it said "in 3 minutes"
17:50:59 <Taneb> You the Sgeo who posts about Lisp?
17:51:28 <Sgeo> I've posted about Common Lisp and Clojure
17:51:56 <Sgeo> Ok, my comment is flat out not showing up
17:52:03 <Sgeo> Taneb, do you mean sgeo.tumblr.com ? That's me
17:52:39 -!- ais523 has joined.
17:53:22 <Sgeo> It's not intended to be specifically about lisps
17:53:23 <Taneb> You now have one more follower!
17:53:26 <Sgeo> :)
17:53:56 <Sgeo> It's pretty much any programming stuff. If I become reinterested in Haskell and newly obsessed with Opa, that's what I'd be talking about
17:54:22 <Sgeo> (Note: Opa is currently not a strong candidate for language obsession)
17:56:53 <Sgeo> Dear Disqus: I would like to see my own comment please
18:05:33 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
18:05:46 <FreeFull> nortti: Well, Microsoft did work a bit on OS/2 but after that it was all IBM
18:06:54 -!- sebbu2 has joined.
18:07:16 -!- sebbu2 has quit (Changing host).
18:07:16 -!- sebbu2 has joined.
18:08:53 -!- sebbu has quit (Ping timeout: 245 seconds).
18:09:49 -!- sebbu2 has changed nick to sebbu.
18:16:40 <Taneb> Sgeo, it makes a pleasant change from the Homestuck and Adventure Time currently filling my dash
18:16:58 -!- sebbu2 has joined.
18:16:58 -!- sebbu2 has quit (Changing host).
18:16:58 -!- sebbu2 has joined.
18:18:59 -!- sebbu has quit (Ping timeout: 260 seconds).
18:27:12 -!- sebbu has joined.
18:27:12 -!- sebbu has quit (Changing host).
18:27:12 -!- sebbu has joined.
18:27:55 -!- TeruFSX has joined.
18:28:41 -!- sebbu2 has quit (Ping timeout: 255 seconds).
18:32:52 -!- WeThePeople has quit (Quit: Leaving).
18:36:58 -!- Phantom_Hoover has joined.
18:40:50 -!- asiekierka has quit (Excess Flood).
18:40:57 -!- asiekierka_ has joined.
18:59:54 -!- sebbu2 has joined.
19:02:36 * Sgeo hits Taneb with a Racket dye pack
19:02:42 <Sgeo> (dye packs are a thing in Racket)
19:02:54 <elliott> ok
19:03:28 -!- sebbu has quit (Ping timeout: 245 seconds).
19:04:39 -!- sebbu2 has changed nick to sebbu.
19:05:05 <Sgeo> elliott, I am easily amused.
19:05:19 <Sgeo> Nothing wrong with being easily amused, right?
19:07:36 -!- AnotherTest has quit (Quit: Leaving.).
19:08:47 -!- oerjan has joined.
19:10:41 <oerjan> 05:06:13: <elliott> fuck life
19:10:41 <oerjan> 05:06:17: <elliott> fuck everything
19:10:54 <oerjan> i'm afraid that's illegal in most countries, elliott
19:13:40 <oerjan> `quote 692
19:13:42 <HackEgo> 692) <Phantom_Hoover> "Category 4 ("professional") fireworks are for sale only to fireworks professionals. They have no restrictions," <Phantom_Hoover> OK I need to become a pyrotechnician. <ais523> Phantom_Hoover: that's like wanting to become a locksmith <ais523> so that you can legally own lockpicks <Phantom_Hoover> Did I mention when I want
19:14:04 <oerjan> `quote 692 | fmt -w300 | tail -1
19:14:05 <HackEgo> No output.
19:14:19 <oerjan> `quote 692 | fmt -w300 | tail -2
19:14:21 <HackEgo> No output.
19:14:27 <oerjan> `run quote 692 | fmt -w300 | tail -1
19:14:29 <HackEgo> can legally own lockpicks <Phantom_Hoover> Did I mention when I wanted to become a locksmith?
19:15:43 <oerjan> Gregor: maybe HackEgo needs a `more command like lambdabot
19:17:31 <elliott> that quote used to display just fine in full
19:18:28 <oerjan> hm and HackEgo doesn't have a particularly long nick!uname@hostname
19:18:51 <oerjan> `run quote 692 | fmt -w400
19:18:54 <HackEgo> 692) <Phantom_Hoover> "Category 4 ("professional") fireworks are for sale only to fireworks professionals. They have no restrictions," <Phantom_Hoover> OK I need to become a pyrotechnician. <ais523> Phantom_Hoover: that's like wanting to become a locksmith <ais523> so that you can legally own lockpicks <Phantom_Hoover> Did I mention when I want
19:19:07 <oerjan> it doesn't even reach 400
19:19:38 <elliott> I don't know why it's become overconservative lately. perhaps something to do with Gregor making it not mishandle Unicode
19:19:41 <oerjan> @tell Gregor HackEgo cuts off lines too soon
19:19:41 <lambdabot> Consider it noted.
19:22:17 <Taneb> Is there a way to pipe stderr onwards?
19:22:32 <ais523> Taneb: 2>&1 merges stderr and stdout
19:22:42 <ais523> you can do tricks with named pipes if you need separate control over stdout and stderr
19:22:51 <Taneb> How do I use that mysterious collection of characters
19:23:00 <ais523> command 2>&1 | another_command
19:23:21 <Taneb> Thanks
19:24:59 <oerjan> ^pastequotes
19:25:03 <oerjan> `pastequotes
19:25:07 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.24765
19:25:56 <oerjan> 692) <Phantom_Hoover> "Category 4 ("professional") fireworks are for sale only to fireworks professionals. They have no restrictions," <Phantom_Hoover> OK I need to become a pyrotechnician. <ais523> Phantom_Hoover: that's like wanting to become a locksmith <ais523> so that you can legally own lockpicks <Phantom_Hoover> Did I mention when I wanted to become a locksmith?
19:26:30 <oerjan> ok it's definitely HackEgo which cuts it off, not freenode
19:26:57 <elliott> well its cutting got changed recently
19:26:58 <elliott> so duh
19:27:55 -!- sebbu has quit (Read error: Connection reset by peer).
19:28:19 -!- sebbu has joined.
19:28:38 -!- sebbu has quit (Changing host).
19:28:38 -!- sebbu has joined.
19:29:21 <fizzie> Exactly 350 characters in the cut message body.
19:29:36 <fizzie> Then again, fungot is even more strict, IIRC.
19:29:37 <fungot> fizzie: is that something you know and and the cases that required to actually mutate the original ( sorted, perhaps, it may be said that particularly here, parliament will give a single instance,
19:29:51 <oerjan> @tell hagb4rd HackEgo ` doesn't do shell stuff like pipes and redirection unless you start with `run
19:29:51 <lambdabot> Consider it noted.
19:29:52 <fizzie> ^ul ((A)S:^):^
19:29:53 <fungot> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ...too much output!
19:30:08 <fizzie> Well, 324 A's.
19:30:09 <shachaf> fungot
19:30:09 <fungot> shachaf: use the ' ' ' delete a value of type " airbus is a big fan of avril....but this song " there it is, in case he doesn't want you to the ancients, right. some numbers is disguising them so the user gets a frob, which is the bit-reversal of the statement is encountered, it is also readily than they use over there
19:30:32 <fizzie> ^bf ,[.]!A
19:30:32 <fungot> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ...
19:30:43 <fizzie> That's just 207.
19:31:11 <oerjan> @tell hagb4rd specifically, without run everything after the command name gets sent as a single, undivided string argument
19:31:11 <lambdabot> Consider it noted.
19:31:30 <oerjan> `ls bin/run
19:31:31 <HackEgo> ls: cannot access bin/run: No such file or directory
19:31:37 <oerjan> heh
19:31:44 <oerjan> `run which run
19:31:46 <HackEgo> No output.
19:32:54 <oerjan> so `run isn't an ordinary command, although it could easily have been made one...
19:32:59 <elliott> oerjan: run is built-in
19:33:17 <oerjan> AS I WAS IMPLYING
19:34:11 <shachaf> oerjan: `run is built into the bot, not an ordinary command.
19:34:45 * oerjan swats shachaf -----###
19:35:24 <olsner> is `run built in or an ordinary command?
19:35:33 <elliott> `run echo "#!/bin/sh" >bin/run; echo 'bash -c "$@"' >>bin/run; chmod +x bin/run
19:35:37 <HackEgo> No output.
19:35:38 * oerjan hits olsner with the saucepan ===\__/
19:35:48 <elliott> `bin/run echo hi; echo bye
19:35:49 <HackEgo> hi \ bye
19:35:52 <shachaf> oerjan: Hey, how come I never get the saucepan treatment?
19:36:08 <oerjan> shachaf: because you'd enjoy it too much.
19:36:11 <elliott> @tell Gregor You can remove the special-casing of the `run command; I added a bin/run that behaves equivalently.
19:36:11 <lambdabot> Consider it noted.
19:36:20 <elliott> @tell Gregor (Come to think of it, can't you implement `fetch inside the bot too?)
19:36:21 <lambdabot> Consider it noted.
19:36:37 <shachaf> The bot has an Internet connection?
19:36:41 <elliott> @tell Gregor (And `help, though that would make reverting an rm -r more annoying since you'd have to dig up the URL. (Probably not a problem.))
19:36:41 <lambdabot> Consider it noted.
19:36:51 <shachaf> `help
19:36:52 <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/
19:37:17 <shachaf> `run mkdir -p run/bin/; cp bin/run run/bin/
19:37:21 <HackEgo> No output.
19:38:06 <oerjan> elliott: iirc `fetch is less stringent about what is permitted to connect to than the sandbox
19:38:29 <oerjan> which iirc has a whitelist of web sites
19:38:58 <elliott> oh, right
19:39:09 <elliott> `run rm -r run
19:39:13 <HackEgo> No output.
19:40:31 <oerjan> see bin run
19:43:13 <oerjan> <Sgeo> Nothing wrong with being easily amused, right? <-- depends. does your laughter make people cringe?
19:47:46 -!- monqy has joined.
19:56:38 -!- zzo38 has joined.
20:02:28 -!- nooodl has quit (Quit: Leaving).
20:09:48 <Sgeo> I think I'm more likely to write unit tests with Racket than with any other language, merely because of how easy it is to intersperse tests with the rest of the code
20:14:58 -!- asiekierka_ has quit (Excess Flood).
20:17:11 -!- asiekierka has joined.
20:19:05 <zzo38> The VCR/DVD I have will not correct the aspect ratio when playing DivX.
20:19:22 <zzo38> (The frame skip functions also don't work with DivX)
20:24:10 -!- carado has quit (Ping timeout: 246 seconds).
20:25:33 <zzo38> Is there a writer monad on a category of relations? I think so; fmap/join/return is easily defined. Does the monad laws followed? You can then define =<< from that too (note: =<< here is a functor, not a relation, though)
20:25:50 <zzo38> You said Prolog is using relations, so therefore can it be used with Prolog?
20:31:44 -!- sebbu2 has joined.
20:33:48 <oerjan> I DON'T KNOW
20:34:31 * oerjan already regrets ignoring the intuition that told him not to bring this up
20:35:08 -!- sebbu has quit (Ping timeout: 245 seconds).
20:35:49 <zzo38> I don't care about the Institution.
20:36:17 <zzo38> I do want to see if it can be used with Prolog, or with category of relation in general.
20:36:33 <oerjan> then do it yourself.
20:36:42 <zzo38> I can try.
20:43:48 <zzo38> I think it does follow monad laws.
20:52:02 -!- sebbu has joined.
20:52:22 -!- sebbu has quit (Changing host).
20:52:22 -!- sebbu has joined.
20:55:55 -!- sebbu2 has quit (Ping timeout: 260 seconds).
20:57:40 -!- Nisstyre-laptop has joined.
20:57:53 -!- carado has joined.
21:02:03 <Gregor> elliott, oerjan: FUCK YOU GUYS
21:02:04 <lambdabot> Gregor: You have 4 new messages. '/msg lambdabot @messages' to read them.
21:02:09 <Gregor> @messages
21:02:10 <lambdabot> oerjan said 1h 42m 29s ago: HackEgo cuts off lines too soon
21:02:10 <lambdabot> elliott said 1h 25m 59s ago: You can remove the special-casing of the `run command; I added a bin/run that behaves equivalently.
21:02:10 <lambdabot> elliott said 1h 25m 50s ago: (Come to think of it, can't you implement `fetch inside the bot too?)
21:02:10 <lambdabot> elliott said 1h 25m 29s ago: (And `help, though that would make reverting an rm -r more annoying since you'd have to dig up the URL. (Probably not a problem.))
21:02:12 <elliott> `friends
21:02:14 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: friends: not found
21:02:41 <Gregor> If HackEgo is cutting off lines shorter than it was previously, I have NO idea how or why.
21:02:50 <Gregor> Having `run be in the environment is a profoundly bad idea.
21:03:09 <Gregor> Right now, the proxy isn't even up, because it was unreliable as shit, and it whitelisted things anyway.
21:03:25 <Gregor> The only reason I wanted `help outside the bot is so that the URL would never get scrubbed.
21:03:49 <elliott> what's wrong with `run being in the env
21:04:45 <Gregor> `run rm bin/run # fix this without `run or `revert
21:04:48 <HackEgo> No output.
21:05:23 <elliott> Gregor: `revert
21:05:26 <elliott> what's wrong with that
21:05:39 <elliott> isn't the point of `revert for when people do something idiotic and fuck things up :P
21:06:32 <Gregor> Point is, you can't make `run from a fresh environment. An empty environment is unusable without `run. Admittedly we don't have an empty environment, but I don't like the notion that you can't start from scratch.
21:06:54 <elliott> Gregor: well i can think of a way to do it
21:06:59 <Gregor> Show me
21:07:04 <elliott> `fetch http://run.invalid
21:07:05 <HackEgo> wget: unable to resolve host address `run.invalid'
21:07:16 <elliott> `/hackenv/run mkdir bin && mv run bin
21:07:17 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/run: No such file or directory \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/run: cannot execute: No such file or directory
21:07:21 <shachaf> Taneb...............................
21:07:29 <Gregor> But `/hackenv/run wouldn't work.
21:07:33 <elliott> why not
21:07:34 <Gregor> Because it's a-x
21:07:36 <elliott> hmmm
21:07:46 <Gregor> And chmod won't work.
21:07:47 <elliott> interesting
21:07:58 <elliott> oh i have an idea
21:08:01 <elliott> `env echo hi
21:08:02 <HackEgo> env: echo hi: No such file or directory
21:08:19 <elliott> i think there is a wa to do this
21:08:21 <elliott> *way
21:08:25 <elliott> Gregor: oh duh
21:08:30 <elliott> Gregor: okay `fetch <script that installs run>
21:08:35 <elliott> `bash scriptthatinstallsrun
21:08:36 <HackEgo> bash: scriptthatinstallsrun: No such file or directory
21:08:37 <Taneb> shachaf, I apologise profusely, to you and to everyone else in #haskell-lens, and to the population of Canada, but that's a separate incident
21:08:43 <Gregor> OK, that works...
21:09:19 <elliott> I guess it is debatable whether it is more useful to tweak `fetch or `run
21:09:22 <Gregor> OK, here's another thought: For any builtin command other than `revert, it will ignore the builtin if env/bin/<cmd> exists.
21:09:25 <elliott> but I do like as much as possible being modifiable
21:09:29 <zzo38> What about, population of the world, too?
21:09:40 <zzo38> Do you even know the exact population of Canada?
21:09:56 <elliott> Gregor: that works, but seems less elegant, esp. when the edge-case will actually be resolved by simply `reverting in practice
21:10:02 <elliott> also none of this actually matters of course
21:10:03 <shachaf> Taneb: what about the population of california
21:10:08 <shachaf> incl. monqy
21:10:12 <kmc> "A naked man with a Samurai sword brought out a large police force New Year's morning"
21:10:15 <Taneb> I only insulted some of them
21:10:17 <elliott> but I do think it is cute for HackEgo to have as little code unrelated to sandboxing as possible
21:10:23 <Taneb> The Canada thing was big
21:10:26 <kmc> http://www.nbcbayarea.com/news/local/SJPD-in-Stand-Off-With-Naked-Man-With-Samurai-Sword-185365812.html
21:10:27 -!- TeruFSX has quit (Ping timeout: 240 seconds).
21:10:38 <Taneb> zzo38, sorry
21:13:25 <oerjan> `help
21:13:25 <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:15:18 <oerjan> http://codu.org/projects/hackbot/hg/ shows no changes this year...
21:16:10 <oerjan> Gregor: when was the last time you changed anything that could cause the cutoff to change?
21:17:00 <Gregor> oerjan: I took elliott's Python rewrite recently, and tweaked it until the cutoff was "the same".
21:17:11 <oerjan> eek
21:17:33 <oerjan> well it's not in that url
21:18:50 <elliott> https://bitbucket.org/GregorR/hackbot/commits
21:18:51 <elliott> HTH
21:19:29 <oerjan> the last one does look mighty relevant
21:19:38 <elliott> `run cat quotes | awk '{ print length(), $0 | "sort -n" }'
21:19:40 <elliott> `run cat quotes | awk '{ print length(), $0 | "sort -n" }' | tail -n 1
21:19:40 <HackEgo> 15 <myndzi> lol :( \ 21 <Taneb> coleridge and \ 22 <crystal-cola> 3 = 7/2 \ 22 <monqy> ophanim: omee~ \ 23 <elliott> `delquote 869 \ 24 <Sgeo> HOT SEXY SEX BITS \ 24 <SimonRC> TODO: sex life \ 26 * quintopia sits on gregor \ 27 <FireFly> Meh <FireFly> ._. \ 27 <oklopol> hmm, this is hard \ 27 <Sgeo> My quotes are boring \ 28 <mroman> You can't quot
21:19:42 <HackEgo> 440 <fungot> itidus21: hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, hey, he
21:19:50 <elliott> `run cat quotes | awk '{ print length(), $0 | "sort -n" }' | tail -n 2 | head -n 1
21:19:52 <HackEgo> 417 <oklofok> mixing drinks together is like taking all of mozart's works and listening to all of them at once <oklofok> and in general a drink - and most foods - are kind like taking a song and then just taking the average of the notes and listening to it for three minutes. <oklofok> olsner: the point is you don't have to be the composer yoursel
21:19:55 <elliott> `run cat quotes | awk '{ print length(), $0 | "sort -n" }' | tail -n 3 | head -n 1
21:19:58 <HackEgo> 411 <oklofok> drinks should come in long long pipes that drip liquid at varying speeds, and you shouldn't just casually taste to them, you should really try to understand what the artist (the canposer?) was trying to convey when making the drink <oklofok> olsner: well you know i'm a genius. anyway i like how food works tho, because it has both the
21:20:07 <elliott> Gregor: I propose a cutoff of 420.
21:20:54 <oerjan> oh it actually says :350 there :P
21:58:00 <kmc> i enjoy the BBC's coverage of american politics
21:58:11 <kmc> because there's always a slight edge of incredulity
21:58:22 <kmc> "surely their country can't actually be this fucked up and poorly run... this must all be a big joke right?"
21:59:09 <Fiora> jon stewart seems to be the closest to an american news source that does the same thing
21:59:31 <Fiora> I like how he will simply have like, 20 second pauses after playing back some recording of another news channel, and all you can do is stare in wonder that this is actually reality
22:01:41 <kmc> yeah
22:03:03 <kmc> it's a comedic crutch but as journalism it's dynamite
22:03:25 <kmc> it always gets me that people describe the daily show as "fake news"
22:03:59 <kmc> cause it's mostly real news
22:05:00 <Gregor> kmc: The Daily Show describes itself as fake news.
22:06:14 <kmc> really?
22:06:48 <kmc> i guess it's a fake (news show) not a (fake news) show
22:06:58 <Bike> yeah, stewart says that all the time
22:07:12 <Bike> like when fox says he's killing america or w/e
22:07:12 <kmc> in that they reject most standards of Serious Journalism
22:07:27 <kmc> yeah "my show comes on before the one with puppets making prank calls"
22:07:59 <kmc> though CNN and FOX air enough non-news shit that the gap is shrinking
22:08:05 <kmc> CNN is largely the Best of YouTube Channel
22:10:10 <Fiora> or best of twitter?
22:10:19 <Fiora> I know they have this weird obesssion with tweets
22:10:29 <Bike> "social media"
22:10:30 <fizzie> fungot: Why don't you tweet anything any more?
22:10:31 <fungot> fizzie: doesn't intercal have a minuscule instruction set just affects what resources, up to now cannot be regarded it without the cod title on it hard to fiqure out what going, tough one. if we solve it,...
22:10:47 <fizzie> fungot: Yeah, that's a big if...
22:10:48 <fungot> fizzie: is that something you know and and the cases that required to actually mutate the original i think it is either, man! you have a whip? why do
22:11:17 <fizzie> Famous last words: "You have a whip? Why do--"
22:13:02 <ais523> ^style
22:13:02 <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
22:14:41 -!- GreyKnight has joined.
22:15:17 <GreyKnight> Sgeo: what's a "dye pack"?
22:18:01 <Sgeo> GreyKnight, something or other to do with arming and taining syntax objects
22:18:20 <GreyKnight> what is arming and taining :-I
22:18:31 <Sgeo> I think the goal is to prevent code from arbitrarily tearing up other macros in order to get access at something it shouldn't
22:18:33 <Bike> taining had bettter have something to do with the tain
22:19:00 <shachaf> fungot, fungot, fungot.
22:19:00 <fungot> shachaf:, so i'd be happy to help an fnord archive)
22:19:03 <Sgeo> Actually explanation http://docs.racket-lang.org/guide/stx-certs.html
22:19:05 <Sgeo> Oh, tainting
22:20:29 <olsner> fungot: you are a fnord archive
22:20:30 <fungot> olsner: and, dab, words like pop-culture should i have fizzie do the same principles, or precedents, of the secondary address of character memory can be achieved with the c preprocessor is run and line labels john is of all the important relevant for this page?
22:23:54 -!- Taneb has quit (Quit: Leaving).
22:24:07 -!- GreyKnight has quit (Ping timeout: 260 seconds).
22:25:27 -!- GreyKnight has joined.
22:28:42 <GreyKnight> Sgeo: they don't seem to mention where the term "dye pack" comes from
22:29:44 <Sgeo> GreyKnight, http://docs.racket-lang.org/reference/stxcerts.html
22:31:32 <GreyKnight> I guess it is by analogy with security dyes
22:32:04 <Sgeo> Probably
22:41:53 <GreyKnight> fizzie: I just read the Mentifex FAQ. Now I have a sad. :-(
22:43:37 -!- Gregor has set topic: As an example, the so-called descent of the Monad into madness means an involution | http://codu.org/logs/_esoteric/.
22:44:45 <shachaf> hi Gregor
22:46:59 -!- GreyKnight has quit (Ping timeout: 252 seconds).
22:50:30 -!- GreyKnight has joined.
22:51:00 -!- sirdancealot7 has joined.
22:56:26 <fizzie> GreyKnight: How come you got a sad out of it?
22:57:47 <GreyKnight> those sorts of people always give me a sad. They have something they really really want and have poured their whole life into, but they're never going to get it.
23:01:41 <GreyKnight> `quote 432
23:01:42 <HackEgo> 432) <itidus20> It's ok guys. I am doing what I can to keep my psyche and ego surviving. All the while the threat of ww3 looms, the mortality of family and friends(loved ones?) and sooner or llater my own mortality.
23:02:39 <oerjan> i'll go make some food so i don't have to ban y'all for making me depressed -->
23:02:40 <GreyKnight> fungot: say something cheerful, quick!
23:02:41 <fungot> GreyKnight:, so i'd be happy to help an fnord archive)
23:04:26 * GreyKnight traps oerjan in a forcefield ⌇⌇ o_o ⌇⌇
23:07:09 <kmc> http://thehairpin.com/2012/12/death-ghosts-and-paul-koudounaris this is the best
23:08:25 <ion> I wonder why i read the URL as “debian-ghosts-and-paul-koudounan”?
23:09:50 <fizzie> Because Debian is death.
23:10:32 <oerjan> NOOOO, not forcefields and death-ghosts!
23:11:53 <fizzie> ^style lovecraft
23:11:54 <fungot> Selected style: lovecraft (H. P. Lovecraft's writings)
23:12:00 <fizzie> fungot: DEATH-GHOSTS and NIGHT-GAUNTS.
23:12:01 <fungot> fizzie: the day was warm and sunny, but the beings need no light. they have tried weakly to concoct a theory of a ghastly jest or warning by discharged servants, yet they were not as common as might be necessary.
23:12:10 <fizzie> "the day was warm and sunny, but the beings need no light."
23:12:12 -!- GreyKnight has quit (Ping timeout: 264 seconds).
23:17:28 -!- GreyKnight has joined.
23:17:57 <GreyKnight> I like the bit where they had to exorcise some guy's penis
23:21:48 -!- ais523 has quit (Ping timeout: 245 seconds).
23:22:11 -!- copumpkin has quit (Ping timeout: 252 seconds).
23:22:42 -!- copumpkin has joined.
23:23:17 <kmc> "Tested on OSX Mountain Lion, but some functionality may be lost on other flavours of Linux."
23:23:27 <kmc> that's from... a Ruby program you can use to read Hacker News in your terminal
23:23:45 <Bike> hee
23:24:05 -!- ais523 has joined.
23:24:17 <ion> :-D
23:24:56 -!- GreyKnight has quit (Ping timeout: 252 seconds).
23:26:14 -!- GreyKnight has joined.
23:30:40 -!- GreyKnight has quit (Ping timeout: 244 seconds).
23:35:38 -!- GreyKnight has joined.
23:39:13 <Sgeo> I'm in an IRC channel with one of the people mentioned by that Mentifex FAQ
23:39:55 <monqy> is it stimulating
23:40:35 <Sgeo> The channel is publically logged, so I feel ok pasting logs
23:40:42 <Sgeo> <neilv> i actually encouraged him to submit it for publication, thinking that might be constructive, one way or another. turned out he's already been rejected by giants in the field before he commenced saturation bombing of usenet. :) https://groups.google.com/forum/?fromgroups#!msg/soc.history.science/zK1zilHUxI8/LuBXwlLdv44J
23:43:13 <shachaf> hi monqy : :
23:43:49 <monqy> shachaf: is this about lens
23:44:47 <shachaf> monqy: no!! it's about uh clojure
23:45:02 <monqy> are you confusing me for sgeo. i don't know clojure........
23:45:34 <shachaf> do you know lens.........
23:45:39 <monqy> : )
23:45:54 <shachaf> : )
23:46:01 <ion> : )
23:47:45 <shachaf> ion knows lens.
23:48:27 <shachaf> (If I start a line with a space it doesn't go in the logs, right?)
23:48:31 -!- zzo38 has quit (Remote host closed the connection).
23:49:54 <ion> right
2013-01-02
00:07:41 -!- sebbu2 has joined.
00:08:01 -!- sebbu2 has quit (Changing host).
00:08:01 -!- sebbu2 has joined.
00:09:24 -!- sirdancealot7 has quit (Remote host closed the connection).
00:10:58 -!- sebbu has quit (Ping timeout: 245 seconds).
00:18:47 -!- GreyKnight has quit (Ping timeout: 255 seconds).
00:22:19 -!- GreyKnight has joined.
00:35:39 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
00:39:11 -!- GreyKnight has quit (Ping timeout: 252 seconds).
00:42:37 -!- Vorpal has joined.
00:44:07 -!- GreyKnight has joined.
00:53:12 -!- GreyKnight has quit (Ping timeout: 276 seconds).
00:53:27 <Sgeo> That's cool:
00:53:31 <Sgeo> "'2013' is non-prime in any base b: 2013_b = 2b + b + 3 = (b+1)(2b - 2b + 3)"
00:55:07 -!- GreyKnight has joined.
00:59:36 <oerjan> Sgeo: that's essentially the division by 11 test when the result is exactly 0 so doesn't need to be repeated
01:00:49 <hagb4rd> hi oerjan: thanks for the notes
01:00:56 <oerjan> yw
01:01:41 <hagb4rd> `run quote 652 > paste
01:01:42 <HackEgo> bash: paste: Is a directory
01:01:55 <hagb4rd> `bin/run quote 652 > paste
01:01:56 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/bin/run: No such file or directory \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/bin/run: cannot execute: No such file or directory
01:02:30 <oerjan> hagb4rd: actually understanding how shell commands work is also recommended :P
01:03:01 <elliott> `help
01:03:01 <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/
01:03:03 <elliott> `run echo hi
01:03:05 <HackEgo> hi
01:03:13 <elliott> oh
01:03:14 <elliott> `revert
01:03:17 <elliott> GreyKnight: you scoundrel
01:03:17 <HackEgo> Done.
01:03:23 <elliott> er
01:03:23 <elliott> Gregor:
01:03:50 <hagb4rd> just want to know if i can use pipe to output sth on the pastesite returning a link
01:04:02 <oerjan> `bin/run echo "i thought he said it wouldn't work anyway"
01:04:03 <HackEgo> i thought he said it wouldn't work anyway
01:04:16 <oerjan> hagb4rd: yes but > is not the correct syntax for that
01:04:22 <hagb4rd> lol
01:04:23 <hagb4rd> ok
01:04:28 <hagb4rd> you're right
01:04:33 <hagb4rd> is it just paste?
01:04:43 <elliott> oerjan: i convinced him it would
01:04:45 <hagb4rd> `bin/run quote 652 | paste
01:04:49 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.22907
01:04:52 <hagb4rd> great
01:04:54 <GreyKnight> I didn't do nothing!
01:05:23 <hagb4rd> `bin/run quote 692 | paste
01:05:27 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.26677
01:06:25 <oerjan> elliott: i meant the `bin/run thing
01:06:45 <oerjan> hagb4rd: you don't actually need the bin/ part, that was just part of an elliott experiment
01:07:16 <elliott> oerjan: yes i convinced him it'd be ok
01:07:34 <oerjan> `/bin/echo hi
01:07:35 <HackEgo> hi
01:08:12 <oerjan> elliott: yes but you played around with a lot of env stuff, because he said something about only alphanums, which apparently isn't true
01:08:22 <oerjan> you can just use absolute paths
01:09:02 <elliott> oerjan: ???
01:09:06 <elliott> i have no idea wtf you are talking about
01:09:12 <oerjan> ...which should be obvious anyway given the existence of `?
01:10:22 <oerjan> 21:07:29: <Gregor> But `/hackenv/run wouldn't work.
01:10:22 <oerjan> 21:07:33: <elliott> why not
01:10:22 <oerjan> 21:07:34: <Gregor> Because it's a-x
01:10:30 <oerjan> this is what i'm referring to
01:10:32 <hagb4rd> i'm not sure if hackego first tries to `run as builin function before looking up in /bin
01:10:38 <hagb4rd> i guess it does
01:10:51 <elliott> oerjan: ...do you know what a-x means
01:10:55 <oerjan> hagb4rd: it does, although they just discussed whether to change that
01:11:02 <oerjan> oh
01:11:07 <elliott> oerjan: (permissions)
01:11:13 -!- sirdancealot7 has joined.
01:12:18 <oerjan> elliott: i misunderstood what that was all about then, and you didn't help much by never actually testing `bin/run :P
01:12:29 <oerjan> which of course didn't make sense anyway. hm...
01:12:41 <oerjan> `run cp bin/run .
01:12:44 -!- sebbu has joined.
01:12:45 <HackEgo> No output.
01:13:00 <oerjan> `./run echo test
01:13:01 <HackEgo> test
01:13:05 -!- sebbu has quit (Changing host).
01:13:05 -!- sebbu has joined.
01:13:36 <fizzie> ais523: Speaking of those tape heatmaps, I told the hierarchical-cluster plot -- http://zem.fi/egostats/plot_cluster.png -- that used scores for distances to do the same thing except with Euclidean distance between normalized average (across duels, but not tape length/polarity) tape heatmaps, and it spit out http://zem.fi/egostats/plot_heatclust.png -- don't know if those are "more ...
01:13:42 <fizzie> ... appropriate" strategywise or anything.
01:13:43 <oerjan> oh hm
01:13:50 <oerjan> i was still misunderstanding
01:14:56 -!- GreyKnight has quit (Ping timeout: 255 seconds).
01:15:13 * oerjan _thinks_ he's got it now, but better keep his mouth shut :P
01:15:58 -!- sebbu2 has quit (Ping timeout: 245 seconds).
01:18:38 -!- nooga has quit (Ping timeout: 255 seconds).
01:18:46 -!- GreyKnight has joined.
01:19:14 <elliott> oerjan: if it's any consolation I understand less of what you say
01:19:23 <oerjan> yay!
01:21:06 <oerjan> elliott: i somehow managed to misinterpret the conversation to get into my head that ` commands couldn't contain '/' , which somehow seemed to fit the rest of your experimentation
01:21:18 <oerjan> (back earlier today)
01:21:23 <oerjan> *tonight
01:23:44 -!- GreyKnight has quit (Ping timeout: 252 seconds).
01:25:00 <elliott> mm
01:25:52 -!- GreyKnight has joined.
01:26:24 -!- GreyKnight has quit (Client Quit).
01:36:57 -!- Frooxius has quit (Ping timeout: 240 seconds).
01:40:13 -!- carado has quit (Ping timeout: 246 seconds).
01:40:42 -!- Nisstyre has joined.
01:41:28 <Sgeo> Hmm
01:41:40 <Sgeo> I am not amused by DrRacket saving files in an opaque way
01:41:40 <Sgeo> https://github.com/mflatt/scratchy/blob/master/scratchy/examples/fish.rkt
01:48:00 <hagb4rd> `fetch https://www.googleapis.com/customsearch/v1?key=AIzaSyBfdt4VN9qT_Y8LAl100TBRCWAOiSTaqSY&cx=009459769908964694922:yb5esesqxmg&q=robocop&searchType=image&fileType=jpg&imgSize=xlarge&alt=json&safe=off
01:48:03 <HackEgo> 2013-01-02 01:48:02 URL:https://www.googleapis.com/customsearch/v1?key=AIzaSyBfdt4VN9qT_Y8LAl100TBRCWAOiSTaqSY&cx=009459769908964694922:yb5esesqxmg&q=robocop&searchType=image&fileType=jpg&imgSize=xlarge&alt=json&safe=off [10585] -> "v1?key=AIzaSyBfdt4VN9qT_Y8LAl100TBRCWAOiSTaqSY&cx=009459769908964694922:yb5esesqxmg&q=robocop&searchType=image&fileTy
01:48:32 <hagb4rd> `fetch https://www.googleapis.com/customsearch/v1?key=AIzaSyBfdt4VN9qT_Y8LAl100TBRCWAOiSTaqSY&cx=009459769908964694922:yb5esesqxmg&q=robocop&searchType=image&fileType=jpg&imgSize=xlarge&alt=json&safe=off | paste
01:48:32 <HackEgo> https://www.googleapis.com/customsearch/v1?key=AIzaSyBfdt4VN9qT_Y8LAl100TBRCWAOiSTaqSY&cx=009459769908964694922:yb5esesqxmg&q=robocop&searchType=image&fileType=jpg&imgSize=xlarge&alt=json&safe=off%20%7C%20paste: \ 2013-01-02 01:48:32 ERROR 400: Bad Request.
01:49:02 <hagb4rd> `ls bin
01:49:04 <HackEgo> ​? \ @ \ WELCOME \ addquote \ allquotes \ anonlog \ calc \ define \ delquote \ etymology \ forget \ fortune \ frink \ google \ hatesgeo \ interp \ joustreport \ jousturl \ json \ karma \ karma- \ karma+ \ learn \ log \ logurl \ lua \ luac \ luarocks \ luarocks-admin \ macro \ maketext \ marco \ No \ pastaquote \ paste \ pastefortune
01:49:26 <oerjan> `run ls v*
01:49:28 <HackEgo> v1?key=AIzaSyBfdt4VN9qT_Y8LAl100TBRCWAOiSTaqSY&cx=009459769908964694922:yb5esesqxmg&q=robocop&searchType=image&fileType=jpg&imgSize=xlarge&alt=json&safe=off
01:50:01 <oerjan> `run mv v* robocop
01:50:05 <HackEgo> No output.
01:50:13 <oerjan> `file robocop
01:50:17 <HackEgo> robocop: ASCII English text, with very long lines
01:50:36 <ais523> fizzie: looking now
01:50:56 <ais523> err, hmm
01:51:00 <ais523> it's better in some places
01:51:02 <ais523> but worse in others
01:51:11 <oerjan> ^url robocop
01:51:19 <ais523> like, my turtles are correctly grouped close to each other
01:51:20 <oerjan> `url robocop
01:51:25 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/robocop
01:51:32 <ais523> but space_hotel is in there too and it works entirely differently
01:51:33 <hagb4rd> what the hell
01:52:00 <oerjan> i assume that's what they call json
01:53:18 <oerjan> hagb4rd: in any case you can use `url instead of paste when the file is already in HackEgo; paste doesn't do anything other than making a copy and giving the result of url on that
01:53:43 <hagb4rd> so the first command worked?
01:53:59 <oerjan> yes
01:54:13 <hagb4rd> how is it named robocop anyway?
01:54:33 <hagb4rd> i missed that point
01:55:18 <oerjan> hagb4rd: i just used mv
01:55:36 <hagb4rd> (or to put it this way: where do i find the result of `fetch..)
01:55:36 <hagb4rd> ok
01:55:47 <oerjan> `fetch gave it a long name containing everything after the last / in the url
01:56:19 <oerjan> and that's what HackEgo gave after the -> in the `fetch response
01:56:21 <shachaf> oerjan: what's the verdict on free monads
01:56:58 <oerjan> shachaf: free monads are cool, they feel more reified somehow
01:57:19 <hagb4rd> could we have an alias for that command taking 1 argument passed as query string? do we have any conventions on creating such aliases?
01:57:31 <shachaf> oerjan: what about cofree comonads
01:57:38 <oerjan> shachaf: no f idea
01:57:45 <shachaf> are the ol?
01:57:50 <shachaf> s/the/they/
01:58:04 <shachaf> oerjan: Cofree is just like Free except it uses (,) instead of Either.
01:58:11 <oerjan> hagb4rd: `fetch is a builtin command which can only be used alone
01:58:19 <shachaf> So Cofree f a = (a, f (a, f (a, f (...
01:58:36 <oerjan> hagb4rd: i.e. you cannot use it from within other HackEgo commands
02:00:08 <oerjan> hagb4rd: there _is_ a system for contacting a whitelist of web sites from within HackEgo commands, but it is currently broken
02:00:31 <hagb4rd> is that a convention to be satisfied`? l just would like to have some aliases binding to webservices.. which imho would be a nice method extending things ya know
02:00:50 <oerjan> hagb4rd: we used to have some
02:01:17 <oerjan> but the api's changed, so many of them broke again, and then the web proxy itself broke
02:01:28 <oerjan> only Gregor can fix it
02:02:21 <hagb4rd> `url https://www.googleapis.com/customsearch/v1?key=AIzaSyBfdt4VN9qT_Y8LAl100TBRCWAOiSTaqSY&cx=009459769908964694922:yb5esesqxmg&q=strawberry&searchType=image&fileType=jpg&imgSize=xlarge&safe=off | fetch
02:02:22 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/https://www.googleapis.com/customsearch/v1?key=AIzaSyBfdt4VN9qT_Y8LAl100TBRCWAOiSTaqSY&cx=009459769908964694922:yb5esesqxmg&q=strawberry&searchType=image&fileType=jpg&imgSize=xlarge&safe=off | fetch
02:02:44 <hagb4rd> ls v*
02:02:57 <hagb4rd> meh
02:04:57 <hagb4rd> `run ls v*
02:04:58 <HackEgo> ls: cannot access v*: No such file or directory
02:05:14 -!- WeThePeople has joined.
02:05:17 <hagb4rd> where is the output of url going to?
02:05:55 <hagb4rd> shouldn't be the stdout?
02:06:42 <oerjan> hagb4rd: url doesn't fetch anything, it takes a filename already existing in HackEgo and tells you where to browse it on Gregor's website
02:06:56 <oerjan> also, you cannot combine fetch with anything, i said
02:08:19 <oerjan> hagb4rd: basically url doesn't do anything other than prepending http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/ to its argument
02:08:59 -!- TeruFSX has joined.
02:10:15 <hagb4rd> so what is the bullshit fetch is sending to the stdout instead of the response?
02:10:35 <oerjan> basically fetch, like run and help, are builtin HackEgo commands that aren't looked up inside the sandbox. and unlike the two others fetch cannot be emulated fully.
02:10:52 <hagb4rd> can i just use wget instead?
02:11:01 <hagb4rd> or is it restricted too
02:11:41 <oerjan> hagb4rd: timestamp the://UrlYouGaveIt [size] -> theFileNameWhereItPutIt
02:12:06 <oerjan> wget would be restricted, and currently broken because the web proxy from inside the sandbox is broken
02:12:28 <oerjan> `run which wget
02:12:30 <HackEgo> ​/usr/bin/wget
02:12:49 <oerjan> `wget http://www.google.com
02:12:50 <HackEgo> ​--2013-01-02 02:12:50-- http://www.google.com/ \ Connecting to 127.0.0.1:3128... failed: Connection refused.
02:13:25 <oerjan> iirc google.com is in the whitelist, so should work if the proxy does
02:13:39 <shachaf> @quote Jafet
02:13:39 <lambdabot> Jafet says: <Jafet> Help, I'm trapped in this channel <Jafet> I tried to escape but ghc said occurs check
02:13:55 <hagb4rd> it would be SOOOO NICE to use REST services :(
02:14:31 <oerjan> hagb4rd: you'll just have to nag Gregor to get the proxy working again
02:15:44 <hagb4rd> i'll try too, if you share my opinion on that
02:16:02 <hagb4rd> which i think is the case
02:16:10 <oerjan> i think it would be nice to get some basic searches working
02:16:29 <hagb4rd> i'd like to go further
02:16:45 <oerjan> although lambdabot has a few relevant commands
02:17:10 <hagb4rd> and just be able to write my own services as embedded extensions
02:17:18 <hagb4rd> parked elsewhere
02:17:39 <hagb4rd> that was just a test in first case
02:18:03 -!- Vorpal has quit (Ping timeout: 245 seconds).
02:18:18 <hagb4rd> imagesearch is indeed not that relelvant in this channel
02:18:23 <hagb4rd> i think
02:18:24 <hagb4rd> :)
02:22:10 -!- zzo38 has joined.
02:22:43 <zzo38> If I have $z=12^xy^2$ in natural numbers, then what is an algorithm to figure out x and y when given z?
02:23:35 <zzo38> (Assume y is nonzero, but x is possible to be zero.)
02:24:12 <Fiora> you mean (12^x)(y^2) or 12^(xy)^2 or ...?
02:24:23 <elliott> Fiora: the former in tex
02:24:29 <Fiora> ah
02:24:43 <hagb4rd> this way we wouldn't need to have more bots joining the channel and so on.. just a clean interface as defined by a webservice.. the output goes to stdout and can be piped elsewhere.. but then we should agree on some conventions on alias/script names so we won't get lost (if we not already are)
02:25:24 <oerjan> zzo38: something like while (z % 12 == 0) { z /= 12; x++ } y = sqrt (z)
02:26:04 <zzo38> oerjan: I am not sure that works.
02:26:40 <oerjan> oh hm
02:27:12 <zzo38> And it is needed one for computers that doesn't have square root and division and so on
02:27:24 <oerjan> zzo38: well ok you get _one_ solution that way, others will be given by x - 2n and y*144^n
02:27:47 <zzo38> oerjan: Yes, OK
02:28:05 <oerjan> zzo38: oh hm right there's the question of whether x or x+1 makes the remaining z a square
02:28:15 <zzo38> Yes
02:28:20 <zzo38> That is what I meant.
02:28:48 <oerjan> zzo38: but anyway starting with the above, the rest is a matter of finding the square root of the remaining part of z or 12*z
02:29:41 <Fiora> int y;
02:29:41 <Fiora> int x = 0;
02:29:41 <Fiora> while(1)
02:29:41 <Fiora> { int s = isqrt(z); if(s*s == z) {y = s; break;} if(z%12 != 0) goto fail; x++; z /= 12;
02:29:44 <Fiora> }
02:30:27 <oerjan> Fiora: oh hm right, that would work to halt as early as possible instead
02:30:41 <oerjan> to give the _largest_ solution for y instead
02:31:33 <oerjan> Fiora: in fact you could improve that by only testing twice, since if it doesn't become a square after dividing by 12 and wasn't one already, then it never will become one
02:32:02 <Fiora> makes sense
02:34:00 <oerjan> zzo38: so if you don't have a solution with x==0 or x==1 then you don't have any at all
02:34:46 <oerjan> but if y is divisible by 12 you will get additional ones
02:35:45 <zzo38> oerjan: O, OK. I may need to change some things then, because I need to support at least up to x==2
02:36:43 <oerjan> if x==2, y==n are solutions, then x==0, y==12*n will also be
02:37:54 <zzo38> OK.
02:38:04 <zzo38> I can see that.
02:45:48 <shachaf> --help display this help and exit
02:45:49 <shachaf> --version output version information and exit
02:45:49 <shachaf> --bibliography output recommended readings and exit
02:46:09 <Bike> what program is that
02:46:24 <shachaf> pi
02:51:35 <oerjan> version 3.14159265358979
02:52:29 <quintopia> it is a program that outputs pi to a specified accuracy?
02:53:00 <ais523> is it TeX who uses successive approximations of pi as version numbers?
02:53:06 <shachaf> Yes.
02:53:14 <zzo38> Yes, TeX uses that.
02:53:26 <zzo38> I currently have TeX version 3.1415926.
02:53:31 <shachaf> zzo38: What does TeXnicard use?
02:53:44 <zzo38> When Knuth is dead, the final official version shall be updated to version $\pi$ exactly.
02:53:52 <zzo38> shachaf: Just ordinary version numbers.
02:54:05 <zzo38> METAFONT uses approximations of the base of natural logarithms.
02:54:26 <shachaf> I should write a program whose version number approximates 2.
02:54:35 <quintopia> zzo38: you don't just call it e?
02:55:01 <zzo38> quintopia: It is called e, yes.
02:55:06 <shachaf> > (exp.exp.exp.exp)1
02:55:08 <lambdabot> Infinity
02:55:24 <shachaf> monqy: what's the verdict on free monads
02:55:28 <monqy> hi
02:55:34 <shachaf> hi
02:55:51 <zzo38> Penrose uses upright rather than italic "e" for the base of natural logarithms and I agree with him; so it would be ${\rm e}$ in TeX.
02:55:55 <ion> > (exp.exp.exp.exp) 1 :: CReal
02:56:01 <lambdabot> mueval: ExitFailure 1
02:56:01 <lambdabot> mueval: Prelude.undefined
02:56:12 <zzo38> Same with imaginary unit, and derivative operator.
02:57:24 <zzo38> However, the lowercase Greek in Computer Modern is only italic, and I am not entirely sure how I might change them to be able to work with not italic lowercase Greek as well, for pi and so on, but I might be able to try.
02:57:32 <quintopia> zzo38: then you can just say e instead of "the base of natural logarithms" because we will know what you mean AND...you don't have to type as many words!
02:58:03 <zzo38> quintopia: I can type fast.
02:58:27 <quintopia> me too. "fast"
02:59:12 <shachaf> oerjan: Can you unkarma me?
02:59:23 <shachaf> The whole mwahahaha deal.
03:02:11 <shachaf> zzo38: Does TeXnicard support TeXnicolour?
03:02:39 <quintopia> shachaf--
03:02:51 <zzo38> I did play Dungeons&Dragons game today; making screaming fire and greasy floor did help to earn some time, a bit. I also put the wand I stole underneath the door they were going to break down, before teleporting to outside; therefore it activated when they broke the door.
03:03:24 <oerjan> ^ul ((@karma- shachaf)S:^):^
03:03:25 <fungot> @karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- shachaf@karma- s ...too much output!
03:03:25 <lambdabot> shachaf@karma-'s karma lowered to -1.
03:03:31 <oerjan> oops
03:03:32 <elliott> good job
03:03:44 <oerjan> ^ul ((@karma- shachaf )S:^):^
03:03:45 <fungot> @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @karma- shachaf @kar ...too much output!
03:03:45 <lambdabot> shachaf's karma lowered to 72.
03:03:56 <oerjan> er wait
03:04:03 <oerjan> ^ul ((shachaf-- )S:^):^
03:04:03 <fungot> shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shac ...too much output!
03:04:12 <oerjan> @karma shachaf
03:04:12 <lambdabot> shachaf has a karma of 40
03:04:13 <zzo38> shachaf: No; if reading a DVI file it will use its own commands to determine colours, or it will generate the nodes directly without reading an external DVI in which case it also uses its own commands for colors.
03:04:13 <elliott> i think you can decrease karma multiple times w/ one message using @@
03:04:39 <oerjan> elliott: well the last one worked
03:04:59 <zzo38> (Reading external DVI works (it calls TeX to typeset and then reads the created DVI); internal typesetting is not yet completely implemented but when it is, it will also be able to do that with many possible effects)
03:05:40 <shachaf> zzo38: dvi? hdmi is the future these days
03:06:28 <zzo38> shachaf: It is a different kind of DVI. (Anyways, HDMI is no good, so I prefer Digi-RGB, but this is not relevant here anyways.)
03:10:27 -!- fungot has quit (Ping timeout: 248 seconds).
03:10:38 -!- FireFly has quit (Excess Flood).
03:11:35 -!- FireFly has joined.
03:31:40 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
04:00:05 -!- oerjan has quit (Quit: Good night).
04:07:22 -!- FireFly has quit (Excess Flood).
04:08:21 -!- FireFly has joined.
04:09:16 <Sgeo> ...ponies are not just baby horses.
04:09:24 <shachaf> `quote ponies
04:09:26 <HackEgo> No output.
04:09:29 <shachaf> @quote ponies
04:09:29 <lambdabot> No quotes match. That's something I cannot allow to happen.
04:10:10 <zzo38> If you add "...ponies are not just baby horses." then it will match.
04:23:57 <kmc> "'Oompa Loompas' sought by police over Norwich assault"
04:26:34 <shachaf> They should add functions like http://msdn.microsoft.com/en-us/library/windows/desktop/aa366713(v=vs.85).aspx to glibc
04:27:06 <kmc> oompa loompa doopity dunction
04:27:11 <kmc> you do not talk about adding libc function
04:27:33 <shachaf> But how will I know if my pointers are valid?
04:29:59 <kmc> BOOL WINAPI DoesFunctionHaltExA(HFUNPTR fpFunctionToTellWhetherItHaltsOrNot)
04:30:52 <kmc> shachaf: you call fork() and dereference the pointer in a child process and then call wait() and see if the child died with SIGSEGV
04:30:55 <kmc> IT IS TRIVIAL
04:31:39 <shachaf> But then it isn't portable to Windows.
04:32:00 <shachaf> monqy: edwardk is generalizing all of lens :'(
04:32:12 <shachaf> +findOf :: (RepresentableProfunctor p, Profunctor q, Comonad (Rep p)) => Overloading p q (Accessor (Endo (Maybe a))) s t a b -> p a Bool -> q s (Maybe a)
04:32:16 <zzo38> Is it portable to Cygwin though?
04:32:41 <shachaf> How does Cygwin implement fork()?
04:32:48 <shachaf> I know it does something but now how well it works.
04:32:55 <zzo38> Slowly, I think.
04:37:42 <lightquake> shachaf: I have no clue if you're serious or not about that type signature
04:38:06 <shachaf> lightquake: That's currently in lens HEAD
04:38:10 <lightquake> D:
04:38:16 <shachaf> 20:37 <lensbot> lens/master 98245d6 Edward Kmett: more generalization, because that last patch wasn't general enough
04:38:29 <shachaf> Let's see what this latest one is.
04:38:33 <lightquake> that's an absolutely unreadable type signature
04:38:47 <shachaf> +imapMOf_ :: (Profunctor q, Monad m) => Overloading (Indexed i) q (Accessor (Sequenced m)) s t a b -> (i -> a -> m r) -> q s (m ())
04:38:50 <shachaf> +iconcatMapOf :: Profunctor q => Overloading (Indexed i) q (Accessor [r]) s t a b -> (i -> a -> [r]) -> q s [r]
04:38:54 <shachaf> +ifindOf :: Profunctor q => Overloading (Indexed i) q (Accessor (Endo (Maybe a))) s t a b -> (i -> a -> Bool) -> q s (Maybe a)
04:38:57 <shachaf> +itoListOf :: Profunctor q => Overloading (Indexed i) q (Accessor (Endo [(i,a)])) s t a b -> q s [(i,a)]
04:39:00 <shachaf> Not too bad.
04:39:32 <shachaf> lightquake: I'm assuming this is an "it'll get worse before it gets better" sort of thing.
04:39:37 <lightquake> I have no clue how to read those type signatures
04:39:41 * kmc screams in terror
04:39:59 <kmc> i can read them syntactically but i have no idea what all the classes and one-letter variables mean
04:40:12 <lightquake> yeah, that's what I meant
04:40:36 <shachaf> OK, the simple version is, uh...
04:40:45 <shachaf> Well, p and q are both just (->), normally.
04:40:53 <shachaf> Overloading is this one thing.
04:41:11 -!- hagb4rd has quit (Ping timeout: 252 seconds).
04:41:13 <shachaf> type Overloading p q f s t a b = p a (f b) -> q s (f t)
04:41:31 <shachaf> OK, you know what, this is hopeless.
04:41:45 <shachaf> In edwardk's defense, he has several "simple" versions of each type signature next to the "real" version.
04:42:01 <shachaf> -- 'findOf' :: 'Traversal'' s a -> (a -> 'Bool') -> s -> 'Maybe' a
04:42:16 <lightquake> yeah, but the errors would be awful
04:42:41 <shachaf> This is edwardk's "expansion" phase.
04:42:41 <kmc> that oompa loompa story is like some terrible crossover of Willy Wonka and A Clockwork Orange
04:42:53 <shachaf> Where he generalizes everything and later figures out what sticks.
04:43:38 <lightquake> the perils of a rapidly-developed library, I guess
04:43:59 <shachaf> lightquake: Do you understand lens signatures in general?
04:44:10 <lightquake> not in this general!
04:44:13 <shachaf> Like Applicative f => (a -> f b) -> (a,a) -> f (b,b)?
04:44:15 -!- hagb4rd has joined.
04:44:47 <lightquake> i understand that you use the functor context so that you can run it with both Identity and Const and combine a getter and a setter
04:44:50 <lightquake> but not much beyond that
04:45:20 <shachaf> Well, that signature is just like mapM for tuples, right?
04:45:21 <shachaf> @ty mapM
04:45:22 <lambdabot> Monad m => (a -> m b) -> [a] -> m [b]
04:45:40 <lightquake> right
04:47:45 <shachaf> So it's like that, except with Applicative.
04:48:03 <shachaf> Now we want to generalize that in various directions.
04:48:08 <lightquake> what does applicative get y ou?
04:48:08 <zzo38> Also seems, as if you have ((->) Bool) instead of []
04:48:23 <shachaf> lightquake: All you need is Applicative, so why require Monad?
04:48:32 <shachaf> (You can't make Const a Monad, anyway.)
04:48:40 <lightquake> right, i meant, why isn't functor enough
04:48:55 <shachaf> Functor is enough when you're traversing exactly one value.
04:48:56 <zzo38> Is mapM a functor?
04:49:06 <shachaf> But both traverses two values.
04:49:15 <shachaf> lightquake: Try to write the function. You need (<*>). :-)
04:49:22 <shachaf> both f (x,y) = (,) <$> f x <*> f y
04:49:54 <shachaf> Anyway, so one direction we can generalize this is that we want indexing.
04:50:11 <shachaf> For instance, mapMWithIndex :: (Int -> a -> f b) -> [a] -> f [b]
04:50:16 <shachaf> (For Applicative f.)
04:50:33 <shachaf> But that's not so great because it's not compatible with regular lenses.
04:50:55 <lightquake> so wait
04:51:10 <lightquake> obviously if f is Identity, that just turns into a plain mapWithIndex
04:51:16 <shachaf> Right.
04:51:17 <lightquake> what does it do if f is Const?
04:51:29 <shachaf> Oh, instance Monoid m => Applicative (Const m)
04:51:49 <shachaf> Where pure _ = Const mempty; Const mf <*> Const mx = Const (mf <> mx)
04:51:57 <zzo38> shachaf: You can also make instance Monoid m => Alternative (Const m)
04:52:02 <lightquake> oh, so you wind up accumulating the result
04:52:04 <shachaf> So when you use Const, it never actually rebuilds the structure.
04:52:19 <shachaf> But you can use a monoid to decide how to accumulate, right.
04:52:35 <shachaf> > foldOf both ("hello","there")
04:52:36 <lambdabot> "hellothere"
04:52:43 <shachaf> That uses the [] monoid instance.
04:53:02 <lightquake> right
04:53:14 <lightquake> > foldOf both (Add 2, Add 8)
04:53:15 <lambdabot> Not in scope: data constructor `Add'Not in scope: data constructor `Add'
04:53:19 <shachaf> Sum
04:53:22 <lightquake> ah
04:53:43 <shachaf> > getConst $ both (\x -> Const (Sum x)) (1, 2)
04:53:44 <zzo38> Instead of [] and Int perhaps you could make it a class of a type which can be indexable by some other type? Such as, indexable (x ->) by x
04:53:45 <lambdabot> Sum {getSum = 3}
04:53:57 <shachaf> So that's how both works.
04:54:10 <shachaf> Now, the trick with indexing is a little bit of overloading.
04:55:02 <shachaf> clsas Indexable i p where ...; indexedMapM :: (Indexable Int p, Applicative f) => p a (f b) -> [a] -> f [b]
04:55:08 <shachaf> Indexing has two instances.
04:55:18 <shachaf> One of them is (->); when you use that instance, it just works without the index.
04:55:40 <shachaf> The second is newtype Index i a b = Indexed { runIndexed :: i -> a -> b }
04:55:49 <shachaf> Er, newtype Indexed
04:56:08 <lightquake> slow down a bit
04:56:23 <lightquake> so you have an instane Indexable Int (->) that just ignores the index
04:56:30 <zzo38> But it is a category like (Kleisli ((->) i))
04:56:39 <shachaf> Right.
04:56:56 <lightquake> presumably this is actually Indexable i (->)
04:57:03 <shachaf> Yes.
04:57:05 <lightquake> then what's the instance for Indexed look like?
04:57:23 <shachaf> The class is actually class Indexable i p where indexed :: p a b -> i -> a -> b
04:57:43 <shachaf> So instance Indexable i (->) where indexed f i x = f x
04:57:44 <shachaf> I assume
04:58:18 <shachaf> That way any indexed traversal can degrade to a regular traversal.
04:58:28 <lightquake> and for Indexed, indexed = runIndexed
04:58:35 <shachaf> Right.
04:59:21 <lightquake> ok
04:59:40 <shachaf> So that's one generalization.
04:59:52 <shachaf> It turns out this "p" thing is actually pretty useful.
05:00:28 <shachaf> There's a class Profunctor p where lmap :: (a -> b) -> p b c -> p a c; rmap :: (b -> c) -> p a b -> p a c
05:00:45 <shachaf> I can explain that class further if you like. :-)
05:01:17 * elliott prefers the dimap presentation
05:01:19 <shachaf> Oh, so the way we write indexed both is both f (x,y) = (,) <$> indexed f 0 x <*> indexed f 1 y
05:01:28 <shachaf> OK, elliott has volunteered to take over.
05:01:30 * shachaf is out.
05:02:10 <lightquake> aw, come back
05:02:16 * shachaf is in.
05:02:20 <shachaf> But elliott has to explain it with dimap
05:02:34 <zzo38> Is there any relation to representable functor?
05:02:35 <elliott> I'll do that in ten years
05:02:59 <shachaf> zzo38: We have a lot of (co)representable profunctors.
05:03:48 <shachaf> lightquake: OK, does that class make sense?
05:03:53 <shachaf> (It probably doesn't.)
05:03:57 <lightquake> Profunctor? sort of
05:04:21 <shachaf> It's a thing which is covariant in one argument and contravariant in the other.
05:04:43 <shachaf> In a sense p a b "consumes" things of type a and "produces" things of type b
05:04:49 <elliott> rmap = fmap
05:05:00 <shachaf> (->) is the classic example.
05:05:01 <elliott> as in given (Profunctor p) you have (Functor (p a)) for all a (but you can't express this)
05:05:07 <zzo38> I can see that (->) fits
05:05:30 <zzo38> And (->) is a category
05:05:39 <zzo38> Is it related to being a category?
05:05:41 <shachaf> Not all instances of Profunctor are categories.
05:06:02 <lightquake> so what's another instance of Profunctor?
05:06:07 <shachaf> Indexed :-)
05:06:12 <zzo38> shachaf: It is what I thought.
05:06:15 <lightquake> figured :)
05:06:24 <shachaf> Also there are a bunch of others.
05:06:32 <shachaf> newtype Tagged a b = Tagged { unTagged :: b }
05:06:43 <shachaf> newtype Forget r a b = Forget { unForget :: a -> r }
05:06:59 <elliott> s/unForget/remember/
05:07:01 <shachaf> newtype UpStar f a b = UpStar { unUpStar :: a -> f b }
05:07:06 <shachaf> elliott: That's what I called it at first.
05:07:27 <zzo38> Can it be made, profunctors on other categories?
05:07:47 <lightquake> what's Tagged for?
05:07:47 <zzo38> UpStar is the same type as Kleisli though isn't it?
05:07:58 <shachaf> zzo38: Yes, but it's used for different things.
05:08:10 <shachaf> lightquake: Let's get to that in a moment. :-)
05:08:15 <lightquake> sure
05:08:20 <shachaf> So you can use profunctors to make this different representation of lenses.
05:08:30 <shachaf> Instead of (a -> f b), you write p a b
05:08:39 <shachaf> With various constraints on the p
05:08:53 <shachaf> ... p => p a b -> p s t
05:09:09 <shachaf> If you pick Profunctor as your constraint, what you get is an isomorphism.
05:09:33 <shachaf> Because the only way you can turn "p a b" to "p s t" (if you know almost nothing about p) is by lmapping (s -> a) and rmapping (b -> t)
05:09:42 * shachaf is probably not making sense again.
05:10:03 <zzo38> (Kleisli f) makes a category if f is a category. In what cases will it make a profunctor?
05:10:05 <lightquake> doesn't isomorphism imply that you can go back from p s t to p a b?
05:10:09 <lightquake> or am i misinterpreting
05:10:18 <zzo38> Is it if f is functor?
05:10:47 <shachaf> lightquake: It's saying that s ~ a and b ~ t
05:10:51 <shachaf> And it lets you go back and forth.
05:11:10 <elliott> lightquake: you can treat s = t, a = b usually
05:11:14 <lightquake> how's that follow? what if s -> a is an injection?
05:11:27 <elliott> blah :: Profunctor p => p (a,b) (a,b) -> p (b,a) (b,a)
05:11:31 <elliott> blah = lmap swap . rmap swap
05:11:31 <shachaf> Well, OK, let's put it differently:
05:11:44 <shachaf> (forall f. Profunctor f => p a b -> p s t) ~~ (s -> a, b -> t)
05:12:10 <shachaf> It's a very polymorphic function, so it knows almost nothing about which profunctor you're using.
05:12:25 <lightquake> ahhh
05:12:34 <zzo38> That is strange, it is f only in constraint
05:12:35 <lightquake> yeah, that makes more sense
05:12:56 <shachaf> Can you figure out a way to "extract" the isomorphism from that type?
05:12:59 <elliott> shachaf's p key is adjacent to his f key
05:13:02 <shachaf> Start with the (b -> t) direction.
05:13:44 <lightquake> it's the rmap of the profunctor
05:13:47 <shachaf> I give you foo :: forall p. p a b -> p s t
05:13:57 <shachaf> You have to give me bar :: (b -> t)
05:14:11 <shachaf> (This means that you have to pick some specific concrete profunctor to use.)
05:14:17 <lightquake> right, right
05:14:33 <lightquake> wait, isn't it just Tagged?
05:14:48 <lightquake> with some unTagged as well
05:14:49 <shachaf> Yep!
05:15:05 <shachaf> Usually we call this function review.
05:15:13 <lightquake> why review?
05:15:22 <shachaf> Because it's the opposite of the direction of view
05:15:28 <shachaf> review :: (Tagged a b -> Tagged s t) -> b -> t
05:15:28 <lightquake> ah
05:15:34 <shachaf> Write review :-)
05:16:48 <lightquake> review = \f -> unTagged . f . Tagged
05:17:06 <shachaf> Yep.
05:17:20 <shachaf> OK, next exercise: Get s -> a
05:17:49 -!- asiekierka has quit (Excess Flood).
05:17:50 <lightquake> Get?
05:17:56 -!- asiekierka has joined.
05:18:27 <elliott> retrieve s -> a from an iso in that form
05:18:38 <lightquake> oh, i thought Get was a type constructor
05:18:51 <shachaf> Ah. Nope.
05:18:54 <lightquake> my first guess would be Const
05:19:23 <shachaf> @kind Const
05:19:24 <lightquake> yeah, getConst . f . Const
05:19:25 <lambdabot> * -> * -> *
05:19:35 <shachaf> Oh, wait, it does have the right kind.
05:19:38 <shachaf> But it doesn't work.
05:19:44 <shachaf> Try to make it a Profunctor instance. :-)
05:19:52 <zzo38> How can you have (Get s -> a) unless Get is like Initialize?
05:19:53 <elliott> Const isn't contravariant in its first argument
05:19:57 <lightquake> oh, right
05:20:13 <shachaf> elliott: It's actually Constravariant
05:20:43 <lightquake> hmm, i'm not sure then
05:21:11 <shachaf> Well, as a hint, think about how you normally "get" things with (a -> f b) lenses.
05:22:04 <lightquake> with const, right?
05:22:14 <lightquake> er, Const
05:22:31 <shachaf> Right, but how does the full signature end up looking?
05:22:37 <shachaf> (a -> f b) -> s -> f t
05:22:53 <shachaf> How do you get (s -> a) from that?
05:23:10 <lightquake> with f = Const a
05:23:43 <lightquake> and with the argument being Const
05:23:45 -!- sebbu2 has joined.
05:23:53 <shachaf> OK, expand that out?
05:24:06 -!- sebbu2 has quit (Changing host).
05:24:06 -!- sebbu2 has joined.
05:25:07 <lightquake> goalFunc f s = getConst $ f Const s
05:25:08 <lightquake> ?
05:25:20 <shachaf> I meant the type. :-)
05:25:24 <lightquake> oh
05:25:46 <lightquake> i don't think that's right anyway, bah. anyway it's (a -> Const a b) -> s -> Const a t
05:26:10 <shachaf> OK, now reduce it one more step?
05:26:24 <lightquake> reduce it?
05:26:48 -!- sebbu has quit (Ping timeout: 245 seconds).
05:26:50 <shachaf> (a -> a) -> s -> a
05:26:54 <lightquake> ah
05:26:58 <lightquake> yeah
05:27:40 <shachaf> So pretty much the same trick works for profunctors.
05:27:42 <elliott> @type \f s -> getConst (f Const s)
05:27:43 <lambdabot> ((a1 -> Const a1 b1) -> t -> Const a b) -> t -> a
05:27:49 <elliott> that's right
05:28:26 <lightquake> so we have (forall f. Profunctor f => p a b -> p s t) and we want to get out s -> a
05:29:24 <lightquake> er, except with p instead of f
05:29:33 <lightquake> anyway. p = Const doesn't work because you don't get the right direction
05:30:34 <lightquake> so… hmm.
05:30:42 <lightquake> i'm not sure.
05:31:16 <elliott> lightquake: Forget is kind of like Const
05:32:13 <lightquake> hmm… Forget a?
05:33:11 <shachaf> Try it out!
05:33:37 <lightquake> yeah, I think forget a works, since it becomes Forget a a b -> Forget a s t, which is just (a -> a) -> (s -> a)
05:34:03 <shachaf> Yep.
05:34:09 <shachaf> It's pretty much the same trick.
05:34:41 <lightquake> neat
05:34:41 <shachaf> So view f = under _Forget f id
05:34:58 <shachaf> So that's the basic idea of profunctor lenses.
05:35:14 <shachaf> You can get everything that (a -> f b) lenses give you just by picking p a b = (a -> f b)
05:36:56 <lightquake> and you can also get indexed stuff using Indexed
05:37:12 <shachaf> Yep.
05:37:28 <shachaf> And you can define newtype Conidexed i a b = Coindexed { unCoindexed :: a -> (i,b) }
05:37:34 <hagb4rd> also forget about everything using a good programming language
05:37:38 <elliott> technically you need to separate the p
05:37:48 <elliott> instead of (p a b -> p s t) it becomes (p a b -> q s t) for Indexed
05:37:56 <elliott> because you don't want the (i ->) on the return side
05:37:58 <shachaf> Right.
05:38:08 <elliott> (i -> a -> f b) -> s -> f t, not (i -> a -> f b) -> i -> s -> f t
05:38:17 <shachaf> Where did this all start?
05:38:22 <shachaf> +ifindOf :: Profunctor q => Overloading (Indexed i) q (Accessor (Endo (Maybe a))) s t a b -> (i -> a -> Bool) -> q s (Maybe a)
05:38:39 <shachaf> So that becomes, uh, elliott wants to expand that for me.
05:38:52 * Sgeo ponders
05:39:15 <Sgeo> If I start really getting into Racket and writing macros, and switch back to Clojure, adjusting to the unhygienic macros might be "fun"
05:39:34 <elliott> shachaf: well, this isn't quite profunctor stuff directly
05:39:36 <monqy> good ponder ?
05:39:36 <Bike> the clear solution is to write the racket macro system in clojure.
05:39:42 <shachaf> elliott: True.
05:39:42 <elliott> because you have the functor jamming stuff back up due to the "compromise" we have in lens
05:40:14 <kmc> Raclojuractorcl
05:40:14 <Sgeo> Bike, I haven't looked for myself, but I think someone did that
05:40:43 <monqy> lsl
05:40:49 <shachaf> lightquake: In lens we use p a (f b) -> p s (f t) instead of p a b -> p s t
05:40:57 <shachaf> That gets you a different overloading:
05:41:30 <hagb4rd> sgeo: i don't believe you'll do, since you're changin paradigms quite as often as your underwear :P everyday a new adventure
05:41:46 <shachaf> Instead of, say, mapped :: p a b -> p [a] [b], which becomes just the regular map function when p = (->), we use mapped :: p a (Identity b) -> p [a] (Identity [b])
05:42:08 <shachaf> It's a bit more awkward but it gives us compatibility with the classic style of lens.
05:42:27 <elliott> (because you can just pick p = (->) and get something that fits the (a -> f b) -> s -> f t pattern directly)
05:42:34 <elliott> so they compose properly with lenses and the like
05:42:44 <shachaf> With twanvlenses.
05:42:46 <elliott> instead of "lmap f . rmap g" it becomes "lmap f . rmap (fmap g)"
05:42:57 <elliott> and an iso is (Profunctor p, Functor f) => p a (f b) -> p s (f t)
05:42:59 <shachaf> dimap f (fmap g)
05:43:31 <lightquake> ah, that makes sense
05:44:54 <elliott> so our indexed stuff is
05:45:05 <elliott> (Profunctor p, Indexable i p, Applicative f) => p a (f b) -> s -> f t
05:45:10 <elliott> for a traversal indexed in "i"
05:45:31 <elliott> that's just like (i -> a -> f b) -> s -> f t but it works as a plain traversal, composes properly with isomorphisms, etc.
05:46:19 <lightquake> uh-huh
05:46:44 * Sgeo is somewhat alarmed at all the pre-name-change code on PLaneT
05:46:44 <shachaf> But that's not enough because we want Coindexing!
05:47:14 <shachaf> So we get (Profunctor p, Indexable i p, Coindexable j q, Applicative f) => p a (f b) -> q s (f t)
05:47:25 * elliott thinks shachaf just gave up
05:47:37 <shachaf> ?
05:48:09 <elliott> (class Coindexable u q where coindexed :: (a -> (u, b)) -> q a b)
05:48:10 <shachaf> lightquake: By the way, we haven't figured out a use for coindexing yet.
05:48:18 <elliott> (i -> a -> f b) -> s -> f t
05:48:19 <elliott> vs.
05:48:23 <elliott> (a -> f b) -> s -> (u, f t)
05:48:35 <monqy> did you just add coindexing for fun
05:48:36 <elliott> one adds (i ->) to the p and the other (u,) to the q
05:48:46 <shachaf> elliott: Remember when you thought Coindexing was self-adjoint???????
05:48:58 <hagb4rd> it works pretty well when it comes to confusing everybody
05:49:02 <shachaf> That would be nice. :-(
05:49:08 <lightquake> permutations, obviously!
05:49:15 <Fiora> Sgeo: http://fioraaeterna.tumblr.com/post/39451893368/why-sollux-speaks-with-a-lisp
05:49:29 <shachaf> monqy: what's wrong with that.......
05:49:58 <Sgeo> Fiora, I was going to say I Thought That Was Obvious, but I didn't think of the parens thing
05:50:06 <Fiora> Yeah, that was the thing that really got me
05:50:30 <lightquake> you know why he likes aradia, right?
05:50:40 <lightquake> what programmer couldn't use more ram?
05:50:46 <Fiora> ......
05:51:31 -!- sebbu2 has quit (Read error: Connection reset by peer).
05:51:41 <Fiora> that's terrible
05:51:52 <shachaf> elliott: Fix pins :-(
05:51:55 -!- sebbu has joined.
05:51:55 -!- sebbu has quit (Changing host).
05:51:55 -!- sebbu has joined.
05:51:57 <Sgeo> <FrictionlessEmu> wouldn't he be frustrated by the unmatched parentheses
05:52:20 <kmc> lol parentheses lololololol
05:52:22 <elliott> shachaf: I've completely forgotten what pins even does
05:52:22 <lightquake> he modified his trollian to surround everything she says with parentheses
05:52:28 <Bike> he uses vi, how can he be a lisper
05:52:50 <shachaf> pins :: (Bizarre p q w, RepresentableProfunctor p) => q (w a b t) [Rep p a]
05:52:50 <shachaf> pins = getConst `rmap` bazaar (tabulatePro $ \ra -> Const [ra])
05:53:01 <shachaf> kmc makes a good point.
05:56:31 <kmc> thankschaf
06:03:48 <hagb4rd> @karma shachaf
06:03:48 <lambdabot> shachaf has a karma of 35
06:09:18 <hagb4rd> for(;;) fork();
06:10:23 -!- hagb4rd has quit (Quit: instant karma's gonna get you).
06:13:15 <kmc> #define ever (;;)
06:13:31 <kmc> #define you ()
06:13:57 <shachaf> elliott: Can you figure out a better way to do the HoleyMonoid thing?
06:14:01 <shachaf> I bet there's a better way.
06:14:01 <elliott> for you fork ever????
06:14:05 <elliott> that doesn't even make any sense kmc
06:14:14 <kmc> u have it backwards elliott
06:14:48 <elliott> kmc
06:14:52 <elliott> i'm very upset
06:15:26 <kmc> :(
06:15:43 <shachaf> kmc: don't worry about elliott he's "like that"
06:16:00 <kmc> const int main[] = { 14776, 3942977280, 247 };
06:16:46 <monqy> hi
06:16:56 <monqy> whats up??
06:17:40 <shachaf> monqy: can you make this nicer plz http://www.reddit.com/r/haskell/comments/14met7/oleg_typesafe_formatted_io/c7f8un6
06:17:55 <shachaf> edwardk pointd out that the type is "too big"
06:17:59 <shachaf> or maybe that was me
06:18:19 <monqy> uuuuuuuuuuuuuuuuuugh
06:18:21 <shachaf> Is there a way to get the type to be "just right"?
06:19:06 <kmc> unsafeCoerce
06:19:47 -!- sebbu has quit (Read error: Connection reset by peer).
06:20:10 -!- sebbu has joined.
06:20:11 -!- sebbu has quit (Changing host).
06:20:11 -!- sebbu has joined.
06:27:39 <Sgeo> My gf wrote a program that's apparently very useful for her.
06:27:57 <Sgeo> But it has a bug so she disables it when she plays her favorite game, and that causes problems
06:28:40 <monqy> oops
06:28:44 <monqy> (??????)
06:28:48 <monqy> (?????????????????????)
06:28:58 <shachaf> (?)
06:29:20 <zzo38> What program is that?
06:29:36 <Sgeo> A program to notify her when her laptop is off of the charge
06:30:11 <Sgeo> I keep telling her to fix it, she keeps getting distracted by the game
06:31:34 <shachaf> Perhaps rewriting it in Clojure would do the trick.
06:33:29 <monqy> what is the bug
06:34:17 <shachaf> monqy: the bug is, it doesn't work
06:34:42 <monqy> ah...
06:40:12 <Sgeo> It flashes or something in such a way that it stops the game from working
06:48:29 -!- augur_ has joined.
06:51:23 -!- augur has quit (Ping timeout: 245 seconds).
06:55:03 -!- Frooxius has joined.
07:05:50 -!- TeruFSX has quit (Ping timeout: 252 seconds).
07:20:07 <elliott> -alongside :: ALens s t a b -> ALens s' t' a' b' -> Lens (s,s') (t,t') (a,a') (b,b')
07:20:16 <elliott> +alongside :: (CorepresentableProfunctor q, Applicative (Corep q), Comonad (Corep q), Functor f) 321
07:20:19 <elliott> + => Overloading (->) q (Pretext (->) q a b) s t a b -> 322
07:20:21 <elliott> + Overloading (->) q (Pretext (->) q a' b') s' t' a' b' -> 323
07:20:24 <elliott> + Overloading (->) q f (s,s') (t,t') (a,a') (b,b')
07:20:27 <elliott> truly the image of progress
07:40:53 -!- Nisstyre-laptop has joined.
07:59:42 -!- Bike has quit (Quit: leaving).
08:01:18 <coppro> http://nrk.no/nordlandsbanen/
08:04:37 <fizzie> I remember seeing some ten-hour train video in YouTube a while ago.
08:32:05 -!- epicmonkey has joined.
08:39:32 -!- ais523 has quit.
09:07:11 -!- WeThePeople has quit (Quit: Leaving).
09:16:47 -!- zzo38 has quit (Remote host closed the connection).
09:59:59 <shachaf> Jafet: Do you use Sid? What version of libc do you have?
10:01:25 <Jafet> eglibc: libc6 2.13-37
10:01:36 <Jafet> That is possibly the most confusing software identifier ever
10:07:16 * shachaf tried to run a thing that needed 2.15 today.
10:07:30 <coppro> Jafet: have you seen CLC-INTERCAL?
10:07:58 <Jafet> Is it in sid?
10:08:21 <Jafet> shachaf: I'm curious to know what kind of software has a minor version dependency on libc
10:08:39 <coppro> Jafet: the most recent I can find is version 1.-94.-4.1
10:08:43 <coppro> no wait, not the most recent
10:08:46 <coppro> but the silliest
10:09:02 <Jafet> Eh, it doesn't even have "rc" after it
10:09:18 <shachaf> Jafet: Most software, I think
10:09:25 <shachaf> .13 vs .15 is pretty significant.
10:10:38 <Jafet> Well, they tend to depend on not having obsolete minor versions.
10:10:41 <coppro> Jafet: And C-INTERCAL has the major and minor versions backward
10:10:48 <coppro> 0.26 -> 1.26 (bugfix) -> 0.27
10:12:51 <Jafet> Push CLC-INTERCAL to debian, it might get 1:1.-94.-4.1rc-dfsg2-ng or something
10:14:33 <coppro> haha
10:15:38 -!- Taneb has joined.
10:16:26 <Sgeo> Oh hey Tcl 8.6 was released recently
10:16:49 <monqy> is that good
10:16:51 <Taneb> Things that annoy me but shouldn't:
10:17:00 <Taneb> People posting rugby in the Haskell tag on Tumblr
10:17:14 -!- copumpkin has quit (Ping timeout: 252 seconds).
10:17:19 <Sgeo> 8.6 has coroutines <3. Well, not as much <3 as I'd have for first-class continuations, but still
10:17:32 <shachaf> coroutines > continuations
10:17:45 <shachaf> continuations: the devil??
10:17:47 -!- copumpkin has joined.
10:18:03 <shachaf> monqy: tell me about continuations
10:18:12 <shachaf> (or don't)
10:18:13 <monqy> continuations have a funny problem where something about spaghetti
10:18:43 <shachaf> monqy: but wait, i read category theory will save you from spaghetti code because associativity
10:18:53 <monqy> :o
10:19:07 <shachaf> http://www.reddit.com/r/programming/comments/15q6lw/the_continuation_monad/c7p26jy
10:19:10 <shachaf> qed??
10:19:31 <Jafet> Lasagne programming
10:19:45 <coppro> `addquote < monqy> continuations have a funny problem where something about spaghetti < shachaf> monqy: but wait, i read category theory will save you from spaghetti code because associativity
10:19:52 <HackEgo> 892) < monqy> continuations have a funny problem where something about spaghetti < shachaf> monqy: but wait, i read category theory will save you from spaghetti code because associativity
10:20:07 <shachaf> Ugh.
10:20:16 <Deewiant> Insert whining about wrong quote formatting etc
10:20:25 <elliott> spaghetti quotes
10:20:29 <oklopol> i hate those whitespaces
10:20:33 <oklopol> before the name
10:20:35 <oklopol> alsdkfjdasjföldasjfldsaj
10:20:50 <oklopol> all else is fine.
10:21:08 <elliott> Deewiant: remember that time I asked you about whether a name was a real finnish name and stuff
10:21:15 <elliott> Deewiant: well it turns out they were lying and weren't finnish after all
10:21:16 <Deewiant> elliott: No but whatever
10:21:19 <Jafet> <@oklopol> I wish I had this quote
10:21:23 <Deewiant> elliott: Okay
10:21:27 <elliott> wow how could you not remember that vital turning point in each of our lives
10:21:30 <coppro> Deewiant: fix it then
10:21:44 <elliott> also they have disappeared for like months; possibly due to guilt at lying about being finnish?
10:21:49 <Deewiant> coppro: I don't know the commands and don't really care either
10:22:07 <coppro> Deewiant: you can `revert and then `addquote. How would you format it?
10:22:11 <Deewiant> elliott: Well to be honest I have a faint memory of something like that occurring but no details
10:24:11 <Deewiant> coppro: I think there's some kind of "standard" on this channel with putting two spaces between separate lines and enclosing nicks in <> but without the space; but like said I don't really care and as such I'm not sure about this either
10:24:13 <Deewiant> elliott: You know
10:25:04 <Deewiant> And I'm off for a bit -->
10:25:26 <Jafet> Go for a byte.
10:25:38 <elliott> imo we must find our own standards inside our hearts and then impose them ruthlessly on others for nothing but the joy of cruelty
10:25:46 <elliott> isn't that what IRC is all about
10:25:57 <coppro> why am I giving grammar advice at 3 am
10:26:21 <Taneb> If they made a diet version of coppro, what would they call it?
10:26:29 <Taneb> coppro-lite wouldn't be very good
10:26:55 <coppro> Taneb: it's a long o
10:27:10 <Taneb> Which o?
10:27:37 <coppro> the first one
10:28:05 <Taneb> "k-oh-pro"?
10:28:16 <Taneb> Rhymes with "go pro"?
10:28:34 <coppro> no
10:28:45 <coppro> maybe I'm mixing up vowel length again
10:28:51 <coppro> the two os are pronounced differently
10:28:57 <coppro> and not like the Greek "copros"
10:29:03 <Jafet> Obviously it's pronounced coooppro
10:29:28 <Taneb> ...Sounds like cobra?
10:29:53 <coppro> no
10:29:58 <coppro> like copper
10:30:28 <Taneb> So, the second o is a schwa?
10:31:24 -!- monqy has quit (Quit: hello).
10:39:14 <coppro> no, the second o is like in cobra
10:39:53 <Taneb> Ah
10:40:03 <Sgeo> o.O there's some controversy in the Scheme community about the best way to do macros
10:40:10 <Taneb> koh pro
10:40:21 <shachaf> Sgeo: What about the Clojure community?
10:40:45 * Sgeo swats shachaf
10:40:57 <shachaf> oerjan: uhhh..............
10:41:33 <Taneb> oerjan, why aren't you online
10:52:14 -!- Phantom_Hoover has joined.
11:03:11 <Fiora> http://en.wikipedia.org/wiki/Magnus_Carlsen highest ELO rating of all time now :o
11:03:48 -!- nooga has joined.
11:04:39 <Taneb> Electric Light Orchestra
11:04:42 <Taneb> ?
11:04:48 <Phantom_Hoover> yes
11:05:05 <Fiora> http://en.wikipedia.org/wiki/Elo_rating
11:05:09 <Taneb> :P
11:05:10 <Phantom_Hoover> he is the most electric light orchestra person ever
11:05:13 <Fiora> oh, it's not capitalized :P
11:06:48 -!- AnotherTest has joined.
11:14:39 -!- Frooxius has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204]).
11:19:13 -!- mrout has joined.
11:21:47 <mrout> Most ridiculously complex esolang?
11:22:01 <Taneb> CLCLC-Intercal, possibly
11:22:05 <Taneb> Or ORK
11:22:15 <elliott> bitwise cyclic tag
11:22:57 <Taneb> Or Glass
11:23:10 <Taneb> Or Malbolge
11:23:33 <Taneb> Cat program in Glass: {M[maI!bO!cA!dae.?<1>c(ne).?=/dac.?bo.?dae.?<1>c(ne).?=\]}
11:24:13 <mrout> ORK looks hilarious
11:24:20 <Taneb> It's object oriented
11:24:44 <Jafet> That might be shorter than the cat program in java
11:25:55 <Taneb> I know roughly what it does up to the first m
11:26:29 <mrout> Jafet: You could probably write a kernel in some languages in less code than you could write Hello World in Java
11:27:56 <Taneb> 99 bottles of beer in Malbolge: http://www.99-bottles-of-beer.net/language-malbolge-995.html
11:28:15 <Taneb> "good luck"
11:30:52 <Jafet> Is there a malbolge utm yet
11:31:12 <Taneb> I thought Malbolge was bounded-storage?
11:31:46 <mig22> How do you run Glass after you downloaded it?
11:32:15 <mrout> Taneb: it is, but someone managed it
11:32:58 <elliott> mig22: compiling the interpreter probably
11:33:10 <mrout> "I think Malbolge needs an update. I may write Visual M++ 2008 Extra Ultimate Edition if I'm feeling bored some weekend." - Ben Olmstead
11:34:20 <Taneb> elliott, do you happen to know what times trains to Newcastle are?
11:38:42 -!- Frooxius has joined.
11:39:38 <Taneb> I'll take that as a no...
11:56:13 -!- zzo38 has joined.
11:58:51 <Taneb> Well, I'm heading off nowe
11:58:53 -!- Taneb has quit (Quit: Leaving).
12:15:58 -!- epicmonkey has quit (Ping timeout: 245 seconds).
12:40:17 <Phantom_Hoover> why on earth would he want to go to newcastle
13:28:39 -!- boily has joined.
13:38:00 -!- DHeadshot has quit (Read error: Connection reset by peer).
13:38:16 -!- DHeadshot has joined.
13:39:30 -!- Phantom_Hoover has quit (Remote host closed the connection).
13:41:27 -!- Phantom_Hoover has joined.
13:47:24 <fizzie> Perhaps the princess is in the newcastle?
14:01:29 -!- mrout has quit (Quit: Screw you guys, I'm going home.).
14:02:05 -!- TeruFSX has joined.
14:03:21 -!- Sgeo has quit (Read error: Operation timed out).
14:04:50 -!- Sgeo has joined.
14:10:27 -!- carado has joined.
14:11:06 -!- hagb4rd has joined.
14:14:35 -!- carado has quit (Client Quit).
14:14:48 -!- carado has joined.
14:17:53 -!- WeThePeople has joined.
14:18:03 -!- DHeadshot has quit (Ping timeout: 245 seconds).
14:28:27 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
14:49:09 -!- WeThePeople has quit (Quit: Leaving).
15:47:41 -!- augur_ has quit (Ping timeout: 244 seconds).
16:20:39 -!- mekeor has joined.
16:33:10 <kmc> today's xkcd is amusing, but i'm not sure why he felt the need to put a full explanation of what the joke is directly under the joke
16:34:11 -!- epicmonkey has joined.
16:40:03 -!- DHeadshot has joined.
16:45:56 <FreeFull> I just wrote my first successful quine
16:46:05 <FreeFull> main = putStrLn $ a ++ show a where a = "main = putStrLn $ a ++ show a where a = "
16:46:58 <shachaf> > text$ap(++)show"text$ap(++)show"
16:47:00 <lambdabot> text$ap(++)show"text$ap(++)show"
16:47:20 <boily> > :t text
16:47:22 <lambdabot> <hint>:1:1: parse error on input `:'
16:49:40 <shachaf> > run (now "x = " . later show . now ", y = " . later show) 4 16
16:49:42 <lambdabot> "x = 4, y = 16"
16:50:41 <FreeFull> :t text
16:50:42 <lambdabot> String -> Doc
16:50:48 <FreeFull> Wtf is Doc
16:51:20 <kmc> http://lambda.haskell.org/platform/doc/current/ghc-doc/libraries/pretty-1.1.1.0/Text-PrettyPrint-HughesPJ.html
16:51:25 <FreeFull> :t ap
16:51:26 <lambdabot> Monad m => m (a -> b) -> m a -> m b
16:51:45 <shachaf> > run (now "what's up, " . later show . now "?") (typeOf (text "hi"))
16:51:47 <lambdabot> No instance for (Data.Typeable.Internal.Typeable
16:51:47 <lambdabot> Text.P...
16:51:49 <shachaf> Aw.
16:52:57 <shachaf> i love profunctors
16:53:00 <shachaf> they are so easy
16:53:57 <FreeFull> Is Text.PrettyPrint.HughesPJ included in Prelude though?
16:54:06 <kmc> no but it's imported by lambdabot
16:54:38 <shachaf> @ty (now,later,run)
16:54:39 <lambdabot> (Monoid a, Monoid m1, Monoid m) => (m -> ((m -> t1) -> t) -> (m -> t1) -> t, (t4 -> m1) -> ((m1 -> t3) -> t2) -> (m1 -> t3) -> t4 -> t2, (((a -> b) -> b) -> (a1 -> a1) -> t5) -> t5)
16:54:50 <shachaf> Still shorter than the average lens type. :-(
17:11:09 -!- Bike has joined.
17:11:41 <hagb4rd> hello fiet
17:47:29 -!- Nisstyre-laptop has joined.
18:03:34 -!- Phantom_Hoover has quit (Ping timeout: 244 seconds).
18:08:39 -!- TeruFSX has quit (Ping timeout: 255 seconds).
18:15:12 <Sgeo> I should probably read this paper about keywords in Racket, rather than assuming the only benefit the byzantine keyword system has is a relatively minor one
18:16:01 <kmc> that's crazy talk
18:19:10 <Fiora> Sgeo: update?
18:19:26 <Sgeo> Fiora, yes
18:19:36 <Sgeo> Feel free to ping the people I usually ping
18:19:44 <shachaf> Fiora: For the first time in three months!
18:20:49 <Fiora> pff
18:24:16 <shachaf> (Well, it was.)
18:24:57 <Fiora> ?
18:31:18 -!- Phantom_Hoover has joined.
18:33:04 -!- asiekierka has quit (Excess Flood).
18:33:11 -!- asiekierka has joined.
18:34:25 -!- Nisstyre-laptop has quit (Quit: Leaving).
18:35:04 -!- Nisstyre-laptop has joined.
18:35:58 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
18:38:28 -!- Nisstyre-laptop has joined.
18:46:14 -!- hagb4rd has quit (Ping timeout: 255 seconds).
19:06:08 <kmc> The 112th Congress: At Least Nobody Got Caned
19:14:43 -!- asiekierka has quit (Excess Flood).
19:16:16 -!- hagb4rd2 has joined.
19:18:44 -!- asiekierka has joined.
19:21:23 -!- DHeadshot has quit (Read error: Connection reset by peer).
19:24:26 -!- asiekierka has quit (Excess Flood).
19:24:33 -!- asiekierka has joined.
19:28:26 -!- oerjan has joined.
19:34:09 -!- DHeadshot has joined.
19:37:09 -!- Phantom__Hoover has joined.
19:40:19 -!- Phantom_Hoover has quit (Ping timeout: 248 seconds).
19:43:41 -!- DHeadshot has quit (Read error: Connection reset by peer).
19:43:47 -!- DH____ has joined.
19:50:41 -!- asiekierka has quit (Excess Flood).
19:51:43 -!- asiekierka has joined.
20:06:13 <oerjan> <elliott> truly the image of progress
20:06:29 <oerjan> 2013, the year haskell collapsed into the kmett singularity
20:10:00 <oerjan> `quote 892
20:10:02 <HackEgo> 892) < monqy> continuations have a funny problem where something about spaghetti < shachaf> monqy: but wait, i read category theory will save you from spaghetti code because associativity
20:11:42 <shachaf> bad quote imo
20:11:46 <shachaf> I move to delete 892,
20:11:49 <shachaf> s/.$/./
20:11:56 <fizzie> VfD.
20:11:59 -!- AnotherTest has quit (Quit: Leaving.).
20:12:02 <oerjan> `run sed -i '892s/\( *\)< /\1\1</g' quotes
20:12:06 <HackEgo> No output.
20:12:09 <oerjan> `quote 892
20:12:11 <HackEgo> 892) <monqy> continuations have a funny problem where something about spaghetti <shachaf> monqy: but wait, i read category theory will save you from spaghetti code because associativity
20:12:22 <fizzie> I was about to vote for SPEEDY DELETE just because of the spacing.
20:12:28 <fizzie> Now you've gone and ruined (fixed) it.
20:12:36 <shachaf> I move to delete it.
20:13:11 <fizzie> I vote for MERGE WITH 492
20:13:17 <oerjan> `quote 492
20:13:18 <HackEgo> 492) <monqy> im hungary too...but cnnot eat until hours
20:13:24 <fizzie> Oh ho, how appropriate!
20:13:32 <shachaf> 492 is good
20:13:40 <fizzie> They're both about food and feature a monqy.
20:13:41 <shachaf> How about we delete 892?
20:13:52 <shachaf> monqy++
20:14:30 <oerjan> i vote against merge on the principle that spaghetti is italian, not hungarian
20:14:55 <fizzie> I can't argue with that. :/
20:15:01 <fizzie> (But now I'm hungry.)
20:15:09 <shachaf> OK, then we delete 892?
20:15:58 <fizzie> It seems that thou must.
20:16:36 <oerjan> fizzie: make some gulyás then
20:16:40 <olsner> go forth and swiftly the quote
20:17:12 <shachaf> hi oerjan
20:17:15 <shachaf> helloerjan
20:17:22 <shachaf> Did I hallucinate you earlier?
20:18:14 <shachaf> `quote
20:18:15 <HackEgo> 689) <monqy> kallisti: by ordered multiset did you mean: list??????
20:19:50 <boily> `quote
20:19:51 <HackEgo> 836) <oerjan> `welcome Rawlie * zzo38 has joined #esoteric <Rawlie> thank you <zzo38> You're welcome.
20:20:01 <shachaf> `quote
20:20:03 <HackEgo> 266) <zzo38> I also do not like that it should be disallow just because of too weird. They haveto make up more name so that not everyone has the same name!!!
20:20:22 * boily has a brain freeze
20:20:41 <olsner> `quote canada
20:20:43 <HackEgo> 377) <oerjan> as i was filled with zzo38 mystery at the moment i saw <zzo38> quintopia: I am at Canada. \ 680) <zzo38> When you die in Canada, you die in real life.
20:21:11 <boily> ooooh, canada.
20:21:39 <shachaf> I nominate 680 for deletion.
20:21:48 <olsner> but it's zzo
20:21:57 <oerjan> `quote 680
20:21:59 <HackEgo> 680) <zzo38> When you die in Canada, you die in real life.
20:22:19 <olsner> though that one is not actually like zzo38 at all
20:22:28 <shachaf> @google When you die in Canada, you die in real life.
20:22:29 <lambdabot> http://xkcd.com/180/
20:22:29 <lambdabot> Title: xkcd: Canada
20:23:11 <oerjan> `quote <
20:23:12 <olsner> but if you live in Canada, do you live in real life?
20:23:13 <HackEgo> 80) <fax> oklopol geez what are you doing here <oklokok> ...i don't know :< <oklokok> i actually ate until now, although i guess i also did other things... \ 141) <cpressey> < ais523> then running repeatedly until you get the right sequence of random numbers < ais523> and just completely ignoring the input <-- some people live their entire lives
20:25:10 <oerjan> `quote < *[a-z]
20:25:11 <HackEgo> 141) <cpressey> < ais523> then running repeatedly until you get the right sequence of random numbers < ais523> and just completely ignoring the input <-- some people live their entire lives this way, i reckon \ 198) <j-invariant> 22:55 < qfr> How am I supposed to develop software in Haskell if I can't even prepare my projects in UML?! It seems lik
20:25:40 <oerjan> tOO MUCH
20:25:48 -!- TeruFSX has joined.
20:25:50 <olsner> weird, whence the extra space before the nick?
20:26:02 <oerjan> obviously some client does it
20:26:08 <olsner> Obviously.
20:26:08 <shachaf> irssi does it by default
20:26:19 <shachaf> @quote oerjan
20:26:19 <lambdabot> oerjan says: i only do impractical things
20:26:23 <shachaf> @quote .*oerjan
20:26:23 <lambdabot> Tac-Tics says: oerjan: I tried, but his zombie lectures were hard to follow
20:26:27 <oerjan> ...my irssi includes no < before the nick
20:26:28 <shachaf> @quote .*oerjan.*
20:26:28 <lambdabot> Tac-Tics says: oerjan: I tried, but his zombie lectures were hard to follow
20:26:44 <shachaf> @quote <kmc>
20:26:45 <lambdabot> <kmc> says: but if you know the package, you can find it on Hackage; <kmc> it even rhymes
20:27:40 <kmc> irssi puts + or @ there for voice or oper, respectively
20:30:23 <olsner> aww, someone forgot to remove the <> when @remembering
20:33:26 <oerjan> <Phantom_Hoover> why on earth would he want to go to newcastle <-- to sell coal, naturally
20:36:27 <mroman> to watch the match.
20:37:57 <mroman> and to dink a brown ale
20:43:41 <shachaf> @quote <oerjan>
20:43:41 <lambdabot> No quotes match. Just try something else.
20:43:43 <shachaf> @quote sorear
20:43:44 <lambdabot> sorear says: <sorear> Unfortunately, Coq *cannot* prove that your program will terminate before the heat-death of the universe. <psnively> Right. That's a software engineering problem, not a
20:43:44 <lambdabot> computer science problem. ;-)
20:43:57 <shachaf> That's more of a psnively quote, I think.
20:44:00 <shachaf> @quote sorear
20:44:00 <lambdabot> sorear says: -f flags are so 2006
20:44:12 <shachaf> Oh well.
20:46:07 <olsner> I guess from 2007 and forward it's all -X flags
20:48:48 <shachaf> @quote olsner
20:48:48 <lambdabot> olsner says: I've always mostly equated coding perl and trolling
20:48:52 <shachaf> @quote olsner
20:48:52 <lambdabot> olsner says: a mind won't be enough, you need a comind to go with it
20:49:42 <olsner> @quote shachaf
20:49:42 <lambdabot> shachaf says: category-extras was so great until the antitrust lawsuit.
20:50:01 <shachaf> @quote monqy
20:50:01 <lambdabot> Plugin `quote' failed with: getRandItem: empty list
20:50:21 <olsner> oh, so monqy has had lambdabot quotes but lost all of them
20:50:57 <shachaf> Sad.
20:51:37 <olsner> one day I should figure out how to patch lambdabot
20:51:46 <olsner> to fix that getRandItem bug
20:51:50 <shachaf> It's easy.
20:52:55 <oerjan> <olsner> I guess from 2007 and forward it's all -X flags <-- YOU MEAN LANGUAGE PRAGMAS HTH
20:53:06 <kmc> fglasgow-exts for lyfe
20:53:18 <shachaf> {-# LANGUAGE -XGlasgowExts #-}
20:53:30 <olsner> {-# LANGUAGE EVERYTHING #-}
20:53:36 <oerjan> shachaf: that's not the correct syntax
20:54:04 <shachaf> -X{-# LANGUAGE -XGlasgowExts #-}?
20:54:15 * oerjan swats shachaf -----###
20:54:16 <shachaf> or is it -XLANGUAGE
20:54:41 <oerjan> i don't think GlasgowExts is a LANGUAGE pragma but i may be wrong
20:55:01 <shachaf> You aren't wrong.
20:55:10 <olsner> something like {-# OPTIONS_GHC -fglasgow-exts #-} iirc
20:55:15 <shachaf> We should implement that proposal where -O and -X and -W all behave the same.
20:55:33 <shachaf> So you can say -X1 to get standard extensions, -X2 to get reasonable extensions, -X3 to get crazy extensions.
20:56:06 <shachaf> And -OUnpackStrictFields, -WNoMissingSignatures
20:56:11 <olsner> or -X3 to force no extensions at all, mirroring that nice -O3 bug
20:56:26 <kmc> i'm sure this would in no way result in endless unhelpful bikeshedding about which extensions are "reasonable"
20:56:53 <shachaf> I suspect bickering was the hidden motivation of the proposal.
20:56:55 <oerjan> surely.
20:57:17 <shachaf> kmc: You know how GCC has optimizations that are hard-wired to check the -O level rather than individual flags? :-(
20:57:24 <kmc> yeah
20:57:26 <kmc> you told me that :(
20:57:51 <shachaf> Oh.
21:03:39 * oerjan thinks that ought to be easy to fix is someone wanted to...
21:03:45 <oerjan> *if
21:08:20 -!- augur has joined.
21:14:39 -!- mekeor has quit (Quit: g'night).
21:49:18 -!- epicmonkey has quit (Ping timeout: 245 seconds).
22:19:10 -!- Taneb has joined.
22:20:49 -!- Vorpal has joined.
22:22:46 -!- josue1 has joined.
22:23:03 -!- boily has quit (Ping timeout: 245 seconds).
22:23:06 -!- josue1 has quit (Read error: Connection reset by peer).
22:34:15 -!- WeThePeople has joined.
22:42:27 -!- augur has quit (Remote host closed the connection).
22:42:59 -!- augur has joined.
22:44:19 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
22:46:07 -!- Phantom_Hoover has joined.
22:55:01 <Sgeo> I should resume watching DS9 at some point
22:55:33 <shachaf> Is that a Scheme implementation?
22:55:51 <Sgeo> Also, does writing a BF derivative, solely with the goal of implementing BF, warrant a brain bricking? Because a tutorial I read did that
22:55:59 -!- Frooxius has quit (Ping timeout: 260 seconds).
22:55:59 <Sgeo> shachaf, no, no it is not.
22:56:42 <oerjan> deep scheme 9
22:57:27 <oerjan> it has no scheme but it does have a plot
22:59:09 <Phantom_Hoover> hey Sgeo you liked stargate right
22:59:22 <Taneb> There's a place to the east of here called Stargate
22:59:33 <Sgeo> Phantom_Hoover, yes
22:59:38 <oerjan> schemegate 1
22:59:45 <Phantom_Hoover> plz smack yourself in the face, thanks
23:00:04 <oerjan> O KAY
23:00:08 <oerjan> *ouch*
23:00:27 <Taneb> @quote field with cows
23:00:27 <lambdabot> No quotes for this person.
23:00:32 * oerjan did it literally, for the art
23:00:32 <Taneb> `quote field with cows
23:00:33 <HackEgo> 415) <Taneb> Look, I often walk my dog through a field with cows in it. And I punched myself in the face once.
23:00:58 <shachaf> I once stapled my thumb.
23:01:34 <shachaf> As I recall I said that it wouldn't hurt.
23:01:39 <shachaf> As I recall it hurt.
23:01:50 <oerjan> shachaf: science, it works!
23:02:00 <Phantom_Hoover> shachaf, why did you say it wouldn't hurt
23:02:13 <shachaf> Phantom_Hoover: Because I expected that it wouldn't.
23:02:17 <oerjan> it was his zero hurt hypothesis
23:02:55 <shachaf> I didn't staple it *to* anything, by the way.
23:03:05 <shachaf> Other than to the staple, I guess. If that counts.
23:06:54 <oerjan> why did shachaf cross the road
23:07:57 <Taneb> Because he didn't expect it would hurt
23:08:42 <Fiora> stapling your thumb sounds like a pretty terrible idea
23:08:59 <Fiora> unless like, you need to turn your thumb in with an assignment or something
23:10:30 <oerjan> assignments don't need that, as a rule of thumb.
23:11:19 <Fiora> that sounds like a useful pointer
23:11:20 <shachaf> I used to think the phrase was "rule of the thumb".
23:11:37 <shachaf> I wish people would say that because it sounds good.
23:12:06 <Taneb> We have toiled for centuries under the tyrannical rule of the thumb
23:13:33 <Fiora> one by one we thumb through all the possible puns
23:13:52 <Phantom_Hoover> that's not even a pun
23:13:58 <Phantom_Hoover> none of those were puns
23:14:04 <shachaf> I'm exempt from having to make puns.
23:14:27 <Phantom_Hoover> we should talk about thumbthing else
23:14:30 <Phantom_Hoover> ok that was shit
23:14:36 <shachaf> Phantom_Hoover: thats not a pun.............
23:14:45 <Taneb> That's just a lisp
23:15:01 <Phantom_Hoover> just let me express myself, even if you don't digit
23:15:08 <Phantom_Hoover> (pronounce w/ hard g)
23:15:17 <shachaf> I don't giddit.
23:15:35 <oerjan> people with lisps can express themselves, but only with parenthetical remarks
23:17:15 <Taneb> I know a couple of people with lisps
23:18:20 <oerjan> yeah i hear it's common
23:20:08 <Phantom_Hoover> especially in spain
23:20:28 <oerjan> no, that's rain
23:21:12 <shachaf> What does the noneuclidean rain do?
23:21:36 <oerjan> hyperbolic plain
23:22:17 -!- monqy has joined.
23:53:58 -!- Taneb has quit (Quit: goodnight).
2013-01-03
00:21:01 -!- carado has quit (Ping timeout: 246 seconds).
00:26:47 -!- nooga has quit (Ping timeout: 255 seconds).
00:36:57 -!- nooga has joined.
00:38:18 -!- Vorpal has quit (Ping timeout: 276 seconds).
00:48:21 <zzo38> r5k1/1bqp2pp/1p2p1r1/3P1p2/2P5/1Q1N3n/P4PPP/R1R2B1K b - - 0 23
01:06:45 <Sgeo> I thought some spammer got in here until I saw it was zzo38
01:07:08 <oerjan> i don't think that's a valid URL
01:07:15 -!- nooga has quit (Ping timeout: 248 seconds).
01:07:27 <fizzie> Everything that glitters is not an URL.
01:07:36 <Sgeo> Spammers aren't known for always actually giving URLs
01:07:45 <Sgeo> Despite that being the sensible thing to do
01:08:14 -!- TeruFSX has quit (Ping timeout: 252 seconds).
01:11:14 <zzo38> No try it making the URL.
01:11:28 <zzo38> Tell them it is the URL.
01:11:33 <zzo38> Even if it isn't
01:13:30 <oerjan> Fiora: yo magnus is on the wikipedia frontpage :P
01:13:41 <Fiora> I saw!
01:14:13 <zzo38> How often do you check the Wikipedia frontpage?
01:14:19 <oerjan> once a day
01:14:25 <Fiora> ish, yeah
01:14:56 <oerjan> just after 0:00 UTC-ish, if i'm online then
01:16:36 <oerjan> since that is when most of the panels update
01:20:33 <oerjan> Ngô Đình Diệm sounds like the nicest guy
01:21:30 <Bike> ha
01:22:26 <Sgeo> Maybe I will go ahead and write mamb for Racket
01:36:37 <zzo38> Do you know of QR code implementation in TeX?
01:41:51 <oerjan> hm it should really be Élő rating >:)
01:42:37 <zzo38> oerjan: Should it be? I didn't know that.
01:43:09 <oerjan> the > means i'm not _entirely_ serious.
01:43:52 <oerjan> he was only 10 years old when he moved to the us, so probably didn't use the accents much
01:43:55 <zzo38> I am not _entirely_ serious either.
01:51:12 <Fiora> speaking of wikipedia, today's featured article
01:51:15 <Fiora> "He ultimately received over 386,000 more votes than the total number of registered voters."
01:53:02 <oerjan> as i said, the nicest guy
01:58:58 <Bike> also has an even more inglorious death than your average coup victim
02:03:58 <quintopia> oerjan: best quote pairing ever
02:04:35 <oerjan> quintopia: erm, what?
02:05:13 * oerjan demands context for that statement
02:06:55 -!- TeruFSX has joined.
02:07:09 <oerjan> quintopia: i have no idea what you are referring to
02:09:32 * oerjan hits quintopia with the saucepan ===\__/
02:18:12 <quintopia> the canada quotes
02:19:13 <oerjan> ah
03:33:44 -!- Phantom_Hoover has quit (Remote host closed the connection).
03:57:49 -!- DH____ has quit (Read error: Connection reset by peer).
03:58:10 -!- DHeadshot has joined.
03:58:19 -!- oerjan has quit (Quit: Good night).
03:59:17 -!- copumpkin has quit (Ping timeout: 252 seconds).
03:59:50 -!- copumpkin has joined.
04:01:19 -!- DHeadshot has quit (Read error: Connection reset by peer).
04:09:44 <kmc> ?`quote
04:09:44 <lambdabot> contrapumpkin says: like yoda, I speak now
04:09:46 <kmc> buh
04:09:49 <kmc> `quote
04:09:50 <HackEgo> 429) <zzo38> If in some day, I publish some book, that might include some of the programs I have written too, but also some other books, possibly. However I never yet publish any book.
04:11:41 <kmc> `quote
04:11:42 <HackEgo> 343) <zzo38> Fiddle. It makes a big difference, you know.
04:11:50 <kmc> @zzo38_ebooks
04:11:50 <lambdabot> Unknown command, try @list
04:17:13 -!- hagb4rd2 has quit (Read error: Connection reset by peer).
04:20:48 <FreeFull> What is (\f x -> f x x) commonly referred to as? Hoogle and Hayoo are failing
04:21:10 <quintopia> dup?
04:21:16 <quintopia> oh
04:21:21 <quintopia> you mean the lambda thing
04:21:23 <quintopia> ah
04:23:26 <FreeFull> Well, I was searching by type signature
04:28:51 <copumpkin> :t join
04:28:52 <lambdabot> Monad m => m (m a) -> m a
04:31:22 -!- WeThePeople has quit (Quit: Leaving).
04:42:23 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
04:51:44 -!- DHeadshot has joined.
05:00:16 -!- DHeadshot has quit (Read error: Connection reset by peer).
05:00:21 -!- DH____ has joined.
05:05:04 -!- DH____ has quit (Read error: Connection reset by peer).
05:05:09 -!- DHeadshot has joined.
05:06:55 <quintopia> *sigh*
05:14:22 <kmc> apparently the Galaksija microcomputer had three error messages: "WHAT?", "HOW?", and "SORRY"
05:23:06 -!- WeThePeople has joined.
05:27:05 -!- DHeadshot has quit (Read error: Connection reset by peer).
05:30:59 -!- TeruFSX has quit (Ping timeout: 255 seconds).
05:32:25 <quintopia> someone paste me the character for bottom
05:33:00 -!- DHeadshot has joined.
05:33:15 <Deewiant>
05:33:55 <quintopia> thx
05:35:05 <quintopia> Deewiant: can i get a \exists too?
05:35:46 <Deewiant> https://en.wikipedia.org/wiki/Table_of_mathematical_symbols
05:35:59 <Deewiant> I can't figure out a compose-key combo for that one
05:36:19 <quintopia> i take it back
05:36:40 <quintopia> what i need is a backwards lowercase e
05:37:17 <Deewiant> ɘ
05:37:29 <quintopia> thx
05:37:39 <Deewiant> Or ə
06:03:34 <quintopia> FreeFull: copumpkin is correct
06:04:20 <FreeFull> quintopia: What?
06:04:31 <FreeFull> join has a completely different type signature
06:04:35 <quintopia> it was called join
06:04:57 <FreeFull> > (join (*)) 3
06:04:59 <lambdabot> 9
06:05:02 <quintopia> though apparently not the same join as lambda knows
06:05:02 <FreeFull> Huh
06:05:32 <FreeFull> Is the :t and > using different joins
06:05:49 <FreeFull> Neither seems to be in the standard Prelude
06:12:09 -!- Sgeo_ has joined.
06:12:38 -!- Sgeo has quit (Ping timeout: 245 seconds).
06:17:32 <Sgeo_> How did I ever live without internal defines? Besides when I was in languages where there are local variables, I mean
06:17:42 <Sgeo_> Erm, bad phrasing
06:17:46 <coppro> haha
06:17:56 <Sgeo_> But Clojure is all "use let"y, meaning more nesting
06:17:58 <Sgeo_> For example
06:18:18 <Sgeo_> Whereas C# or Java or Python etc. etc. it ... seems simpler in that regard
06:18:51 <Sgeo_> And here is Scheme (and Racket), with allowing define forms inside function bodies that lexically scope the entire function body
06:19:04 <Sgeo_> Just as convenient as in those... non-lispy languages
06:20:03 <Bike> why does scheme use internal defines instead of just letrec?
06:20:29 <Sgeo_> I don't know about Scheme in general, but Racket converts internal defines to letrec I think
06:21:16 <Bike> yes, but why
06:21:42 <Sgeo_> It's nice syntax sugar?
06:22:01 <kmc> scheme's define is weird
06:22:09 <kmc> it's like an assignment but also not
06:22:22 <Sgeo_> Also it means you can write a function for internal use using define's () shortcut for defining a procedure
06:22:34 <kmc> yes, that's nice
06:22:47 <kmc> let doesn't support that sugar, right? no reason it couldn't, in principle
06:23:00 <Bike> as i understand define only actually works at (for?) the toplevel, and anywhere else it's just letrec
06:23:00 <kmc> (let (((f x) (* x 2))) (f 3))
06:31:44 * FreeFull prefers haskell for his functional programming nowadays
06:46:37 <Sgeo_> Even if let had that, I'd still prefer the lack of nesting given by internal defines
06:47:22 <Sgeo_> FreeFull, I want macros. And also changing code at run-time, but that last part means I should probably be wary of Racket
06:47:27 <Sgeo_> *easy macros
06:51:48 <kmc> just because Scheme and Haskell are both "functional languages" is no reason to pick only one
06:51:53 <kmc> they are very different languages
06:52:05 <kmc> i might as well say "i prefer python over scheme for my dynamically typed programming"
06:52:19 <kmc> "functional language" is never a very well defined category anyway
06:52:23 <kmc> rant rant rant
06:52:36 <Bike> kmc have you heard about this thing "structured programming" that's all the rage
06:52:52 <kmc> goto 4 lyfe
06:53:28 <Bike> people argued about goto being structured even. guess it's just something programmers do a lot
06:53:31 <coppro> kmc: syntax error, unexpected "lyfe"
06:53:33 <Sgeo_> I'm weird and want to have a preference for a single language. And instead, I am a serial monogamist language person.
06:53:57 <kmc> we have noticed
06:58:08 -!- hagb4rd has joined.
06:59:07 <kmc> "How to run computation without ever dispatching an instruction: life on the edge of the double-fault"
07:00:54 <Sgeo_> I never have any idea if kmc is quoting something or making something funny up
07:01:03 <kmc> this is from a 29C3 talk
07:01:16 <kmc> this one http://events.ccc.de/congress/2012/Fahrplan/events/5265.en.html
07:01:32 <kmc> you can download the video; i am watching it now
07:02:15 <Sgeo_> Maybe later. I hope I remember, it sounds interesting
07:02:19 <Sgeo_> I don't know much about hardware
07:03:01 <kmc> "hardware" is such an arbitrary line these days
07:03:03 <kmc> but yes
07:03:13 <kmc> there is a particular abstraction layer where it makes sense to talk about these things
07:03:27 <kmc> if you don't know much about that layer, it will be hard to follow
07:05:00 <Deewiant> FreeFull: join is in Control.Monad, and for the function instance you need Control.Monad.Instances (which is indirectly imported by lots of things)
07:10:25 <Sgeo_> kmc, I don't see a download link there :(
07:10:36 <kmc> http://events.ccc.de/congress/2012/wiki/Documentation
07:10:43 <kmc> i didn't link directly because there are various formats
07:11:12 <Sgeo_> Ah
07:11:12 <Fiora> kmc: wait, without ever dispatching an instruction?
07:11:37 <kmc> yeah :)
07:12:45 -!- WeThePeople has quit (Quit: Leaving).
07:16:06 <kmc> hax
07:16:13 <kmc> i won't spoil it but you should watch the talk :)
07:16:20 <Fiora> link?
07:16:26 <Fiora> oic
07:16:53 -!- WeThePeople has joined.
07:17:06 <Fiora> where's the download link?
07:17:51 <kmc> Sgeo_ just asked that
07:18:00 <kmc> there are various ways to get the video, listed at http://events.ccc.de/congress/2012/wiki/Documentation
07:18:09 <Fiora> oh <_> I can't read
07:18:25 <Sgeo_> A lot of the other talks sound interesting too
07:18:33 <kmc> i torrented them; i don't know which mirror is the fastest
07:19:11 <Fiora> oh god all this stuff looks so interesting @_@
07:21:08 <Fiora> wow the torrent is fast
07:21:36 <Sgeo_> The stuff that's in a language I don't understand does not seem interesting. Actually, it is, but there's about a 0% chance of me watching it.
07:22:08 <Fiora> that's true. I don't know enough german for those :<
07:22:09 <Fiora> :<
07:23:57 <Fiora> ich bedaure fast alle meine Deutsche Vokalbeln fergessen
07:25:39 <Fiora> Bike: "turing complete trapping" <-- you should watch this XD
07:26:44 <kmc> apparently before the NX bit existed on x86, PaX emulated it by exploiting the fact that there are separate TLBs for instructions and data
07:26:47 <kmc> that's really cool
07:28:04 <Fiora> Wow
07:28:36 <ion> kmc: Yeah,
07:28:39 <ion> [ 0.000000] Notice: NX (Execute Disable) protection missing in CPU!
07:28:41 <ion> [ 0.000000] NX (Execute Disable) protection: approximated by x86 segment limits
07:28:52 <kmc> that is a different emulation
07:28:58 <ion> Ah, ok
07:29:25 <kmc> the talk discusses that as well
07:29:38 <kmc> it's bad because you get only 1.5 GB address space for code and data each
07:29:50 <kmc> also because segmentation is slow on new processors because people don't use it
07:30:08 * ion scrolls up and checks out the talk
07:30:23 <kmc> ion: you have some old machine handy i see :)
07:30:38 <ion> kmc: Yeah, my puny home server that’s slowly dying.
07:31:22 <Fiora> ... traps write data to the "stack" ... you can set the "stack" wherever you want, including inside the page tables ...
07:31:24 <kmc> ion: you're running a PaX kernel?
07:31:26 <Fiora> that is. magnificent
07:32:14 <ion> kmc: Nope, i skimmed over the channel talk (including your message) a bit too quickly and missed “PaX”.
07:32:55 <kmc> ah
07:33:04 <kmc> it seems mainline linux got this emulation, then
07:33:16 <kmc> but i bet they don't do the crazy split TLB emulation
07:33:17 <ion> A direct link to torrents http://skowron.biz/29c3.rss and a direct link to the torrent http://mirror.netcologne.de/CCC/29C3/mp4-h264-HQ/29c3-5265-en-page_fault_liberation_army_h264.mp4.torrent
07:33:31 <kmc> oh nice, i forget that torrents can be distributed via RSS :)
07:33:35 <ion> kmc: I think this emulation is based on PAE.
07:33:39 <Fiora> "trap oriented programming"
07:34:10 <Bike> so is this a "watch for horror" thing or a "watch for interest" thing or... why am i even askin
07:34:13 <kmc> ion: how's that?
07:34:15 <Fiora> interest!!
07:34:16 <ion> Crap oriented programming
07:34:17 <Fiora> it's super cool
07:34:18 <kmc> watch because it's fucking cool
07:34:29 <kmc> it's mostly about *useful* crazy hacks
07:34:42 <kmc> they just throw in the "MMU as turing tarpit" part because why not
07:35:16 * Bike digs around for torrent program
07:35:27 <kmc> there are direct HTTP download links as well
07:35:33 <Fiora> wow, OllyBone's trick
07:35:34 <Bike> "Once-the.rockets/are-up..who/cares-where.they/come-down.That's N.O-T/MY-D/E.PA/R.T-ME-N/T." is it supposed to look like this..>?
07:35:42 <kmc> yes
07:35:46 <kmc> hackers
07:35:47 <kmc> german hackers
07:35:52 <Bike> ¬_¬
07:36:13 <ion> kmc: I haven’t studied the details, but apparently PAE provides an official NX flag or something. http://en.wikipedia.org/wiki/Physical_Address_Extension
07:36:38 <Bike> do i need video or can i just get the mp3s to listen to
07:36:44 <Fiora> they have slides
07:36:56 <monqy> there's mp3s too
07:36:57 <Bike> powerpoint, my nemesis.
07:36:58 <Fiora> the torrent is crazy fast, don't worry about it
07:37:09 <Bike> i was just thinking i could listen to them at work.
07:37:29 <monqy> at least there's mp3s on this http mirror i'm looking at
07:37:48 <Bike> i meant, am i going to miss anything by not getting the video.
07:38:07 <monqy> oh
07:38:33 <Fiora> ooh, it covers how they reverse engineered skype and got past its anti-debugger stuff
07:38:37 <Fiora> using this kind of stuff
07:39:11 <Bike> "en-howto_hack_the_law_mp3.mp3"
07:39:28 <kmc> ion: if you had NX bit via PAE then it wouldn't say "NX protection missing in CPU"
07:39:30 <Fiora> he hacked the law and the, the law won, he hacked the law and the, the law won
07:39:37 <kmc> ++
07:40:02 <Bike> well, i suppose i can't not start with the one about tamagotchis
07:40:06 <kmc> PAE is the one and only way to have a true NX bit on 32-bit x86
07:40:12 <Fiora> start with the paging thing XD
07:40:16 <Fiora> MMUs are fun
07:40:26 <kmc> and arguably on 64-bit, since the 64-bit page tables are an extension of the PAE ones
07:41:22 <olsner> wow, how do you use the TLB to emulate NX?
07:41:32 <ion> kmc: Hmm, good point.
07:41:33 <kmc> (but that's a core part of AMD64 architecture, not an extension)
07:41:34 <Fiora> there's separate instruction and data TLBs
07:41:43 <Sgeo_> Hmm. Racket structs are more interesting then I thought. It _almost_ makes me want to forgive them for their OO system
07:41:45 <ion> https://wiki.ubuntu.com/Security/Features#nx
07:42:53 <Fiora> oooh they're talking about memory segments
07:42:55 <ion> kmc: I (apparently mis-) interpreted from the Wikipedia page that anything with PAE support would have NX support, but it seems mine supports PAE but not NX.
07:43:18 <Bike> Sgeo_: what's wrong with the oo
07:43:55 <kmc> olsner: you mark all data pages as not present. then when there's a fault you mark it present, read from that address to get it in the TLB, and un-mark it again
07:44:24 <Fiora> "there are things that use the stack for instructinos [...] gcc can create those trampolines, because gcc is a piece of shit, sorry [laughs]"
07:44:31 <Sgeo_> Bike, single-dispatch single-inheritance class-based. Seems too ... like it's trying to act a little like Java, although it's still more flexible
07:44:43 <kmc> and this gives you an opportunity to check if the access was actually an attempt to execute data memory
07:44:52 <kmc> by checking if the instruction pointer == faulting address
07:44:58 <Sgeo_> Also, you typically use a piece of syntax to call a method
07:45:01 <Fiora> but wow, this is brilliant. using 286-style segmentation to implement NX on a modern machine
07:45:03 <Bike> Sgeo_: class-based meaning not message passing based?
07:45:20 <kmc> well modern machine has NX
07:45:27 <kmc> that's more like "pre 2005 machine"
07:45:35 <Sgeo_> Bike, I .. wasn't aware those were connected. Smalltalk is class-based and message passing
07:45:35 <Fiora> something like that yes >_<
07:45:39 <kmc> scary to say that 2005 is eight years ago :x
07:45:43 -!- sebbu2 has joined.
07:45:43 -!- sebbu2 has quit (Changing host).
07:45:43 -!- sebbu2 has joined.
07:45:48 <olsner> right, so every tlb miss (for an NX page?) ends up being a page fault? sounds expensive
07:45:50 <Fiora> it is ;-; I feel old
07:45:54 <Bike> Sgeo_: well i don't know what you mean by "class-based". not prototype-based?
07:46:03 <Sgeo_> Bike, yes. Not prototype-based
07:46:18 <Bike> mm
07:46:26 <Bike> has anyone written a more interesting one?
07:46:36 <Sgeo_> For Racket, or in general?
07:46:45 <Bike> racket
07:47:07 <kmc> olsner: yes i think so
07:47:09 <Sgeo_> I think so, but it's part of some larger thing
07:47:13 <olsner> fwiw, the page fault handler's error code indicates whether the fault was an instruction fetch so you don't have to compare the fault address
07:47:19 <kmc> that's useful
07:47:34 <Sgeo_> It doesn't seem well documented
07:48:14 <Sgeo_> The page on the Racket site says to go to the author's home page. The author's home page says that the page is outdated and to go to the PLT Scheme (Racket's old name) site
07:48:23 <Bike> scheme's had TELOS and whatever in the past, some of those have probably been ported to racket
07:48:36 <olsner> comparing would be "hard" to get right, since you might get a fault for a byte in the middle of the instruction
07:48:47 <Sgeo_> What good is it if it's not well documented
07:48:53 -!- sebbu has quit (Ping timeout: 245 seconds).
07:48:55 <kmc> yeah that's true
07:49:21 <kmc> i would be interested to know what the performance penalty is
07:49:25 <kmc> let's see if they say
07:49:44 <olsner> https://pax.grsecurity.net/docs/pageexec.old.txt appears to describe the trick
07:49:48 * Sgeo_ can't wait to watch this talk
07:50:51 <Sgeo_> Also, I don't know if Swindle's basic syntax extensions are needed to use the OO stuff well
07:50:56 <Sgeo_> I'd rather not
07:51:07 <kmc> soft-filled TLBs are so much nicer, but apparently they always perform terribly
07:51:08 <Sgeo_> (have to use modified define syntax, I mean)
07:51:10 <Bike> so uh, which of these talks are you talking about
07:51:14 <Bike> these titles are not terribly helpful
07:51:26 * olsner just thought "they should make this into a flag in the page table"
07:51:28 <Sgeo_> Bike, presumably page fault liberation army
07:51:39 <Bike> oh, that's not on this page...
07:52:01 <Sgeo_> How much of this will be understandable to someone not very familiar with memory ... mapping ... wahtever this is
07:52:10 <kmc> PPC has a strange compromise solution where there is a real TLB and then a hash table in main memory extending the TLB, and then that's soft-filled
07:52:28 <Bike> oh, it's in the mp4s but not the mp3s. grand.
07:52:30 <Fiora> ohhhh, thta's the reason they didn't like using segments for this, because of the overhead
07:52:36 <Fiora> I knew about the overhead, I was wondering when that would come up
07:52:41 <kmc> Sgeo_: probably not very
07:52:42 <Fiora> since modern intel chips do not make segments fast at all <_<;
07:52:45 <Sgeo_> :(
07:52:48 <Fiora> I think it's like 1 extra cycle for every memory load
07:52:49 <kmc> they breeze through an intro
07:53:01 <Sgeo_> Ok, ok, I'll try then
07:53:19 <Fiora> Sgeo_: um... it'd probably be good if you knew like how pages work
07:53:20 <kmc> maybe read this http://www.cs.cmu.edu/~410/doc/segments/segments.html
07:53:24 <Fiora> like at the level of a college cs class
07:53:39 <kmc> just watch the talk and ask questions here if you're confused
07:53:48 <kmc> :D
07:53:53 <Fiora> that works!
07:54:07 <kmc> well not always
07:54:30 <kmc> it's possible to fail to understand something in such a way that you can't formulate a meaningful question about it
07:54:38 <kmc> that's always really frustrating on both ends
07:54:50 * Sgeo_ reads
07:54:53 <kmc> it might be hard to understand paging without knowing what it's typically used for
07:54:57 <Sgeo_> in 8 minutes I'll be able to watch
07:55:45 <kmc> the high level overview is that x86 translates virtual addresses (what normal programs use) first to linear addresses and then to physical addresses
07:55:47 <Sgeo_> Also, I have taken an OS class, although we didn't learn x86 specific stuff really
07:56:07 <Fiora> this assumes like the high level paging knowledge, not the x86-specific knowledge, I think
07:56:10 <Sgeo_> And our homework assignments were on a CPU simulator of sorts
07:56:15 <Fiora> like, the presentation is basically -about- all the x86 stuff they don't teach you
07:56:22 <kmc> virtual->linear is accomplished by segmentation, which that link discusses... basically you add a constant "where code starts" or "where data starts" value to the address, and check it against a maximum size
07:57:08 <Sgeo_> Ok
07:57:09 <kmc> linear->physical is accomplished by paging, which allows every 4 kB of linear memory to be placed somewhere completely different in physical memory
07:57:27 * Sgeo_ vaguely remembers that sort of thing
07:57:39 <Sgeo_> well, hmm.
07:57:46 <kmc> so paging is far more flexible, and most processors have only paging, so most OSes use only paging
07:57:55 <kmc> they configure x86 segmentation in a vestigial mode which that document also describes
07:58:10 <kmc> but segmentation is still useful for particular things, some of which this talk discusses
07:58:51 <kmc> paging is used to implement all kinds of goodies, like shared memory, memory-mapped files, swap, copy-on-write fork(), sharing of read-only code between different processes, etc
07:59:23 <Fiora> .... oh *wow*. that is magnificently evil my gosh
07:59:48 <Fiora> they set the page to be okay, load it into the dtlb by accessing it, and then right after, set it to be not-okay
07:59:56 <Fiora> so the dtlb is lied to about the page's actual state
08:00:02 <Fiora> and then when the itlb fetches it later, it faults
08:00:43 <Fiora> thus making the itlb and dtlb disagree even though they weren't supposed to
08:00:58 <Sgeo_> Fiora, will that be understandable to me when I see it in the presentation?
08:00:59 <kmc> (by "most processors have only paging" I meant most architectures... x86 always has segmentation as well, even in modern chips)
08:01:09 <kmc> Sgeo_: you need to know what the TLB is as well, which they kind of gloss over
08:01:16 <kmc> but it's just a cache for the page tables
08:01:34 <Fiora> yeah, the TLB is just a cache for page table info so the cpu doesn't ave to constantly fetch it
08:01:34 <kmc> it would be really inefficient if every memory access required several other memory accesses to read these page tables out of memory
08:01:45 <Sgeo_> Ok
08:01:48 <Fiora> the itlb is for instructions, dtlb for data, there's two separtae ones
08:01:58 <kmc> the key is that (on x86 anyway) you can change the page table out from under the CPU, and it doesn't automatically update this cache
08:02:00 <Sgeo_> I feel so ignorant :(
08:02:09 <Fiora> your'
08:02:14 <Fiora> you're not :<
08:02:24 <kmc> when you change page tables you're supposed to tell the CPU so it can flush the TLB
08:02:32 <kmc> but this is a cool trick you can play if you don't
08:02:53 <Fiora> basically you can set it up so that when loading data pages, the CPU thinks the page is fine, but when loading the /same page/ as an instruction page, it page faults.
08:03:04 <Fiora> which stops you from executing a data page.
08:03:05 <kmc> (that TLB flush is also why switching address spaces is expensive, which is why most OSes put the kernel and userspace in the same address space, which in turn leads to all manner of security problems)
08:03:47 <kmc> fwiw I find this talk a lot easier to watch at slightly higher than normal speed
08:03:53 <kmc> most talks, really
08:04:05 <zzo38> But it is useful to execute data pages!
08:04:10 <kmc> if a speaker goes "uh"ing and handwaving for long enough, i lose attention span and my mind wanders and then 10 seconds later i have to rewind
08:04:21 <kmc> zzo38: yes, it's particularly useful to attackers
08:04:53 <zzo38> kmc: Not what I meant though; I meant for programming.
08:05:32 <kmc> zzo38: you might like the talk about the Galaksija computer
08:05:33 <zzo38> There are better ways to secure a system.
08:05:42 <Fiora> zzo38: you can execute data pages even on an NX system, I think
08:05:48 <Fiora> you just have to explicitly ask the OS for it
08:05:57 <zzo38> O, OK, then.
08:06:10 <kmc> sure, the OS can enforce a policy against it, or not
08:06:13 <kmc> Linux typically does not
08:06:29 <kmc> ROP payloads often end with calling mprotect() to set some page RWX and then you win.
08:06:54 <kmc> i think PaX has a mode to forbid that, though
08:07:09 <Fiora> I guess then you'd have to whitelist programs that use JITs?
08:07:25 <kmc> yeah, it can store per-executable exceptions in an ELF header
08:07:31 <Sgeo_> Watching talk now
08:07:38 <kmc> or your JIT can be carefully coded so that no page is writable and executable at the same time
08:07:57 <Fiora> wait, but can't an exploit still work with that?
08:08:00 <kmc> mprotect can drop W and add X in the same call
08:08:09 <Fiora> Yeah, I thought that was the way people did it
08:08:42 <Fiora> or am I missing something >_<
08:08:54 <Fiora> like is there a reason that an exploit can't do that too?
08:09:15 <kmc> the exploit is not running arbitrary code yet
08:09:51 <Fiora> ooooh, I see
08:10:16 <Fiora> yeah, I always thought jits were supposed to do that (never have W and X on at the same time)
08:10:18 <kmc> say you have found a bug such that you can write arbitrary content to certain parts of memory, and then redirect the instruction pointer to wherever you like
08:10:37 <kmc> a classic stack smashing exploit is an example of this
08:11:05 <kmc> W^X policy prevents the straightforward attack where you write your shellcode and then jump to it
08:11:53 <Fiora> makes sense
08:11:59 <kmc> there are of course many other ways to exploit such a bug, and W^X does not try to stop them all
08:12:45 <Fiora> ah so here's the code I was thinking of... I guess it does the W^X thing
08:12:45 <kmc> e.g. JIT spraying, where the shellcode is composed of bytes that the JIT intentionally wrote into a code page
08:13:05 <Fiora> c->lumMmxextFilterCode = mmap(NULL, c->lumMmxextFilterCodeSize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
08:13:08 <Fiora> init_hscaler_mmxext(dstW, c->lumXInc, c->lumMmxextFilterCode, c->hLumFilter, c->hLumFilterPos, 8);
08:13:11 <Fiora> mprotect(c->lumMmxextFilterCode, c->lumMmxextFilterCodeSize, PROT_EXEC | PROT_READ);
08:13:17 <kmc> but yeah, there would be some additional benefit to a policy of "no W page can ever become X", and it would break JITs for sure
08:13:17 <Fiora> map R|W, init the code, map R|X
08:13:24 <kmc> and i don't know if PaX implements that one
08:13:54 <kmc> which JIT is that?
08:14:11 <Fiora> that's a really simple example since I didn't want to dig into a really fancy actual JIT
08:14:27 <Sgeo_> I keep pausing to look stuff up
08:14:28 <Fiora> swscale has the ability to runtime-generate an mmx image rescaling algorithm
08:14:48 <Fiora> which to me is just O_____O
08:14:52 <kmc> buhhhh
08:15:05 <Sgeo_> This is really making me wish I took CS
08:15:13 <Sgeo_> Would CS talk about this stuff?
08:15:13 <Fiora> (generate based on the input and output resolutions and number of taps etc I think?)
08:15:19 <Sgeo_> Or still just turing machines and the like?
08:15:42 <Bike> what is "CS" in this context
08:15:45 <kmc> are you talking about some specific course or just a CS program in general?
08:15:56 <Sgeo_> CS program in general
08:15:57 <Fiora> um.... my program had some low level classes that covered things like paging and memory (basics) and some high level things like algorithms and natural deduction and complexity
08:16:06 <kmc> most university CS programs offer a variety of classes from theoretical to practical
08:16:10 <Bike> i would think any cs program worth its salt goes over these things in addition to algorithmics (jazzarithmics)
08:16:18 <Fiora> there were some electives for really icky low level things like filesystems and networks and OSs
08:16:19 <kmc> any decent one will have some kind of intro systems course which covers paging and what-not
08:16:22 <Bike> whether you remember it or not is another matter
08:16:24 <Fiora> and by icky I mean wonderful
08:16:26 <kmc> it may or may not be required
08:16:34 <Sgeo_> I hate my college
08:16:49 <Bike> so, you weren't a CS major?
08:16:58 <Sgeo_> "Computer Programming/Information Systems"
08:17:02 <kmc> in our intro systems class we implemented some OS-like things in Linux userspace, trapping e.g. SIGALRM for a scheduler interrupt and SIGSEGV for page fault handler
08:17:04 <Bike> ouch
08:17:05 <kmc> it was pretty weird
08:17:07 <kmc> but fun
08:17:19 <kmc> then the advanced systems class involved making changes to an actual Linux kernel
08:17:29 <kmc> a ton of code reading, very little code writing
08:17:47 <kmc> kind of crazy to do an assignment where you spend 20 hours and then turn in 20 lines of code
08:17:57 <olsner> that sounds actually useful
08:17:59 <Sgeo_> kmc, grad or undergrad?
08:18:04 <Sgeo_> I feel betrayed
08:18:09 <Bike> as far as i can tell from fiora's mailing list stalking that's how most actual linux patches work
08:18:11 <kmc> undergrad elective, with some grad students in the class as well
08:18:19 <Sgeo_> And there's no way I could get into a grad CS program, is there
08:18:20 <Sgeo_> :(
08:18:22 <kmc> http://pdos.csail.mit.edu/6.828/2012/ is a very cool upper level OS class at MIT
08:18:30 <kmc> the labs are online
08:18:47 <kmc> you need to be pretty comfortable with C to do this class
08:18:49 <Bike> Sgeo_: just tell them you hang out with lens developers. if they don't know what that means recite some type signatures
08:19:06 <kmc> but maybe you can learn the OS-specific stuff as you go
08:19:56 <zzo38> I want to make the computer which includes security by simplifying instead of by overcomplicating things.
08:22:02 <olsner> neat that they use git to hand in the lab assignments
08:22:47 <kmc> yes, it is nice
08:23:08 <kmc> you can merge the TA handout for the next lab with your solution to the previous one
08:23:19 <kmc> it also means more students are exposed to Git
08:24:36 <kmc> it's too easy to graduate knowing all kinds of fancy CS stuff but without knowing the basic tools a software engineer needs
08:24:45 <Fiora> I think we used svn in a few classes
08:24:46 <kmc> in some sense it's not their job to teach those things to you
08:24:49 <Bike> no kidding :/
08:25:05 <kmc> but even nudging people in the right direction is a win
08:25:11 <Bike> "get them using source control" is like the main thing i've heard suggested for CS programs, now that i think about it
08:25:13 <kmc> it's terrifying how many programmers don't use version control at all
08:25:19 <Bike> it's kind of hard to disagree with...
08:26:02 <kmc> to me CVS and SVN are almost totally different in purpose from Git, Darcs, etc
08:26:12 <Bike> oh yeah?
08:26:23 <kmc> the former are useful for collaborating with others, but not much else
08:26:32 <kmc> the latter are pervasive tools that help with every part of workflow
08:27:01 <Sgeo_> I tried to get us to use version control on Senior Project
08:27:03 <kmc> collaboration but also debugging, testing, etc
08:27:12 <Bike> mm
08:27:20 <Sgeo_> But the server move did not go smoothly for the .hg stuff, so I sort of just gave up
08:27:29 <Bike> i'm bad at git but git bisect seems pretty incredibly useful
08:27:37 <Sgeo_> git bisect?
08:27:43 <kmc> with Git you can easily create an experimental branch fro some crazy idea, or make 5 commits as you figure something out and then squash them together
08:27:51 <Sgeo_> Oh woah
08:27:57 <Bike> "git-bisect - Find by binary search the change that introduced a bug"
08:27:57 <kmc> doing these things with svn sounds like a huge pain
08:28:00 <Sgeo_> (at git bisect)
08:28:10 <Fiora> oh no did I start a git vs svn flamewar
08:28:11 <kmc> maybe it's cause i never learned svn very well
08:28:24 <kmc> no i don't think anyone disagrees that git is better ;P
08:28:29 <Bike> Fiora: just kmc ranting, which is fine with me for one
08:28:41 <kmc> i'm just explaining why I think of Git as a different kind of tool from SVN
08:28:55 <Fiora> Bike: that works XD
08:29:01 <kmc> troll mode: using SVN is no better than keeping your code in Dropbox
08:29:03 <Deewiant> There's an svn-bisect as well; the checkouts tend to take longer than the bug-checking
08:29:06 <kmc> sure, it's better than nothing
08:29:08 <Bike> i don't know anything about svn except that only old projects seem to use it and it's ugly as hell, so
08:34:50 -!- epicmonkey has joined.
08:36:11 -!- Bike has quit (Quit: leaving).
08:36:23 <Sgeo_> How well do I need to know traps
08:36:36 <Sgeo_> Do I need to know every trap that could be .... called or triggered or whatever
08:36:39 <Fiora> this thing explains allabout traps, so um, it should be okay
08:36:40 <kmc> no
08:36:56 <kmc> the main one is page faults
08:37:49 <kmc> if you try to access a virtual address that isn't mapped to any physical address, or is mapped with permissions that conflict with the type of access you want, there's a trap / fault / exception / whatever, and the OS gets to run
08:38:06 <kmc> it might terminate your process, or it might do something like load a page in from swap, and your process is none the wiser
08:38:17 <Fiora> wow. the fault chaining using the task switch thing @___@
08:41:50 <Fiora> oooh. they implement a turing tarpit with decrement-branch-if-negative
08:41:56 <kmc> yes
08:41:59 <kmc> see, this is totally on topic :)
08:42:18 <Jafet> It was already on topic with linux
08:42:58 <kmc> it amazes me that any provider of x86 implementations (including virtual) manages to get all of the byzantine system-level CPU behavior correct, or that any two implementations agree
08:43:24 <kmc> http://blog.xen.org/index.php/2012/06/13/the-intel-sysret-privilege-escalation/ is a notable case where Intel and AMD did not agree
08:43:42 <Jafet> For every byzantine instruction, there is a system somewhere that uses it
08:44:55 -!- asiekierka has quit (Excess Flood).
08:45:19 -!- asiekierka has joined.
08:46:00 <Fiora> "I wanted to implement a game of life that operated on your VGA framebuffer without using any instructions"
08:46:14 <Jafet> Has there been only one bug in the intel hypervisor?
08:46:19 <Jafet> I thought there were more
08:47:23 <Fiora> "cause KVM to kernel panic the host" XD
08:48:01 <Jafet> @google conway life stencil buffer
08:48:02 <lambdabot> http://www.blitzbasic.com/Community/posts.php?topic=53803
08:48:02 <lambdabot> Title: Stencil buffers are for life (not just xmas!)
08:48:37 <Deewiant> https://github.com/munificent/vigil - Vigil, a very safe programming language
08:49:03 <kmc> Jafet: that's cool
08:49:24 <Jafet> "Vigil is very similar to Python"
08:49:33 <kmc> http://www710.univ-lyon1.fr/~jciehl/Public/OpenGL_PG/ch15.html#id40152
08:50:20 <Fiora> huh, 64-bit kills most of this. makes sense though
08:51:08 <Fiora> that was an incredibly cool talk, thanks kmc
08:51:32 <kmc> :)
08:52:28 <Sgeo_> I'm still only 12 minutes in
09:04:53 <Sgeo_> I guess if I'm going to be a Racketeer, I should read some of Oleg's thoughts on Scheme
09:05:39 <Sgeo_> "We shall see that our code looks pretty much like the above, only with more parentheses."
09:05:53 <Sgeo_> Even Oleg is lolparentheses?
09:16:35 -!- Sanky has quit (Read error: Operation timed out).
09:19:07 -!- WeThePeople has quit (Quit: Leaving).
09:38:45 -!- zzo38 has quit (Remote host closed the connection).
09:50:26 -!- zorteg has joined.
09:56:46 -!- nooga has joined.
09:58:47 -!- epicmonkey has quit (Ping timeout: 272 seconds).
10:41:11 -!- Phantom_Hoover has joined.
10:47:26 -!- zorteg has quit (Quit: Leaving.).
10:59:11 -!- Gracenotes has quit (Ping timeout: 245 seconds).
11:00:15 -!- Gracenotes has joined.
11:01:53 -!- Taneb has joined.
11:06:09 -!- Gracenotes has quit (Ping timeout: 244 seconds).
11:07:25 -!- Gracenotes has joined.
11:24:10 -!- mig22_ has joined.
11:25:07 -!- epicmonkey has joined.
11:25:35 -!- mig22 has quit (Ping timeout: 255 seconds).
11:25:36 -!- mig22_ has changed nick to mig22.
11:27:00 -!- ais523 has joined.
11:51:54 <nooga> uh
11:52:17 <nooga> i'm not banned
11:54:00 -!- Gracenotes has quit (Ping timeout: 265 seconds).
11:55:11 -!- Gracenotes has joined.
11:59:00 <oklopol> outrage
12:04:55 -!- Gracenotes has quit (Ping timeout: 240 seconds).
12:04:55 <Sgeo_> Maybe I should play with a mainframe emulator at some point
12:05:48 -!- Gracenotes has joined.
12:07:20 -!- Taneb has quit (Quit: Page closed).
12:09:26 -!- Tod-Autojoined2 has changed nick to TodPunk.
12:18:16 <nooga> Sgeo_: this one is quite entertaining: http://www.bernhard-baehr.de/pdp8e/resources/pdp8e_simulator_cocoa_preview_screenshot.jpg
12:19:14 <Sgeo_> woah
12:21:54 <nooga> programming that is horrible
12:22:00 <nooga> octal everywhere
12:30:32 -!- monqy has quit (Quit: hello).
12:42:16 -!- Taneb has joined.
12:57:31 -!- Nisstyre-laptop has quit (Read error: Operation timed out).
13:19:11 <Sgeo_> I think Guile's documentation is a better way to learn syntax-rules and syntax-case
14:08:02 -!- ais523_ has joined.
14:08:05 -!- ais523 has quit (Disconnected by services).
14:08:08 -!- ais523_ has changed nick to ais523.
14:17:28 -!- Phantom_Hoover has quit (Remote host closed the connection).
14:20:14 -!- boily has joined.
14:37:46 <Sgeo_> kmc, oh hey, Swindle does that thing with let
14:38:12 <Sgeo_> => (let ([((f x) y) (+ x y)]) ((f 1) 2))
14:38:13 <Sgeo_> 3
14:39:53 -!- Phantom_Hoover has joined.
14:50:20 -!- epicmonkey has quit (Remote host closed the connection).
14:50:43 -!- epicmonkey has joined.
14:50:45 -!- epicmonkey has quit (Remote host closed the connection).
14:51:03 -!- epicmonkey has joined.
14:54:27 <nooga> I'm trying to think about implementing a small language for 6502 processor with 64kB RAM
14:54:42 <nooga> not Forth, though
14:54:52 <fizzie> I suggest C++.
14:54:54 <nortti> nooga: what kind of language?
14:55:47 <nooga> something small and relatively expressive
14:57:06 <nooga> something lispy could be cool
14:59:55 <nooga> I've got C cross-compiler
15:00:15 <nooga> but I wanted something self hosted
15:03:34 <nooga> any ideas? :f
15:06:10 <Taneb> Something like Scheme?
15:06:24 <oklopol> how about c++
15:13:03 <c00kiemon5ter> try ada :-P
15:13:15 -!- Sanky has joined.
15:21:05 <nooga> yup
15:21:12 <nooga> C++ and ada are perfect
15:21:45 <nooga> i think i'll make something between C++ and Ada and throw some bits of perl into this
15:21:58 <nooga> with java runtime
15:23:21 -!- mekeor has joined.
15:34:20 -!- copumpkin has joined.
15:39:52 -!- ais523 has quit (Read error: Connection reset by peer).
15:40:13 -!- ais523 has joined.
15:43:08 <Taneb> The 21st century so far has been a weird thing to grow up in
15:43:47 <shachaf> Aren't we into the 22nd century by now?
15:44:12 <Taneb> Not for a while
15:44:50 <shachaf> Hmm, the 21st century started after less than a decade.
15:44:58 <shachaf> And we've had more than a decade since then.
15:51:52 <Taneb> Nah, it took a century for the 21st century to start, after the 19th
15:52:17 <shachaf> Uh, the world hasn't been *around* for a century.
15:52:39 <Taneb> That's just what they want you to think, shachaf
15:52:46 <Taneb> The world has been around for 6000 years!
15:54:41 <shachaf> More like 6000 DAYS.
16:14:04 -!- lightquake has quit (Read error: Operation timed out).
16:14:14 -!- jiella has joined.
16:14:48 -!- mekeor has quit (Remote host closed the connection).
16:16:33 -!- WeThePeople has joined.
16:17:58 -!- lightquake has joined.
16:18:37 <c00kiemon5ter> i believe we are all part of the subconsciousness of a cookie being baked in an oven running on netbsd programmed with something between C++ and Ada including some bits of Perl and COBOL - an elegant, flexible and well-defined system where asking for the time is undefined behavior.
16:19:16 <boily> I'm allergic to COBOL chips. can I have some without?
16:25:54 <c00kiemon5ter> maybe bioly exists in the subconscious memory subsystem where COBOL is not allowed to read or write
16:31:20 <boily> meaning my self exists in a recursive collective subconscience?
16:31:47 * boily pokes himself to test his tangibility
16:31:51 <ais523> boily: oh, that much is /obvious/
16:32:56 <boily> ais523: indeed, you are imagining me.
16:33:10 -!- WeThePeople has quit (Quit: Leaving).
16:34:50 -!- ais523 has left ("someone is going to mention Feather, I know it").
16:35:01 <Phantom_Hoover> so guys
16:35:06 <Phantom_Hoover> eodermdrome is pretty great
16:36:34 <Taneb> Phantom_Hoover, where are you going with this
16:42:09 -!- WeThePeople has joined.
16:49:30 -!- atriq has joined.
16:49:54 -!- Taneb has quit (Ping timeout: 240 seconds).
16:52:18 -!- atriq has changed nick to Taneb.
17:00:09 -!- Taneb has quit (Ping timeout: 260 seconds).
17:05:04 -!- Taneb has joined.
17:05:44 -!- Taneb has quit (Client Quit).
17:27:48 -!- jiella has quit (Ping timeout: 272 seconds).
17:43:20 -!- AnotherTest has joined.
17:43:23 -!- AnotherTest has left.
17:43:26 -!- AnotherTest has joined.
17:43:37 -!- Bike has joined.
17:50:11 -!- zzo38 has joined.
17:51:59 -!- copumpkin has quit (Ping timeout: 252 seconds).
17:52:32 -!- copumpkin has joined.
17:58:25 -!- WeThePeople has quit (Quit: Leaving).
18:02:08 <elliott> fizzie: Do you know anything about Borland Turbo C?
18:02:11 <elliott> Specifically do you have a copy.
18:02:14 -!- mig22 has quit (Ping timeout: 240 seconds).
18:03:30 <shachaf> elliott: zomg
18:03:33 <shachaf> I used that once!
18:03:45 <shachaf> #include <conio.h>
18:04:24 <fizzie> I should have a copy of two point something (2.01) somewhere; I think it was a free download for a while? (I also have a copy of Borland C++ 4.52 that came with a magazine, and maybe 5.0 too.)
18:04:27 * elliott has written a "port" of conio.h to curses.
18:04:40 <elliott> fizzie: Do you feel like helping me prove someone wrong?
18:04:57 <Deewiant> elliott: http://www.retroarchive.org/dos/lang/index.html
18:05:13 <elliott> Deewiant: Um, that is like 10x less authentic than asking fizzie to do it.
18:05:27 <Deewiant> s/authentic/work/
18:05:40 <elliott> same thing
18:05:55 <fizzie> My copy, if I could locate it, would very likely be that exactly same zip file.
18:06:05 <elliott> But what colour would the bits be?
18:06:07 <elliott> fizzie-coloured.
18:07:35 <elliott> fizzie: Also you probably have a more readily accessible DOS than I do!
18:08:15 <fizzie> What do you need proven wrong, though?
18:08:27 <shachaf> If you use dosbox, make sure you let kmc prepare your archive.
18:08:35 <shachaf> @arrrr chive
18:08:35 <lambdabot> Swab the deck!
18:08:51 <kmc> how similar are borland and watcom compilers
18:09:15 <elliott> fizzie: How random(-n) behaves
18:09:22 <shachaf> Watcom? don't they make tatblets?
18:09:28 <elliott> cf. https://github.com/rwbarton/crawl-1.1/commit/2c69471009a26d48fe02f22adf3c650d9afbb4ed
18:09:38 <fizzie> Watcom C uses DOS4GW.
18:09:48 <shachaf> Is rwbarton/crawl similar to monqys-crawl?
18:09:48 <fizzie> I think Borland had a different DOS extender.
18:10:58 <elliott> The documentation -- http://www.ousob.com/ng/borcpp/ng4eef8.php -- isn't really specific.
18:12:26 <elliott> Deewiant: I bet you know!!
18:12:50 <shachaf> i love random number generators
18:12:52 <shachaf> they are so easy
18:13:56 <Deewiant> #define random(num) (rand() % (num))
18:14:03 <elliott> I was right.
18:14:07 <Deewiant> int _Cdecl rand (void);
18:14:28 <elliott> Um, maybe it has different semantics for %?
18:14:34 <zzo38> (rand() % (num)) doesn't seem a very good way to me.
18:15:00 <Deewiant> #define RAND_MAX 0x7FFF
18:15:06 <Bike> doesn't it give you a bad distribution if rand_max doesn't divide num
18:15:12 <zzo38> Since it might make some numbers more likely even if rand() is uniform
18:16:05 <shachaf> Bike: Is that how Ubuntu got so messed up?
18:16:14 <zzo38> (I have written a function in TeXnicard to work around this problem, although I don't know if there is a better way?)
18:16:28 -!- WeThePeople has joined.
18:17:27 <elliott> Deewiant: (Which version is that from, by the way?)
18:17:40 <Deewiant> elliott: The zip I linked
18:17:54 <elliott> Well, there's two Borland Turbo C/C++s there.
18:17:57 <elliott> (This code is very "C/C++".)
18:18:00 <Deewiant> The C.
18:18:03 <zzo38> For example if it is 2 bits then you modulo by 3, then it will be twice as likely 0
18:18:20 <elliott> Deewiant: I'll check both, thanks.
18:18:21 <Deewiant> elliott: It seems to run in dosbox, give me some test code for % if you want.
18:19:01 <fizzie> It seems to be returning positive numbers. :/
18:19:03 <elliott> printf("%d %d %d", random(-2), random(-2), random(-2)), I guess
18:19:19 <elliott> vs. um, random(RAND_MAX) % (-2) I guess.
18:19:22 <Bike> shachaf: Unity doesn't divide anything, no
18:21:06 <fizzie> https://dl.dropbox.com/u/113389132/Misc/20130103-tc_000.png => https://dl.dropbox.com/u/113389132/Misc/20130103-dosbox_000.png
18:21:50 <shachaf> You forgot to #include conio.h
18:21:53 <shachaf> And clrscr();
18:22:24 -!- WeThePeople has quit (Ping timeout: 260 seconds).
18:22:26 <fizzie> And a getch() at the end, I suppose.
18:22:33 <Deewiant> fizzie: Does tcc.exe work for you? "tcc asdf.c" produces "Undefined symbol '_main 'in module C0S" here.
18:23:07 <fizzie> Deewiant: Yeah, same here. I just went with the TUI; it's "Compile/Make EXE file" worked.
18:23:53 <Deewiant> fizzie: DOS newlines helped.
18:24:14 <fizzie> Deewiant: Ah, right; I probably had that problem too.
18:24:26 <Deewiant> random(-2) only produces 0 and 1, it seems.
18:24:36 -!- WeThePeople has joined.
18:24:55 <elliott> Interesting.
18:26:38 <elliott> So random(-n) is just random(n), I guess.
18:26:57 <elliott> As opposed to rwbarton's -random(n).
18:28:50 <fizzie> It seems to have the sort of % that the sign of the result is always the sign of the left argument. (It produces 2 -2 2 -2 as the output of printf("%d %d %d %d", 12 % 5, (-12) % 5, 12 % (-5), (-12) % (-5).)
18:29:16 <elliott> Well, OK, I really wanted it compared with random() % (-2) on a modern Unix or whatever.
18:29:36 -!- HackEgo has quit (Remote host closed the connection).
18:29:38 <elliott> Hmm.
18:29:54 <fizzie> I think that was me. :\
18:30:08 <fizzie> [20:29:19] <fizzie> `interp c printf("%d %d %d %d", 12 % 5, (-12) % 5, 12 % (-5), (-12) % (-5));
18:30:11 <fizzie> [20:29:36] -!- HackEgo [codu@codu.org] has quit [Remote host closed the connection]
18:30:41 <elliott> Pro tip: !c
18:31:42 <fizzie> I haven't been following THE UNIFICATION.
18:31:44 <fizzie> [20:31:08] <fizzie> ,cc for (int i = 0; i < 10; i++) printf("%ld ", random() % (-100)); /* this is a modern Unix */
18:31:47 <fizzie> [20:31:10] <candide> fizzie: 83 86 77 15 93 35 86 92 49 21
18:31:54 <fizzie> It seems to work very much the same way.
18:32:32 <elliott> Right,
18:32:32 <Deewiant> random() returns a long, though; maybe % works differently for int and long!
18:32:57 <elliott> So I wonder how this results in the bug itself and whether it really is present in the original.
18:35:44 <fizzie> In that code you pasted, though, the function is int random2(unsigned int rmax) and random2(-2) with the previous version does sound likely to give quite large numbers.
18:37:09 <elliott> Right.
18:37:12 <elliott> So I guess the fix is just
18:37:21 <elliott> if ((int)rmax < 0) return random() % -(int)rmax;
18:37:43 <elliott> I think this might mean -2 weapons are just as good as +2 weapons, which is... something.
18:38:21 <Deewiant> Seems to me like the right fix would be to make it take a signed int. :-P
18:38:46 <elliott> Deewiant: Have you *seen* this code?
18:39:04 <Deewiant> I took a quick browse, yes.
18:39:16 <Deewiant> It's certainly got a lot of comments.
18:39:46 -!- WeThePeople has quit (Quit: Leaving).
18:39:59 <elliott> https://raw.github.com/rwbarton/crawl-1.1/master/source.txt is enlightening.
18:40:04 <elliott> Some of my plans for the near future:
18:40:05 <elliott> [...]
18:40:08 <elliott> Replace those mons_thing and item_thing variables with structs - if anyone knows what a struct is and how to use it, please tell me;
18:40:57 <Deewiant> What is that, the oldest version of crawl you could find or something?
18:41:25 <Bike> what...
18:41:31 <elliott> Deewiant: It's the oldest version of Crawl that got a public source release.
18:41:36 <elliott> The (few) older versions are just DOS binaries.
18:41:42 <Deewiant> Right.
18:41:56 <Deewiant> And why is anything being done with it?
18:42:00 <Bike> "pointers, because I just didn't (and still don't really) understand what they're supposed to be so useful for"
18:42:13 <elliott> Deewiant: I wanted to see what it was like and didn't know about the DOS binaries.
18:42:25 <Deewiant> Okay.
18:42:36 <zzo38> Are they structs now?
18:43:16 <elliott> zzo38: In the ~16 years of development it's had since then it has figured out what classes are
18:43:49 <fizzie> Turbo C does produce buggy results -- https://dl.dropbox.com/u/113389132/Misc/20130103-tc_002.png => https://dl.dropbox.com/u/113389132/Misc/20130103-tc_001.png (now with conio.h) -- but the comment there says "// for BC", and perhaps some version has made random(num) an actual function int random(int num), in which case random2(-2) would just give (rand() % (-2)), i.e. 0 or 1.
18:43:56 <zzo38> I think in C++ a class and struct are the same, isn't it?
18:44:19 <kmc> except for the default visibility
18:44:34 <kmc> class members are private by default, structs public
18:44:46 <elliott> fizzie: You might want to try with Turbo C++ instead.
18:44:50 <elliott> Since the code is, in fact, C++.
18:44:55 <elliott> (OK, "C++")
18:45:13 <shachaf> kmc: That also extends to inheriting from a struct/class.
18:45:18 <shachaf> If you don't specify public/private.
18:45:50 <shachaf> (That's a difference that can actually affect other people, so I think of it as more important.)
18:45:59 <zzo38> Which is one of the things of C++ which doesn't make sense of its design. I don't mean the features of C++ are bad, but I do mean that they implemented all of it into C++ badly, especially by trying to make it C, which it isn't, and anyways it still isn't compatible with C, due to void* and so on.
18:47:29 <kmc> http://www.bunniestudios.com/blog/?p=898 woah apparently (some) microSD cards have a full ARM core inside
18:47:55 -!- mig22 has joined.
18:48:54 <fizzie> "A /structure/ is a class defined with the /class-key/ |struct|; its members and base classes (clause 10) are public by default (clause 11)." (C++03)
18:49:25 -!- asiekierka has quit (Excess Flood).
18:49:32 -!- asiekierka has joined.
18:57:05 <kmc> it's funny how ARM and AVR and PIC and 8051 architectures invisibly outnumber x86 by probably a factor of 100
18:57:15 <hagb4rd> <zzo38>I think in C++ a class and struct are the same, isn't it? <-- also you don't need to create instances with "new". i always wondered how it allocates memory, but it works)
18:57:33 <kmc> even an "x86 PC" has more ARM cores than x86 cores
18:58:39 -!- WeThePeople has joined.
18:58:55 <hagb4rd> zzo38: and as consquence you have no constructors in struct
18:59:47 <zzo38> Would it allocate memory like in C, then?
19:00:28 <kmc> hagb4rd: i think you are confused
19:00:37 <AnotherTest> Hm. The only difference between struct and class in C++, is that in a struct all members are public by default
19:00:45 <kmc> there is no difference between structs and classes in terms of memory allocation
19:00:48 <AnotherTest> whereas in a class, all members are private by default
19:00:56 <kmc> "class foo { public: ... }" is exactly equivalent to "struct foo { ... }"
19:01:03 <hagb4rd> okay
19:01:07 <hagb4rd> if you say so
19:01:19 <kmc> "new" is used to allocate things on the heap
19:01:33 <kmc> e.g. instances of classes
19:01:37 <hagb4rd> yep
19:01:40 <kmc> but like in C, you can also allocate these things on the stack
19:01:43 <kmc> or in global static memory
19:01:47 <hagb4rd> really?
19:01:49 <kmc> yes
19:01:50 <hagb4rd> cool
19:01:58 <kmc> class Foo {}; int main() { Foo x; ... }
19:02:16 <kmc> C++ is the only language where objects are truly first-class, rather than just references to objects
19:02:31 <elliott> are you sure "only" is true
19:02:35 <kmc> you can even pass objects by value and return them by value from functions
19:02:40 <kmc> though this is often inefficient
19:02:41 <kmc> elliott: no
19:02:43 <kmc> i lie
19:02:58 <elliott> kmc: you liar :/
19:03:06 <hagb4rd> so you use &obj to pass as reference?
19:03:18 <kmc> you would declare the parameter that way, yes
19:03:21 <kmc> when you call it, you don't use &
19:03:28 <hagb4rd> yes
19:03:35 <zzo38> kmc: And that part is different from C
19:03:57 <kmc> references are... not exactly a first-class type, but you can use them in places other than function parameters
19:04:02 <zzo38> The first part, pass objects by value and return them by value from functions, is same as C.
19:04:07 <kmc> you can have local variables that are references, or class members
19:05:48 <zzo38> You are declaring an empty structure there though; is that OK?
19:06:13 <kmc> yeah, you can have empty structures
19:06:20 <kmc> though their sizeof will be at least 1
19:07:49 <zzo38> Why should their sizeof be one instead of zero?
19:08:06 <zzo38> In C will it be zero?
19:08:33 <fizzie> In the GCC extension the size is zero.
19:08:42 <fizzie> (In C it's not legal.)
19:08:53 <fizzie> (And "G++ treats empty structures as if they had a single member of type char".)
19:08:57 <kmc> C++ guarantees that &a[1] != &a[0] or something
19:09:10 <kmc> i don't remember exactly
19:09:19 <olsner> maybe &a[0] could be NaN
19:09:23 <kmc> haha
19:09:24 <kmc> PHP style
19:09:29 <quintopia> @tell ais523 irony of all ironies: although anticipation2 depends on programs not checking twice before starting to clear a cell, it is crushed by programs who don't check twice before leaving a cell!
19:09:29 <lambdabot> Consider it noted.
19:10:42 <elliott> Deewiant: Do you happen to know where all the header files are in these Turbo C(++) distributions?
19:11:07 <Deewiant> elliott: In tc201.zip they were in disk3
19:11:15 <hagb4rd> lol
19:11:27 <elliott> -rw-rw-rw- 1 elliott users 5 Feb 27 1991 DISK3.DSK
19:11:35 * elliott suspects that doesn't contain any headers.
19:11:46 <Deewiant> UM
19:11:48 <Deewiant> Um*
19:11:57 <elliott> In fact all the DISK?.DSK files are 5 bytes.
19:12:01 <Deewiant> http://sprunge.us/GiNa
19:12:08 <elliott> Heh, the contents of DISK3.DSK is: DISK$
19:12:09 <elliott> Heh, the contents of DISK3.DSK is: DISK3
19:12:28 <elliott> Oh, that's very different from tcpp101.zip.
19:13:22 <quintopia> huh. hackego never came back.
19:14:58 <hagb4rd> ragequit?
19:15:11 -!- GreyKnight has joined.
19:15:14 <fizzie> "I'm not interpreting this C! <ragequits>"
19:15:14 <zzo38> Then what is the file for?
19:15:41 <elliott> I nominate fizzie to figure out what these tcpp101 files are.
19:15:45 <olsner> `quote
19:15:52 <elliott> - C++! Turbo C++ offers you the full power of C++ programming,
19:15:52 <elliott> implementing the entire C++ 2.0 language as defined by the AT&T
19:15:52 <elliott> specification. To help you get started, we're also including
19:15:52 <elliott> C++ class libraries.
19:15:56 <olsner> is `quote handled by the bot that is not here anymore?
19:15:59 <elliott> - ANSI C! A 100% implementation of the ANSI C standard.
19:16:09 <olsner> 100%, hah!
19:16:14 <fizzie> My guess (re DISK?.DSK) is marker files for a "is this disk the disk 3?" query.
19:16:23 <zzo38> When are they going to put it back?
19:16:25 <GreyKnight> Sgeo_: have you read Oleg's discussion on delimited continuations? I thought it was something you might find interesting. http://okmij.org/ftp/continuations/index.html#tutorial
19:16:32 <elliott> fizzie: I actually meant you should figure out where random() is defined.
19:17:06 <GreyKnight> olsner: `quote is HackEgo who indeed seems to be missing
19:17:16 <zzo38> fizzie: For installing from floppy disks? Maybe it is, then.
19:17:43 <fizzie> elliott: #define random(num) (int)(((long)rand()*(num))/(RAND_MAX+1))
19:17:47 <zzo38> And if so will it work if you have DISK1.DSK and DISK2.DSK then when it is finish with disk 1 will it then know not to change disks?
19:17:50 <olsner> elliott: is that disk3.dsk file the only file on disk 3?
19:18:22 <fizzie> elliott: So it in fact *will* return negative numbers for num == -2.
19:18:28 <elliott> olsner: No, it has DISK[1234].DSK in the archive.
19:18:45 <elliott> fizzie: Mhm.
19:18:54 <olsner> ah, so it's all the disks combined then
19:19:34 <GreyKnight> Sgeo_: http://pllab.is.ocha.ac.jp/~asai/cw2011tutorial/main-e.pdf is the main bit. Apparently Racket supports shift/reset so you should be able to play around in there?
19:20:07 <elliott> fizzie: I guess I should just make random2 be return (long)rand()*rmax / (RAND_MAX+1) then.
19:20:14 <elliott> Or, um, does that work properly with the unsigned int argument?
19:20:17 <elliott> Signedness is confusing.
19:21:03 <fizzie> elliott: RAND_MAX these days might also be too large for that to work. It's kind of counting on long being twice as long as int.
19:21:25 <elliott> Right.
19:21:29 * elliott sigh
19:21:46 <Fiora> maybe int64_t instead?
19:21:52 <olsner> turbo c had 16-bit ints?
19:21:53 <elliott> fizzie: Though rand() does return int?
19:22:04 <elliott> Oh, but there's still 32-bit machines in the world.
19:22:11 <GreyKnight> are we doing C archaeology?
19:22:15 <fizzie> olsner: It did, yes.
19:22:48 <olsner> cool, I've never used a compiler that did that, afaik
19:23:30 <Fiora> I'm guessing compilers on 16-bit microcontrollers would use 16-bit ints?
19:23:36 <GreyKnight> nooga: how's the 6502 language coming along? This interests me
19:23:40 <elliott> fizzie: I guess rwbarton's fix is the closest to that semantics, then?
19:23:48 <Fiora> I think I remember some libraries have a fuss about being "16-bit int safe"
19:24:14 <olsner> Fiora: probably they would... I've never written C for any of them though :)
19:24:36 <fizzie> elliott: Yeah; closest to the intent, even if it's not quite bug-compatible. (And saying "Turbo C" does it is slightly a misnomer, if it's only Turbo C++'s random(n) that does.)
19:25:07 <fizzie> I think SDCC uses 16-bit ints, generally.
19:25:08 <hagb4rd> afaik the size of int really is represented my the architecture used.. so it's a good idea to use int32_t or whatever you want it to be
19:25:22 <hagb4rd> -my+by
19:25:33 <fizzie> Even on arguably "8-bit" architectures.
19:25:58 <Fiora> the weirdest though are the architectures that don't have 8-bit types
19:26:04 <olsner> well, int has to be >= 16-bit according to the standard?
19:26:14 <Fiora> I forgot which TI DSP it was but some popular one has 16-bit as its smallest data type
19:26:23 <Fiora> so sizeof(char) is 2
19:26:29 <fizzie> Fiora: sizeof (char) cannot be 2.
19:26:36 -!- Taneb has joined.
19:26:38 <fizzie> Fiora: It will have sizeof (char) == 1, CHAR_BIT == 16.
19:26:42 <Fiora> ... it can't be? I guess... yeah
19:26:44 <Fiora> that makes sense
19:26:46 <Fiora> CHAR_BIT == 16
19:26:54 <fizzie> Quite a lot of DSPs go that way.
19:27:04 <fizzie> I think TI's own compiler for the C54x series did it.
19:27:15 <Fiora> so does that mean sizeof(int) is 2, even though it's a 32-bit int?
19:27:16 <elliott> fizzie: size of char is C's fundamental storage space unit, more or less
19:27:26 <elliott> er
19:27:26 <shachaf> > let sizeof=id;char=16 in sizeof(char)
19:27:27 <elliott> *Fiora:
19:27:27 <lambdabot> 16
19:27:35 <elliott> Fiora: so that just means sizeof(int16_t) would just be 1 or whatever
19:27:56 <Fiora> yeah, I think it was the C54x I was thinking of
19:28:01 <fizzie> Fiora: Yes, though I think the TI compiler has CHAR_BIT == 16, sizeof (char) == 1, sizeof (int) == 1, sizeof (long) == 2 because it works a lot better with 16-bit numbers.
19:28:14 <Fiora> ooh.
19:28:21 <Fiora> wow, that is confusing
19:28:25 <Fiora> I didn't even know sizeof(int) could be 1
19:28:32 <fizzie> It just needs to be 16 bits.
19:28:49 <elliott> Deewiant: fizzie: Congratulations on your "props": https://github.com/ehird/crawl-1.1/pull/6
19:28:54 <GreyKnight> Fiora: some architectures have bytes that aren't 8 bits wide :-o
19:28:59 <fizzie> Motorola's DSP56k makes CHAR_BIT == 24, sizeof (char) == sizeof (int), don't know about sizeof (long) there. (Probably 2, since it doesn't have enough bits.)
19:29:08 <Fiora> GreyKnight: I knew about that! but it was usually like 9-bit chars or something
19:29:11 <Fiora> not.... 16-bit bytes?
19:29:19 <zzo38> I hope they won't remove support of ARMv2 and so on in GCC, since I intend to use that.
19:29:22 <Fiora> CHAR_BIT=24? O_O
19:29:34 <olsner> is there an upper limit on CHAR_BIT?
19:29:43 <GreyKnight> I think there was something with 11-bit bytes... In theory there could be any number
19:29:47 <kmc> it's so so so dumb that char can be signed or unsigned
19:29:52 <elliott> There's some Cray with 32-bit chars, isn't there?
19:29:54 <zzo38> What ARM features are used in GCC when you put certain mode?
19:30:01 <Bike> what the heck is a signed char, i never got that
19:30:01 <fizzie> Fiora: AD SHARC has CHAR_BIT == 32.
19:30:11 <shachaf> The signed char/unsigned char/char thing is great.
19:30:11 <kmc> Bike: it's just a number between -128 and 127
19:30:14 <kmc> poorly named
19:30:15 <fizzie> (And probably sizeof (long) == 1.)
19:30:28 <Bike> i suppose being a "char" nowadays is ridiculous anyway
19:30:29 <Fiora> so char, short, int, and long are the same size
19:30:32 <Fiora> that's kind of magnificent?
19:30:39 <Fiora> and float, I guess, too
19:30:39 <Bike> and then some people add wchar and so on and it's all fucky
19:30:40 <GreyKnight> kmc: if you stick to ASCII then it won't matter! :o)
19:30:50 <kmc> yeah until someone exploits your program
19:31:11 <GreyKnight> fizzie: awesome :-D
19:31:15 -!- asiekierka has quit (Ping timeout: 248 seconds).
19:31:16 <fizzie> I don't know of a non-DSP example, and I think I didn't hit on any that I'd really count when last "researching" (fancy word for Googling a bit) this.
19:31:43 <Fiora> DSPs are fun
19:31:57 <kmc> this came up in one of the exploitation wargames i played
19:32:01 <Fiora> they have all kinds of weirdnesses, I remember hearing about one that had a gazillion delay slots
19:32:02 <zzo38> Would C with unlimited numbers of char be matching any version of the C specification?
19:32:02 <elliott> DSP and DS9K share the first two latters. just saying
19:32:16 <shachaf> elliott: But not the latter two latters.
19:32:17 <GreyKnight> Bike: I liked Java's idea of just having char mean "Unicode-width" and be done with it. Then have a separate proper "byte" type for octets.
19:32:24 <kmc> there was an array "int count[256]" and then it would loop over a string doing "count[*str]++"
19:32:35 <shachaf> kmc: Hey, that was level07_alt or something, wasn't it?
19:32:37 <GreyKnight> kmc: "exploitation wargames"?
19:32:37 <kmc> but if you had bytes above 0x7F then it would actually corrupt the 128 words before that array
19:32:40 <kmc> yeah
19:32:41 <shachaf> I should go back to that sometime.
19:32:47 <kmc> http://io.netgarage.org/
19:32:49 * shachaf had forgotten.
19:32:51 <kmc> (they moved?)
19:32:51 <Bike> GreyKnight: better but still probably causes a few problems with people thinking a char is like in C?
19:32:51 -!- asiekierka has joined.
19:33:01 <shachaf> They moved? What!
19:33:26 <elliott> GreyKnight: doesn't java manage to fuck up non-BMP
19:33:26 <kmc> GreyKnight: basically, you log in as user level1, there's a setuid binary that runs as user level2, you exploit it
19:33:41 <kmc> then there's another binary that runs as level3
19:33:42 <kmc> etc
19:33:45 <kmc> fun times
19:33:59 <shachaf> They use some evil encoding on their website. :-(
19:34:02 <fizzie> There's a strictly word-addressed Cray box where still CHAR_BIT == 8, but on the other hand void * (and char *) representation is complicated and includes a word pointer + inter-word offset to denote a particular byte.
19:34:13 <GreyKnight> Bike: Screw 'em B-) elliott: I am not sure actually kmc: oh I see! That sounds interesting
19:34:18 <Fiora> "The SHARC DSP and MIPS-X use a double branch delay slot; such a processor will execute a pair of instructions following a branch instruction before the branch takes effect."
19:34:24 * GreyKnight saves vertical space ,o/
19:34:30 <fizzie> (I don't recall if it actually has sizeof (void *) > sizeof (int *); I think not, it was just some bits.
19:34:53 <Fiora> fizzie: is that actual legal? can differently typed poiners have different sizes?
19:34:54 <elliott> Just use 128-bit chars and set sizeof(everything) = 1.
19:35:03 <fizzie> Fiora: Sure, it's legal.
19:35:10 <Fiora> wow
19:35:23 <shachaf> elliott: What about my 256-bit variables?
19:35:24 <GreyKnight> yeah, strange but legal
19:35:39 <Fiora> But the language still has to be able to convert them, right?
19:35:43 <elliott> Fiora: They can have different representations, I think.
19:35:49 <fizzie> Fiora: (Though void * and char * must have the same representation; as do pointers to any struct; and some other similar exceptions.)
19:35:50 <zzo38> But is sizeof(void*)<sizeof(int*) OK?
19:36:11 <kmc> GreyKnight: yeah it's a really fun game
19:36:18 <fizzie> zzo38: I think that's still legal, if you can guarantee that all valid int *s can be converted to a void * and back, e.g. if int * has some padding bits.
19:36:23 <kmc> there's a lot of variety actually
19:36:43 <zzo38> fizzie: O, OK, I didn't think of that way
19:36:46 <Fiora> I'm now imagining using that whole rule for tagged pointers
19:36:47 <kmc> some of your standard binary exploitation, some reverse engineering, some developing exploits for real (old) software, some programming weir machines
19:36:51 <zzo38> But yes I suppose it can work.
19:37:19 <Bike> weir?
19:37:35 <kmc> weird
19:37:37 <kmc> heh
19:37:41 <Bike> oh
19:37:43 <hagb4rd> l
19:37:49 <hagb4rd> like a toaster
19:37:52 <shachaf> How do I git-show the second commit in the list git-log gives me?
19:37:54 <GreyKnight> kmc: I like how you can add stuff to a file that is pushed to the website (dodgy javascript aside)
19:37:59 <fizzie> Fiora: Oh, and the TI C54x also has two delay slots, but some instructions (those followed by an immediate) are twice as fat, so sometimes you can fit only one instruction in the delay slots. (And the assembler doesn't warn you, since it can't know your intent; though it might warn you if you put a wide instruction in the second delay slot.)
19:38:38 <Fiora> that ... wow
19:38:55 <kmc> yes
19:39:12 <Fiora> variable instruction length + delay slots sounds like an insane combination
19:39:23 <kmc> also if you get to level20 there's a directory of stuff that other people who got to level20 wanted to share with people who can get to level20
19:39:25 <fizzie> Fiora: You do need to use a specific form of branch to get delay slots, though. (The plain "B" is pretty much a "BD; NOP; NOP".)
19:39:25 <Fiora> how big are the C54x instructions, 2/4 or 4/8?
19:40:53 <fizzie> Mostly they're one word (16 bits), so the delay slots are two words following the branch.
19:41:07 <kmc> that is awkward
19:41:18 <Fiora> oh, so it's just like thumb-2
19:41:56 <Fiora> "40-bit arithmetic logic unit, including a 40-bit barrel shifter and two independent 40-bit accumulators" 40-bit o_O
19:41:58 <GreyKnight> kmc: maybe we should do something esolangy along these lines :-)
19:42:29 <Fiora> is that for floating point MAC or something?
19:42:30 <GreyKnight> "More bits than you'll ever need"
19:42:31 <shachaf> Every buggy program is actually an esolang where the only way to get things done is to exploit it.
19:42:32 <fizzie> Fiora: The fixed-point DSPs often have larger-than-word-size accumulators so that you have some extra headroom.
19:42:38 <Fiora> oooh
19:42:41 <fizzie> Fiora: (It doesn't do anything floating.)
19:42:46 <Fiora> ah, I see
19:42:51 <GreyKnight> shachaf: I was thinking something to do with nested Turing tarpits?
19:42:52 <Fiora> what about the 17 bit multiplier?
19:43:38 -!- copumpkin has quit (Ping timeout: 252 seconds).
19:43:54 <Fiora> " Single-instruction repeat and block repeat operations" wow, it has "loop" instructions?
19:44:10 -!- copumpkin has joined.
19:44:13 <Fiora> conditional stores!
19:44:18 <kmc> i think i said here before that attacking vulnerable programs is the practical application of esoteric programming
19:44:20 <Fiora> memmmove /instructions/
19:44:27 <kmc> mmmmmmmmmemmove
19:44:34 <fizzie> Fiora: If you're reading about the C54x, that's the RPTB[D], and I was just figuring it out in order to understand what the delay slots were doing.
19:45:18 <Fiora> I'm reading the "DSP programmer's guide"
19:45:35 <elliott> I feel like now is a good time to link to http://esolangs.org/wiki/Talk:Timeline_of_esoteric_programming_languages#AS.2F400
19:45:38 <elliott> re crazy CPU architectures
19:45:52 <elliott> "The AS/400 (the ultimate CISC) might qualify as an unintentionally esoteric computer architecture. It has transcendental math, iconv, malloc/realloc/free, (almost) sprintf, mark-and-sweep garbage collection, compression, and encryption, as single assembly instructions. It has 128-bit segmented pointers (which are bit patterns but not integers), EBCDIC characters, no (visible) registers, hardware malloc() instead of a stack for function arguments/lo
19:46:07 <kmc> yes i love that one
19:46:10 <Fiora> STM #4000h,AR2 ; Load pointer to source in data memory.
19:46:10 <Fiora> STM #100h,AR3 ; Load pointer to destination in data memory.
19:46:10 <Fiora> RPT #(1024–1) ; Move 1024 value.
19:46:11 <Fiora> MVDD *AR2+,*AR3+
19:46:14 <Fiora> omg
19:46:17 <elliott> cal variables, and trap representations."
19:46:25 <Fiora> that's how you do a 1024-byte memcpy on this chip
19:46:31 <Fiora> with the RPT instruction
19:46:43 <Fiora> er, 4096 bytes >_>;
19:46:45 <kmc> wow
19:46:51 <GreyKnight> elliott: I actually worked on some of these once (not that long ago, maybe 10 years?). The machines are still in use as far as I know
19:46:52 <Fiora> I think
19:47:04 <fizzie> Fiora: "RPTB addr" will load PC+2 (PC+4 for RPTBD) into RSA (block-repeat start address register) and addr to REA (block-repeat end address register), and the hardware will then cause that block to be repeated as many times as the BRC (block-repeat counter) specifies.
19:47:05 <GreyKnight> (an insurance company)
19:47:13 <zzo38> http://esolangs.org/wiki/User:Ian/Computer_architectures mentions "DSPs: DSP56300 (hardware DO loops), SHARC (hardware COME FROM!!!)"
19:47:36 <Fiora> these DSPs are like
19:47:38 <Fiora> the revenge of CISC
19:47:39 <Fiora> and it's wonderful
19:48:16 <fizzie> Fiora: Have you read about the FFT addressing modes yet?
19:48:35 <Fiora> what O____O
19:48:36 <zzo38> AS/400 is 128-bits (in 1988; and I even saw the advertisement in an issue of Byte magazine from that time).
19:49:09 <fizzie> Fiora: Some of them have kind of bit-reversed addressing modes for implementing FFT faster.
19:49:10 <elliott> Fiora: but does it have a printf instruction?
19:49:20 <Fiora> "The C54x implements division operations by using repeated conditional subtraction."
19:50:00 <Fiora> oic, these are code examples, it doesn't have a div instruction
19:50:22 <fizzie> Fiora: And pretty much all have special circular-buffer addressing.
19:50:28 <hagb4rd> is it a neuman or harvard architecture?
19:50:43 <boily> fizzie: FFT addressing???
19:50:48 <Fiora> "Example 3–4 uses a 6-term Taylor series expansion to approximate the square root of a single-precision 32-bit number"
19:50:49 <shachaf> elliott: That AS/400 thing is indeed great.
19:50:54 * boily is positively terrified by the idea
19:50:54 <Fiora> that.... that's actually a cool idea
19:51:27 <elliott> shachaf liking something???
19:51:34 <zzo38> Circular buffer addressing seems it would be useful in many cases.
19:51:45 <shachaf> elliott: huh? i like a lot of things!!
19:52:13 <fizzie> FFT involves that "read this in bit-reversed order" step, so there's a "post-increment except in a bit-reversed fashion" addressing mode.
19:52:23 <GreyKnight> shachaf: Name three!
19:53:20 -!- Frooxius has joined.
19:53:28 <Fiora> wow. dsps are crazy
19:55:14 <fizzie> If AR2 is 0b01101100 and AR0 is 0b00001000, then using *AR2+0B as an operand means "take data from address 0b01101100, but also increment AR2 to point at 0b01100010" (because rev(rev(0b1100)+1) = 0b0010; AR0 must be 2^(N-1) where 2^N is the FFT size).
19:55:57 <fizzie> I didn't have an occasion to use that (TI delivers these with optimized FFT libs), but I do think I did use the circular-buffer addressing.
19:56:04 -!- WeThePeople has quit (Quit: Leaving).
19:56:54 <Fiora> http://i.imgur.com/vj74U.png
19:57:04 <Fiora> ... okay, this is one category of addressing modes.
19:57:06 <Fiora> just, erm. one.
19:57:16 <fizzie> http://sprunge.us/IPHd yeah, there it is; *TMP+% is a ring buffer thing.
19:57:22 <shachaf> endofunctor in the category of addressing modes
19:58:04 <Fiora> http://i.imgur.com/bNZNx.png here's the fft one
19:58:16 <fizzie> Fiora: I hope you like the parallel instructions too; that ST B, *UDPTR+ || MPY *PPTR+, B is a single opcode.
19:58:31 <Fiora> the "do math and do an unrelated load/store at the same time"?
19:58:37 <fizzie> Fiora: (There's all kinds of crummy restrictions re which registers are usable when and where, due to running out of bits.)
19:58:56 <Fiora> that's like x86 memory operands on acid
19:59:39 <Fiora> http://books.google.com/books?id=2A_2-v3raKEC&pg=PA290&lpg=PA290 <-- this is what I'm reading right now
19:59:59 -!- WeThePeople has joined.
20:00:42 -!- oerjan has joined.
20:01:06 <GreyKnight> heh, the VAX MOVTC command is basically tr(1) in a single instruction :-D
20:01:56 <fizzie> Fiora: "ST B, *TMP+0% || MPY *PPTR+, B" means: store old value of B >> 16 into the memory pointed by address register TMP, then post-increment it by AR0 and take the result modulo the circular addressing register BK; while doing that, also multiply B with the data pointed by PPTR, and post-increment that register.
20:01:57 <Fiora> tr(1)?
20:02:07 <Bike> as in translate
20:02:11 <GreyKnight> and CASEx has no upper limit on its number of operands (and hence instruction length) other than the size of memory. In theory it could be up to 4GB long :-o
20:02:12 <Bike> i assume?
20:02:21 <GreyKnight> Fiora: the unix tr utility
20:02:31 <Fiora> ooh
20:02:44 <Bike> now i'm wondering if anyone's designed a "snobol machine"
20:03:02 <Fiora> fizzie: that... just.... woooow
20:03:12 <GreyKnight> POLYx: evaluate polynomial
20:03:17 <oerjan> `run echo 'like this' | tr a-z n-za-m
20:03:26 <GreyKnight> HackEgo is on strike
20:03:32 <oerjan> WAT
20:03:33 <Bike> GreyKnight: i mentioned this before, but i had a professor who wrote binary search as a vax instruction
20:03:39 <oerjan> UNHEARD OF
20:03:44 <GreyKnight> fizzie, how can I also make it whistle Beethoven's Fifth at the same time??
20:03:44 <oerjan> HE'S FIRED
20:03:53 <oerjan> !sh echo 'like this' | tr a-z n-za-m
20:03:58 <EgoBot> yvxr guvf
20:04:03 <GreyKnight> Bike: I'm not even surprised at this point!
20:04:14 <Bike> i think POLYx is kind of famous thoug
20:04:16 <Bike> h
20:04:24 <Fiora> "Square and subtract: This instruction stores the data-memory value Smem in T, then it squares Smem and subtracts the product from src. The result is stored in src."
20:04:30 <Bike> which is a bit silly, it's not even really that complicated to evaluate a polynomial
20:04:39 <Bike> at least not compared to fizzie's bit there
20:05:02 <Fiora> this is insane and wonderful
20:05:20 <oerjan> Gregor: TELL HACKEGO HE'S FIRED FOR ABSENCE
20:05:45 <fizzie> Fiora: The MAC instructions are kind of nice too. "MACR *AR5+, *AR2, B, A" computes *AR5 * *AR2 (AR5 is also post-incremented), then adds that to B and stores the result to A. Have to love a four-operand opcode.
20:05:58 <fizzie> (Admittedly the two last operands each can only be A or B, since there's just two accumulators.)
20:06:36 <Bike> i read that * as convolution, and... i'm not sure i'm wrong? help
20:06:51 <fizzie> Sadly, it's just a product. :/
20:07:05 <fizzie> Oh, and the R means "add 2^15 to the product and then clear bits 0..15 to 0" so that it's a round-to-nearest fixed-point multiplication.
20:07:26 <Fiora> fizzie: x86 has that one at least!
20:07:33 <Fiora> ... the MAC one
20:07:38 <GreyKnight> "NES CIC (LFSR-based PC, meaning the address of the next instruction is determined by what is basically a random number generator!)"
20:07:39 <fizzie> Yes, finally.
20:07:44 <Fiora> yay for xop and fma4
20:07:48 <Bike> GreyKnight: wat
20:08:00 <fizzie> Well, x86 also has those AES-related instructions.
20:08:07 <Fiora> x86 has rounding fixed point multiplication now too with pmulhrsw
20:08:24 <oerjan> :t join
20:08:25 <GreyKnight> Bike: from the list on http://esolangs.org/wiki/User:Ian/Computer_architectures
20:08:26 <lambdabot> Monad m => m (m a) -> m a
20:08:30 <GreyKnight> fantastic
20:08:43 <GreyKnight> makes Malbolge look like small beans
20:09:09 <fizzie> (Generally speaking bits 0..15 of the accumulators A and B tend to be extra precision, 16..31 the actual data, and 32..39 the extra guard bits so that you don't wrap prematurely when summing things up; if you store A or B to memory, it will actually write bits 16..31 there.)
20:09:15 <Bike> oh right, vax's "increment literal" addressng modes.
20:09:29 -!- WeThePeople has quit (Quit: Leaving).
20:09:48 <Fiora> fizzie: those guard bits actually sound incredibly useful
20:09:50 <Bike> "has 6 operands"
20:10:14 <olsner> hmm, that thing being discussed as the as/400 instruction set earlier is actually (afaict) their cpu-independent intermediate language - when installing on your iSeries thingy it'll get translated to something sane like POWER instructions
20:10:22 <Bike> «EDITPC converts a number from packed BCD to ASCII using its own mini instruction set (called patterns). It's used extensively in the printf() function in VAX BSD for %d formats. Of course, this mini instruction set itself has variable-length instructions!»
20:10:34 <Fiora> fmaddps xmm0, xmm1, xmm2, [rax+rbx*4+175232] ; yay x86
20:11:00 <Bike> man, and i thought machines not based on executing instructions were weird
20:11:05 <GreyKnight> heh, Ian suggests the following modification if anyone makes a new VAX: "Also extend the maximum degree of POLYx from 31 to 65,535 because it already uses a word operand."
20:11:13 <Bike> genius
20:11:31 <Bike> "BBxx: branch on bit. The VAX has instructions for branching based on whether a bit is set or clear, and then optionally clearing or setting the bit regardless of the condition." neat!
20:11:48 <Bike> "EMODH #5345.1524[r7], @mul_ext_ptr[r0], #3.141592765[r5], @int_table[r1], @frac_table[r2]" it's beautiful
20:12:06 <olsner> though the original as/400 had an instruction set "similar to the IBM 370", which is also quite CISC
20:12:25 -!- HackEgo has joined.
20:12:40 <GreyKnight> `echo hi
20:12:41 <HackEgo> hi
20:12:45 <olsner> HackEgo: read the back log, we tried to use you earlier
20:13:03 <olsner> hmm, HackEgo is also the bot that makes the logs, isn't it?
20:13:08 <Bike> "XFC: extended function call. The user can create their own instruction in microcode and the VAX will decode all the specifiers for them. " oh, so that's how that works
20:13:39 <Bike> olsner: well codu has logs anyway, looks like. does hackego have a spy
20:13:59 <Bike> Fiora: look at callg in this list ._.
20:14:05 <Fiora> callg?
20:14:08 <Fiora> um, link?
20:14:13 <Bike> in http://esolangs.org/wiki/User:Ian/Computer_architectures
20:14:16 <olsner> might be glogbot that logs
20:14:19 <fizzie> Fiora: It also has a two-port (data) memory, so you can do ST B, *AR1+0% || LD A, *AR2+ in a single cycle. (Then again, I suppose the operation itself, or the other parallel ones -- ST||ADD, ST||SUB, ST||MPY, ST||MAC, ST||MAS, LD||MAC, LD||MAS -- are not all that fancy when you consider that the C64x is an actual VLIW.)
20:14:21 <Bike> "call with general argument list"
20:14:36 <Fiora> omg
20:14:45 <Fiora> wow, and the hardware enforces the ABI
20:14:51 <Bike> "Free Activation Group-Based Heap Space Storage" a useful instruction
20:15:31 <Bike> yes, this is hardware malloc, isn't it
20:15:37 <Fiora> "EMODH: the longest instruction on the VAX, besides the CASE instructions. As I wrote on Wikipedia, EMODH #5345.1524[r7], @mul_ext_ptr[r0], #3.141592765[r5], @int_table[r1], @frac_table[r2] is 2+18+6+18+6+6, or 56 bytes."
20:15:42 <Fiora> a 56-byte instruction?
20:15:56 <Bike> "hardware COME FROM"
20:15:57 <Fiora> I think if you showed that to an x86 instruction decoder engineer it might send them comatose
20:16:09 <Bike> Fiora: or give them ideas
20:16:43 <fizzie> Fiora: Also fancy: conditional SIMD: http://everything2.com/title/FirePath
20:16:51 <Bike> http://publib.boulder.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=/rzatk/mitoc.htm jesus this whole thing
20:16:52 <fizzie> (Includes a nice snippet.)
20:17:16 <Bike> "Preserve the calling invocation and pass control to either the program entry procedure of a bound program or the external entry point of a non-bound program identified by pgmOrTmpltPtr." this is an instruction
20:17:42 <Fiora> "The SIMD nature of the instruction set is complemented by the way FirePath predication works. Rather than predicate an entire instruction's execution on a single bit, like IA-64's predication, FirePath has 8-bit predicate registers, each bit controlling the conditional writeback of a separate byte in an operation's result, thus allowing conditional operations to be performed in a SIMD fashion." wooow
20:17:51 <Fiora> they're /registers/ instead of bits in the instructino
20:17:55 <Fiora> so it can be changed on runtime
20:18:07 <Fiora> and I thought the vector units on the PS2 were insane @_@
20:18:17 <Bike> a hardware compression instruction, that can use of one two algorithms
20:18:31 -!- sebbu2 has changed nick to sebbu.
20:18:32 <Fiora> (on the PS2, there are 2-4 operand vector instructions, and ALL operands can be arbitrarily shuffled as part of the instruction)
20:18:35 <GreyKnight> instructinos are instructions that interact only very weakly with processors
20:19:05 <Fiora> (4 floats per vectorish I think)
20:19:08 <Bike> " the supercharged bastard son of ARM"
20:19:10 <fizzie> Sophie Wilson talked a bit about the FirePath when she was giving a lecture at an event; that's the only place I've even heard of the whole thing; it seems it hasn't really been used outside of Broadcom's non-consumer DSL devices.
20:19:33 <Taneb> Did anyone ever find the mysterious Mondrian language?
20:19:48 <Taneb> There are about three references to it on the internet
20:19:58 <Fiora> how had I not heard of Sophie Wilson ;-;
20:20:07 <Fiora> she designed ARM, woow
20:20:18 <Bike> "Materialize Authorized Users (MATAUU)" what the fuck is this machine even for
20:20:43 <GreyKnight> transporter control?
20:20:57 <Bike> ha, variable length nop
20:21:11 <GreyKnight> Split User in Pattern Buffer into Good and Evil Halves (SUPBGEH) :o)
20:21:44 * Fiora gapes and adds a new idol to her list
20:21:44 <fizzie> There are "official" (FSVO) variable-length NOP lists for x86 too, in the manuals of both AMD and Intel.
20:22:15 <Bike> fizzie: well it's not really variable length so much as nop with an operand indicating how many bytes to skip
20:22:24 <fizzie> That's also called a jump. :p
20:22:28 <Bike> oh hey it's ebcdic based
20:22:30 -!- WeThePeople has joined.
20:22:49 <Bike> fizzie: nope it's called "NOOPS"
20:23:01 <fizzie> Bike: What does the "NOOBS" instruction do?
20:23:18 <Bike> quit if the current user isn't properly authorized probably
20:23:26 <Bike> this does have user control stuff in hardware
20:23:38 <Fiora> and that's... an instruction?
20:23:42 <Fiora> that's... kind of terrifying
20:24:03 <Bike> «The instruction materializes the authorization states and the identification of the user profile(s). The materialization options (operand 3) for the system object (operand 2) are returned in the receiver (operand 1). The materialization options for operand 3 have the following format: »
20:24:43 <fizzie> The DSP course where we fiddled with the C54x was possibly my favourite course. Even if it wasn't perhaps all that terribly useful.
20:24:47 <Bike> Fiora: huh, she was on proto-EIDOS's board, too. cool
20:25:04 <olsner> I wonder what all that "materialization" stuff is about
20:25:29 <Bike> "Speed up CALLx and POLYx just to anger VAX detractors who don't follow Moore's Law" ok
20:25:54 <Bike> "Add an Execute instruction like the S/360 and PDP-10 that executes one instruction at its target and then returns. " hah, i forgot about this
20:26:53 <GreyKnight> elliott: from rwbarton/crawl earlier: "Keep on adding hordes of little features, so that one day Crawl can be a bloated monster just like NetHack! (this has always been my dream)" <-- we're living the dream!
20:27:58 <Bike> maybe i should go stare at dataflow processors now
20:28:06 <Bike> or that neuro stuff
20:28:54 <fizzie> Bike: Incidentally, the C54x also has an instruction called "POLY Smem"... but it only does a simple A = round((A >> 16) * T + B) operation; it's "useful for polynomial evaluation to implement computations that take one cycle per monomial to execute".
20:29:25 <elliott> kmc: you know things about terminals right
20:29:42 <Bike> fizzie: didn't the vax just use the same method anyway but make the whole chain one instruction
20:30:02 <kmc> elliott: some
20:30:11 <Bike> anything more complicated than horn's method probably isn't worth implementing in hardware
20:30:20 -!- etb has left.
20:30:23 <elliott> kmc: what's up with character width
20:30:37 <Bike> wow i got that name wrong. whatever
20:31:07 <fizzie> Bike: Er, I mean, to be entirely accurate, it does a simple A = round((A >> 16) * T + B); B = (Smem) << 16 operation. I suppose that latter part is going to be useful too for actually looping the thing.
20:31:25 <fizzie> (Presumably with a post-increment Smem operand so that it'll keep loading different coefficients.)
20:31:40 <fizzie> (And T is where you put 'x' into.)
20:31:57 <Bike> right
20:32:33 <kmc> elliott: i know, right
20:32:38 <kmc> seriously though, what's your question
20:32:47 <elliott> kmc: well
20:32:52 <GreyKnight> "int main() is in CRAWL99.CPP (the 99 is a version number, which started at 1 about 18 months ago)" <-- implies no source control? Not that it's surprising in context.
20:32:53 <fizzie> (So I suppose RPT #8; POLY AR0+ is *almost* a evaluate-an-8th-degree polynomial instruction, even if it technically is two.)
20:32:57 <elliott> kmc: that more or less is my question
20:32:59 <kmc> afaik there are only 3 possible widths as reported by wcwidth()
20:33:01 <kmc> 0, 1, 2
20:33:04 <kmc> plus -1 for unknown character
20:33:18 <elliott> well I am so used to thinking of a terminal as a grid
20:33:26 <elliott> but that does not really seem to work when you introduce this stuff
20:33:31 <kmc> but the "east asian width" character property defined on unicode takes on more values
20:33:36 <elliott> (and also the fact that lines have endings rather than just being padded out by spaces I guess)
20:33:43 <fizzie> (I mean RPT #7; naturally "RPT #X; Y" repeats Y (X+1) times.)
20:33:50 <kmc> (full, half, wide, narrow, ambiguous?)
20:34:05 <kmc> probably due to roundtrip concerns with other encodings
20:34:08 <kmc> elliott: yeah
20:34:19 <kmc> i think basically the wide character lives in the first of the two cells
20:34:31 <kmc> and then whatever's in the second cell is irrelevant?
20:34:48 <kmc> i'm not sure if it's defined what happens if for example you write "XY", move to the X, write a fullwidth character, then write a space
20:34:55 <kmc> if the Y comes back or not
20:35:00 <kmc> KeithW in #mosh probably knows
20:35:05 <kmc> he has a hobby of torturing terminals
20:35:27 <elliott> basically I am trying to write a terminal graphics library for Haskell (like ncurses but hopefully not shit)
20:35:36 <zzo38> I don't like those features of Unicode
20:35:50 <elliott> which involves trying to come up with a representation of "something you can paint on a terminal" that composes in some nice way
20:36:05 <elliott> i.e. you can say "ok, render this bit beside this other bit" etc. and it all works reasonably
20:36:08 <zzo38> Perhaps write the library, either to ignore Unicode, or to have an option to turn it off
20:36:13 <elliott> but terminals not being grids is sort of getting in the way of this
20:36:27 <elliott> so I am not really sure what semantic model I should be using
20:36:37 <Taneb> Sounds like a text-based diagrams
20:37:46 <elliott> yes I quite like diagrams' design
20:39:11 <elliott> kmc: ...and then this gets even more complicated because I'd quite like some notion of a "scalable" version of these, e.g. you can make something that renders a bunch of text and wraps it according to the width it actually displays at; put two of them next to each other and the whole thing will fill the terminal
20:39:42 <kmc> interesting
20:39:49 <elliott> but this is kind of tricky when I have no idea how to represent this stuff in a way that behaves properly for multiple-width characters
20:40:36 <zzo38> You could also use "ZEUX encoding" although that is CP437 only and doesn't work on anything other than the Linux console, and even then it won't work unless you have the files to work it with; however, this does mean that you can convert to/from .MZM format.
20:40:53 -!- greyooze has joined.
20:41:24 <zzo38> (MZM is not limited to CP437 either, but it does require 8-bit character encoding.)
20:41:27 <oerjan> @tell nooga <nooga> i'm not banned <-- DID YOU EXPECT TO BE?
20:41:27 <lambdabot> Consider it noted.
20:42:10 <zzo38> (And with 16 colors usable for background and foreground, although it does not matter what colors these are.)
20:42:29 -!- GreyKnight has quit (Ping timeout: 252 seconds).
20:42:34 -!- greyooze has changed nick to GreyKnight.
20:42:49 <kmc> you can talk to keith about the terminal state data type in mosh
20:42:59 <GreyKnight> what's ZEUX encoding and how does it solve the problem?
20:43:47 <kmc> i think it stores the same wide character in both cells
20:44:04 <kmc> no, i'm wrong
20:44:07 <elliott> mm
20:44:17 <zzo38> GreyKnight: It makes it so that you don't have to worry about wide characters
20:44:17 <kmc> if ( chwidth == 2 ) { /* erase overlapped cell */
20:44:17 <kmc> if ( fb.ds.get_cursor_col() + 1 < fb.ds.get_width() ) {
20:44:17 <kmc> fb.reset_cell( fb.get_mutable_cell( fb.ds.get_cursor_row(), fb.ds.get_cursor_col() + 1 ) );
20:44:33 <zzo38> But it might be insufficient for what you are making, possibly
20:44:38 <elliott> I'd rather abstract from that somehow, since algorithms like "put these two grids beside each other" will depend on wide-characterness
20:45:02 <kmc> yes
20:46:19 <elliott> I guess a terminal is in some ways fundamentally more like a list of lists than a grid
20:46:27 <elliott> but that's such an ugly thing to actually work with
20:46:40 <GreyKnight> does it help you avoid worrying about wide characters by the simple expedient of "not supported" :-I
20:46:56 <oerjan> `addquote -!- ais523 has parted #esoteric ("someone is going to mention Feather, I know it").
20:47:00 <HackEgo> 893) -!- ais523 has parted #esoteric ("someone is going to mention Feather, I know it").
20:47:01 <kmc> yeah the mosh representation is like that
20:47:10 <kmc> but i think it still maintains a rectangular list of lists
20:47:20 <GreyKnight> oerjan: it's funny he should mention it, I had a question
20:47:26 <GreyKnight> but he left :-(
20:47:56 <kmc> if you have some totally general idea of gluing together arbitrary size rectangles
20:48:07 <kmc> then a terminal can just be a bunch of 1x1 and 2x1 rectangles glued together
20:48:27 <elliott> don't forget 0x1
20:48:39 <GreyKnight> why rectangles? What about a hexagonal gridded terminal :o)
20:48:45 <elliott> kmc: not sure how that view handles varying line lengths though
20:48:53 <elliott> well I guess you can glue them together vertically and just not pad out stuff
20:50:06 <elliott> kmc: I was hoping for a representation that looked something like a map or a function, though; otherwise you'll end up gluing together trees "manually" to do something like e.g. drawing an ASCII-arty picture on a grid (consider a game display or whatever)
20:50:10 <elliott> it's tricky
20:50:52 -!- AnotherTest has quit (Quit: Leaving.).
20:53:12 <zzo38> Can you make non-Unicode version using only 1x1 and no 2x1, or else provide an interface for such thing, so that it can be used in the simplified mode?
20:54:39 * elliott isn't really interested in writing a library that can't display CJK text.
20:55:17 <Phantom_Hoover> > 5 ^ 36
20:55:18 <lambdabot> 14551915228366851806640625
20:56:14 * kmc high-fives elliott
20:56:53 <zzo38> elliott: Even in 1x1 only mode, it might still display CJK text on a wide-only terminal.
20:57:46 <zzo38> But another possibility to make a grid with wide characters even in a narrow-text, is to make each cell to be narrow/left-half/right-half.
20:59:38 <GreyKnight> that sounds sort of similar to what he's doing
20:59:53 -!- monqy has joined.
21:01:31 <zzo38> This could also be a way to store a Unicode text in a board mode MZM. Layer mode MZM has only color/character (8-bits each). Board mode MZM is dual-layer (top and bottom layers), and has a kind for each cell in addition, and an optional program for the top layer. When converting between board/layer mode, only the top layer is used.
21:02:03 <zzo38> Therefore you can use the bottom layer for the high bits of the character code, and use the kind octet to specify narrow/left-half/right-half.
21:04:12 <kmc> look, Unicode is not perfect, but it is The Standard
21:05:26 <shachaf> I thought ASCII was the standard.
21:05:39 <kmc> PETSCII
21:05:39 <shachaf> That's what the S stands for.
21:05:54 <GreyKnight> EBCDIC for life
21:06:40 <GreyKnight> @tell ais523 I had a question but this message utility is too small to contain it. I posted it on your wiki user talk page instead.
21:06:41 <lambdabot> Consider it noted.
21:10:19 <shachaf> iso-8859-8 forever
21:11:20 <kmc> does Israel have any entertainingly strange locally developed '80's microcomputers?
21:11:45 <shachaf> Hmm, I don't know.
21:12:21 <GreyKnight> JIS X 0212 represent
21:13:10 -!- Nisstyre-laptop has joined.
21:14:29 <GreyKnight> the Wikipedia entry for [[Four-Corner Method]] includes an example: «The code of 法 (pinyin: fǎ; meaning "method/law/France" [...]»
21:14:32 <GreyKnight> best character
21:15:50 <shachaf> kmc: I'm told that GOLEM is maybe interesting?
21:15:53 <shachaf> http://he.wikipedia.org/wiki/%D7%92%D7%95%D7%9C%D7%9D_(%D7%9E%D7%97%D7%A9%D7%91)
21:16:46 <Bike> GreyKnight: i think my favorite is still that character for some kind of noodle that has like thirty radicals
21:18:14 <Lumpio-> How is that best character
21:18:29 <Taneb> John is the best character
21:18:34 <GreyKnight> shachaf: worth it for the name alone
21:19:09 <boily> Bike: is that the one? https://en.wikipedia.org/wiki/Bi%C3%A1ng
21:19:41 <Bike> boily: yep.
21:19:48 <Bike> strokes not radicals. i'm no good at chinese
21:20:22 <Lumpio-> That thing has 58 strokes
21:20:32 <Bike> pff, the chinese text is svgs instead of text
21:20:40 <Bike> you're dropping the ball unicode
21:20:41 <Lumpio-> There are reasonably common characters with 30 strokes
21:21:09 <shachaf> `pastelogs JIT
21:21:27 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.28983
21:21:44 <GreyKnight> 58 strokes
21:21:58 <GreyKnight> you'd get RSI just writing it once
21:21:59 <boily> oh! hackEgo's back!
21:22:25 <shachaf> Hmm, not what I was looking for.
21:22:30 <GreyKnight> Bike: it's not in Unicode according to WP >:-o
21:22:34 <GreyKnight> outrageous
21:22:48 <kmc> there was a little emergency maintenance at my subway stop today: https://twitter.com/mbtaGM/status/286944708087930880/photo/1
21:23:03 <Bike> multiocular o: higher priority than noodles
21:23:33 <kmc> i think in the back you can see where they have grounded the third rail to the running rail, Just In Case
21:23:48 <shachaf> Bike: To be fair, almost every Chinese character looks like noodles.
21:23:54 <elliott> fizzie: you should finish that jitfunge thing
21:25:39 <elliott> Wikipedia thinks the world's most significant news story right now is some chess guy got a high rating that nobody but other chess guys cares about? Really, Wikipedia? This is how Wikipedia interprets the world around it? Has DYK staged a coup on the news section? Embarrassing. Townlake (talk) 03:54, 3 January 2013 (UTC)
21:26:08 <GreyKnight> Glad to see WP is as much of a soap opera as ever
21:26:11 <kmc> -_-
21:26:21 <GreyKnight> "The real entertainment is on the talk pages"
21:26:56 <Bike> i think i still have a text file somewhere of pickings from the transhumanism article
21:27:16 <kmc> i used to have a markov chain bot trained from the talk pages about various religions and religious figures
21:27:18 <Bike> there was a guy insisting some incidental diagram was bad because theh brain doesn't store information, it's just a radio tranceiver to the akashic records
21:27:23 <kmc> so it would just argue with itself about religion endlessly
21:27:32 <kmc> Bike: o_O
21:27:44 <GreyKnight> Bike: do you have enough hard disk space for storing that text file :-U
21:27:57 <GreyKnight> ("notoriously verbose")
21:28:41 <elliott> Bike: nice
21:28:52 <zzo38> Can you make up a version of the pastelogs which can specify the start date?
21:29:40 <shachaf> zzo38: It's too late: You've already made it up.
21:29:47 <shachaf> The patent, trademark, and copyright all belong to you.
21:29:59 <elliott> nice it degenerated into a policy argument
21:30:13 <shachaf> elliott: why are you reading [[Talk:Main page]]
21:30:27 <zzo38> shachaf: Well, I officially release all of that into the public domain.
21:31:25 <elliott> shachaf: because it's the best
21:31:36 <Bike> http://en.wikipedia.org/wiki/Talk:Transhumanism/Archive_11#Non-Local_Memory.21 aha, found it
21:31:41 <elliott> also because I check the main page and the talk page link is too damn prominent to avoid clicking
21:31:51 <Bike> «Also, many other scientists are aware of the NON-LOCAL nature of memories, eg. Nikola Tesla, who gave the AC electricity to the world (and opened the doors to 'modern age') knew a whole century ago, that brain is just a sort of antenna to somewhere else where these data are actually stored.»
21:32:35 <GreyKnight> I'd better stay away from Faraday cages then
21:33:00 <shachaf> The thing is that this view of 'memories-IN-the-brain' is what is pseudo! Science DIDN'T find any physical traces of memories IN the brain and will never find them, so how can a view that is based on memories being STORED IN the brain be non-pseudo, and something that doesn't contradict the reality (since reality is that they are NOT found IN the brain) be 'pseudo'(?)...
21:33:08 <shachaf> Good point.
21:34:46 <shachaf> "Waldo" is a famous story, right?
21:34:49 <shachaf> Jafet: Did you read it?
21:35:02 <Bike> the onen by... heinlein I think?
21:35:07 <Jafet> My memory is shachaf.
21:35:11 <Jafet> shachaf: did you?
21:35:24 <shachaf> Jafet: I think so.
21:36:33 <Jafet> Oh, it's the randy one with robot hands.
21:36:42 <shachaf> That's the one.
21:36:42 <GreyKnight> Jafet's memories are stored in shachaf?
21:36:50 <shachaf> @wn randy
21:36:50 <lambdabot> *** "randy" wn "WordNet (r) 3.0 (2006)"
21:36:51 <lambdabot> randy
21:36:51 <lambdabot> adj 1: feeling great sexual desire; "feeling horny" [syn:
21:36:51 <lambdabot> {aroused}, {horny}, {randy}, {ruttish}, {steamy}, {turned
21:36:51 <lambdabot> on(p)}]
21:36:59 <Jafet> @wn Rand
21:36:59 <lambdabot> *** "rand" wn "WordNet (r) 3.0 (2006)"
21:36:59 <lambdabot> rand
21:36:59 <lambdabot> n 1: the basic unit of money in South Africa; equal to 100 cents
21:36:59 <lambdabot> 2: United States writer (born in Russia) noted for her polemical
21:37:00 <lambdabot> novels and political conservativism (1905-1982) [syn: {Rand},
21:37:02 <lambdabot> [4 @more lines]
21:37:05 <boily> does the fact that I'm the subconscious aspect of a COBOL-less cookie agrees with your brains being antennas?
21:37:19 <shachaf> Oh, that sort of Randy.
21:37:58 <Jafet> GreyKnight: how can MEMORIES be stored IN shachaf? That is pseudo gobbledygook. shachaf is my memory.
21:38:01 <Bike> "ruttish"
21:38:56 <olsner> pseudo gobbledygook = real science?
21:41:06 <shachaf> kmc: Is KeithW related to "keithw", the GHC committer?
21:42:53 <GreyKnight> olsner: it *appears* to be gobbledygook, but in actuality it's balderdash
21:44:58 <GreyKnight> boily, perhaps a cookie can act as an antenna? Time for an experiment
21:45:41 <GreyKnight> Problem #1: How to stop GreyKnight from eating the experimental apparatus
21:47:38 <Taneb> Solution to Problem #1: Cyanide
21:47:57 <shachaf> Solution to Problem #1: Canada
21:48:10 <shachaf> zzo38: Does Canada exist?
21:48:15 <Taneb> For gods' sake, I said I was sorry
21:49:50 -!- carado has joined.
21:49:54 <zzo38> shachaf: Yes, Canada is exist, I think so!
21:50:10 <shachaf> zzo38: Sure, it is exist. But I asked whether it *does* exist.
21:50:35 <Taneb> Canada: I sexist
21:51:56 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
21:52:21 <GreyKnight> Canada *is* existence? So if we're not in Canada, *we* don't exist
21:52:38 <Taneb> Canada is exist
21:52:40 <shachaf> GreyKnight: Canada *is* exist.
21:52:40 <Taneb> I exist
21:52:41 <shachaf> Come on.
21:52:44 <Taneb> Hence I Canada
21:52:51 <Taneb> Hence I can Ada
21:53:01 <GreyKnight> I Canada therefore I eh
21:53:29 <Taneb> I cannot Ada
21:53:29 -!- Phantom_Hoover has joined.
21:53:30 <kmc> shachaf: there's a keithw GHC committer?
21:53:38 <Taneb> Hence either Canada is not exist, or I do not exist
21:53:43 <kmc> shachaf: probably not, but I wouldn't be totally surprised
21:53:47 <Taneb> I suspect the latter
21:54:03 <shachaf> kmc: I was looking for something in GHC commit history earlier and saw some.
21:54:11 <shachaf> From 1999 to 2002.
21:54:37 <boily> I think Canada exists. I'll have to check.
21:55:14 <olsner> Taneb: why would you exist?
21:55:22 <Taneb> olsner, who knows
21:55:29 <Taneb> I didn't even see a movie yesterday
21:55:52 <zzo38> shachaf: I think Canada does exist, too.
21:56:26 <Phantom_Hoover> Taneb, is that why you were going to newcastle
21:56:36 <Taneb> Yeah
21:56:42 <Taneb> There were six of us
21:56:47 <Taneb> The cinema had six seats spare
21:56:51 <Taneb> Not together
21:56:54 <Taneb> So we didn't see it
21:57:03 <shachaf> Taneb: "There were four of us" is the standard version, I think.
21:57:24 <GreyKnight> (Two of them aren't in Canada, and hence don't exist)
22:03:43 <boily> can you all be less than two of them, so Canada may experimentally exist?
22:04:33 <olsner> I'll believe in Canada when I see it
22:04:40 <GreyKnight> What if there were (-2) of them
22:07:55 -!- boily has quit (Quit: Poulet!).
22:12:43 <oerjan> i can confirm that canada existed as recently as 1995, although that was of course before the war on terror
22:13:29 -!- ais523 has joined.
22:15:50 <Phantom_Hoover> I can vouch for 1997.
22:16:19 <monqy> I've heard stories of canada but never experienced it myself
22:16:37 <Taneb> I used to know someone who lived in Canada
22:16:41 <Taneb> But she was a liar
22:16:44 <Taneb> Which made me sad
22:17:17 <shachaf> I once took the ferry over from Canada.
22:18:02 <olsner> canada gave you its ferry? how generous of it
22:18:10 <elliott> Taneb: what did she lie about
22:18:44 <Taneb> She pretended to be two people
22:18:48 <Taneb> And completely fooled me
22:18:53 <Taneb> Because I made friends with the fake
22:18:58 <oerjan> well the relevant question is of course whether she lied about living in canada
22:19:08 <Taneb> That I do not know
22:19:14 <olsner> and which one of her lived in Canada?
22:19:19 <olsner> *supposedly
22:19:39 <hagb4rd> she pretended that all that she wants was his money.. but all she really wanted was love love love..really sick
22:21:16 <Taneb> Both
22:21:29 <kmc> shachaf: so did you ever write the exploit for level07_alt? it was a kinda fun constrained programming problem
22:21:40 <Taneb> Both ubiquitousUloid and Thollux
22:21:43 <shachaf> kmc: Nope.
22:21:51 <shachaf> I don't think I did level07_notalt, either.
22:21:55 <shachaf> I should go back to it.
22:23:02 <kmc> yeah me too
22:23:13 <kmc> i have like 5 or 6 levels left
22:23:48 <kmc> a friend pointed out that the split-TLB trick we were discussing might behave weirdly on SMP
22:24:12 <shachaf> Split TLB?
22:24:19 <kmc> maybe you weren't around
22:24:50 <kmc> PaX has NX emulation that works by deliberately putting the code TLB and data TLB into inconsistent states
22:25:24 <kmc> you set all data pages as non-accessible in the page tables
22:25:38 <kmc> when you get a page fault, you check to see if it's really a data access and not a code fetch
22:25:46 <kmc> if so, you set the page accessible, read from it, and then set it back
22:26:32 <Jafet> Sounds efficient
22:26:45 <kmc> yeah ;P
22:26:53 <kmc> it's apparently not completely awful though
22:27:06 <kmc> http://pax.grsecurity.net/docs/pageexec.old.txt http://pax.grsecurity.net/docs/pageexec.txt
22:27:28 <kmc> this came up in http://events.ccc.de/congress/2012/Fahrplan/events/5265.en.html
22:27:43 <kmc> which you can download a video of at https://events.ccc.de/congress/2012/wiki/Documentation
22:28:04 <Sgeo_> elliott, Taneb monqy Phantom_Hoover Fiora update
22:28:11 <hagb4rd> ccc <3
22:28:27 <Bike> wait, is that the chaos computer club?
22:28:33 <hagb4rd> yes
22:28:47 <Phantom_Hoover> aw shit i'm so far behind
22:28:50 <kmc> the Chaos Communication Congress actually
22:28:57 <kmc> their conference
22:29:02 <shachaf> Oh, I've heard about that.
22:29:05 <Taneb> Sgeo_, thanks
22:29:08 <shachaf> (The TLB thing.)
22:29:53 <kmc> they talked about using the same trick to trap self-modifying code
22:29:55 -!- hagb4rd has quit (Quit: this statement is false).
22:30:24 <olsner> is there a version of the talk that doesn't involve video or anyone talking?
22:30:26 <kmc> basically, you get a page fault on each TLB miss, so you get a page fault the first time a given page is written or executed
22:30:33 <kmc> slides only? not that i've seen, sorry
22:30:43 <kmc> you can watch it at high speed on mute
22:30:54 <kmc> automatic extraction of slides from video would be an amusing computer vision project
22:31:37 <elliott> automatic extraction of kmc from #esoteric
22:31:41 <kmc> yessss
22:31:48 <elliott> `pastelogs kmc
22:32:04 <Lumpio-> bl
22:32:15 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.24432
22:32:44 <ais523> kmc: extracting slides from a video of a presentation seems trivial
22:32:44 <lambdabot> ais523: You have 2 new messages. '/msg lambdabot @messages' to read them.
22:32:44 <kmc> Lumpio-: bh
22:32:50 <ais523> it's basically just deduplication, right?
22:33:02 <kmc> assuming that each slide is shown full-frame at some point
22:33:12 <Lumpio-> blbl
22:33:13 <kmc> if not then it's a little more work
22:33:14 <Lumpio-> ЫЫ
22:33:16 * elliott wonders if ais523 is saying trivial to upset kmc.
22:33:27 <kmc> anyway this is why i said "amusing" and not "publishable" ;P
22:33:34 <kmc> elliott: probably!
22:33:49 <ais523> quintopia: yeah, I noticed that; the problem is that although it can detect that case, it's physically impossible to synchronize on it because you can't get there fast enough
22:34:00 <ais523> however, not checking twice before leaving makes you vulnerable to shudder
22:34:08 <ais523> huh, perhaps I should just shudder the flag in that case :)
22:34:47 <shachaf> kmc: Did you hear I ragequit #-blah the other day?
22:34:55 <shachaf> But I went back later.
22:35:02 <elliott> 2011-08-29.txt:00:20:56: -!- kmc has joined #esoteric.
22:35:02 <elliott> 2011-08-29.txt:01:22:05: <kmc> suid is irredeemably broken anyway
22:35:04 <elliott> kmc: great entrance
22:35:08 <olsner> shachaf: what a scandal
22:35:16 <kmc> haha
22:35:30 <kmc> shachaf: i did not hear of this
22:35:31 <elliott> [slams open doors] YOUR WHOLE WORLD IS IRREDEEMABLY BROKEN
22:35:44 <kmc> *studio audience cheers wildly*
22:35:52 <shachaf> Well, I guess you wouldn't've.
22:37:02 <shachaf> whoa, dude, monochrom has evolved into Dr. monochrom
22:37:47 <GreyKnight> Sgeo_: I posted a link for you earlier
22:38:47 <Sgeo_> GreyKnight, I ... vaguely remember seeing you give me a link, but I didn't look at it I think because I knew about it already. But I forgot exactly what it was
22:38:54 <ais523> elliott: does the wiki have spoiler tags?
22:39:01 <GreyKnight> that's okay, I forgot too
22:39:06 <GreyKnight> Oh! Delimited continuations
22:39:10 <ais523> I answered a question about Feather, but want to hide the answer so that it doesn't blow people's brains by mistake
22:39:14 <ais523> actually, I nkow
22:39:20 <ais523> the answer's in the page history now
22:39:29 <ais523> so I can safely delete it, and yet people who care can still find it
22:39:36 <elliott> ais523: you could just not answer
22:39:58 <elliott> ais523: I think as a matter of policy I must forbid making edits that are harmful to other people
22:40:00 <GreyKnight> "If you're confused by this, then I'm not surprised and don't say I didn't warn you."
22:40:12 <ais523> I deleted the section
22:40:43 <elliott> ais523: you should retroactively delete it
22:40:44 <elliott> : D
22:40:47 <elliott> : D
22:40:50 <elliott> : D
22:40:59 <GreyKnight> D: overflow
22:41:02 <ais523> elliott: go install the oversight extension and give me the perms
22:41:09 <elliott> ais523: don't we have oversight?
22:41:11 <ais523> then I /can/ retroactively delete it, so long as it's the top edit
22:41:15 <ais523> we have revision hiding, it's better
22:41:21 <Sgeo_> I didn't understan it, but I think it's because I don't know Feather
22:41:24 <ais523> but leaves a mention of the revisions' existence
22:41:29 <elliott> I think ais523 knows more about Esolang's MediaWiki installation than I do
22:41:37 <elliott> Sgeo_: are you suggesting anyone knows Feather
22:41:42 <ais523> oversight is a super secret thing that can't be undone and only other oversighters are aware of the existence of the oversighting
22:41:51 <ais523> it's what developers use if they need to hide the fact that something's been hidden
22:41:54 <Sgeo_> Well, at least two people have some notion of a construct =<<
22:41:57 <ais523> say, on order from the WMF
22:42:26 <GreyKnight> oversight: the <<= of mediawiki
22:42:51 <ais523> well, it only allows for effectively retroactive /deletion/, and even then only on the top revision
22:44:19 <GreyKnight> ais523: "this is consistent with the example you gave" Which one? Do changes from <<= only go back as far as the last =<<? Or all the way to the beginning of the universe?
22:44:43 <ais523> well =<< basically produces a new object
22:44:49 <ais523> think of it like .clone() in Java
22:44:49 <Taneb> Oh god is Feather actually being worked on
22:44:52 <elliott> Taneb: no
22:44:52 <elliott> x
22:44:53 <ais523> Taneb: no
22:45:00 <ais523> well, GreyKnight is trying to implement it, but he doesn't understand it
22:45:07 <ais523> this is not surprising, because nobody else understands it either
22:45:16 <elliott> 2011-08-29.txt:01:42:35: <kmc> i don't know what a HackEgo is
22:45:18 <elliott> 2011-08-29.txt:01:59:31: <kmc> what does EgoBot do?
22:45:41 <ais523> kmc: the bots both have a help command, and use ` and ! respectively as command prefixes
22:45:49 <elliott> thanks
22:45:53 <ais523> in fact, the other #esoteric bots (apart from the logging bots) have help prefixes too
22:45:54 <GreyKnight> Taneb: yes
22:45:58 <ais523> err, help commands
22:46:00 <shachaf> remember when kmc was in #haskell
22:46:01 <ais523> fungot's prefix is ^
22:46:08 <ais523> thutubot's prefix is + but it isn't normally here
22:46:10 <shachaf> #haskell was much better. :-(
22:46:15 <GreyKnight> ais523: hey I'm getting somewhere!
22:46:17 <ais523> and lambdabot's is @ or ?
22:46:28 <Taneb> Pietpot's is ) but that was here once and sucked
22:46:36 <Taneb> And I've lost the source
22:46:48 <GreyKnight> Taneb: was it written in piet?
22:46:52 <elliott> can't wait till kmc gives up on #esoteric
22:46:55 <ais523> oh, one of the reason thutubot isn't usually here is that it has a bug
22:46:56 <GreyKnight> s/written/drawn/ I guess
22:46:59 <Taneb> GreyKnight, yes
22:47:00 <ais523> that causes it to repeat everything lambdabot says
22:47:10 <ais523> it's an amusing bug but gets annoying after a while
22:47:14 -!- Bike has quit (Ping timeout: 240 seconds).
22:47:50 <shachaf> elliott: Then I'll have to take all my offtopicness to #mosh!
22:48:06 <ais523> it was worth it just for the few seconds where elliott thought I had a working Haskell interp in Thutu, though
22:48:11 <ais523> (I guess technically, I /did/, but…)
22:48:29 <GreyKnight> ah so (o =<< dummy) creates a clone... that clarifies things considerably
22:48:47 <Taneb> GreyKnight, PietBot could join the channel and crash when you tried to run a deadfish program!
22:48:48 <ais523> also, =<< doesn't take an argument
22:48:53 <ais523> why are you giving it one
22:49:25 <GreyKnight> er I had an attempt at an implementation of =<< once which you said was "basically okay", and it had a dummy argument
22:49:31 <GreyKnight> >_>
22:49:38 * GreyKnight retroactively changes his notes
22:49:42 <Sgeo_> Where is documentation on Feather?
22:49:47 <ais523> Sgeo_: gon't
22:49:49 <ais523> *don't
22:49:58 <ais523> seriously, it's better as an injoke
22:50:06 <GreyKnight> I am keeping my notes offline so as not to injure anybody
22:50:09 <Sgeo_> :(
22:50:26 <Taneb> I have a vague idea about Feather, but no specifics
22:51:14 <ais523> GreyKnight: something I discovered a while back is that Feather is not a good cure for depression
22:51:17 <ais523> I thought it would be
22:51:23 <ais523> but instead I just ended up depressed /and/ confused
22:51:45 <GreyKnight> (depression <<= nil)
22:52:24 <kmc> How to Good-Bye Depression
22:52:29 <ais523> GreyKnight: <<= (nil =<<), hopefully
22:52:37 <ais523> otherwise, when someone gets depressed again
22:52:43 <ais523> they'll end up overwriting nil
22:53:23 <oerjan> ^prefixes -- yo ais523
22:53:29 <oerjan> argh
22:53:36 <oerjan> fizzie: FUNGOT SHORTAGE
22:53:47 <ais523> oerjan: I didn't know that existed
22:53:55 <oerjan> `prefixes
22:53:56 <HackEgo> Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?
22:53:59 <ais523> (and, of course, it needn't have, with fungot being extensible from inside itself)
22:54:14 * GreyKnight retroactively assigns to oerjan ↞ fungot
22:54:47 <ais523> GreyKnight: how do you type that character with compose? or is it impossible?
22:54:49 <fizzie> Oh, right, I noticed the shortage but forgot to do anything.
22:55:05 -!- fungot has joined.
22:55:10 <fizzie> ^show prefixes
22:55:11 <fungot> (Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?)S
22:55:21 <fizzie> It seems to be combattible.
22:55:30 <GreyKnight> I don't know; it's U+219E
22:55:42 <kmc> "Neutral characters do not occur in legacy East Asian character sets. By extension, they also do not occur in East Asian typography. For example, there is no traditional Japanese way of typesetting Devanagari."
22:55:53 <kmc> WELL WHY NOT
22:56:30 <oerjan> <ais523> oh, one of the reason thutubot isn't usually here is that it has a bug <-- isn't fixing the bug just a matter of checking whether the privmsg target is thutubot itself?
22:56:40 <fizzie> I don't think the standard compose maps have all that many arrows, just the basic ones.
22:56:50 <Sgeo_> I assume the brain exploding stuff is a joke
22:56:55 <GreyKnight> U+291B is also relevant ⤛
22:57:36 <ais523> Sgeo_: no
22:57:38 <ais523> seriously
22:57:48 <ais523> I gave up Feather because I became too confused
22:57:51 <ais523> and slightly addicted
22:58:03 <GreyKnight> hey I found a new fountain glyph for NetHack ⥾
22:58:10 <ais523> GreyKnight: that's not new
22:58:14 <ais523> I think Un actually uses it
22:58:16 <GreyKnight> :<
22:58:24 -!- DHeadshot has quit (Read error: Connection reset by peer).
22:58:38 -!- DHeadshot has joined.
23:01:18 -!- Gracenotes has quit (Ping timeout: 264 seconds).
23:03:05 -!- Gracenotes has joined.
23:04:14 -!- Taneb has quit (Quit: Leaving).
23:08:40 -!- sebbu has quit (Read error: Connection reset by peer).
23:10:16 <GreyKnight> okay time for sleep I think
23:10:36 -!- sebbu has joined.
23:11:05 -!- GreyKnight has quit (Quit: zzz).
23:15:12 -!- Arc_Koen has joined.
23:26:05 -!- WeThePeople has quit (Quit: Leaving).
23:30:30 -!- Bike has joined.
23:34:26 * oerjan devalues his sanity *MWAHAHAHA* wait is that an appropriate use of *MWAHAHAHA*
23:35:04 <shachaf> `quote MWAHAHAHA
23:35:06 <HackEgo> No output.
23:35:17 <oerjan> shocking
23:35:36 <shachaf> oerjan: what's cooler: invariant functors or profuncotrs
23:35:38 <shachaf> profunctors
23:35:42 <shachaf> "choose wisely"
23:37:11 <oerjan> um if it is invariant, then it must be neither covariant nor contravariant, which means it's not a functor in the first place
23:37:43 <elliott> <kmc> wow, Feather sounds like it was designed during a salvia trip
23:37:45 <elliott> this paste is great
23:38:15 <oerjan> thus clearly profunctors
23:38:39 <ais523> oerjan: yeah but I'm lazy
23:39:59 * oerjan swats ais523 with quintopia because both comment on long-since-passed contexts ==>D:
23:40:14 <ais523> oerjan: it hasn't even scrolled off my screen yet!
23:40:20 <ais523> that's not long since passed!
23:40:36 <oerjan> oh ok
23:40:49 <olsner> I wonder how kmc got enough information about Feather to decide it sounded like a salvia trip invention
23:41:14 <oerjan> ais523: so =<< actually takes only one argument, right
23:41:43 <ais523> it takes zero plus "this"
23:41:51 <ais523> which isn't called "this" but people know what I mean by that
23:42:17 <oerjan> right that oo thingy people keep using
23:44:23 <ais523> Feather is definitely OO
23:44:29 <ais523> it wouldn't meet its original design goals otherwise
23:45:11 <Bike> what are its original design goals
23:52:04 <fizzie> Bike: Who knows, they keep getting retroactively changed.</stupid-feather-time-travel-joke>
23:52:24 <Bike> i don't even know anything about feather and i'm getting sick of the time travel jokes
23:52:28 <ais523> Bike: being like Smalltalk but more light-weight
23:52:49 <ais523> along the way, this evolved into "looks vaguely like Smalltalk but does what it does for entirely different reasons"
23:53:01 <Bike> is it still integrated with a graphical environment
23:53:07 <elliott> `addquote <Bike> i don't even know anything about feather and i'm getting sick of the time travel jokes
23:53:10 <HackEgo> 894) <Bike> i don't even know anything about feather and i'm getting sick of the time travel jokes
23:53:48 <shachaf> oerjan: Hmm?
23:53:53 <shachaf> oerjan: Sure it's a functor.
23:54:40 <oerjan> shachaf: well i don't know what an invariant functor is.
23:56:01 <shachaf> Well, it gives you inmap :: (a -> b) -> (b -> a) -> f a -> f b
23:56:38 <oerjan> ais523: i assume (o =<<) <<= x will only change the cloned object, not the original o, while o =<< x after o has been cloned will change both?
23:56:40 -!- epicmonkey has quit (Ping timeout: 272 seconds).
23:57:10 <ais523> oerjan: yes
23:57:14 <shachaf> oerjan: Comonads?
23:57:16 <oerjan> good, good
23:57:24 <ais523> oerjan: unless the cloned object was retroactively assigned to in the meantime
23:57:43 <ais523> then you only change the original because you're retroactively changing what it was before it retroactively changed
23:57:46 <ais523> in the clone
23:57:56 <oerjan> ....oops
23:58:44 <oerjan> shachaf: ok i guess there's some category that's a functor of...
23:58:51 <oerjan> shachaf: no, feather
2013-01-04
00:00:00 <ais523> `addquote <shachaf> oerjan: Comonads? <oerjan> shachaf: no, feather
00:00:04 <HackEgo> 895) <shachaf> oerjan: Comonads? <oerjan> shachaf: no, feather
00:00:15 <shachaf> What's feather?
00:00:18 <ais523> Bike: no, graphical environments aren't lightweight
00:00:27 <ais523> shachaf: please retroactively unask that question
00:00:51 <shachaf> Fascist!
00:00:53 <oerjan> ais523: i'm sure feather will have perfectly adequate analogy to functional reactive programming
00:00:57 <oerjan> *+a
00:01:23 <ais523> oerjan: if Feather doesn't have a feature you need, just retroactively add it :)
00:01:26 <ais523> that's the whole point, really
00:01:41 <ais523> "does Feather have a debugger?" "no but you can have had one if you needed it"
00:02:17 <shachaf> > 523 + 1
00:02:19 <lambdabot> 524
00:02:32 <elliott> does feather have real love
00:32:25 <fizzie> You too can have had real love during your formative years, retroactively, with Feather. (A great marketing advantage.)
00:32:47 <shachaf> @quote feather
00:32:47 <lambdabot> No quotes match. I've seen penguins that can type better than that.
00:32:54 <kmc> that does seem useful
00:33:03 <kmc> it should appear in a wikipedia table of comparing programming languages
00:35:44 <shachaf> @quote table
00:35:44 <lambdabot> chrisdone says: Production of two-handed use langes Schwerts with long flambard blades and heavily category-theoretically decorated guards, katzbalgers, axes, mail and Macedonian quality defence
00:35:44 <lambdabot> pikes. Lambda Knights need to be prepared for the inevitable battle against success.
00:36:20 <kmc> fungot: what about that, hm?
00:36:21 <fungot> kmc: that is, the parts inside use only binom and some comparison functions
00:37:43 <shachaf> fungot: what?
00:37:44 <fungot> shachaf: people used to put a space at the end ( the first one. they turn out to be equivelent to?!
00:38:04 <shachaf> monqy: they turn out to be equivelent to?!
00:38:17 <monqy> hi
00:38:36 <shachaf> `quote monqy.*hi
00:38:38 <HackEgo> 318) <monqy> my most fresh dream is one where I'm at a soup contest and a chicken really wants to participate but he's disqualified so he becomes the judge. when all the soups are done and he's ready to taste them he just stares at the soup and then I become the chicken and I really want to make soup \ 321) <monqy> `quote django <HackEgo> ​352)
00:38:41 <shachaf> `quote monqy.*\bhi\b
00:38:43 <HackEgo> 733) <monqy> Sgeo: I used to have strict requirements for when I said hi but then everyone started saying hi and it all got weird \ 757) <Sgeo> hack and back? <Patashu> works on anything much slower than you <monqy> at the cost of: guilt, hating yourself, me sending you the message "hi" <Patashu> am I also forbidden to cast mephitic cloud and cb
00:38:56 <monqy> hi?????
00:39:13 <kmc> racket's plotting lib looks cool: http://docs.racket-lang.org/plot/index.html
00:39:22 <shachaf> monqy: btw compliments on your quit message. best quit message.
00:39:28 <monqy> thanks...
00:39:38 <Bike> what's PLoT stand for
00:39:45 <shachaf> PLT plot
00:40:23 <Bike> genius
00:41:01 <fizzie> Bike: Pretty Lousy ploTs. (The idea came from PGP.)
00:41:25 <Bike> genius
00:42:18 <kmc> Racket used to be PLT Scheme
00:42:28 <Bike> yeah i knew that
00:42:36 <Bike> i'm just curious about the inevitable ridiculous backronym
00:42:46 <shachaf> Pretty Lousy ploT
00:43:00 <shachaf> hi mnoqy
00:43:08 <Bike> i'm running out of semiironic intensifying formatting here
00:43:11 <Bike> genius
00:43:24 <elliott> genus
00:43:29 <shachaf> Bike: This channel allows colors.
00:43:34 <shachaf> Wait, you're not British, are you?
00:43:39 <shachaf> It doesn't allow colours.
00:44:01 <Bike> yeah but i can never remember the codes, and not to mention, what does being colored some ugly shade of green convey? is that "intensifying", really?!
00:44:06 <Bike> doom
00:44:08 <kmc> everyone knows Scheme is useless academic nonsense, but this new Racket language sounds hip -- dynamically typed, continuation-based programming, etc.
00:44:18 <kmc> totally webscale
00:44:38 <Bike> kmc you need to vent your sarcasm tubes occasionally or you'll overheat
00:44:46 <kmc> isn't that what i'm doing here, all the time
00:45:03 <kmc> alternately "and that's why i'm banned from mcdonald's"
00:45:05 <shachaf> 01:01:44 <kmc> "Blub combines the theoretical beauty of Haskell with practical, real-world features like lightweight concurrency, scalable multithreaded IO, a C function interface, Unicode support, and a large base of libraries"
00:45:10 <elliott> pretty sure kmc is just here to trololo until we mad
00:45:11 <elliott> ugh kill me
00:45:11 <kmc> yes
00:45:18 <kmc> because you said trololo
00:45:19 <kmc> yes
00:45:26 <kmc> my people will talk to your people
00:45:28 <kmc> in re: killing you
00:45:35 <Sgeo_> I know that's obviously a dumb way to think about things, but I can't help but wonder if subconsiously there is an influence on me
00:45:36 <Bike> also is "continuation-based programming" seriously a buzzword
00:45:52 <Sgeo_> Of "Racket" vs "PLT Scheme"
00:46:01 <Bike> i know it's used in some web frameworks but i didn't think anybody used them
00:46:15 <elliott> kmc: my people will grudgingly accept the necessity
00:46:30 <kmc> "event-based programming" is a huge buzzword
00:46:35 <kmc> and is based on explicit continuation passing style
00:46:36 <Bike> yeah
00:46:40 <Bike> oh shit is it now
00:46:42 <Bike> we're doomed
00:46:45 <elliott> Bike: have you seen node.js code
00:46:48 <elliott> it's nested three miles deep
00:46:51 <elliott> because it is all CPS transformed
00:46:57 <kmc> three mile island
00:46:59 <elliott> because that is how they do everything
00:47:06 <elliott> it's blockless you see
00:47:09 <elliott> if you just had a ; it'd be slower
00:47:41 <Bike> the only javascript overlanguage i've looked at is Caterwaul and that's because it's some abominable mix of haskell and APL
00:47:52 <elliott> node.js is actually just libraries
00:47:53 <elliott> and a runtime
00:47:55 <Sgeo_> Bike, node.js is raw Javascript
00:47:59 <Sgeo_> Not a language on top
00:48:05 <elliott> fsvo raw
00:48:05 <kmc> Bike: yeah the main idea is that you call like httpRequest(url_to_fetch, function_to_call_with_the_result)
00:48:12 <kmc> rather than result = httpRequest(url)
00:48:16 <Sgeo_> If there was another language on top, presumably it could do CPSing automatically
00:48:27 <kmc> and that lets it return control to the event-based IO manager
00:48:34 <shachaf> , function_to_call_if_you_couldn't_fetch_the_result
00:48:45 <kmc> i.e. a thing that calls select() over and over and calls callbacks
00:49:16 <Bike> do they actually refer to them as continuations at some point?
00:49:36 <Sgeo_> Doesn't C# have some automatic CPS-ing asyncish thing?
00:49:49 <shachaf> Coroutines would be good enough for almost everything people tend to want continuations for.
00:49:58 <Bike> i think i might have a similar attitude to "continuation" as haskellers seem to have to "monads"
00:50:51 <shachaf> mocontinuations, moproblems?
00:51:01 <Sgeo_> shachaf, unless the coroutines use an idiotic model like Python's used to and I think C# still does? or did around 3.5?
00:51:21 <Sgeo_> Erm, not "modeL"
00:51:38 <shachaf> It's funny how Ruby "for x in xs; f(x); end" and Python "for x in xs: f(x)" are doing two completely different things.
00:51:58 <elliott> continuations are overrated -- OLEG KISLEYVO 2012
00:52:08 <Sgeo_> *undelimited
00:52:34 <elliott> than kyou sgeo
00:52:37 <elliott> for correcting me on what oleg said
00:52:43 <elliott> i had no idea as my incredibly serious citation indicates
00:53:04 <Sgeo_> Well, I've read his discussions a while ago
00:53:17 <Sgeo_> So I just get the impression as to his general attitude
00:53:39 -!- monqy has quit (Ping timeout: 276 seconds).
00:55:21 -!- monqy has joined.
00:56:10 <Fiora> um. does anyone here know semiconductor stuff well?
00:56:51 <kmc> try ##electronics?
00:56:55 <kmc> it's kind of a wild place
00:57:03 <kmc> people may attempt to bite you
00:57:07 * Sgeo_ vaguely wonders if Kernel could be sensibly implemented as a Racket language
00:57:12 <Bike> does it have Feather
00:57:26 <Bike> Sgeo_: you can redefine function application, right? that oughta be it
00:57:27 <kmc> i'm interested to hear the question even if i won't know the answer
00:57:34 <Sgeo_> Bike, yes
00:57:51 <Bike> so just make an "operative" class/type/whatever and do the obvious from there
00:58:16 <Fiora> I was looking at the ITRS roadmap stuff on sort of a tangent from reading a paper about domain wall spintronics neuromorphic stuff that was way over my head
00:58:20 <Fiora> http://i.imgur.com/yTE7M.png
00:58:24 <Fiora> and I was wondering
00:58:34 <Sgeo_> Bike, although you can only do so lexically: You can't take a higher-order function defined outside of your language and expect it to use the new function application semantics
00:58:35 <Fiora> 1) why are logic gates so much bigger than sram cells... even though they have fewer transistors?
00:58:47 <Fiora> 2) why are dram cells 10 times smaller than sram cells, even though 1T1C isn't 10 times less than 6T?
00:58:49 <Sgeo_> As in, Racket's map won't just work
00:58:54 <Sgeo_> for example
00:59:44 <Bike> Sgeo_: kernel's map doesn't work on operatives anyway.
01:00:21 <Bike> Sgeo_: but i suppose you could meld it into racket by adding operatives and defining unwrap on racket functions
01:00:50 <Fiora> so um, that's sort of the question
01:01:06 <Fiora> (the origin of this was I wanted to know how much smaller the domain-wall magnets used for time-domain integration in the paper were compared to the capacitors in DRAM)
01:01:37 <Fiora> and then I kind of got lost in ITRS documents
01:01:55 <kmc> is it because DRAM cells pack better?
01:02:12 <Fiora> maybe? but like, I'd want to know why >_<
01:02:17 <kmc> is it the actual area of a cell or the average area of n cells for large n, including interconnect?
01:02:34 <Bike> basically fiora wants someone to talk at her for a few minutes, i think
01:02:37 <Fiora> http://www.itrs.net/Links/2011Winter/1_ORTC_Allan.pdf page 15
01:02:43 <Fiora> um... . possibly bike <_<;
01:03:06 <Fiora> it's "area per bit" so I'd guess it's average area of n cells
01:03:32 <kmc> yeah i definitely don't know enough about this
01:03:32 <kmc> sorry
01:03:41 <Fiora> yeah I didn't expect anyone to <_> but I have no idea where I'd learn this
01:03:48 <Fiora> semiconductors are black magic
01:08:04 <nooga> z
01:08:05 <lambdabot> nooga: You have 2 new messages. '/msg lambdabot @messages' to read them.
01:08:46 <shachaf> `welcome nooga
01:08:48 <HackEgo> nooga: 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.)
01:09:20 <shachaf> I need help not falling asleep.
01:09:26 <nooga> shachaf? :F
01:10:00 <kmc> Fiora: seriously, you draw mysterious patterns on a crystal and then bathe it in dangerous potions
01:10:09 <elliott> Bike: zepto's map worked on operatives
01:10:12 <kmc> and this allows you to animate dead matter
01:10:14 <elliott> more reasons zepto is the greatest
01:10:16 <shachaf> kmc: Isn't that just regular magic?
01:10:26 <Bike> wtf is zepto
01:10:39 <shachaf> @google zepto
01:10:40 <lambdabot> http://zeptojs.com/
01:10:41 <lambdabot> Title: Zepto.js: the aerogel-weight jQuery-compatible JavaScript library
01:11:06 <elliott> Bike: zepto
01:11:08 <Bike> "UglifyJS"
01:11:17 <elliott> monqy: tell the people about the zepto
01:11:39 <monqy> uh
01:11:46 <monqy> zepto is elliott 's department
01:12:16 -!- TeruFSX has joined.
01:12:30 -!- ais523 has quit.
01:13:20 <Bike> hm, you know, i don't know why kernel's map doesn't work on operatives anyway
01:15:06 <elliott> my map literally just consed up like
01:15:15 <elliott> (list (f firstelem) (f secondelem) (f thirdelem))
01:15:17 <elliott> and evaluated that
01:15:25 <elliott> so it would work if you redefined list and work no matter what f is
01:15:51 <Bike> no it wouldn't, if f was an operative it would pass "firstelem" literally
01:15:53 <Bike> unless i misunderstand
01:16:15 <kmc> yeah that's trouble
01:16:26 <elliott> Bike: right
01:16:27 <elliott> that's the point!
01:16:35 <elliott> so if you had an operative that like evaluated its argument twice and returned the second result
01:16:45 <elliott> (map dothat '((print 1) (print 2) (print 3)))
01:16:46 <elliott> would work
01:16:53 <elliott> is this a horrific mess? no. fuck you. it's zepto
01:17:02 <Bike> the (define call (f x) (f x)) (call quote) => x example from a paper linked in shutt's thesis was pretty great
01:17:35 <elliott> (define call (f) (f x)), no?
01:17:41 <Bike> oh, yes
01:17:50 <elliott> Bike: oh right iirc my "eval" also used the "map" in scope
01:17:55 <elliott> so if you redefined map, eval's behaviour would change
01:17:56 <Bike> and shutt's just like "well that's a type problem"
01:18:03 -!- nooga has quit (Ping timeout: 276 seconds).
01:18:15 <elliott> so basically the implementation details of absolutely everything were exposed
01:18:23 <Bike> awesome, i love implementation details
01:29:28 <Sgeo_> Would it be better to try to implement pure Kernel or just a Kernel-like language
01:29:33 <Sgeo_> If it were to be a Racket language
01:30:05 <Bike> i dare you to implement guard-continuation
01:30:07 <Bike> double dog dare you
01:30:42 <Sgeo_> I don't remember Kernel that well
01:32:20 <Bike> it's like usual try/catch or unwind-protect or dynamic-wind or whateverthefuck, except you can have it work backwards too!
01:39:06 -!- Gracenotes has quit (Remote host closed the connection).
01:40:37 <zzo38> What does guard-continuation mean?
01:42:55 <Bike> the spec entry's a few paragraphs long so i'll leave it to you to check the spec yourself
01:46:33 <zzo38> What kind of commands would you expect that a second kind of C preprocessor should include?
01:55:24 -!- Gracenotes has joined.
02:17:11 -!- Arc_Koen has quit (Quit: The struct held his beloved integer in his strong, protecting arms, his eyes like sapphire orbs staring into her own. "W-will you... Will you union me?").
02:26:55 -!- oerjan has quit (Quit: Ribbit).
02:34:12 -!- oerjan has joined.
02:43:46 -!- Phantom__Hoover has joined.
02:43:56 -!- Deewiant_ has joined.
02:44:38 -!- Phantom_Hoover has quit (*.net *.split).
02:44:39 -!- Deewiant has quit (*.net *.split).
02:55:31 <quintopia> @ask ais523 what if you synchronized on a cell two away, leaving a blank cell next to the flag? it will take the enemy one extra cycle to get to the flag because it has to test the empty one.
02:55:31 <lambdabot> Consider it noted.
02:56:08 <Sgeo_> zzo38, I don't want to think about C preprocessing
02:56:26 <Sgeo_> Why would I want to write in C?
02:56:39 <Sgeo_> Well, I guess there are some circumstances
02:58:24 <Sgeo_> Wait, Kernel uses call/cc?
02:58:25 <Sgeo_> :/
02:58:56 <Bike> well yeah, it's based on scheme innit
02:59:11 <Bike> i guess shutt hasn't yet heard the gospel of oleg
03:40:51 -!- Phantom__Hoover has quit (Ping timeout: 248 seconds).
03:44:14 -!- SirCmpwn has joined.
03:44:44 <SirCmpwn> working on some code in brainfuck that's not quite working properly
03:45:00 <SirCmpwn> https://gist.github.com/d57c7a6722a736127c06
03:45:11 <SirCmpwn> a second pair of eyes would be useful
03:46:31 <SirCmpwn> the loop is designed to get all values to the nearest power of ten
03:46:49 <SirCmpwn> and after saying that, I immediately realized my problem and fixed it.
03:52:58 <shachaf> http://translate.google.com/#en/fr/filled%20with
03:53:26 <monqy> ah, so that makes its way here
03:53:29 <monqy> very good
03:53:55 <shachaf> monqy: oh no
03:53:58 <shachaf> am i "late 2 the party"
03:54:12 <monqy> idk i just heard about it earlier today
03:54:17 <monqy> and by heard about i mean heard
03:55:06 <shachaf> with your ears??
03:55:07 -!- carado has quit (Ping timeout: 246 seconds).
03:55:13 <monqy> yeah
04:02:40 <oerjan> shachaf: um what's the point of it? the only thing i can think of is that it looks _slightly_ like empty
04:04:34 -!- copumpkin has quit (Ping timeout: 260 seconds).
04:04:38 * oerjan sees "rempli d'" as the translation, fwiw
04:05:12 <shachaf> oerjan: Oh, click the text-to-speech button.
04:05:16 <shachaf> (On the English.)
04:05:16 -!- copumpkin has joined.
04:07:25 <oerjan> ok is it just about the pronunciation being awful?
04:07:41 <monqy> I hear it doesn't work for everyone
04:07:44 <elliott> it seems to be a US-only bug
04:07:49 <elliott> which makes sense because america sucks?
04:07:56 <elliott> deep political commentary from google
04:07:56 <monqy> um but the bug is amazing
04:08:03 <oerjan> aww :(
04:08:04 <monqy> => america best????
04:08:29 <elliott> monqy: counterpoint: you suck?
04:08:34 <oerjan> i just hear someone saying thilth with
04:08:43 <oerjan> or thereabouts :P
04:10:21 <shachaf> oerjan: Does mplayer 'http://translate.google.com/translate_tts?ie=UTF-8&q=filled%20with&tl=en&total=1&idx=0&textlen=11&prev=input' also not do it?
04:11:53 <elliott> just says "filled with" in a male voice
04:11:53 <quintopia> shachaf: hilarious
04:12:12 <shachaf> http://slbkbs.org/filledwith.mp3
04:12:22 <shachaf> I have no idea whether that's actually mp3.
04:12:28 <shachaf> If it's not then fix it.
04:12:53 <elliott> is that heavily compressed or something because
04:12:58 <elliott> wow my voice is so much smoother
04:13:28 <shachaf> Maybe it's not mp3
04:13:37 <elliott> here's what I get:
04:14:26 <elliott> http://esolangs.org/filledwith.mp3
04:14:44 <shachaf> MISUSE OF ESOLANGS.ORG HOSTING FUNDS
04:14:53 <monqy> doesnt sound any smoother to me
04:15:00 <monqy> also much less amazing???wheres the ipad praise
04:15:12 <shachaf> imo monqy makes a good point
04:15:24 <elliott> it somehow sounds less smooth in chrome
04:15:25 <shachaf> where's the drama
04:15:26 <elliott> compared to mplayer
04:16:14 <oerjan> shachaf: wut :P
04:16:25 <elliott> shachaf: monqy: http://esolangs.org/ipad.mp3
04:16:51 <shachaf> elliott: uhhh that's really bad tts
04:17:03 <shachaf> worst tts??
04:17:31 <shachaf> "filled with so much drama, gee now praises the eye pad"
04:17:38 <shachaf> what does that even mean
04:17:40 <elliott> i'm sure monqy likes it...
04:17:50 <monqy> be careful with that prosody
04:17:54 <monqy> you could poke someones eyes out!!!
04:17:55 <shachaf> elliott: Also do you have to do the fake user agent thing when you wget it?
04:18:18 <elliott> yes
04:18:21 <elliott> --user-agent=
04:18:28 <zzo38> In my own computer design, executables are headerless and are loaded into address zero, after the contents of the file is the parameter, and the rest is initialized to zero. Would it be useful to add a ELF section for this parameter so that some compilers might use this?
04:18:30 <elliott> i don't even fill in a user agent
04:18:32 <elliott> 2 radical
04:19:06 <shachaf> elliott: That's what I did too.
04:20:10 <shachaf> elliott: in the future please say: ⼆
04:23:45 <shachaf> i love ipads
04:23:47 <shachaf> they are so easy
04:24:09 <elliott> kmc: "If I ignore technical debt, backwards compatibility, and established code (which I lumped together as "trivial reasons" ;))"
04:25:43 <shachaf> is this the game where we see something on the internet that would make kmc unhappy if he read it, so we quote it in the channel so that it does?
04:25:52 <shachaf> i love that game!!
04:26:02 -!- DHeadshot has quit (Read error: Connection reset by peer).
04:26:29 -!- DHeadshot has joined.
04:31:12 -!- oerjan has quit (Quit: Good night).
04:31:43 <shachaf> oerjan: If you're so asleep, how come you're reading this message?
04:32:39 <coppro> zzo38: make it so that ELF is a magic instruction which processes an ELF executable
04:32:50 <coppro> so executables are technically headerless but ELF works fine
04:34:14 <zzo38> coppro: I probably could, but I don't want to, and it is not at all what I meant; I meant when compiling and linking executables, it should know where the parameter section is. The final result of the compiling would be headerless file, though.
04:48:36 -!- DHeadshot has quit (Read error: Connection reset by peer).
04:52:52 -!- DHeadshot has joined.
04:54:56 <Fiora> Sgeo_: update
04:55:17 <Sgeo_> Fiora, er, no?
04:55:46 <Sgeo_> I distinctly remember pinging everyone a while ago, and there hasn't been an update since then
04:55:56 <Sgeo_> Unless that was an earlier update and then I saw a later update and forgot
04:56:28 <Fiora> oh. I missed it then :<
04:56:38 <Fiora> oops, sorry.
04:57:54 <shachaf> Sgeo_, Fiora: update
04:58:28 <coppro> lol
04:59:07 <shachaf> Sgeo_, Fiora: So it's that one comic thing, right?
04:59:11 <shachaf> Why do you read it?
04:59:34 <Sgeo_> Because it's awesome? Does there need to be a reason to do something beyond finding it enjoyable?
04:59:48 <shachaf> No.
04:59:52 <shachaf> So why do you find it enjoyable?
05:01:09 <Fiora> ummm let's see
05:01:12 <Fiora> homestuck is wonderful because
05:01:37 <Fiora> it has really great characters I care about, it's legitimately funny and has good writing, it's fun to talk about with my friends who follow it and fangirl over the characters and get all excited about the updates
05:01:55 <Sgeo_> Intricate plot ripe for speculation, awesome music when flashes come out. I like plotty stuff more, but there's humor
05:02:19 <Fiora> and the fandom is huge and creates tons of wonderful things
05:02:59 <Fiora> also shipping
05:03:36 <coppro> shipping is stupid
05:03:50 <shachaf> My sister is apparently into that.
05:03:58 <Fiora> and the complexities of troll romance make shipping even more fun than it already is
05:04:22 <Fiora> there's also stuff like MSPARP/Pesterchum for roleplay and everything
05:05:30 <coppro> and homestuck really doesn't lend itself to shipping :/
05:05:35 <coppro> at least, not good shipping
05:05:38 <coppro> people will ship anything
05:06:59 <Fiora> ... it's one of the best of any fandom I've been part of, but ...
05:07:48 <Fiora> if shipping isn't your thing you don't have to do it :3
05:07:57 <shachaf> I should ask Fandom_Hoover.
05:08:34 <coppro> Fiora: the fandom loves shipping for some dumb reason
05:08:42 <coppro> (troll romance, as you pointed out, probably helps)
05:08:44 <Fiora> because it's fun!
05:08:51 <shachaf> monqy: Do you "read" it?
05:08:53 <coppro> but it doesn't have the depth of character interactions that make it interesting
05:09:18 <Bike> http://amultiverse.com/files/comics/2011-12-30-Horace-Greenstein-Scary-Owl-Lawyer-Goes-Shopping.png
05:09:23 <Fiora> it has a lot more content than like, a typical anime or TV series I guess?
05:09:29 <Fiora> but you're right that a lot of the minor characters don't get enough attention :<
05:09:33 <Fiora> nepetaaaaa
05:10:10 <coppro> like, if I wanted to get into shipping, I'd pick a slice of life comic
05:10:46 * Fiora dumps a large box of interchangable seinen slice of life manga on coppro
05:11:24 <quintopia> Bike: the continuity issue on the hand holding the boy's arm PROVES this is happening in an alternate dimension
05:12:09 <Bike> quintopia: what continuity issue
05:12:15 <coppro> quintopia: http://mspaintadventures.com/?s=6&p=003249
05:21:41 -!- TeruFSX has quit (Ping timeout: 252 seconds).
05:23:36 -!- drlemon has joined.
05:23:56 <drlemon> Hello there people. I am a stranger.
05:24:15 <monqy> shachaf: what's it
05:24:20 <monqy> hi drlemon
05:24:36 <drlemon> Shall i introduce myself?
05:24:41 <monqy> sure
05:24:50 <Deewiant_> `welcome drlemon
05:24:52 <HackEgo> drlemon: 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.)
05:25:42 <elliott> `WELCOME DRLEMON
05:25:44 <HackEgo> DRLEMON: 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.)
05:25:52 <monqy> elliott: do you know what it is
05:25:54 <drlemon> I'm a teenager who is a total programming nerd. I don't know any languages because it's too hard to choose. Python or ruby or java.
05:26:15 <elliott> how 'bout feather
05:26:26 <monqy> (canned laughter???)
05:26:30 <drlemon> I saw the esoteric programming language wiki and nerded out, and i figured i would say hi to the community.
05:26:42 * Fiora wavies?
05:26:52 <Bike> try the beef
05:28:46 <kmc> don't try the beef
05:29:05 <monqy> what's the beef is it slang
05:29:22 <Bike> Slang is beneath me.
05:29:50 <monqy> is sarcasm beneath you too??just making sure here
05:30:13 <Bike> Sarcasm is the enemy.
05:31:13 <Sgeo_> drlemon, after choosing one, you can always learn another
05:31:27 <Sgeo_> Although I do know that feeling, of wanting a single fixed choice
05:31:29 <shachaf> After you choose one, you're doomed to spam #esoteric about it forever.
05:31:32 <shachaf> So choose wisely.
05:31:36 <shachaf> (Also Clojure is taken.)
05:31:53 <Fiora> programming is actually like pokemon
05:31:58 <Fiora> at the start, you have to pick one of three languages
05:32:04 <Fiora> and even though it evolves over time, you're stuuuuck!
05:32:06 <drlemon> OK, now getting my search for language out of the way, How is everyone?
05:32:15 <shachaf> `WeLcOmE drlemon
05:32:18 <HackEgo> DrLeMoN: 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.)
05:32:26 <Bike> fiora: i call [female symbol]
05:32:36 <Fiora> I call snivy, snivy is the cutest
05:32:49 <shachaf> @quote psnively
05:32:49 <lambdabot> psnively says: All your Data.Foldable are belong to base.
05:33:16 <drlemon> Why is hackego telling me to read the wiki?
05:33:23 <elliott> he really wants you to
05:33:28 <elliott> hackego's a bit obsessed with the wiki
05:33:29 <elliott> don't mind him
05:33:32 <shachaf> drlemon: Have you read the wiki?
05:33:38 <shachaf> If you read it, you would understand.
05:33:45 <drlemon> YES. i have multiple tabs open.
05:33:52 <drlemon> all of them with the wiki
05:34:06 <monqy> find any good pages? :-)
05:34:13 <shachaf> Bike, Fiora, Sgeo_, monqy: have you considered switching to a seven-character nick?
05:34:14 <elliott> `welcome drlemon
05:34:15 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcome: not found
05:34:21 <shachaf> elliott.............
05:34:25 <elliott> `echo sorry
05:34:26 <HackEgo> sorry
05:34:29 <elliott> `WELCOME drlemon
05:34:29 <drlemon> I like the billiardballmachine
05:34:31 <HackEgo> ​DRLEMON: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMA
05:34:39 <monqy> shachaf: what
05:34:42 -!- Bike has changed nick to Bicycle.
05:34:49 <shachaf> Bicycle++
05:34:52 <drlemon> Is hackego a bot or just REALLY persistant?
05:34:53 -!- Fiora has changed nick to Fiorara.
05:34:59 <elliott> just really persistent
05:35:01 <shachaf> Bicycle: Note that karma is tied to nicks, so if you switch to your old nick you lose the karma.
05:35:02 <elliott> sorry about him
05:35:04 <shachaf> Fiorara++
05:35:20 <shachaf> HackEgo: Come on, you're being rude.
05:35:21 -!- Sgeo_ has changed nick to Sgeocom.
05:35:25 <shachaf> Sgeocom++
05:35:36 <Fiorara> drlemon: hackego is a bot, `welcome is one of its commands
05:35:41 <Bicycle> drlemon: if you do some forensics you'll note a mysterious abundance of grave accents hanging out with hackego. they're bad folks, them graves
05:35:42 <lambdabot> drlemon: Check out our wiki! http://esolangs.org/wiki/Main_Page
05:35:42 <drlemon> I feel extremely WELCOMED TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT!
05:36:10 <Bicycle> enthusiastic welcomings are a national sport here. why, fiorara here was welcomed for almost two days straight.
05:36:12 <Fiorara> they're just playing around <_<; don't mind the silliness
05:36:15 <Fiorara> ;-;
05:36:23 <Fiorara> that seems to keep happening to me
05:36:27 <monqy> shachaf: are you abusing your privilages
05:36:39 <elliott> Fiorara: it's important to make people feel welcome
05:36:54 <shachaf> monqy: That was elliott this time.
05:36:59 <monqy> elliott...
05:37:04 <lambdabot> drlemon: Look at our wonderful wiki! http://www.haskell.org/haskellwiki/Haskell
05:37:13 <elliott> that one was shachaf
05:37:18 <monqy> shachaf...
05:37:19 <Bicycle> lambdabot............
05:37:24 <shachaf> @wiki
05:37:24 <lambdabot> http://www.haskell.org/haskellwiki/
05:37:31 <shachaf> @wiki wiki
05:37:32 <lambdabot> http://www.haskell.org/haskellwiki/wiki
05:37:46 <shachaf> `welcome Fiorara
05:37:48 <HackEgo> Fiorara: 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.)
05:37:52 <Fiorara> oh no not again
05:37:59 <shachaf> Again?
05:38:05 <monqy> hackego Fiorara doesn't need welcoming
05:38:06 <shachaf> I don't think we've ever `welcomed Fiorara before.
05:38:07 <monqy> drlemon does
05:38:08 <drlemon> `echo i am sorry for bothering you drlemon
05:38:09 <HackEgo> i am sorry for bothering you drlemon
05:38:16 <elliott> i am sorry for bothering you drlemon
05:38:17 <shachaf> `? monqy
05:38:19 <HackEgo> The friendship monqy is an ancient Chinese mystery; ask itidus21 for details.
05:38:19 <Bicycle> you're a natural
05:38:20 <elliott> cool game this
05:38:35 <Bicycle> `? itidus21
05:38:36 <HackEgo> itidus21 just made some instant coffee.
05:38:41 * Bicycle nods
05:38:45 <shachaf> `echo symmetric lenses > profunctor lenses
05:38:46 <HackEgo> symmetric lenses > profunctor lenses
05:39:14 <Sgeocom> Dear god why is elliottcable talking about the IRC nick thing
05:39:24 <elliott> Sgeocom: what
05:39:27 <drlemon> `echo all the members of this chatroom should reimburse him for the annoyance i have caused.
05:39:29 <HackEgo> all the members of this chatroom should reimburse him for the annoyance i have caused.
05:39:36 <Bicycle> oh i think i saw elliotcable the other day... somewhere
05:39:43 <elliott> Sgeocom: i need details
05:39:53 <Fiorara> um, what currency should the repayment be in
05:40:10 <Fiorara> are hugs okay or do I have to pay in cpu cycles
05:40:11 <drlemon> `echo nevermind
05:40:12 <HackEgo> nevermind
05:40:35 <drlemon> `echo since you have questioned too much...
05:40:36 <HackEgo> since you have questioned too much...
05:40:44 <shachaf> Fiorara: hugs are made of cpu cycles
05:40:46 <drlemon> `WELCOME FIORARA!!!
05:40:48 <HackEgo> FIORARA!!!: 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.)
05:40:55 <shachaf> drlemon...
05:41:07 <drlemon> I'm a monster. A MONSTER!
05:41:51 <Bicycle> wow elliotcable's going wacky
05:43:13 -!- TodPunk has quit (Read error: Connection reset by peer).
05:43:31 -!- TodPunk has joined.
05:43:37 <zzo38> Who should reimburse who? Who happens what?
05:43:47 <monqy> yes
05:43:50 <Bicycle> I think zzo needs a hug, Fiorara.
05:43:51 <monqy> exactly
05:43:53 <monqy> nail on the head
05:44:08 <shachaf> i need a hug
05:44:11 <shachaf> from monqy :'(
05:44:35 <zzo38> Do you need a nail on your head too?
05:44:44 <shachaf> from monqy
05:44:48 * drlemon hugs zzo, respectfully.
05:45:19 <shachaf> zzo38: Does the 'z' in your nick stand for "Zermelo"?
05:45:40 <zzo38> shachaf: No, it is just due to last letter of alphabet.
05:46:07 <shachaf> uhh there are letters that come after z in the alphabet
05:46:08 <Bicycle> gotta deal with those Standard Sorting Algorithms
05:46:14 <shachaf> you're just not advanced enough to know about them
05:46:38 <shachaf> I like this new 7-letter-nick trend.
05:46:47 <shachaf> zzo38: You should add two characters to your nick.
05:46:49 <shachaf> zzzzo38?
05:46:57 <shachaf> zzo2038?
05:46:58 -!- zzo38 has changed nick to zzo38__.
05:47:01 <shachaf> That works.
05:47:07 * Fiorara hugs zzo38
05:47:09 <Fiorara> Bicycle: is that good?
05:47:17 <shachaf> Fiorara: zzo38 is gone.................
05:47:36 <Fiorara> I still see him....
05:47:37 <Bicycle> I told her to hug "zzo" though.
05:48:24 <shachaf> (also i think hug means, like, actual hug, not, like, typing the word hug into irc, and stuff)
05:48:43 <Fiorara> I'm guessing zzo is a little far away for that at the moment
05:48:49 <shachaf> Which one of you is using Windows Media Center PC?
05:48:55 <drlemon> He needs a reality check. THIS IS THE INTERNET!!!
05:49:16 <Fiorara> if zzo was close enough for me to actually physically hug him I would be a little bit terrified
05:49:25 <Bicycle> i thought you lived in a city
05:49:30 <Bicycle> maybe zzo is just a few blocks away
05:50:10 <drlemon> You are zzo: directed by m. night shamalan.
05:50:22 <shachaf> `unwelcome drlemon
05:50:23 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: unwelcome: not found
05:50:28 <Fiorara> I live in orange county <_<; not quitea city
05:50:37 <Fiorara> well, I mean, I'm in a city, but, it's not like, LA
05:50:49 <shachaf> LA is a city?
05:50:53 <Fiorara> and LA isn't really a city either, it's more like an expansive suburb
05:50:56 <Bicycle> I thought you meant that you didn't live in a city called Quitea
05:51:03 <Fiorara> like someone took a scoop of suburb ice cream
05:51:09 <Fiorara> and just like, dropped it onto the map of southern california
05:51:13 <Fiorara> and let it melt for a while
05:51:20 <Bicycle> that sounds quite disgusting
05:51:23 <shachaf> Fiorara: Did you ever go to Galco's Soda Pop Stop in Los Angeles?
05:51:25 <zzo38__> I live in Canada.
05:51:26 <drlemon> LA is cool! As a resident, i enjoy it.
05:51:26 <Fiorara> now I want ice cream
05:51:26 <Bicycle> which... pretty much jives with what i know of LA
05:51:44 <Fiorara> shachaf: ummmm never heard of it
05:51:48 <shachaf> !!
05:51:57 <shachaf> I was in Los Angeles a few months ago.
05:52:35 <shachaf> I mostly got a feeling of "I don't want to live in Los Angeles" from it.
05:53:06 <Fiorara> yeah, I don't really like the more downtownish areas either <_> the suburbs are okay though
05:53:07 <Bicycle> i mostly got a feeling of "holy god who designed these roads"
05:53:34 <shachaf> You'd be better off living in San Francisco.
05:53:46 <Fiorara> SF is pretty
05:54:12 <shachaf> Or East Palo Alto!
05:54:14 <drlemon> DON'T DISS MY CITY
05:54:18 <shachaf> Today I was worried that I would get murdered.
05:54:21 <shachaf> But it didn't happen.
05:54:53 <Bicycle> That's good. I hear murder is a problem.
05:58:01 <drlemon> Murdered where?
05:59:22 -!- TeruFSX has joined.
06:00:03 -!- drlemon has quit (Quit: Page closed).
06:03:06 -!- n0hx has joined.
06:05:16 <Fiorara> I think you might have scared him off
06:05:18 -!- Fiorara has changed nick to Fiora.
06:05:45 -!- Bicycle has changed nick to Bike.
06:05:48 <Bike> Murder is pretty scary.
06:05:59 <n0hx> ^^this
06:08:48 <elliott> `WELCOME n0hx
06:08:50 <HackEgo> N0HX: 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.)
06:09:02 <n0hx> thx yo ~~
06:09:45 <Bike> elliott: hey why doesn't that link work yet
06:11:36 <elliott> b/c i'm lazy
06:11:50 <n0hx> what are you guys upto on this fine evening
06:11:53 <n0hx> im bored
06:11:56 <n0hx> cruising ircs
06:12:11 <elliott> apparently we scared someone away earlier
06:12:14 * Fiora dragon quest IX?
06:12:18 <n0hx> damn yo
06:12:19 <elliott> i think the problem is that we weren't welcoming enough
06:12:26 <elliott> what do you think Fiora
06:12:41 <Fiora> I really don't think that was the problem ._.
06:12:47 <Sgeocom> Who here actually deploys esoteric languages, exactly?
06:12:53 <Bike> god
06:13:10 <n0hx> esoteric languages
06:13:11 <n0hx> explain
06:13:13 <n0hx> pl0x
06:13:19 <Fiora> `welcome n0hx
06:13:20 <HackEgo> n0hx: 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.)
06:13:26 <Sgeocom> Do you know anything about programming?
06:14:02 <Bike> n0hx: like Aklo.
06:14:03 <n0hx> i program java at a low level
06:14:18 <Sgeocom> Not really sure when Java can be considered... oh.
06:14:19 <monqy> low level java. hard core.
06:14:35 <n0hx> not rlly
06:14:35 <n0hx> :(
06:14:37 <Sgeocom> n0hx, I assume you mean "a little Java"?
06:14:54 <Sgeocom> n0hx, in computing discussions, "low level" usually means without as many convenient tools
06:14:55 <n0hx> yeah
06:14:59 <Sgeocom> Closer to the hardware, for example
06:15:00 <monqy> um havent you heard of Systems Java
06:15:02 <n0hx> not like close to assembly level java
06:15:03 <n0hx> lol
06:15:15 <Sgeocom> More direct
06:15:35 <n0hx> yeah i know, my wording was bad there
06:15:37 <Bike> uses java to program machine instruction decoders
06:15:40 <n0hx> i know basic java is more what i mean
06:15:41 <Sgeocom> Anyways, an esoteric programming language is a language created not necessarily with the intention of being practical, but to, often, explore an idea or concept, or just for fun
06:16:18 <elliott> the wiki literally explains this guys
06:16:19 <n0hx> but "why"
06:16:20 <elliott> `welcome n0hx
06:16:21 <HackEgo> n0hx: 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.)
06:16:23 <elliott> ok there's a link that works
06:16:28 <Bike> n0hx: because it's there
06:16:31 <Sgeocom> n0hx, because it's fun. Because it's interesting.
06:16:37 <elliott> its not fun or interesting btw
06:16:42 <n0hx> lol
06:17:02 <Sgeocom> There are also interesting mathematical implications that can be explored
06:17:42 <n0hx> okay
06:17:49 <n0hx> so you guys write esoteric languages
06:17:55 <n0hx> or employ them?
06:18:08 <monqy> no we just welcome guys to #esoteric
06:18:09 <Bike> I'm a professional Aklo-Basque translator.
06:18:17 <zzo38__> n0hx: Depends on what we are doing at the time
06:18:28 <monqy> Sgeocom: interesting mathematical implications?
06:18:32 <elliott> we eploy them for below minimum wage
06:18:35 <elliott> it's basically slave labour
06:18:41 <zzo38__> And, yes, we do mathematics too.
06:18:41 <n0hx> that sounds lucrative
06:18:57 <Sgeocom> monqy, the turing-completeness of brainf*ck
06:19:04 <n0hx> cool
06:19:06 <Sgeocom> Only censoring because I don't know how n0hx treats language
06:19:08 <n0hx> i have mad respect
06:19:12 <n0hx> i look at rocks for a living lol
06:19:17 <monqy> what an interesting mathematical implication(????????????????)
06:19:35 -!- TodPunk has quit (Read error: No route to host).
06:19:45 <Bike> monqy: no, he means mathematical implication that is interesting. you know, like curry-howard things.
06:19:54 -!- TeruFSX has quit (Ping timeout: 264 seconds).
06:20:40 <monqy> ????????????????????????????????????????????????????????????sgeo
06:20:54 -!- TodPunk has joined.
06:21:13 <zzo38__> You look at rocks for a living? OK, if that is what you want!
06:21:41 <n0hx> haah yeah
06:21:43 <n0hx> geology
06:22:08 <TodPunk> My boss's wife is a geologist. They go out many weekends to the middle of nowhere and pick up rocks
06:22:30 <monqy> one time I picked up a rock but I think I put it back down
06:22:41 <monqy> another time someone gave me a rock and I still have it to this day
06:22:44 <TodPunk> he says every flat surface in their house has rocks on it. On the piano? Yup. Linen closet? Right there with the linens. Bathroom? Rocks.
06:22:46 <monqy> forget where I put it tho
06:24:09 <Bike> rocks are pretty baller imo
06:24:17 <zzo38__> Putting rocks on the piano might affect the sound. So, it can be used if you play rocky piano music.
06:24:51 <zzo38__> (Especially if it is on the strings.)
06:31:59 -!- TodPunk has quit (Read error: No route to host).
06:33:03 -!- TodPunk has joined.
06:44:01 -!- asiekierka has quit (Excess Flood).
06:44:09 -!- asiekierka has joined.
06:46:05 -!- SirCmpwn has quit (Excess Flood).
06:48:39 <elliott> .com
06:50:09 -!- hagb4rd has joined.
06:52:09 -!- SirCmpwn has joined.
07:05:13 <Sgeocom> It's short for Comet
07:05:19 -!- n0hx has left ("Ex-Chat").
07:05:26 <Sgeocom> ...
07:06:47 <elliott> that wasnt really directed at you
07:11:27 <Sgeocom> who/what was it directed at?
07:12:17 <monqy> btw whats this interesting mathematical implications thing
07:13:41 <elliott> everything
07:13:52 <Sgeocom> You can ask interesting questions like whether an esolang is TC, or... I don't know
07:14:44 <monqy> the interesting mathematical implication that you can write a brainfuck program that can do (thing): "very interesting" -a mathematician
07:15:21 <shachaf> monqy: are you a mathematician
07:15:36 <monqy> depends on what mathematician means...
07:15:51 <Sgeocom> It's interesting that Gravity is not computable, isn't it?
07:16:16 <shachaf> Sgeocom: uhhhh newton computed Gravity ages ago
07:16:27 <shachaf> and he wasn't even a mathematician
07:16:27 <monqy> Sgeocom: shachaf has a good point
07:16:58 <shachaf> thank you monqy
07:17:24 <shachaf> good point #2: I'm really tired :-(
07:18:07 <Bike> Sgeocom: isn't that just newtonian gravity which doesn't work anyway
07:18:20 <Bike> ("just")
07:18:52 <Sgeocom> I'm talking about the esolang
07:19:16 <Bike> yes but isn't it based on newtonian gravity
07:19:19 <shachaf> newtonian gravity works as proved by einstein
07:19:21 <Bike> not loop quantum gravity, say
07:19:22 <shachaf> g=mc²
07:19:27 <shachaf> qed??
07:19:49 <Sgeocom> I have no idea about the math behind gravity
07:19:50 <monqy> :²)
07:19:57 <elliott> :½)
07:19:59 -!- Nisstyre-laptop has quit (Quit: Leaving).
07:20:20 <Sgeocom> Also, I can't seem to find the gravity spec
07:20:23 <shachaf> the math behind gravity
07:20:26 <shachaf> Sounds like a conspiracy theory.
07:20:37 <monqy> Sgeocom: have you tried: http://esolangs.org/wiki/Gravity
07:20:48 <Bike> Sgeocom: differential equations, everywhere
07:20:56 <monqy> http://www.safalra.com/programming/gravity/ (dead link)
07:21:18 <Sgeocom> http://safalra.com/programming/index/
07:21:35 <Sgeocom> Clicking Esoteric languages makes my browser say something about a redirect loop
07:21:39 <Bike> "The scripting language widely used in web pages"
07:21:44 <monqy> The webpage at http://safalra.com/programming/index/esoteric-languages.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php/ has resulted in too many redirects.
07:21:52 <elliott> .php
07:21:52 <Bike> that's my kind of url
07:22:11 <elliott> this reminds me of: http://esolangs.org/wiki/Befunge/index.php, http://esolangs.org/wiki/Brainfuck/w/index.php%3Ftitle%3DTalk:Brainfuck/index.php
07:22:17 <elliott> my ego.... its unparalleled
07:22:32 <Bike> that is amazing
07:22:48 <monqy> elliott: reminds me of fancy l
07:23:05 <elliott> Bike: those were actual spam pages made by actual spam bots btw
07:23:12 <elliott> too beautiful not to turn into languages
07:23:22 <elliott> monqy: cf. http://esolangs.org/wiki/Talk:Befunge/index.php
07:23:28 <Bike> blah blah blah shut up christ
07:23:46 <elliott> Bike: you suck too..........................................
07:23:48 <elliott> `WELCOME BIKE
07:23:55 <HackEgo> BIKE: 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:24:05 <elliott> thats a loud welcome that means not actually welcome
07:24:37 <Bike> no it's in the talk page
07:24:47 <elliott> oh
07:24:49 <elliott> well you still suck tho
07:25:11 <monqy> Bike no it's not
07:25:13 <shachaf> good night.........................
07:25:14 <shachaf> monqy
07:25:18 <elliott> `WELCOME Bike
07:25:20 <HackEgo> ​BIKE: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATIO
07:25:20 <monqy> shachaf
07:25:22 <shachaf> and everyone else i guess??
07:25:32 <shachaf> except for elliott
07:25:38 <Bike> plating the matter in the intervening months I came to consider that Turing devised his machine in the era before computers were expected to store programs (natch) so he included the tape in his definition of the model, and this makes Turing machines models of computations, while the bulk of the study of computability has been on functions which correspond to Turing machines without tapes and blah blah blah this is boring shut up Chris.
07:25:38 <shachaf> elliott doesn't respect Bike
07:25:41 <monqy> Bike: you misspelled "Chris", first name of "Chris Pressey"
07:25:50 <elliott> monqy: um his real name is ZOMGMODULES
07:25:55 <Bike> no, i just said his quote and then put a "t" after it
07:25:56 <monqy> hence quotes
07:25:59 <monqy> pffffff
07:26:10 <elliott> Bike: you decapitalised the C too!!
07:26:26 <shachaf> elliott: The normal laws of capitalization don't hold in this channel.
07:26:28 <Bike> eh it's the same character
07:26:38 <Bike> and i have to make up for my nick being overcapitalized here
07:26:50 <shachaf> Bike: good point
07:26:57 <shachaf> Nicks have to start with a lowercase letter.
07:26:58 <elliott> shachaf: whath appened to good night
07:27:00 <shachaf> Fiora, Sgeocom:
07:27:13 <shachaf> elliott: you ruined the goodness :²(
07:27:17 <Sgeocom> You made me check :(
07:27:37 <shachaf> Sgeocom: UPDATE: Your nick starts with the wrong case of letter.
07:28:03 <Bike> ŝgeo
07:28:47 <monqy> hey remember http://esolangs.org/wiki/Meta_Turing-complete heh heh heh
07:28:59 <shachaf> Did you ever play Zork Zero?
07:29:25 <Bike> monqy: i like the link on "impossible"
07:29:33 <elliott> god should i delete that already
07:29:51 <Bike> «Infix notation is one of the 4 possible ways to describe a program. It is not as powerful as the others, so people usually add parenthesis, which makes it a combined notation (Infix-Surround).» no keep it it's amazing
07:29:52 <monqy> yes
07:30:04 <elliott> Bike: no fuck i loathe those articles
07:30:07 <elliott> loathe
07:30:12 <Bike> «One example is parentheses: they are the identity function of surround notation. In xml, the primary notation is surround.»
07:30:17 <elliott> dogfmldodfsbgfdklndfsk
07:30:25 <Bike> i'm sorry elliott but you're wrong
07:30:54 <monqy> Did you not make Reversible-2D? —ehird 03:46, 29 June 2011 (UTC)
07:30:54 <monqy> I did, but it was stupid.--TehZ 14:48, 29 June 2011 (UTC)
07:31:01 <Sgeocom> Where's the Infix notation one?
07:31:14 <monqy> [[Infix notation]]
07:31:41 <Bike> so does this mean that elliott is ehird
07:31:51 <Sgeocom> yes
07:32:02 <elliott> no
07:32:04 <elliott> that's my brother
07:32:07 <Bike> fuck
07:32:24 <elliott> please don't tell me you know some ehird i hate that guy and i'm not even kidding
07:32:51 <Bike> nah he sucks
07:33:00 <elliott> thanks
07:33:19 <monqy> ther'es another ehird????
07:33:54 <Bike> ehird 2 electric boogaloo
07:33:56 <shachaf> Bike: p.s. elliott is kidding
07:33:58 <elliott> monqy: unfortunately no
07:34:01 <elliott> shachaf: im not
07:34:06 <shachaf> Bike: him and ehird are best friends!!
07:34:27 <Bike> sometimes i feel this channel may not be being totally honest to me
07:34:31 <Bike> i guesss you just don't trust me
07:34:34 <Bike> :'(
07:35:00 <monqy> Unparseable is a language designed to be hard (maybe impossible?) to parse. It is context-sensitive, it REQUIRES you to mix the parser and the interpreter, and it allows you to redefine commands while the program is running. It was created by User:TehZ. I am pretty sure it is multiprogramming.
07:35:03 <shachaf> Bike: we trust you but not Fiora
07:35:30 <Fiora> why don't you trust me :<
07:35:34 <shachaf> monqy: has User:TehZ done anything good
07:35:36 <elliott> monqy: love that shift to first person
07:35:39 <shachaf> Fiora: we trust you, just not Bike
07:35:48 <Bike> shachaf!!!!!
07:35:49 <monqy> shachaf: doubtful
07:36:04 <shachaf> Bike: what..
07:36:16 <Fiora> I'm confused
07:36:56 <elliott> `welcome Fiora
07:36:57 <HackEgo> Fiora: 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:36:59 <elliott> don't worry.
07:37:09 <Bike> welcome, fiora!
07:37:16 <shachaf> `run welcome Bike | sed s/deployment/implementation/
07:37:18 <HackEgo> Bike: Welcome to the international hub for esoteric programming language design and implementation! 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:37:49 <monqy> `run welcome shachaf | sed s/shachaf/what do you have against deployment........
07:37:51 <HackEgo> sed: -e expression #1, char 14: unterminated `s' command
07:37:59 <monqy> woops!
07:38:21 <monqy> tehz's languages are worse than i remember(nb i have no memory of them. i forgot them all. i just remember they were real bad)
07:38:28 <elliott> `delquote 892
07:38:31 <monqy> also his other pages
07:38:34 <HackEgo> ​*poof* <monqy> continuations have a funny problem where something about spaghetti <shachaf> monqy: but wait, i read category theory will save you from spaghetti code because associativity
07:38:37 <monqy> thank you
07:38:49 <shachaf> thank you
07:38:54 <shachaf> 892 is the worst quote
07:39:00 <shachaf> `quote 892
07:39:01 <monqy> `quote 892
07:39:02 <HackEgo> 892) -!- ais523 has parted #esoteric ("someone is going to mention Feather, I know it").
07:39:02 <HackEgo> 892) -!- ais523 has parted #esoteric ("someone is going to mention Feather, I know it").
07:39:08 <monqy> that's not so bad
07:39:11 <elliott> The first person to make an interpreter wins! --TehZ 21:46, 9 May 2011 (UTC)
07:39:12 <elliott> To win what? --Zzo38 00:02, 10 May 2011 (UTC)
07:39:12 <elliott> CAKE! --TehZ 11:41, 11 May 2011 (UTC)
07:39:12 <elliott> Watch out! The cake is a lie! — Timwi 14:01, 15 May 2011 (UTC)
07:39:12 <elliott> No, because according to the previously mentioned required test protocol, we are no longer allowed to lie to you. --TehZ 18:49, 16 May 2011 (UTC)
07:39:12 <monqy> `quote 893
07:39:14 <HackEgo> 893) <Bike> i don't even know anything about feather and i'm getting sick of the time travel jokes
07:39:26 <Bike> shit i love cake
07:39:35 <monqy> some cake is good
07:39:38 <shachaf> elliott: Hmm, zzo38__ redeems TehZ somewhat.
07:39:49 <shachaf> But not enough.
07:40:01 <monqy> http://esolangs.org/wiki/Talk:Bugmaker
07:40:09 <monqy> also http://esolangs.org/wiki/Bugmaker
07:40:29 <Bike> fuck, developers jokes?
07:40:40 <monqy> there's a "Rick's roll" joke in there too
07:40:55 <Bike> fuck
07:41:05 <Sgeocom> What did zzo38__ do to redeem TehZ?
07:41:11 <elliott> guys
07:41:15 <elliott> i think ive just had an epiphany
07:41:26 <Sgeocom> Oh
07:41:33 <elliott> tehz is the greatest esolang auteur of the late 2000s
07:41:37 <Bike> «Hello World: --NOT POSSIBLE--» this should be the topic fyi
07:41:42 <elliott> look at everything he has done
07:41:53 <elliott> can you imagine making something that embodies what it is more than itself
07:41:57 <monqy> truly the documentary should be about him
07:42:04 <monqy> his languages, his ideas, his vision
07:42:13 <Bike> «The language is a functional language, as each rune is a function which can be passed around with the stack and which can be put in variables. However, data can be edited, so some people might not consider it functional.»
07:42:17 -!- mig22_ has joined.
07:42:18 <Sgeocom> Is this the same TehZ? http://www.reddit.com/user/tehz
07:42:21 <elliott> can you not see the ultimate incarnation of the stupid fucking syntactical gimmick brainfuck-esque language in everything he does
07:42:24 <elliott> fucking amen
07:42:25 <elliott> feature the lot
07:42:27 -!- fungot has quit (Ping timeout: 248 seconds).
07:42:34 <shachaf> OK, sleep.
07:42:36 <elliott> fungot was too inspired :/
07:42:37 <Bike> «In runespells, there is a concept of "runes", which are basically functions. Each rune can have 6 variables, called Fa, Rin, Gora, Jyiku, Nahy and Zeha (pronounced FAH, rin, gõ-ra, schiKU, na-HY and zeHA)» holy shit
07:42:51 -!- mig22 has quit (Ping timeout: 276 seconds).
07:42:52 -!- mig22_ has changed nick to mig22.
07:43:13 <monqy> Computational Class / Well, I don't know.
07:43:39 <monqy> Gorpdne (GORP-NEH): End program. (Fun fact: If you reverse "endproG" you get "Gorpdne")
07:43:43 <elliott> Did you not make Reversible-2D? —ehird 03:46, 29 June 2011 (UTC)
07:43:43 <elliott> I did, but it was stupid.--TehZ 14:48, 29 June 2011 (UTC)
07:43:51 <elliott> im pretty sure tehz is art
07:43:56 <monqy> http://esolangs.org/wiki/Useless
07:44:32 <Bike> "Generate a random valid no-input BF program, execute it and interpret the output as an UTM, execute it and interpret the output as a lambda calculus program, execute it and throw away the result" wait make this the topic
07:44:42 <elliott> monqy: first word used to be "An"
07:44:45 <elliott> but then it got ruined :(
07:45:00 <elliott> Bike: shades of Most ever Brainfuckiest Fuck you Brain fucker Fuck
07:45:03 <monqy> originally wasn't in joke languages
07:45:06 <Sgeocom> http://www.reddit.com/r/programming/comments/n2aef/how_async_will_change_our_code_in_c/c35qman?context=3
07:45:17 <Bike> elliott: most ever brainfuckiest fuck is a mere echo of this majesty
07:45:31 <Bike> platform dependant
07:45:41 <monqy> amazing Useless has never been in [[Category:Shameful]]
07:45:45 <Bike> «Will add a command with the name xxx (not the name "xxx", but something with the same name as what is written there)»
07:46:01 <monqy> Every brainbrain-program is a brainfuck-program which takes the source to be compiled as input, and outputs the compiled source (as brainfuck (or brainbrain) code).
07:46:34 <Bike> ℒ feels weirdly dual to this.
07:46:40 <elliott> oh i remember brainbrain
07:46:46 -!- sebbu3 has joined.
07:46:58 <elliott> Bike: you can't mock that line because oerjan wrote it
07:46:58 <monqy> i wonder if tehz has grown up and feels ashamed
07:47:00 <elliott> channel policy
07:47:03 -!- sebbu3 has quit (Changing host).
07:47:03 -!- sebbu3 has joined.
07:47:18 <elliott> i actually think brainbrain is moderately interesting
07:47:20 <Bike> sorry oerjan i'll make it up to you i swear
07:47:23 <elliott> in spite of itself
07:47:53 <Bike> "Gotchas: When you are inside an alternative universe, you can not change anything in another universe."
07:48:08 <SirCmpwn> sweet
07:48:12 <SirCmpwn> my brainfuck IRC bot works
07:48:21 <SirCmpwn> doesn't do much, but it can connect and join a channel
07:48:23 <monqy> sweet what does it do
07:48:24 <monqy> oh
07:48:25 <Bike> oh hey it's you again
07:48:25 <monqy> ok
07:48:27 <Bike> hello you
07:48:29 <SirCmpwn> https://github.com/SirCmpwn/bf-irc-bot/blob/master/irc-bot.bf
07:48:29 <monqy> "you again"
07:48:47 <SirCmpwn> you wire up stdin/stdout to a TCP connection, and it'll work
07:48:51 <Bike> well he's clearly a "you" because he's not me, and he's clearly an "again" because he was here "before"
07:48:51 -!- sebbu has quit (Ping timeout: 248 seconds).
07:48:57 <SirCmpwn> Bike: hello.
07:49:02 <Bike> hello!
07:49:12 <Bike> does it play bfjoust?
07:49:28 <monqy> You can use the commands you've made to create new commands. That might create some ambiguity, so to fix that, the default commands have higher precedence. Not only that, but to avoid circles, you are not allowed to access a command that you have defined before or at the definition point.
07:49:37 <SirCmpwn> it does not, Bike
07:49:49 <SirCmpwn> I just started it today, and half that time was getting a proper brainfuck interpreter set up
07:50:07 <Bike> oh, you had problems with that? i thought bf or whatever it's called was easy enough to use
07:50:17 <monqy> Currently, no one has even bothered looking into how to make an interpreter, so this are none. If you are less lazy than the other people reading this article, please make an interpreter, because I am too lazy.
07:50:23 <Bike> anyway you should have it do that, that is all the rage right now.
07:50:25 <SirCmpwn> sure, but I wrote an interpreter from scratch and used a TCP connection instead of stdin/stdout, so that complicates things considerably
07:50:39 <SirCmpwn> monqy: link
07:50:53 <Sgeocom> Is there no way to call an external program and direct its stdin/stdout around?
07:51:05 <Bike> in regular bf?
07:51:14 <Sgeocom> In a shell where you would call bf
07:51:18 <SirCmpwn> I was trying to find a fancy bash command I could use
07:51:20 <monqy> SirCmpwn: oh i just closed the page it's bad anyway
07:51:22 <Sgeocom> Also, PSOX does support networking
07:51:24 <SirCmpwn> I think it still might be possible with socat
07:51:31 <SirCmpwn> but bash piping can't do it alone
07:51:32 <Sgeocom> So you could have used PSOX.
07:51:35 <Sgeocom> >.>
07:51:50 <SirCmpwn> Sgeocom: it'll work fine in a normal bf interpreter
07:51:52 <Bike> oh shit tehz made a minecraft language too
07:51:54 <Bike> ok i'm done now
07:52:01 <SirCmpwn> Sgeocom: just connect stdin and stdout to the IRC server.
07:52:49 <elliott> are we going back to psox
07:52:51 <elliott> that's some retro shit
07:53:08 <monqy> hey remember when sgeo wanted to do a thing something about LSL and continuations
07:53:13 <monqy> good old days
07:53:21 <monqy> remember when zepto was a thing, remember when
07:53:27 <SirCmpwn> I also built shitty debugging into my interpreter
07:53:51 <Bike> but... zepto was a thing just a few hours ago, monqy.... :(
07:53:52 <monqy> better than nothing ?
07:54:02 <monqy> Bike: have you ever heard of "the zeptobot"
07:54:04 <SirCmpwn> when you give it --debug, it writes all network traffic to the terminal. And '@' is a breakpoint that fires up a shitty debugger
07:54:10 <Bike> i have never heard of "the zeptobot"
07:54:13 <Sgeocom> Zepto only exists because of me. I think. In an indirect way.
07:54:15 <Sgeocom> >.>
07:55:40 -!- zzo38__ has changed nick to zzo38.
07:57:37 -!- sebbu has joined.
07:59:18 -!- sebbu3 has quit (Ping timeout: 245 seconds).
08:00:39 -!- Sgeo has joined.
08:01:07 -!- Sgeocom has quit (Read error: Connection reset by peer).
08:06:08 -!- zzo38 has quit (Remote host closed the connection).
08:18:17 -!- epicmonkey has joined.
08:20:42 -!- oklopol has quit (Read error: Connection reset by peer).
08:21:07 -!- oklopol has joined.
08:25:14 -!- Gracenotes has quit (Ping timeout: 240 seconds).
08:43:53 -!- Gracenotes has joined.
09:03:56 -!- EgoBot has quit (Remote host closed the connection).
09:04:08 -!- EgoBot has joined.
09:05:06 -!- shachaf has quit (Ping timeout: 244 seconds).
09:06:03 -!- shachaf has joined.
09:10:47 -!- c00kiemon5ter has quit (Ping timeout: 244 seconds).
09:11:28 -!- c00kiemon5ter has joined.
09:12:02 -!- sebbu2 has joined.
09:12:20 -!- sebbu2 has quit (Changing host).
09:12:20 -!- sebbu2 has joined.
09:14:38 -!- sebbu has quit (Ping timeout: 276 seconds).
09:20:16 -!- sebbu has joined.
09:20:34 -!- sebbu has quit (Changing host).
09:20:34 -!- sebbu has joined.
09:23:39 -!- sebbu2 has quit (Ping timeout: 260 seconds).
09:37:07 -!- epicmonkey has quit (Ping timeout: 248 seconds).
09:40:24 -!- AnotherTest has joined.
09:42:20 -!- Nisstyre-laptop has joined.
09:43:16 -!- GreyKnight has joined.
09:43:55 <GreyKnight> elliott: you said in 2011 you would create [[Metalanguage]] but you didn't :<
09:47:01 <Sgeo> http://www.reddit.com/r/videos/comments/15x4iv/if_only_i_had_watched_this_before_choosing_to_be/
09:48:31 <Bike> Always be careful with your tools.
09:59:20 -!- Taneb has joined.
10:01:48 -!- sebbu has quit (Read error: Connection reset by peer).
10:02:11 -!- sebbu has joined.
10:02:12 -!- sebbu has quit (Changing host).
10:02:12 -!- sebbu has joined.
10:03:08 -!- nooga has joined.
10:14:17 -!- augur has quit (Ping timeout: 265 seconds).
10:15:24 -!- GreyKnight has quit (Quit: bbl).
10:22:22 -!- copumpkin has quit (Ping timeout: 252 seconds).
10:23:03 -!- copumpkin has joined.
10:37:24 -!- copumpkin has quit (Ping timeout: 252 seconds).
10:38:02 -!- copumpkin has joined.
10:39:12 -!- sebbu2 has joined.
10:41:14 -!- sebbu has quit (Ping timeout: 260 seconds).
10:55:22 <Sgeo> This guide's mention of INTERCAL makes me wonder if it would be a terrible idea to implement INTERCAL as a Racket language
10:56:11 <Taneb> What is Racket?
10:56:38 <Sgeo> A programming language and environment that makes it easy to make programming languages
10:56:54 <Sgeo> It's a descendent of Scheme and used to be called PLT Scheme
10:58:31 <Bike> "programming language theory"
10:59:20 <Sgeo> I think it's not actually an ancronym for anything
10:59:22 <Sgeo> acronym
11:00:07 <Sgeo> http://en.wikipedia.org/wiki/Talk%3aRacket_%28programming_language%29#What_does_PLT_stand_for.3F
11:00:49 <Bike> close enough
11:06:06 <elliott> poop laughs talent
11:07:25 <Taneb> Pokemon Lacks TRT
11:09:42 <Taneb> Where TRT is "That Ratchet Thingy"
11:21:49 -!- sebbu2 has changed nick to sebbu.
11:25:18 <Sgeo> Maybe it would be easier to implement Qoppa as a Racket language
11:28:19 -!- asiekierka has quit (Excess Flood).
11:29:38 <Taneb> `pastequotes Taneb
11:29:50 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.28787
11:29:58 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
11:30:06 <Sgeo> `pastequotes Sgeo
11:30:10 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5217
11:30:42 <Taneb> `pastequotes Ngevd
11:30:45 <Taneb> `pastequotes atriq
11:30:45 <Bike> jizzed
11:30:47 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.29042
11:30:50 -!- asiekierka has joined.
11:30:51 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.12164
11:31:05 -!- mrout has joined.
11:31:07 <mrout> .q Taneb
11:31:14 <mrout> !q Taneb
11:31:16 <Sgeo> I think I like Taneb's better than mine
11:31:16 <elliott> hi
11:31:18 <Bike> `pastequotes `pastequotes
11:31:22 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.2433
11:31:27 <Taneb> mrout, different bot syntax
11:31:31 <Bike> deep
11:31:32 <mrout> gah
11:31:41 <monqy> ~q tameb
11:31:45 <Taneb> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.28787 and http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.29042
11:32:12 <monqy> `quote atriq
11:32:14 <HackEgo> No output.
11:32:35 -!- c00kiemon5ter has joined.
11:32:43 <Sgeo> Taneb's quotes make him look funny. My quotes make me look like an idiot.
11:33:00 <Taneb> Sgeo, that's because I'm an idiot
11:33:12 <monqy> sgeo is certainly funny
11:33:28 <Bike> or a wall
11:33:44 <Taneb> `quote 415
11:33:45 <HackEgo> 415) <Taneb> Look, I often walk my dog through a field with cows in it. And I punched myself in the face once.
11:33:46 -!- asiekierka has quit (Excess Flood).
11:33:53 -!- asiekierka_ has joined.
11:33:54 <mrout> `quote Taneb
11:33:55 <HackEgo> 399) <Taneb> Turned out he got recursion, he just didn't get the return statement \ 405) <Taneb> Cut to February <Taneb> War were declared <Taneb> A galaxy in turmoil <Taneb> Anyway, Febuary '10 \ 406) <Taneb> I can't afford one of those! <Taneb> A grandchild, not a laser printer \ 412) <fizzie> There's that saying that the definition of insani
11:34:13 <Taneb> `quote 734
11:34:14 <HackEgo> 734) <Ngevd> I don't know which version of Linux kernel I'm using atm <Ngevd> Hang on <Ngevd> I'm on Windows
11:34:30 <Bike> i'm guessing my quotes make me look like a sheep. that's ok. i like sheep. they're cute.
11:34:42 <Taneb> `pastequotes Bike
11:34:47 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.7704
11:35:30 <Sgeo> Why doesn't that 0open in browser when the others did?
11:35:40 <monqy> it has too much soul
11:35:53 <Bike> i was just about to comment on those unisquares
11:35:58 <mrout> `pastequotes
11:36:02 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.7818
11:36:12 <Bike> too sexy for my basic plane
11:36:13 <mrout> paste ALL THE QUOTES
11:36:41 <Bike> hm that cuts out the soul
11:36:45 <mrout> `quote 218
11:36:47 <HackEgo> 218) <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.
11:36:49 <mrout> all my lulz
11:36:53 <Sgeo> WHAT HAPPENED TO THE AFTRAN QUOTE NUMBER 1
11:36:55 <Bike> not funky at all, hackego
11:36:58 -!- Stary2001 has joined.
11:37:04 <Sgeo> `welcome Stary2001
11:37:06 <Stary2001> .q Taneb
11:37:07 <HackEgo> Stary2001: 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.)
11:37:15 <Stary2001> oh god bots
11:37:20 <monqy> taneb what have you done
11:37:26 <Sgeo> ...I just tried to tab-complete `welcome
11:37:29 <Stary2001> haha
11:37:48 <Sgeo> .q 1
11:37:57 <Sgeo> That's not the computational linguistics quote
11:37:58 <mrout> `quote Taneb
11:37:59 <HackEgo> 399) <Taneb> Turned out he got recursion, he just didn't get the return statement \ 405) <Taneb> Cut to February <Taneb> War were declared <Taneb> A galaxy in turmoil <Taneb> Anyway, Febuary '10 \ 406) <Taneb> I can't afford one of those! <Taneb> A grandchild, not a laser printer \ 412) <fizzie> There's that saying that the definition of insani
11:38:00 <Sgeo> Wait, derp
11:38:03 <Sgeo> `quote 1
11:38:04 <HackEgo> 1) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork"
11:38:05 <Stary2001> ah, it's `
11:38:12 <Stary2001> `quore Taneb 2
11:38:13 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: quore: not found
11:38:17 <Stary2001> `quote Taneb 2
11:38:19 <HackEgo> No output.
11:38:21 <Stary2001> `quote Taneb 3
11:38:22 <HackEgo> No output.
11:38:25 <Stary2001> ok..
11:38:28 <Stary2001> `quote Taneb
11:38:29 <HackEgo> 399) <Taneb> Turned out he got recursion, he just didn't get the return statement \ 405) <Taneb> Cut to February <Taneb> War were declared <Taneb> A galaxy in turmoil <Taneb> Anyway, Febuary '10 \ 406) <Taneb> I can't afford one of those! <Taneb> A grandchild, not a laser printer \ 412) <fizzie> There's that saying that the definition of insani
11:38:46 <Taneb> I'm very sorry for the influx of people from #0c10c-dev trying to find quotes of me
11:39:06 <Bike> is that game dev'd yet
11:39:12 <monqy> is that a game
11:39:15 <Bike> i fucking need the sequel to redstone man
11:39:25 <monqy> is that a game too
11:39:26 <Stary2001> no Bike it is not dev'd because notch
11:39:30 <Bike> yes they're games
11:39:32 <elliott> `WELCOME STARY2001
11:39:33 <elliott> `WELCOME STARY2001
11:39:34 <elliott> `WELCOME STARY2001
11:39:34 <HackEgo> STARY2001: 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.)
11:39:36 <HackEgo> STARY2001: 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.)
11:39:36 <HackEgo> STARY2001: 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.)
11:39:41 <monqy> elliott thats a bit excessive
11:39:45 <Bike> man fuck notch he's got people talking shit about java and that means i need to defend java
11:39:48 <monqy> you have to spice it up
11:39:49 <Bike> and that Just Isn't Cool
11:39:55 <elliott> monqy: no i need to be incredibly welcoming at all times
11:39:56 <monqy> fullwidth, alternating case
11:40:01 <Stary2001> hahaha
11:40:05 <Bike> `welcome
11:40:06 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcome: not found
11:40:10 <Taneb> `wElCoMe Stary2001
11:40:11 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: wElCoMe: not found
11:40:16 <Bike> ooh it colors the rest of the line, nice
11:40:21 <Taneb> `WeLcOmE Stary2001
11:40:22 <Bike> `cat welcome
11:40:23 <HackEgo> cat: welcome: No such file or directory
11:40:24 <HackEgo> StArY2001: 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.)
11:40:30 <mrout> Bike: Java is horribad
11:40:30 <Bike> god why is welcoming hard
11:40:34 <Bike> `cat /bin/welcome
11:40:36 <Stary2001> `welcome Bike
11:40:36 <HackEgo> cat: /bin/welcome: No such file or directory
11:40:37 <HackEgo> Bike: 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.)
11:40:44 <Bike> i hate everything
11:40:44 <Stary2001> :>
11:40:47 <Bike> including java
11:40:55 <Bike> hope you're happy mrout you did this
11:41:09 <mrout> `welcome mrout
11:41:10 <HackEgo> mrout: 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.)
11:41:19 <mrout> not really that hard, unless you're autistic or something
11:41:35 <Bike> `run which welcome
11:41:36 <HackEgo> ​/hackenv/bin/welcome
11:41:42 <AnotherTest> Hmmm. I lost 306 bytes somewhere.
11:41:44 <Bike> `cat bin/welcome
11:41:45 <HackEgo> ​#!/usr/bin/perl -w \ if (defined($_=shift)) { s/ *$//; s/ +/ @ /g; exec "bin/@", $_ . " ? welcome"; } else { exec "bin/?", "welcome"; }
11:41:57 <mrout> h4x
11:42:00 <Bike> `cat bin/WELCOME
11:42:01 <HackEgo> ​#!/bin/sh \ welcome "$@" | perl -ne 'print uc($_)'
11:43:09 <AnotherTest> Oh I get it, boost's async_read_until doesn't actually read until
11:43:13 <AnotherTest> great naming
11:43:25 <Bike> `run echo #!/bin/sh echo ; welcome "$@" > bin/welcome
11:43:27 <HackEgo> No output.
11:43:32 <Bike> `welcome
11:43:33 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcome: not found
11:43:38 <Bike> suffering i tell you
11:43:43 <elliott> Bike: have you noticed #esoteric just got terrible in the last few minutes
11:43:44 <elliott> its weird
11:43:49 <elliott> like a subtle breeze
11:43:56 <monqy> except not subtle????
11:43:56 <Taneb> I am solely to blame.
11:43:57 <Bike> what are you implying
11:43:59 <Taneb> I apologize.
11:44:14 <monqy> what did you even do
11:44:32 <Taneb> I mentioned that here had a bot with quotes and I had a lot of quotes
11:44:44 <Bike> quotes will be the doom of us all.
11:44:46 <monqy> ah...............
11:44:49 <Taneb> After mrout mentioned that someone had 26 quotes on #0x10c-dev
11:45:00 <Taneb> I have... 42
11:45:08 <Stary2001> pff
11:45:25 <mrout> that is 100% accurate
11:45:53 <Taneb> Well, #454 and #455 just mentioned my nick
11:45:56 <mrout> ANYWAY. Anyone tried CLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLC-INTERCAL yet?
11:46:02 <elliott> CLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLC-INTERCAL
11:46:20 <Taneb> And #545 is Phantom_Hoover making the joke
11:46:28 <Taneb> So are #454 and #455,actually
11:46:33 <Taneb> `quote 544
11:46:35 <HackEgo> 544) <Gregor> You know how the arrow pierces your skin, rearranging and randomizing vital internal structure? <Gregor> Monads are like that, only worse.
11:46:39 <Taneb> :(
11:46:43 <mrout> :P
11:47:21 <Taneb> 743-746 were me messing with speech-to-text on my phone
11:47:43 <Taneb> #579 was a bot talking to me
11:48:00 -!- Bike has quit (Quit: leaving).
11:48:02 <Taneb> #591 was a different bot seeming to talk to Gregor
11:48:19 <Taneb> #637 is similar to #579
11:48:35 <Taneb> #696 was fizzie's joke
11:49:00 <Taneb> Which puts me back to 31
11:49:02 <Taneb> :(
11:49:14 <AnotherTest> Taneb: what happend to your alias atriq
11:49:22 <monqy> too boring for quotes
11:49:26 <Taneb> Yeah
11:49:40 <Taneb> Also beginning with a lower-case letter freaked me out a bit
11:49:51 <monqy> imo Atriq should say something funny so we have more of a mess on our hands :^)
11:49:59 -!- Taneb has changed nick to Atriq.
11:50:10 <monqy> the mess is three tanebs and our hands are remembering that they're all there
11:50:14 <Atriq> How many ears did Captain Kirk have?
11:50:18 <AnotherTest> 2
11:50:29 <monqy> hold up AnotherTest i think this might be a trick question
11:50:31 <Atriq> Down the M4 and over the Severn bridge!
11:50:33 <Atriq> Ahahaha!
11:50:41 <AnotherTest> Unless he lost one because of a Klingon or something
11:50:48 <AnotherTest> But I somehow doubt that
11:50:50 <monqy> 3 ears but one of them is an ear of corn
11:50:50 -!- Atriq has changed nick to Taneb.
11:51:10 <Taneb> The actual punchline is "3: a left ear, a right ear, and a final frontier"
11:51:19 <monqy> ah..................................
11:51:26 <AnotherTest> right
11:59:21 <Taneb> Why did Captain Kirk use the ladies' toilet?
11:59:31 <monqy> is this another joke
11:59:47 <Taneb> No, it's a serious question
11:59:54 <monqy> i have no idea
12:00:20 <mrout> monqy: you need to check your sarcasm meter
12:00:27 <monqy> what
12:00:47 <Taneb> Was the mens' toilet out of order?
12:00:48 <mrout> obviously it's not a serious question
12:00:56 <Taneb> Was Captain Kirk transgender?
12:01:06 <Taneb> Was Captain Kirk lost?
12:01:07 <mrout> s/transgender/confused/
12:01:12 <Taneb> Was Captain Kirk perverted?
12:01:30 <mrout> (that was a joke, btw, no offense intended)
12:01:32 <monqy> i don't think we'll ever know
12:01:37 <Taneb> Or did Captain Kirk merely wish to boldly go where no man had gone before?
12:01:47 <mrout> Taneb: ROFL
12:02:02 <monqy> pretty sure men have gone there before
12:02:13 <monqy> like spies and stuff
12:02:14 <mrout> monqy: nuh uh
12:02:17 <mrout> SPIES
12:02:20 <elliott> mrout...
12:02:20 <mrout> holy shit
12:03:02 <mrout> elliott: yo!
12:03:35 <AnotherTest> Captain Kirk was using the ladies toilet because indeed he didn't know he was a man, which is also the reason that he had a boyfriend (Spock)
12:03:49 <AnotherTest> they even did the Vulcan mind exchange! that's conclusive proof if you ask me
12:04:07 <Taneb> AnotherTest, that's assuming Captain Kirk believed he was heterosexual
12:04:24 <AnotherTest> No he just didn't know
12:04:24 <Taneb> Or she, as the case may well be.
12:04:50 <monqy> I don't know much about star treck but this sounds pretty saucy for a space opera
12:04:56 <AnotherTest> Captain Kirk genuinely believed that he was a woman
12:04:57 <monqy> can't we focus on the space
12:05:12 <Taneb> monqy, have you ever seen Space Carmen?
12:05:18 <mrout> monqy: well if it's anything like a soap opera...
12:05:25 <Taneb> Or Space William Tell?
12:05:32 <monqy> can't say i have
12:06:07 <Taneb> They're just like Star Trek
12:06:10 <Taneb> Taneb away
12:06:12 <Taneb> *!
12:06:15 -!- Taneb has changed nick to Taneb|Away.
12:10:15 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
12:10:57 -!- c00kiemon5ter has joined.
12:13:54 -!- c00kiemon5ter has quit (Client Quit).
12:14:27 -!- c00kiemon5ter has joined.
12:15:28 <mrout> `quote quote
12:15:29 <HackEgo> 30) <oklopol> i can get an erection out of a plank, you can quote me on that. \ 70) [Warrigal] `addquote <Dylan> hahaha, Lawlabee is running windows <Lawlabee> 'cuz it's pretty awesome. [Lawlabee] Warrigal: :( \ 71) Note that quote number 124 is not actually true. \ 79) <ais523> let's put that in the HackEgo quotes files, just to completely mys
12:15:59 <mrout> `quote 42
12:16:01 <HackEgo> 42) <Deewiant> Reality isn't a part of physics
12:18:55 <Sgeo> I just realized something awesome
12:19:14 <Sgeo> Qoppa and Kernel take one of the cool things about Racket and remove my big problem with it
12:19:24 <Sgeo> I _must_ implement Qoppa as a Racket language
12:20:33 <coppro> sgeo: what is that?
12:20:36 <Sgeo> And thank you Bike, for pointing out the obvious to me, who was too thick
12:20:56 <coppro> `quote 124
12:20:58 <HackEgo> 124) <Sgeo> Why shouldn't I just do everything in non-Microsoft-specific C#? <ais523> it's like trying to write non-IE-specific JavaScript with only Microsoft documentation and only IE to test on
12:21:07 <coppro> `quote 79
12:21:10 <HackEgo> 79) <ais523> let's put that in the HackEgo quotes files, just to completely mystify anyone who looks back along them in the future
12:21:21 <Sgeo> coppro, Racket lets you change a macro that is placed in front of all function applications.
12:21:34 <Sgeo> But it seems annoying and difficult to use two redefinitions of function application at once
12:21:45 <coppro> ah
12:22:12 <Sgeo> Want to use frtime-style function application and lazy function application? Good luck!
12:22:31 <Sgeo> And have fun writing new versions of map while you're at it, whenever you redefine #%app, since #%app is just a lexical change
12:23:20 <Sgeo> But Kernel is sort of like, the function itself controls the meaning of function application. Presumably, you could write a function like lazy that takes a function and makes it ... wait, hmm
12:24:21 <Sgeo> The two use cases I'm thinking of don't actually need #%app redefinitions to use in the style I was thinking of using them, just a lift function, like with (Haskell) applicatives
12:24:23 -!- Stary2001 has left ("Once you know what it is you want to be true, instinct is a very useful device for enabling you to know that it is").
12:25:12 <Sgeo> The #%app I guess is just a shortcut in those cases, meaning you don't need to keep lifting yourself. And my envisioning of the Kernel/Qoppa way was ... manual lifts
12:25:18 <Sgeo> :/
12:25:29 <Sgeo> I still want to implement Qoppa as a Racket language and show it off to kmc
12:26:04 <Sgeo> Although I guess it wouldn't really be that impressive. Could his implementation be modified to allow using functions from the underlying Scheme?
12:27:26 <Sgeo> (If it can't already, I mean)
12:39:31 -!- carado has joined.
12:39:37 <Sgeo> Also, I guess you don't really need to write new versions of map and apply etc, in the cases where the function just needs to be... oh wait you do
12:40:01 <Sgeo> hmm, maybe not
12:40:14 * Sgeo needs to think about that more. Or just look at the lazy or frtime implementation
12:48:34 -!- monqy has quit (Quit: hello).
12:56:14 -!- Taneb|Away has changed nick to Taneb.
13:17:13 -!- epicmonkey has joined.
13:18:30 -!- AnotherTest has quit (Quit: Leaving.).
13:18:43 -!- AnotherTest has joined.
13:19:38 -!- GreyKnight has joined.
13:24:08 <GreyKnight> Bike: I actually quit the MC forums after the 350th time I had to shoot down some hotshot kid programmer claiming that minecraft was too slow because "it's written in JavaScript"
13:24:10 <GreyKnight> It got to the stage where I was ready to just post reaction gifs and nothing else
13:25:08 -!- boily has joined.
13:26:32 <hagb4rd> there is a js version of minecraft?
13:27:50 <Jafet> Defend yourself from the nighttime XSS attacks
13:28:16 <GreyKnight> hagb4rd: no, it's in Java
13:29:22 <hagb4rd> yes, that is what i know. but i wouldM
13:29:36 <GreyKnight> And these ~expert haxors~ don't understand the difference
13:29:39 <hagb4rd> i wouldn't be surprised if there is one out there
13:30:26 <GreyKnight> Sgeo: let's implement Qoppa
13:30:33 -!- TodPunk has quit (Read error: No route to host).
13:30:53 -!- boily has quit (Quit: Poulet!).
13:31:09 -!- TodPunk has joined.
13:31:36 <Jafet> :t wouldM
13:31:37 <lambdabot> Not in scope: `wouldM'
13:31:37 <lambdabot> Perhaps you meant `foldM' (imported from Control.Monad.Writer)
13:32:12 -!- Phantom_Hoover has joined.
13:32:13 <hagb4rd> well javascript really has nothing in common with java.. they decidec to name it javascript for marketing reasons iirc
13:33:09 <hagb4rd> guess it would be possible to port it to javascript anyway
13:33:56 <GreyKnight> *We* know they are different languages, it's the geniuses on the MC forums who need education
13:37:05 <hagb4rd> so it's good to have you there, educating these kids. finally..someone has to do this job
13:37:28 <mrout> "<GreyKnight> Bike: I actually quit the MC forums after the 350th time I had to shoot down some hotshot kid programmer claiming that minecraft was too slow because "it's written in JavaScript"" <-- GreyKnight, seriously?
13:37:29 <GreyKnight> Sgeo: how do you go about it, I never made a Racket language before
13:37:42 <GreyKnight> hagb4rd: well as discussed above I already quit
13:38:03 <GreyKnight> mrout: over and over and over
13:38:11 <Sgeo> Um. I think you just write a module that provides certain things
13:38:15 <mrout> oh my lord
13:38:16 -!- Stary2001 has joined.
13:38:18 <Sgeo> Like #%app and other necessities
13:38:23 -!- Stary2001 has left.
13:38:55 <Sgeo> And in a separate module you provide read and read-syntax
13:39:28 <Sgeo> http://docs.racket-lang.org/guide/hash-languages.html
13:41:24 <GreyKnight> I mean, that was just one of the bits of ~EXPERT ADVICE~ people kept offering the developers, but it was by far the most ridiculous
13:41:27 <GreyKnight> Sgeo: ah nice. Okay so I will have a look at this
13:42:25 <mrout> On coding pong (from ##C++-social) "no, you need to choose correct path, or lose important features like frame rates"
13:43:05 <Sgeo> GreyKnight, actually, I sort of linked to the middl
13:43:06 <Sgeo> e
13:43:13 <GreyKnight> `quote 821
13:43:14 <HackEgo> 821) <elliott> `delquote 869
13:43:16 <Sgeo> Better place to start http://docs.racket-lang.org/guide/languages.html
13:43:29 <Sgeo> Since you need to understand what the guide calls "module languages"
13:43:31 <mrout> apparently it takes 2 years to write pong (according to Codex_)
13:43:45 <mrout> Which is almost as retarded as thinking Javascript = lightweight Java or whatever
13:44:20 <GreyKnight> In C++ that might be an accurate estimate :o)
13:44:38 <GreyKnight> Sgeo: got it ,o>
13:44:49 <hagb4rd> anyway.. i like the idea of wrting a mc clone in javascript.. using webgl .. np
13:45:31 <mrout> He seems to be very concerned he might run into framerate issues with pong.
13:45:33 <mrout> my lord
13:45:45 <nooga> mc clone?
13:45:58 <hagb4rd> mincecraft clone nooga.. yes
13:46:02 <GreyKnight> hagb4rd: be my guest!
13:46:24 <nooga> what for? :F
13:47:07 <hagb4rd> at least to proove it's possible.. without any performance problems
13:47:15 <hagb4rd> and because it may be fun
13:47:25 <nooga> i'm sure it would run faster than the java one
13:47:32 <hagb4rd> yea :)
13:47:33 <GreyKnight> nooga: "because it's there" I guess
13:47:38 <mrout> probably would in chrome at least
13:47:46 <nooga> have you read Forge sources?
13:48:16 <nooga> i'm afraid that they'll reimplement minecraft doing better job than mojang
13:48:20 <coppro> all eyes on the hidden door
13:48:30 -!- boily has joined.
13:48:37 <GreyKnight> Forge?
13:48:47 <nooga> the modding framework for mc
13:49:09 <GreyKnight> s/the/one of millions of/
13:49:28 <nooga> all major mods are implemented on forge
13:49:31 <GreyKnight> When's this builtin mod API coming anyway
13:49:57 <nooga> yes
13:50:08 <nooga> mojang is working with the forge authors
13:50:41 <hagb4rd> @google mojang
13:50:43 <lambdabot> http://www.mojang.com/
13:50:43 <lambdabot> Title: Mojang — Makers of Minecraft
13:51:13 <GreyKnight> (I will care about mods on the day I can load them without an additional fourth-party layer)
13:51:15 <nooga> and the official mod api is going to be Forge based IIRC
13:51:33 <mrout> nooga: I thought they changed that decision AGES ago
13:51:34 <Sgeo> What is Forge?
13:51:39 <mrout> they're working with bukkit
13:51:43 <nooga> nooo
13:51:45 <hagb4rd> but it's still java isn't it?
13:51:49 <GreyKnight> nooga: it was also claimed to be Bukkit-based at some point, and some third thing I forget
13:52:02 <GreyKnight> So who knows
13:52:07 <nooga> forge > bukkit
13:52:15 <mrout> oh yes
13:52:34 <nooga> mhehe
13:52:51 <nooga> i'm writing a scheme interpreter for redpower control
13:52:53 <nooga> in C
13:53:06 <GreyKnight> I couldn't care less which one it's based on, I just want something built in
13:53:25 <nooga> because i've got a working C cross-compiler targetting rpc8/e
13:54:22 <GreyKnight> "targetting <keysmash>"
13:55:22 <GreyKnight> Oh boke I just looked that up :-(
13:55:40 <GreyKnight> Now I have a sad
13:56:02 <nooga> http://hackaday.com/2012/05/20/building-a-6502-in-minecraft/
13:56:35 <nooga> one of the coolest mods
13:57:21 <nooga> but the author is ... meh
13:57:25 <nooga> sad
13:59:09 -!- greyooze has joined.
13:59:27 <greyooze> rpc8/e = hate
13:59:43 <greyooze> Someone was trying to build a computer out of just redtorches and dust (this was before repeaters), now THAT's a cool computer
14:00:39 <hagb4rd> can u link to this project?
14:00:56 <nooga> greyooze: I tried once
14:00:58 <greyooze> This mod trend towards implementing everything and the kitchen sink at the host level is annoying to me (thankfully I'm not forced to use them)
14:01:34 <greyooze> hagb4rd: if you search youtube for "minecraft ALU" you should get something relevant
14:01:42 <hagb4rd> k
14:01:44 <nooga> AFAIR that cpu was too big and too slow do do anything useful + it crashed minecraft from time to time
14:02:03 <mrout> nevertheless it's far cooler than a cpu emulating mod
14:02:06 -!- GreyKnight has quit (Ping timeout: 276 seconds).
14:02:11 <nooga> sure it is
14:02:51 <greyooze> Of course it's big and slow, but if I wanted small and efficient I'd use my actual physical computer :-P
14:03:01 -!- greyooze has changed nick to GreyKnight.
14:03:30 <nooga> i tried to fit a game of life cell in 8x8x40 tower
14:03:37 <nooga> using vanilla redstone
14:03:43 <nooga> = impossible
14:04:05 <GreyKnight> hagb4rd: for some reason minecrafters are absolutely obsessed with youtube. This applies even if they are trying to convey information not well suited to video
14:04:18 <hagb4rd> i see
14:05:29 <GreyKnight> Related: I saw a programming tutorial on youtube once. All with video of the code on the screen. I still have nightmares of that video.
14:12:03 -!- jiella has joined.
14:19:32 <GreyKnight> Hmm, kmc is male??
14:21:43 <elliott> @tell kmc <GreyKnight> Hmm, kmc is male??
14:21:43 <lambdabot> Consider it noted.
14:22:19 <Fiora> I've never heard of a female keegan at least :p
14:22:24 <GreyKnight> elliott: BTW 821 is worst quote
14:22:42 <nooga> i thought everyone here is male
14:22:42 <Sgeo> Crud
14:22:46 <elliott> `delquote 821
14:22:50 * Fiora pokes at nooga
14:22:51 <HackEgo> ​*poof* <elliott> `delquote 869
14:22:53 <elliott> nooga: not as of recently
14:23:00 <nooga> uhuh
14:23:01 <Sgeo> I think it might be difficult to get a Racket Qoppa to interoperate properly
14:23:01 <elliott> not historicall yeither though the statistics are pretty crazy
14:23:42 <Sgeo> If I define a normal qoppa function as just an operative that evaluates its arguments first, the Racket system won't know how to treat the operative as a function
14:24:12 <Sgeo> (Assuming I don't make non-functionlike operatives Racket functions)
14:24:24 <Sgeo> Kernel works better, funnily enough :/
14:24:36 <Sgeo> But that would be a much larger task
14:25:47 <GreyKnight> But Racket just needs to treat the operative as an operative, right? The operative itself takes care of the function-like behaviour
14:26:36 <GreyKnight> Just use (wrap)
14:27:38 <Sgeo> That's fine for within just the Qoppa environment, but what happens when a Racket function receives a Qoppa operative?
14:28:30 <Sgeo> Are we going to try to make Qoppa operatives work on Racket forms that it doesn't have access to?
14:29:10 <GreyKnight> Mixing languages?
14:29:17 <Sgeo> Can only redefine function application within the #lang qoppa
14:29:38 <Sgeo> Lexically
14:30:40 <nooga> meh
14:31:29 <GreyKnight> Maybe treat Racket forms as if they're operatives, maybe by twiddling the bottom of the environment stack
14:32:42 <Sgeo> ?
14:33:37 <GreyKnight> Maybe I'm confused, gimme an example
14:34:41 <Sgeo> Suppose I have a function defined in Qoppa, called inc
14:35:34 <Sgeo> Fundamentally, it is an operative that takes its unevaluated arguments, evaluates them, and then returns the evaluated argument +
14:35:36 <Sgeo> 1
14:36:02 <Sgeo> Now, let's say I import Racket's map, rather than using a Qoppa defined map
14:36:40 <Sgeo> And call (map inc (list 1 2 3))
14:37:03 <Sgeo> Where would inc get unevaluated arguments from? It is only being provided with evaluated arguments.
14:37:22 <Sgeo> And the definition of inc, in and of itself, would attempt to evaluate any arguments that it receives
14:37:55 <Sgeo> Defining wrap such that it adds a little bit to the resulting value to make it a Racket function is not a good idea, because wrap is fundamentally not a primitive
14:38:16 <Sgeo> And it would be weird if the library definition of wrap didn't do the same thing as the provided wrap
14:38:45 <Sgeo> Maybe hmm, have it so that attempting to evaluate any Racket datum is a no-op?
14:38:57 <GreyKnight> (qoppa-eval) should just return its argument if it can't be evaluated further?
14:38:58 <GreyKnight> (so then inc just gets the argument map wanted to pass it)
14:39:24 <GreyKnight> Yeah, I mean arguably that's the Right Thing to do anyway
14:39:58 <Sgeo> I'd want to make sure that a Racket data item that is not a Qoppa form is not evaluatable
14:41:13 <Sgeo> Otherwise, there could be some cases in which the argument was inappropriately evaluated
14:41:14 <Sgeo> But yes
14:41:39 <GreyKnight> Oh I guess you could be passing a racket-value which is a structure that happens to be of the same form as the qoppa evaluator's internal representation of qoppa-forms
14:42:02 -!- augur has joined.
14:42:08 <Sgeo> Right, that's what I'd need to avoid
14:42:40 <Sgeo> This seems like it would work, but I feel like it's doing the "wrong thing" somehow
14:43:29 <GreyKnight> It's because we're mixing levels I guess
14:45:40 <GreyKnight> You can define an operative (inbound) which can sit at the boundary of racket/qoppa and manage the mixing correctly
14:45:40 <GreyKnight> e.g. (map (inbound inc) (list 1 2 3))
14:45:56 <GreyKnight> IDK if there's a way to make the language extension manage something like that automagically
14:46:30 <Sgeo> Hmm, that's a good idea
14:46:59 <Sgeo> Well, I would be able to tell the difference between a Racket function and a Qoppa operative
14:47:24 <Sgeo> And again, I have full control over function application
14:47:41 <Sgeo> So, any time a ... hmm, not sure if that's a good idea
14:48:11 <GreyKnight> Only needs to happen at the boundary though, not on any qoppa-oper application
14:48:27 <GreyKnight> (Otherwise it'd screw up)
14:48:54 <Sgeo> Right, was thinking when a Racket function is called, any Qoppa operatives that ... wait, what does inbound do, exactly, that fixes things?
14:49:03 -!- Taneb has quit (Quit: Leaving).
14:49:11 <Sgeo> Oh, I guess it's a primitive?
14:49:18 <Sgeo> Or... hm
14:49:53 <Sgeo> Actually, no, the automatic inbound thing is a bad idea, opaque data structures may be carrying qoppa operatives
14:49:55 <GreyKnight> Basically wraps inc into a new form that converts incoming racket-lists into qoppa-lists
14:50:58 <Sgeo> Well, any Racket struct can be made to act like a Racket function, so that's presumably where inbound could sit
14:51:03 <GreyKnight> (That way you don't have confusion between racket-lists and qoppa-opers; inc never sees the former)
14:52:10 <Sgeo> Hmm. Make it so that this inbound thing, passes arguments in such that, if the operative does anything other than evaluate them once, it errors
14:52:32 <GreyKnight> How does the system know whether to treat the name "inc" as racket or qoppa?
14:52:53 <Sgeo> qoppa operatives are instances of an operative struct
14:52:53 -!- Vorpal has joined.
14:53:16 <Sgeo> Racket operative? on a qoppa operative returns #t
14:54:21 <Sgeo> Hmm, I don't really see a way to detect if an operative is attempting to ignore an argument (which should also be an error)
14:54:29 <GreyKnight> Oh so inc does have a racket-value, but that value is tagged somehow so that the system knows to use qoppa for interpreting it
14:55:31 <GreyKnight> Why is ignoring an argument an error? (if) does it all the time!
14:55:55 <Sgeo> Trying to map if onto pre-evaluated arguments makes little sense
14:56:04 -!- Taneb has joined.
14:56:24 <GreyKnight> Well there's C's ternary operator
14:56:28 <Sgeo> if is expected to control evaluation. When a Racket function tries to call if, if is unable to control evaluation the way it's expecting to
14:56:30 <Sgeo> hmm
14:56:42 <GreyKnight> ?: is sort of like an if that evaluates its arguments
14:56:42 <lambdabot> Maybe you meant: . ? @ v
14:56:52 <GreyKnight> lambdabot: hush dear
14:57:29 <Sgeo> Hm
14:57:49 <Sgeo> Maybe it's not bad to just run the operative
14:59:38 <GreyKnight> Oh you mean racket trying to call qoppa-if?
14:59:47 <Sgeo> Yes, that was the context
15:00:18 <GreyKnight> Yeah I think racket trying to directly use non-wrapped operatives falls under "asking for trouble" :-S
15:02:35 <Sgeo> Maybe it doesn't? That's what I thought you were getting at
15:03:56 <GreyKnight> You know, mixing levels the other way around (qoppa as default with bits of Racket inside) would probably be easier :-)
15:09:59 <GreyKnight> qoppa-eval can tell that it's being asked to apply a racket-fun, and so it just does that directly
15:11:02 <Sgeo> That pretty much is the default, but the other way around should be possible. I want Qoppa with the ability to call Racket functions, and the "Racket with Qoppa inside" occurs when I try to call a higher-order Racket function
15:11:40 <Sgeo> Hmm, was going to say I'm not using eval, but the whole point is eval, pretty much
15:11:41 <GreyKnight> Oh so the situation is qoppa->racket->qoppa
15:11:53 <Sgeo> yes
15:13:30 <GreyKnight> Hm we control the racket-fun's "pitiful so-called existence" so we can probably exploit that...
15:14:31 <mrout> what's racket?
15:15:05 <mrout> oh, right
15:15:17 <mrout> one of those functional languages.
15:15:20 <mrout> weird things they are
15:17:33 <GreyKnight> It's like racquet, but American
15:18:08 <mrout> rofl
15:18:18 <Sgeo> I should probably sleep soon, it's 10 am
15:19:45 * GreyKnight wraps mrout in a lambda (\x.mrout x)
15:22:51 <boily> GreyKnight: does that mean you can beta-reduce mrout?
15:25:42 <GreyKnight> there's only one way to find out!
15:25:55 <GreyKnight> Hold still mrout... this won't hurt a bit...
15:26:05 <GreyKnight> (probably)
15:27:59 <mrout> :P
15:28:22 -!- mrout has quit (Quit: Screw you guys, I'm going home.).
15:28:35 -!- mrout has joined.
15:29:25 <mrout> don't beta-reduce me, please. it made me dc
15:30:18 -!- mrout has quit (Client Quit).
15:32:06 <GreyKnight> shut up and get back in your closure
15:32:44 -!- asiekierka_ has quit (Excess Flood).
15:32:50 -!- asiekierka has joined.
15:34:51 -!- augur_ has joined.
15:36:24 -!- AnotherTest has quit (Ping timeout: 260 seconds).
15:36:35 -!- augur has quit (Ping timeout: 248 seconds).
15:38:33 -!- augur has joined.
15:40:51 -!- augur_ has quit (Ping timeout: 248 seconds).
15:44:45 -!- AnotherTest has joined.
15:47:59 <nooga> what's qoppa?
15:48:30 <shachaf> A unit of coffee.
15:58:49 <GreyKnight> nothing, what's a qoppa with you?!
16:00:44 <nooga> likewise
16:09:00 <shachaf> oh no now you're in a loop!!
16:11:59 <GreyKnight> Y(nooga);
16:29:27 -!- jiella has quit (Ping timeout: 256 seconds).
16:30:37 -!- Bike has joined.
16:34:24 <GreyKnight> Bike: I was talking to you earlier but uh you weren't around
16:34:32 <GreyKnight> Read the logs, or don't
16:36:59 <Bike> that's a great way to start a conversation
16:38:56 <Bike> «Bike: I actually quit the MC forums after the 350th time I had to shoot down some hotshot kid programmer claiming that minecraft was too slow because "it's written in JavaScript"» yeah this is pretty much what happened
16:39:13 <Bike> guy's uncle told him java was "slow" because it's "an interpretive language"
16:39:49 <Bike> much like interpretive dance i assume
16:40:30 <shachaf> You have no business using interpretive languages for games.
16:41:01 <shachaf> I didn't realize Minecraft was using one. Now I know why it's slow.
16:41:44 <nooga> else return eval(car(cdr(cdr(cdr(exp)))), env);
16:41:50 <coppro> shachaf: it doesn't
16:42:06 <coppro> nooga: else return eval(eval(expr))
16:42:08 <coppro> glhf
16:42:16 <shachaf> coppro: Uhhhh, I'm pretty sure JavaScript is interpretive...
16:42:22 <nooga> uhm
16:42:31 <nooga> it's harder to tell nowadays
16:42:43 <nooga> V8 does something esoteric
16:42:50 <coppro> shachaf: even if it is
16:43:01 <coppro> shachaf: it is not what MineCraft is written in
16:43:10 <coppro> so it is *wholly* irrelevant
16:43:12 <shachaf> coppro: It basically is.
16:43:23 <shachaf> JavaScript is just the scripting version of Java.
16:43:26 <nooga> java is slow because it's stupid and huge
16:43:27 <GreyKnight> eval(eval(eval))
16:43:28 <GreyKnight> Bike: I was giving you the option! Maybe you didn't want to read
16:43:29 <shachaf> And games use scripting a lot.
16:43:32 <shachaf> QED
16:43:38 <GreyKnight> coppro: make him stop ;_;
16:44:04 * coppro kicks shachaf
16:44:15 <nooga> shachaf atm is worse than me drunk
16:44:32 <Bike> well played shachaf. well. played
16:45:20 <Vorpal> wait a sec, what does minecraft and javascript have to do with each other?
16:46:21 <shachaf> Vorpal: «minecraft was too slow because "it's written in JavaScript"»
16:46:46 <Vorpal> it is written in Java, not JS
16:46:58 <Bike> @tell Sgeo so what's the problem with having applicatives be regular racket functions (possibly with some eval calls if they're multiply wrapped) and operatives be a type you pretend is underlying but really is overlying applicatives
16:46:58 <lambdabot> Consider it noted.
16:47:04 <shachaf> JavaScript is just the scripting version of Java, Vorpal.
16:47:10 <shachaf> Don't you know anything?
16:47:24 <nooga> staaaaahp
16:47:31 <Vorpal> very funny
16:47:32 <shachaf> Scripting languages are slower but they're better because you don't have to compile.
16:47:59 <Bike> you think you're hurting me, but i'm a rock, shachaf. a rock
16:48:20 <Vorpal> minecraft isn't really slow though. I found it runs fine with -Xincgc -Xmx4096M. Yes it is indeed memory hungry. And does terrible things to the poor GC.
16:48:21 <nooga> I wonder how lisp compilers work
16:48:39 <Bike> lots of different ways...?
16:48:54 <nooga> pick one you know best
16:48:59 <nooga> :>
16:49:04 <Vorpal> nooga, sbcl?
16:49:08 <Vorpal> I wonder how it works
16:49:21 <Bike> it goes through a few intermediate representations and does a lot of crap with types
16:49:36 <Vorpal> Bike, that sounds like almost every compiler
16:49:43 <nooga> meh
16:49:46 <Bike> weird huh
16:49:49 <Vorpal> :P
16:49:50 <shachaf> Vorpal: I don't know what a GC is but minecraft would obviously be faster if it was written in a compiled language like C/C++ rather than JavaScript.
16:49:55 <GreyKnight> nooga: magic
16:50:08 <shachaf> Vorpal: It's common sense...
16:50:15 <nooga> forth style lisp
16:50:19 <nooga> would be nice
16:50:26 <Bike> factor?
16:50:31 <GreyKnight> THE MORE HE SAYS IT THE FUNNIER IT GETS
16:50:40 <GreyKnight> except not
16:50:56 <Bike> i bet if we wrote minecraft in a compiled language like lisp it'd be way faster
16:51:04 <nooga> agreed
16:51:11 <shachaf> Bike: Lisp is interpretive.......
16:51:39 <nooga> i think theres a C++ interpreter
16:51:57 <Bike> shachaf: nope in modern days we compile it. to C!!!
16:52:01 <Vorpal> I heard of a C interpreter, never heard of a C++ one before
16:52:03 <shachaf> nooga: Uh, think about what you're saying, you can't interpret a compiled language!
16:52:07 <shachaf> It doesn't make sense.
16:52:10 <GreyKnight> Bike: for extra portability do it in Scheme being run under Qoppa
16:52:47 <nooga> destroy destroy destroy
16:53:09 <GreyKnight> (shachaf <<= nil)
16:53:27 <shachaf> GreyKnight: Comonads?
16:53:45 <Bike> i hear Lisp-3 (that's version three) is in an infinite chain of interpreters interpreting interpretive interpreters. it's so slow you can't actually run it because of all the interpreters having to run!
16:54:05 <AnotherTest> Vorpal: I think they wrote a C++ interpreter at at cern. I never really tried it though
16:54:11 <Vorpal> heh
16:54:18 <nooga> i'm trying to invent a small, obvious GC-like contraption that would free some memory in my 64k lispalike interpreter ;f
16:54:27 <Vorpal> GreyKnight, what is Qoppa?
16:54:37 <Bike> a small kernel-like lisp kmc made
16:54:51 <Bike> nooga: http://www.piumarta.com/software/maru/ might help, it has a small gc
16:55:04 <nooga> ah
16:55:06 <nooga> piumarta
16:55:15 <Bike> what about 'em
16:55:29 <nooga> i hate him, he does all the cool stuff
16:56:00 <Bike> you get used to it
16:57:09 <Bike> the internal fire of envy keeps you warm through those cold, cold canadian nights
16:58:25 <kmc> maru! :3
16:58:26 <lambdabot> kmc: You have 1 new message. '/msg lambdabot @messages' to read it.
16:59:56 <GreyKnight> Lisp on C64??
17:09:23 <kmc> which is more powerful, a C64 or an IBM 704?
17:10:12 <kmc> the 704 is rated at 4,000 instructions per second; presumably the C64 at ~1 MHz does much better
17:10:52 <kmc> the C64 has about 3.5x as much RAM as well
17:12:43 -!- mig22 has quit (Quit: mig22).
17:13:31 -!- sebbu has quit (Read error: Connection reset by peer).
17:14:00 -!- sebbu has joined.
17:21:55 <nooga> canadian huh?
17:22:45 <Bike> i assume you're canadian, or a resident of a franchise canadia operation like norway.
17:23:35 <nooga> that'd be not exactly true
17:24:03 <oklopol> polish
17:24:24 <Bike> eh that's still sort of north isn't it
17:24:29 <oklopol> yes
17:24:31 <Bike> north of... let's say monaco
17:24:45 <oklopol> yes plus they have the notation
17:25:06 <nooga> we have the notation, yes
17:25:51 <GreyKnight> north of Antarctica
17:25:53 <Bike> is it true that in poland schools you learn that parentheses are "an abominable invention of the Huns"
17:27:28 <Taneb> Is it true that in Poland schools you learn?
17:28:11 <nooga> parentheses learn us in poland schools
17:28:57 <Bike> whoa, i didn't learn that in cultural insensitivity school
17:29:16 <nooga> that reminds me that i have to remove parentheses from my lisp interpreter
17:29:29 <nooga> who needs them anyway
17:29:42 <Bike> have you seen chaitin's pages
17:29:49 <Bike> "guess lisp programmers never heard of limited arity!!!"
17:30:38 <shachaf> what happened to Bicycle
17:30:41 <shachaf> Bicycle was better
17:31:27 <Bike> i'm not going to be Bicycle again until you acknowledge that my idea to rewrite Minecraft Redstone in LISP lolcode was genius
17:31:54 <shachaf> Is it enough to acknowledge that it'd probably be better than normal Minecraft?
17:32:33 <coppro> man
17:32:42 <coppro> we need to restart the tradition of writing a funge interpreter in every language
17:32:45 <Bike> does anyone actually play "normal minecraft", i was under the impression that it'd been modded into a League of Legends clone
17:33:03 -!- Bike has changed nick to Bicycle.
17:33:05 <Bicycle> but yes sure
17:33:07 <oklopol> on the rare occasions that i play it i play the normal one
17:33:15 <coppro> fizzie: opinions?
17:33:47 <shachaf> coppro: has anybody ever written a funge interpreter....... IN FUNGE??
17:33:50 <shachaf> so meta, man
17:34:14 <shachaf> btw this idea is now patented to me
17:34:15 <Bicycle> shouldn't it be "a funge compiler"
17:35:18 <fizzie> There's a Befunge-93 interpreter in Befunge-93; the befbef.bf.
17:35:29 <fizzie> It has a slightly limited playfield.
17:35:33 <fizzie> https://bitbucket.org/catseye/befunge-93/src/bfc1b4e04514/eg/befbef.bf
17:35:35 <Deewiant_> slowdown.b98, kind of.
17:36:01 <Bicycle> that's pretty elegant looking
17:36:20 <Bicycle> do people who make those "brainfuck BUT UNREADABLE!" languages ever look at befunge code? they really should
17:36:40 <nooga> minecraft befunge with turtles!
17:36:59 <shachaf> fizzie: You should add one character to your nick.
17:37:03 <shachaf> nooga: You should add two characters to your nick.
17:37:13 -!- Deewiant_ has changed nick to Deewiant.
17:37:20 <fizzie> I was just about to suggest that.
17:37:42 -!- nooga has changed nick to nooga__.
17:37:43 <Bicycle> frizzie? fungal...y
17:37:44 <nooga__> ?
17:37:54 <fizzie> Deewiant: I suppose you could still lose one character more, though.
17:37:56 <GreyKnight> Bicycle: "Lisp lolcode"??
17:37:57 <shachaf> fungot: You should add one character to your nick.
17:38:04 <shachaf> fungot?! :-(
17:38:14 <GreyKnight> (Also I play minecraft sans mods so that's one person)
17:38:18 <fizzie> Oh, right, the VPS had died for a moment there.
17:38:25 <Bicycle> GreyKnight: note that lolcode is seven letters
17:38:47 <Bicycle> GreyKnight: also plz capitalize "LISP" it's important when we're talking about serious matters
17:39:00 -!- fungot has joined.
17:39:02 <GreyKnight> LISP LOLCODE
17:39:05 -!- fungot has changed nick to funglop.
17:39:11 <GreyKnight> Why is seven letters important
17:39:15 <GreyKnight> Hi funglop
17:39:24 <Bicycle> i dunno but shachaf's pretty excited about it
17:39:25 <shachaf> fungot
17:39:27 <funglop> shachaf: it assigns 1 to a pixel that's already 1, there's a " scheme development environment
17:39:31 <fizzie> It doesn't realize it has a new name. :/
17:39:40 <shachaf> funglop: your name isn't fungot..........
17:39:41 <funglop> shachaf: rather than just a repl prompt.)
17:39:41 -!- funglop has changed nick to funchaf.
17:39:42 <Bicycle> possibly some kind of occult ritual? ("occult": not seven letters)
17:39:51 <shachaf> ^ rot13 funchaf
17:39:57 <shachaf> ^rot13 funchaf
17:39:58 <funchaf> shapuns
17:40:14 -!- funchaf has changed nick to fungot.
17:40:20 <Deewiant> ^rot13 shachaf
17:40:24 <fizzie> Perhaps too much fun was gotten.
17:40:26 <shachaf> GreyKnight: Have you ever considered the nick GreyKni?
17:40:29 <fungot> funpuns
17:40:31 <Deewiant> Intentional??
17:40:43 <shachaf> Deewiant: Is it?!
17:40:49 <nooga__> uh
17:40:53 -!- nooga__ has changed nick to nooga.
17:41:25 <GreyKnight> shachaf: never
17:41:35 <Bicycle> the knights who say "grey", in a defeated tone
17:41:42 <GreyKnight> Bicycle: how does LISP LOLCODE work?
17:42:08 <Bicycle> dunno but i'm sure it's hi-liarious
17:42:29 <Bicycle> lots of jokes about parentheses i am thinking. and possibly "functional programming"
17:45:25 <GreyKnight> Maybe keyword parens
17:46:06 <GreyKnight> LEFT PARENTHESIS FOO RIGHT PARENTHESIS
17:46:06 <GreyKnight> in fact
17:46:06 <GreyKnight> (LEFT PARENTHESIS FOO RIGHT PARENTHESIS)
17:46:07 <GreyKnight> "perfect"
17:46:34 <Taneb> Like in BIT?
17:46:45 <Bicycle> yes this humorousness is just what the imaginary doctor ordered imaginarily
17:48:10 <GreyKnight> (LEFT PARENTHESIS FUNCTIONAL-SETQ X 1 RIGHT PARENTHESIS)
17:48:47 -!- AnotherTest1 has joined.
17:49:03 -!- AnotherTest has quit (Quit: Leaving.).
17:53:42 <GreyKnight> (LEFT PARENTHESIS GREEK SMALL LETTER LAMBDA (LEFT PARENTHESIS X RIGHT PARENTHESIS) X RIGHT PARENTHESIS)
17:53:54 <GreyKnight> Abusing unicode character names for fun and profit
17:54:04 <Bicycle> unicode based for the modern age
17:54:49 <Bicycle> i suppose it should be LATIN CAPITAL LETTER X then
17:56:44 <GreyKnight> Hmm
17:58:56 <GreyKnight> We can embed a BF derivative in this for maximum badness
17:59:35 <GreyKnight> (LEFT PARENTHESIS MOVE-POINTER-LEFT RIGHT PARENTHESIS)
17:59:39 <GreyKnight> etc
18:00:34 <Bicycle> brainfuckiest lisp fucker ever fuck fuck fuck fuckfuckfuck
18:00:55 <GreyKnight> brainlisp
18:00:58 <GreyKnight> Er
18:01:05 <GreyKnight> LOLBRAINLISP
18:01:29 <Bicycle> poetry
18:01:59 <GreyKnight> Worst language ever
18:02:27 <Bicycle> yeah i think i'm going to find that chaitin paper to read to scrub the bullshit out
18:02:57 <SirCmpwn> the biggest problem I have with brainfuck is losing track of what addresses I'm working with
18:03:05 <SirCmpwn> or fucking up my nesting
18:03:34 <Bicycle> wow googling "chaitin diophantine equations" sure gets you a lot of bullshit
18:03:56 <GreyKnight> Five million BF derivatives and not one of them fixes SirCmpwn's problem
18:04:06 <SirCmpwn> I fixed it myself :P
18:04:07 <Bicycle> SirCmpwn: if you're actually going to be programming in it it might be nice to introduce a few mnemonic tools, like >7 being short for >>>>>>> and such
18:04:17 <SirCmpwn> Bicycle: thought about writing a preprocessor
18:04:24 <SirCmpwn> with macros and includes
18:04:33 <GreyKnight> Write a C->BF compiler
18:04:39 <SirCmpwn> that's cheating.
18:04:46 <SirCmpwn> and also bloody difficult
18:04:53 <GreyKnight> "problem solved"
18:05:01 <Bicycle> eh, it's like a page of LLVM stuff isn't it
18:05:22 <SirCmpwn> question: can anyone think of a means of reading an arbituary length string in brainfuck to memory (zero delimited) and processing it after being read?
18:06:17 <Bicycle> keep a counter of how many characters are read, once you hit the null go back that many cells
18:06:30 <SirCmpwn> where to put the counter
18:06:42 <GreyKnight> In your brick
18:06:53 <Bicycle> before all the characters, i guess?
18:06:56 <SirCmpwn> you could take advantage of address overflow in your interpreter, I suppose
18:07:08 <SirCmpwn> Bicycle: then how do you seek back to the counter cell?
18:07:12 <Bicycle> i don't know, i've never done "serious brainfuck programming" and find the very idea of it a mite unsettling
18:07:32 <SirCmpwn> I bet you could use a special value, like 0xFF, to delimit your string on both sides
18:07:38 <SirCmpwn> then seek back and forth to find the beginning and end
18:08:22 <GreyKnight> Shlemiel algorithm
18:09:56 <Bicycle> have you considered implementing Snobol4 in bf and using that instead? i think it would be less painful
18:10:18 <SirCmpwn> not using brainfuck to accomplish my goals defeats the purpose
18:10:30 <GreyKnight> Has anyone implemented befunge in brainf**k?
18:10:36 <SirCmpwn> brainfuck isn't really that difficult when you wrap your mind around it
18:10:36 <Bicycle> what is the purpose
18:10:44 <SirCmpwn> Bicycle: I'm making an IRC bot in brainfuck.
18:11:05 <GreyKnight> I knew it
18:11:28 <fizzie> I don't think most simple string-processing bf programs I've seen generally bother with counters. If you just put 0s on both sides of the string, you can seek to either end with [<] and [>]. That seems to be enough for simple tasks.
18:11:50 <GreyKnight> Ever since someone mentioned esolang IRC bots earlier, I knew we would be looking at the prospect of a bf bot
18:11:51 <SirCmpwn> ah, shit, I've fucked up my message processing
18:12:00 <Bicycle> http://coinread.com/algorithmic_information_theory_cambridge_tracts_in_theoretical_computer_science_.301556.html "the arithmetization of register machines", fuck yes
18:12:10 <fizzie> For more complicated tasks, "interpolated" things like "all even cells are characters, all odd cells are associated numbers" kind of things are popular too.
18:12:23 <SirCmpwn> GreyKnight: I have one working, just incomplete
18:12:26 <Bicycle> why is this a thing fizzie
18:12:39 <Bicycle> you're the expert on weird bot implementation choices. help me understand
18:12:40 <SirCmpwn> GreyKnight: wire up stdin/stdout of your standard bf interpreter to a TCP socket and it works
18:12:42 <GreyKnight> fizzie: index, character, index, character, etc?
18:13:32 <SirCmpwn> I'm crawling up my logic tree to find out where it stopped working
18:13:33 <fizzie> For example, or character, someflagaboutit, character, someflagaboutit, so that you can use the flags to seek into places.
18:13:46 <Bicycle> i sould have guessed the associated numbers were info, greyk- yeah
18:13:57 <GreyKnight> fungot: don't worry, we love you best
18:13:58 <fungot> GreyKnight: only one place can sit to bishan, take the barcap... all thebest!! :) its time n whr?
18:14:12 <fizzie> Bicycle: Why is writing IRC bots with weird languages a thing? I... well, I mean, isn't it obvious? What *else* would you do?
18:14:28 <SirCmpwn> ah, checking for the 'R' in "PRIVMSG" is broken
18:14:49 <Bicycle> when i wrote an irc bot i was told it was a wierd language choice so i guess i shouldn't complain
18:14:49 <SirCmpwn> probably because I tried to fold that code into the code for 'I' in "PING"
18:15:09 <fizzie> Bicycle: What did you write it in?
18:15:23 <Bicycle> common lisp. so uh not quite as esoteric
18:15:33 <fizzie> I have a sad about pietbot not really being around.
18:15:43 <SirCmpwn> did someone write a bot in piet?
18:15:44 <SirCmpwn> really?
18:15:52 <GreyKnight> s/write/draw/
18:15:53 <Bicycle> why does that surprise you
18:15:57 <SirCmpwn> well, yeah
18:15:58 <fizzie> I think it's a bit arguable.
18:16:02 <GreyKnight> Bicycle: do you have the code?
18:16:10 <fizzie> It connected and joined a channel, but I don't think it did anything else really?
18:16:11 <SirCmpwn> I didn't think anyone actually used piet for anything
18:16:16 <Bicycle> uh, yeah. it's kind of terrible but it's there
18:16:27 <Bicycle> SirCmpwn: "i didn't think anyone actually used brainfuck for anything"
18:16:35 <SirCmpwn> Bicycle: then you are quite mistaken
18:16:43 <Bicycle> yes, yes i was
18:16:44 <SirCmpwn> http://google.com/search?q=brainfuck+program+examples
18:16:47 <GreyKnight> I drew (most of) a roguelike in piet, I don't know where the source is
18:17:11 <SirCmpwn> piet gives you multiplication and division
18:17:11 <GreyKnight> (it was entirely terrible)
18:17:11 <SirCmpwn> lame
18:17:14 <fizzie> Bicycle: Most mission-critical Apache-driven websites are running on mod_bf. (Not true.)
18:17:20 <SirCmpwn> and distinct comparison operators
18:17:36 <Bicycle> SirCmpwn: i kind of lost interest after esolang's constant number page (because that page is So Cool)
18:17:47 <SirCmpwn> hah
18:17:54 <SirCmpwn> I don't see any value in that page
18:18:05 <Bicycle> oh? why not?
18:18:11 <SirCmpwn> although it might make my initial NICK/USER commands shorter
18:18:14 <Bicycle> i think it makes a nice concrete example of kolmogorov complexity
18:18:22 <GreyKnight> girls you're all pretty!
18:18:25 <SirCmpwn> Bicycle: I just use one method to get any number so I don't have to look at my code and wonder what it does
18:18:34 -!- Taneb has quit (Ping timeout: 260 seconds).
18:18:37 <SirCmpwn> loop to get to the nearest power of ten, then adjust
18:18:41 <Bicycle> i... are we having the theory/practice gap
18:18:44 <Bicycle> for brainfuck
18:18:47 <SirCmpwn> yes.
18:18:53 <Bicycle> what have i become
18:19:03 <GreyKnight> A monster
18:19:16 * GreyKnight shudders
18:19:45 <SirCmpwn> I've been thinking about embedded systems
18:19:48 <Bicycle> reminds me that i was weirdly disappointed in my book on kolmogorov using combinators instead of P''/brainfuck
18:19:50 <SirCmpwn> many of them have memory mapped I/O
18:20:01 <SirCmpwn> you could make a whole system in brainfuck if you took advantage of this
18:20:23 <GreyKnight> bfOS?
18:20:28 <SirCmpwn> yessir
18:20:38 <fizzie> !bf_txtgen NICK bfbot
18:20:42 <EgoBot> ​106 +++++++++++[>+++++++>+++>+++++++++>+<<<<-]>+.-----.------.++++++++.>-.>-.++++.----.+++++++++++++.+++++.>-. [653]
18:20:42 <SirCmpwn> you might even be able to get multitasking if you were insane
18:20:42 <GreyKnight> pls make the filesystem checker be called "brainfsck" kthx
18:20:47 <Bicycle> what is the link between mmus and bf here
18:20:52 <SirCmpwn> fizzie: don't use that nick D:
18:20:53 <Bicycle> SirCmpwn: "if"
18:21:13 <SirCmpwn> fizzie: I don't wanna change my code to use a different nick :P
18:21:32 <SirCmpwn> here's the WIP bot, btw: https://github.com/SirCmpwn/bf-irc-bot
18:21:34 <GreyKnight> I hear they have a thing called "NickServ"
18:21:40 <fizzie> You can bf_txtgen any strings, though. (The result is strictly non-optimal.)
18:21:49 <GreyKnight> Where you can "register" "nicknames"
18:21:51 <SirCmpwn> GreyKnight: but then I'd have to set up authentication in the bot, too
18:22:07 <SirCmpwn> and I have nick enforcement turned on for my account
18:22:08 <GreyKnight> You can log in unregistered
18:22:21 <Bicycle> SirCmpwn: you can send the password as part of the server connection. i'ts very convenient
18:22:33 <GreyKnight> So give the bot its own account :-P
18:22:34 <SirCmpwn> Bicycle: I'm aware of this, but it would require putting the password into my code
18:22:42 <SirCmpwn> and since I put this code on github...
18:22:47 <Bicycle> SirCmpwn: "a good use for that preprocessor stuff"
18:22:53 <SirCmpwn> yeah, yeah
18:22:58 <SirCmpwn> not worth the effort.
18:23:08 <SirCmpwn> I'll just add underscores if the nick is in use
18:23:17 <GreyKnight> You're writing a bf IRC bot and you're worried about too much effort? Okay then
18:23:19 <Bicycle> i'm telling you, brainfuck programming will be revolutionized once you do this new "structured programming" paradigm
18:24:03 <SirCmpwn> taking this memory mapped I/O idea further
18:24:14 <SirCmpwn> I wonder if it would be cheating to add some mappings to brainfuck memory
18:24:16 <GreyKnight> Dijkstra's famous paper "[/] considered harmful"
18:24:19 <SirCmpwn> for things like networking and shit
18:24:27 <SirCmpwn> in addition to the usual stdin/stdout
18:24:56 <fizzie> You should just be using PSOX for networking, of course.
18:25:00 <fizzie> Or is that PSOX 2.
18:25:07 <fizzie> Or is that PSOX 3.11 for Workgroups.
18:25:10 <fizzie> Something like that, anyway.
18:25:10 <Bicycle> GreyKnight: followed by knuth's response, "Structured Programming in ///"
18:25:43 <SirCmpwn> fizzie: I'm thinking about rewriting one of my existing IRC bots in bf
18:25:50 <SirCmpwn> fizzie: so it'd need things like HTTP and shit
18:26:24 <fizzie> Well, you get a sockets-style API from PSOX. "HTTP and shit" is just a SMOP.
18:26:28 <GreyKnight> IRC bots need HTTP
18:26:36 <SirCmpwn> GreyKnight: if I rewrite this one, it would
18:26:38 <Bicycle> ok i've been being sort of sarcastic but seriously you need some preprocessing or /something/ if you want to stay alive while doing this
18:26:49 <SirCmpwn> Bicycle: it's not as hard as you think.
18:26:49 <GreyKnight> fizzie: well, the HTTP anyway. I don't know about the other part
18:26:56 <SirCmpwn> Bicycle: I have almost half the code I need done
18:26:58 <fizzie> GreyKnight: Programmable shit.
18:27:14 <SirCmpwn> Bicycle: the key is excessive comments
18:27:18 <GreyKnight> fizzie, with a socket interface?!
18:28:05 <Bicycle> GreyKnight: it's nice for bots to have some rest crap. like @google.
18:28:07 <fizzie> GreyKnight: I don't think I want any shit in a sock.
18:28:12 <Bicycle> SirCmpwn: but geeeeeeeeeez
18:28:31 <shachaf> hi Bicycle
18:28:45 <Bicycle> hi shachaf
18:28:52 <GreyKnight> Bicycle: basically I think he's doing the preprocessing by hand
18:28:54 <shachaf> who is SirCmpwn
18:29:04 <Bicycle> God
18:29:10 <shachaf> `welcome SirCmpwn
18:29:11 <HackEgo> SirCmpwn: 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.)
18:29:17 <GreyKnight> "Standard way of getting numbers" was a tip-off
18:29:34 <Bicycle> a tip-off to his "bf programming style"
18:29:35 <SirCmpwn> hi shachaf
18:29:54 <SirCmpwn> GreyKnight: "standard" needs extra quotes
18:30:01 <SirCmpwn> I do whatever makes sense when I need something to be done
18:30:12 <GreyKnight> Take as many as you need: """""""""""""""""""""""
18:30:23 -!- TodPunk has quit (Ping timeout: 240 seconds).
18:30:25 <Bicycle> «"'standard'"»
18:30:32 <GreyKnight> you could probably do this with the C preprocessor you know
18:30:41 <GreyKnight> A few cunning macros
18:31:17 <SirCmpwn> probably.
18:31:27 <SirCmpwn> but a week from now, I'm going to forget this project ever existed.
18:31:44 <Bicycle> :(
18:32:04 <GreyKnight> @tell ais523 Hey coppro was looking for you on #acehack! Also, heptagram is AWOL.
18:32:05 <lambdabot> Consider it noted.
18:32:05 <shachaf> ‟" « » ‘ ’ ‚ ‛ “ ” „ ‟ ‹ › ⍘ ⍞ ❛ ❜ ❝ ❞ ❟ ❠ ❮ ❯ 〝 〞 〟 ꐄ " 󠀢
18:32:14 <Bicycle> what if you wrote cron in bf to remind you occasionally
18:32:18 <shachaf> Hmm, lots of them in there.
18:32:39 <GreyKnight> Bicycle: cronf**k you mean
18:32:58 <Bicycle> shachaf: is... that last one from outside the BMP
18:33:17 <shachaf> Bicycle: Yes, but it's boring.
18:33:22 <shachaf> E0022 TAG QUOTATION MARK [<U+E0022>]
18:33:27 <Bicycle> :(
18:33:40 <Bicycle> HEAVY_RIGHT-POINTING_ANGLE_QUOTATION_MARK_ORNAMENT, the quote i never knew i always wanted
18:33:54 <Bicycle> what the hell is "yi"
18:34:17 <GreyKnight> What about BIKE_STANDARD_LEFT_QUOTE ??
18:34:18 <SirCmpwn> what's that one language that pretends it's not esoteric and uses characters that no one has on their keyboard
18:34:25 <fizzie> APL.
18:34:35 <SirCmpwn> thanks.
18:34:36 <Bicycle> APL's cool, man, don't diss it.
18:34:38 <GreyKnight> Depends on your keyboard B-)
18:34:45 <fizzie> APL FUNCTIONAL SYMBOL QUOTE UNDERBARD, U+2358.
18:34:53 <fizzie> Now with extra bard.
18:34:57 <Bicycle> you can use J or K if you don't want a forty year old keyboard made of cast iron, though.
18:35:15 <shachaf> Oh, I missed some.
18:35:22 <GreyKnight> fizzie: how spoony are we talking here, on a scale from 1 to 10?
18:35:24 <shachaf> I just filtered for code points with QUOT in their names.
18:35:30 <shachaf> But there are ones like
18:35:37 <shachaf> 2E20 LEFT VERTICAL BAR WITH QUILL [⸠]
18:35:47 <Bicycle> is there a character class for quoty characters
18:35:55 <shachaf> More than one!
18:36:05 <Bicycle> i never should have doubted you, unicode.
18:36:17 <shachaf> Is GeneralCategory the same thing as character class?
18:36:28 <shachaf> There's InitialQuote and FinalQuote GeneralCategories.
18:36:48 <Bicycle> i dunno. probably
18:37:01 <shachaf> Also, " is neither an InitialQuote nor a FinalQuote, of course.
18:37:13 <GreyKnight> I was going to ask
18:37:13 <shachaf> Therefore its GeneralCategory is OtherPunctuation.
18:37:13 <Bicycle> so what is it
18:37:18 <Bicycle> niiiiice
18:37:24 <GreyKnight> What about APL quote quad?
18:37:25 <shachaf> (If lambdabot wasn't broken, we could ask it all that!)
18:37:27 -!- TodPunk has joined.
18:37:36 <shachaf> > text "\2203"
18:37:37 <lambdabot> mueval-core: <stdout>: hPutChar: invalid argument (invalid character)
18:37:44 <shachaf> lambdabot...........
18:37:56 <GreyKnight> > text "hi"
18:37:58 <lambdabot> hi
18:37:58 <shachaf> GreyKnight: I listed it above.
18:38:13 <shachaf> Oh, its GeneralCategory?
18:38:15 <shachaf> OtherPunctuation
18:38:21 <GreyKnight> Shocking
18:38:34 <GreyKnight> Why no APL category??
18:38:53 <shachaf> > filter (\x -> generalCategory x `elem` [InitialQuote, FinalQuote]) ['\0'..]
18:38:56 <lambdabot> "\171\187\8216\8217\8219\8220\8221\8223\8249\8250\11778\11779\11780\11781\1...
18:39:11 <shachaf> > (`showHex`"") =<< filter (\x -> generalCategory x `elem` [InitialQuote, FinalQuote]) ['\0'..]
18:39:13 <lambdabot> No instance for (GHC.Real.Integral GHC.Types.Char)
18:39:13 <lambdabot> arising from a use of...
18:39:26 <shachaf> > (`showHex`"") $ filter (\x -> generalCategory x `elem` [InitialQuote, FinalQuote]) ['\0'..]
18:39:28 <lambdabot> No instance for (GHC.Real.Integral [GHC.Types.Char])
18:39:28 <lambdabot> arising from a use ...
18:39:38 <shachaf> > (`showHex`"") . ord =<< filter (\x -> generalCategory x `elem` [InitialQuote, FinalQuote]) ['\0'..]
18:39:41 <lambdabot> "abbb20182019201b201c201d201f2039203a2e022e032e042e052e092e0a2e0c2e0d2e1c2e...
18:39:46 <shachaf> > (`showHex`"") . ord <$> filter (\x -> generalCategory x `elem` [InitialQuote, FinalQuote]) ['\0'..]
18:39:49 <lambdabot> ["ab","bb","2018","2019","201b","201c","201d","201f","2039","203a","2e02","...
18:39:55 <Bicycle> speaking of type errors, do we have Typed BF yet, to keep up with all the newest things in church calculus
18:39:57 <GreyKnight> Haskell: the language of type errors
18:39:58 * shachaf mashes keys randomly.
18:40:12 <Bicycle> System BF, we could call it!
18:40:18 <GreyKnight> Bicycle: do it
18:40:58 <GreyKnight> Also implement the whole thing in the Haskell type system of course
18:41:06 <shachaf> @quote OlegFacts
18:41:06 <lambdabot> OlegFacts says: GHC doesn't have a type checker. It emails your types to Oleg for checking.
18:41:21 <Bicycle> ...actually i have no idea how that would work, typed lambda calculus works because you have A->B
18:41:38 <Bicycle> i suppose someone somewhere has analyzed the meta-powerrrrr of various turing formalisms based on kindshit
18:42:18 <kmc> hm it would be fun to generalize brainfuck to arbitrary data types, rather than just integers
18:42:43 <Bicycle> "you can just encode any data as integers though"
18:42:45 <kmc> that might be a halfway worthwhile derivative
18:43:00 <GreyKnight> Can it support bricks as a type?
18:43:02 <shachaf> Derivative? Is that an infinite tape with a hole in it?
18:44:06 <Bicycle> shit, how would curry-howard work if you don't have functions. i may actually think about this
18:44:34 <GreyKnight> What no functions
18:44:40 <GreyKnight> O_o
18:45:03 <kmc> data Brick = Brain Brick
18:45:11 <Bicycle> it's just not brainfuck if it's not based on tedious tape spinning
18:45:56 <GreyKnight> Hey is there a unicode glyph for "brain" yet?
18:46:05 <GreyKnight> Possibly "brick" too
18:47:04 <shachaf> http://www.youtube.com/watch?v=4T3d4U29eqU
18:47:15 <GreyKnight> Bicycle: I kind (no pun intended) want to see how this Typetape thing would work now
18:47:22 <Bicycle> yeah me too. fuck
18:47:56 <kmc> the reference glyph for U+1F47E ALIEN MONSTER has a prominent exposed brain
18:48:04 <GreyKnight> Maybe we can bribe kmc to solve it and we can just eat popcorn and watch
18:48:35 <GreyKnight> kmc: why is there... no, never mind, stupid question
18:48:39 <kmc> but my browser font has some totally different octopus monster thing
18:48:49 <kmc> GreyKnight: japan
18:49:12 <GreyKnight> Yep
18:49:21 <kmc> there are also codepoints for MOUNT FUJI, TOKYO TOWER, and SILHOUETTE OF JAPAN
18:49:26 <kmc> though in fairness also STATUE OF LIBERTY
18:49:45 <GreyKnight> Although that raises the question of why the tentacle monster isn't the reference glyph
18:49:58 * kmc spittake
18:50:19 <GreyKnight> Well. Japan.
18:50:54 <kmc> i'm holding out for PYRAMID OF TIRANA or 801 GRAND BUILDING DES MOINES IA
18:51:11 <Bicycle> and we STILL don't have that noodle hanzi
18:51:13 <Bicycle> you suck unicode
18:51:40 <GreyKnight> What about a RAMPAGING GODZILLA glyph
18:51:49 <kmc> PISTOL and CRYSTAL BALL are both classified as "tools"
18:52:04 -!- Taneb has joined.
18:52:24 <shachaf> Where's the classification?
18:52:25 <GreyKnight> Of course!
18:52:50 <GreyKnight> I've complained in the past about the lack of a YELLOW SIGN glyph
18:53:17 <Bicycle> but we don't know what it "canonically" looks like >:/
18:53:30 <kmc> www.unicode.org/charts/PDF/U1F300.pdf
18:53:37 <GreyKnight> Bicycle: that's what they WANT you to think
18:54:05 <Bicycle> shachaf: re 2:10: I like this guy
18:55:03 <GreyKnight> Bicycle: we can at least use the three-pointed squiggly Yellow Sign as a reference
18:55:11 <Bicycle> a tune in the key of....... BRAINS
18:55:24 <kmc> it's not like the MULTIOCULAR O reference glyph is accurate to the canonical (heh) source
18:55:38 <Bicycle> GreyKnight: that's like using marco polo as a reference for chinese!
18:55:54 <GreyKnight> I say we submit a request to unicode about this
18:56:16 <GreyKnight> Maybe include the two variants of the Elder Sign too
18:56:31 <Bicycle> do they even have official admission criteria? or is it straightforwardly "someone who has money asked"
18:56:59 <shachaf> "someone who monqy has asked"
18:57:01 <GreyKnight> How are people supposed to adequately protect themselves against Shub-Internet online while Unicode drag their feet on the important Elder Sign issue?!?!?
18:57:22 <GreyKnight> It's an outrage
18:58:03 <kmc> at least we can protect ourselves from Colosson using U+1F414
18:58:55 <Bicycle> combining chicken above
18:59:05 <kmc> yes
18:59:29 <GreyKnight> Colosson = ?
18:59:34 <kmc> the numberwang robot
18:59:45 <kmc> http://www.youtube.com/watch?v=-r6NY4Kl8Ms
18:59:55 <GreyKnight> wat
19:00:14 <kmc> COOKED RICE with COMBINING CHICKEN ABOVE
19:00:47 <GreyKnight> If only you had some biang-biang noodles to go with it, eh?
19:01:00 * GreyKnight glares meaningfully at unicode
19:01:15 <Bicycle> wangs for the memory
19:02:59 -!- copumpkin has quit (Ping timeout: 252 seconds).
19:03:03 <Bicycle> yeah this is pretty much russell right here
19:03:39 -!- copumpkin has joined.
19:05:44 <GreyKnight> Okay so for a "typetape" language we probably need some operator for combining two cells or combining the current cell with an accumulator?
19:06:14 <GreyKnight> I don't know how to do any useful *unary* operations on types
19:06:38 <kmc> you're talking about generalizing the type of the cells?
19:06:56 <fizzie> http://sprunge.us/NcKK I wanted to `run this but it just goes "No output."
19:07:04 <GreyKnight> I figured the cells themselves contained types
19:07:45 <kmc> i was thinking that you would pick an algebraic data type, and then for each constructor you would have commands for "apply constructor", "remove constructor", and "loop if constructor present"
19:08:13 <fizzie> (Anyway there's also the Quotation_Mark UCD property, PropList.txt http://sprunge.us/JOXE -- but I can't get that out of Unicode::UCD.)
19:08:31 <kmc> which kind of correspond to +-[]
19:08:38 <kmc> except not, because of negative numbers, but anyway
19:08:59 <GreyKnight> Solution: negative types :o)
19:08:59 -!- DHeadshot has quit (Read error: Connection reset by peer).
19:09:00 <Bicycle> natural numbers were enough for our forefathers, i say
19:09:07 -!- DH____ has joined.
19:09:11 <kmc> i wonder what negative types are
19:09:55 <GreyKnight> I really hope they exist
19:10:02 <Bicycle> so, how do you define a new type (constructor)
19:10:08 <GreyKnight> (or can be made to exist)
19:10:19 <kmc> well in my simple conception, you don't, not in the language
19:10:28 <kmc> it's more like a family of languages, one for each algebraic type
19:10:38 <Bicycle> " In type theory, a negative type is one whose eliminators are regarded as primary"
19:11:12 <kmc> another question is how you deal with constructor mismatch
19:11:16 <kmc> i think probably the command should do nothing
19:11:57 <GreyKnight> Disclaimer: I don't actually know enough about type system arcana to design a language with a tape of types properly
19:12:27 <GreyKnight> (I just like the idea)
19:12:30 <kmc> well "type" is itself something of an algebraic data type
19:12:35 <Bicycle> er, why is it a tape of types, not a tape of typed objects
19:12:44 <kmc> data Type = TyInt | TyFunction Type Type | ...
19:12:55 <kmc> every interpreter in Haskell for a typed language has a type like this
19:13:02 <GreyKnight> Bicycle: because this is #esoteric :o)
19:13:19 <kmc> the thing that makes types interesting is the typing judgement, which relates expressions and types (and contexts)
19:14:20 <Bicycle> needs more subtyping
19:14:25 <GreyKnight> Bicycle: someone was trying to implement IEEE floats in Haskell's type system a while back. I figure this should be doable too.
19:14:55 <Bicycle> implement them, like, as types?
19:15:34 <GreyKnight> Apparently
19:16:04 <GreyKnight> To answer your next question: I haven't the faintest idea :-)
19:16:09 <Bicycle> i would have thought that'd be too close to rational arithmetic for it to be possible in haskell types
19:16:14 <Bicycle> what... what's my next question
19:16:57 <GreyKnight> "What/How on earth..."
19:17:32 <Bicycle> nah this channel has elliott pasting edwardk vintage type signatures
19:17:48 <Bicycle> you get used to these things
19:17:56 <GreyKnight> Wait, isn't Haskell's type system TC?
19:18:33 <Bicycle> well you can infer types most of the time
19:18:50 <Taneb> GreyKnight, I don't think it is quite
19:18:58 <Bicycle> i don't think haskell is even up to System F's level?
19:19:01 <GreyKnight> Oh!
19:19:44 * GreyKnight thought it was
19:19:46 <Bicycle> oh what
19:20:11 <kmc> right, system F allows higher-rank types, which are not in standard Haskell
19:20:27 <kmc> functions that require their arguments to be polymorphic
19:20:31 <kmc> GHC supports that though
19:21:14 <Bicycle> not entirely sure what "turing-complete type system" means though >_>
19:21:43 <Taneb> You can have turing-complete bathroom tiles
19:21:45 <GreyKnight> Well I thought Haskell's was but I guess I was wrong. Is it possible, I wonder?
19:22:01 <Bicycle> well what do you mean
19:22:05 <shachaf> Turing completeness is hardly a desirable property in a type system.
19:22:10 <Taneb> (I'm serious about bathroom tiles that can be turing complete)
19:22:13 <Bicycle> type inference is uncomputable in system f
19:22:24 <Bicycle> Taneb: now i want to tile my house with a wang set. thanks
19:22:42 <Taneb> Bicycle, it'll never repeat!
19:22:48 <Taneb> Unless it does
19:22:52 <Taneb> But you can't prove it!
19:22:53 <kmc> sure, there are type systems where you have abstraction, application, and therefore normalization, at the type level
19:23:19 <olsner> (there is also C)
19:23:36 <kmc> in dependently typed languages, typically there is not a syntactic distinction between terms and types
19:23:51 <kmc> 3 : Int, Int : Type, ((\x -> Int) 3) : Type
19:24:30 <shachaf> In GHC, BOX :: BOX
19:24:36 <Bicycle> uh, is Type a type, then?
19:24:55 <shachaf> Type corresponds to * in Haskell, if you know Haskell kinds.
19:25:15 <Bicycle> right, so it's a kind
19:25:36 <GreyKnight> Hm my life has been flipped now. Turned upside down, in fact
19:25:43 <olsner> types are values in the kind system
19:25:44 <kmc> Bicycle: if you admit "Type : Type" then usually bad things happen
19:25:49 <Bicycle> yes, that's why i'm asking
19:25:49 <kmc> sometimes there is an infinite hierarchy
19:25:50 <shachaf> Bicycle: There is a bit less of a distinction here, though.
19:25:54 <kmc> Set : Set1 : Set2 : Set3 : ...
19:25:55 <Bicycle> also what's the type of \x -> Int? [top] -> Type?
19:26:06 <kmc> yes
19:26:13 <kmc> or say forall a. a -> Type
19:26:30 <shachaf> kmc: Can you be polymorphic like that?
19:26:33 <Bicycle> oh right, real people use polymorphism
19:26:45 <shachaf> Agda doesn't have polymorphism as such, as far as I know.
19:27:04 <shachaf> I think it might have something with levels to make things that are level-polymorphic, or something. I don't know.
19:27:15 <kmc> i'm not talking about Agda specifically
19:27:22 <shachaf> I'm not either.
19:27:35 <shachaf> But most of my limited intuition for dependent types comes from Agda.
19:27:39 <kmc> mm
19:28:11 <Bicycle> i have got to figure out how dependent types work sometime. it seeems like one of those things that should seem intuitive but i haven't worked through my stupid head yet
19:29:37 <GreyKnight> So Type : Kind : Metakind : Metametakind : ... : Meta^NKind
19:29:49 <Bicycle> they just use numbers
19:29:59 <GreyKnight> Sounds sensible :-U
19:30:02 <Bicycle> i don't know why they even bother defining separate words at first any more :/
19:30:20 <Bicycle> you're just going to generalize this shit anyway, peeps
19:30:27 <Taneb> Value : Type : Kind : Metakind etc
19:30:31 <Taneb> Is there anything left of Value?
19:30:43 <kmc> Bicycle: if you have a passing knowledge of haskell, you might enjoy reading http://www.cse.chalmers.se/~ulfn/papers/afp08/tutorial.pdf
19:30:50 <Bicycle> thanks, i will
19:31:42 <Bicycle> ...i think i've seen this before...
19:32:02 <GreyKnight> Taneb: I guess past Metakind you're going to find they are mostly all just "*" anyway :o)
19:32:33 <Bicycle> -> at least is probably going to keep coming up
19:32:54 <GreyKnight> Oh hm
19:33:10 -!- TodPunk has quit (Quit: This is me, signing off. Probably rebooting or something.).
19:33:34 * GreyKnight loses his train of thought somewhere in Metakind Forest
19:33:54 <GreyKnight> . o O ( I shoulda brought breadcrumbs )
19:33:54 <kmc> metakind cuts
19:34:00 <Bicycle> so the real question here is obvious: how can we make a brainfuck derivative where Type : Type
19:34:28 * GreyKnight uses Metakind Cut! The tree is cut down! Now you can get past it!
19:35:27 <Bicycle> hm, so, this tutorial. why can't agda infer Bool -> Bool from not false = true; not true = false? how are dependent types involved there?
19:35:35 <GreyKnight> Okay I think kmc's angle on a typed bf derivative was more productive than whatever I was blathering about
19:35:51 <Sgeo> .
19:35:52 <lambdabot> Sgeo: You have 1 new message. '/msg lambdabot @messages' to read it.
19:35:55 <Sgeo> @messages
19:35:56 <lambdabot> Bike said 2h 48m 58s ago: so what's the problem with having applicatives be regular racket functions (possibly with some eval calls if they're multiply wrapped) and operatives be a type you pretend
19:35:56 <lambdabot> is underlying but really is overlying applicatives
19:36:17 <Bicycle> what if we had dependently kinded Kernel
19:36:42 <GreyKnight> Bicycle: Then my head asplode
19:36:54 <Sgeo> Bicycle, the problem is that my wrap function would behave differently semantically, rather than just performance-wise, from a wrap implemented in pure Qoppa
19:36:57 <olsner> oh, typed bf derivatives? I assume you've already gone through all variations of (brain :: Brick) possible?
19:37:12 <Sgeo> And that bothers me
19:37:42 <GreyKnight> I think kmc already implemented brickbraining as an algebraic data type somewhere in scrollback
19:37:52 <Bicycle> Sgeo: so you can't just define #%app so that ((wrap foo) . bar) = (foo . (eval bar)) or
19:37:58 <shachaf> GreyKnight: That type was uninhabited.
19:38:13 <Bicycle> or is it %#app... whatever
19:38:19 <Sgeo> It's #%app
19:38:45 <Bicycle> punctuation is a blight
19:39:21 -!- oerjan has joined.
19:39:37 * GreyKnight installs some furniture in the type and puts up a "For Rent" sign
19:39:47 * Sgeo is not sure if that would work or not (still doesn't solve my problem of wrap being a primitive for reasons other than performance)
19:40:23 <Sgeo> I'm a bit tired right now <-- excuse I use whenever brain is not working properly
19:40:26 <Bicycle> er what, it's supposed to be a primitive
19:40:48 <oerjan> shachaf: because of time travel duh
19:40:55 <Sgeo> In Qoppa, or just in Kernel?
19:40:59 <Bicycle> kernel
19:41:08 <Bicycle> i dunno about qoppa, i only skimmed kmc's post.
19:41:17 <oerjan> qoppa qoffee
19:41:20 <Bicycle> also hm, i must have some kind of brain block, because N = 0 | SN makes sense to me in set theory but not so much in type theory
19:41:36 <oerjan> in the qofree qomonad
19:42:04 <shachaf> oerjan: than'x
19:42:18 <oerjan> yw
19:42:48 <shachaf> Bicycle: Why doesn't it make sense?
19:43:16 <Bicycle> I have no idea. I just can't register Nat - zero : Nat, suc : Nat -> Nat and that being it.
19:43:46 <Bicycle> i suppose the type of pre is actually Nat -> Maybe Nat or something...
19:43:57 <Sgeo> Bicycle, if we're just talking wrap as a primitive, I _think_ it's easier to just have wrap extract the Racket function out of the container for operatives
19:44:13 -!- Bicycle has changed nick to Bike.
19:44:32 <Bike> Sgeo: isn't that what i said?
19:44:39 <Bike> wait, no, it isn't
19:45:03 <Bike> i'm gonna go ahead and mug you for your tiredness excuse right now kthx
19:45:06 <shachaf> Bike..........
19:45:17 <shachaf> Your nick is wrong.
19:45:27 <oerjan> <shachaf> After you choose one, you're doomed to spam #esoteric about it forever. <-- i assume you mean "it" in the general sense, since Sgeo proves that "it" can change (but the spamming doesn't)
19:46:07 <GreyKnight> That is not dead which can eternal spam
19:46:20 -!- TodPunk has joined.
19:46:29 <GreyKnight> And with strange qoppas even spam may cospam
19:46:50 <GreyKnight> Hmm what would cospam be
19:47:06 <Bike> maybe i should try learning typeshit by making a statically typed Kernel derivative.
19:47:51 <oerjan> Bike: are you familiar with the cata(?)morphism representation of this, i.e. Nat = forall a. (a -> (a -> a)) -> a ?
19:48:04 <Bike> oerjan: a bit
19:48:05 <shachaf> (a -> (a -> a)) -> a?
19:48:24 <shachaf> Not (a -> a) -> a -> a or something?
19:48:29 <oerjan> hm wait
19:48:36 <oerjan> sorry, what shachaf said
19:48:40 <GreyKnight> Bike: statically typed? You're a madman!
19:48:47 <Bike> GreyKnight: ?
19:48:48 <GreyKnight> (I approve)
19:49:06 <oerjan> aka church numerals in the case of Nat
19:49:08 <GreyKnight> Statically typed Kernel sounds quite bizarre to me
19:49:21 <Bike> why? types are pretty much totally orthogonal to vau calculus
19:49:33 <shachaf> oerjan: Uhhh you mean Boehm-Berarducci encoding?????
19:49:43 <Bike> well, i guess eval can't be typed terribly sanely
19:49:56 <Bike> burn that bridge when i get to it
19:50:15 <oerjan> GreyKnight: cospam is a program that can read an unlimited amount of mail, no matter how worthless
19:50:40 <oerjan> or is that just a spam continuation...
19:50:57 <oerjan> shachaf: I AM SURE MUST HAVE SOME NAME INVOLVING *MORPHISM
19:50:59 <shachaf> oerjan: Should I invite beaky from #haskell to this channel?
19:51:02 <oerjan> *+IT
19:51:08 <oerjan> shachaf: I DON'T KNOW
19:51:11 <shachaf> I think they'd fit right in.
19:51:12 <shachaf> 11:49 <beaky> I've just made a profound discovery
19:51:12 <shachaf> 11:49 <beaky> both water and air are monoids :D
19:51:20 <GreyKnight> wat
19:51:34 <oerjan> shachaf: ...that's not itidus in disguise is it?
19:51:37 <Bike> shachaf: ask them what type hydrogon is dependent over. thanks
19:51:45 <shachaf> Bike: You ask.
19:52:10 -!- AnotherTest1 has changed nick to AnotherTest.
19:52:12 <GreyKnight> :t hydrogen
19:52:14 <lambdabot> Not in scope: `hydrogen'
19:52:19 <olsner> :t hydrogon
19:52:20 <lambdabot> Not in scope: `hydrogon'
19:52:32 <shachaf> > cake
19:52:34 <lambdabot> ["One 18.25 ounce package chocolate cake mix.","One can prepared coconut pe...
19:52:35 <Bike> you suck, haskell
19:52:46 <shachaf> Bike: but cake.................
19:52:52 <GreyKnight> (I don't know what "hydrogon" is. A plane figure which grows two new sides every time you cut one off?)
19:52:58 <Bike> 11:52 <beaky> hydrogen :: Atom :D
19:53:18 <olsner> shachaf: contrary to common belief, #esoteric is not really "a channel for crazy people", but has (ostensibly) a topic... is beaky from finland?
19:53:19 <AnotherTest> but what isotope!
19:53:21 <shachaf> Bike: Wait, is that in /msg?
19:53:25 <GreyKnight> Wait, that's a hydragon
19:53:27 <oerjan> GreyKnight: best definition
19:53:35 <Bike> shachaf: who wants to know
19:53:56 <shachaf> olsner: beaky's IP address seems to indicate UAE
19:54:09 <oerjan> `addquote <olsner> shachaf: contrary to common belief, #esoteric is not really "a channel for crazy people", but has (ostensibly) a topic... is beaky from finland?
19:54:12 <HackEgo> 894) <olsner> shachaf: contrary to common belief, #esoteric is not really "a channel for crazy people", but has (ostensibly) a topic... is beaky from finland?
19:54:23 <GreyKnight> shachaf: but he may be from Finland *originally*
19:54:45 <oerjan> olsner: you are hereby nominated for self-defeating irc line of the year hth
19:54:55 <SirCmpwn> almost got message parsing working ^_^
19:55:08 <shachaf> olsner: I'm not "from" Finland but I'm a citizen thereof -- that counts, right?
19:55:09 <olsner> oerjan: thanks
19:55:12 <SirCmpwn> got all the way to identifying PRIVMSGs and checking if the first character is J (join command)
19:55:16 <oerjan> ARGH SO MANY NEW PEOPLE
19:55:22 <shachaf> `welcome SirCmpwn
19:55:24 <HackEgo> SirCmpwn: 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.)
19:55:25 <shachaf> `welcome Bike
19:55:26 <HackEgo> Bike: 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.)
19:55:27 <shachaf> `welcome GreyKnight
19:55:28 <HackEgo> GreyKnight: 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.)
19:55:29 <Bike> hi monqy
19:55:30 <shachaf> There.
19:55:35 <SirCmpwn> feel free to stop welcoming me
19:55:40 <SirCmpwn> I did read that the first time
19:55:42 <GreyKnight> `welcome SirCmpwn
19:55:44 <HackEgo> SirCmpwn: 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.)
19:55:48 <SirCmpwn> `kick GreyKnight
19:55:49 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: kick: not found
19:55:53 <Bike> SirCmpwn: so how are you going to deal with the excitingly unspecified nature of irc
19:55:59 <SirCmpwn> Bike: hmm?
19:56:07 <olsner> shachaf: citizens of finland who aren't from finland are not from finland?
19:56:12 <oerjan> SirCmpwn: i'm sorry but spamming welcomes is also an #esoteric tradition. and i do the kicking here (very rarely)
19:56:14 -!- Taneb has quit (Read error: Connection reset by peer).
19:56:14 <GreyKnight> Can we welcome bfbot when it arrives?
19:56:16 <Bike> servers with different commands and so on
19:56:26 <SirCmpwn> Bike: I can say for sure that all messages take up one line, so I read until \r\n and I can successfully isolate messages
19:56:28 <oerjan> ->
19:56:36 <SirCmpwn> Bike: then I just handle standard RFC messages from then out, and ignore invalid ones
19:56:39 <Bike> and yes where is this bot? i want to see it do nothing in proximity to me
19:56:47 <Bike> SirCmpwn: good luck~
19:56:51 <SirCmpwn> I'll let you know when I finish the "join channel" command
19:56:53 <AnotherTest> oh a new bot?
19:56:58 <SirCmpwn> then I'll bring it here so you can see it doing nothing
19:57:05 <Bike> you need it to respond to pings, too.
19:57:08 <SirCmpwn> yep
19:57:12 <SirCmpwn> I have a handler stubbed out
19:57:18 <SirCmpwn> I have written bots in sensible languages before
19:57:23 <Bike> otherwise it can only do nothing for a few minutes at a time. pretty underwhelming imo
19:57:39 <AnotherTest> I should fix delphi
19:57:54 <Bike> so, as our token practical language deployment expert, how do you think adding kinds to brainfuck would improve your programming workflow?
19:58:12 <SirCmpwn> you can whois it right now, if you want
19:58:31 <SirCmpwn> I done broke something, though :(
19:58:34 <AnotherTest> What's its name?
19:58:40 <Bike> bfbot obv.
19:58:45 <SirCmpwn> bfbot
19:58:46 <Bike> bft for short.
19:58:48 * AnotherTest isn't following
19:59:01 <SirCmpwn> I'm hitting the same breakpoint for every character read
19:59:08 <SirCmpwn> but only AFTER reading a PRIVMSG for the first time
19:59:36 <Bike> AnotherTest: just take the b (the second b) and o out, and bam, "bft".
20:00:13 <GreyKnight> Now turn the f upside down and remove its crossbar. Bam, blt
20:00:15 <AnotherTest> Bike: I got that, just not the whole thing about this new bot. "bfbot". I assume that this will be... another brainfuck interpreter?
20:00:20 <GreyKnight> Now I'm hungry
20:00:24 <Bike> AnotherTest: no, it's written in brainfuck.
20:00:26 <Bike> obviously.
20:00:30 <SirCmpwn> aha, the boolean cell is set to -1 at some point, when it should be set to zero
20:00:34 -!- Taneb has joined.
20:00:37 <AnotherTest> So how do you do networking?
20:00:45 <SirCmpwn> AnotherTest: hook up stdin/stdout to a tcp socket
20:00:46 <Bike> pipe through netcat like a real man
20:00:55 <SirCmpwn> piping through netcat is one way
20:01:02 <GreyKnight> AnotherTest: "cheating" :-U
20:01:23 <Bike> it's not cheating! why it's probably the most unix-philosophy program i've heard of in the last five minutes
20:01:34 <SirCmpwn> GreyKnight: okay, how about this: it's an interactive CLI program that simulates an IRC client, that just so happens to work if you plug it into a TCP socket
20:01:51 <Bike> ooh, you're a pro.
20:01:53 -!- AnotherTest has quit (Read error: Connection reset by peer).
20:02:02 -!- AnotherTest has joined.
20:02:13 <GreyKnight> Bike: to be fair the only contender for that award was "brainf**k with a type system"
20:02:31 <AnotherTest> well, my networking doesn't seem to work either :(
20:02:39 <Bike> actually there was someone talking about an FLPL compiler in another channel
20:02:49 <AnotherTest> anyway, this smells like a brainfuck extension!
20:02:51 <Bike> i don't know what FLPL is,but i don't think you pipe it, so bfbot is the champ.
20:02:51 <fizzie> It's cheating to not use PSOX.
20:02:55 <GreyKnight> AnotherTest: it's notworking then :-?
20:03:06 <SirCmpwn> I just wrote my own bf interpreter to help debug it anyway
20:03:11 <AnotherTest> GreyKnight: I would assume, nice one btw
20:03:16 <SirCmpwn> I wanted to write out network traffic to the console, as well as add some simple debugging
20:03:41 <GreyKnight> (In Russia they call it nyetworking)
20:03:50 <shachaf> (no they don't)
20:03:53 <AnotherTest> What extension is being used for this brainfuck bot?
20:03:58 <GreyKnight> (Yes they do)
20:04:02 <SirCmpwn> none, straight up brainfuck, AnotherTest
20:04:11 <kmc> straight outta compton
20:04:14 <Bike> SirCmpwn: i'm thinking to keep up the unixness you should just use tee
20:04:21 <Bike> AnotherTest: https://github.com/SirCmpwn/bf-irc-bot/blob/master/irc-bot.bf gaze
20:04:24 <Bike> gaze
20:04:32 <SirCmpwn> Bike: I'm developing it on windows /confession
20:04:52 <SirCmpwn> Bike: also, I don't think netcat would work, piping in bash is one way
20:05:00 <SirCmpwn> Bike: you could probably hack up socat to get it working
20:05:22 <AnotherTest> isn't that cheating :(?
20:05:24 <kmc> oh yeah bash has that silly /dev/tcp/ thing
20:05:34 <SirCmpwn> AnotherTest: isn't what cheating?
20:05:48 <Bike> SirCmpwn: have you considered writing a minimal POSIX system on top of windows? in brainfuck. to facilitate this.
20:05:54 <AnotherTest> using an external program to connect to the network
20:06:01 <SirCmpwn> Bike: briefly considered, then discarded that idea
20:06:10 <GreyKnight> Bike: I agree
20:06:14 <SirCmpwn> AnotherTest: not really
20:06:25 <SirCmpwn> AnotherTest: wiring up pipes is a very typical unixy thing to do
20:06:36 <SirCmpwn> <SirCmpwn> GreyKnight: okay, how about this: it's an interactive CLI program that simulates an IRC client, that just so happens to work if you plug it into a TCP socket
20:06:36 <Bike> briefly considered <-- did you really? you are my new hero.
20:06:39 <AnotherTest> alright alright
20:07:08 <AnotherTest> but as a compensation
20:07:11 <SirCmpwn> Bike: I'm thinking about doing some sort of minimal brainfuck system on embedded devices that use memory-mapped I/O, like most ARM devices
20:07:14 <GreyKnight> Echo echo
20:07:15 <Bike> you're the perfect marketing tool for me and greyknight's effort to bring brainfuck into the modern, strongly typed age.
20:07:21 <AnotherTest> you must write an AIML interpreter too
20:07:23 <AnotherTest> and embed that
20:07:24 <fizzie> You can use two pipes for the netcat solution. (Named pipes, for example.) And some versions of nc can fork-exec a program themselves, with both stdin/out redirected.
20:07:31 <AnotherTest> (all in brainfuck, ofcourse)
20:07:38 <SirCmpwn> fizzie: make it work and I'll believe you
20:07:44 <Bike> SirCmpwn: hm that would probably be a fun way to learn FPGA if i had one
20:07:53 <Bike> or verilog
20:07:54 <fizzie> SirCmpwn: The named-pipe solution was made work on-channel a while ago.
20:07:59 <SirCmpwn> fancy.
20:08:15 <Bike> SirCmpwn: for clarity, fizzie here has written an irc bot in befunge
20:08:25 <AnotherTest> someone should write a syntax-directed parser translation tool that generates brainfuck code to do the translation
20:08:27 <SirCmpwn> my condolances
20:08:40 <SirCmpwn> AnotherTest: that most certainly is cheating
20:08:43 <Bike> fungot: introduce yourself
20:08:44 <fungot> Bike: hey... i am sorry i overslept. now i am in extreme situations: first- before getting it
20:08:52 <GreyKnight> Says the bfbot guy
20:09:00 <fizzie> The named-pipe solution is really just "mkfifo in; mkfifo out; brainfuck > in < out & nc someplace < in > out".
20:09:02 <SirCmpwn> AnotherTest: that's like saying writing C qualifies as writing assembly
20:09:04 <GreyKnight> Hey fungot, get an alarm clock!
20:09:05 <fungot> GreyKnight: nw i has cum mre frm urself thn frm othrs hav done before the parade just now. she's in for a sec
20:09:12 <shachaf> `run cat $(ls wisdom | shuf | head -n1)
20:09:13 <Bike> fungot, i had a rough night too, but we can get through this thing. Together.
20:09:13 <fungot> Bike: u didnt giv..atlast min wat can i do.
20:09:14 <HackEgo> cat: gaspacho: No such file or directory
20:09:16 <AnotherTest> SirCmpwn: It's not (assuming the translator generator is writing in brainfuck)
20:09:19 <shachaf> `run cat wisdom/$(ls wisdom | shuf | head -n1)
20:09:20 <HackEgo> iwc contains puns! Puns galore! Puns after puns after puns! Also science!
20:09:30 <SirCmpwn> AnotherTest: hah
20:09:42 <SirCmpwn> I should make a C compiler in bf next time I'm feeling sadistic
20:10:01 <AnotherTest> great idea
20:10:08 <Bike> SirCmpwn: make it target your bf cpu.
20:10:15 <SirCmpwn> I have a bf cpu?
20:10:19 <fizzie> fungot doesn't really compare when it comes to painfulness; it's in Funge-98 and uses things like STRN, it's really a pretty pleasant to write code for.
20:10:20 <fungot> fizzie: i vil mistake me only cha.dnt talk to ur mummy.and once more. if its just us
20:10:21 <GreyKnight> ^style
20:10:22 <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
20:10:22 <fizzie> ^source
20:10:23 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
20:10:37 <GreyKnight> ^style jargon
20:10:37 <fungot> Selected style: jargon (UNIX-HATERS mailing list archive)
20:10:47 <Bike> SirCmpwn: iunno, probably
20:10:54 <Bike> fungot: what are your thoughts on X
20:10:54 <fungot> Bike: a publisher that i find that things like that) which takes the brute-force approach to this, with what happens on its or a regular shape? can you imagine something worse!!
20:10:59 <GreyKnight> fungot: this seems more appropriate
20:11:00 <fungot> GreyKnight: of os/ 8 days, your punishment will be considering your case.
20:12:07 <SirCmpwn> the problem with writing low level stuff in bf becomes how unoptimized bf is
20:12:12 <AnotherTest> SirCmpwn: You should add plugins
20:12:20 <SirCmpwn> how
20:12:21 <Bike> see, that's why you need a cpu
20:12:26 <Bike> think of it: superscalar brainfuck
20:12:30 <SirCmpwn> stdin/stdout is busy, AnotherTest
20:12:46 <fizzie> See, that's why you should be using PSOX.
20:12:48 <AnotherTest> with regexes
20:13:02 <AnotherTest> couldn't you make it go to a different program depending on the output?
20:13:06 <AnotherTest> (or input)
20:13:27 <fizzie> You get sockets, file IO and such with PSOX, after all.
20:13:49 <SirCmpwn> okay, here we go
20:14:07 <SirCmpwn> in theory, it should work proper, and hit a breakpoint when it gets PMed "J #channel"
20:14:27 <SirCmpwn> theory apparently isn't as great as it's chalked up to be.
20:14:49 <GreyKnight> Bike: it's the future!
20:15:28 <Bike> i actually kind of want to try this now. a brainfuck processor that batches increments and stuff might actually be interesting for a noob like me
20:15:49 <SirCmpwn> someone just suggested a redstone compiler to me.
20:16:00 <fizzie> I think there are a couple brainfuck processors.
20:16:15 <fizzie> Not physically realized ones, but designs.
20:16:27 <Bike> minecraft is poison, don't do it
20:16:36 <GreyKnight> fizzie: not good enough >:-(
20:16:38 <SirCmpwn> fizzie: there's a problem with the idea of bf processors
20:17:10 <SirCmpwn> fizzie: there are 6 bf instructions. No self-respecting CPU designer would leave those extra bits unused. It'd be rounded to 8
20:17:45 <Bike> What if the machine used base six instead of base two?
20:17:49 <Bike> You gotta think outside the box.
20:18:00 <SirCmpwn> no self respecting CPU designer would use base six.
20:18:03 <SirCmpwn> MAYBE base 3
20:18:07 <SirCmpwn> if they hated freedom.
20:18:09 <GreyKnight> There are eight commands listed on http://esolangs.org/wiki/Brainfuck but okay
20:18:30 <Bike> Excuse you, Setun is the greatest computer ever designed.
20:18:35 <Bike> And who loves freedom more than socialists?
20:18:46 <SirCmpwn> GreyKnight: right, err
20:18:50 <SirCmpwn> pretend I said nothing of the sort
20:19:04 <GreyKnight> oerjan: we need a swatting here
20:19:54 <fizzie> http://www.clifford.at/bfcpu/bfcpu.html is I think the one I was thinking of.
20:20:04 <fizzie> (But it's probably not the only one.)
20:20:19 -!- AnotherTest has changed nick to delphi.
20:20:31 -!- delphi has left.
20:20:59 <Bike> has a cache. that's more like it.
20:21:13 <GreyKnight> fizzie: hey he has a compiler too! http://www.clifford.at/bfcpu/bfcomp.html
20:22:14 <fizzie> It's not a C compiler, though. And it's (I think?) not written in Brainfuck.
20:22:39 <SirCmpwn> these commits are probably going to get me on the list of github commits with naughty language
20:22:53 -!- AnotherTest has joined.
20:22:54 <GreyKnight> Well, if you can rewrite the compiler in its own language, you could easily make a bf version
20:22:57 <Bike> isn't that every comit
20:22:59 <SirCmpwn> http://www.commitlogsfromlastnight.com/
20:22:59 <Bike> commit
20:23:19 <GreyKnight> Bike: ITYM vomit
20:23:28 <fizzie> GreyKnight: The yacc-generated parser might be slightly awkward to rewrite in bfc.
20:23:33 <Bike> "Forgot to recursively optimize loops in multitape-brainfuck." !!!!!
20:24:05 <fizzie> (Possibly the lex-generated lexer too.)
20:24:22 <Bike> «Saving now, this is some seriously complex shit trying to make this inherently-not-guaranteed-to-be-sample-accurate stuff into something resembling sample-accurate-to-the-greatest-extent-possible... It's on the verge of becoming usable, at least for the m» yes
20:24:30 <fizzie> (Though that would be pretty simple to reimplement without lex.)
20:24:33 <GreyKnight> Details details
20:24:41 -!- TheOracle has joined.
20:25:03 -!- TheOracle has quit (Remote host closed the connection).
20:25:10 <GreyKnight> Worst oracle
20:25:11 <Bike> god damn how much of this is minecraft
20:25:17 <Bike> how much of github is minecraft
20:25:22 -!- TheOracle has joined.
20:25:30 <AnotherTest> TheOracle: are you the worst oracle?
20:25:31 <TheOracle> Whom you if you, old time to the wide world and.
20:25:33 <fizzie> Bike: It's actually a fact that Github runs on a redstone thing.
20:25:36 <AnotherTest> Yes
20:25:43 <Bike> that explains a lot
20:25:49 <AnotherTest> TheOracle:
20:25:49 <TheOracle> Thy question cannot be answered by the Oracle!
20:25:56 <AnotherTest> Well at least it no longer crashes
20:25:58 <kmc> Bike: did you see that site which attempted to rank the awesomest ninja rockstar awesome real hackers on GitHub using some pagerank algorithm?
20:26:11 <kmc> it decided that the 10 awesomest most awesome projects were 9 Ruby libraries and Homebrew
20:26:19 <kmc> Linux kernel was down in the 100s
20:26:21 <GreyKnight> $ git tnt
20:26:27 <Bike> kmc: why would i see that site, ever
20:26:39 <TheOracle> Merry christmas stroke your, was soon solved they had seen her.
20:26:47 <kmc> also someone's vimrc beat out vim itself by a large margin
20:26:55 <kmc> it turns out that pagerank algorithms are very good at detecting circlejerks
20:26:56 <GreyKnight> Awesomest awesome super awesome happy fun haxxors
20:26:58 <fizzie> fungot: What do you think of oracles?
20:26:59 <fungot> fizzie: thus making it active user community, downloadable implementations, etc. are just a sin x b cos x iirc, x64 doesn't even support fnord other than windows). :p
20:27:11 <kmc> fungot: What do you think of circlejerks?
20:27:12 <fungot> kmc: she's a nurse and it's very tough to get: () is
20:27:14 <AnotherTest> TheOracle: What is the answer to all life, the universe and everything else?
20:27:15 <TheOracle> Up with who is, to all the animals could not feel.
20:27:23 <Bike> you sound worryingly relevant, fungot.
20:27:31 <fungot> Bike: i don't know any scheme jobs in the uk. rome was hot, though.
20:27:38 <AnotherTest> TheOracle: even fungot does better than you :(
20:27:38 <TheOracle> Own fashion , that mean mollie he said should be.
20:27:39 <fungot> AnotherTest: hack on a scheme os... there shouldn't be more than one define) is done like this too narrowly. there are no 12" or 17" macbooks yet.
20:27:51 <GreyKnight> Leave fungot alone, he's distracted by the hot nurses from Rome
20:27:53 <fungot> GreyKnight: what purpose doe tuples serve? you mean breaking the line in topic... just a small, extensible abstract object facility that could serve as a stop-motion recorder ( yes, this was not correct after saying that he can't combine them into compilable c code
20:27:55 <shachaf> TheOracle: Bots are off-topic in this channel. Please leave.
20:27:55 <TheOracle> there are, merry christmas what right have you to.
20:27:56 <kmc> enlarge your macbook 200% today
20:28:10 <shachaf> AnotherTest: You too.
20:28:13 <shachaf> Er, not leave.
20:28:15 <AnotherTest> Bots isn't in his dictionary yet :(
20:28:17 <shachaf> Have your bot leave.
20:28:25 <shachaf> This is the wrong channel for bots!
20:28:32 <AnotherTest> What about fungot?
20:28:33 <GreyKnight> Did we ever figure out if Sgeo was a bot or not
20:28:33 <fungot> AnotherTest: hope you understand me?
20:28:45 <fizzie> There's no-one here but us bots.
20:28:53 <kmc> you have to tell me if you're a bot
20:29:02 <GreyKnight> botornot.com
20:29:10 <AnotherTest> But if the bot is written in an esoteric language, it's fine right?
20:29:14 <kmc> shachaf: the preferred way to install homebrew is ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)"
20:29:18 <kmc> curl -k means "don't check SSL certs"
20:29:19 <kmc> :(
20:29:42 <shachaf> kmc: What happens if you don't give it -k?
20:29:49 <shachaf> What does it check them against?
20:30:16 <GreyKnight> kmc: tell them "fix your certs" plz thx
20:30:17 <GreyKnight> shachaf, I'm guessing it fails miserably
20:30:34 <shachaf> GreyKnight: If I remember correctly it does something much worse.
20:30:35 <Bike> but without certs someone could install a malicious homebrew! that installsmalicious ruby software!!
20:30:42 <shachaf> But I don't remember whether I remember correctly.
20:30:51 <fizzie> Against the "default CA cert bundle", whatever that means in your curl installation.
20:31:17 <kmc> the cert is github's cert
20:31:21 <kmc> it's presumably a legit cert
20:31:23 <fizzie> FWIW, my curl gets that URL just fine without -k.
20:31:24 <Bike> this agda tutorial puts a space in "shorthand"
20:31:26 <Bike> "short hand"
20:31:45 <GreyKnight> How can it do something worse than "don't check certs" or "fail miserably"?
20:31:45 <GreyKnight> Unless it causes your computer to sprout a knife-arm and cut you or something
20:31:45 <kmc> but people have broken curl installs on their broken macs and have no CA certs, or something
20:32:30 <kmc> i'm 95% sure that they're only using SSL because github forces it
20:32:33 <shachaf> I thought curl didn't actually check certificates as such.
20:32:34 <kmc> and they want to host on github
20:32:35 <GreyKnight> kmc: I can't decide if that's better or worse
20:32:43 <shachaf> I don't remember, though.
20:32:49 <kmc> most of these "curl | sudo sh -" installers don't even use SSL
20:33:04 <fizzie> It does check certificates by default.
20:33:44 <GreyKnight> "curl | sudo sh -" <-- now I have a D:
20:34:25 <Bike> welcome to modern life
20:34:30 <fizzie> I don't know if that's any worse than a right-click-link-save-as-run installer.
20:35:00 <kmc> it's not
20:35:05 <kmc> those are terrifying too
20:35:13 <Bike> mm, probably worse, since it explicitly asks for administrator privileges? (like any old windows user didn't have administrator privileges)
20:35:15 <GreyKnight> It's slightly worse in that you don't even have the opportunity to inspect what's been downloaded
20:35:24 <kmc> well it's not hard to do so
20:35:36 <kmc> but there is about zero chance that you could detect sufficiently clever malicious code in a shell script or an exe
20:35:55 <kmc> the difficulty of doing so, as a function of size, grows faster than any computable function
20:36:07 <Bike> or, more practically, nobody's going to do that, they just want homebrew.
20:36:31 <fizzie> Is this "homebrew" incidentally some kind of a modern take of... whatever those things used to be called. Fink? MacPorts? Things like that.
20:36:35 <kmc> yes
20:36:41 <kmc> it's the new hipster-approved one
20:36:49 <Sgeo> I should check if Planet uses SSL
20:36:52 <Sgeo> Scary if it doesn't
20:36:58 <Sgeo> And by "check", I mean "ask on IRC"
20:36:59 <fizzie> I think I used those two, but not a Homebrew.
20:37:00 <SirCmpwn> so I had a thought
20:37:05 <SirCmpwn> AES/CFB8 in brainfuck
20:37:18 <kmc> also they override every package's CFLAGS, based on a dubious understanding of what various flags mean
20:37:20 <Bike> but can you do it efficiently
20:37:24 <SirCmpwn> I think I may be slightly (extremely) crazy in this thought
20:37:39 <fizzie> kmc: Do you mean it's FASTER? I must GET IT.
20:37:40 <SirCmpwn> oh, would also need RSA
20:37:46 <fizzie> (I don't have an OS X system.)
20:37:51 <shachaf> @brain
20:37:52 <lambdabot> Be quiet Pinky, or I shall have to hurt you.
20:37:53 <Bike> -funroll-loops
20:38:02 <kmc> like they claim that -Os is as fast as -O2, based on a dubious reading of the manpage, but not based on any benchmarks or any understanding of basic rules of computer science
20:38:04 <shachaf> -fomit-instruction-pointer
20:38:14 <kmc> -fomit-all-over-the-sofa
20:38:24 <Bike> ugh instruction pointer
20:38:27 <Sgeo> Who is "they" here?
20:38:30 <GreyKnight> Who's "they"
20:38:35 <kmc> homebrew maintainers
20:38:37 <Bike> the homebrew people, assumedly
20:38:45 <oerjan> <GreyKnight> oerjan: we need a swatting here <-- i have no idea what you are talking about, comrade
20:38:45 <fizzie> -funsafe-math-optimizations # it's both FUN and SAFE, why WOULDN'T I want it?
20:38:54 <kmc> fizzie: MacPorts is still going strong but Fink is somewhat dead, afaik
20:39:05 <Bike> fizzie: i'm still surprised that's even a thing
20:39:13 <kmc> people have packaged Mosh for all three but we are too lazy to merge the Fink one
20:39:53 <GreyKnight> oerjan: the new bf expert didn't know how many commands are in bf
20:40:14 <Bike> eh ,. are easy to forget
20:40:21 <Bike> they're not purely functional after all. hard to type!
20:40:24 <fizzie> Bike: -funsafe-math-optimizations -funsafe-loop-optimizations # MORE FUN
20:40:44 <SirCmpwn> more debugging shit! wheee
20:40:57 <SirCmpwn> my little bf interpreter is getting further and further from brainfuck proper
20:41:01 <GreyKnight> I've never used brainf**k in my life and I knew there were eight off the top of my head :-I
20:41:04 <Sgeo> <Sgeo> When Racket downloads from PLaneT, how secure is it? SSL?
20:41:06 <Bike> «If given, the loop optimizer will assume that loop indices do not overflow, and that the loops with nontrivial exit condition are not infinite.» aaaaaaaaaaaaaaaaaaaaaaah
20:41:06 <SirCmpwn> but luckily, only when you use --debug
20:41:11 <Sgeo> <soegaard> What is there to keep secure :-)
20:41:14 <Sgeo> "Encouraging"
20:41:45 <Bike> SirCmpwn: "with --debug, cmpwnBF actually runs as a specialized Racket program"
20:41:47 <Sgeo> I hope that's just a random person
20:42:13 <SirCmpwn> with --debug, network traffic is logged to the console, breakpoints are enabled, and you can use %text% to echo text to the console
20:42:20 <Bike> GreyKnight: when you stare in anguish at superoptimizers all day you forget about the "practical" things like i/o
20:42:26 <SirCmpwn> and the name of this interpreter is netfuck, for the record
20:43:05 <GreyKnight> Sgeo: sounds legit :-I
20:43:10 <olsner> fizzie: double funsafe is not only MORE FUN but also MORE SAFE
20:43:45 <kmc> i am still wondering about if releasing a tool to auto-trojan package downloads of various types would be a net good or evil
20:43:46 <fizzie> Bike: Funny fact: where (current) GCC manual says (of -ffast-math) "It may, however, yield faster code for programs that do not require the guarantees of these specifications.", DJGPP manual has the arguably more honest "Might allow some programs designed to not be too dependent on IEEE behavior for floating-point to run faster, or die trying."
20:43:58 <fizzie> Bike: (It could be just from an earlier GCC manual, but still.)
20:43:58 <kmc> i think this tool is not hard to write, and so the Bad Guys probably have it already
20:44:08 <kmc> and releasing it could get people to take the issue more seriously, which they currently do not AT ALL
20:44:11 <Bike> fizzie: you would me........
20:44:38 <Bike> wound. well whatever.
20:44:44 <GreyKnight> kmc: "auto-trojan"?
20:44:51 <kmc> witness also the huge clusterfuck when they tried to add package signing to Arch
20:44:57 <Bike> kmc: you do this security stuff. you know that at best there'd be a panic followed by highly advertised nonsolutions.
20:44:59 <fizzie> GreyKnight: It's when you put wheels and gasoline engine on the horse.
20:45:10 <GreyKnight> Oh I see
20:45:15 <SirCmpwn> this is awfully interesting
20:45:17 <kmc> GreyKnight: yeah; you would intercept HTTP downloads of shell scripts, RPMs, debs, ISOs, python packages, ruby packages, etc
20:45:23 <SirCmpwn> it doesn't make it back to the main message handling loop
20:45:24 <kmc> and automatically install some trojan code in each
20:45:32 <SirCmpwn> yet somehow messages are still being pulled in
20:48:06 <oerjan> <GreyKnight> oerjan: the new bf expert didn't know how many commands are in bf <-- he probably just didn't count the impure ones, hth
20:48:08 <GreyKnight> kmc: I am pretty sure that's at least locally evil
20:48:16 <SirCmpwn> ah, found it
20:48:17 * SirCmpwn refactores
20:48:20 <SirCmpwn> refactors, too
20:48:21 <GreyKnight> (But possibly a necessary one :-/)
20:48:25 <kmc> you would also intercept downloads of text or HTML pages and replace hashes of any file you already trojaned
20:48:26 <shachaf> kmc: No worries -- I put up an md5 file along with the ISO, so you know it's secure.
20:48:30 <kmc> :D
20:48:32 <Bike> «_◦_ : {A : Set}{B : A -> Set}{C : (x : A) -> B x -> Set} (f : {x : A}(y : B x) -> C x y)(g : (x : A) -> B x) (x : A) -> C x (g x)» type theory sure is beautiful
20:48:33 <SirCmpwn> haha, I'm refactoring brainfuck code
20:48:39 <shachaf> Er, sorry, md5 is broken. It's a sha1 file now.
20:48:42 <kmc> is that dependent composition?
20:48:51 <Bike> fully dependent composition
20:48:55 <shachaf> That looks like dependent composition to me.
20:49:05 <kmc> 47% composition
20:49:28 <Sgeo> Does SSL have problems for this purpose that signed packages wouldn't?
20:49:32 <Bike> the 47% of this country that thinks they just deserve strong typing constraints
20:49:39 <Bike> (romney jokes are old hat now aren't they)
20:49:50 <kmc> maybe there should be sugar for writing a function where the type of each argument is a function of all previous arguments
20:49:57 <kmc> but maybe it doesn't actually come up that ofter
20:50:00 <GreyKnight> oerjan: disclaimer: the only reason I know there are 8 bf commands is because of all the derivatives with eight-fold structure
20:50:06 <kmc> Sgeo: yes i would say so
20:50:13 <kmc> SSL doesn't protect you against e.g. web server compromise
20:50:22 <kmc> ideally package signing happens on highly trusted, non-networked computers
20:50:36 <shachaf> You know the thing where converting from ∃ to ∀ is just uncurrying?
20:50:46 <shachaf> Or maybe it's currying.
20:50:56 <kmc> also SSL is just a shitty system in practice
20:51:33 <kmc> i can get a fake racket-lang.org cert from DigiNotar or TURKTRUST or whichever CA fucks up next
20:51:52 <olsner> shachaf: ∃x.P(x) = not ∀x.not P(x)?
20:51:57 <kmc> you could hardcode your org's cert into your installer, though
20:52:00 <shachaf> olsner: More or less.
20:52:28 <kmc> shachaf: did you hear the details of the TURKTRUST fuckup?
20:52:42 <shachaf> Not much.
20:52:57 -!- greyooze has joined.
20:52:59 -!- GreyKnight has quit (Quit: .).
20:53:02 <kmc> apparently the fradulent *.google.com cert was constructed by accident
20:53:07 -!- greyooze has changed nick to GreyKnight.
20:53:41 <GreyKnight> firefox have binned all turktrust certs at least temporarily until things become clearer, or so I heard
20:53:50 <Sgeo> I take it if I provided examples of my Qoppa in Racket code and use #lang planet you would not be pleased
20:53:50 <kmc> people have these SSL MITM proxies, where you install your org's cert on your employees' machines, and then you can spy on them
20:54:08 <Bike> charming.
20:54:37 <kmc> one of TURKTRUST's customers was using one of these
20:55:04 <olsner> but turktrust accidentally handed out CA certs?
20:55:07 <kmc> and TURKTRUST accidentally gave them an intermediate CA cert/key
20:55:19 <kmc> so it generated a "real" *.google.com cert, and Chrome noticed
20:55:29 <shachaf> Chrome ruins everything.
20:56:25 <shachaf> Hmm, I hope the Derive{Functor,Foldable,Traversable} patch gets into GHC 7.6.2.
20:58:36 <kmc> what's the change?
20:58:57 <kmc> Sgeo: signing also allows you to have completely untrusted mirrors, distribute ISO images by bittorrent, etc
20:59:01 <shachaf> Not being O(n^2) anymore.
20:59:08 <kmc> cool
20:59:24 -!- ais523 has joined.
20:59:25 <kmc> (though, I suppose serving the .torrent file from your trusted mirror over SSL would be good enough)
20:59:32 <shachaf> It generated instances like fmap f [] = []; fmap f (x:xs) = f x : fmap (\e -> f e) xs
20:59:45 <kmc> sad
20:59:46 <shachaf> So by the time you get to the end of the list you have n eta-expansions.
20:59:56 <Sgeo> <chandler> Offline signing isn't much benefit in practice - better to rotate short-expiration signing certificates which are themselves signed by an offline CA.
21:00:04 <Sgeo> <chandler> This also implies that certificate hardcoding is a bad idea; you'd want to hardcode the root CA (and ideally have one level of intermediary CA that could be revoked too).
21:00:12 <Sgeo> <chandler> Also, while this level of signing might authenticate that the package you downloaded really did come from planet, there's a bigger question about what prevents people from publishing malicious code to planet itself.
21:00:18 <kmc> yeah, that seems reasonable
21:00:44 <GreyKnight> [\0x08] all the way
21:01:05 <shachaf> go team a
21:01:21 <Sgeo> elliott, Phantom_Hoover Taneb Fiora shachaf
21:01:29 <shachaf> Sgeo................
21:01:33 <shachaf> I'm not on the list.
21:01:35 <Taneb> Thanks
21:01:40 <Sgeo> shachaf, I know
21:01:49 <Taneb> shachaf, read Homestuck then you will be on the list!
21:02:03 <fizzie> Or don't be homestuck, then you will also be on the list.
21:02:07 <fizzie> Don't read.
21:02:11 <fizzie> Or don't be.
21:02:36 <shachaf> Taneb: more like DUMBSTUCK right
21:02:47 <shachaf> The main utility of that website seems to be getting people on lists.
21:03:45 <GreyKnight> It's secretly run by Santa Claus
21:04:18 -!- epicmonkey has quit (Ping timeout: 264 seconds).
21:04:19 <shachaf> Taneb: Why should I read it?
21:04:32 <Taneb> It's the lens of webcomics: nobody actually understands it
21:04:52 <Taneb> And it's got a big community?
21:04:55 <Taneb> And it's rather good?
21:05:22 <shachaf> I understand lens!
21:05:36 <Taneb> You think you understand lens.
21:05:40 <shachaf> Big communities are bad.
21:05:47 <shachaf> Also it doesn't seem good to me.
21:05:59 <Sgeo> shachaf, it gets going later
21:06:05 <Sgeo> The first part is rather slow
21:06:08 <Deewiant> The start is kinda shit
21:06:09 <Sgeo> But it speeds up
21:06:15 <shachaf> Nothing with animations that move back and forth every 0.05 seconds can be good.
21:06:23 <shachaf> Deewiant: And the middle, and the end?
21:06:29 <shachaf> I guess they don't know what the end is like yet.
21:06:34 <GreyKnight> :t Homestuck
21:06:35 <lambdabot> Not in scope: data constructor `Homestuck'
21:06:35 <Sgeo> There are more involved animations. WIth music.
21:06:47 <Sgeo> And games
21:06:47 <Bike> > Stuck homes
21:06:48 <Taneb> http://www.mspaintadventures.com/?s=6&p=007138
21:06:49 <lambdabot> Not in scope: data constructor `Stuck'Not in scope: `homes'
21:06:49 <lambdabot> Perhaps you me...
21:06:53 <Bike> perhaps i me
21:07:15 <Taneb> Bike, perhaps you lambdabot
21:07:19 <GreyKnight> <lambdabot> Perhaps you and me ought to get together some time? *wink*
21:07:33 <Bike> uh sorry lambdabot but i'm... i'm dynamically typed
21:07:38 <shachaf> @nixon
21:07:39 <lambdabot> The presidency has many problems, but boredom is the least of them.
21:07:58 <shachaf> @nixon
21:07:59 <lambdabot> You won't have Nixon to kick around anymore, because, gentlemen, this is my last press conference.
21:09:40 <GreyKnight> > lens Homestuck
21:09:41 <lambdabot> Not in scope: data constructor `Homestuck'
21:09:54 <Taneb> http://www.mspaintadventures.com/?s=6&p=002621
21:11:40 * GreyKnight clicks, watches loading animation for 5 seconds, closes tab
21:11:53 <Taneb> Silly GreyKnight!
21:12:29 <GreyKnight> I got bored :-(
21:12:49 <Taneb> Open it, then switch to a different tab until the music starts
21:13:14 <SirCmpwn> brainfuck is aptly named
21:13:20 <kmc> not really
21:13:24 <SirCmpwn> my head is hurting trying to figure out where my logic is broken
21:13:32 <Taneb> It's one of the more easy to understand languages
21:13:36 <shachaf> Perhaps your logic deserves that name, then.
21:13:36 <Taneb> Try using Glass
21:13:40 <shachaf> Rather than the language.
21:13:43 <kmc> brainfuck is pretty much the least respected language in this channel
21:13:44 <kmc> fyi
21:13:51 <SirCmpwn> that's nice
21:13:53 <kmc> only Category:Shameful does worse
21:14:15 <shachaf> What about PHP?
21:14:17 <Bike> hey, cmcpwn isn't writing a hilarious brainfuck derivative about parsing, cut 'im some slack
21:14:24 <olsner> kmc: is that an actual language or a category?
21:14:25 <Bike> "php isn't a language" joke here
21:14:26 <GreyKnight> kmc: to be fair we respect bf more than the bf derivatives
21:14:44 <kmc> olsner: so what you're saying is I should make a language called Category:Shameful
21:14:53 <GreyKnight> olsner: we should create a language whose name begins with "Category:"
21:15:04 -!- AnotherTest has quit (Quit: Leaving.).
21:15:11 <olsner> kmc: I would never say that ... but yes, you should
21:15:16 <GreyKnight> kmc: well, any Category:* would do but yes
21:15:27 -!- TheOracle has quit (Remote host closed the connection).
21:17:28 <ais523> kmc: actually, we don't mind BF itself too much
21:17:29 <lambdabot> ais523: You have 2 new messages. '/msg lambdabot @messages' to read them.
21:17:31 <ais523> we just dislike its derivatives
21:17:44 <kmc> fair enough
21:17:47 <kmc> BF is not that esoteric though
21:17:54 * GreyKnight breaks out the emergency category theory textbooks
21:18:02 <kmc> its semantics are simple, and close to fairly non-esoteric things
21:18:08 <SirCmpwn> I'm not making a derivative, I'm just coding with it
21:18:11 <Bike> but [] formas a monad!
21:18:27 <ais523> quintopia: there's very little space for synchronization as-is, the decoy setup wouldn't be done in time if I used any more decoys = any more space for synchronization
21:18:57 <ais523> also, it tries to use repeats of 2 or 4 to defeat programs that alternate polarity, and programs that defeat programs that defeat programs that alternate polarity
21:19:05 <SirCmpwn> trying to figure out how to get my PRIVMSG parser to correctly give control back to the main loop
21:19:13 <ais523> Bike: [] isn't very monoid-like, it takes the wrong number of arguments
21:20:19 <GreyKnight> ais523: what about its integrals? *ducks*
21:20:33 <ais523> GreyKnight: ?
21:20:52 <oklopol> glass is like 100 times easier to program than bf
21:20:55 -!- DH____ has quit (Read error: Connection reset by peer).
21:21:16 <SirCmpwn> I looked at glass
21:21:19 <SirCmpwn> seems far easier than brainfuck
21:21:19 -!- DHeadshot has joined.
21:21:25 <SirCmpwn> reminds me of IL or java bytecode
21:21:29 <oklopol> it is very high level
21:21:40 <oklopol> you can pretty easily just do normal programming with silly syntax
21:21:49 <Bike> try something low level, like Checkout.
21:21:56 <oklopol> with bf that's very hard without macros + at least linear blow-up
21:21:57 <SirCmpwn> I think kmc was just blindly looking around for something to use to feel superior to me
21:22:14 <oklopol> i think Taneb said that
21:22:19 <oklopol> that glass should be tried
21:22:23 <GreyKnight> <ais523> we just dislike its derivatives
21:22:32 <ais523> there are a few exceptions
21:22:37 <ais523> but most BF derivatives are very uncreative
21:22:45 <Bike> no see it's a calculus joke
21:22:45 <oklopol> i do agree with kmc that the semantics of bf are particularly easy, and certainly easier than that of glass
21:22:50 <Bike> "integrals" "derivatives"
21:22:51 <Bike> humor!
21:23:08 <SirCmpwn> oklopol: from arm's reach, sure, but it'd be easier to code in glass than in bf
21:23:35 <oklopol> how complicated a language is has little to do with how nice it is to use
21:23:44 <ais523> yep
21:23:46 <kmc> SirCmpwn: no I was explaining why the whole channel was snarking about brickbrains and such
21:23:48 <oklopol> well except if its too simple or too complicated it probably sucks
21:23:50 <ais523> writing in BF is much like writing in asm
21:23:55 <ais523> especially if you leave every other cell at 0
21:24:05 <ais523> in order to give you a free supply of temporaries
21:24:07 <Bike> but are there branch prediction issues!
21:24:09 <quintopia> ais523: if i changed space_hotel so that it rotates between leaving 0,1, and 2 in its trail instead of always leaving 2, would it then beat anticipation2?
21:24:24 <SirCmpwn> ais523: so far, my IRC bot only needs two cells to run
21:24:26 <GreyKnight> Bike: THANK YOU
21:24:27 <SirCmpwn> no, that's a lie
21:24:30 <GreyKnight> Bike++
21:24:30 <ais523> quintopia: not necessarily; anticipation2 wouldn't win the same way it currently wins against it
21:24:36 <ais523> but it might beat it via the fallback
21:24:37 <SirCmpwn> it needs that to run the main loop, the initialization uses more
21:24:42 <Bike> GreyKnight: branch prediction isn't worth incrementing
21:24:55 <GreyKnight> -_-
21:25:03 <quintopia> ais523: space_hotel already uses a timer clear, after which it changes polarity and cycle length.
21:25:04 <GreyKnight> nobody understands me today
21:25:04 <kmc> SirCmpwn: anyway I'm sorry that I caused you offense
21:25:15 <Bike> (i know you meant me getting the joke)
21:25:15 <SirCmpwn> you aren't really, but I don't care
21:25:16 <GreyKnight> turquoise bicycle shoes actualise radishes greenly
21:25:23 <Bike> (you see i was going for the double joke combo)
21:25:24 <SirCmpwn> I was never offended
21:25:26 <ais523> quintopia: yeah, but timer clears seem to have a random chance of failing against anticipation2
21:25:35 <ais523> basically because sometimes after changing polarity and cycle length
21:25:38 <kmc> ok well thanks for telling me how I feel and welcome to my /ignore
21:25:41 <ais523> you still get locked anyway
21:25:48 <quintopia> why is that?
21:25:50 <SirCmpwn> hah
21:25:53 <ais523> and you'd get into a constant-tweaking fight to see if that happened or not
21:26:10 <SirCmpwn> god fucking dammit
21:26:14 <SirCmpwn> get your ass back in the main loop
21:26:14 <GreyKnight> Girls you're all pretty! Play nice
21:26:22 <ais523> quintopia: well, anticipation2's lock works by trying to shove its own flag past 0, then pull it back to where it would have been otherwise
21:26:26 <ais523> and this works at both polarities
21:26:47 <quintopia> ais523: but does it work on 3-cycle clears too?
21:26:59 <ais523> if the new clear loop happens to go past 0 at approximately the same time, it works
21:27:02 <ais523> and it doesn't care about cycle length at all
21:27:05 <ais523> so long as it's an integer
21:27:30 <quintopia> so the only guaranteed way to beat the fallback is to use a non-integer cycle-length
21:27:32 <GreyKnight> You can have non-integral cycle lengths...?
21:27:33 <ais523> (btw, this is why anticipation2 uses a non-integer cycle length clear loop when attacking other defence programs; it's to beat shudderlock)
21:27:42 <ais523> GreyKnight: yeah, my favourite such loop atm is [++.+]
21:27:43 <quintopia> i can't understand this lock
21:28:02 <ais523> quintopia: if I edit out the full tape clear
21:28:11 <ais523> it's just ((+)*64(-)*64(.)*128)*-1
21:28:13 <GreyKnight> How does that work, I don't really speak brainf**k much
21:28:26 <quintopia> ais523: that looks like shudderlock's lock
21:28:28 <Bike> it's actually bfjust
21:28:30 <Bike> joust
21:28:33 <ais523> quintopia: that's because it is shudderlock's lock
21:28:54 <quintopia> ais523: space_hotel beats shudderlock the hard way, so there's something different...
21:28:56 <shachaf> kmc: Are you going to leave #esoteric next? :-(
21:29:01 <kmc> no
21:29:02 <ais523> GreyKnight: changes the tape 3 positions in 5 cycles
21:29:05 <kmc> i like #esoteric
21:29:16 <ais523> and the difference is that anticipation2 synchronizes differently
21:29:32 <kmc> i offended one person, possibly by me being a dick, possibly by misunderstanding, probably a mixture of these
21:29:37 <kmc> i tried to apologize and it failed
21:29:37 <ais523> it's an approximate lock ("offset lock"?, it works even if you're off to some extent in the synchronization
21:30:10 <ais523> now, the effect of a timer clear expiring is to throw off the synchronization
21:30:25 <ais523> but if it's by an amount sufficiently close to a multiple of 256 cycles, it still works
21:30:44 <ais523> and how accurate it has to be depends on how well synchronized it was in the first place
21:31:04 <GreyKnight> ah-ha
21:31:29 <ais523> now, shudderlock doesn't sychronize as accurately as anticipation2
21:31:41 <GreyKnight> I was reading it as "loop length" for some reason
21:31:41 <ais523> so a timer clear can throw it off, but not anticipation2
21:32:08 <quintopia> so if it was poorly synchronized at first, it would become even more poorly synchronized after the timer clear expiration, and possibly break the lock?
21:32:17 <ais523> yes
21:32:56 <ais523> or more precisely, timer clears play hell with the synchronization and it's pretty random where you end up
21:33:01 <quintopia> so the only surefire way to defeat anticipation2 is to put a [++.+] after your main clear block?
21:33:31 <ais523> I'm not sure that's surefire :)
21:33:45 <ais523> but I'd imagine it'd work well
21:33:50 <quintopia> but you haven't designed it to be effective against it at least
21:34:36 <ais523> indeed
21:34:38 <quintopia> i should think [+.+.] would work faster
21:34:44 <oerjan> <elliott> Bike: you can't mock that line because oerjan wrote it <-- what
21:34:53 <quintopia> that's a 2.5-cycle clear
21:35:06 <ais523> quintopia: it has a really obvious deficiency, though
21:35:14 * oerjan doesn't think he wrote anything in Useless
21:35:25 <quintopia> what does?
21:35:34 <ais523> which is that it can't clear odd-number-size decoys
21:35:38 <olsner> hmm, protagonist says "give me another chance, I won't let you down this time" ... there would be no rest of this movie if he didn't screw that up
21:35:44 <ais523> it can end up locking itself as a result
21:36:01 <quintopia> ...you make a good point :P
21:36:28 <oerjan> <Bike> sorry oerjan i'll make it up to you i swear <-- MAKE UP WHAT AAAAAAAAAAAAA
21:36:38 <shachaf> helloerjan
21:36:48 <oerjan> shachaf: THE LOGS, SO CONFUSING
21:36:55 <GreyKnight> `welcome oerjan
21:36:57 <HackEgo> oerjan: 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:37:05 <shachaf> oerjan: Don't read them.
21:37:06 <oerjan> thank you GreyKnight
21:37:14 <GreyKnight> yw
21:37:14 <oerjan> shachaf: but they contain my name D:
21:37:19 <shachaf> GreyKnight: you have committed the ordinal sin
21:37:21 <oerjan> *nick
21:37:21 <fizzie> oerjan is such a helliott. Or is that a hellion?
21:37:28 <GreyKnight> `WeLcOmE shachaf
21:37:30 <HackEgo> ShAcHaF: 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:37:46 <fizzie> 1. (1) hellion, heller, devil -- (a rowdy or mischievous person (usually a young man); "he chased the young hellions out of his yard") yes, yes.
21:37:58 <Lumpio-> You should make a special main page just for that link
21:38:26 <olsner> Lumpio-: it is planned, along with the main page for `WELCOME
21:38:34 <olsner> (ask oerjan for details)
21:38:43 <ais523> `emoclew olsner
21:38:44 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: emoclew: not found
21:38:50 * ais523 is disappointed that that doesn't exist
21:39:00 <olsner> Emo Clew
21:40:01 <quintopia> ais523: the bfjoust strategies page, under major programs, says major is "for the most part, defined as having been #1 on the #esoteric hill"
21:40:05 <oerjan> `cat bin/WELCOME
21:40:06 <HackEgo> ​#!/bin/sh \ welcome "$@" | perl -ne 'print uc($_)'
21:40:22 <quintopia> ais523: that "for the most part" indicates to me that #2 is sometimes good enough for a cool enough program
21:40:36 <quintopia> ais523: but if you think that's cheating, i'll temporarily delete space_hotel
21:40:55 <ais523> I'd feel happier about a temp delete, I guess
21:40:57 <ais523> it's easy enough to put it back
21:41:12 <oerjan> `run (echo '#!/bin/sh'; echo 'welcome "$@" | rev') > bin/emoclew
21:41:15 <HackEgo> No output.
21:41:24 <olsner> `emoclaw oerjan
21:41:26 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: emoclaw: not found
21:41:28 <ais523> because it's basically saying in the actual hill "quintopia thought this was good enough to be #1 for a bit"
21:41:29 <oerjan> `run chmod +x bin/emoclew
21:41:32 <HackEgo> No output.
21:41:41 <ais523> or ofc, I could always just /nick quintopia_space and delete it myself
21:41:43 <oerjan> `emoclew olsner
21:41:44 <HackEgo> ​).ten.lad.cri no ciretose# yrt ,aciretose fo dnik rehto eht roF( .egaP_niaM/ikiw/gro.sgnalose//:ptth :ikiw ruo tuo kcehc ,noitamrofni erom roF !tnemyolped dna ngised egaugnal gnimmargorp ciretose rof buh lanoitanretni eht ot emocleW :renslo
21:41:47 <ais523> but that would be severe cheating
21:42:06 <olsner> `run (echo '#!/bin/sh'; echo 'welcome "$@" | rev | tr eE aA') > bin/emoclaw
21:42:10 <HackEgo> No output.
21:42:11 <olsner> `emoclaw oerjan
21:42:12 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/bin/emoclaw: Permission denied \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/bin/emoclaw: cannot execute: Permission denied
21:42:16 <quintopia> ais523: bahahaha. i give you permission because it is such a hilarious idea.
21:42:23 <olsner> `run chmod +x bin/emoclaw
21:42:26 <HackEgo> No output.
21:42:26 <olsner> `emoclaw olsner
21:42:30 <HackEgo> ​).tan.lad.cri no ciratosa# yrt ,aciratosa fo dnik rahto aht roF( .agaP_niaM/ikiw/gro.sgnalosa//:ptth :ikiw ruo tuo kcahc ,noitamrofni arom roF !tnamyolpad dna ngisad agaugnal gnimmargorp ciratosa rof buh lanoitanratni aht ot amoclaW :ranslo
21:42:44 <ais523> I recommend a tr '()' ')(' too
21:43:04 <ais523> quintopia: do you have a copy of space_hotel handy to restore it?
21:43:09 <fizzie> `run cat bin/WELCOME # oerjan: OPTOMIZED
21:43:10 <HackEgo> ​#!/bin/sh \ welcome "$@" | perl -pe '$_ = uc'
21:43:10 <ais523> or, hmm
21:43:16 <boily> i'a i'a cthulhu tan lad cri no ciratosa!
21:43:23 <quintopia> it's still on the hill...is that not convenient enough?9$
21:43:34 <olsner> gnimmargorp has a scandinavian ring to it
21:43:34 <ais523> yeah but it won't be if I delet eit
21:43:38 <ais523> so I won't be able to link to it
21:43:40 <ais523> need the permlink
21:43:48 <olsner> and lanoitanratni looks like finnish
21:43:52 <quintopia> i'll just bring up egojsout before you do it
21:43:57 <ais523> yeah, good idea
21:44:16 <quintopia> done
21:44:25 <quintopia> (i think i have a local copy too)
21:44:39 -!- ais523 has changed nick to quintopia_space.
21:44:42 <quintopia_space> !bfjoust hotel <
21:44:46 -!- quintopia_space has changed nick to ais523.
21:44:52 <EgoBot> ​Score for quintopia_space_hotel: 0.0
21:45:26 * ais523 waits for quintopia to put it back
21:45:30 -!- Bike has quit (Quit: bound).
21:46:02 <boily> !bfjoust poulet >>[[-]>]
21:46:05 <EgoBot> ​Score for boily_poulet: 6.5
21:46:15 <olsner> hmm, since it reverses the nick, emocl[ae]w doesn't highlight the recipient
21:46:18 <ais523> boily: that's a no-op
21:46:34 <boily> ais523: I still got a non-null score! :D
21:46:36 <quintopia> this is the command i issued the last time i submitted it...let's see if it still works...
21:46:39 <quintopia> !bfjoust space_hotel http://sprunge.us/hjjg
21:46:44 <EgoBot> ​Score for quintopia_space_hotel: 61.9
21:46:57 <ais523> I guess so
21:47:03 -!- asiekierka has quit (Excess Flood).
21:47:10 -!- asiekierka has joined.
21:48:15 <quintopia> the size of sprunge's namespace is like 7.5m right?
21:48:21 <olsner> (and of course it ought be called amoclaw)
21:48:22 <quintopia> takes em awhile to overwrite stuff
21:49:30 <quintopia> olsner: you should make it switch ( and ) also, since it seems like those should be reversed "as a pair"
21:49:50 <ais523> `welcome olsner
21:49:52 <HackEgo> olsner: 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:49:52 <ais523> err
21:49:55 <ais523> `welcoma olsner
21:49:56 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcoma: not found
21:49:59 <ais523> that's what I meant
21:50:39 <oerjan> Þór, Grimmargorpurinn hefur sloppið! Ragnarök er nálægt!
21:51:11 <GreyKnight> `run (echo '#!/bin/sh'; echo 'welcome "$@" | rev | tr eE\)\( aA\(\)') > bin/emoclaw
21:51:14 <HackEgo> No output.
21:51:17 <olsner> `? grimmargorpurinn
21:51:19 <HackEgo> grimmargorpurinn? ¯\(°_o)/¯
21:51:25 <GreyKnight> `emoclaw Fiora
21:51:27 <HackEgo> ​(.tan.lad.cri no ciratosa# yrt ,aciratosa fo dnik rahto aht roF) .agaP_niaM/ikiw/gro.sgnalosa//:ptth :ikiw ruo tuo kcahc ,noitamrofni arom roF !tnamyolpad dna ngisad agaugnal gnimmargorp ciratosa rof buh lanoitanratni aht ot amoclaW :aroiF
21:51:33 <quintopia> ais523: i wish we had reversible bfjoust plus a command that lets one warrior switch both warrior's commands to their inverse. It WoUlD bE cHaOs!!!!!!
21:51:50 <ais523> quintopia: sounds like a good way to get draws
21:52:24 <olsner> `run bin/emoclaw olsner | rev
21:52:26 <HackEgo> olsnar: Walcoma to tha intarnational hub for asotaric programming languaga dasign and daploymant! For mora information, chack out our wiki: http://asolangs.org/wiki/Main_Paga. )For tha othar kind of asotarica, try #asotaric on irc.dal.nat.(
21:52:27 <oerjan> `echo "Þór, Grimmargorpurinn hefur sloppið! Ragnarök er nálægt!" >wisdom/grimmargorp
21:52:28 <HackEgo> ​"Þór, Grimmargorpurinn hefur sloppið! Ragnarök er nálægt!" >wisdom/grimmargorp
21:52:29 <quintopia> ais523: you could keep it nontrivial by limiting them to two switches per match
21:52:31 <oerjan> `run echo "Þór, Grimmargorpurinn hefur sloppið! Ragnarök er nálægt!" >wisdom/grimmargorp
21:52:35 <HackEgo> No output.
21:52:41 <GreyKnight> `run (echo '#!/bin/sh'; echo 'welcome "$@" | rev | tr \)\( \(\)') > bin/emoclew
21:52:44 <HackEgo> No output.
21:53:05 <SirCmpwn> !bf_txtgen JOIN
21:53:07 <EgoBot> ​63 ++++++++[>+++++++++>>++++>+<<<<-]>++.+++++.------.+++++.>>.>++. [363]
21:53:34 <quintopia> SirCmpwn: are you writing a bf irc client?
21:53:35 <olsner> `? grimmargorp
21:53:35 <ais523> SirCmpwn: that result looks a little inefficient
21:53:36 <HackEgo> ​Þór, Grimmargorpurinn hefur sloppið! Ragnarök er nálægt!
21:53:42 <SirCmpwn> quintopia: yes
21:53:43 <ais523> quintopia: I think he's writing a bot
21:53:46 <SirCmpwn> ais523: temporary
21:53:47 <ais523> which is a client, in a sense
21:54:06 <olsner> I'm going to forget all about grimmargorpurinn all too soon
21:54:30 <ais523> olsner: you'll remember it the next time you look at the learndb
21:54:49 <olsner> I don't know how to look at the learndb :(
21:54:59 <quintopia> i don't understand what a grimmargorpurinn is
21:55:15 <GreyKnight> quintopia: Grimmargorpurinn hefur sloppið
21:55:19 <GreyKnight> hth
21:55:42 <quintopia> want to try in engrish?
21:56:31 <boily> glimmalgolpulinn?
21:56:40 <GreyKnight> Glimmalglpulinn heful sroppið
21:57:12 -!- Taneb has quit (Quit: Leaving).
21:57:16 <olsner> gulimmalugolupulin
21:57:52 <ais523> `ls wisdom
21:57:53 <HackEgo> ​? \ ☃ \ 🐐 \ ais523 \ atriq \ augur \ banach-tarski \ boily \ bonvenon \ c \ cakeprophet \ category \ coffee \ comonad \ coppro \ egobot \ elliott \ endofunctor \ england \ esoteric \ europe \ everyone \ finland \ finnish \ finns \ fizzie \ flower \ freefull \ friendship \ functor \ fungot \ gaspacho \ gazpacho \ glogbot \ gregor \ grimmargo
21:57:57 <ais523> olsner: using variations on that
21:58:08 <ais523> huh, why does unicode snowman alphabetise before ais523?
21:58:13 <olsner> `? friendship
21:58:14 <HackEgo> friendship wisdom
21:58:15 <ais523> I'd intuitively expect it to come later
21:58:21 <ais523> `? comonad
21:58:22 <HackEgo> Comonads are just monads in the dual category.
21:58:23 <olsner> `? endofunctor
21:58:25 <HackEgo> Endofunctors are just endomorphisms in the category of categories.
21:58:42 <ais523> `? category
21:58:43 <HackEgo> Categories are just categories.
21:58:44 <ais523> may as well go all the way
21:58:47 <ais523> haha :)
21:58:48 <kmc> comparison of signed chars representing utf8?
21:59:31 <shachaf> ais523: With LC_ALL=C it comes later.
21:59:36 <GreyKnight> `? endomorphism
21:59:37 <HackEgo> endomorphism? ¯\(°_o)/¯
21:59:46 <GreyKnight> You and me both HackEgo!
21:59:50 <ais523> shachaf: hmm
21:59:58 <ais523> `run echo $LANG
21:59:59 <HackEgo> en_NZ.UTF-8
22:00:00 <shachaf> Oh, maybe it's signedness or something.
22:00:05 <oerjan> quintopia: basically olsner thought grimmargorp looked scandinavian, which made me realize it looked like an old norse mythic monster name, so i made up a sentence to fit hth
22:00:05 <shachaf> en_NZ?
22:00:09 <ais523> wait, why is HackEgo set to New Zealand English?
22:00:28 <olsner> maybe that's what they speak in hexham
22:00:33 <ais523> it'd take us a while to notice that, really
22:00:34 <oerjan> (google translate also helped)
22:00:51 <ais523> NZ english and, say, US or UK english, are very similar in what they normally print in error messages
22:01:19 <boily> categories aren't turtles?
22:01:29 <boily> `? boily
22:01:31 <HackEgo> boily may be French or something. We are not sure about the rest.
22:01:39 <boily> ah! nothing about my canadianness.
22:01:52 <boily> oh well. back on January 14, or something.
22:01:57 -!- boily has quit (Quit: Poulet!).
22:02:29 <kmc> shachaf: http://www.unicode.org/reports/tr10/#Searching
22:02:36 <olsner> apparently boily thinks Canada exists
22:02:42 <olsner> "French or something" indeed
22:02:49 <kmc> we were talking before about how Chrome Ctrl-F 'ß' matches 'ss' and such
22:03:15 -!- WeThePeople has joined.
22:04:00 -!- bfbot has joined.
22:04:05 <SirCmpwn> fuck yeah
22:04:08 -!- bfbot has quit (Remote host closed the connection).
22:04:20 -!- WeThePeople has quit (Changing host).
22:04:20 -!- WeThePeople has joined.
22:04:40 <kmc> or maybe we weren't and i hallucinated that
22:04:48 <shachaf> We were.
22:05:41 <SirCmpwn> where did Bike go
22:05:45 <shachaf> Puzzle: Write foo :: Traversable t => t a -> t (a, a -> t a)
22:05:54 <kmc> anyway I guess ls sorts symbols before letters and Mr. Snowman is an OtherSymbol?
22:07:32 <SirCmpwn> http://i.imgur.com/zSbfy.png woot
22:07:47 <oerjan> `run echo "An endomorphism is a morphism with the same source and target." >wisdom/endomorphism
22:07:50 <HackEgo> No output.
22:08:21 <shachaf> oerjan: That's uncharacteristically helpful for a wisdom/ entry.
22:08:25 <shachaf> What's the catch?
22:08:28 <shachaf> `? elliott
22:08:30 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?
22:08:33 <kmc> endomorphine
22:08:48 <shachaf> zygohistomorphine
22:08:57 <olsner> `? everyone
22:08:58 <HackEgo> Everyone in here is mad.
22:09:02 <olsner> `? esoteric
22:09:03 <HackEgo> This channel is about programming -- for the other kind of esoterica, try #esoteric on irc.dal.net.
22:09:23 <oerjan> `run echo "Endomorphisms are just morphisms with the same source and target." >wisdom/endomorphism
22:09:26 <HackEgo> No output.
22:09:47 <oerjan> shachaf: SORRY FORGOT THE FORMAT
22:09:58 <olsner> This channel is about the other kind of esoterica -- for programming, try #esoteric on irc.dal.net.
22:11:02 <SirCmpwn> plans are to make it respond to '.ping' in-channel with 'pong' and maybe a few other simple commands
22:11:13 -!- greyooze has joined.
22:11:15 <olsner> .help
22:11:32 <olsner> oh, . might be an unused prefix
22:11:38 <SirCmpwn> .ping
22:11:54 <SirCmpwn> it still doesn't respond to irc pings, though
22:12:00 <SirCmpwn> but there is a little stub handler
22:12:01 -!- GreyKnight has quit (Ping timeout: 246 seconds).
22:12:07 -!- greyooze has changed nick to GreyKnight.
22:12:28 <SirCmpwn> not the most optimized of code, but here it is: https://github.com/SirCmpwn/bf-irc-bot/blob/master/irc-bot.bf
22:12:54 <GreyKnight> `run echo "A morphism is just an abstraction derived from structure-preserving mappings between two mathematical structures." > wisdom/morphism
22:12:57 <HackEgo> No output.
22:13:11 <olsner> handling irc pings is pretty easy, and I think it's usually required to stay connected to the server
22:13:18 <SirCmpwn> yeah, it is
22:13:25 <SirCmpwn> you get about 2 minutes of uptime if you ignore them :P
22:13:38 <SirCmpwn> I just wanted to get it into channels before adding that, so that's next on my plate
22:14:48 <SirCmpwn> I also stubbed out a handler for channel messages, so adding on to that shouldn't be too tough
22:14:49 <oerjan> GreyKnight: i'm sorry, your explanation is insufficiently abstract
22:15:54 <Phantom_Hoover> `run echo "Endomorphisms are just objects in the category of endomorphisms." > wisdom/endomorphism
22:15:57 <HackEgo> No output.
22:16:07 <oerjan> Phantom_Hoover: HEY NO RECRUSION
22:16:42 <oerjan> besides i'm not sure that's even true
22:17:05 <ais523> well, the endomorphisms have to be either objects or morphisms
22:17:06 -!- Bike has joined.
22:17:23 <GreyKnight> `run echo "A morphism is a map between two objects in an abstract category." > wisdom/morphism # better??
22:17:26 <HackEgo> No output.
22:17:34 <ais523> GreyKnight: /that/ definition is awful
22:17:42 <ais523> sure, it goes between two objects
22:17:45 <ais523> which might be the same
22:17:50 <ais523> but it doesn't have to have any map-like properties at all
22:18:02 <oerjan> `run echo "Endomorphisms are just morphisms which compose with themselves." >wisdom/endomorphism
22:18:05 <HackEgo> No output.
22:18:08 <GreyKnight> well you should submit an update to http://mathworld.wolfram.com/Morphism.html in that case :-)
22:18:10 <Bike> oh good you're already talking about this shit
22:18:17 <oerjan> i think that is true and unhelpful :)
22:18:19 <Bike> because i have a question about this agda tutorial dealie
22:18:41 <GreyKnight> as I just "borrowed" their first sentence
22:19:11 <Bike> particularly, the definition of Nat as 0 : Nat and suc : Nat -> Nat must have all kinds of implications involved
22:19:16 -!- WeThePeople has quit (Quit: Leaving).
22:19:26 <quintopia> oerjan: but what is grimmargorp really?
22:19:29 <Phantom_Hoover> like what
22:19:33 <Bike> like that there is no x : Nat such that suc x is 0, or that there aren't Nats that aren't a suc of something
22:19:41 <olsner> quintopia: grimmargorp is an ineffable evil
22:19:52 <oerjan> quintopia: you have to seek the true grimmargorp in your heart. and then kill it before it kills you.
22:20:02 <Bike> so, are these assumptions all in the data constructor, or, what
22:20:07 <Phantom_Hoover> uh
22:20:14 <GreyKnight> oerjan: grimmargorp = cholesterol
22:20:26 <quintopia> okay got it
22:20:42 <Phantom_Hoover> isn't the point that the only members of nat are those which can be constructed from 0 and suc
22:20:46 <Bike> er, minor obvious error in my second clause there, oh well
22:21:02 <olsner> GreyKnight: while it is true that both kill from within, cholesterol is merely a chemical
22:21:21 <Bike> Phantom_Hoover: well nobody told me that that was the point. where do i learn what the point is
22:21:58 <Phantom_Hoover> OK this is foundational smartarsery right, not genuine confusion.
22:22:17 <Bike> no
22:22:22 <Bike> i am genuinely confused here
22:22:23 <GreyKnight> Bike: AIUI it is stating that: 0 is a Nat. suc 0 is a Nat. suc suc 0 is a Nat. and so on
22:22:40 <Bike> for example, cyclic data types ("codata"?) obviously loosen the "nothing is a successor of itself" bit
22:22:42 <GreyKnight> (it doesn't know to call them 1, 2, etc)
22:23:06 <GreyKnight> `? monoid
22:23:07 <HackEgo> Monoids are just categories with a single object.
22:23:12 <Bike> GreyKnight: that's not enough either, it's also saying sac x != x
22:23:13 <GreyKnight> `? object
22:23:14 <HackEgo> object? ¯\(°_o)/¯
22:23:22 <Bike> otherwise Nat could just be 0
22:23:38 <Phantom_Hoover> Yes, the distinction is that data only allows finite constructions.
22:23:42 <GreyKnight> `run echo "An object is just something in a category." > wisdom/object
22:23:45 <HackEgo> No output.
22:24:18 <Bike> i figure asking basic anal questions is a good idea when learning basic shit
22:24:24 <GreyKnight> Bike: I think that it doesn't assume things are equal unless you give it some way to know that
22:24:50 <kmc> Bike: c.c
22:25:05 <Bike> i don't know what that means kmc. i don't speak this strange dot language
22:25:19 <kmc> dotsies
22:25:23 <GreyKnight> kmc: ⟃.⟃
22:25:29 <oerjan> GreyKnight: i am not sure you understand the spirit of wisdom/
22:26:03 <shachaf> OPEN SUBSET? That's good!
22:26:13 <GreyKnight> oerjan: I was trying to be vaguely informative while being unnecessarily obtuse about it?
22:26:19 <shachaf> ⟃.⟄
22:26:21 <shachaf> ⟄.⟃
22:26:32 <Bike> this new character is strange and frightening
22:26:43 <Bike> anyway i guess i'll just look up documentation somewhere
22:26:58 <oerjan> GreyKnight: note that this category theory stuff all springs originally from this one, which is a haskell community meme:
22:27:01 <oerjan> `? monad
22:27:02 <HackEgo> Monads are just monoids in the category of endofunctors.
22:27:08 <GreyKnight>
22:27:22 <Bike> did that originate from the history of programming languages post, or did that steal it from elsewhere
22:27:52 <shachaf> I think th "just" originated from that post.
22:28:09 <shachaf> @quote copumpkin lax
22:28:09 <lambdabot> copumpkin says: a monad is just a lax functor from a terminal bicategory, duh. fuck that monoid in category of endofunctors shit
22:28:12 * oerjan swats GreyKnight for giving him a square box
22:28:37 * GreyKnight puts oerjan in the filing cabinet ⌹
22:28:39 <Bike> you see fallback font? ...why do i have a font that has apl dieresis glyphs installed...
22:28:52 * shachaf swats oerjan for not having APL fonts -----###
22:29:32 <GreyKnight> did shachaf just swat oerjan
22:29:34 <oerjan> 'APL FUNCTIONAL SYMBOL DEL DIAERESIS'
22:29:57 <Bike> i don't remember what it does?
22:30:01 <oerjan> eek
22:30:03 -!- asiekierka has quit (Excess Flood).
22:30:04 <GreyKnight> oerjan: it looks like a happy face. I was excited about the monad quote.
22:30:09 -!- asiekierka has joined.
22:30:49 <quintopia> i can see the del diaeresis just fine
22:30:55 <Bike> "If m and d are (possibly boxed) character nouns, then m∇d yields a verb of unbounded rank whose monadic and dyadic cases are determined by m and d respectively." oh, ok then
22:31:02 <olsner> `run echo "Þór, Grimmargorpurinn hefur sloppið! Ragnarök eru nálæg!" >wisdom/grimmargorp
22:31:05 <HackEgo> No output.
22:31:10 * oerjan grabs his swatter back -----###
22:31:11 <olsner> #-blah corrected our grammar
22:31:22 <GreyKnight> Bike: del diaeresis wasn't particularly standard I think
22:31:40 <Bike> GreyKnight: i noticed, but del is, this dictionary's straight from iverson
22:31:51 <ais523> there's a #-blah that isn't associated with a channel?
22:31:55 * ais523 wonders if there's a #-offtopic
22:32:04 <Bike> oh dang, there's a monad
22:32:06 <shachaf> ais523: No, it's #esoteric-blah
22:32:26 <Bike> oh. wait. as opposed to dyad. yes. durr.
22:36:06 <GreyKnight> Bike: I can remember del-stile (grade down) but del alone escapes me
22:36:46 <oerjan> <olsner> #-blah corrected our grammar <-- oh ragnarök is plural?
22:37:04 <olsner> dunno, is it?
22:37:11 <oerjan> i was more wondering about, hm i should check it when i have wiktionary open...
22:37:30 <GreyKnight> do you have it?
22:40:15 <ais523> who's in #esoteric-blah regularly anyway?
22:40:23 <ais523> I thought we only did things there which were particularly spammy
22:40:28 <ais523> and so who moves there depends on who's interested in them
22:40:49 <shachaf> Hmm, I thought #esoteric was the channel for those.
22:40:57 <shachaf> Maybe that explains why ais523 was unhappy earlier.
22:41:52 <oerjan> shachaf: nah, someone probably mentioned f*hit by falling anvil*
22:42:48 <GreyKnight> language idea: cofeather
22:43:06 <GreyKnight> brb
22:44:42 <GreyKnight> hm what is a cocontinuation? Maybe just an ntinuation
22:45:33 <Bike> come-from
22:51:13 <Vorpal> anyone know why more and more sites recently started showing stuff like "this site uses cookies, and won't work without them" with an accept button. Even though I have cookies enabled in my browser.
22:51:27 <Vorpal> I noticed this on many high profile sites the last few months
22:51:59 <olsner> Vorpal: laws
22:52:03 <Vorpal> olsner, ah
22:52:05 <Bike> probably the media had another cookies = basically satan story recently
22:52:30 <Vorpal> probably
22:52:30 <ais523> Vorpal: EU legislation
22:52:39 <ais523> in the EU, you're not allowed to set cookies without asking permission, nowadays
22:52:57 <ais523> the funny thing is, if you don't get permission, you have no option but to repeatedly ask for it
22:53:04 <ais523> because you have no way to record the fact you didn't get it :)
22:53:16 <shachaf> Just go by IP address.
22:53:34 <Vorpal> ais523, heh
22:53:57 <Vorpal> ais523, what about other similar methods? DOM local storage and what not
22:54:10 <ais523> the law's specifically about cookies
22:54:17 <ais523> also, browsers glare at you for using local storage, I think
22:54:22 <Vorpal> oh?
22:54:29 <ais523> as in, they ask the user permission by default
22:54:32 <Vorpal> what is it actually used for?
22:54:41 <ais523> as opposed to cookies, where only you and me ask our browsers to ask us for permission to store those
22:54:46 <ais523> and like cookies, but for more data
22:55:52 <Vorpal> ais523, eh, I stopped doing the ask for permission since I switched to chromium, I now have it set to block third party cookies and store first party cookies until the end of the session
22:56:06 <ais523> meh, I find the ask for permission interesting
22:56:09 <shachaf> I used to do that thing where your browser asks for permission!
22:56:10 <ais523> also chromium annoys me
22:56:16 <shachaf> Now I just do everything in Incognito Mode instead.
22:56:18 <ais523> I basically just use it specifically for accessing Google
22:56:21 <Vorpal> ais523, firefox eats way too much memory
22:56:24 <ais523> and their subsidiaries
22:56:33 <Vorpal> also why would you use chromium for google?
22:56:48 <ais523> because I have google blocked in Firefox
22:56:56 <Vorpal> okay? why?
22:57:20 <ais523> because so many sites reference them indirectly
22:57:21 <GreyKnight> Oh you guys use web browsers? I just fire up telnet....
22:57:24 <ais523> for no good reason
22:57:27 <fizzie> I don't think I've seen a browser ever ask me anything about localstorage.
22:57:42 <ais523> GreyKnight: I find browsers more convenient, especially for images
22:57:50 <Vorpal> ais523, oh yeah, I have google ads and google analytics blocked
22:57:55 <ais523> fizzie: that's probably because IE probably doesn't support it yet
22:58:10 <Vorpal> <fizzie> I don't think I've seen a browser ever ask me anything about localstorage. <-- happened once iirc. Or maybe it was flash?
22:58:27 <ais523> flash also has local storage
22:58:40 <GreyKnight> Oh images! I remember those.
22:58:49 <Vorpal> yeah
22:58:54 <Vorpal> ais523, I have that set to ask
22:58:57 <fizzie> ais523: The paywall of Finland's probably-biggest newspaper (Helsingin Sanomat) is based on JS localstorage, and I think it works reasonably widely & does not prompt all that much.
22:59:16 <Vorpal> anyway it seems chrome (on windows atm) can't be set to ask for cookies, just to block, session only or allow
22:59:22 <Vorpal> and you can add overrides
22:59:24 <fizzie> http://en.wikipedia.org/wiki/Web_storage also says IE8+ does it.
22:59:26 <Vorpal> per regex
22:59:33 <ais523> fizzie: err, a client-side paywall?
22:59:46 <ais523> there strikes me as something vaguely insecure about that
23:00:40 <fizzie> ais523: It's a "five free articles per week" kind of paywall. I suppose they're not terribly serious about it.
23:01:22 <fizzie> There were approximately umpteen gazillion workarounds for it about 15 minutes after they launched it.
23:01:44 <fizzie> Still, I suppose it does keep a number of casual browsers away.
23:02:51 <fizzie> One of the least intrusive workarounds is a GreaseMonkey script that sets the global "localStorage" variable to undefined so that the counter-track-keeping doesn't work.
23:04:30 <GreyKnight> http://i.imgur.com/zSbfy.png I just noticed bfbot is running with Administrator privileges
23:05:19 <Vorpal> I need to figure out how to get greasemonkey stuff working in chrome at some point, it supposedly have native support for it hm...
23:05:40 <Vorpal> GreyKnight, that sounds stupid
23:07:27 <fizzie> IIRC, it has "native support" in that there's some convoluted way to put "user script" JS snippets in; there's no built-in handy script manager thingie. (Though there are extensions.)
23:07:39 <Vorpal> ah
23:08:03 <fizzie> Though possibly this has changed.
23:08:21 <fizzie> (It was a while ago I looked into it, and didn't bother doing anything.)
23:09:52 <fizzie> (And maybe it wasn't any more convoluted than "manually put them in a particular directory".)
23:11:31 -!- carado has quit (Ping timeout: 246 seconds).
23:12:38 -!- zzo38 has joined.
23:12:47 <shachaf> `welcome zzo38
23:12:48 <HackEgo> zzo38: 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.)
23:18:41 <GreyKnight> `? zzo38
23:18:42 <HackEgo> zzo38 ? ¯\(°_o)/¯
23:18:45 <GreyKnight> `? zzo38
23:18:46 <HackEgo> zzo38 is not actually the next version of fungot, much as it may seem.
23:18:54 <GreyKnight> are we sure
23:19:39 <fizzie> fungot: Are you the previous version of zzo38?
23:19:40 <fungot> fizzie: i run some interactive tex programs
23:19:52 <Vorpal> the... what?
23:19:56 <fizzie> That doesn't really clear things up.
23:19:57 <Vorpal> ^style
23:19:57 <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
23:20:06 <Vorpal> fizzie, it is worrying even
23:21:33 <GreyKnight> zzo38: do you also run some interactive tex programs?
23:21:36 -!- monqy has joined.
23:22:03 <fizzie> GreyKnight: It is the kind of thing you'd expect.
23:22:13 <shachaf> monqy: do you run some interactive tex programs
23:22:25 <monqy> no
23:22:41 <shachaf> have you considered trying
23:23:02 <Vorpal> any openvpn expert here?
23:23:14 <olsner> hmm, I might try writing some interactive tex programs, sounds like fun ... I just wonder if it has file/stdin input
23:23:22 <fizzie> When you really think about it, doesn't everyone run some interactive tex programs, in the end, really?
23:23:25 <Bike> `? monqy
23:23:26 <HackEgo> The friendship monqy is an ancient Chinese mystery; ask itidus21 for details.
23:23:27 <GreyKnight> monqy: word on the street is you are the guy to talk to if someone wants to get a glyph into Unicode
23:23:37 <Vorpal> I'm trying to figure out if it is possible to set it up so that some programs are routed through the VPN and all other are not
23:23:48 <Vorpal> I guess it would be possible using iptables, but I have no clue HOW
23:23:50 <monqy> GreyKnight: which street is this and why are they wrong
23:23:58 <GreyKnight> fizzie: the true interactive tex programs are the ones in our hearts
23:24:30 <olsner> all programs are also tex programs, given the correct translation
23:24:33 <GreyKnight> monqy: it's Shachaf Street, and because shachaf
23:24:51 <shachaf> ?
23:24:56 <shachaf> What did I do this time?
23:26:34 <GreyKnight> <Bicycle> do [Unicode] even have official admission criteria? or is it straightforwardly "someone who has money asked" <shachaf> "someone who monqy has asked"
23:26:39 -!- WeThePeople has joined.
23:26:49 <Bike> do unicode
23:27:55 <olsner> the first question of the entrance exam was "did monqy ask you?" ... I left
23:28:11 <olsner> that's why I am not a unicode code point
23:28:16 <fizzie> Vorpal: Standard iptables has at least the 'owner' match module; as for how to make that modify the routing, I think there'd be several approaches, including at least doing -j CONNMARK to mark the packets, and then policy routing ("ip rule ... fwmark ...") to have a different routing table for them. I've done some fiddling like that.
23:28:52 <oerjan> `pastquote i run some interactive tex programs
23:28:53 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: pastquote: not found
23:28:54 -!- WeThePeople has quit (Read error: Connection reset by peer).
23:28:57 <Vorpal> fizzie, I know the owner match, that is a non-issue
23:29:04 <Vorpal> fizzie, the issue is with the routing
23:29:11 <Vorpal> hm
23:29:19 <Vorpal> I will look into fwmark stuff
23:29:51 <Vorpal> fizzie, since it is the ip command I assume the documentation is poor?
23:30:09 <oerjan> `pastlog i run some interactive tex programs
23:30:28 <HackEgo> 2008-06-07.txt:17:34:39: <AnMaster> tusho, because I run some interactive TeX programs
23:30:34 <Vorpal> I did?
23:30:40 <oerjan> *MWAHAHAHA*
23:30:44 <Vorpal> oh yeah I remember, I ran one once.
23:30:48 <olsner> ... now that was unexpected
23:30:56 <Vorpal> why?
23:31:04 <olsner> too esoteric for you
23:31:10 <Vorpal> hah :P
23:31:16 <oerjan> fizzie: ok so fungot is actually an older version of Vorpal, who is an older version of zzo38.
23:31:17 <olsner> sorry, but I expect you to do only boring things
23:31:17 <fungot> oerjan: have you ever tried peanut butter? no way! look at group theory!" does that mean
23:31:21 <zzo38> TeX programs can be interactive; actually my recording of the Dungeons&Dragons game is because it asks at first what level of detail you want in the printout.
23:31:52 <Vorpal> fizzie, when you said you done some fiddeling like that, what were the results of that?
23:32:10 <GreyKnight> wait Vorpal is AnMaster??
23:32:16 -!- WeThePeople has joined.
23:32:28 <Vorpal> GreyKnight, and tusho is ehird, aka elliott
23:32:29 <oerjan> zzo38: it's just that before searching the logs, you were the only person i remembered actually using them
23:32:37 <GreyKnight> WHAT
23:32:42 <Vorpal> GreyKnight, I don't think you were around back then
23:32:45 <fizzie> Vorpal: That's a safe assumption. But it's not conceptually very complicated; there's a number of separate routing tables (the default is just table 0 or 65535 or something), and the rules specified by "ip rule" are used to select which table will be used for a particular packet; "fwmark" is a kind of match that you can use in the rules, one that looks at the netfilter "mark" value.
23:33:01 <oerjan> which made it eerie that fungot would respond it to a question whether it was you
23:33:02 <fungot> oerjan: others have reported the same problem
23:33:07 <fizzie> Vorpal: And the fiddling worked, though I don't think I have it in use any more..
23:33:10 <GreyKnight> I was here long ago and went away due to reasons but then I came back
23:33:36 <GreyKnight> fizzie: There you have it. zzo38 sometimes runs some interactive tex programs.
23:33:49 <Vorpal> fizzie, ah
23:34:05 <zzo38> Maybe AnMaster too.
23:34:10 <Vorpal> fizzie, what is the difference between mark and conmark?
23:35:04 <olsner> `addquote <fizzie> fungot: Are you the previous version of zzo38? <fungot> fizzie: i run some interactive tex programs
23:35:05 <fungot> olsner: i always thought it used two for 2? optional arguments? do you have any references?
23:35:08 <HackEgo> 895) <fizzie> fungot: Are you the previous version of zzo38? <fungot> fizzie: i run some interactive tex programs
23:35:39 <fizzie> Vorpal: CONNMARK applies to a connection-tracked connection. (I don't know if you actually need a iptables rule to do a connmark match and MARK target to propagate the value into the individual packets.)
23:35:52 <Vorpal> fizzie, uh, I will need udp
23:36:03 <fizzie> Vorpal: If you match by owner you could just MARK directly.
23:36:05 <Vorpal> so connmark wouldn't make sense
23:36:18 <Vorpal> ah
23:36:44 <fizzie> Vorpal: (UDP things are also handled by conntrack, except a bit more fuzzily, I believe.)
23:36:57 <Vorpal> fizzie, well thanks, you have been of great help. I was trying to bend my head around the mangle & nat tables... This seems way easier.
23:37:57 <oerjan> GreyKnight: some people here don't have the politeness to stay with one nick, *HMPH*
23:38:11 <Vorpal> fizzie, any idea how to show the table in ip route?
23:38:15 <GreyKnight> kids these days
23:38:22 <Vorpal> $ ip route
23:38:23 <Vorpal> 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.64 metric 1
23:38:23 <Vorpal> default via 192.168.1.254 dev eth0 proto static
23:38:23 <Vorpal> $ ip route table 1
23:38:23 <Vorpal> Command "table" is unknown, try "ip route help".
23:38:30 <Vorpal> from the docs that look correct to me?
23:39:03 <Vorpal> or is ip route listing all tables?
23:39:06 <Vorpal> ah, yes that must be it
23:41:24 <Vorpal> fizzie, err, how do I make this work since the init script of the vpn seems to set up the interface... And if the tunnel ever goes down due to network issues... Hm.
23:41:43 <Vorpal> oh well, I'll have to figure something out, maybe there are some script hooks in openvpn or something
23:41:50 -!- c00kiemon5ter has quit (Quit: brb).
23:43:06 <fizzie> "ip route" (IIRC) does not list all tables, just some kind of an amalgamation.
23:43:24 <Vorpal> hm
23:43:59 <fizzie> ("ip route list table N" you can do.)
23:44:43 <fizzie> ("table 0" seems to list absolutely everything.)
23:45:50 <fizzie> Oh, and you probably will need to do the marking in -t mangle -A PREROUTING to set it before the routing decision is done. (That should hopefully make source address selection work out right too.)
23:46:27 <Vorpal> ah
23:46:50 <Vorpal> fizzie, I wonder how normal VPNs work wrt the routing table...
23:47:21 <fizzie> It's easy if you just need to route things through the VPN based on the destination.
23:47:42 <fizzie> E.g. if it's a VPN into some company intranet, you can just add a route to 1.2.0.0/16 that goes thataway.
23:48:01 <Vorpal> fizzie, well, no. I need to be able to reach the internet
23:48:27 <Vorpal> I just want a specific application to reach the internet through that VPN rather than through my direct connection
23:48:57 <Vorpal> (basically I'm trying to work around a case of region locking)
23:49:34 <fizzie> I don't remember what OpenVPN itself can do w.r.t. the routing. It can at least do a "route everything through the VPN" config.
23:50:00 <fizzie> (Which possibly involves replacing the default route but adding an entry for the VPN endpoint that goes through the old gateway.)
23:50:21 <Vorpal> fizzie, apart from itself obviously
23:50:41 <fizzie> Yes, that's what the host route to the VPN endpoint is for.
23:50:50 <Vorpal> true
23:51:01 <Vorpal> for that case it is probably an easier solution
23:51:19 <Vorpal> do routing rules have priority or is it just "most specific first"
23:51:29 <fizzie> Re your use case, what I use for something slightly like that is the lighter-weight solution of "ssh -D" + "tsocks app ..."; tsocks is a LD_PRELOAD hack to forcibly add SOCKS support to any (well, many) sockets app.
23:51:57 <Vorpal> fizzie, can't do that to the service I'm using
23:52:15 <Vorpal> it is openvpn or pptp or whatever that other one is called
23:52:26 <fizzie> Routing table entries are most specific first; the "ip rule" rules do have some kind of an order.
23:52:51 <Vorpal> hm
23:53:08 -!- WeThePeople has quit (Quit: Leaving).
23:53:35 <fizzie> The LARTC (Linux Advanced Routing & Traffic Control HOWTO) *was* a good document; I have no idea if it has been kept up-to-date, though.
23:53:43 <fizzie> HOWTOs are terribly outdated terribly often.
23:54:23 <fizzie> http://lartc.org/howto/lartc.rpdb.html has a source-based policy routing example.
23:54:47 <fizzie> (Something that doesn't need iptables/fwmark, but does require that you can manually specify the source address your application uses.)
23:54:52 <Vorpal> true
23:55:12 <fizzie> http://lartc.org/howto/lartc.netfilter.html has a fwmark example too.
23:55:51 <Vorpal> nice
23:56:03 <fizzie> I don't see datestamps in the document at all, which is kind of worrying.
23:56:14 <Vorpal> oh, I finally found something one a stack exchange sub-site
23:57:04 <Vorpal> it mentions the need of configuring post routing to adjust the source address, and to set the rp_filter sysctl to perform less stringent checks
23:57:19 <fizzie> That sounds relatively terrible.
23:57:29 <Vorpal> fizzie, only for the tap interface though
23:57:36 <Vorpal> so presumably not THAT bad
23:57:56 <Vorpal> the rp_filter stuff I mean
23:58:25 <fizzie> Manually adjusting the source address does sound quite inelegant, since (according to logic, anyway) things should work out okay by the usual source address selection algorithms.
23:58:58 <fizzie> I guess it might be just for the case where the app has specified a local address, and then the packets do get routed out through the VPN anyway because of rules or whatnot.
23:59:02 <fizzie> Do you have a link to this thing?
23:59:57 <Vorpal> sec, it is on my other computer
2013-01-05
00:00:02 <Vorpal> not the one I have IRC on
00:00:26 <Vorpal> fizzie, http://serverfault.com/questions/345111/iptables-target-to-route-packet-to-specific-interface
00:01:26 <Vorpal> hm what is MASQUERADE in iptables now again?
00:02:04 <fizzie> It's kind of like the comment there suggests; it's like SNAT, except it picks the source address to use from the address "owned" by the outgoing interface.
00:02:25 <fizzie> To make it easier to configure things when the address is dynamically assigned.
00:02:40 <Vorpal> fizzie, well my address is dynamic on the VPN side
00:02:45 <Vorpal> so yeah
00:03:15 <fizzie> Then "-j MASQUERADE" does sound easier than "-j SNAT --to-source $INSERT_VPN_ADDRESS_DYNAMICALLY_HERE". Though not terribly much so.
00:04:37 <Vorpal> well yeah
00:04:59 <fizzie> And the POSTROUTING fixup does indeed sound like it's a just-in-case rule; I *think* given the configuration in that answer, if you have the usual kind of app that doesn't bind to a specific local address, it should get the VPN source address selected automatically.
00:05:13 <Vorpal> a reflection: on a flexibility-usability scale, iptables is on the far end of flexibility.
00:05:36 <Vorpal> while stuff like pf, and ufw even more so is on the other end
00:08:03 <fizzie> Think I'll sleep now; night.
00:08:19 <Vorpal> cya
00:08:25 <Vorpal> fizzie, thanks for all the help
00:15:01 -!- GreyKnight has quit (Quit: .).
00:15:47 <Vorpal> oh god, I just realised I have to work around the existence of network-manager, since this is debian
00:15:48 <Vorpal> -_-
00:16:32 <Vorpal> well I'll replace that with static routing for this computer I think
00:24:08 <quintopia> http://failcube.forumlaunch.net/viewtopic.php?f=20&t=98 why isn't this guy in our channel o.0
00:28:16 <nooga> I just wondered
00:29:28 <nooga> my small lispalike interpreter keeps track of allocated pointers in a list
00:30:18 <nooga> i could easily implement simple mark&sweep GC
00:30:28 <nooga> but i'm in doubt
00:31:07 <Bike> why are you in doubt
00:31:10 <Vorpal> nooga, why not use a generational compacting GC?
00:31:13 <nooga> when it should run the GC
00:31:16 <Vorpal> it is what all the big boys do
00:31:20 <Vorpal> concurrent too
00:31:35 <nooga> Vorpal: because 64kB, no way to implement concurrency
00:31:48 <Bike> just have it run the gc when an allocation puts you over 50% usage or something
00:32:10 <nooga> uhm
00:32:15 <nooga> good idea
00:32:35 <Vorpal> nooga, embedded?
00:32:42 <nooga> yes
00:32:54 <Vorpal> Bike, so if you have constant 75% usage you run an allocation every time?
00:32:56 <Vorpal> err
00:32:58 <Vorpal> a sweep
00:33:08 <Bike> yes
00:33:24 <Vorpal> seems like a potential waste of time
00:33:24 <Bike> that's the time when you come up with a better solution, but until then who cares
00:33:30 <nooga> strings are the worst
00:33:31 <Vorpal> hm
00:33:56 <Bike> you could have it up the allocation threshhold each time, so it's 150% (something arbitrary) of what was left after the last gc
00:33:58 <nooga> parsing s-exps requires copying some tokens
00:34:28 <nooga> and then, probably, freeing most of them
00:34:44 <Vorpal> nooga, why do you have to copy them?
00:34:48 <nooga> except for symbol names
00:34:50 <Vorpal> why not copy on write when you have a GC
00:36:23 <Vorpal> nooga, or create the concept of a substring type: '(string start-idx stop-idx)
00:36:39 <Vorpal> then make all your string routines able to work on that
00:36:44 <nooga> well, when you tokenize (lambda (x) (+ x x)), you've probably got lambda in the symbol table
00:36:58 <Vorpal> nooga, true, where is the copy involved?
00:37:06 <nooga> you will also need x for some time
00:37:21 <nooga> to match against symbol table
00:37:24 <Vorpal> nooga, again, this could reference the input source string that you are parsing
00:37:29 <Vorpal> for the moment
00:37:43 <Vorpal> given a sub string type
00:38:12 <Vorpal> you need to copy when adding a new entry to the symbol table, since at that point you don't want to keep the entire input string around any more
00:38:27 <Vorpal> but until then?
00:38:31 <nooga> yeah
00:38:36 <nooga> but what I did was
00:39:30 <Vorpal> go on
00:39:49 <nooga> tokenize&parse input and then check against symbol table during eval
00:39:56 <Vorpal> hm
00:40:35 <nooga> meh
00:40:40 <nooga> i'll rewrite this
00:40:41 <Vorpal> hm true, there are some good reasons to not keep the string around during eval
00:40:45 <nooga> it's only 300 loc
00:41:28 -!- WeThePeople has joined.
00:42:35 <Vorpal> night
00:43:00 <nooga> night
00:46:59 -!- Vorpal has quit (Ping timeout: 248 seconds).
00:50:34 -!- Frooxius has quit (Ping timeout: 240 seconds).
00:52:39 -!- c00kiemon5ter has joined.
00:54:14 -!- nooga has quit (Ping timeout: 255 seconds).
01:16:09 -!- monqy has quit (Quit: hello).
01:16:23 <c00kiemon5ter> do you think 'i' is good name for an irc client ? :
01:18:41 <Sgeo> I'd say that you could name it that if you want but it might be hard to Google, but then I'd sound a little like zzo38
01:18:42 <kmc> https://twitter.com/DroneInsertion
01:19:47 <c00kiemon5ter> true, but I have no other ideas .. any catchy names flying by your heads ?
01:19:55 <Bike> ircIV
01:20:00 <Sgeo> kmc, https://twitter.com/Friend_Computer
01:20:07 <c00kiemon5ter> ah, iv was my other idea :P
01:20:25 <oerjan> also rather too hard to google, i suspect
01:21:58 <Lumpio-> Apple has trademarked the letter i, you can't use it
01:22:58 <c00kiemon5ter> can i say, "iSee" what you did there ?
01:23:13 * Sgeo misses iRateRadio
01:26:22 -!- sebbu2 has joined.
01:26:42 <oerjan> that could get iRksome
01:29:58 -!- sebbu has quit (Ping timeout: 272 seconds).
01:48:47 <FreeFull> Why is sortBy (compare . fst) $ zip logs numbers giving me a type error ;_;
01:49:15 <shachaf> @ty compare . fst
01:49:16 <lambdabot> Ord a => (a, b) -> a -> Ordering
01:49:27 <FreeFull> Oh
01:49:34 <FreeFull> I see
01:49:41 <FreeFull> >_<
01:49:45 <kmc> "Dude complains that Ubuntu's /bin/sh (dash) isn't POSIX-compliant. After some debugging, the speculation is that in fact what's at /bin/sh isn't Ubuntu's, but is a rootkit which is not POSIX-compliant."
01:50:01 <shachaf> FreeFull: (When you ask a question like that, you should include the error! Otherwise people have to read your mind.)
01:50:03 <Bike> that sounds fascinating
01:50:25 <shachaf> Kids and their rootkits these days!
01:51:49 <FreeFull> So what would be a pointfree way to write (\(a,b) (c,d) -> compare a c)
01:52:18 <shachaf> compare `on` f
01:52:20 <shachaf> Or comparing f
01:52:28 <shachaf> In this case f=fst
01:52:32 <kmc> if your rootkit is not at least ring -10 you are just a loser
01:53:13 <shachaf> My rootkit is at ring banana phone.
01:58:25 <Sgeo> Oh, I should watch some more CCC stuff
01:58:36 <Sgeo> And keep thinking through my design of Racket-Qoppa
01:59:26 <FreeFull> I forgot haskell had fast bignums and laziness
01:59:27 <Sgeo> And file a bug report against the Racket documentation, I should really do that now
01:59:40 <FreeFull> I think there is a much simpler solution to what I'm doing
01:59:49 <shachaf> fignums
02:02:35 <kmc> Sgeo: you're creating a racket language for qoppa? cool
02:03:07 <tswett> Lazinums.
02:03:22 <shachaf> hi tswett
02:03:25 <tswett> Ahoy.
02:03:32 <shachaf> Anything exciting to tell us about natural numbers?
02:03:39 <tswett> Nope.
02:04:02 <tswett> So, I've been pondering how to combine all the best features of C++ with all the best features of Haskell.
02:04:16 <shachaf> elliott wants to add C++ templates to Haskell.
02:04:41 <tswett> I think it's simple. Take C++, and remove fields.
02:05:03 <tswett> Boom. Best of both worlds.
02:05:42 <tswett> Mm, on second thought, fields are kind of useful. But all fields should be immutable outside of constructors.
02:05:48 <zzo38> What are the features of C++ templates other than what Haskell has?
02:08:24 <kmc> causing insanity... wait, never mind
02:08:34 <oerjan> FreeFull: well tell what you're doing and maybe we have an idea :)
02:08:46 <kmc> in C++ things can be templated on integer values as well as types
02:09:15 <Bike> C++: harbinger of dependently typed systems.
02:09:15 <FreeFull> :t on
02:09:16 <kmc> also C++ lets you specialize templates on specific types, which makes them non-parametric
02:09:16 <lambdabot> (b -> b -> c) -> (a -> b) -> a -> a -> c
02:09:28 <kmc> you can make it so f<int> does something totally different from f<float>
02:09:56 <zzo38> I thought that is possible in Haskell too if you have type classes, and type families
02:10:08 <FreeFull> oerjan: I'm seeing what the largest a^b is
02:10:35 <oerjan> FreeFull: b*log a ?
02:10:45 <shachaf> > 5^8 -- this is the largest it gets
02:10:47 <lambdabot> 390625
02:10:47 <FreeFull> oerjan: That's what I tried at first
02:10:52 <oerjan> just in case you have overflow problems
02:11:15 <oerjan> FreeFull: largest from a set of (a,b) pairs?
02:11:21 <FreeFull> Yep =P
02:11:30 <FreeFull> Euler 99
02:11:32 <zzo38> And you can make numbers as types too in Haskell.
02:11:34 <kmc> https://twitter.com/pokemon_ebooks
02:12:06 <FreeFull> I tried the log thing first
02:12:24 <oerjan> :t maximumBy
02:12:25 <lambdabot> (a -> a -> Ordering) -> [a] -> a
02:13:26 <FreeFull> Nice
02:13:53 <FreeFull> I have code that works, it just seems to give me the wrong result =
02:13:55 <FreeFull> =P
02:13:59 <FreeFull> Waaaait
02:14:03 <FreeFull> I know why
02:14:14 <FreeFull> I found the minimum instead of maximum >_<
02:15:28 <FreeFull> There we go :D
02:16:30 <FreeFull> Just swapped the arguments to compare
02:17:07 <oerjan> OKAY
02:24:05 <Sgeo> o.O a number of people on Reddit really like Star Trek Enterprise
02:24:53 <FreeFull> I would ask how to beautify this Haskell code but I don't want to post Project Euler answers ):
02:25:16 <Bike> "7"
02:33:14 <oerjan> FreeFull: maximum [a^b | (a,b) <- yourListOfPairsHere]
02:33:31 <oerjan> assuming the a^b is what is actually the answer
02:33:51 <FreeFull> No, the answer is the line number
02:34:29 <oerjan> ah
02:34:46 <zzo38> I know in C you can combine string literals like "abc" "xyz" but does it work with character literals too?
02:34:59 <shachaf> Would FreeT (w,) IO be more or less the equivalent of Python generators?
02:35:11 <shachaf> I guess generators can have input too these days. But ignoring that.
02:35:53 <FreeFull> zzo38: I don't know, multicharacter literals don't get used much
02:36:08 <zzo38> I would guess so, if they are like JavaScript generators.
02:36:27 <zzo38> For input too you need the free monad of the indexed store comonad.
02:37:36 <shachaf> Foo i o a = (o, i -> a)?
02:37:46 <shachaf> Not Foo i o a = i -> (o, a)?
02:38:53 -!- TeruFSX has joined.
02:39:09 <oerjan> FreeFull: main = print . fst . maximumBy (compare `on` snd) . zip [1..] . map (\[a,b] -> a^b) . map words . lines =<< getContents -- >:)
02:39:30 <zzo38> shachaf: Yes. At least if it is like JavaScript generators, then (o, i -> a) is correct.
02:39:42 <oerjan> oh oops
02:39:48 <oerjan> needs some read in there
02:41:14 <FreeFull> Already solved it
02:41:38 <oerjan> FreeFull: i was just prettifying my imagined solution
02:45:41 <FreeFull> The file's contents are stored as 23452345,234521 on each line
02:49:39 <Sgeo> kmc, how much of a violation of Qoppa's beauty would it be to have wrap be a primitive and a in-Qoppa implementation of wrap behaves differently and wrongly with Racket interop
02:49:44 <quintopia> has anyone made any progress on the narcissus-free language front?
02:49:49 <Sgeo> while primitive wrap works
03:00:59 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
03:01:42 -!- c00kiemon5ter has joined.
03:05:48 <Sgeo> :/ copy/pasting the definition of map from one Racket language to another can result in two maps with different semantics
03:06:01 <Sgeo> I don't like the thought of copy/pasting though
03:06:19 <Sgeo> It seems like it would be annoying to do that just because I want map to have the new function application semantics
03:06:36 <Bike> does it have kernel's cyclic list semantics
03:07:18 <Sgeo> I'm more interested in implementing Qoppa than Kernel, at least at this point. Qoppa's much simpler
03:07:39 <Sgeo> And doesn't require me changing the reader to get rid of quasiquote
03:08:18 <Bike> heh.
03:08:21 <quintopia> zzo38: do you have any ideas?
03:08:24 <Sgeo> Also, I don't remember what Kernel's cyclic list semantics are
03:08:52 <Bike> lemme put it this way, you need an lcm function to implement map.
03:12:06 <Sgeo> o.O
03:12:29 <Sgeo> I really really do like the name $define!
03:12:40 <Bike> why so?
03:13:06 <Sgeo> It describes that it's a non-applicative operative and that it does a side effect
03:13:46 <Bike> we should rewrite scheme in Ro.
03:14:00 <Sgeo> Ro?
03:14:42 <Bike> A philosophical language from I think the 19th century. Idea was you encoded meaning as a tree of phoneme selections.
03:14:49 <oerjan> FreeFull: read ('(':line++")") or read ('[':line++"]") is a nice way to read comma separated tuples or lists :)
03:15:13 <Sgeo> Oh, ok, I see the relevant to what I said
03:16:09 <oerjan> *separated data into
03:17:24 <FreeFull> oerjan: True
03:17:38 <zzo38> I remember I once won a game of Pokemon card by perpetual check. You might think of, there is no perpetual check in Pokemon card? But, it is like perpetual check.
03:18:16 <Sgeo> Ugh, I'd really like to be able to stick a piece of metadata onto things
03:18:23 <Sgeo> A tag, saying "do not evaluate"
03:18:27 <Sgeo> For Racket interop
03:18:37 <Bike> '
03:18:59 <zzo38> Haskell's read function does not normally accept comments.
03:19:52 <Sgeo> Bike, what happens if a Qoppa operative forced in a context where it can't receive forms (e.g. called by a Racket function) tries to evaluate twice?
03:20:23 <zzo38> quintopia: Idea of what? I don't know.
03:20:24 <Bike> hilariously difficult to locate bugs?
03:20:26 <Sgeo> Hmm, although I guess quote semantically does make sense here
03:20:57 <quintopia> zzo38: a narcissus-free programming language
03:21:11 <zzo38> quintopia: No, I don't have an idea.
03:21:40 <zzo38> I did once, but I was not complete of it and I forget what I had.
03:21:44 <zzo38> And it didn't work.
03:22:57 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:23:02 -!- DH____ has joined.
03:25:44 <quintopia> oh
03:32:07 <FreeFull> oerjan: main = print . fst . maximumBy (\(_,a) (_,b) -> compare a b) . zip [1..] . map (\(x,y) -> y * log x) . map (\x -> read ('(':x++")")) . lines =<< readFile "base_exp.txt"
03:32:26 -!- monqy has joined.
03:32:39 <oerjan> FreeFull: you didn't want to use on?
03:32:54 <FreeFull> I couldn't find where it's defined
03:33:02 <oerjan> Data.Function is one place
03:33:10 <oerjan> @hoogle on
03:33:10 <lambdabot> Data.Function on :: (b -> b -> c) -> (a -> b) -> a -> a -> c
03:33:11 <lambdabot> Control.Exception.Base onException :: IO a -> IO b -> IO a
03:33:11 <lambdabot> Control.Exception onException :: IO a -> IO b -> IO a
03:33:33 <shachaf> @src on
03:33:33 <lambdabot> (*) `on` f = \x y -> f x * f y
03:33:43 <shachaf> Also I told you about comparing, which also works here.
03:34:50 <FreeFull> @hoogle comparing
03:34:50 <lambdabot> Data.Ord comparing :: Ord a => (b -> a) -> b -> b -> Ordering
03:35:47 <FreeFull> So I guess comparing snd ?
03:36:02 <oerjan> yeah
03:36:34 -!- Phantom_Hoover has quit (Remote host closed the connection).
03:39:50 <FreeFull> Do I even dare try making \x -> read ('(':x++")") pointfree by hand
03:40:14 <shachaf> It's not that hard.
03:40:22 <shachaf> Start by rewriting it in prefix form.
03:40:37 <FreeFull> It is for a pointfree novice
03:40:54 <Bike> don't be a wuss, freefull. wusses are so full of points.
03:41:08 <FreeFull> I just figure the pointfree version would be shorter =P
03:41:14 <shachaf> Probably not.
03:42:02 <FreeFull> I know (\(x,y) -> y * log x) can be written as (uncurry ((*) . log))
03:43:21 <Bike> So you saved... -1 characters.
03:43:52 <shachaf> Bike: @pling is not about golfing.
03:43:58 <shachaf> Golf is a separate activity.
03:43:59 <shachaf> @where pi
03:44:00 <lambdabot> I know nothing about pi.
03:44:01 <shachaf> @where pi_10
03:44:01 <lambdabot> (!!3)<$>transpose[show$foldr(\k a->2*10^2^n+a*k`div`(2*k+1))0[1..2^n]|n<-[0..]]
03:44:03 <shachaf> @where e_10
03:44:04 <lambdabot> [show(sum$scanl div(100^n)[1..[4..]!!n])!!n|n<-[0..]]
03:44:10 <shachaf> Ah, that's a nice e_10
03:44:15 <Bike> What is pling
03:44:30 <shachaf> It's a sound bicycles make.
03:44:33 <shachaf> It's very nice.
03:44:37 <shachaf> Bikes don't make it, though.
03:44:37 <oerjan> *PLING*
03:44:43 <FreeFull> Bike: I don't know how you count, because the uncurry version actually has exactly the same length
03:44:44 <Bike> Hoity toity bicycles, maybe.
03:45:03 <Bike> I count it in "i dumped it into a program because i can't count" style.
03:45:19 <FreeFull> Maybe you removed the unnecessary spaces
03:45:25 <FreeFull> Which would make the first one shorter
03:46:14 <FreeFull> @where exp
03:46:15 <lambdabot> I know nothing about exp.
03:46:24 <FreeFull> >exp 1
03:46:29 <FreeFull> > exp 1
03:46:30 <lambdabot> 2.718281828459045
03:46:33 <FreeFull> There you go
03:46:35 <FreeFull> e
03:46:47 <Bike> man that ain't even a continued fraction. Sucks.
03:49:14 -!- WeThePeople has quit (Ping timeout: 240 seconds).
03:49:16 <DH____> Hadn't spotted this one on the Wiki... http://t.co/6wE3jfdl
03:49:33 <shachaf> I'm ont clicking a t.co link.
03:49:37 <quintopia> i read that earlier
03:49:39 <quintopia> pretty hilarious
03:49:43 <shachaf> Please post an unshortened version.
03:49:43 <quintopia> reach out to him
03:50:18 <Bike> https://github.com/munificent/vigil shachaf.
03:50:27 <shachaf> Oh.
03:51:19 <oerjan> and shachaf was touched
03:59:36 <oerjan> > exp 1 :: CReal
03:59:38 <lambdabot> 2.7182818284590452353602874713526624977572
04:00:00 <oerjan> Bike: BETTER?
04:01:56 <Bike> why would more digits make it better
04:03:08 <oerjan> well CReal is unlimited in theory
04:03:38 <Bike> yeah but it's represented as a function i bet
04:03:48 <oerjan> iirc yes
04:04:19 <Bike> do you know what functions are oerjan? they are not fractions hardly at all.
04:05:33 <oerjan> > unfoldr (\x -> let f = floor x in Just (f, 1/(x-f))) (exp 1 :: CReal)
04:05:35 <lambdabot> No instance for (GHC.Real.Integral Data.Number.CReal.CReal)
04:05:35 <lambdabot> arising from...
04:05:42 <oerjan> oops
04:05:49 <oerjan> > unfoldr (\x -> let f = floor x in Just (f, 1/(x-fromIntegral f))) (exp 1 :: CReal)
04:05:51 <Bike> haskell, language of no instance for
04:05:53 <lambdabot> mueval-core: Time limit exceeded
04:06:00 <oerjan> ):
04:06:09 <oerjan> > take 50 $ unfoldr (\x -> let f = floor x in Just (f, 1/(x-fromIntegral f))) (exp 1 :: CReal)
04:06:12 <lambdabot> [2,1,2,1,1,4,1,1,6,1,1,8,1,1,10,1,1,12,1,1,14,1,1,16,1,1,18,1,1,20,1,1,22,1...
04:07:15 <oerjan> PAY NO ATTENTION TO THE CUTOFF BEYOND THE CURTAIN
04:07:38 <Bike> i thought haskell had infinite datatypes. where are my infinite datatypes oerjan
04:07:53 <kmc> it doesn't have
04:08:12 <Bike> what!
04:08:25 <kmc> only via wrappers, not directly
04:09:14 <oerjan> > [2,1] ++ intercalate [1,1] $ [2,4..] -- LOOK MA I'M INFINITE
04:09:16 <lambdabot> Couldn't match expected type `[t0]'
04:09:16 <lambdabot> with actual type `[[a0]] -...
04:09:22 <oerjan> if i'd typed, that is
04:09:25 <Bike> y'all are good at this.
04:09:45 <oerjan> > (++) [2,1] . intercalate [1,1] $ [2,4..] -- LOOK MA I'M INFINITE
04:09:46 <lambdabot> No instances for (GHC.Enum.Enum [t0], GHC.Num.Num [t0])
04:09:46 <lambdabot> arising from a u...
04:09:46 <Bike> any particular reason you didn't stick with [2,4..]?
04:09:54 <Bike> > [3,7...]
04:09:55 <lambdabot> A section must be enclosed in parentheses thus: (7 ...)Not in scope: `...'
04:09:55 <lambdabot> ...
04:10:06 <Bike> > [3,7..]
04:10:07 <ais523> is hyphen hyphen space a comment in Haskell?
04:10:07 <lambdabot> [3,7,11,15,19,23,27,31,35,39,43,47,51,55,59,63,67,71,75,79,83,87,91,95,99,1...
04:10:09 <ais523> I thought that was just Lua
04:10:14 <oerjan> ais523: yes
04:10:20 <kmc> hyphen hyphen is
04:10:24 <Bike> > [3,7,19..]
04:10:25 <lambdabot> <hint>:1:8: parse error on input `..'
04:10:29 <kmc> but maybe not hyphen hyphen other symbol character
04:10:48 <kmc> > 3 --+ 4
04:10:50 <lambdabot> Not in scope: `--+'
04:10:58 <kmc> yeah it's a -- token
04:11:22 <kmc> > 3 {-+ 4
04:11:23 <lambdabot> <hint>:1:3: unterminated `{-'
04:11:25 <kmc> > 3 {-+ 4 -}
04:11:27 <lambdabot> 3
04:11:35 <Bike> fuck yeah
04:11:50 <oerjan> > 2+2----------------------------hi there
04:11:52 <lambdabot> 4
04:12:08 <ais523> whose law is it that lexical syntax of comments will cause the most controversy in any language design?
04:12:14 <kmc> wadler's law
04:12:15 <ais523> (except in #esoteric, who mostly don't care)
04:12:36 <kmc> see also parkinson's law of triviality
04:12:36 <ais523> kmc: wow, I'm vaguely impressed that you knew it without looking it up :)
04:12:45 <Bike> he mentions it all the time
04:12:48 <oerjan> our favorite comment syntax is "any unused command character" :)
04:12:55 <Bike> > 2+2 REM 19
04:12:56 <lambdabot> Not in scope: data constructor `REM'
04:13:06 <ais523> oerjan: it doesn't scale well
04:13:24 <ais523> I think my favourite comment syntax is "thing that incidentally happens to be unexecuted due to the semantics of the language"
04:13:29 <ais523> such as (comment)*0 in BF Joust
04:14:00 <ais523> (btw, my BF Joust interp juiced uses ()*10 or whatever as debug markers, because they're no-ops from the point of view of other interpreters, which is what you want)
04:14:25 <oerjan> ais523: you realize wadler was one of the haskell designers, right?
04:14:45 <ais523> oerjan: I had a vague memory of something like that
04:14:51 <ais523> I thought it was haskell-related, at least
04:14:56 <ais523> or at least some haskell-like language
04:15:42 <oerjan> and that they had a unique approach to dealing with the issue known as "the syntax czar"
04:17:50 <ais523> I didn't know that
04:17:54 <ais523> and it's not really unique
04:18:02 <ais523> it happens in most medium-sized projects, doesn't it?
04:19:59 -!- DH____ has quit (Read error: Connection reset by peer).
04:25:00 <kmc> '" vaginal photoplethysmography" redirects here. For other uses, see vaginal photoplethysmography (disambiguation).'
04:25:05 <kmc> what the hell else could that be
04:25:52 <Bike> Probably an album name.
04:25:59 <kmc> yeah
04:26:03 <kmc> the disambig link is dead though
04:27:17 <Bike> and not in the logs either
04:29:04 <oerjan> someone probably added the template without knowing what it was for
04:37:41 <ais523> can I make a stupid request?
04:37:46 <ais523> websites, please stop using black backgrounds
04:38:02 <ais523> I like black backgrounds and light foregrounds late at night to reduce the overall light level in the room
04:38:20 <ais523> and thus, I want to be able to turn inverse video on and just leave it on
04:38:25 <ais523> without the occasional shock white screen
04:48:08 <kmc> \rainbow{user stylesheet}
04:56:20 <Sgeo> Crud, Racket Qoppa might be harder than I thought
04:56:21 <Sgeo> Need to check
04:58:17 <Sgeo> Oh, huh, guess not
04:58:25 <Sgeo> Not entirely sure why not, but hey
04:58:35 <Sgeo> Oh, I think I understand
04:59:22 <Sgeo> The outermost #%app sees the full form as is, which doesn't get imbued with more #%app and #%datum and gunk unless it's in a position to be expanded
04:59:35 <Sgeo> (define-syntax-rule (#%app form ...)
04:59:35 <Sgeo> (quote (form ...)))
04:59:49 <Sgeo> That is ridiculously fun
05:00:08 <Sgeo> > (+ 1 2)
05:00:08 <Sgeo> '(+ 1 2)
05:00:09 <lambdabot> Could not deduce (GHC.Num.Num (a0 -> a))
05:00:10 <lambdabot> arising from the ambiguity chec...
05:00:13 <Sgeo> > (+ 1 2 (* 2 3) (* 4 5))
05:00:13 <Sgeo> '(+ 1 2 (* 2 3) (* 4 5))
05:00:15 <lambdabot> Could not deduce (GHC.Num.Num
05:00:15 <lambdabot> (a0 -> (a1 -> a1) -> (a3...
05:00:40 <Sgeo> Now I just need to get a good understanding of Racket eval
05:05:44 -!- oerjan has quit (Quit: Good night).
05:10:14 <elliott> ais523: hi, why are you awake?
05:10:25 <ais523> I'm often up this late
05:10:35 <ais523> when it gets to about 5am, I tend to wait for sunrise before going home
05:10:40 <ais523> it's a nicer journey that way
05:11:57 -!- DHeadshot has joined.
05:13:24 -!- mig22 has joined.
05:13:31 <elliott> ais523: I just woke up :(
05:13:48 * elliott is really tired.
05:15:29 -!- DHeadshot has quit (Read error: Connection reset by peer).
05:15:34 -!- DH____ has joined.
05:19:06 <ais523> elliott: going back to sleep would not be unreasonable, if you can
05:19:21 <elliott> ais523: well there's a problem
05:19:29 <elliott> ais523: i decided i should get up when i was even more tired than this
05:19:44 <elliott> and now i've committed to it so it's too late to change my mind now that i'm awake enough to realise what a terrible idea it was
05:20:25 <ais523> ah, hmm
05:21:20 <elliott> also I have this sneaking suspicion that if I went back to bed I'd wake up late afternoon again
05:21:26 <elliott> which I just spent several days trying to stop
05:22:41 <ais523> ah, right
05:23:36 <elliott> i guess i will just have a terrible day and then go to sleep at seven pm or something
05:50:20 -!- Bike has quit (Ping timeout: 255 seconds).
05:52:13 -!- Bike has joined.
05:54:40 -!- DH____ has quit (Read error: Connection reset by peer).
05:54:45 -!- DHeadshot has joined.
06:07:38 <Sgeo> kmc, can Qoppa environments be opaque to Qoppa?
06:08:57 <kmc> hm
06:09:03 <kmc> not in the language i described in that blog post
06:09:24 <kmc> you need to maniuplate environments in order to define 'define' and 'set!' and such as library code
06:09:35 <kmc> you could make them an abstract data type, but not really opaque
06:09:55 <Sgeo> Hm, ok
06:10:25 <kmc> you can have an operative languages where environments are opaque, but you need more primitives then
06:10:53 <kmc> the point of qoppa was to have as few primitives and evaluation rules as possible
06:11:09 <kmc> only three evaluator rules, only one primitive that isn't an applicative, i.e. function
06:11:18 <Bike> i think kernel's having environments only used for eval, and $define! as an optional primitive, made pretty good sense.
06:11:47 <kmc> that primitive being vau
06:11:59 <kmc> but even vau is a name bound to a value in the global environment, and not a special evaluator rule
06:13:08 <Sgeo> The namespaces that Racket eval accepts as an argument don't seem to be _very_ modifyable
06:13:29 <kmc> Bike: in what way is it optional?
06:14:01 <Bike> kmc: in that the spec separates out environment mutation stuff as optional, and the author says "optional"
06:14:16 <Bike> would be a bitch to define letrec without it though
06:14:29 <kmc> ok
06:15:20 <Bike> would be hard to use the language without $define! but so it goes
06:15:43 <Sgeo> elliott, Fiora monqy
06:24:09 <kmc> having both operatives and applicatives at a fundamentel level seems inelegant
06:24:17 <kmc> it might be the right decision though
06:24:23 <kmc> would be interested to understand that tradeoff better
06:24:37 <elliott> kmc: zepto just had operatives
06:24:46 <elliott> and an applicative was just an operative that happened to evaluate all its arguments in order first
06:24:58 <elliott> and there existed an operative to automatically wrap an operative into one of those
06:25:11 <kmc> yeah, that's how qoppa is as well
06:25:21 <Bike> is that not how kernel is...?
06:25:27 <kmc> but it makes it tricky to write 'apply'
06:25:30 <kmc> Bike: no, it has both as primitive types
06:25:43 <kmc> and 'wrap' and 'unwrap' are language primitives
06:26:11 <kmc> in qoppa 'wrap' is a kinda hackish library thing, and 'unwrap' doesn't exist
06:26:24 <elliott> kmc: apply is quite easy?
06:26:32 <elliott> I just did (apply f xs) = (eval (cons f xs)) basically
06:26:45 <elliott> (apply if '((> x 2) "yay" "nay")) working is cute
06:26:55 <kmc> no, sorry, wrap is fine, but 'apply' is weird
06:27:00 <kmc> yeah
06:27:04 <kmc> let me look again
06:27:15 <elliott> I mean it's obviously weird and violates all reasonable ideas of abstraction
06:27:18 <elliott> but isn't that kind of the point
06:30:13 <kmc> mine is more like (apply f xs) = (eval (cons f (map (lambda (x) (list quote x)) xs)))
06:30:23 <kmc> because f is an applicative and so it's going to call 'eval' on its arguments
06:30:28 <kmc> but the xs are already evaluated
06:30:32 <elliott> oh, right
06:30:38 <elliott> yes, that's what I did, you're right
06:30:44 <elliott> in fact I even used the "map" in scope
06:30:49 <kmc> if you had unwrap you would do (apply f xs) = (eval (cons (unwrap f) xs))
06:30:50 <elliott> so if you redefined "map", "apply" would start working weirdly
06:30:53 <elliott> that's just how zepto i am
06:30:56 <kmc> heh
06:31:00 <elliott> kmc: well you can define unwrap
06:31:04 <elliott> wrap makes it eval all its arguments
06:31:07 <elliott> unwrap makes it quote all its arguments
06:31:10 <kmc> yeah
06:31:14 <elliott> that's pretty elegant and you can do it without a notion of an applicative
06:31:15 <kmc> i guess so
06:32:06 <kmc> yeah i'm not sure if this business about "if you redefine map" counts as a violation of hygeine or not
06:32:19 <kmc> i think basically no
06:32:32 <kmc> when you close over a mutable environment, and it changes later, things can break
06:32:40 <kmc> it's not specific to macro-ish things
06:33:04 <kmc> and if you want to save the original value of map, you can do that easily enough
06:33:04 <elliott> kmc: well you can just define apply in terms of the map in scope
06:33:07 <elliott> by doing (list map ...) etc.
06:33:18 <elliott> but that's so uncool
06:33:39 <elliott> macros pretty much fundamentally break scoping and reasoning though
06:33:43 <elliott> so I don't care
06:33:51 <kmc> i did enjoy using 'lambda' to save the value of 'lambda' while using set! to redefine the value of 'lambda'
06:33:58 <kmc> (to add sugar)
06:35:24 <elliott> the basic idea with zepto was that all the primitives would be defined in terms of the other primitives as much as possible
06:35:33 <elliott> so you could just screw with how the interpreter works by redefining map or cons or whatever
06:35:38 <elliott> or even quote
06:35:39 <kmc> mm, cool
06:54:48 -!- TeruFSX has quit (Ping timeout: 276 seconds).
07:36:08 <Sgeo> "Sokal's paper (in brief - the real paper contains more nonsense than can be discussed here) argued that a properly free mathematics would free us from the social constructs which are implied by our rigid, unyielding, dogmatic, anti-feminist, capitalist, and unjust theory of gravity. Of course, they did publish it of their own free will..."
07:36:24 -!- Jafet has quit (Quit: Leaving.).
07:36:27 <Bike> god, how long ago was that now
07:36:37 <monqy> is this about the sokal affair
07:37:27 <Sgeo> yes
07:37:40 <Bike> sgeo, have you seen snarxiv?
07:37:53 <Sgeo> no
07:38:03 <Bike> You should see snarxiv.
07:39:21 <Sgeo> heterotic string is apparently a real term
07:43:44 <Sgeo> There was one (reloaded away) about examining reheated bubbles
07:44:04 <Sgeo> I think I can't visit that site
07:44:09 <Sgeo> Randomness makes me feel weird
07:44:57 <elliott> ^bool
07:44:58 <fungot> Yes.
07:45:34 <Sgeo> When I was a kid, I remember one Monopoly game where I recorded every roll of the dice and every action
07:45:40 <Fiora> In the 20th century, Georgi recalled metrics on C^6. We present a criterion for an analytic continuation of metrics in a tachyonic model with B-mesons. The sheaf cohomology depends, surprisingly, on whether models of Brans-Dicke inflation can be interpreted as the QED/TQFT correspondence. When demystifying type I strings, we obtain that cosmological parameters in Topological String Theory turn out to be equivalent to some little-know
07:45:45 <Bike> that sounds incredibly boring, sgeo.
07:45:56 <Sgeo> I didn't want it to be lost forever
07:47:09 <Sgeo> I should have saved those Snarxiv titles and abstracts
07:47:28 <elliott> if you reload the page enough times they'll come back!!
07:48:00 <Bike> sgeo, i take it you're not a fan of the copenhagen interpretation.
07:48:04 -!- copumpkin has quit (Ping timeout: 272 seconds).
07:48:08 <monqy> Sgeo: out of curiosity by any chance do you like monopoly?
07:48:38 <Sgeo> Not especially, but for other reasons I think
07:48:45 -!- copumpkin has joined.
07:48:48 <monqy> oh?
07:49:23 <Sgeo> I remember playing Monopoly on the computer with friends, and some left, so a friend and I kept playing and making moves for them, and we caused one to go bankrupt, and I felt bad about that
07:49:48 <Sgeo> Actually I think that's when my iffyness about randomness started
07:50:01 <monqy> ah...
07:50:42 <Bike> i picked an awesomely coincidental time to start reading chaitin, huh.
07:53:23 <elliott> Bike: if you break the roles of monopoly you'll be chaitin
07:53:31 <elliott> 8)
07:53:38 <Bike> wow.
07:53:48 <monqy> yes
07:53:48 <Bike> i'm. i have to revoke your boot privileges for that one
07:54:18 <Sgeo> I don't entirely get how Chaitin is relevant. Things other than Chaitin's Constant?
07:54:26 <zzo38> I don't really like the game Monopoly either, but it isn't really too bad; however, when I played we usually changed some rules, such as if you decide not to buy something it just stays and is not auctioned, and that if you land on free parking you are allowed to teleport.
07:54:50 <Bike> Sgeo: binary representation of his constant is indistinguishable from coin flips.
07:54:59 <elliott> Bike: i dont wear boots
07:55:01 <zzo38> If you don't like Copenhagen interpretation, what interpretation do you like?
07:55:02 <Sgeo> Ah
07:55:07 <Bike> no the boot piece, the piece
07:55:18 <elliott> Bike: i dont wear pieces of boots either
07:55:20 <elliott> thats just silly
07:55:23 <elliott> why would you wear only parts of a boot
07:55:27 <Bike> Sgeo: also chaitin has this kind of bugaboo about math being random.
07:55:32 <elliott> bike are you "trolling" me
07:55:45 <Bike> that's it no car either
07:55:50 <Bike> i can't work in this environment
07:55:55 <Sgeo> zzo38, Bike was suggesting that since randomness makes me uncomfortable, the idea of the universe being fundamentally random would make me very uncomfortable
07:55:59 <Sgeo> Sometimes it does.
07:56:30 <Bike> you should look at what "random" means! it's a so very interesting term
07:56:49 <Sgeo> If someone out there is using a quantum random number generator to make a decision... the thought of that makes me go a little pale
07:57:08 <Bike> you can get quantum random numbers online a few places
07:57:27 <monqy> sometimes I roll a die when elliott asks me to make a decision for him. stomach-churning???
07:58:00 <Sgeo> monqy, the dice likely macroscopic enough that its numbers are deterministic
07:58:17 <Sgeo> Or, well, mostly deterministic
07:58:17 <Bike> pssh, they'd still follow a distribution!
07:58:24 <elliott> Sgeo: I used HotBits to determine which of two (previously-written) phrasings of this statement to send
07:58:26 <zzo38> To me it is OK though, and I am also OK some games which partially include randomness, but what I like best is some visible information everyone, some hidden, some random, much skill, and a few chance involved. Games with complete information (such as chess) are still good, though.
07:58:39 <monqy> Sgeo: the dice are a metaphor for me asking a quantum random number generator
07:58:49 <Bike> has anyone considered that zzo38 may actually be God?
07:58:56 <Bike> like, the guy that designed the universe we're in.
07:59:02 <elliott> I think HotBits is pretty reliably ~quantum~
07:59:02 <Bike> or at least the one i'm in. y'all are weird.
07:59:10 <elliott> "HotBits are generated by timing successive pairs of radioactive decays detected by a Geiger-Müller tube interfaced to a computer."
07:59:13 <elliott> looks so
07:59:30 <elliott> http://www.fourmilab.ch/hotbits/how3.html cool
07:59:40 <Bike> Yeah, müller is like at least four quantumsworth
07:59:52 <monqy> Sgeo: btw what do you mean that a die's numbers are "deterministic"
08:00:13 <zzo38> Bike: I suppose so; I have thought about egotheism in the past. However, I have also thought about many other things too, so I think there are better ways anyways.
08:00:36 <Sgeo> monqy, they're a function of the way the air's flowing
08:00:39 <Bike> zzo38, would you like to be an antipope?
08:00:42 <Sgeo> And of the way it's rolled
08:00:43 <zzo38> But, I think about a lot of things. So it isn't relevant.
08:00:59 <elliott> isn't how the air flows dependent on quantum details
08:01:00 <zzo38> Bike: I have no intention to be pope or antipope. I also have no intention to be God.
08:01:21 <Bike> You could be god unintentionally.
08:01:22 <Bike> "oops"
08:01:49 <zzo38> But saying you can be God is about as nonsense as saying you can be a number and so on.
08:02:05 <elliott> at least i am pretty sure it is
08:02:09 <monqy> pebbles can be numbers, so why can't I?
08:02:15 <monqy> `quote pebble
08:02:17 <elliott> `quote pebble
08:02:20 <elliott> monqy....
08:02:24 <HackEgo> 540) <itidus20> what is nice about a pebble is that you can process it with your brain as a number by simply looking at it
08:02:24 <HackEgo> 540) <itidus20> what is nice about a pebble is that you can process it with your brain as a number by simply looking at it
08:02:45 <Bike> how come this itidus dude isn't still here, he's cool
08:03:13 <zzo38> monqy: It could represent the numbers perhaps, but I mean the abstract mathematical concept of the numbers, not the things you count with them or the figures you write down to indicate them.
08:03:34 <monqy> can I be a thing you count with numbers or a figure you write down to indicate them?
08:03:35 <Sgeo> Hmm. I think it might be fair to say that itidus belongs in the other type of #esoteric about as much as he does here
08:04:07 <Sgeo> Well, no... not really supernatural thinking, but.... partial thinking
08:04:57 -!- Jafet has joined.
08:04:59 <monqy> what's partial thinking
08:05:40 <Sgeo> Thinking about ideas but not thoroughly
08:06:00 <Sgeo> Maybe that's not an accurate way to describe him
08:06:33 <zzo38> You can't think about it thoroughly because that would take forever!
08:06:40 <Bike> partial evaluation of the brain
08:11:55 -!- epicmonkey has joined.
08:22:53 -!- Nisstyre-laptop has quit (Ping timeout: 255 seconds).
08:26:46 -!- Bike has quit (Quit: tired).
08:35:55 <Sgeo> If I write a Brainhype interpreter in Scheme-omega, does that count as an implementation?
08:36:16 <Sgeo> Despite the fact that the language I implemented it in is itself not implementable?
08:36:22 <Sgeo> Actually, I guess it is implementable
08:36:30 <Sgeo> Just no implementations can run on turing machines
08:36:34 <monqy> philosophy question: what is an implementation?
08:36:55 <Sgeo> Are there any completely unimplementable languages?
08:37:26 <elliott> what do you mean by completely unimplementable
08:37:47 <elliott> any language can be implemented in the trivial language where every program is a that-language interpreter
08:37:59 <Sgeo> Oh. So trivially no, then.
08:37:59 <elliott> a language whose specification is logically contradictory isn't "implementable" but that's because it's not a language
08:39:45 -!- mig22 has quit (Quit: mig22).
08:41:12 -!- mig22 has joined.
08:43:45 <zzo38> What is the mathematical structure called, which has the successor and predecessor (inverse of each other), and total ordering according to the successor and predecessor, but not such thing as a designated zero point?
08:49:10 <Sgeo> Do you need to designate a point as special to define the integers/
08:49:13 <Sgeo> *?
08:51:50 <monqy> what do you mean by designated zero point
08:52:03 <monqy> what do you mean by define the integers
08:52:12 <monqy> alt. "designate a point as special"
08:52:46 <monqy> i guess by alt. i mean &. whoops!
08:55:18 -!- nooga has joined.
08:59:43 <Sgeo> zzo38 is asking for something without a designated zero point
09:00:01 <Sgeo> Does that necessarily imply that there is no 0, or just that it's not defined based on 0?
09:00:01 <monqy> yes but what does that mean
09:00:09 <monqy> what is a "0"
09:00:26 <Sgeo> With peano arithmetic, you start from zero and build from there
09:00:35 <Sgeo> I assume that's what zzo38 means
09:00:39 <monqy> but what does it mean not to have a "0"
09:00:56 <Sgeo> I don't know
09:01:01 <monqy> ok
09:02:51 <monqy> anyway there are lotsa ways to do these definitions but a "0" here is kind of an artificial concept if you don't have any addition operation for it to be the identity of
09:03:21 <monqy> like i could define the integers as a free group but would the identity be the "0"?
09:04:59 <zzo38> I mean one without any identity points.
09:05:09 <zzo38> Or any other points as special in some way.
09:05:13 <monqy> well what operations are you considering
09:06:39 <monqy> since you can't talk about "identity element" without an operation for it to be the identity of
09:07:37 <zzo38> Only the operations I listed; no addition and so on.
09:08:37 <monqy> there's nothing special about 0 if you only have succ, pred, and ordering
09:12:20 <elliott> Sgeo: 0 is just a symbol for the additive identity
09:12:26 <elliott> it exists iff you have an additive identity
09:13:05 <elliott> though certain constructions of the integers like peano numbers (+ handling of negation so you get integers) are "based" upon 0 sure
09:13:43 <monqy> pls enlarge quotes around `"based"'
09:18:51 <elliott> monqy: i think calling the peano axioms "based on 0" is fair
09:19:06 <elliott> monqy: it uses 0 as an "atomic element"
09:19:38 <elliott> as in it uses an atom we'll call zero that it then makes an additive identity by defining addition directly such that it is
09:22:37 -!- DHeadshot has quit (Read error: Connection reset by peer).
09:30:46 -!- ais523 has quit.
09:45:12 <Sgeo> Does Tcl count as a macro system?
09:46:30 <Sgeo> THANK YOU OLEG
09:46:43 <Sgeo> I am tired of hearing the claim that Haskell does not need macros
09:49:27 <monqy> hi
09:49:38 <monqy> whats up
09:49:49 <Sgeo> Reading some of Oleg's slides
09:50:13 <Sgeo> http://okmij.org/ftp/papers/Macros-talk.pdf
09:51:39 <elliott> "need"
09:58:46 <zzo38> I think Haskell (and other programming languages, too) would be much improved by use of macros.
09:59:11 <zzo38> And do-notation, list-notation, etc ought to be implemented as macros.
09:59:47 <Sgeo> I agree
10:00:54 <zzo38> They are some of the things I wanted to fix with Ibtlfmm, for example.
10:01:23 <zzo38> C preprocessor macros is not very powerful, compared to some others.
10:03:14 <zzo38> Forth, Lisp, BLISS, TeX, METAFONT, all have more sophisticated macros.
10:04:09 -!- copumpkin has quit (Ping timeout: 252 seconds).
10:04:49 -!- copumpkin has joined.
10:06:01 <zzo38> Other than preprocessor macros and string literals, is replacing ,, with , and ;; with ; in a C program going to keep a valid program valid with the same meaning?
10:06:30 <Deewiant> The latter breaks for (;;)
10:06:52 <zzo38> Yes, with for(;;) you are correct, I forgot
10:07:35 <zzo38> But what if it is in a {} block instead of () block, then will it be?
10:07:56 <Deewiant> I think it'll be fine then.
10:08:53 <zzo38> Is ,, ever valid in any block?
10:10:07 <zzo38> Does ,} and ,] and ,) mean anything in C?
10:14:50 -!- zzo38 has quit (Quit: ;;).
10:14:54 -!- sebbu has joined.
10:16:54 -!- sebbu2 has quit (Ping timeout: 272 seconds).
10:25:50 -!- sebbu2 has joined.
10:25:51 -!- sebbu2 has quit (Changing host).
10:25:51 -!- sebbu2 has joined.
10:27:51 -!- sebbu has quit (Ping timeout: 260 seconds).
10:34:52 -!- carado has joined.
11:08:25 -!- sebbu2 has changed nick to sebbu.
11:16:01 -!- Phantom_Hoover has joined.
11:28:22 -!- AnotherTest has joined.
11:28:30 <AnotherTest> Hello
11:28:41 <Sgeo> Hi
11:41:19 -!- GreyKnight has joined.
11:46:44 -!- GreyKnight has quit (Ping timeout: 255 seconds).
11:47:13 <Sgeo> "So the syntax-rules design loses as a
11:47:13 <Sgeo> result of failing to observe the very sort of constraint that it
11:47:13 <Sgeo> imposes on anyone trying to write a block-with-implicitly-bound-break
11:47:13 <Sgeo> macro."
11:47:17 <fizzie> String literal concatenation does not exist for character literals, to answer a question from many hours back.
11:53:32 -!- monqy has quit (Quit: hello).
12:06:01 <Sgeo> Ok, I think I understand ??!lambda and ??!apply
12:12:42 -!- AnotherTest has quit (Quit: Leaving.).
12:32:22 -!- epicmonkey has quit (Ping timeout: 265 seconds).
12:35:53 -!- GreyKnight has joined.
12:36:07 <Sgeo> What is a CK abstract machine?
12:41:44 -!- GreyKnight has quit (Ping timeout: 255 seconds).
12:49:09 <Phantom_Hoover> The thing in this: http://www.ii.uni.wroc.pl/~dabi/publications/WRS07/biernacka-biernacki-wrs07.pdf ?
12:52:29 <nooga> uh
12:52:45 <nooga> Wrocław University
12:53:10 <fizzie> Cławs of Steel.
12:53:48 <nooga> Słabe
12:54:03 <Phantom_Hoover> nooga you know that on computers you don't have to cross out letters you didn't mean to put in
12:54:06 <fizzie> That's even better.
12:54:54 <olsner> you should spell it vrotswav
12:55:18 <olsner> or maybe Rocklaw
12:55:28 -!- GreyKnight has joined.
12:58:27 <fizzie> Rocklaw University, for all the aspiring rockstar/lawyers.
12:59:44 <Jafet> You, too, can be a rockstar slash lawyer.
13:00:11 -!- GreyKnight has quit (Ping timeout: 255 seconds).
13:01:15 <shachaf> `welcome Jafet
13:01:17 <HackEgo> Jafet: 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.)
13:01:46 <fizzie> Jafet: Today I'm shipping rockstar slash lawyer.
13:02:25 -!- DHeadshot has joined.
13:03:23 <nooga> Phantom_Hoover: really?
13:03:57 <Phantom_Hoover> It's amazing, right?
13:04:45 <nooga> trüly
13:42:01 -!- epicmonkey has joined.
13:43:48 -!- nooga has quit (Ping timeout: 248 seconds).
13:59:19 -!- nooga has joined.
14:14:31 <nooga> ∆t
14:14:35 -!- Arc_Koen has joined.
14:24:09 -!- nooga has quit (Read error: Connection reset by peer).
14:24:34 -!- nooga has joined.
14:59:52 -!- GreyKnight has joined.
14:59:52 -!- greyooze has joined.
15:00:15 -!- greyooze has quit (Client Quit).
15:00:16 -!- GreyKnight has quit (Client Quit).
15:01:21 -!- GreyKnight has joined.
15:02:18 -!- nooga has quit (Ping timeout: 276 seconds).
15:02:42 -!- Vorpal has joined.
15:05:09 -!- TeruFSX has joined.
15:05:41 <GreyKnight> 2009-02-18.txt:14:56:47: <ehird> factor, by the way, is an excellent language made by someone who knows what they're doing and it's also fast, and has great unicode support and tons of libraries/
15:08:27 * elliott isn't sure why you're quoting something I said in 2009 without context
15:10:20 <GreyKnight> in case Sgeo comes by later and realises he has a kindred spirit!
15:10:26 <GreyKnight> Joined by your love of Factor <3
15:11:07 <elliott> sgeo was around in 2009
15:11:13 <elliott> pretty sure sgeo even liked factor in 2009
15:11:30 <elliott> anyway factor is an abandoned/dead language so it doesn't really matter what anyone thought of it in 2009
15:11:47 <Sgeo> There's been a release since Slava left
15:12:35 <GreyKnight> oh I got the impression Sgeo's love affair with Factor was a recent thing
15:12:38 <shachaf> Slava left?
15:12:49 <elliott> GreyKnight: it goes in cycles
15:13:07 <elliott> Sgeo: I didn't know, but that's mostly irrelevant
15:13:41 <elliott> Anyway they have a very nice environment. much nicer than the language really
15:13:47 <elliott> and good libraries
15:14:01 <elliott> never had the community though
15:14:30 <Sgeo> Does Racket have a community?
15:14:41 <Sgeo> What happens when PLT lose interest or retire
15:14:44 <elliott> probably more than factor
15:14:51 <elliott> groups don't really retire...
15:15:28 <Sgeo> I don't think the composition of the group has changed since it formed
15:20:18 <GreyKnight> c00kiemon5ter: how about iAreSee?
15:21:34 <Sgeo> I might just end up writing eval for Qoppa and directing #%app to call it
15:21:39 <Sgeo> Rather than trying to use Racket eval
15:21:42 <GreyKnight> Sgeo: so, regarding Qoppa as a Racket language. Is this sort of level-mixing common with other Racket languages? If so how do other people solve it?
15:21:50 <GreyKnight> oh you're talking about it too, excellent :-)
15:22:24 <GreyKnight> and yes, I figured you were already going to use qoppa-eval?
15:22:51 -!- TeruFSX has quit (Ping timeout: 240 seconds).
15:23:05 <GreyKnight> doesn't kmc's original version do that anyway?
15:23:09 <Sgeo> I think the main solution for impedance mismatches between Racket languages and the Racket environment is not to design a Racket language with an impedance mismatch. It doesn't seem well designed for arbitrary languages.
15:23:26 <Sgeo> GreyKnight, pretty much, which kind of makes anything I do boring, doesn't it?
15:25:50 <GreyKnight> What I mean is, is it common for Racket languages to want to be able to mix that language with arbitrary Racket code?
15:25:50 <GreyKnight> (I don't know)
15:26:02 <Sgeo> Yes
15:26:22 <Sgeo> Or at least call Racket functions and have Racket functions be able to call their functions
15:26:33 <GreyKnight> in that case surely somebody has already solved this problem and we can investigate how they did it :-)
15:26:53 <Sgeo> Look at Scribble. It's an un-lisp-looking language for documentation that has easy notation for calling Racket functions
15:27:48 <Sgeo> GreyKnight, the problem is mostly "how to do it given the the nature of Qoppa functions" not "The mechanics of how to have a Racket language call functions from a different Racket language"
15:29:44 <GreyKnight> oh, the third step of their foolang->racket->foolang is probably always going to be a function, right? So they don't need to worry about whether or not to evaluate what they're passing in the last step, they just always do
15:35:56 <Sgeo> Pretty much any Racket language is a possibly customized reader, and a bunch of definitions including definitions of macros that are implicit
15:36:17 <Sgeo> (+ 1 2) -> (#%app + 1 2) for example assuming + is not a macro
15:36:47 <Sgeo> There's also #%module-begin which surrounds the whole program, #%datum which is around any piece of data
15:36:49 <Sgeo> etc
15:47:54 * GreyKnight is too tired to manage this
15:47:54 <GreyKnight> elliott: is Zepto documented anywhere? The wiki only seems to have ZeptoBasic
15:48:56 <Sgeo> The #%module-begin thing means I could just take what's passed into it and give it to qoppa-eval
15:49:02 <Sgeo> In theory
15:49:15 <elliott> GreyKnight: no
15:49:16 <Sgeo> But then interop with Racket might be problematic
15:53:12 <Phantom_Hoover> elliott, did you actually implement it?
15:56:23 <elliott> Phantom_Hoover: Yes.
15:59:20 -!- GreyKnight has quit (Ping timeout: 256 seconds).
15:59:30 <Sgeo> Hmm. Presumptively, every module level form except provide and require should be function applications in Qoppa
15:59:44 <Sgeo> So just redefining #%app should work perfectly, I think
16:04:39 <Sgeo> Does the dialect of Scheme kmc was using not have named let?
16:05:46 -!- GreyKnight has joined.
16:06:27 <Sgeo> GreyKnight, I'm likely to take kmc's implementation and modify it to my needs
16:08:11 <GreyKnight> Sgeo: I'm not sure that it's possible to mix higher-order Racket functions in with Qoppa like this. The HOF can, in theory, produce *any* structure and push it into the Qoppa operative, and that structure might well look exactly like your Qoppa internals, whether tagged or whatever.
16:08:11 <GreyKnight> Unless there's some way to tag a structure outside of what Racket can access? But the whole thing's done in Racket so presumably not :-/
16:08:11 <GreyKnight> Although hm are those "dye-pack" things any use here?
16:10:37 <Sgeo> Racket has a module system and opaque structs that means I don't have to expose the means of creating my internal structures to other Racket modules
16:11:17 <kmc> it seems that @CompSciFact tweets not facts about computer science but platitudes about software engineering
16:11:25 <kmc> thus my quest continues :/
16:12:09 <GreyKnight> Sgeo: right, but can another module *accidentally* create an identical structure?
16:12:18 <Sgeo> kmc, is an implementation of Qoppa as a Racket language still interesting if it's heavily based on your code?
16:12:21 <Sgeo> GreyKnight, no
16:12:58 <GreyKnight> ah, non-duck-typed structures? Hmm may work then...
16:13:04 <kmc> Sgeo: sure, why not?
16:13:14 <kmc> i don't know
16:13:20 <kmc> make it if it would make you happy
16:13:25 <shachaf> kmc: Your quest is to find a Twitter account that tweets facts about computer science?
16:13:39 <kmc> it's a bit more general than that
16:13:48 <GreyKnight> FACT: bugs reproduce when you're not looking
16:17:51 -!- GreyKnight has quit (Ping timeout: 240 seconds).
16:18:14 -!- GreyKnight has joined.
16:18:18 <GreyKnight> Sgeo: so, if all qoppa-operatives and qoppa-lists which are passed around are wrapped up in a struct, there is no way for Racket to "fake" one of them, even accidentally
16:18:20 <GreyKnight> so if a regular list comes in on any parameter, Qoppa knows "hey, Racket must have passed this value in! I'd better convert it."
16:20:57 <GreyKnight> (qoppa-eval would be doing that work I guess)
16:21:17 <Sgeo> I'm thinking the only special qoppa structure are qoppa-operatives
16:21:49 <Sgeo> They contain the actual "function" of the operative, and also an extra piece of code telling Racket how to treat it as a function
16:22:01 <Sgeo> When qoppa-eval calls it, it knows to unpack the structure to get to the operative
16:22:29 <Sgeo> When a Racket function tries to call it, it goes through that extra piece of code, which wraps all arguments in quote
16:22:51 <Sgeo> Before passing it on to the inner structure
16:23:15 <GreyKnight> oh that's neat it can do that
16:23:41 <Sgeo> That's more or less how keyword arguments in Racket work, actually
16:24:20 <Sgeo> If #%app sees keywords in what is passed into it, it tries to treat its first argument as a special keyword-accepting function
16:24:31 <Sgeo> Which is some sort of structure wrapping around a function
16:24:42 <GreyKnight> (Lua has something similar, you can define a "call" metafield on any object which tells the system how to call it as if a function)
16:25:07 <Sgeo> And if it #%app doesn't see keywords, it treats it like a normal Racket function, and that function knows to pass 0 keywords to the function stored inside the structure
16:25:42 <GreyKnight> hm
16:25:47 <GreyKnight> okay, this might just be crazy enough to work
16:27:02 <GreyKnight> Wow, not only is this a particularly poor example of a bf derivative, it's actually *less useful* than brainf**k proper since it doesn't provide input capabilities: http://esolangs.org/wiki/There_Once_was_a_Fish_Named_Fred
16:27:23 <GreyKnight> Phantom_Hoover, we need a bricking on aisle three
16:28:00 <elliott> um... http://phantom-hoover.tumblr.com/ already covered that
16:29:09 <GreyKnight> oh!
16:29:19 <GreyKnight> Well, it won't hurt to brick him twice anyway
16:30:30 <GreyKnight> (I mean it won't hurt *us*. Obviously it'll hurt *him*.)
16:31:36 * Sgeo tucks BF-RLE away somewhere
16:34:31 <GreyKnight> doesn't bfjoust already do that?
16:35:45 <GreyKnight> (RLE, I mean)
16:36:12 <fizzie> It has a notation for repetition, if that's what you mean.
16:37:11 <Sgeo> BF-RLE may be older than BF Joust, let me check
16:37:42 <fizzie> Arguably it's not "plain RLE" since you can repeat more than just a single symbol.
16:38:24 <Sgeo> BF-RLE is 2006, BF Joust is 2008
16:40:12 <fizzie> But are there BF implementations that accept RLE'd input that predate BF-RLE? One would think so.
16:41:11 -!- TeruFSX has joined.
16:42:05 <fizzie> ^show
16:42:06 <fungot> echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me tell
16:42:11 <fizzie> ^how rot13
16:42:16 <fizzie> ^show rot13
16:42:17 <fungot> ,[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+14<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>>+5[<-5>-]<2-[>+<-[>+<-[>+<-[>+<-[>+<-[>+
16:42:24 <fizzie> Hrm, that wasn't the best example.
16:42:28 <fizzie> ^show pow2
16:42:29 <fungot> +2[[<+7[-<+7>]>[-<+<+>>]<[->+<]<-2.[-]<]+4[->+8<]>.[-]>>[-[>+2<-[>+2<-[>+2<-[>+2<-[>-8>+>[->+>+<2]+>>[<2->>[-]]<2[>+<-]>[-<+>]<4-[>+2<-[>+2<-[>+2<-[>+2<[-]]]]]]]]]]<[->+<]>+>[-<+>]>>]<3]
16:42:31 <shachaf> ^show welcome
16:42:39 <fungot> ,[.,]+14[>+8>+4>+7>+6<4-]>2+2.-26.>2+3.+14.+7.<+.>+3.-2.<+2.<.<+4.>3+2.<2.>2+5.<+3.-3.<.+73.+5.>2.<.>-2.-4.<-4.<2.>-5.>2+.-.<.>-2.<-65.<-.+13.>2-10.<.>+4.<2-6.<-2.>2.+69.<2+.>.+5.>.<-2.>+4.>-3.-67.<2-2.<-.-3.-8.>+2.<-6.>-5..>.<+.<+6.>3.<2-2.>-8.<+2.<.>+7.>.<2.-2.>3.<3-.>2+4.<-2.>+4.-2.<-5.>2.<-6.<.>+3.>.<3.+.>+2.<+7.>-.+10.<+.>2+.<2+.>-5.>2+.-.<-31.<2+.>-2.>2.<2-5.+2.+3.>+31.>.<+4.<-4.-8.>+6.+3.<2-2.>-5.>+2.<2-4.+6.-.>3+12.-12.
16:42:46 <fizzie> Oh, that's a good one.
16:42:50 <fizzie> (fungot is 2008 too.)
16:42:51 <fungot> fizzie: it's a completely unoptimized fnord brainfuck interpreter that's running in a screen window on colin.
16:43:48 -!- nooodl has joined.
16:43:53 <GreyKnight> fungot: with RLE, right?
16:43:54 <fungot> GreyKnight: reuters has a bit of greek history and literature
16:43:58 <GreyKnight> (also who's colin)
16:44:09 <fizzie> GreyKnight: It was the hostname of one of my computers.
16:46:00 <fizzie> GreyKnight: Back when I had a HHGTTG hostname theme. (I had at least colin, agrajag, hactar, sesefras, bistromath, epun, ... I think I've forgotten the rest. The domain name I currently use (zem.fi) is still from there.)
16:47:17 <fizzie> Oh, and random.
16:47:36 <GreyKnight> Oh, I wondered about Zem actually
16:47:57 -!- mig22 has quit (Ping timeout: 276 seconds).
16:48:51 <fizzie> "We live quiet retired lives in the swamp, where we are content to flollop and vollue and regard the wetness in a fairly floopy manner. Some of us are killed, but all of us are called Zem, so we never know which and globbering is thus kept to a minimum."
16:49:12 <fizzie> http://sprunge.us/aiNH
16:50:30 <elliott> fizzie: Nice TRANSCRIPTION ERROR.
16:51:48 <GreyKnight> http://esolangs.org/wiki/Category:Brainfuck_derivatives Wow that's a big list
16:52:36 <GreyKnight> I quite liked the mattresses. In fact I have one of my own. In fact I'm lying on it right now!
16:52:59 <fizzie> You're lying on a DEAD THING.
16:53:27 <fizzie> Category:Brainfuck equivalents "only" has 18 pages.
16:53:27 <GreyKnight> It's been properly taxidermied IT'S FINE
16:53:54 <GreyKnight> It has 22 for me :-S
16:54:20 <c00kiemon5ter> lol that was awesome fizzie :D
17:02:51 -!- Taneb has joined.
17:03:11 <elliott> So awesome fizzie didn't even write it.
17:03:22 -!- TeruFSX has quit (Ping timeout: 256 seconds).
17:06:05 -!- Frooxius has joined.
17:06:19 <fizzie> It would have been quite a bit less awesome, had I written it.
17:12:50 -!- GreyKnight has quit (Remote host closed the connection).
17:16:05 -!- TeruFSX has joined.
17:16:16 -!- GreyKnight has joined.
17:32:25 <GreyKnight> "You'll have to read Atlas Shrugged to appreciate this really obscure reference." <-- uh no thanks I have something really important to do in the other room >_>
17:35:44 <kmc> Telemachus Sneezed
17:41:01 -!- TeruFSX has quit (Ping timeout: 246 seconds).
18:06:45 <GreyKnight> Chuck Moore has been working on this: http://greenarraychips.com
18:07:26 <GreyKnight> reminds me of the first item listed under http://esolangs.org/wiki/List_of_ideas#Ideas_related_to_esoteric_operating_systems.2C_esoteric_processors_and_esoteric_computers
18:07:49 <GreyKnight> maybe we can list the GA chip as a concrete example of an esoteric computer? It's certainly unusual
18:13:17 <fizzie> comp.lang.forth has been all about the GA144 for the last year or so.
18:13:30 <fizzie> I don't think anyone has really figured out what to use it for (and how) yet.
18:13:58 <GreyKnight> yeah same here
18:14:15 <GreyKnight> but it looks like one of things that "this is bound to be incredibly useful once we figure it out"
18:14:29 <GreyKnight> s/out/out!/
18:24:26 <kmc> leverage
18:25:39 <GreyKnight> Give me a GA144 and a place to stand, and I can move the universe!
18:27:45 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
18:29:14 -!- Bike has joined.
19:00:39 -!- AnotherTest has joined.
19:11:48 -!- GreyKnight has quit (Quit: -->).
19:25:02 -!- sivoais has quit (Ping timeout: 256 seconds).
19:26:09 -!- Nisstyre-laptop has joined.
19:33:02 -!- sivoais has joined.
19:49:05 -!- oerjan has joined.
20:04:27 <oerjan> <zzo38> I don't really like the game Monopoly either, but it isn't really too bad; however, when I played we usually changed some rules, such as if you decide not to buy something it just stays and is not auctioned, and that if you land on free parking you are allowed to teleport.
20:05:01 <oerjan> istr one part of david morgan-mar's flame against monopoly was that the house rules people tended to add usually made it even worse
20:05:09 <oerjan> or possibly that was part of the forum discussion
20:06:27 <oerjan> (iirc the house rules tend to prolong the game by giving people ways out from going bankrupt)
20:07:02 <oerjan> so that the least awkward way of playing monopoly is to follow the written rules _strictly_
20:08:09 <olsner> when you go bankrupt, you're out of the game? and the objective of monopoly is to go bankrupt last?
20:08:12 <AnotherTest> oerjan: oh, like adding dept?
20:08:34 <AnotherTest> So you can lend money from the bank
20:08:35 <oerjan> yeah i think borrowing from the bank was mentioned
20:08:49 <oerjan> olsner: yeah
20:08:52 -!- jiella has joined.
20:08:54 <AnotherTest> I actually won once by doing that
20:09:12 <olsner> I don't recall having any house rules in monopoly, I guess we just never played it
20:09:14 <AnotherTest> although you generally lose when you have to
20:10:20 -!- epicmonkey has quit (Ping timeout: 272 seconds).
20:10:28 <oerjan> btw here is the famous rant http://www.irregularwebcomic.net/2623.html
20:10:35 <Phantom_Hoover> Still doesn't change the fact that you spend most of the game waiting for whoever's in the lead to win.
20:10:44 <AnotherTest> that's true
20:10:50 <olsner> I wonder if the soviet made a communist monopoly ... or maybe they just reinterpreted it as a game of being evil
20:11:08 <elliott> olsner: well monopoly was originally a game of being evil iirc
20:11:12 <elliott> as in it was a ~morality game~
20:11:13 <oerjan> olsner: iirc monopoly _started_ as an anti-capitalist game
20:11:14 <AnotherTest> olsner: /monopoly/ is perfectly fine for communists :p
20:11:18 <elliott> hence you know
20:11:20 <elliott> the name
20:11:26 <elliott> monopolies aren't generally considered good things
20:11:48 <Phantom_Hoover> It was called something else back when it was thinly-veiled criticism of landowners.
20:11:53 * olsner suddenly realizes the name has a meaning when you treat it as a word
20:12:39 <Phantom_Hoover> Like the Most Novel and Entertaining Game of Property and Rent, because people in the past were crap at naming things.
20:13:17 <oerjan> Phantom_Hoover: i'm pretty sure the wikipedia page tells all that stuff
20:14:00 <elliott> Phantom_Hoover: I like how the Victorians hadn't quite figured out you were meant to name books something shorter than their contents.
20:18:01 <oerjan> `addquote <elliott> Phantom_Hoover: I like how the Victorians hadn't quite figured out you were meant to name books something shorter than their contents.
20:18:05 <HackEgo> 896) <elliott> Phantom_Hoover: I like how the Victorians hadn't quite figured out you were meant to name books something shorter than their contents.
20:18:33 <oerjan> hm i really had forgotten how epic that rant was
20:18:34 <shachaf> Phantom_Hoover: People in the present are, too.
20:19:23 <elliott> shachaf: Unfoldy, eh?
20:19:53 <shachaf> elliott: blah, eh?
20:20:03 <elliott> blergh!!!
20:20:55 <Phantom_Hoover> shachaf, but at least we're terse!
20:22:30 <oerjan> play adfb now!
20:22:52 * oerjan thinks mashing his keyboard should have giving a better name than _that_
20:22:59 <oerjan> *given
20:23:15 <oerjan> hjygn
20:23:59 <oklopol> hjygn is nice
20:24:33 -!- zzo38 has joined.
20:31:13 <Gregor> hjygn is a liar and a thief
20:31:18 <nooodl> zzo38: the day of zeux started a couple of hours ago, you should participate
20:41:31 -!- Vorpal has quit (Ping timeout: 260 seconds).
20:44:13 <oerjan> <zzo38> What is the mathematical structure called, which has the successor and predecessor (inverse of each other), and total ordering according to the successor and predecessor, but not such thing as a designated zero point?
20:44:45 <oerjan> this seems to relate to the integers in a similar way to how affine spaces relate to vector spaces...
20:45:16 <kmc> i think monopoly should be played as a nomic where you can spend money on lobbyists to make the rules more favorable to you
20:47:28 <oerjan> zzo38: http://en.wikipedia.org/wiki/Principal_homogeneous_space seems to include your concept if you use the integers as the group
20:47:50 <oerjan> (found that from Affine space)
20:48:46 <oerjan> zzo38: well there's no total ordering mentioned but you can easily define it
20:51:00 <oklopol> some order theorists write things like -N + N
20:51:25 <oerjan> oklopol: THAT'S JUST CRAZY TALK
20:51:27 <oklopol> or with omegas rather
20:51:43 <oerjan> oh like that yes
20:51:48 <oklopol> -\omega + \omega
20:51:56 <oklopol> then there's only the order
20:52:44 <oklopol> i'm a big fan of embedding orders in things
20:53:10 <oklopol> mm orders
20:53:45 -!- monqy has joined.
20:55:09 <elliott> kmc: that sounds really interesting actually
20:55:13 <elliott> kmc: should have that as an agora contest
20:55:37 <oerjan> @tell zzo38 http://en.wikipedia.org/wiki/Principal_homogeneous_space seems to include your concept if you use the integers as the group
20:55:37 <lambdabot> Consider it noted.
20:56:27 <oklopol> @tell zzo38 crazy talk
20:56:27 <lambdabot> Consider it noted.
21:03:24 -!- AnotherTest has quit (Quit: Leaving.).
21:05:27 -!- Nisstyre-laptop has quit (Quit: Leaving).
21:05:37 -!- Nisstyre has quit (Quit: Leaving).
21:14:23 <Gregor> <kmc> i think monopoly should be played as a nomic where you can spend money on lobbyists to make the rules more favorable to you // this is the most brilliant thing I've ever heard
21:22:56 -!- GreyKnight has joined.
21:24:30 <GreyKnight> kmc: RE: Monomicopoly: I approve, please make it happen thx
21:25:50 <GreyKnight> oerjan: yes, that was DMM's biggest complaint as I recall. I basically agree with him. However nomic monopoly is likely to be fun in spite of this :-)
21:31:24 -!- Gregor has set topic: <kmc> i think monopoly should be played as a nomic where you can spend money on lobbyists to make the rules more favorable to you | http://codu.org/logs/_esoteric/.
21:31:28 <Gregor> IT'S THAT IMPORTANT
21:32:18 <Bike> hm, so do you have one player be the government (and not play the game proper) so that you can keep who changed the rules secret?
21:36:12 <GreyKnight> You could always start with open voting and then introduce secrecy as a rules change :-)
21:36:53 <GreyKnight> the nice thing about nomics is not needing to have a "perfect" set of rules before you start ;-)
21:36:55 <oerjan> GreyKnight: as i just reread it, i can say that you recalled wrong - he just had a single paragraph noting that house rules made things worse, before going on to explain why it was crap even without them
21:36:58 <Bike> wouldn't the other way be more realistic? everybody shouting about making [government] more transparent and all
21:37:19 <Bike> man, this would make a much better satire of capitalism than the original
21:37:33 <GreyKnight> Bike: you may have a point
21:38:01 <GreyKnight> oerjan: Well! It was *a* point in his essay anyway.
21:38:10 <Arc_Koen> oerjan: I barely read any explanations at all
21:38:34 <Arc_Koen> I believe he just keeps repeating "monopoly is bad it is so bad it is terribly bad please don't play it" without giving any argument
21:38:43 <Arc_Koen> s/barely/hardly
21:38:54 <oerjan> Arc_Koen: let me guess, you gave up reading after the first half? :P
21:39:21 <oerjan> or before reaching the second, rather
21:39:28 <Arc_Koen> I read in diagonal (can you say that in english?) because I was hoping he would finally give some explanations
21:39:37 <Arc_Koen> but I didn't see any
21:39:47 <oerjan> ...no you cannot say that in english.
21:39:49 -!- nooga has joined.
21:40:45 <GreyKnight> Perhaps "I skimmed it" if I understand you correctly
21:40:54 <Arc_Koen> ah, right
21:41:04 <Arc_Koen> I was about to say "I skipped it" but that sounded so wrong
21:41:43 <Arc_Koen> I mean, I guess his point is that there are lot of games that are way better than monopoly
21:42:13 <Arc_Koen> all my boardgame-playing mates would agree with that
21:42:49 <oerjan> admittedly it's mainly blowing off steam; i think the third last paragraph is the thing that comes closest to explaining something.
21:42:53 <GreyKnight> what about comonopoly
21:42:56 <Arc_Koen> and that playing monopoly with kids is bad because that's basically "hiding" other games to the people you're playing monopolywith
21:43:15 <Bike> GreyKnight: satire of soviet economics?
21:43:40 <oerjan> yeah get them hooked on junta and diplomacy instead, good family values
21:43:53 * oerjan runs away
21:44:04 <Arc_Koen> personally I loved games so much when I was a kid, that I would agree on playing anything when my parents were ok to play something
21:44:11 <Bike> so that reminds me, how is Settlers of Catan on the imperialism front
21:44:34 <Arc_Koen> (still do)
21:44:36 <GreyKnight> I made up a sci-fi version of Diplomacy set in space once. The motto was "In the grim darkness of the future, there is only treachery and backstabbing."
21:44:56 <GreyKnight> (*fairly accurate*)
21:46:30 <oerjan> Bike: in comonopoly, soviet economics satirize YOU!
21:47:16 * oerjan cackles maniackally
21:47:17 <Bike> maybe i should just read red plenty -_-
21:48:51 <oerjan> where is copumpkin when i need someone to understand my brilliant pun :(
21:49:30 <oerjan> sorry, wordplay
21:49:41 * oerjan isn't sure of the difference himself, anyway
21:50:27 <oklopol> i think you did more than just invert the arrows there
21:50:41 <oklopol> so umm, i can't find any publications of yours on dblp
21:50:45 <oerjan> oklopol: IT WORKS ON BOTH LEVELS
21:50:51 <oerjan> wtf is dblp
21:51:17 <oklopol> they collect publications
21:51:24 <oklopol> apparently it's not that old
21:51:45 <oerjan> okay
21:51:51 <oklopol> http://www.informatik.uni-trier.de/~ley/pers/hd/s/Salo:Ville.html here's mine
21:52:07 <oklopol> i like dblp
21:52:09 <oklopol> it's nice
21:52:14 <oerjan> *GASP*
21:53:22 <Phantom_Hoover> https://twitter.com/villesalo
21:53:25 <Phantom_Hoover> oko is this you
21:53:55 <oklopol> no
21:54:08 <Phantom_Hoover> oh, he's villesalo.org
21:54:12 <oklopol> there are a lot of people with this name
21:54:14 <oklopol> he is?
21:54:40 <oklopol> he has the best homepage out of all the villesalos i know
21:55:03 <elliott> oklopol: do you still have a homepage
21:55:03 <oerjan> (the *GASP* was for the complete revelation of your name, of course)
21:55:10 <oklopol> yes
21:55:25 <oklopol> oerjan: i like to reveal it now and then
21:55:43 <elliott> oerjan: we've known his name for ages
21:55:55 <oklopol> yeah it's not exactly a secret
21:56:32 <GreyKnight> like unmasking a superhero
21:56:35 <oerjan> elliott: i know, but i don't recall it's been stated outright in channel
21:57:05 <oklopol> has though.
21:57:26 <oerjan> but i guess it's something adults tend to do, i notice tswett changed the attribution on ///
21:58:04 <oklopol> yes it's all about fame at this point
21:58:31 <elliott> one day oerjan will tell us his real name
21:58:38 <oerjan> NEVAR
21:59:04 * oerjan doesn't even have a secret middle name, his parents were too lazy to include one
21:59:10 -!- asiekierka has quit (Excess Flood).
21:59:13 <elliott> oerjan q johannsen
21:59:17 -!- asiekierka has joined.
21:59:19 <GreyKnight> Oerjan McOerjan
21:59:32 <elliott> on
21:59:34 <elliott> *no
21:59:36 <olsner> ørjan ørjansen
21:59:50 <olsner> ørjan ø. ørjansen
22:00:08 <shachaf> Star651 is pretty great.
22:00:12 <fizzie> Best things in life: http://sprunge.us/iTDc
22:00:27 <Taneb> Is he the one who thought phantom-hoover.tumblr.com was serious?
22:01:02 <fizzie> (I finally bothered to disassemble the libcms_cli.so:cmsCli_authenticate function of my VDSL2 box. It has hardcoded user:pass combos of "root:public" and "ztedebug:ztedebug".)
22:01:08 <elliott> Taneb: yes
22:01:16 <Taneb> Yeah, he's the greatest
22:01:17 <GreyKnight> fizzie: O_O
22:01:20 <oerjan> olsner: Ørjansen is much rarer than Ørjan.
22:01:21 <shachaf> phantom-hoover.tumblr.com isn't serious?
22:01:22 <oerjan> "Det er 3, 2, 1 eller 0 menn som har Ørjan som første fornavn, og Ørjansen som etternavn."
22:01:30 <elliott> fizzie: are you having a nice day
22:01:36 <Taneb> shachaf, it's as serious as you want it to be
22:01:47 <shachaf> oerjan: Clearly you need to have more children.
22:01:51 <shachaf> (Assuming "sen" means "son".)
22:01:52 <Phantom_Hoover> Taneb, update it you fucker
22:02:00 <oerjan> the ssb.no search isn't quite so accurate when there are that few results.
22:02:02 <fizzie> elliott: I guess I am, according to the router.
22:02:11 <elliott> will Phantom_Hoover's blog cover the upcoming new documentary
22:02:11 <Taneb> Phantom_Hoover, I can never find a BF derivative that's fun to talk about!
22:02:24 <Phantom_Hoover> documentary?
22:02:24 <Taneb> elliott, if the documentary gets more steam
22:02:33 <GreyKnight> Taneb: do you want us to make a new one for you :-I
22:02:39 <oerjan> "There are three or less with Ørjan as their first name, and Ørjansen as last name."
22:02:40 <Phantom_Hoover> Taneb, do a long piece on why ook! is the only tolerable bf derivative
22:02:49 <Taneb> Phantom_Hoover, I was thinking that
22:02:57 <shachaf> Phantom_Hoover: It's not tolerable...
22:03:14 <elliott> Taneb: i am pretty sure it is maximally steamful
22:03:34 <Phantom_Hoover> shachaf, yeah it is, because it was a mildly amusing joke
22:03:38 <elliott> Taneb: can i write guest posts under an anonymous pseudonym (due to my high profile status in the esolangs community)
22:04:01 <Taneb> elliott, everyone's writing under the name Phantom Hoover so far
22:04:09 <elliott> don't be silly, only Phantom_Hoover is
22:04:28 <elliott> i like the idea that over the years "Phantom Hoover" stops being fully a person and starts being more a character
22:04:36 <GreyKnight> Why is Ook! more tolerable than the others
22:04:41 <oerjan> shachaf: -sen is indeed etymologically "son", but norway changed to inherit family names by law something like 18th or 19th century
22:04:44 <elliott> until Phantom_Hoover himself either changes nick entirely or stops truly existing as a person in some kind of metaphysical way
22:04:48 <elliott> and all we have left is a bourbaki
22:05:03 <Phantom_Hoover> i'm cool with this
22:05:10 <shachaf> oerjan: By law!
22:05:17 <oerjan> (i think it may have been before we split from denmark)
22:05:18 <shachaf> Ridiculous.
22:05:22 <GreyKnight> Phantom_Hoover: the new Bourbaki --- dammit elliott stop ninjaing me
22:05:29 <shachaf> oerjan: Well, change your family name to ørjansen, and then have many children.
22:05:32 <shachaf> Same effect.
22:05:44 <shachaf> (Even better if the children propagage the name further.)
22:05:50 <shachaf> (Or you could call them all ørjan.)
22:05:53 <oerjan> shachaf: there may be sufficiently few people by that name that i cannot legally change to it :P
22:06:16 <shachaf> ?
22:06:23 <shachaf> You can't change your name arbitrarily?
22:06:30 <oklopol> i heard an interesting theory for why finnish surnames end in -nen
22:06:48 <oerjan> shachaf: rare surnames are protected, you need permission from every holder to change to it
22:06:53 <GreyKnight> Perhaps call your children Ørjan1, Ørjan2, Ørjan3, ...
22:07:06 <oklopol> in the church books they just took the father's name and added -sen to make the surname, because that's how it was done in sweden i guess
22:07:33 <olsner> you should make some kind of pact to name all children of all future generations of ørjans "ørjan ørjansen"
22:07:35 <oklopol> and somethingsen sounds like the finnish genitive of somethingnen
22:07:56 <olsner> I guess there might be slight confusion for generations with more than one offspring, but shit happens
22:08:37 <oklopol> also that story was incredibly boring when told in english
22:08:43 <oklopol> i wish i'd've thought of that
22:09:12 <oerjan> <GreyKnight> Why is Ook! more tolerable than the others <-- because bf derivatives weren't a worn out concept when it was invented
22:09:16 -!- greyooze has joined.
22:09:25 <olsner> but sweden also switched to inheriting family names instead of making patronyms a long time ago
22:09:30 <olsner> fsvo long time
22:09:35 <greyooze> (if you have high hopes for them the children maybe Ørjan^2, Ørjan^3, ...)
22:10:40 -!- aloril has quit (Ping timeout: 272 seconds).
22:10:42 <oerjan> oklopol: except swedes add -son not -sen
22:10:54 <oklopol> did they do that hundreds of years ago as well?
22:11:02 <oerjan> greyooze: Ackermann(Ørjan,2)
22:11:32 -!- GreyKnight has quit (Ping timeout: 255 seconds).
22:11:43 -!- greyooze has changed nick to GreyKnight.
22:11:51 <oerjan> i'm pretty sure the phonology change from o to e happened only in danish originally, then spread to norway because of common writing system at the time
22:12:02 <oerjan> and the swedes were never in on it
22:12:59 <GreyKnight> (they were originally the swodos)
22:13:30 <oklopol> oerjan: interesting. at least i didn't have this misconception for too long as i heard this like a week ago.
22:13:57 <oklopol> nen is also a diminutive suffix but that makes no sense
22:13:58 <oerjan> misconceptionnen
22:16:15 <olsner> is it -nen that the finnish names end with? I thought it was -lainen
22:17:27 <oklopol> that's more commonly used for when you're from somewhere
22:17:42 <oklopol> like ruotsalainen = swedish
22:17:48 <GreyKnight> Wally Wessexlainen
22:17:58 <oklopol> yeah
22:18:06 <oklopol> wessexläinen though
22:18:13 <olsner> so ørjanlainen = people who come from ørjan?
22:18:27 <kmc> http://goatkcd.com/1156/sfw 1,001 Household Uses For Goatse
22:18:29 <GreyKnight> yay I got a ¨
22:19:02 <oklopol> vowel harmony, aou => lainen, äöy => läinen. if you find neither you default to läinen
22:19:26 <GreyKnight> I like how making the goatse line-art apparently renders it "safe for work"
22:19:40 <oklopol> plus sometimes if you have aou first and then a lot of i and e you forget you're supposed to put lainen and put läinen instead
22:20:13 <oerjan> ahaieeieieieeläinen
22:20:37 <oklopol> yeah that sounds fine
22:21:07 <GreyKnight> I was actually considering sprinkling some random ¨s around when I wrote that but didn't. I guess I should have.
22:21:25 <GreyKnight> (then there'd've been a non-zero chance of me getting it right)
22:22:36 <oklopol> then there's things like "analyysi"
22:23:28 <oklopol> that's just fucked up
22:23:41 -!- aloril has joined.
22:23:52 <fizzie> oklopol: Olumpialaiset.
22:24:02 <fizzie> Or is that with two 'p's?
22:24:11 * GreyKnight guesses that means "analysis"
22:24:39 <oklopol> olumppijalajset
22:25:48 * oerjan recalls wikipedia had that as an example of something that might or might not get finnishified
22:25:56 <GreyKnight> irländläinen
22:26:53 <oklopol> i don't think it'll get finnishified, i don't know an alternative and analysoida (analyze) is in everyday use.
22:27:04 <oklopol> or what does finnishification mean
22:27:09 <oerjan> i mean the olympia stuff
22:27:46 <oerjan> basically rural hicks pronounce it with u
22:28:02 <oklopol> oh.
22:28:10 <GreyKnight> Is "irländläinen" valid?
22:28:16 * GreyKnight crosses fingers
22:28:23 <oerjan> i don't think finns are big on "ndl"
22:28:32 <GreyKnight> :<
22:28:41 <oklopol> irlantilainen
22:28:51 <oklopol> a => lainen
22:29:15 * GreyKnight wasn't even close
22:29:27 <oklopol> d is often changed to t
22:29:35 <oerjan> GreyKnight: basically the root affects the suffix, not the other way around
22:30:43 <GreyKnight> Oerjan: I found "irländsk" for Irish and guessed that the ä would stay
22:30:56 <GreyKnight> and then picked -läinen based on that
22:31:18 <olsner> "irländsk" is swedish though, not finnish
22:31:18 <oerjan> GreyKnight: it's ok, just train on distinguishing Mämmi from Maamme, and you should be fine. also "irländsk" is swedish i believe
22:31:19 <GreyKnight> but okay apparently Ireland is "irland"
22:31:39 <GreyKnight> oh I got mixed up about what language we were talking about @_@
22:31:51 <oerjan> indeed
22:31:56 <oklopol> ireland is irlanti
22:32:05 <GreyKnight> oh
22:32:16 <oklopol> a word cannot end in a d
22:32:32 <GreyKnight> okay if I'd gotten that I would have correctly guessed irlantilainen so I will count this as a moral victory
22:32:33 <elliott> irlantid
22:32:34 <elliott> what now ???? ?
22:32:38 <oklopol> irlantidi
22:32:44 <oklopol> you just add an i.
22:32:46 <oklopol> then it's fine
22:32:55 <GreyKnight> irlantidid
22:32:57 -!- Nisstyre has joined.
22:33:11 <fizzie> Irlanti did it.
22:33:12 <oerjan> irlantilainen illithids
22:33:36 <Taneb> I think I've just updated Phantom_Hoover's Tumblr, but my internet's playing up, can someone double check?
22:33:42 <elliott> you did
22:33:55 <Phantom_Hoover> you did
22:33:59 <oerjan> you did
22:34:03 <elliott> you didn't
22:34:03 <olsner> you should've written it as a single long sentence though
22:34:32 <elliott> although even LOLCODE is a thousand times better than a brainfuck derivative
22:34:34 <elliott> Taneb: not convinced this is true
22:35:09 <Taneb> elliott, it's hyperbole, and the point is brainfuck derivatives suck
22:35:16 <GreyKnight> yay new rant
22:35:23 <elliott> Taneb: btw you forgot the tabs
22:35:24 <elliott> tags
22:35:48 <Taneb> I'll add some in a minute
22:36:32 <GreyKnight> Taneb: The other day on the channel I came up with BRAINLISPCODE, a LOLCODE-style LISP with an embedded bf derivative. I thought you should know. :-I
22:36:38 <shachaf> 9 combinations?
22:36:40 <shachaf> That's awful.
22:37:48 <GreyKnight> So's your face but do we go on about it?
22:38:18 <oerjan> `addquote <GreyKnight> Taneb: The other day on the channel I came up with BRAINLISPCODE, a LOLCODE-style LISP with an embedded bf derivative. I thought you should know. :-I
22:38:21 <HackEgo> 897) <GreyKnight> Taneb: The other day on the channel I came up with BRAINLISPCODE, a LOLCODE-style LISP with an embedded bf derivative. I thought you should know. :-I
22:39:34 <oerjan> Taneb: i suggest striking out "a thousand times" and replacing it with "ten times", then strike that out and put "50 percent"
22:41:18 <oerjan> hth
22:41:57 <Phantom_Hoover> support this
22:42:42 <Phantom_Hoover> Taneb, oh wow that's brilliant
22:43:06 <GreyKnight> `like
22:43:07 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: like: not found
22:43:20 <shachaf> oerjan: hi
22:43:26 <shachaf> @undefine
22:43:30 <shachaf> @let now a k b = k (b <> a); later f k m a = k (m <> f a); run l = l id mempty
22:43:32 <lambdabot> Defined.
22:43:38 <shachaf> Can you figure out how to make map work?
22:43:48 <shachaf> map :: (m -> n) -> ... m ... -> ... n ...
22:45:24 <elliott> it can't
22:45:29 <elliott> you have a contravariant m
22:45:34 <elliott> er
22:45:35 <elliott> covariant
22:45:42 <elliott> it's obvious
22:45:44 <GreyKnight> applied general abstract nonsense
22:45:44 <elliott> djinn will tell you the same
22:46:01 <monqy> what's ...
22:47:25 <oerjan> shachaf: besides what elliott said, that would require me having any idea what now and later do in the first place
22:47:47 <oerjan> :t now
22:47:49 <lambdabot> Monoid m => m -> (m -> t) -> m -> t
22:47:51 <oerjan> :t later
22:47:53 <lambdabot> Monoid m => (t1 -> m) -> (m -> t) -> m -> t1 -> t
22:47:59 <shachaf> > run (now "x = " . later show . now ", y = " . later show) 2 4
22:48:01 <lambdabot> "x = 2, y = 4"
22:49:10 <elliott> I wish Haskell had syntax for "comment out the rest of the file".
22:49:16 <elliott> Moving {-s is annoying.
22:50:23 <oerjan> elliott: make a quasiquote hth :P
22:50:35 <elliott> oerjan: quasiquotes need terminators...
22:50:39 <elliott> I'm thinking like __END__
22:50:47 <oerjan> elliott: yes, but you don't need to move them
22:51:16 <elliott> I don't understand
22:51:29 <oerjan> [q| ... [q| ... [q| ... |] would work perfectly. well, assuming you don't use a quasiquote for anything else.
22:51:51 <shachaf> elliott: Just leave a -} at the end of the file?
22:51:56 <shachaf> Are you nesting these or what?
22:52:04 <elliott> shachaf: Right, nesting.
22:52:12 <elliott> Also moving the {- to the end is annoying.
22:52:12 <shachaf> So don't nest quotes.
22:52:15 <oerjan> elliott: ooh, you can leave --} at the end of file
22:52:17 <elliott> I'd prefer to just delete the line.
22:52:24 <elliott> oerjan: oh, clever :)
22:52:28 <elliott> I might actually do that, thanks!
22:52:38 <shachaf> oerjan++
22:59:56 <Jafet> In C, end comments with //*/
23:01:19 -!- ais523 has joined.
23:03:35 <elliott> ais523: hi
23:03:38 <ais523> hi elliott
23:04:22 <shachaf> hi ais523
23:04:23 <Taneb> ais523, Phantom_Hoover updated his Tumblr, finally
23:04:27 <Taneb> I suggest you check it out
23:04:38 <shachaf> Taneb: I thought that was you.
23:04:38 <Phantom_Hoover> i consider it my finest work to date
23:04:44 <ais523> link?
23:04:49 <ais523> hi shachaf
23:05:09 <Taneb> phantom-hoover.tumblr.com
23:06:26 <ais523> protocol?
23:06:28 <ais523> http?
23:06:53 <olsner> gopher obviously
23:06:55 <ais523> yeah, looks like http
23:07:41 -!- sebbu has quit (Ping timeout: 276 seconds).
23:07:43 <ais523> Phantom_Hoover: what do you think of my BF derivatives? they're mostly along the lines of "using a language people know to explore the implications of a new idea"
23:07:54 <ais523> rather than "let's rename BF's commands and give it a bit of sugar"
23:08:06 -!- sebbu has joined.
23:08:07 -!- greyooze has joined.
23:08:10 <Phantom_Hoover> FORGIVABLE
23:08:18 <ais523> hmm, OK
23:08:46 <elliott> ais523: half of your brain gets to remain grey matter
23:08:53 <elliott> hope you're ok with the other half being brick
23:09:14 <ais523> elliott: I disagree with this assessment
23:09:15 <shachaf> What if the brick is græy?
23:09:23 <oerjan> bricks are no joking matter
23:09:29 <ais523> shachaf: did you seriously just typo æ?
23:09:31 <elliott> ais523: sorry, Phantom_Hoover makes the rules
23:09:39 <shachaf> ais523: Just being politically correct, man!
23:09:48 <shachaf> elliott gets mad when I say "gray".
23:09:53 <ais523> oh, between US and UK English?
23:10:03 -!- GreyKnight has quit (Ping timeout: 255 seconds).
23:10:11 -!- greyooze has changed nick to GreyKnight.
23:10:19 <oerjan> græy is scots, ye ken
23:10:21 <shachaf> I know it's not *actually* correct. But what's actual correctness next to political correctness?
23:10:36 * GreyKnight hits shachaf with a grey sword
23:10:48 * ais523 wonders what scots for "grey" actually is
23:10:50 <shachaf> Anyway æ is about as easy to type as, saay, P
23:11:06 <Phantom_Hoover> ais523, gruy
23:11:36 <ais523> shachaf: altgr-a rather than shift-p?
23:11:38 <Phantom_Hoover> it's not real scots without at least one vowel change
23:11:45 <ais523> I think P is a little easier because there are two shift keys in convenient locations
23:11:54 <ais523> and only one altgr and it's in a bit less of a convenient location
23:12:03 <shachaf> altgr-z
23:12:06 <Gregor> No TRUE Scotsman pronounces vowels.
23:12:09 <Taneb> ""?
23:12:10 <ais523> (and US keyboards have no altgr at all, apparently)
23:12:16 <ais523> yeah, altgr-z is «
23:12:21 <ais523> this is how you type perl 6
23:12:24 <shachaf> ais523: My keyboard is a US keyboard.
23:12:36 <shachaf> altgr-[ is «
23:12:40 <ais523> my @numbers = «one two three four five six seven eight nine ten»
23:12:45 <ais523> shachaf: but us keyboards don't have an altgr
23:12:53 -!- sebbu has quit (Ping timeout: 276 seconds).
23:12:56 <shachaf> ais523: I didn't know you were a keyboard.
23:13:00 <ais523> err, and I forgot the semicolon
23:13:02 <ais523> ;
23:13:06 <ais523> shachaf: that's a non sequitur
23:13:10 <GreyKnight> My AltGr-[ is ¨
23:13:13 <oerjan> Gregor: i feel sorry for those half-scottish half-hawaiian people
23:13:15 <Taneb> ais523, "us keyboards"
23:13:30 <ais523> oh, it's just a bad pun then
23:13:37 <shachaf> A fun pun.
23:13:40 <olsner> i haven't found any æ on my us layout, but it's altgr-ä on the swedish layout
23:13:42 <ais523> GreyKnight: likewise
23:13:47 <ais523> it's how I type ö or whatever
23:13:49 <shachaf> Anyway, I have a US keyboard, I think.
23:13:53 <shachaf> Given that I'm in the US.
23:14:08 <shachaf> This keyboard layout is shown as a little US flag.
23:14:12 <Taneb> You're in the land my grandmother was born!
23:14:34 <Taneb> For someone of my accent, I have very few grandparents born in the UK
23:14:38 <shachaf> I think I'm in the land my grandmother was born, too.
23:14:44 <shachaf> Well, one of them.
23:14:52 <shachaf> FSVO "land"
23:14:58 <shachaf> It's a big place, as elliott will tell you.
23:15:13 <Taneb> One in California, two in the Netherlands, one in England but he was raised by nuns
23:15:29 <shachaf> You have a lot of grandmothers.
23:15:33 <GreyKnight> hopefully Perl6 supports Unicode identifiers so I can do my @😻 = «one two three four five six seven eight nine ten»;
23:15:36 <Taneb> Grandparents
23:15:42 <ais523> GreyKnight: yes, it does
23:15:49 <ais523> although they need to be letter-like for use as variable names
23:15:50 <GreyKnight> Excellent.
23:15:56 <GreyKnight> ...damn
23:15:58 <shachaf> How do you type »?
23:16:01 <shachaf> altgr-x?
23:16:02 <ais523> you can define arbitrary paren-like unicode for use as paren-like operators
23:16:04 <ais523> and yes, altgr-x
23:16:04 <Taneb> Yes
23:16:19 <shachaf> The worst thing about altgr is the name.
23:17:29 <Sgeo> Taneb, elliott monqy Fiora Phantom_Hoover there was an update, I don't know w aht time it was
23:17:49 <Taneb> The "you there gurl" one?
23:18:09 <Sgeo> yes
23:18:17 <Taneb> :)
23:18:30 <Sgeo> I kind of just woke up. At around 6pm
23:19:42 -!- greyooze has joined.
23:19:57 <greyooze> shachaf: it's for when regular Alt isn't angry enough for you
23:19:59 <greyooze> ais523: well, at least I can exploit the difference between my $𝖠 = 1; and my $A = 2; That should prove hilarious.
23:20:13 <shachaf> greyooze: You must be American.
23:20:23 <greyooze> Not even close.
23:20:25 -!- Frooxius has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204]).
23:20:33 -!- GreyKnight has quit (Ping timeout: 276 seconds).
23:20:36 -!- greyooze has changed nick to GreyKnight.
23:20:43 <Taneb> Are you Finnish or Hexham-y?
23:20:56 <GreyKnight> Nope and nope, respectively
23:21:36 <kmc> apparently italy is #1 in the world for having power plants connected to the Internet with default passwords
23:21:53 <Bike> really? the news keeps telling me that's the american midwest
23:22:44 <kmc> shrug
23:22:51 <kmc> the "SCADA Strangelove" talk says it's Italy
23:22:51 -!- sebbu has joined.
23:22:52 -!- sebbu has quit (Changing host).
23:22:52 -!- sebbu has joined.
23:22:55 <kmc> US also does quite poorly of course
23:23:01 <Bike> what number?
23:23:06 <kmc> they haven't said
23:23:13 -!- Taneb has quit (Quit: Leaving).
23:23:13 <elliott> 4
23:23:21 <kmc> but 54% of vulnerabilities were in europe
23:23:25 <Bike> bother, i need exactitudes in incompetence
23:23:26 <kmc> compared to 39% in north america
23:23:42 <fizzie> GreyKnight: I hope it's at least some kind of .*xham, in any case.
23:23:56 <Bike> hm, i wonder if there's been anything big since the french airforce grounded themselves from that one virus back in... was that last year?
23:24:02 * GreyKnight is irlantilainen
23:24:42 <kmc> ok here are the numbers: http://scadastrangelove.blogspot.com/2012/11/scada-safety-in-numbers.html
23:24:53 <fizzie> Do we have here anyone from Wrexham? That sounds like it's the more hard-core version of Hexham.
23:25:16 -!- zzo38 has quit (Remote host closed the connection).
23:25:50 <fizzie> The kind that just wrecks stuff.
23:25:56 <elliott> it is
23:26:45 <GreyKnight> "Think of a monad as a spacesuit full of nuclear waste in the ocean next to a container of apples. Now, you can't put oranges in the space suit or the nuclear waste falls in the ocean, *but* the apples are carried around anyway, and you just take what you need."
23:26:51 <GreyKnight> ^-- best metaphor
23:27:03 <shachaf> no GreyKnight
23:27:06 <shachaf> don't do it
23:27:23 * GreyKnight does it (what am I doing?)
23:27:27 <ais523> GreyKnight: I don't quite think that metaphor is internally consistent
23:27:42 <ais523> shachaf: he's more likely reading a monad tutorial (perhaps a spoof one) than writing one
23:27:53 <Bike> why would you put the waste in a spacesuit?
23:27:59 <GreyKnight> I have no idea if it's consistent or not, I don't understand what it's trying to say :-)
23:28:12 <ais523> GreyKnight: well, exactly
23:28:12 <shachaf> @quote suite
23:28:13 <lambdabot> Veinor says: a lot of the stuff I'm thinking of for programs to write is IOy and not really suited to Haskell.
23:28:16 <Bike> that monads are like burritos
23:28:16 <shachaf> Hmm.
23:28:18 <shachaf> @quote suite
23:28:18 <lambdabot> Veinor says: a lot of the stuff I'm thinking of for programs to write is IOy and not really suited to Haskell.
23:28:24 <ais523> I meant that the metaphor made no sense even independent of what it was trying to describe
23:28:33 <olsner> @quote space suit
23:28:34 <lambdabot> No quotes for this person. There are some things that I just don't know.
23:28:36 <olsner> @quote space.suit
23:28:37 <lambdabot> dons says: Think of a monad as a spacesuite full of nuclear waste in the ocean next to a container of apples. now, you can't put oranges in the space suite or the nucelar waste falls in the ocean, *
23:28:37 <lambdabot> but* the apples are carried around anyway, and you just take what you need.
23:28:37 <GreyKnight> apparently someone has a metaphor of monads as being like the Hotel California (I have no link sorry)
23:28:45 <kmc> hex yourself before you wrex yourself
23:28:51 <kmc> yeah those are shitty analogies though
23:28:55 <kmc> /most/ monads are not "one-way"
23:29:07 <Bike> but hotel california is itself a metaphor for drug addiction!!!
23:29:07 <kmc> this is a special property of the IO monad (and a few others) and focusing on it causes no end of confusion
23:29:20 <ais523> kmc: the identity monad is sometimes used for that property
23:29:39 <GreyKnight> Bike: in other words, monads are like drugs. Don't do monads kids
23:29:42 <shachaf> Identity is one of the worst examples.
23:29:49 <kmc> i dunno, this doc puts USA ahead of Italy
23:29:53 <kmc> but they clearly said Italy in the talk
23:30:01 <kmc> whatever, the takeaway message is that we are all fucked
23:30:03 <GreyKnight> we need the monadiest monad that ever monaded
23:30:12 <Bike> i was going to say, the clear message is that fuck everything
23:30:17 <ais523> shachaf: identitiy is still a useful monad
23:30:23 <ais523> it's basically what Perl taint is
23:30:31 <kmc> i can only hope that the 55 year old nuclear reactor 2 blocks away from my house is too old to have SCADA
23:30:34 <Bike> soon the azerbaijani terrorists will destroy our railways with their cybernet
23:30:36 <shachaf> ais523: ?
23:31:00 <ais523> shachaf: think about what the identity monad lets you do
23:31:02 <ais523> it's not a lot, really
23:31:07 <ais523> you can lift things to it, and that's about it
23:31:18 <ais523> perl taint is similar, you can lift things to it, but not do much else
23:31:22 <ais523> (except that it's dynamic rather than static)
23:31:31 <shachaf> ais523: You can also "unlift" things from it.
23:31:47 <shachaf> > runIdentity (Identity 5)
23:31:49 <lambdabot> 5
23:31:52 <ais523> shachaf: only if you have a runIdentity or the like
23:32:01 <monqy> run perl taint???
23:32:18 <Bike> :t runTaint
23:32:20 <lambdabot> Not in scope: `runTaint'
23:32:23 <ais523> (you can write an untaint in Perl, but because taint exists mostly for security purposes, it's typically a bad idea to do so)
23:32:24 <GreyKnight> unsafeTaint
23:32:39 <shachaf> ais523: Well, you do have that, though.
23:32:40 <GreyKnight> (mo' like unsafeUntaint I guess)
23:32:46 <ais523> actually, there are two ways to untaint in Perl, and they're both nonobvious
23:32:56 <shachaf> Maybe you mean writing code which is polymorphic to work with any monad.
23:32:57 <ais523> my ($untainted) = keys {$tainted => 1};
23:33:01 <oerjan> `addquote <kmc> i can only hope that the 55 year old nuclear reactor 2 blocks away from my house is too old to have SCADA
23:33:05 <HackEgo> 898) <kmc> i can only hope that the 55 year old nuclear reactor 2 blocks away from my house is too old to have SCADA
23:33:16 <ais523> and $tainted =~ /^(.*)$/; $untainted = $1;
23:33:31 <ais523> shachaf: no, I don't mean that at all
23:34:12 <shachaf> ais523: Do you just mean "keeping track of things for your own convenience"?
23:34:37 <shachaf> So you can keep track of a value being "bad", or something.
23:34:48 <shachaf> Note: I don't know what Perl's taint is. I should probably have figured that out first. :-)
23:35:24 <oerjan> that's pretty much what perl's taint does
23:35:31 <GreyKnight> "I don't understand this but here are my thoughts on it" :-)
23:35:34 <ais523> shachaf: perl's taint is intended to avoid accidental injection bugs in programs (SQL injection is easy to avoid in Perl, but things like shell injection might not be)
23:35:57 <GreyKnight> next stop, shachaf writes a taint tutorial comparing taint to an apple full of nuclear waste
23:35:59 <shachaf> OK. That sounds like the situation I would make up a new type for a tainted thing.
23:36:01 <ais523> basically, any value that comes in from outside the program (user input, environment variables, etc) is of a tainted data type
23:36:13 <ais523> you can convert untainted types to tainted types trivially
23:36:32 <ais523> and all operations have tainted versions as well as untainted versions (which are spelled the same)
23:36:43 <ais523> and Perl will bitch if you try to use tainted data for, e.g., system() or eval()
23:36:45 <shachaf> Identity doesn't mean "tainted", and it does mean some other things sometimes, so that sounds like a bad use of the type to me.
23:36:57 <ais523> you can use Identity to implement taint, if you feel like it
23:37:07 <ais523> and if you really need to untaint data, you can
23:37:20 <shachaf> I'd rather use a type that meant "tainted".
23:37:26 <shachaf> Even if it had the same implementation as Identity.
23:37:28 <ais523> the intended method to untaint stuff is by matching it against a regexp that ensures it contains no evil characters
23:37:46 <ais523> shachaf: well, yes; you wouldn't use Identitiy itself, but it'd still be an identitiy monad
23:37:49 <ais523> just one with a different name
23:37:58 <ais523> having the same implementation as Identity makes you an identity monad by definition
23:38:16 <shachaf> OK.
23:38:30 <shachaf> In this case the "you can't get things out of it" property still doesn't really hold.
23:38:50 <shachaf> I think runIdentity is an important part of Identity's interface. :-)
23:39:04 <shachaf> Anyway this sounds like a fruitless discussion at this point.
23:39:42 <ais523> haha: Linux market share on Steam is more than 10% of Windows 8 market share on Steam
23:41:10 <ais523> somehow I find this hilarious
23:42:49 <GreyKnight> Because the Linux share is small, or the Windows 8 share is big?
23:44:07 <ais523> GreyKnight: because the Linux share is way bigger than it should be relative to the Windows 8 share
23:44:18 <ais523> considering how much more popular Windows is than Linux for gaming
23:44:24 <ais523> and how there are basically no Linux games on Steam yet
23:44:30 <ais523> and how Steam for Linux is still beta
23:44:45 <ais523> I think it speaks more to Windows 8 being unpopular than anything else
23:46:25 <oerjan> shachaf: {-# LANGUAGE GeneralizedNewtypeDeriving -#} module Data.Tainted (Tainted) where newtype Tainted a = T a deriving (Monad) -- hth
23:46:35 <elliott> that type is useless
23:46:54 -!- GreyKnight has quit (Ping timeout: 240 seconds).
23:46:56 <elliott> as is your comment terminator :P
23:46:59 <shachaf> How do you GeneralizedNewtypeDerive Monad?
23:47:01 <elliott> *pragma terminator
23:47:12 <oerjan> elliott: hey he wanted a Tainted type you couldn't get things out of :P
23:47:16 <shachaf> That's pretty generalized.
23:47:22 <oerjan> oh hm
23:47:26 <oerjan> elliott: good point
23:47:51 <oerjan> shachaf: {-# LANGUAGE GeneralizedNewtypeDeriving -#} module Data.Tainted (Tainted) where import Control.Monad.Identity; newtype Tainted a = T (Identity a) deriving (Monad) -- hth
23:48:11 <oerjan> elliott: aww :(
23:48:21 <oerjan> oh that one
23:48:35 <oerjan> s/ -#/ #-/
23:48:38 -!- GreyKnight has joined.
23:48:44 * oerjan thought elliott meant the --}
23:49:06 <Jafet> deriving instance Monad Tainted
23:49:18 <shachaf> Also you should use Tagged
23:49:21 <Jafet> Or derive
23:49:28 <Jafet> ghc is confused about gerunds
23:49:29 <oerjan> shachaf: NOW WHAT
23:49:39 <Bike> gerunds are hard, though.
23:49:41 <elliott> oerjan: it's still useless
23:49:44 <shachaf> hellørjan
23:49:47 <elliott> since it's just data Tainted a = BlackBox
23:49:53 <oerjan> Jafet: what? deriving is the right syntax surely...
23:49:56 <elliott> except with strictness
23:50:25 <oerjan> elliott: <oerjan> elliott: hey he wanted a Tainted type you couldn't get things out of :P
23:50:35 <GreyKnight> "perfect"
23:53:20 <oerjan> :t throw
23:53:22 <lambdabot> Not in scope: `throw'
23:53:31 <Sgeo> http://bugs.racket-lang.org/query/?cmd=view&pr=13414
23:53:32 <oerjan> :t raise
23:53:34 <lambdabot> Not in scope: `raise'
23:53:36 <oerjan> wat
23:53:41 * Sgeo got a documentation mistake fixed!
23:53:50 <oerjan> @hoogle Exception e => e -> a
23:53:51 <lambdabot> Control.Exception.Base throw :: Exception e => e -> a
23:53:51 <lambdabot> Control.Exception throw :: Exception e => e -> a
23:53:51 <lambdabot> Control.OldException throw :: Exception e => e -> a
23:53:54 <GreyKnight> \o/
23:54:00 <monqy> Sgeo: good job
23:54:12 <shachaf> monqy: do you like chocolate ice cream
23:54:21 <monqy> idk. i prefer vanilla.
23:54:33 <monqy> chocolate ice cream isnt my thingwhy do you ask
23:54:38 <olsner> chocolate ice cream is surprisingly ungood
23:54:40 <oerjan> elliott: i realized it needs to be data not newtype, to close the evil fmap throw x `seq` loophole
23:54:55 <monqy> vanilla ice cream is: good: though
23:55:13 <GreyKnight> Sgeo: not updated on http://docs.racket-lang.org/htdp-langs/beginner.html#%28def._htdp-beginner._%28%28lib._lang/htdp-beginner..rkt%29._pi%29%29 yet though :-(
23:56:55 <elliott> oerjan: what kind of sandbox lets you use IO exactly
23:57:38 <oerjan> O KAY
23:58:51 <Jafet> elliott: http://codepad.org
23:59:20 <Sgeo> http://www.reddit.com/r/programming/comments/160yie/json_isnt_a_javascript_subset/
23:59:38 <olsner> hmm, in a real sandbox it's really quite easy to move objects in and out of the sandbox
23:59:42 <kmc> it's also wrong to talk about M Int as "a box you can't get the Int out of" because in most cases there is no Int inside to begin with!
2013-01-06
00:00:07 <oerjan> olsner: nah you just need walls tall enough that the kids cannot get over hth
00:00:09 -!- GreyKnight has quit (Ping timeout: 265 seconds).
00:00:34 <shachaf> Or there are multiple Ints.
00:00:38 <kmc> taint tracking is just a really poor analogy for monads (of course it's one /application/ of monads, as ais523 pointed out)
00:00:45 <Jafet> newtype Sandbox = Box Sand
00:01:01 <kmc> i wish this analogy would die but my efforts to kill it have been unsuccessful and I gave up on trying
00:01:12 -!- GreyKnight has joined.
00:01:16 <kmc> it is the kind of fundamentally misleading analogy that is also immediately appealin
00:01:19 <kmc> g
00:01:22 <ais523> yeah, an M Int might have 0, 1, or more Ints inside
00:01:26 <kmc> fguhguhuhghluhruhfff
00:01:30 <elliott> what does "inside" mean
00:01:34 <Jafet> @quote analog(y|ies)
00:01:35 <lambdabot> lilac says: * lilac looks forward to Cale explaining category theory by analogy to Call of Duty
00:01:38 <elliott> does (Foo -> Int) have Ints inside it
00:01:38 <ais523> (In fact, [Int] is pretty much a literal definition of "might have 0, 1, or more Ints inside")
00:01:39 <kmc> it might have an infinite number of Ints!
00:01:45 <elliott> technically it has as many ints as Foo has elements
00:01:49 <ais523> elliott: yes, I guess
00:01:50 <elliott> but this is not a very useful way of reasoning about things
00:02:03 <Jafet> elliott: const 0
00:02:07 <kmc> sometimes it is
00:02:07 <elliott> (IO Int) has as many Ints inside as there are sequences of interaction with the real world(!)
00:02:13 <elliott> which is an awfully gigantic number
00:02:16 <ais523> when I translated a computable-reals library from Haskell to Verity
00:02:20 <elliott> and also, with something like (Foo -> Int), "|Foo| ints" is misleading
00:02:24 <ais523> we represented lists as functions
00:02:25 <elliott> since they can all be "the same Int" etc.
00:02:32 <elliott> (this can be relevant, in fact, for performance: sharing)
00:02:51 <kmc> yes although that's an implementation property and not a language property
00:02:54 <ais523> `quote this week
00:02:56 <kmc> Haskell spec doesn't guarantee sharing :(
00:02:58 <HackEgo> 366) <ais523_> meanwhile, I've been running a program for over 24 hours (getting close to 48 now) which is calculating digits of pi, in binary <ais523_> so far, it has found four digits <ais523_> I hope it will find the fifth some time this week
00:03:04 <ais523> that was the program that lead to quote 366
00:03:11 <ais523> the technique works, but it's not exactly efficient
00:03:15 <Jafet> The haskell spec at http://haskell.org/ghc does
00:03:32 <elliott> kmc: feature IMO
00:03:55 <ais523> which monad is (Foo -> Int), btw? Reader?
00:04:11 <ais523> not having Haskell names memorized can be a problem when talking to Haskell programmers
00:04:34 <elliott> sure, Reader, but it could easily be part of the definition of another monad
00:04:43 <elliott> wasn't thinking of it as the "entire thing" when I said it
00:04:45 <ais523> indeed
00:04:58 <Jafet> Foo -> Int can't be a monad
00:05:04 <Jafet> (->) Foo is Reader
00:05:06 * elliott thinks ML programmers should know this stuff too
00:05:12 <ais523> Jafet: well, yes
00:05:12 <Jafet> Or (->) Foo
00:05:31 <ais523> Foo -> Int can be a monad with its type argument filled in, though
00:05:33 <Jafet> Yes, two identical monads
00:05:39 <ais523> elliott: sure, but ML programmers don't use the same name
00:05:56 <elliott> what do you call reader?
00:06:00 <ais523> also monads are less everywhere in ML than in Haskell because everything's effectively in IO
00:06:12 <ais523> elliott: I don't know, not sure I've given it a name before now
00:06:29 <ais523> writing the extra params by hand is what I normally do, even though I probably shouldn't :(
00:07:11 <elliott> well, (->) is often the most convenient way to use reader in Haskell
00:07:23 <Sgeo> I flat out do not understand Racket's continuation model
00:07:24 <Sgeo> :(
00:07:31 <elliott> I think monads can help tons in ML as well as Haskell
00:07:34 <elliott> I think the Jane Street people agree
00:07:38 <kmc> anyway we all agree that #haskell is usually wrong and none of us know how to fix it :(
00:07:46 <kmc> elliott: F# has monads, of course they had to change the name
00:08:02 <FreeFull> What do they call them in F#?
00:08:04 <kmc> just like every other practical application of FP
00:08:14 <elliott> in 2013 I'd like to see people stop "implementing monads"
00:08:18 <Sgeo> kmc, not sure, but I vaguely recall that the syntax used for those is also usable for some non-monad thing?
00:08:18 <Jafet> kmc: I help all the time
00:08:19 <kmc> "computation expressions" and "workflows"
00:08:31 <elliott> because they inevitably completely neglect Applicative etc.
00:08:37 <elliott> and make something half-way and useless
00:08:40 <kmc> you've really got to synergize your workflows to leverage new paradigms
00:08:47 <Sgeo> elliott. yes.
00:09:28 <Jafet> 2013: Arrow in javascript
00:09:47 <FreeFull> 2014: Monads... in C
00:09:58 <kmc> i already implemented call/cc in C++
00:09:59 <shachaf> JavaScript already has monads. It's just the Builder Pattern.
00:10:00 <kmc> as have other people
00:10:02 <GreyKnight> can't we just cut to the chase and implement monads in hardware
00:10:02 <ais523> I guess the main problem with monads and applicatives and the like is the "now you have two problems" issue
00:10:06 <FreeFull> 2015: Monads in x86 ASM
00:10:06 <shachaf> Didn't you hear that talk?
00:10:15 <ais523> they're generic patterns that apply in lots of cases
00:10:18 <kmc> shachaf: is this troll
00:10:33 <kmc> ais523: one might say that they are... design patterns
00:10:34 <GreyKnight> FreeFull gets me
00:10:34 <ais523> and so people feel pressured to implement things where a pattern applies using the pattern, for genericness
00:10:44 <ais523> and now you have to understand the pattern as well as the way it's used
00:10:53 <kmc> of course the difference is that in Haskell a design pattern goes in the standard library and in Java a design pattern goes in a thick dead-tree book to be typed in by hand
00:10:57 <shachaf> kmc: I think Crockford did say at the end of the talk that it was an example of moands or something.
00:11:00 <kmc> or into your IDE if you're lucky
00:11:09 <shachaf> kmc: That's not really fair.
00:11:13 <kmc> no it's not
00:11:16 <elliott> the real question is why anyone listens to crockford in the first place
00:11:20 <shachaf> There's a lot of Haskell lore for how to make things.
00:11:27 <kmc> indeedh
00:11:29 <kmc> indeed
00:11:31 <shachaf> And a lot of repeated patterns in all sorts of places.
00:11:39 -!- Bike has quit (Quit: leaving).
00:11:48 <kmc> yeah but i think the community is better at recognizing these as problems, and trying to solve them
00:11:58 <ais523> also, I'm not sure I like the way Haskell mixes error handling into monads
00:11:59 <kmc> resulting in 10 conduit libraries, 10 lens libraries, etc
00:12:09 <elliott> There's 10 lens libraries but there's only 1 lens libraries.
00:12:14 <ais523> like, the mathematical definition of monads doesn't require them to understand error handling
00:12:16 <shachaf> There may be 10 libraries that provide lenses, but there's only one lens library.
00:12:18 <elliott> The others are kind of pathetic.
00:12:19 <ais523> and for some, like Reader, it doesn't make sense
00:12:20 <kmc> of course that itself is a problem
00:12:22 <monqy> you mean fail? does anyone like fail?
00:12:25 <ais523> yeah
00:12:30 <kmc> dunno everything is fucked
00:12:30 <ais523> how is fail defined in Reader anyway?
00:12:31 <shachaf> ais523: Nobody likes fail. "deal with it"
00:12:35 <elliott> in that if you integrate lens into your "workflow" it does about 50x more than any other lens package does
00:12:37 <GreyKnight> 10 == 1
00:12:39 <kmc> gotta learn about how to blow up nuclear power plants using MS SQL
00:12:41 <Sgeo> monqy, the people who keep trying to translate from Haskell straight into X seem to like it
00:12:43 <shachaf> ais523: Probably fail = errpr?
00:12:43 <elliott> because it isn't even primarily about lenses
00:12:44 * Sgeo facepalms
00:12:54 <elliott> ais523: barely anyone even uses fail
00:12:58 <ais523> @src Reader fail
00:12:58 <lambdabot> Source not found. I've seen penguins that can type better than that.
00:13:01 <shachaf> 50x longer type errors than any other lens library
00:13:03 <shachaf> guaranteed
00:13:04 <elliott> it's there as a compromise nobody is happy about for historical reasons
00:13:08 <ais523> I guess
00:13:08 <elliott> but you can just ignore it exists in practice
00:13:14 <kmc> enlarge your type error 400%
00:13:16 <ais523> it'd make more sense to have a FailableMonad m
00:13:24 <elliott> we already have that
00:13:28 <ais523> for things like Either and IO which really can fail sensibly
00:13:33 <ais523> elliott: yeah, it's called Monad
00:13:35 <elliott> no
00:13:36 <elliott> everyone knows the obvious answers
00:13:36 <shachaf> elliott: We used to, in Haskell 1.4.
00:13:39 <elliott> yes
00:13:40 <kmc> are lambdabot's insults from http://www.opensource.apple.com/source/sudo/sudo-17/sudo/ins_csops.h
00:13:43 <shachaf> MonadZero is gone, though. :-(
00:13:49 <elliott> it's one of haskell 98's several regressions
00:13:55 <elliott> but the solutions are all basically obvious
00:13:59 <kmc> the haskell committee: I liked their earlier work better
00:13:59 <ais523> shachaf: is that like half a MonadPlus?
00:14:02 <shachaf> kmc: Seems that way.
00:14:06 <shachaf> ais523: Yep.
00:14:13 <ais523> (also MonadPlus is basically just a Monad that's also a Monoid, right?)
00:14:17 <shachaf> ais523: Early Haskell used it in a lot of places where it now uses "fail".
00:14:24 <shachaf> ais523: It's not really the same.
00:14:31 <elliott> MonadPlus is Monad plus two operations and also nobody agrees on what laws they have
00:14:36 <shachaf> It's a different kind, for one. And the instance is able to do different things.
00:14:39 <ais523> elliott: :)
00:14:40 <shachaf> Also all monads are monoids.
00:14:42 <FreeFull> @src Reader
00:14:42 <lambdabot> Source not found. Listen, broccoli brains, I don't have time to listen to this trash.
00:14:48 <FreeFull> @src Reader (>>=)
00:14:49 <lambdabot> Source not found. Do you think like you type?
00:14:54 <ais523> @src Control.Monad.Reader fail
00:14:54 <lambdabot> Source not found. :(
00:15:02 <elliott> stop expecting @src to be reasonable
00:15:07 <shachaf> You know the thing where people expect @src to work?
00:15:09 <ais523> (I totally just guessed the package name there)
00:15:13 <shachaf> That thing keeps happening.
00:15:23 <FreeFull> @src lambdabot
00:15:23 <lambdabot> Source not found. :(
00:15:28 <shachaf> @src is a text file that people made by hand.
00:15:36 <FreeFull> @src
00:15:37 <lambdabot> src <id>. Display the implementation of a standard function
00:15:40 <FreeFull> @src 0
00:15:40 <lambdabot> Source not found. Where did you learn to type?
00:16:23 <Jafet> kmc: genericLength xs = tailRecursive xs id 0 where
00:16:45 <Jafet> kmc: s/.*/http://web.mit.edu/nelhage/Public/sudo /
00:16:57 <kmc> oh that's longer
00:17:45 <ais523> why would sudo have an insult library?
00:17:55 <elliott> to insult people
00:18:01 <ais523> yeah but why does it need to do that?
00:18:06 <elliott> to insult people
00:18:21 <ais523> elliott: insulting people can't be the reason for itself
00:18:28 <monqy> since when
00:18:36 <Jafet> I should enable insults for this machine
00:18:39 <ais523> and I've never seen sudo insult anyone
00:18:55 <ais523> unless you count the "this incident will be reported" thing
00:19:12 * ais523 is a little worried about sudo's security attitude
00:19:16 <olsner> maybe it's configurable
00:19:38 <ais523> hmm, especially because it's possible to write a wrapper for sudo that allows you to test if things are possible without the incident being reported
00:19:48 <ais523> there's a command-line option to query whether something is sudoable
00:21:09 <kmc> can it be disabled in config?
00:22:37 -!- greyooze has joined.
00:22:46 <greyooze> ais523: you can set the insults flag on in your sudoers file
00:23:24 <greyooze> it is off by default (but why would anyone want *that*?)
00:23:36 <ais523> when does it insult people?
00:23:54 -!- GreyKnight has quit (Ping timeout: 240 seconds).
00:23:57 <greyooze> only if they give the wrong password AFAIK
00:24:00 -!- greyooze has changed nick to GreyKnight.
00:24:22 <Jafet> echo 'nethack on' >> /etc/screenrc
00:24:34 -!- carado has quit (Ping timeout: 246 seconds).
00:25:26 <fizzie> Jafet: Why would you ever need that, when it's automatically turned on by default because of your ~/.nethackrc?
00:25:42 <fizzie> (Or by the existence of $NETHACKOPTIONS.)
00:26:19 <Jafet> Other users do.
00:26:43 <fizzie> That was the global "you".
00:26:54 <ais523> GreyKnight: hmm; deliberately failing the password check is the way you cancel a command if you realised you screwed it up
00:27:03 <ais523> and part of the reason sudo password prompts is to give you a reason to consider
00:27:08 <ais523> I've been known to control-c the password check before now
00:27:38 <ais523> (another reason for the password prompt is so that you don't try to sudo something on the wrong physical machine; I have different sudo passwords on my own laptop and on nethack4.org, and I've definitely tried to run something as root on the wrong machine before now)
00:28:52 <fizzie> Also I checked the only copy of the firmware of my VDSL2 box that can be found in the interwebs, the one for a different ISP (Sonera), and the cmsCli_authenticate there actually forwards to cmsDal_authenticate (which I think is the web admin interface authentication), instead of hardcoding root:public and ztedebug:ztedebug; I suppose my ISP has just wanted to make the telnet interface not ...
00:28:58 <fizzie> ... available for us customers. (They also don't provide any firmware downloads anywhere; they just remote-push it over TR-069 when they feel like it.)
00:29:49 <Jafet> ais523: your zsh prompt is supposed to tell you which machine you're on
00:29:55 <ais523> Jafet: oh, my bash prompt does too
00:30:02 <ais523> just sometimes I don't notice it
00:30:13 <ais523> you tend to mentally filter it after a while
00:32:17 -!- GreyKnight has quit (Ping timeout: 255 seconds).
00:32:28 <Jafet> %F{red}%B%m%b%f
00:33:35 -!- GreyKnight has joined.
00:35:19 <GreyKnight> Hmm apparently I already added "Defaults insults" to my sudoers, but I am not getting insulted ._.
00:35:31 <GreyKnight> oh, maybe I compiled it with them off...
00:35:37 <Sgeo> Hmm, a problem with my model is that Qoppa wouldn't be able to generate require and provide forms for itself
00:35:40 <Sgeo> I think
00:43:33 -!- sebbu2 has joined.
00:43:34 -!- sebbu2 has quit (Changing host).
00:43:34 -!- sebbu2 has joined.
00:45:19 <fizzie> Ubuntu 'sudo' package contains a patch called "typo-in-classic-insults.diff".
00:45:59 <fizzie> (It corrects "You type like i drive." into "You type like I drive.".)
00:46:09 -!- sebbu has quit (Ping timeout: 260 seconds).
00:46:37 <shachaf> that's not a typo............
00:47:46 <fizzie> Also funny: http://sprunge.us/ehCY
00:47:48 -!- nooga has quit (Ping timeout: 248 seconds).
00:47:53 <fizzie> Or is that "funy".
00:48:53 <fizzie> (I can't also help noticing that the insults aren't localized.)
00:49:05 <kmc> this SCADA talk is honestly kind of boring
00:49:25 <kmc> because the takeaway message is that SCADA systems are vulnerable to well-known attack classes from the early '00's
00:49:50 <kmc> buffer overflow, XSS, insecure ActiveX plugins, default passwords, bad password hashing
00:50:00 <c00kiemon5ter> translating phrases will not end well
00:50:03 <kmc> they just seem to be 20 years behind on basic security practices
00:50:12 <fizzie> Why is "broccoli brains" more PC than "burrito brains"?
00:50:31 <elliott> burritos are macintosh only
00:50:47 <oerjan> fizzie: if they localized the insults they would have to create a new setting for northern norwegian, and where would we be then...
00:51:13 <ais523> oerjan: no_NO_No?
00:51:21 <oerjan> something like that
00:51:25 <elliott> norwegian sure does make me say no
00:51:25 <fizzie> oerjan: Better off?
00:51:26 <elliott> becuse it sucks
00:51:28 <elliott> like oerjan
00:51:30 <olsner> excellent locale name
00:51:56 <elliott> oerjan: i didnt mean it sorry
00:52:02 <oerjan> elliott: O KAY
00:52:08 <Phantom_Hoover> we all love you oerjan
00:52:10 <elliott> oerjan: lets friends
00:54:01 <oerjan> hooray
00:54:59 <coppro> nope
00:55:21 <oerjan> coppro: U MEAN
00:56:51 -!- GreyKnight has quit (Ping timeout: 240 seconds).
00:59:46 <ais523> oh come /on/
00:59:50 -!- GreyKnight has joined.
00:59:53 <ais523> how am I meant to set a good example for my students
00:59:58 <ais523> when the Java API is so full of bad examples
01:00:19 <GreyKnight> use a GoodExampleFactory
01:00:28 <ais523> for instance, something I just discovered: java.io.File.listFiles() returns null on I/O error
01:00:31 <ais523> rather than throwing an exception
01:00:33 <ais523> why?
01:00:40 <ais523> this is completely bad practice for Java
01:00:50 <coppro> ais523: just point it out as a bad example
01:00:52 <GreyKnight> oh wait, you're supposed to *be* a GoodExampleFactory. In that case I guess you'll need a GoodExampleFactoryFactory.
01:01:11 <ais523> coppro: yeah, except that the students are meant to be able to find it in the API themselves
01:01:15 <ais523> and use it
01:01:20 <ais523> and it being a bad example makes the exercise worse
01:01:44 <olsner> do something different that doesn't make listFiles useful?
01:01:50 <ais523> you can't test that they understand exception handling
01:01:56 <ais523> if the method doesn't actually throw exceptions
01:02:03 <ais523> olsner: yeah, I'm going to have to, I think
01:02:07 <GreyKnight> ais523: it *can* throw a SecurityException (which just raises more questions)
01:02:11 <ais523> and that would have been such a good exercise, too :(
01:02:15 <ais523> GreyKnight: it's unchecked
01:02:15 <olsner> I've never used listFiles in Java, so obviously it's not useful
01:02:27 <ais523> I was basically going to ask "write ls -R in Java"
01:03:00 <ais523> haha, java.io.File.listRoots() is even better
01:03:02 <ais523> " Unlike most methods in this class, this method does not throw security exceptions. If a security manager exists and its SecurityManager.checkRead(java.lang.String) method denies read access to a particular root directory, then that directory will not appear in the result."
01:03:41 <GreyKnight> /golfclap
01:04:06 <fizzie> ais523: Some kind of a policy to not throw IO exceptions from File? Most of the other methods don't, either. (Though createNewFile does.)
01:04:13 <ais523> this is one of the worst designed Java APIs I've ever seen
01:05:04 <ais523> OK, new exercise: rewrite File so that it doesn't suck
01:05:07 <ais523> (I'm not even sure I'm joking here)
01:05:08 <coppro> haha
01:05:16 <fizzie> It's also kinda old.
01:05:17 <coppro> no, I think that's a great exercise actually
01:05:28 <coppro> especially since it's not clear that a security exception is right for listRoots
01:05:30 <ais523> it'd need to be trimmed down, there's a lot of stuff in File
01:05:33 <GreyKnight> createNewFile has a "success/failure" boolean return *and* an IOException for a specific kind of failure
01:06:22 <GreyKnight> oh getCanonicalPath() can throw an IOException too
01:06:38 <fizzie> I debated about whether to mention that.
01:06:45 <fizzie> But things like mkdir can't.
01:06:59 <fizzie> It's just a true/false/SecurityException.
01:07:22 <ais523> hmm
01:07:27 <coppro> like, if you're operating on a large number of directories, and one givens an exception, what's the right call?
01:07:39 <ais523> I think Perl understands what it's doing a little better here, with the distinction between Dir::Cwd and IO::File
01:07:40 <coppro> do you lose the rest of the information for the security exception?
01:07:58 <ais523> coppro: well a File only represents one directory
01:08:05 <ais523> so if you want to operate on a large number, you use a loop
01:08:10 <ais523> and then you get a separate return/exception for each
01:08:19 -!- sebbu2 has quit (Ping timeout: 248 seconds).
01:08:42 <GreyKnight> ais523: I think I am on board with your "rewrite File" idea :-)
01:08:55 <coppro> ais523: sure
01:08:59 <coppro> ais523: but listRoots is static
01:09:04 <coppro> and it is asking for all roots that exist
01:09:38 <coppro> the problem is that there are really three states: exists and accessible, exists and inaccessible, and inaccessible
01:09:59 <coppro> If you're not supposed to get a File object to an inaccessible directory, then what do you do?
01:10:03 <ais523> coppro: hmm, I'm not even sure if there's enough information in File to correct it
01:10:08 <coppro> (if you can, then it's just *exceptionally* poor design)
01:10:25 <ais523> what happens if you call .exists() on a File object that represents a file inside an unreadable directory, for instance?
01:10:34 <ais523> the documentation doesn't say
01:10:57 <coppro> probably an exception
01:10:57 <ais523> "IO exception" is the only sane answer; "returns false" seems to be the only possible answer given the stated API
01:11:03 <ais523> I can find out, I think
01:11:05 <coppro> yeah
01:11:08 <olsner> I think having a File object for an inaccessible file is fine, you can create them from paths after all
01:11:20 <ais523> olsner: definitely
01:11:20 <fizzie> You can get a File object for any String.
01:13:05 <fizzie> (The File(String) constructor can only throw a NullPointerException.)
01:13:21 <ais523> $ xargs < T.java
01:13:23 <elliott> maybe it throws NPE for inaccessible stuff
01:13:23 <ais523> public class T { public static void main(String[] args) { boolean b = new java.io.File(/root/t.txt).exists(); if (b) System.out.println(true); else System.out.println(false); } }
01:13:24 <ais523> $ java T
01:13:26 <ais523> false
01:13:28 <elliott> ais523: xargs < ????????
01:13:38 <ais523> elliott: it replaces newlines wiht spaces
01:13:41 <ais523> *with
01:13:46 <ais523> and so is quite useful for sending the program to IRC
01:13:49 <elliott> also, new java.io.File(/root/t.txt)
01:13:51 <elliott> is that really valid syntax?
01:14:03 <ais523> huh, it seems to have eaten all the double quotes
01:14:04 <ais523> in the file
01:14:08 <elliott> useful indeed.
01:14:09 <ais523> as well as replacing newlines with spaces
01:14:18 <elliott> presumably it got shell dequoted
01:14:19 <ais523> why would it do that?
01:14:36 <coppro> ais523: lol
01:14:42 <fizzie> The default command *is* echo.
01:14:46 <ais523> xargs reads items from the standard input, delimited by blanks (which can be protected with double or single quotes or a backslash) or newlines
01:14:49 <fizzie> Why wouldn't it eat quotes?
01:14:50 <ais523> seems that it's xargs that dequoted it
01:14:59 <ais523> and that xargs is specifically designed to eat quotes
01:15:05 <ais523> echo wouldn't dequote it because a shell isn't involved
01:15:56 -!- sebbu has joined.
01:16:02 <ais523> I still get false even if I try a file that actually exists
01:16:03 <ais523> as expected
01:16:13 <ais523> (that's in an unreadable directory)
01:16:53 <GreyKnight> xargs does treat quotes and backslashes specially unless you provide the -0 option
01:17:21 <ais523> GreyKnight: then it doesn't treat newlines specially
01:17:25 <GreyKnight> er -0 isn't useful here
01:17:34 <GreyKnight> ignore me it's late
01:18:36 <fizzie> xargs -d'\n' doesn't dequote.
01:18:58 <GreyKnight> bah, I was just coming to say that :<
01:19:06 <elliott> you could just do tr -d'\n'...
01:19:17 <elliott> er tr -d '\n'
01:19:19 <ais523> I didn't think tr unescaped
01:19:22 <elliott> or tr '\n' ' ' maybe
01:19:29 <ais523> wouldn't that just delete backslashes and ns?
01:19:41 <elliott> TIAS
01:19:58 <ais523> huh, it does indeed work
01:19:59 <GreyKnight> works
01:20:03 <GreyKnight> \o/
01:20:15 <ais523> $ tr '\n' ' ' < T.java
01:20:17 <ais523> public class T { public static void main(String[] args) { boolean b = new java.io.File("/root/typescript").exists(); if (b) System.out.println("true"); else System.out.println("false"); } }
01:20:23 <ais523> deletes the final newline as well, so it's not quite as handy as xargs
01:20:34 <ais523> (now I'm wondering /why/ /root/typescript exists)
01:20:54 <fizzie> It possibly won't coalesce multiple blanks either.
01:21:00 <elliott> ais523: "vi" it and find out
01:21:22 <ais523> or just l
01:21:34 <ais523> although, hmm
01:21:58 <ais523> huh
01:22:01 <ais523> it contains a uname
01:22:08 <ais523> and a wc -l of /etc/shadow
01:22:14 <ais523> and an exit
01:22:27 <ais523> I think I know why, it was to prove a point on reddit
01:22:29 <GreyKnight> CSI: Linux
01:23:48 <fizzie> There doesn't seem to be an obvious way to tell xargs "I want the arguments to be items separated by any whitepace like you do normally, except with no special handling of quotes/backslashes", since -d can only take a single delimiter, and in any case wouldn't coalesce multiple consecutive ones.
01:26:49 -!- greyooze has joined.
01:27:18 -!- GreyKnight has quit (Ping timeout: 276 seconds).
01:30:49 -!- greyooze has changed nick to GreyKnight.
01:31:11 -!- jiella1 has joined.
01:33:19 <kmc> GreyKnight: i would watch that
01:33:47 <kmc> hopefully it would keep the same technical accuracy and nuanced character development of the original
01:34:09 <kmc> what is the linux equivalent of the magical purple light which makes things glow if they have been involved in a crime
01:34:14 -!- jiella has quit (Ping timeout: 240 seconds).
01:34:31 <GreyKnight> not to mention the magical computers
01:34:39 <elliott> kmc: nmap??
01:34:48 <elliott> cowsay
01:35:20 <ais523> `addquote <kmc> what is the linux equivalent of the magical purple light which makes things glow if they have been involved in a crime <elliott> kmc: nmap??
01:35:24 <HackEgo> 899) <kmc> what is the linux equivalent of the magical purple light which makes things glow if they have been involved in a crime <elliott> kmc: nmap??
01:35:51 <shachaf> elliott: When are you going to rewrite the quote thing?
01:36:04 <shachaf> I still have the code I started to write before you told me to stop because you would do it instead.
01:36:13 <shachaf> (Or do I? I might've lost it.)
01:36:19 <shachaf> (It probably has some name like q.py.)
01:36:43 <elliott> $ wc -l qdb.py
01:36:43 <elliott> 120 qdb.py
01:37:00 <shachaf> So?
01:37:08 <shachaf> Are you actually going to do it?
01:37:45 <GreyKnight> rewrite it in qoppa plz
01:38:12 <GreyKnight> Python is insufficiently esoteric for this august venue :-I
01:38:36 <ais523> bsmnt_bot felt reasonably eso, at least
01:38:48 <ais523> anyone remember bsmnt_bot?
01:38:56 <elliott> zeptobot was python and yes
01:40:03 <GreyKnight> Request: a bot whose *commands* are esoteric in nature
01:40:15 <elliott> storkbot
01:41:48 <shachaf> GreyKnight: this is a january venue
01:41:57 <shachaf> wait six months and try again
01:43:44 <GreyKnight> what is storkbot
01:43:57 <kmc> i wonder if qoppa counts as an esolang
01:43:58 <kmc> or kernel etc
01:44:02 <kmc> probably a useless question to ask
01:44:42 -!- jiella1 has quit (Quit: Leaving.).
01:44:56 <elliott> i think a qoppa article on the wiki would be at home
01:45:15 <Sgeo> I wish I could use Racket's eval so that Qoppa expression could expand into a Racket macro and have that be evaluate
01:45:17 <Sgeo> evaluated
01:47:53 <kmc> "How do I install new Firefox on this Windows 3.1 CNC machine? Because Internet Explorer 3 won't open Facebook."
01:48:05 <Sgeo> Hmm, actually, I could change the evaluation handler so that it distinguish between Qoppa evaluation and Racket evaluation
01:48:22 <Sgeo> Although, wait, that could be a bad idea
01:48:56 <GreyKnight> kmc: "here's a pound, get a marginally newer machine" ?
01:49:31 <ais523> GreyKnight: I don't think even new CNC machines would necessarily run new OSes
01:49:41 <ais523> they're the sort of machine that you design with an OS once
01:49:46 <ais523> and then leave it there forever
01:49:52 <shachaf> kmc: But is it a functionalang?
01:50:51 <GreyKnight> disclaimer: I didn't actually look up what CNC meant and just made a facile joke
01:51:05 <GreyKnight> (I did now)
01:51:52 <elliott> @google cnc
01:51:59 <lambdabot> http://en.wikipedia.org/wiki/Numerical_control
01:51:59 <lambdabot> Title: Numerical control - Wikipedia, the free encyclopedia
01:52:02 <elliott> whats a cnc
01:52:15 <shachaf> elliott: command 'n' conquer hth
01:52:33 <ais523> elliott: computer numerical control machine
01:52:43 <shachaf> That too.
01:52:45 <elliott> whats that
01:52:46 <ais523> they're basically robots designed to move drills sideways in precisely controlled patterns
01:52:54 <elliott> oh
01:52:56 <elliott> kind of like me
01:53:01 <ais523> allowing you to cut arbitrary shapes out of a piece of material
01:58:19 -!- GreyKnight has quit (Ping timeout: 256 seconds).
01:58:56 -!- copumpkin has joined.
01:59:44 -!- GreyKnight has joined.
02:07:36 <kmc> it's not necessarily moving a drill sideways
02:07:40 <kmc> that would be a CNC mill
02:07:54 <kmc> there are also CNC lathes, laser cutters, vinyl cutters, waterjets, plasma cutters, etc
02:08:07 <kmc> 3D printers
02:08:12 <ais523> oh right
02:08:13 <oerjan> elliott: can you cut a mandelbrot set out of paper?
02:08:15 <ais523> CNC milling is what I'm used to
02:08:21 <ais523> because I used to have access to a CNC mill
02:08:30 <ais523> oerjan: did you mean ais523:?
02:08:35 <ais523> and you can cut out an approximation of one
02:08:40 <ais523> CNC machines aren't perfectly accurate, though
02:08:57 <oerjan> no, i meant elliott, since he claimed to be kind of like such a robot
02:09:02 <ais523> oh right
02:09:11 <elliott> oerjan: i am a mandelbrot set
02:09:15 <oerjan> ooh
02:09:16 <elliott> irl
02:09:26 <shachaf> cool mandel bro
02:09:33 <oerjan> that _would_ explain why you don't want taneb to see you
02:09:46 <olsner> how so?
02:09:47 <Phantom_Hoover> @ask atriq have you seen any mandelbrot sets around hexham?
02:09:48 <lambdabot> Consider it noted.
02:09:52 <shachaf> I look like this: http://slbkbs.org/sb/1.png
02:09:58 <shachaf> I suppose you already know that, though.
02:11:19 <oerjan> i'm not even going to click that link again
02:11:28 <oerjan> `pastlog never meet
02:11:59 <HackEgo> 2009-10-22.txt:03:47:55: <Oranjer> I am saddened that I could never meet him or Borges
02:12:13 <oerjan> `pastlog elliott.*never meet
02:12:18 <ais523> `pastlog duck
02:12:25 <HackEgo> 2011-09-12.txt:19:31:50: <oerjan> <elliott> Phantom_Hoover: I and Taneb can never meet. <-- wait, wouldn't it be ok as long as it is nowhere near hexham?
02:12:25 <HackEgo> 2007-04-01.txt:05:52:38: <CakeProphet> -nod- what did you think I meant by duck typing?
02:12:40 <oerjan> close enough
02:13:08 <Phantom_Hoover> elliott is elliott and taneb is taneb, and ne'er the twain shall meet
02:13:31 <oerjan> Phantom_Hoover: why must they mix mark twain into a kipling quote, i wonder
02:14:25 <oerjan> possibly because kipling did so himself
02:14:30 <oerjan> but WHY
02:15:33 <oerjan> i never got the log question answered, i think
02:18:11 -!- sebbu3 has joined.
02:18:12 -!- sebbu3 has quit (Changing host).
02:18:12 -!- sebbu3 has joined.
02:18:18 -!- sebbu has quit (Ping timeout: 272 seconds).
02:18:37 <oerjan> unless it was <elliott> oerjan: there'll be ferries
02:19:18 <oerjan> but i suspect that was a response to an earlier line
02:21:50 -!- Nisstyre-laptop has joined.
02:24:44 -!- sebbu3 has quit (Ping timeout: 260 seconds).
02:26:44 -!- Arc_Koen has quit (Quit: The struct held his beloved integer in his strong, protecting arms, his eyes like sapphire orbs staring into her own. "W-will you... Will you union me?").
02:29:25 <ais523> Arc-Koen's quit message is hilarious
02:29:30 <ais523> *Arc_Koen
02:29:44 <ais523> I wonder if it's original or a quote from somewhere
02:31:00 <oerjan> it's obviously a quote from a seedy place google doesn't reach
02:32:44 <ais523> it looks vaguely like an attempt at invoking rule 34 (or possibly rule 35)
02:33:07 -!- Vorpal has joined.
02:34:04 <GreyKnight> it's from here
02:34:09 <GreyKnight> (so, oerjan is correct)
02:34:49 <ais523> `pastlog sapphire orbs
02:34:56 <HackEgo> 2012-12-11.txt:21:22:25: <Fiora> the struct held his beloved integer in his strong, protecting arms, his eyes like sapphire orbs staring into her own
02:34:58 <oerjan> yay
02:35:08 <ais523> I should have guessed the author, really
02:35:23 <ais523> Fiora's good at that sort of thing :)
02:35:27 <Fiora> oh god my terrible joke has become a quit message
02:35:50 <GreyKnight> has done for some time :-U
02:36:03 <oerjan> `welcome Fiora
02:36:06 <HackEgo> Fiora: 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.)
02:36:37 <Phantom_Hoover> i wish i had your talent for shitty fanfic
02:36:39 <ais523> Fiora: it's an awesome joke
02:37:01 <Fiora> I can do okay fanfic (I hope?) too
02:37:09 <ais523> the point where fanfic rolls over from bad into being good again is actually quite close to the typical average of fanfic
02:37:20 <ais523> so close, in fact, that it's met by chance quite a lot
02:37:33 <ais523> (I don't know if this is because I'm easily amused, or because typical fanfic is really shitty)
02:37:37 <ais523> (possibly both)
02:38:16 <Phantom_Hoover> it's also very close the the point at which it becomes unironically publishable
02:38:48 <ais523> Phantom_Hoover: isn't that just because most publishers have no sense of irony?
02:38:48 <oerjan> Phantom_Hoover: at which side?
02:39:11 <GreyKnight> both
02:40:10 <Fiora> speaking of published fanfiction, I saw this the other day
02:40:11 <Fiora> http://www.amazon.com/Gamer-Girl-Mari-Mancusi/dp/014241509X
02:40:36 <Fiora> and apparently some people I knew had actually read it from the library and it's exactly as hilariously bad mary sue fic as it looks
02:41:37 <Phantom_Hoover> you mean this was in a brick and mortar library
02:41:42 <Fiora> yes
02:41:48 <Phantom_Hoover> we're doomed
02:41:55 <Fiora> probably YA section or something between the animorphs and redwall?
02:41:59 <ais523> hmm… the mary sue phenomenon is probably the reason roleplaying games actually have rules
02:42:05 <ais523> (also the reason they have munchkins)
02:42:34 <Sgeo> lol, on a page that has graphics intended for use of games, a list of games it might be useful for:
02:42:35 <Sgeo> "Sokoban (Please don't make this game again)
02:42:35 <Sgeo> "
02:42:35 <Phantom_Hoover> i think the reason roleplaying games have rules is because it's so obvious they need them that everyone just sort of accepted it
02:42:38 <Sgeo> http://www.lostgarden.com/2007/05/dancs-miraculously-flexible-game.html
02:42:40 <GreyKnight> "Readers will guess the identity of Sir Leo long before Maddy does" <-- already did -_-
02:42:47 <shachaf> @wn mary sue
02:42:49 <lambdabot> *** "mary" wn "WordNet (r) 3.0 (2006)"
02:42:49 <lambdabot> Mary
02:42:49 <lambdabot> n 1: the mother of Jesus; Christians refer to her as the Virgin
02:42:49 <lambdabot> Mary; she is especially honored by Roman Catholics [syn:
02:42:49 <lambdabot> {Mary}, {Virgin Mary}, {The Virgin}, {Blessed Virgin},
02:42:51 <lambdabot> [10 @more lines]
02:42:58 <Phantom_Hoover> mary is a total mary sue
02:43:25 <shachaf> @wn sue
02:43:25 <lambdabot> *** "sue" wn "WordNet (r) 3.0 (2006)"
02:43:25 <lambdabot> Sue
02:43:25 <lambdabot> n 1: French writer whose novels described the sordid side of
02:43:25 <lambdabot> city life (1804-1857) [syn: {Sue}, {Eugene Sue}]
02:43:25 <lambdabot> v 1: institute legal proceedings against; file a suit against;
02:43:27 <lambdabot> [3 @more lines]
02:43:56 <Fiora> shachaf: a "mary sue" is a stereotypical fanfiction original character that is often a self-insert, steals the spotlight, and soon the universe is revolving around her (or him)
02:43:59 <GreyKnight> "And even more importantly, she begins reaching out to potential friends by starting a manga club and entering /Gamer Girl/ in a prestigious writing contest." <-- wait, so the character is *such* a blatant self-insert that she included the book inside itself?
02:44:14 <Fiora> sometimes even in non-fanfiction, characters exhibiting hordes of mary sue cliches show up, so people call them sues too
02:44:24 <Phantom_Hoover> it's actually the fanfic version of GEB
02:44:38 <GreyKnight> It's fanfics all the way down.
02:44:47 <Fiora> for example, eragon
02:44:50 <Fiora> entire book is marty stu
02:44:59 <Jafet> @google tv tropes mary sue
02:45:01 <lambdabot> http://tvtropes.org/pmwiki/pmwiki.php/Main/MarySue
02:45:01 <lambdabot> Title: Mary Sue - Television Tropes & Idioms
02:45:30 <shachaf> What's eragon?
02:45:40 <shachaf> "Eragon is the first book in the Inheritance Cycle by Christopher Paolini, who began writing at the age of 15."
02:45:46 <Phantom_Hoover> it's between dragon and fragon
02:45:58 <shachaf> Is the age of the author the most important fact about the book?
02:46:12 <Phantom_Hoover> (this was basically my line of thought when i first saw the title)
02:46:24 <GreyKnight> With such glowing reviews as "This is, bar none, the worst book I have ever read in my life." and "It has everything which makes a teen book amount to nothing.", how can I turn this opportunity down?
02:48:55 <GreyKnight> "This is supposed to be a story of how gamers should be accepted as normal people and other related issues, but instead comes off as a descent into madness not unlike the works of H.P. Lovecraft."
02:48:55 <GreyKnight> These reviews are a source of endless* entertainment
02:49:07 <GreyKnight> (* endlessness not guaranteed)
02:49:08 <Phantom_Hoover> much more so than the book, even as a so-bad-it's-good
02:49:20 <Fiora> Eragon was a really popular YA series that sort of piggybacked off the popularity of harry potter and similar series
02:49:29 <Fiora> it's terribly written, it's written by like, a teenager
02:49:38 <Jafet> @wn YA
02:49:38 <lambdabot> No match for "YA".
02:49:40 <Fiora> young adult
02:49:44 <Phantom_Hoover> there's a review of dance with dragons on amazon that is basically better than the book in every way
02:49:52 <Fiora> it even got made into a major movie
02:50:10 <Fiora> someone I knew in high school actually bought a copy and read it with a red pen, marking every instance of terrible grammar and awful writing, and that was how she enjoyed it
02:50:14 * oerjan now imagines the review got made into a major movie
02:50:27 <Jafet> oerjan: and get reviewed
02:50:49 <shachaf> Fiora: Isn't that a bit depressing?
02:50:58 <Fiora> ?
02:51:02 <shachaf> Consider all the things you could do instead of pointing out just how other things are terrible.
02:51:24 <Fiora> I think it was also practice for her, because she was an aspiring author and fanfic writer and did a lot of editing
02:51:29 <Phantom_Hoover> awww, that review got removed
02:51:40 <GreyKnight> Phantom_Hoover, D:
02:51:41 <Fiora> and, plus. guilty pleasure
02:51:49 <Fiora> kinda like how reading My Immortal can be incredibly funny
02:51:51 <Fiora> or the Eye of Argon
02:52:01 <Phantom_Hoover> Fiora, i hear it has elves
02:52:15 <GreyKnight> MST3K, red pen style
02:52:35 <Phantom_Hoover> http://voxday.blogspot.co.uk/2012/05/cynics-summary.html aha!
02:52:53 <Phantom_Hoover> slightly more happens in this review than the actual book
02:53:18 <GreyKnight> "The game within the book (Fields of Fantasy) is a spin off of WoW (in case you didn't know this is World of Warcraft)." Pet hate: people who use abbreviations and then expand them for you in case you didn't know.
02:53:50 <Fiora> the book was 959 page long...? jesus
02:54:01 <Fiora> *pages
02:54:06 <Phantom_Hoover> in the uk it's two books
02:54:46 <Phantom_Hoover> so's storm of swords, the difference is that in terms of stuff that happens storm of swords is like half the series
02:54:53 <kmc> http://www.ayudasystems.com/Jobs wow brogrammer much?
02:55:09 <Jafet> Pro grammar
02:55:22 <Lumpio-> "Pro ASP.NET in C# 2012"
02:55:29 <kmc> women are just another material perk, like gym membership and fancy espresso
02:55:31 <GreyKnight> Sgeo: I kind of want to make Sokoban with those tiles now just to be contrary
02:55:32 <Lumpio-> That'll work wonders with the macbook
02:56:20 <Jafet> kmc: the women are for giving massages, clearly
02:56:31 <Phantom_Hoover> and making the espresso
02:56:37 <Jafet> "Gym membership"
02:56:43 <Phantom_Hoover> and playing the foosball with
02:57:06 <Jafet> Women also cure myopia
02:57:09 <Jafet> As you can see
02:57:17 <shachaf> kmc: Does it say that?
02:57:39 <Phantom_Hoover> Jafet, the trick is to have the woman report what she's seeing
02:58:10 <kmc> it doesn't say that, just strongly implies
02:58:26 <Jafet> "appeals to the notion that"
02:58:51 <shachaf> I must be missing it.
02:59:01 <shachaf> Oh, do you mean the picture?
02:59:05 <kmc> yes
02:59:50 <kmc> also it's a canadian company but they still flash US$100 bills?
02:59:57 <shachaf> Ah, I skipped past that. Fair enough.
02:59:59 <kmc> it's all about the robert bordens baby
03:00:31 <Fiora> "all you can eat snacks" with a picture of doritos
03:00:32 <Jafet> kmc: "Ex-Microsoft Software Engineer"
03:00:33 <kmc> The Right Honourable Sir
03:00:36 <Fiora> there is so much stereotypical awful in there
03:01:13 <GreyKnight> wow what is this
03:01:28 <Fiora> that sounds like the worst place to work
03:01:37 <GreyKnight> also their "encryption engine" appears to be a simple substitution cypher
03:01:40 <Jafet> Apparently, a person in Redmond, WA is called upon to give the opinion that this is the best job in Montreal, QB
03:02:18 <GreyKnight> Fiora: like a perfect little ball of wretched :-U
03:02:20 <kmc> GreyKnight: it is probably meant to be easy, as a kind of FizzBuzz thing
03:02:28 <olsner> nice touch having SOS in morse code as part of the logo
03:02:44 <Jafet> "So yeah, we're hiring"
03:02:47 <Fiora> GreyKnight: yeah, but it's kind of scary how many places I've heard of being like that
03:02:59 <Fiora> I'm lucky I managed to find a better one, but
03:03:06 <kmc> most programming job applicants cannot program at all, which doesn't make sense until you factor in that the average programming job applicant is much less skilled than the average programming job haver
03:03:16 <ais523> kmc: indeed
03:03:56 <Fiora> that makes sense
03:03:57 <GreyKnight> touché
03:04:10 <Fiora> did I ever mention the friend of mine who delivered to a blizzard office?
03:04:54 <kmc> don't think so
03:05:03 <Fiora> she had a food delivery/catering job at the time so she got to go to a lot of local tech companies and stuff. the blizzard place was like a frat house, with a middle area with giant TVs and tons of snacks, trash all over the place
03:05:06 <GreyKnight> Apparently one of the job perks is "$1000 in cash". What, ever?
03:05:06 <GreyKnight> Worst pay scale
03:05:08 <Fiora> the only woman she saw was the receptionist
03:05:31 <Jafet> I bet they get work done there, though
03:05:39 <kmc> GreyKnight: haha
03:06:00 <GreyKnight> I think if I had to try and concentrate on code somewhere with a TV and table football... there would be some murders.
03:06:00 <Jafet> As einstein said, a trashy house indicates a trashy mind
03:06:09 <kmc> yeah I mostly do not encounter these brogrammers, iHipsters, etc. in real life
03:06:16 <kmc> maybe because i don't get out much
03:06:21 <kmc> maybe because I live in Boston and not SF bay area
03:06:25 <Phantom_Hoover> i think i share a kitchen with one
03:06:37 <Fiora> I think it's an environment thing. like. there seem to be workplaces that are covered in them, and also workplaces with none
03:06:40 <Fiora> like, they congregate and attract each other
03:06:41 <Phantom_Hoover> fortunately he's still in the larval state
03:06:42 <kmc> yes
03:06:44 <kmc> like attracts like
03:06:49 <GreyKnight> kmc: wait is this a "thing"? I thought this was an isolated incident
03:06:58 <kmc> that's what I always think when I see the rockstar ninja job ads
03:07:07 <kmc> "do i want to be working with the kinds of people who respond positively to this ad"
03:07:12 <kmc> GreyKnight: which? brogrammers?
03:07:14 <Phantom_Hoover> GreyKnight, of course it's a thing
03:07:18 <GreyKnight> O_O
03:07:19 <kmc> it's a big deal
03:07:37 <kmc> http://thenextweb.com/us/2012/03/20/sqoot-loses-sponsors-following-misogynistic-description-of-their-api-jam-event/
03:07:42 <shachaf> I also mostly do not encounter them.
03:07:47 <GreyKnight> Okay... thankfully they don't seem to have spread over here much... YET
03:08:09 <Phantom_Hoover> it was the same in the dot com boom, what do you get when you have a sudden expansion in an industry with no developed sense of professionalism?
03:08:11 <Fiora> GreyKnight: even outside of like, the most frattish awful guys. have you ever had the joy of accidentally looking at a comment thread on hacker news >_>;
03:08:12 <GreyKnight> I'd better stock up on defences just to be sure
03:08:41 <GreyKnight> I try not to read comments in general, they are the same the net over :o)
03:08:57 <Jafet> http://geekfeminism.wikia.com
03:09:18 <Fiora> it's a great place to go if you need a guy to explain to you why sexism doesn't actually exist!
03:09:26 <Fiora> or maybe tell you why rape jokes are /totally okay/
03:09:26 <GreyKnight> wow the sqoot thing
03:09:37 <kmc> straight white men with self-diagnosed asperger's are the /real/ persecuted minority!
03:09:59 <kmc> i saw that as a defense of sexual harrassment at CCC
03:10:00 <GreyKnight> ...Please explain to me how a live DJ will help me code
03:10:07 <Phantom_Hoover> CCC?
03:10:14 <kmc> "well we didn't get laid in high school, of COURSE we hate women! you can't blame us!"
03:10:28 <kmc> chaos communication congress
03:10:29 <Jafet> Self-diagnosed asperger syndrome
03:10:34 <kmc> big european hacker con
03:10:38 <GreyKnight> (also they supply lots of alcohol? Quality code, coming up!)
03:10:42 <Jafet> That should go in the handbook
03:11:30 -!- DHeadshot has quit (Ping timeout: 272 seconds).
03:11:54 <Sgeo> I didn't get laid in high school, and ... I hope I don't act like a jerk towards women
03:12:01 <Sgeo> :/ I think sometimes I do though
03:12:11 <Sgeo> :(
03:12:21 <Phantom_Hoover> Sgeo when has airing your insecurities here ever actually helped
03:12:41 <GreyKnight> Sometimes I act like a jerk towards people in general but I don't think I single out women
03:12:47 <Sgeo> I was worse in middle school though
03:13:22 -!- GreyKnight has quit (Remote host closed the connection).
03:13:26 <olsner> hmm, tar pits are actual pits of tar: http://en.wikipedia.org/wiki/Tar_pit
03:13:41 <monqy> yes
03:13:56 <Jafet> We should get one in here.
03:13:58 -!- GreyKnight has joined.
03:14:01 <Phantom_Hoover> did you think it was a hypothetical example or something
03:14:11 <Phantom_Hoover> like a chocolate teapot
03:14:20 <GreyKnight> olsner: really :-I
03:14:29 <Jafet> Guacamole pit
03:14:30 <shachaf> Wait, chocolate teapots aren't chocolate teapots?
03:14:42 <Phantom_Hoover> of course not
03:14:45 <Phantom_Hoover> why would you make one
03:14:53 <Phantom_Hoover> it would be as useless as... well, you know
03:14:56 <Fiora> Sgeo: you're a total jerk to me :/ what with constantly forgetting to tell me about homestuck updates
03:14:59 <monqy> to make your tea gross
03:14:59 <Fiora> you awful awful person :<
03:15:10 <Jafet> Chocolate milk jug
03:15:20 <GreyKnight> So are there any more bits of fail like this ayuda business?
03:15:33 <Phantom_Hoover> it's your own fault for stealing fizzie's nick prefix
03:15:39 <shachaf> Sgeo: Every time you tell people about updates, I feel pain.
03:15:46 <GreyKnight> I was trying to think of something witty to say about the "learn magic tricks" but I can't come up with anything :<
03:16:06 <monqy> Sgeo: i bet it's because shachaf isn't on "the list" and he wants you to tell him about the updates too
03:16:09 <olsner> GreyKnight: yes, I think there are loads of places exactly like that
03:16:17 <Sgeo> monqy, I did that once
03:16:31 <Phantom_Hoover> GreyKnight, how about the fact that you can't impress your colleagues with them because they already know the trick, and you can't use it to pick up women because you already get one with the job.
03:16:55 <shachaf> Sgeo: Hmm, you should tell me about giantitp.com comic updates instead.
03:17:09 <GreyKnight> shachaf: it actually updated! At last
03:17:10 <Phantom_Hoover> tell everyone about perry bible updates
03:17:19 <Phantom_Hoover> don't even ask
03:17:21 <shachaf> GreyKnight: I saw that.
03:17:24 <Sgeo> shachaf, update as of new year's eve!
03:17:35 <shachaf> Sgeo: OK, now tell me when the next one happens.
03:17:58 <olsner> doesn't this thing have an RSS feed that you can subscribe to or something?
03:17:59 <Sgeo> I have a Twitter account that tweets when it updates
03:18:10 <GreyKnight> Phantom_Hoover: I was going for something along the lines of "Oh, you know a magic trick? That's adorable. Let me show you (amb)..."
03:18:13 <Sgeo> olsner, so does Homestuck
03:18:14 <Phantom_Hoover> have they actually accomplished anything in the last... 6 months?
03:18:14 <shachaf> But please don't tell monqy or elliott or Fiora or Taneb
03:18:19 <shachaf> Or any of "those people"
03:18:19 <olsner> let's optimize this notification system out of #esoteric
03:18:29 <monqy> who's "those people"
03:18:33 <shachaf> monqy: you
03:18:38 <monqy> :0
03:18:40 <GreyKnight> -Onotifications
03:18:46 <shachaf> ¹
03:18:47 <nooodl> woah am i those people
03:18:54 <shachaf> nooodl: no
03:18:56 <monqy> hi nooodl
03:18:57 <Phantom_Hoover> nooodl, aren't you monqy
03:18:59 <nooodl> just checking...
03:19:04 <nooodl> yes that's why i asked
03:19:06 -!- sebbu has joined.
03:19:07 -!- sebbu has quit (Changing host).
03:19:07 -!- sebbu has joined.
03:20:51 <olsner> ooh! speaking of tar, "The ninth drop is expected to fall in 2013." (http://en.wikipedia.org/wiki/Pitch_drop_experiment)
03:21:04 <olsner> let's hope the webcam works this time
03:21:35 <oerjan> <GreyKnight> shachaf: it actually updated! At last <-- you know it's been long between updates when the comic itself lampshades it
03:21:55 <Jafet> That would be good. The grass here doesn't grow very beautifully.
03:22:31 <Sgeo> When was the 8th drop?
03:22:33 <shachaf> The grass doesn't grow on trees, you know.
03:22:48 <GreyKnight> Sgeo: 2000
03:22:52 <Sgeo> Ah
03:22:58 <olsner> Sgeo: the wiki page has the whole list of drops
03:23:01 <GreyKnight> experiment started in 1927
03:23:11 <Sgeo> oh
03:23:41 <Sgeo> Sucks that it wasn't recorded
03:24:50 -!- Phantom_Hoover has quit (Remote host closed the connection).
03:25:08 <oerjan> > (2013-1927)/9
03:25:09 <lambdabot> 9.555555555555555
03:26:04 <oerjan> nah obviously when the drop is caught falling, the world ends. that's how these things work.
03:28:14 <FreeFull> Ok, time for me to learn comonads
03:28:47 -!- DHeadshot has joined.
03:30:34 <GreyKnight> why aren't there a glut of comonad tutorials >:-(
03:30:35 <olsner> oerjan: there's a big increase in drop time since they installed air conditioning in the late eighties
03:30:44 <oerjan> aha
03:31:31 <GreyKnight> FreeFull: actually I guess *you're* supposed to teach the tutorial writer about comonads
03:31:35 <oerjan> GreyKnight: because while everyone makes a monad tutorial, they just _read_ comonad tutorials
03:31:55 <GreyKnight> * cotutorial
03:36:04 -!- zzo38 has joined.
03:37:18 -!- mig22 has joined.
03:39:12 <GreyKnight> `quote 234
03:39:14 <HackEgo> 234) <Deewiant> !bfjoust sm3 < <EgoBot> Score for Deewiant_sm3: 43.4
03:39:53 <shachaf> !bfjoust sm4 <<
03:40:06 <EgoBot> ​Score for shachaf_sm4: 0.0
03:40:09 <ais523> shachaf: the scoreboard was bugged when that happened
03:40:21 <shachaf> Sure, but my version is upgraded.
03:40:24 <shachaf> It's not just a clone.
03:42:17 <oerjan> !bfjoust fnord >+<[+-]
03:42:21 <EgoBot> ​Score for oerjan_fnord: 8.7
03:50:19 <kmc> Sgeo: I also worry about being subconsiously sexist :/
03:51:18 <ais523> oerjan: you might be better off using ()* rather than [] there
03:51:28 <ais523> that way you're not wasting a cycle on zero testing
03:51:51 <Fiora> I think everyone has some level of subconscious sexism, racism, and the like, and it's sort of our job to try to catch ourselves the best we can
03:51:56 <kmc> i think if you never worry about it at all, you are probably sexist
03:51:57 <oerjan> !bfjoust fnord >+<(+-)*-1
03:51:58 <kmc> yep
03:52:01 <EgoBot> ​Score for oerjan_fnord: 6.2
03:52:09 <ais523> hmm, maybe not :)
03:52:13 <Fiora> I've been familiar with feminist principles for years, but I still catch internalied-misogyny thought processes sometimes
03:52:19 <Fiora> and have to go like stupid fiora stop it no no no no no
03:52:56 <ais523> !bfjoust maybe_better_than_oerjan_fnord >+<(.+-)*-1
03:53:00 <EgoBot> ​Score for ais523_maybe_better_than_oerjan_fnord: 11.5
03:53:04 <ais523> hmm
03:53:10 <Fiora> but yeah. worrying is good <_<
03:53:17 <kmc> within reason :)
03:53:24 <kmc> i am also the kind of person who worries about everything
03:53:32 <kmc> "But at this phase, the all-male society of bit-heads that made up the power structure of Black Sun Systems said that the face problem was trivial and superficial. It was, of course, nothing more than sexism, the especially virulent type espoused by male techies who sincerely believe that they are too smart to be sexists."
03:53:34 <Fiora> a bit of worrying, at least!
03:53:55 <kmc> "My feeling about nonsexist English is that it is like a foreign language that I am learning. I find that even after years of practice, I still have to translate sometimes from my native language, which is sexist English. I know of no human being who speaks Nonsexist as their native tongue. It will be very interesting to see if such people come to exist. If so, it will have taken a lot of work by a lot of people to reach that point."
03:55:02 <shachaf> Nonsexist English is much easier than nonsexist Hebrew.
03:56:02 <GreyKnight> what is the "face problem"?
03:57:02 <shachaf> Not particularly relatedly, did you read Chiang's _Liking What You See_?
03:57:07 <shachaf> http://www.clarku.edu/welcome/placement/pdf/reading.pdf
03:57:59 <kmc> shachaf: yes! thanks for sending that to me as well :)
03:58:07 <kmc> GreyKnight: putting good faces on avatars in a 3D world
03:58:10 <shachaf> Ah, I might've mentioned it before.
03:58:15 <kmc> that look realistic and not all uncanny-valley
03:58:18 <kmc> it's a quote from Snow Crash
03:58:24 -!- Vorpal has quit (Ping timeout: 276 seconds).
03:58:31 <kmc> "At the time, both of them were working on avatars. He was working on bodies, she was working on faces. She was the face department, because nobody thought that faces were all that important-they were just flesh-toned busts on top of the avatars. She was just in the process of proving them all desperately wrong."
03:59:13 <GreyKnight> I can see why good face models are important although I don't see what it has to do with sexism particularly?
04:00:03 <FreeFull> Humans have a whole brain section dedicated to just faces
04:01:32 -!- nooodl has quit (Ping timeout: 272 seconds).
04:04:25 <kmc> you could read the book
04:04:53 <kmc> it doesn't particularly have to do with sexism
04:05:04 <shachaf> I read the book but it was quite a long time ago.
04:05:14 <shachaf> Perhaps I shoould read it again?
04:05:17 <kmc> it's just that the guys thought the thing she was working on was unimportant, partially due to sexism
04:05:22 <kmc> it's not especially relevant to the plot
04:05:26 <kmc> but it's a good book and you should read it
04:05:38 <kmc> i quoted it just for the last sentence
04:05:52 <kmc> "male techies who sincerely believe that they are too smart to be sexists"
04:05:59 <kmc> regarding the merits of worrying about this :)
04:06:21 <kmc> we programmers tend to think of ourselves (and the rest of the world) as computers, following programs
04:06:41 <kmc> and since we know intellectually to avoid prejudice, we think that of course we will act that way
04:06:50 <kmc> but brains are imprecise computers
04:06:59 -!- Bike has joined.
04:07:25 <kmc> http://en.wikipedia.org/wiki/Intrusive_thoughts is another useful concept
04:07:57 <kmc> 'Many people experience the type of bad or unwanted thoughts that people with more troubling intrusive thoughts have, but most people are able to dismiss these thoughts... London psychologist Stanley Rachman presented a questionnaire to healthy college students and found that virtually all said they had these thoughts from time to time, including thoughts of sexual violence, sexual punishment, "unnatural" sex acts, painful sexual prac
04:09:10 <Bike> are you using that as an example of brains being "imprecise", or with respect to "internalized misogyny"
04:09:32 <Sgeo> I'm not a psychologist, but I'd imagine that any thought that someone would intellectually think is "bad" would come up in intrusive thoughts
04:09:48 <kmc> both really
04:10:31 <kmc> having racist thoughts does not make you racist any more than having murderous thoughts makes you a murderer
04:10:32 <FreeFull> I can imagine lots of rusty nails emerging from my flesh everywhere
04:10:42 <Bike> the important thing about intrusive thoughts isn't so much the content as the inability to get rid of them, sgeo.
04:10:58 <kmc> the idea of the mind as a single indivisible agent is pretty bogus
04:11:03 <kmc> the mind is a committee, if not a whole bureaucracy
04:11:16 <Bike> something something minsky
04:11:29 <kmc> sometimes the part that we perceive as the executive agent needs to yell at the other bits to keep them in line
04:11:32 <kmc> or just ignore them
04:12:41 <Sgeo> I sometimes blame the book "Well Wishing" for giving me the idea that my thoughts, if left unchecked, might cause actual harm magically, and thus an urgent and uncomfortable need to mentally yell at myself any time I have a "bad" thought, rather than just ignoring it
04:12:46 <FreeFull> Usually what you can do is just think about something else
04:13:02 <kmc> yeah, that's probably not good Sgeo
04:13:06 <kmc> i am also not a psychologist
04:13:10 <kmc> (shocker to you all, i'm sure)
04:13:18 <Bike> maybe it's just me but i find that self-help books are really, really bad for anything psychological
04:13:38 <Bike> maybe you have intrusive antiintrusive thoughts, sgeo!
04:14:49 <kmc> i wonder if "hipster racism" and the like is a not-entirely-benign coping mechanism for dealing with intrusive racist thoughts
04:15:00 <Sgeo> "hipster racism"?
04:15:12 <GreyKnight> I was about to ask too but then decided "maybe I'll let that one lie"
04:15:18 <kmc> http://jezebel.com/5905291/a-complete-guide-to-hipster-racism
04:15:21 * GreyKnight has uncovered enough bizarreness for one day
04:16:21 <Bike> oh, the thug life article, i remember reading that.
04:16:39 <kmc> basically, being racist as a joke because 'everyone knows' you're not racist
04:16:48 <kmc> that 'everyone knows' is usually based on something like "i'm smart" or "i voted for obama"
04:16:57 <Bike> also i feel a bit uncomfortable with using "intrusive thoughts" to refer to the non-insanity-related normal condition, but i guess it's kosher
04:17:32 <kmc> Bike: well that article seems to think so anyway
04:17:32 <GreyKnight> This author sure loves exclamation marks
04:17:35 <kmc> but it's just a wikipedia article
04:18:00 <Bike> yeah, that's what i meant. it's just like how i get antsy when people talk about "insane" or "OCD" casually i guess
04:18:06 <kmc> yeah
04:18:16 <kmc> i see what you mean
04:19:04 <kmc> "ADD" and "aspergers" get used that way too
04:19:28 <Bike> aspergers has the whole internet diagnosis thing going for it too :/
04:19:32 <kmc> yeah
04:19:47 <kmc> i think there's a fair amount of that with ADD and OCD too
04:20:05 <coppro> aspergers is no longer a disorder recognized by the APA
04:20:13 <coppro> or whatever that doctors' association is called
04:20:14 <kmc> i know that I have some obsessive-compulsive tendencies, but it doesn't really get in the way of my daily life, so I guess there's no 'D'
04:20:25 <kmc> every time I leave the house I check about 5 times that the stove is off
04:20:25 <coppro> OCD is an anxiety disorder
04:20:33 <kmc> coppro: is it autism spectrum now?
04:20:33 <coppro> ok, that could qualify
04:20:35 <coppro> kmc: yes
04:20:42 <kmc> in fairness, it has been found to be not-off more than once
04:21:00 <Bike> is it that OCPD is what people usually think of as "OCD" or... i forget.
04:21:01 <kmc> one time I lived with a guy with serious for-reals ADHD and he would do things like turn the stove on, forget to light the burner, and then wander off to his room
04:21:15 <coppro> like, if you just like to organize things neatly because you think they look better, that's not OCD
04:21:18 <coppro> even if you do that a lot
04:21:27 <kmc> i figure an extra 30 seconds of my time towards the house not burning down is an ok investment and so I don't fight it too hard
04:21:52 <shachaf> «this Tweet from Zooey Deschanel: "Haha. :) RT @Sarabareilles: Home from tour and first things first: New Girl episodes I missed. #thuglife." See, it's hilarious, because we aren't thugs—we are darling girls, and real thugs are black people who do crime!»
04:21:53 <kmc> yes, i suppose it's the "compulsive" part, where you find it hard to stop even if you want to
04:21:54 <Bike> coppro: yeah that's what i meant, people using it casually to refer to things that are nowhere near medical conditions.
04:21:56 <shachaf> I don't get it.
04:22:08 -!- Nisstyre has quit (Read error: Connection reset by peer).
04:22:08 <Bike> Don't get what?
04:22:23 <shachaf> Which part of that is racist?
04:22:40 <kmc> the last sentence is meant to explain it
04:22:48 <kmc> i think that's not really an egregious example
04:23:04 <Bike> The idea is that "thug life" is being used to refer to things we don't think of as stereotypically "thuggish", i.e. black.
04:23:17 <shachaf> @wn thug
04:23:18 <lambdabot> *** "thug" wn "WordNet (r) 3.0 (2006)"
04:23:18 <lambdabot> thug
04:23:18 <lambdabot> n 1: an aggressive and violent young criminal [syn: {hood},
04:23:18 <lambdabot> {hoodlum}, {goon}, {punk}, {thug}, {tough}, {toughie},
04:23:18 <lambdabot> {strong-armer}]
04:23:27 <Bike> buuuuut that particular sentence is the one part of the article that's been pasted over and over and argued about anyway
04:23:30 <kmc> dictionaries are not great guides to racism
04:23:32 * shachaf isn't trying to play dictionary here in particular.
04:23:43 <shachaf> Bike: OK, I haven't read the article before.
04:24:02 <coppro> Bike: No, it's not OCPD. A few manifestations of OCD stereotype the disorder, which causes people to misunderstand the fact that it's an anxiety disorder characterized by irresitable urges to perform specific, usually-irrational actions so as to relieve the anxiety. This leads to people both failing to understand what OCD sufferers are experiencing and believing that things may be OCD when they are not.
04:24:04 <Bike> I didn't think you did, I'm just saying you're not the only one who read that part and thought "what?".
04:24:06 <shachaf> OK, it's discussed in comments there, I see.
04:24:36 <kmc> in britain they argue about whether "chav" is classist but not whether it's racist, 'cause chavs are white too
04:24:45 <kmc> also in britain they actually think about classism
04:24:54 <kmc> here in the USA we jump to racism even when the racial factor is an incidental correlate
04:25:06 <kmc> which is great for the racists in power by the way
04:25:15 <Bike> coppro: the stereotyping is what i meant. it's like how "schizophrenia" is used to refer to DID or "autism" means Rain Man. I just don't know much about OCD 'cos I don't have it :/
04:25:17 <coppro> OCPD I suppose can also be mistaken for OCD due to the stereotype
04:25:20 <kmc> really great for the oligarchy in general
04:26:19 <coppro> but the primary OCD stereotype (performing certain actions irrationally), in my experience, is not found in OCPD sufferers, and people who refer to it simply don't know that OCPD exists
04:26:21 <kmc> ugh that shitty show on FOX where kiefer sutherland's autistic kid has MAGIC POWERS! and saves the world in 44 minutes every time
04:26:32 <coppro> Bike: I have neither, but I have had girlfriends with both.
04:26:33 <kmc> they had a Magic Negro too
04:26:37 <coppro> (not at once)
04:26:43 <kmc> i think that show was pretty close to a Media Representations Studies bingo card
04:26:44 <Bike> haha.
04:26:59 <Bike> kmc: wow, what the fuck?
04:27:34 <kmc> to be fair they do portray him as a really hard kid to deal with and not /just/ a special magical snowflake
04:28:40 <kmc> coppro: interesting
04:28:51 <kmc> this is like swearing being the stereotypical manifestation of tourette's
04:29:06 <coppro> OCD is really really distinctive
04:29:56 <coppro> from my experience, OCPD is more like someone who has a really precise view of how things should be and can get somewhat easily upset when that view is violated
04:30:05 <coppro> (often at the person upsetting the view)
04:30:44 <Bike> I suppose I should read my friend's posts on what having OCD is like to be less of an ass in the future
04:30:53 <Jafet> OCPD is the television stereotype of OCD
04:31:14 <coppro> Jafet: Not even.
04:31:26 <Bike> i think that's what coppro's been saying isn't true for a few minutes now, jafet
04:32:00 <coppro> Jafet: Because OCPD sufferers don't do have irrational compulsions, and a few of those (like counting) are part of the OCD stereotype
04:32:05 <coppro> *don't have
04:32:25 <Jafet> Okay
04:32:36 <Jafet> So, it's possible for someone to have OCD and OCPD simultaneously
04:32:39 <coppro> in theory
04:32:44 <coppro> I can't imagine what that would be like, though
04:33:03 <oerjan> obsessive stereotype disorder
04:33:05 <coppro> One of the characteristics of OCD is that the sufferer usually is aware that the compulsions are irrational
04:33:07 <Bike> well, OCPD is a personality disorder, they're in totally different clusters
04:33:22 <coppro> by contrast, OCPD tends emphatically not to have that
04:33:31 <coppro> so the two combined would be... interesting
04:33:40 <kmc> do you have experience in clinical psychology, coppro?
04:33:40 <Bike> distressing.
04:33:52 <Bike> girlfriends, even better
04:33:53 <coppro> kmc: no, this is personal experience
04:33:57 <Jafet> Well, someone could perceive their tidiness as normal, and their habits as unnatural
04:34:01 <kmc> Bike: -_-
04:34:04 <coppro> Jafet: yes, it's true
04:34:13 <Bike> kmc: (it's what he said earlier)
04:34:23 <coppro> But tidiness can be a symptom both of OCD and OCPD, but with different root causes
04:34:27 <coppro> hang on a sec
04:36:14 <Bike> having close contact with someone with a mental disorder is probably the second best way to learn about it, though
04:36:41 <GreyKnight> The "hipster racism" article was a bit confusing in places, mostly due to stuff that probably makes sense to Americans. I don't like the writing style though.
04:37:37 <coppro> Bike: In OCD's case, third best after having it. Probably not the same for OCPD though.
04:37:57 <kmc> oh boy is it time for a game of Ask an American?
04:38:00 -!- TeruFSX has joined.
04:38:15 <Bike> yeah, having it doesn't seem to do much good, but i suppose it's different if your problem isn't based on denying you have a problem
04:38:18 <kmc> i enjoy answering questions about my weird country
04:39:14 <kmc> GreyKnight: yeah the writing style is not the best, I think it's trying pretty hard to capture the attention of people who are indifferent or hostile to the message
04:39:18 <GreyKnight> I kind of don't really want to know :-U
04:39:32 <kmc> oh but i'm curious about what was confusing :(
04:39:33 <kmc> oh well
04:39:44 <GreyKnight> (every time I play Ask An American I usually go away with a sadface)
04:40:08 <Bike> asking about institutional prejudice will surely be different!
04:40:24 <GreyKnight> A cheery subject if ever I heard one
04:40:33 <Bike> well, cultural prejudice really
04:40:46 <kmc> let's say little of column A, little of column B
04:42:00 <shachaf> I found the article pretty annoying even though I don't think I disagree with the basic point it's trying to make.
04:42:45 <Bike> that happens with jezebel a lot, I think.
04:43:03 <shachaf> In my limited experience, yes.
04:43:05 <GreyKnight> The name of the site doesn't really inspire confidence :-U
04:43:12 <kmc> there are probably better articles
04:43:20 <kmc> that's just the first one that comes up, and does explain what the basic problem is
04:43:31 <Bike> GreyKnight: eh?
04:44:23 <GreyKnight> Jezebel (the famous one, anyway) was a fairly unpleasant and vicious person
04:45:29 <GreyKnight> "cross me and I'll destroy your character and maybe kill you if you're lucky" sort of thing
04:46:01 <Bike> I would guess that it's named after the negative epithet for women, but i haven't checked...
04:47:04 <GreyKnight> hm well that comes from the same source I guess
04:47:16 <Bike> probably. but in a higher degree.
04:47:37 <GreyKnight> (she was also famous for being a bit overly fond of her appearance)
04:51:58 <GreyKnight> maybe they are trying to do the "turn it into a positive term" thing? I can't say it seems like a good idea, some things should just be thrown away and not recycled :-/
04:52:34 <Bike> I'm kind of surprised that you think of the Biblical figure instead of the insult first. That's new to me.
04:52:53 <shachaf> I am not aware that it's an insult.
04:53:01 <Bike> hmmmmm.
04:53:03 <shachaf> I knew a cat by that name, and she was a nice cat.
04:53:03 <Bike> @wn jezebel
04:53:04 <lambdabot> *** "jezebel" wn "WordNet (r) 3.0 (2006)"
04:53:04 <lambdabot> Jezebel
04:53:04 <lambdabot> n 1: wife of Ahab who was king of Israel; according to the Old
04:53:04 <lambdabot> Testament she was a cruel immoral queen who fostered the
04:53:04 <lambdabot> worship of Baal and tried to kill Elijah and other prophets
04:53:05 <Jafet> Who knows, they might be jez ebel to do it.
04:53:06 <lambdabot> of Israel (9th century BC)
04:53:08 <lambdabot> 2: a shameless impudent scheming woman
04:53:13 <Bike> Guess I lose!
04:53:16 <GreyKnight> maybe it's more common in Bikeland?
04:53:30 <Bike> I've been reading too many old books.
04:53:38 <kmc> i didn't know that it was an insult either, though i would have guessed
04:53:43 <GreyKnight> maybe not old enough :-)
04:54:14 <Bike> I don't actually remember what Jezebel did anyway, it's been forever since i read any of the OT
04:54:21 <kmc> perhaps it has to do with the fact that women who demand equal treatment are seen as impudent and scheming
04:54:28 <kmc> perhaps it's just a cool sounding word
04:54:48 <kmc> i looked on their site for a bit about the name but rapidly ran out of give-a-fuck
04:54:59 <Bike> yeah their wikipedia article is pretty unhelpful too
04:55:31 <shachaf> "people of color" is an irritating phrase.
04:55:51 <Bike> why?
04:56:02 <GreyKnight> I read it as "non-albinos" :-U
04:56:16 <shachaf> Imagine that I declared that every apple that isn't green is an "apple of color".
04:56:21 <Bike> man, things are really different outside of the US.
04:56:45 <Bike> well, no, "white is also a color!" is a thing here, maybe i'm just not used to it yet
04:57:21 <GreyKnight> Bike: well, also in actual use it seems to basically lump together lots of unrelated groups into "non-whites"
04:57:28 <GreyKnight> which is presumably not the intent but is still kind of uh when you realise it
04:57:33 <shachaf> Bike: I'm not sure what you mean.
04:57:35 <Bike> no, that's the intent
04:57:44 <kmc> in the USA politicians love to stereotype by race
04:57:56 <Bike> it's supposed to unify the various groups hurt by racial oppression (in the US)
04:58:00 <kmc> say something about immigration in spanish, there, you've checked off "the Hispanic vote" and can go back to ignoring them
04:58:04 <Bike> which is, well, non-whites.
04:58:21 <Bike> shachaf: Dunno, just that learning about the NAACP in history class the name never bothered me.
04:58:24 <kmc> never mind that some of those people are illegal immigrants and some of them are upper middle class third generation americans
04:59:04 <GreyKnight> Bike: Huh. You would get weird looks using terminology like that round here really (disclaimer: I haven't tried).
04:59:37 <Bike> I think it's mostly seen as a bit old-fashioned.
05:00:13 <GreyKnight> I kind of want to see a native American running for president sometime on a "let's get rid of all the immigrants" platform. But it turns out he means ALL! (this is kind of lulzy)
05:00:20 <Bike> Especially since racism is over now and all.
05:02:52 <kmc> i enjoyed http://jezebel.com/5959154/is-america-ready-for-a-white-male-secretary-of-state
05:03:26 <GreyKnight> that picture is going to give me nightmares
05:03:42 <GreyKnight> the chin... the chin... it comes...
05:03:47 <Bike> whoa, it's like an onion article :D
05:03:49 <kmc> :D
05:03:59 <Bike> though even less subtle, somehow
05:06:11 <GreyKnight> TL;DR
05:06:45 <Bike> it's basically just taking the usual "is America ready for a [minority] [governmental position]" articles and turning it around
05:07:04 <GreyKnight> actually I stopped reading the Onion for similar reasons, I guess I want my jokes in snappy soundbites these days
05:07:45 <GreyKnight> I don't even *own* an ipod!
05:07:47 <kmc> "How can we hope to maintain healthy relationships with our European allies when John Kerry can't sit in a sauna with Angela Merkel, Danish Prime Minister Helle Thorning-Schmidt, Lithuanian President Dalia Grybauskaitė, and Jóhanna Sigurðardóttir, the Prime Minister of Iceland?"
05:08:18 <Bike> Didn't Sigurðardóttir get impeached or something?
05:08:37 <Bike> oh, apparently not.
05:08:38 <oerjan> no that was the president, i think, who was male
05:09:07 <GreyKnight> actually wait I have one of the wee square ones with no screen (I didn't pay money for it mind)
05:09:10 <kmc> ♥ iceland
05:09:31 * GreyKnight has no idea what a country does with both a Prime Minister *and* a President
05:09:35 <oerjan> hm wait no prime minister, but the previous one
05:09:36 <Bike> "He has served as President since 1996; he was unopposed in 2000, re-elected for a third term in 2004, re-elected unopposed for a fourth term in 2008 and re-elected for a record fifth term in 2012" hm
05:09:39 <quintopia> what kmc said
05:09:40 <Bike> Ah.
05:09:48 <kmc> i should go back
05:09:56 <quintopia> how can you not love a place with such an awesome language
05:10:00 <oerjan> http://en.wikipedia.org/wiki/Geir_Haarde
05:10:04 <quintopia> i'll go with you
05:10:09 <coppro> GreyKnight: you should read up more about how government works, then
05:10:12 <coppro> it's quite sensible
05:10:12 <Bike> Do you speak Icelandic?
05:10:25 -!- hagb4rd has quit (Ping timeout: 256 seconds).
05:10:33 <quintopia> i speak english, which is practically the same thing
05:10:36 <GreyKnight> coppro: I know how government works, just not that type of government
05:11:03 <Bike> it's a pretty common type of government...
05:11:30 <coppro> GreyKnight: I mean government generally
05:11:30 <Bike> "The Landsdómur is a special high court in Iceland which was established in 1905" "The court has assembled for the first time in 2011" I like it!
05:12:17 <GreyKnight> I don't know how general governance can shed any light on something that specific to a particular model...
05:12:23 <kmc> https://www.youtube.com/watch?v=MADc0vCd52o
05:12:40 <Bike> GreyKnight: head of state and head of government, it's pretty general
05:12:58 <quintopia> i think iceland should go back to their old form of government :D
05:13:15 <GreyKnight> A better idea would be to learn more about that particular kind of government
05:13:15 <GreyKnight> However I am already reading about other things
05:13:16 <quintopia> they hold a thing every year and this time, they invite the world
05:13:17 <Bike> You mean the one libertarians love?
05:13:24 <kmc> vikings?
05:13:24 <Bike> Oh, that.
05:13:39 <Bike> quintopia: Apparently their parliament is still called the Althing!
05:13:48 <coppro> GreyKnight: no, learn about government generally
05:13:59 <coppro> GreyKnight: Because then the system makes sense and you have learned more
05:14:04 <quintopia> Bike: but its not the same !!!!
05:14:34 <Sgeo> elliott, monqy Fiora
05:14:39 <Bike> quintopia: it's those damn new "christian" people, making all them newfangled governments everywhere
05:14:50 <kmc> christiania
05:14:51 <GreyKnight> nope :-U
05:14:52 <GreyKnight> Bike almost clarified it (he didn't specifically mention that President is head of state but I assume this one)
05:15:00 <kmc> no Thursday without Thor!
05:15:07 <kmc> or should I say Þor?
05:15:29 <GreyKnight> So you see now I understand and didn't need to learn any generalities. Only a specific thing, like I said.
05:15:55 <Bike> governmental category theory: something that needs to exist
05:16:15 <GreyKnight> \o/
05:16:30 <GreyKnight> hmm I might give a happy \o/ as well since Þ is my second-favourite letter. But not sure. Also I am beginning to sound like zzo38 for some reason.
05:16:53 <oerjan> kmc: Þór
05:16:57 <kmc> ah
05:17:05 <kmc> thørjan
05:17:24 <oerjan> norwegian doesn't have Þ for what it's worth
05:17:38 <oerjan> _our_ parliament is called the Storting.
05:17:40 <kmc> takørjan?
05:17:56 <Bike> oerjan: cognate?
05:18:30 <oerjan> Bike: sure, both are from the same old norse concept
05:18:39 <kmc> yeah, thing / þing / ding / ting is a germanic word for a governing assembly
05:18:42 <Bike> yay
05:19:03 <coppro> GreyKnight: where are you from?
05:19:08 <kmc> iceland has the Alþingi which is the oldest extant parliamentary institution in the world
05:19:17 <kmc> first held outside in 930 AD
05:19:32 <Bike> do they still hold it outside
05:19:36 <kmc> no
05:19:49 <Bike> :(
05:19:58 <kmc> they have a nice little house in reykjavík
05:20:09 <GreyKnight> coppro: Norn Iron
05:20:16 <kmc> http://en.wikipedia.org/wiki/Al%C3%BEingish%C3%BAs
05:20:22 <oerjan> iirc it's a surprisingly small house
05:20:24 <kmc> the Alþingishúsið
05:20:30 <Bike> It's just not the same
05:20:32 <kmc> yes, on the other hand it's a surprisingly small country
05:20:36 <Bike> Oh, that is pretty small.
05:21:11 <kmc> it's probably incorrect to anglicize đ as d isn't it
05:21:47 <Bike> Wait, what's the difference between đ and ð
05:22:02 <kmc> oh i typed the wrong one
05:22:30 <Bike> oh, they're just totally different letters. cool
05:22:31 <kmc> how the bloody hell do i type ð
05:22:39 <kmc> yeah i don't think đ is in icelandic
05:22:40 <Bike> altgr-d here
05:22:44 <kmc> don't have an altgr
05:22:49 <kmc> got a compose key instead
05:22:49 <oerjan> http://en.wikipedia.org/wiki/Turkish_Abductions
05:23:05 <GreyKnight> idea: USB AltGr key
05:23:11 <Bike> compose þ d, clearly
05:23:17 <GreyKnight> just plug it in and enjoy the wonders of AltGr
05:23:22 <kmc> GreyKnight: brushed metal, sell it for $50 to mac users
05:23:32 <coppro> GreyKnight: what
05:23:39 <coppro> northern ireland?
05:23:46 <shachaf> kmc: It seems that my uncle is moving to the Bronx.
05:23:52 <GreyKnight> possibly with a soft backlight
05:23:52 <GreyKnight> coppro: http://en.wikipedia.org/wiki/Norn_Iron
05:24:08 <shachaf> I'll have to find a new transportation route!
05:24:10 <Bike> why does vietnamese of all things have đ... which, of course, I don't know how to type
05:24:20 <GreyKnight> it's pronounced "Norn Iron" akshully
05:24:41 <kmc> because tiếng Việt has every latin diacritic as a matter of principle
05:24:55 <Bike> hm i should look up who the hell designed modern vietnamese
05:25:02 <GreyKnight> including stacking them high, apparently
05:25:23 <Bike> i'm guessing somebody french. i will blame the french for the machine-gunned-looking alphabet
05:25:47 <GreyKnight> designed by Pierre Q. Diacritic
05:26:03 <kmc> friedrich h. coca-cola
05:26:12 <GreyKnight> I mean er Pierre Q. Díäcrìtĩc
05:26:30 <Bike> "It is based on the Latin script (more specifically the Portuguese alphabet[1])" gah
05:26:58 <GreyKnight> Portugal is *like* France
05:27:34 <Bike> I keep forgetting that Portugal did things on the world stage back in the day. Imperializing shit all over the damn place I tells ya.
05:27:40 <kmc> yep
05:27:54 <kmc> they had a peace treaty with Spain mediated by The Freaking Pope
05:28:01 <Bike> I just thought "oh, france, they killed vietnamese people for a few decades, i can probably blame them right"
05:28:42 * GreyKnight imagines The Freaking Pope is an actual title due to capitalisation
05:28:53 <Bike> oh, christian missionaries. that's pretty obvious really.
05:28:59 <kmc> or as he's known today, @pontifex
05:29:07 <Bike> ". These informal efforts led eventually to the development of the present Vietnamese alphabet, largely by the work of French Jesuit Alexandre de Rhodes" i am vindicated!
05:29:16 <kmc> somebody should make twitter accounts for historical psychotic-bastard-style popes
05:29:34 <Bike> alexander vi's is actually a sex tips blog
05:29:47 <GreyKnight> This might be the lack of sleep talking, but coproduct injections are pretty funny
05:30:13 <oerjan> `addquote <GreyKnight> This might be the lack of sleep talking, but coproduct injections are pretty funny
05:30:15 <kmc> nobody expects the cypriot injunction
05:30:19 <HackEgo> 900) <GreyKnight> This might be the lack of sleep talking, but coproduct injections are pretty funny
05:30:37 <kmc> i think the most abstract thing that i've found really hilarious is the proof of the law of the excluded middle using continuations
05:30:51 <GreyKnight> I haven't seen that
05:30:55 <shachaf> That's a nice proof.
05:31:04 <shachaf> I remember when kmc explained it in #haskell.
05:31:06 <shachaf> "back in the day"
05:31:48 <GreyKnight> is there a link for it?
05:31:53 <Bike> http://en.wikipedia.org/wiki/Dictionarium_Annamiticum_Lusitanum_et_Latinum So, end blame: France. And cointuitionistic proofs or something something
05:32:05 <kmc> GreyKnight: basically, you claim "A is false", i.e. "A -> Void", and then when somebody calls your bluff by calling that function with a value of type A, you use the continuation to go back in time and claim that A was true all along, with their value as evidence
05:32:57 <GreyKnight> :-D
05:33:33 <GreyKnight> proof by virtue of I'm always right even if I have to mangle the spacetime continuum to pull it off
05:33:35 <kmc> in pseudo-haskell: callCC (\k -> Left (\v -> k (Right v)))
05:33:47 <oerjan> :t callCC (\k -> Left (\v -> k (Right v)))
05:33:49 <lambdabot> Occurs check: cannot construct the infinite type:
05:33:49 <lambdabot> t0 = Either (b1 -> t0) b0
05:33:49 <lambdabot> In the return type of a call of `k'
05:33:56 <oerjan> FOUL
05:33:57 <shachaf> kmc: Did you see Oleg's DNE thing, by the way?
05:34:03 <kmc> <kmc> in pseudo-haskell
05:34:06 <Jafet> @quote oleg
05:34:06 <lambdabot> oleg says: Unfortunately, once it became clear that the ideas are working out, the motivation fizzled.
05:34:13 <Jafet> @quote Oleg
05:34:13 <lambdabot> Oleg says: We show how to program with the law of excluded middle. We specifically avoid call/cc, which is overrated.
05:34:15 <kmc> it ignores the fact that continuations are not functions, for clarity
05:34:20 <GreyKnight> oerjan: we need pseudolambdabot for this one
05:34:44 <shachaf> kmc: You can write a function :: forall a. (forall m. Monad m => ((a -> m F) -> m F)) -> a
05:34:48 <shachaf> Where F is Void
05:35:00 <kmc> neat
05:35:04 <oerjan> :t \k -> Left (\v -> k (Right v)))
05:35:06 <lambdabot> parse error on input `)'
05:35:11 <oerjan> :t \k -> Left (\v -> k (Right v))
05:35:13 <lambdabot> (Either a b1 -> t) -> Either (b1 -> t) b
05:35:18 <shachaf> That gives you an actual a in the end, not that weak (a -> r) -> r nonsense.
05:35:26 <shachaf> We show how to program with the law of excluded middle. We specifically avoid call/cc, which is overrated.
05:35:35 <kmc> :t callCC (\k -> return (Left (\v -> k (Right v))))
05:35:36 <lambdabot> MonadCont m => m (Either (b1 -> m b) b1)
05:35:40 <shachaf> http://okmij.org/ftp/Computation/lem.html
05:35:44 <shachaf> @ty callCC (return . fix)
05:35:45 <lambdabot> MonadCont m => m (m b)
05:35:52 <oerjan> oh right
05:36:01 <shachaf> @let getCC = callCC (return . fix)
05:36:01 <kmc> :t callCC (\k -> return (Left (k . Right)))
05:36:03 <lambdabot> MonadCont m => m (Either (b1 -> m b) b1)
05:36:03 <lambdabot> Defined.
05:36:07 <shachaf> getCC is great.
05:36:12 <kmc> :t getCC
05:36:14 <lambdabot> MonadCont m => m (m b)
05:36:23 <shachaf> It gives you the current continuation.
05:36:24 <kmc> neat
05:36:34 <GreyKnight> madness
05:36:34 <shachaf> It's more powerful than callCC, of course.
05:36:41 <shachaf> You can do infinite loops and things with it.
05:36:45 <kmc> :t do { k <- getCC; k 3 }
05:36:46 <lambdabot> (Num a, MonadCont ((->) a)) => a -> b
05:36:47 <shachaf> (That's why you need fix to define it.)
05:36:48 <Bike> more powerful...?
05:36:58 <GreyKnight> How about a nice juicy shift/reset pair?
05:37:15 <kmc> you can't return things, though?
05:37:20 <kmc> i mean there's no way to get a 'b' in
05:37:43 <shachaf> Cont on its own is maybe not as interesting as ContT with something else.
05:37:56 <shachaf> k <- getCC gives you a sort of goto label.
05:37:56 <GreyKnight> perhaps shachaf means "more powerful" to be "differently powerful"
05:38:11 <shachaf> You can then use the action it gives you to jump back to that point.
05:38:45 <shachaf> It's not very interesting from the logic perspective, as far as I can tell. :-)
05:39:00 <shachaf> I think monochrom wrote about it.
05:39:04 <shachaf> @google trebla callCC
05:39:05 <lambdabot> http://www.vex.net/~trebla/haskell/cont-monad.xhtml
05:40:45 <shachaf> You can probably extend this to passing information without too much trouble.
05:41:29 <GreyKnight> left as an exercise for the reader
05:41:58 <shachaf> It's basically just trivial.
05:42:45 <GreyKnight> `quote 144
05:42:47 <HackEgo> 144) <fizzie> It's like mathematicians, where the next step up from "trivial" is "open research question". <fizzie> "Nope... No...This problem can't be done AT ALL. This one--maybe, but only with two yaks and a sherpa. ..."
05:46:17 <kmc> i see
05:47:52 <Bike> So where does a research question about making proving identities trivial fall
05:48:31 <kmc> you need those yaks for the yak wool
05:48:36 <shachaf> The law of excluded middle states that every proposition is either trivially true or trivially false.
05:48:51 <GreyKnight> Bike: I'd answer your query, but unfortunately that's an open research question.
05:49:15 <Bike> That doesn't mean that you shouldn't answer, just that your answer will be a great publishing opportunity.
05:49:26 <GreyKnight> shachaf: TLDR all mathematics is useless, let's go to the beach QED
05:49:44 <oerjan> shachaf: checkmate intuitionists!
05:49:47 <Bike> that's an actual position, you know (except less caricatured)
05:50:13 <GreyKnight> which "that"?
05:50:33 <Bike> all propositions are trivially true or false, therefore lolmath
05:50:49 <Bike> unfortunately i forget the name because "trivialism" is something else entirely
05:50:53 <GreyKnight> There should be a "No Pronouns Day". No Pronouns Day would be a good time, I think. I would enjoy No Pronouns Day.
05:50:55 <kmc> "For each problem in section B, either prove that the problem is in P or that it's NP-complete. (Extra credit for doing both.)"
05:51:06 <Jafet> GreyKnight: you?
05:51:28 <oerjan> GreyKnight: I wouldn't be around to enjoy No Pronouns Day, duh
05:51:36 <Bike> kmc: lol.
05:51:49 <Jafet> Which webcomic is "checkmate" from
05:52:06 <Bike> I thought "checkmate atheists" was just a meme.
05:52:12 <coppro> Jafet: chess?
05:52:32 <GreyKnight> oh poop
05:52:36 <Jafet> Oh, it's not from a webcomic
05:52:39 <shachaf> Free monads are also "pretty nifty??"
05:52:42 <kmc> http://knowyourmeme.com/memes/checkmate-atheists
05:52:48 <kmc> shachaf: you get what you pay for
05:52:58 <GreyKnight> related: http://pbfcomics.com/99/
05:53:01 <shachaf> kmc: What about cofree comonads?
05:53:03 <oerjan> kmc: hey no fair i was going to link that
05:53:11 <shachaf> edwardk likes those, I think.
05:53:50 <coppro> why is homestuck so great lately
05:53:59 <Bike> Aw, "checkmate" was a joke. Well, at least I have Atheist Nightmare to keep me warm
05:54:09 <oerjan> kmc: except, um, that page sucks, it doesn't explain anything
05:54:57 <kmc> i like http://knowyourmeme.com/memes/good-guy-lucifer
05:55:30 <Bike> I should check to see if their Ron Paul article has gotten less hilarious.
05:55:40 <kmc> ron paul: apply directly to the forehead
05:56:23 <Bike> "On February 22nd, 2012, opponent Rick Santorum aggressively shook Paul’s hand during the GOP candidate debate." ehhhh not quite the same
05:56:32 <Bike> "The week before the caucus, Paul had the most Twitter mentions as well as the most new YouTube subscribers."
05:56:49 <oerjan> kmc: oh wait, i got the wrong page
05:57:30 <Bike> http://i1.kym-cdn.com/photos/images/masonry/000/228/139/18qv.jpg now we're talkin'.
06:02:15 -!- TeruFSX has quit (Ping timeout: 276 seconds).
06:09:28 <Bike> so, i'm readng chaitin's book on the diophantine thing, and he uses lisp with single-character variable names, in APL's character set. is there a reliable test to see if i'm actually in some caricatured hell?
06:09:52 <coppro> `quote < Bike> so, i'm readng chaitin's book on the diophantine thing, and he uses lisp with single-character variable names, in APL's character set. is there a reliable test to see if i'm actually in some caricatured hell?
06:09:53 <HackEgo> No output.
06:10:10 <oerjan> coppro: WRONG FORMAT
06:10:22 <oerjan> also wrong command
06:11:06 <Bike> what is the right format
06:11:12 <coppro> `addquote <Bike> so, i'm readng chaitin's book on the diophantine thing, and he uses lisp with single-character variable names, in APL's character set. is there a reliable test to see if i'm actually in some caricatured hell?
06:11:16 <HackEgo> 901) <Bike> so, i'm readng chaitin's book on the diophantine thing, and he uses lisp with single-character variable names, in APL's character set. is there a reliable test to see if i'm actually in some caricatured hell?
06:11:16 <coppro> happy?
06:11:19 <coppro> `quote
06:11:20 <HackEgo> 882) <kmc> i bet a blog post complaining about ");});});" syntax in JavaScript and comparing it unfavorably to Lisp would get approximately one billion comments on hacker news <Bike> but at what cost? your very soul, kmc!
06:11:24 <oerjan> HAPPY HAPPY
06:11:26 <Jafet> !oerjan addquote < Bike> so, i'm readng chaitin's book on the diophantine thing, and he uses lisp with single-character variable names, in APL's character set. is there a reliable test to see if i'm actually in some caricatured hell?
06:11:27 -!- copumpkin has quit (Ping timeout: 252 seconds).
06:11:32 <Bike> two quotes? wow i'm internet famous
06:11:38 <coppro> no just one
06:11:39 <coppro> `quote
06:11:41 <HackEgo> 634) <olsner> characters in tv series should learn to check the timestamp before they get their hopes up... *no chance* this will work at 10 minutes into the episode
06:11:44 <Bike> :(
06:11:47 <coppro> you are not allowed to be internet famous
06:11:57 <coppro> `quote
06:11:59 <HackEgo> 40) <Deewiant> I spent the last minute or so killing myself repeatedly
06:12:05 <coppro> ooh, I like that one
06:12:08 <coppro> btw
06:12:14 <coppro> we are approaching the 10th (!) anniversary of logs
06:12:23 -!- copumpkin has joined.
06:12:28 <Bike> is there gonna be a party?
06:12:35 <coppro> yes
06:12:44 <coppro> will you stand as a candidate in your home riding?
06:12:48 <monqy> will it be a good party or a bad party
06:12:50 <Bike> hm, at least he uses lexical scope. small mercies
06:12:52 <Bike> what's a riding
06:13:21 <coppro> http://en.wikipedia.org/wiki/Electoral_district_(Canada)
06:13:24 <kmc> when-it's-time-to-party-we-will-party-hard
06:13:24 <oerjan> monqy: it will be a caricatured hell party. this does not answer your question.
06:13:28 <kmc> ♫ [HEAD BANGING] ♫
06:13:50 <GreyKnight> like a march, only different
06:14:13 <Bike> coppro: Can I stand as a candidate in my home circonscription? That sounds, like, totally cooler.
06:14:50 <coppro> Bike: ok
06:15:24 <GreyKnight> ⍞ PARTY HARD ⍕
06:15:27 <Bike> haha, no dotted pairs either
06:15:47 <kmc> what are those characters?
06:15:48 <oerjan> party hard, let's go shopping
06:16:05 <Bike> kmc: APL FUNCTIONAL SYMBOL QUOTE QUAD etc
06:16:18 <Bike> GreyKnight: the latter is eval, apparently
06:16:22 <Sgeo> Bike, who is "he"
06:16:32 <GreyKnight> kmc: quote quad and format
06:16:43 <Bike> Sgeo: chaitin
06:16:53 <GreyKnight> no execute is ⍎
06:17:04 <coppro> ok
06:17:08 <coppro> kmc: you are american
06:17:12 <coppro> what is the past tense of kidnap
06:17:15 <Bike> sorry you're wrong greyknight i've got the book like right here
06:17:20 <Sgeo> Bike, better yet: Link?
06:17:29 <Bike> Um, I think I pirated this? I forget.
06:17:30 <oerjan> kidnoop
06:17:40 <Sgeo> Oh, wait, are you actually talking about Chaitin of Chaitin's constant defining a Lisp?
06:17:47 <Jafet> coppro: stockholmed
06:17:52 <Bike> well, yes, is there another one
06:17:56 <coppro> kmc: also panic
06:18:07 <Bike> (i suppose there is. I don't know much about... shit i don't even know where he's from. argentina?)
06:18:17 <Bike> Sgeo: the book is "Algorithmic Information Theory", boringly enough
06:18:31 <Sgeo> Why am I surprised that he's still around
06:18:32 <Sgeo> ?
06:18:36 <Bike> This is pretty old.
06:18:43 <Bike> Nowadays he's busy being insane. "metabiology"
06:19:08 <Bike> GreyKnight: apparently in his thing ⍎ is eval with timeout. The More You Know.
06:19:35 -!- oerjan has quit (Quit: ZZZ).
06:20:47 <GreyKnight> Bike: which book? Perhaps this is a point of variance between APLs (?)
06:20:58 <kmc> coppro: kidnapped? paniced?
06:21:19 <Bike> GreyKnight: I wasn't kidding when I said he was using Lisp but with one character names in APL characters.
06:21:30 <Jafet> @wn panicked
06:21:30 <lambdabot> *** "panicked" wn "WordNet (r) 3.0 (2006)"
06:21:31 <lambdabot> panicked
06:21:31 <lambdabot> adj 1: thrown into a state of intense fear or desperation;
06:21:31 <lambdabot> "became panicky as the snow deepened"; "felt panicked
06:21:31 <lambdabot> before each exam"; "trying to keep back the panic-
06:21:32 <lambdabot> [3 @more lines]
06:21:46 <Bike> GreyKnight: if you gimme the del character real fast i can give you a code sample.
06:22:24 <coppro> it's kind of crazy that no verb fails to have the "ing" form for the progressive aspect
06:22:34 <GreyKnight>
06:23:04 <Bike> coppro: really, none?
06:23:14 <coppro> not a one
06:23:24 <coppro> not even "be", which is the most irregular verb by far
06:23:27 <GreyKnight> Oh so you're not actually in APL? Your characters may mean something different then, perhaps Chaitin got mixed up himself :-)
06:23:39 <Bike> GreyKnight: (⍎('(1))('(('(∇(x)x))a)))
06:23:41 <coppro> (it has three forms more than any other verb)
06:23:58 <coppro> "be" "is" "are" "were" "was" "being" "been" "am"
06:23:59 <monqy> Bike: nasty
06:24:18 <Bike> bonus: (∇(x)x) is actually a lambda expression
06:24:53 <GreyKnight> so he uses ⍎ for eval?
06:25:17 <Bike> Eval with timeout. The first argument, i.e. ('(1)), means to halt the eval if a second function application is hit.
06:25:27 <Bike> (there are no actual numbers)
06:25:29 <Bike> (fuck)
06:26:33 <GreyKnight> does ('(1)) break down into something meaningful or is it a magic incantation?
06:27:06 <Bike> It's an encoded numeral. One element list, so it means 1.
06:27:59 <GreyKnight> this looks wacky, I think I would need to read the book for context
06:28:04 <Bike> It doesn't really have anything to do with APL I think. He mentions it was "the biggest character set he could find" or something.
06:28:11 <GreyKnight> how did we get onto this
06:28:13 <GreyKnight> oh yeah
06:28:19 <Bike> Me! All me! Mwa hahahaha
06:28:51 <GreyKnight> as you can see I am not wrong B-)
06:29:22 <GreyKnight> "The biggest problem in communication is assuming it has taken place" :-D
06:29:27 <Bike> well, yeah. the closest i've gotten to APL is reading A Programming Language enough to be annoyed at one-indexed arrays, and staring at J's installer
06:31:48 <Bike> oh, wow, he actually uses "m-expressions" too. "wacky" is not enough for this.
06:32:29 <GreyKnight> 1-indexing is natural with mathematical matrices, APL arrays probably are genealogically closer to them than to "computer" arrays
06:32:53 * Sgeo should try to read about m-expressions
06:32:56 <GreyKnight> remember back when M-expressions where a thing
06:33:06 <GreyKnight> *were (kill me)
06:33:43 <GreyKnight> although fexprs are making a comeback so maybe M-expressions will too??
06:33:55 <Sgeo> Racket has support for "@-expressions"
06:34:00 <Sgeo> Not sure if that's the proper term
06:34:09 <Bike> GreyKnight: I know they are (re APL), i just found it annoying for bad reasons
06:34:24 <Bike> i should probably try the book again. i'm less shitty with matrices now, anyway.
06:34:33 <GreyKnight> compromise: 0.5-based arrays
06:35:49 <Bike> old joke
06:36:16 <shachaf> old Bike
06:36:42 <Bike> old chaf
06:36:45 <GreyKnight> ⍴⍴⍴Bike = 1
06:39:07 <coppro> ⍴⍴⍴reduce, gently down the stream
06:39:54 <GreyKnight> Rho, rho, rho of X // Always equals 1 // Rho is dimension, rho rho rank // APL is fun!
06:40:06 -!- GreyKnight has quit (Quit: ⍎fungot).
06:44:35 <coppro> you spent far too much time on that
06:44:48 <coppro> also you messed up the tune
06:45:12 <coppro> "row row row reduce // gently down the page // one mistake and you'll be baked // so check at ev'ry stage!
06:55:47 * Sgeo is currently strugging with how to provide functions non-statically
06:56:29 <Bike> what?
06:57:56 <Sgeo> As in, I evaluate with eval a define form that defines a function. How do I expose this function to other Racket modules
06:58:53 <Bike> you can't define toplevel (or uh modulelevel) functions in eval? that seems implausible
06:59:24 <Sgeo> When I tried, I got provide: not at module level in: (provide x)
06:59:42 <Sgeo> I can define them all right. Just not have them importable from the rest of Racket
07:00:26 <Sgeo> I don't really want it to be a one-way street, would be nice to write Racket code that could call Qoppa functions
07:00:39 <Bike> practical!
07:05:27 -!- esowiki has joined.
07:05:31 -!- esowiki has joined.
07:05:32 -!- esowiki has joined.
07:06:04 -!- esowiki has joined.
07:06:09 -!- esowiki has joined.
07:06:09 -!- esowiki has joined.
07:06:44 -!- esowiki has joined.
07:06:49 -!- esowiki has joined.
07:06:49 -!- esowiki has joined.
07:07:25 -!- esowiki has joined.
07:07:29 -!- esowiki has joined.
07:07:29 -!- esowiki has joined.
07:08:05 -!- esowiki has joined.
07:08:09 -!- esowiki has joined.
07:08:09 -!- esowiki has joined.
07:08:45 -!- esowiki has joined.
07:08:49 -!- esowiki has joined.
07:08:49 -!- esowiki has joined.
07:09:25 -!- esowiki has joined.
07:09:29 -!- esowiki has joined.
07:09:29 -!- esowiki has joined.
07:10:05 -!- esowiki has joined.
07:10:09 -!- esowiki has joined.
07:10:09 -!- esowiki has joined.
07:10:45 -!- esowiki has joined.
07:10:49 -!- esowiki has joined.
07:10:49 -!- esowiki has joined.
07:11:25 -!- esowiki has joined.
07:11:29 -!- esowiki has joined.
07:11:30 -!- esowiki has joined.
07:12:05 -!- esowiki has joined.
07:12:09 -!- esowiki has joined.
07:12:10 -!- esowiki has joined.
07:12:45 -!- esowiki has joined.
07:12:49 -!- esowiki has joined.
07:12:50 -!- esowiki has joined.
07:13:25 -!- esowiki has joined.
07:13:29 -!- esowiki has joined.
07:13:30 -!- esowiki has joined.
07:14:05 -!- esowiki has joined.
07:14:09 -!- esowiki has joined.
07:14:10 -!- esowiki has joined.
07:14:35 -!- esowiki has joined.
07:14:36 -!- glogbot has joined.
07:14:37 -!- glogbackup has left.
07:14:38 -!- EgoBot has joined.
07:14:39 -!- esowiki has joined.
07:14:40 -!- esowiki has joined.
07:16:30 -!- Gregor has joined.
07:21:19 -!- hagb4rd has joined.
07:24:43 <hagb4rd> @ask gregor can we add apps.google.com to the whitelist so hackego can fetch some services on it? also it would be cool if the result of fetch (the response itself) would be put out on the stdout enabling the user to pipe it to other shell progs. what do you think?
07:24:44 <lambdabot> Consider it noted.
07:24:49 <Sgeo> Bike, I think I have an answer, although it kind of sucks: Provide a function capable of reaching into the Qoppa environment for the specified function.
07:25:02 <Sgeo> require won't wor... I can make require work
07:25:06 <Bike> You're right, that does suck.
07:25:18 <Bike> Maybe #racket could tell you something better?
07:25:27 <Sgeo> n/m. I don't know if require can be made to work with that
07:25:54 <Sgeo> I asked on #racket , I think people are asleep
07:32:41 <Gregor> hagb4rd: `fetch has no whitelist, and currently sandboxed apps have no external access at all.
07:32:41 <lambdabot> Gregor: You have 1 new message. '/msg lambdabot @messages' to read it.
07:35:47 <hagb4rd> gregor: what do you mean by no external access at all? i just would like to use my own rest-services, serving json data for example.. and pipe them to other shell progs
07:36:05 <hagb4rd> but oerjan mentioned some restrictions
07:36:20 <hagb4rd> and whitelist
07:36:34 <Gregor> hagb4rd: There used to be an HTTP proxy with a whitelist.
07:36:39 <Gregor> There's not right now, I borked it.
07:36:49 <hagb4rd> aw ok
07:38:39 <hagb4rd> gregor: so, the other thing is the output itself. for now it returns the name of the file the response is saved to, right? but imho it'd be more efficient to directly push it to the stdout
07:39:12 <Gregor> hagb4rd: "stdout" doesn't make any sense. fetch doesn't run in the sandbox, and can't be used from the sandbox. It's totally isolated.
07:41:38 <hagb4rd> okay.. i'm not sure about the restrictions or conventions of that sandbox you're talking about. but it _would make sense_ to have the possibility of using external webservices.. don't see security risks there
07:43:28 <hagb4rd> but if i get you right fetch is one of hackegos special functions
07:43:48 <hagb4rd> not directly running the shell
07:43:50 <hagb4rd> right?
07:44:03 <hagb4rd> `ls bin
07:45:07 <hagb4rd> in the shell/sandbox
07:47:54 <hagb4rd> gregor: however the result of fetch is saved somewhere in that sandbox, isn't it?
07:49:16 <Gregor> Yes, it's definitely a good idea to have it possible to use external services, but that would have nothing to do with `fetch.
07:49:23 <Gregor> It is /designed/ to give such access, it's just broken.
07:49:29 <Gregor> Squeak enough and I may even fix it.
07:49:40 <hagb4rd> superb
07:49:43 <hagb4rd> thank you
08:04:15 <Sgeo> It almost makes sense though not being able to mutate the functions a module provides
08:04:21 <Sgeo> At least, in a static language it makes sense
08:05:01 <Bike> when you're at the repl defining functions, what module do they go in?
08:05:16 <Sgeo> I think those are in the top-level
08:05:19 <Sgeo> Outside of any module
08:13:20 -!- epicmonkey has joined.
08:19:39 -!- Taneb has joined.
09:07:07 -!- Bike has quit (Quit: leaving).
09:32:00 <Fiora> shachaf: that short story reminded me of Idoru for some reason
09:45:40 -!- nooga has joined.
09:56:18 -!- zzo38 has quit (Remote host closed the connection).
10:00:07 -!- AnotherTest has joined.
10:00:23 <AnotherTest> Hello
10:25:46 -!- Taneb has quit (Ping timeout: 255 seconds).
10:29:00 -!- Taneb has joined.
10:33:58 -!- monqy has quit (Quit: hello).
11:11:38 -!- sebbu2 has joined.
11:13:15 -!- sebbu has quit (Ping timeout: 260 seconds).
11:18:46 <Sgeo> http://www.reddit.com/r/ruby/comments/161mik/whys_site_is_back_up_link_to_discussion_on_hacker/
11:23:31 <AnotherTest> Why does everyone use DH instead of FHMQV?
11:24:21 <Sgeo> ?
11:25:08 <AnotherTest> note: dh = diffie-hellman, fhmqv = fully hashed menezes-qu-vanstone
11:25:28 <AnotherTest> I don't see any reason not to, considering performance and security
11:28:55 -!- Nisstyre-laptop has quit (Ping timeout: 240 seconds).
11:43:06 -!- VorpalPhone has joined.
12:07:54 -!- sebbu2 has changed nick to sebbu.
12:17:41 -!- Vorpal has joined.
12:24:24 -!- copumpkin has quit (Ping timeout: 272 seconds).
12:25:04 -!- copumpkin has joined.
12:41:51 <hagb4rd> sgeo: what is that boulvard talk you are linking to and _why?
12:43:25 <Sgeo> boulvard talk?
12:43:44 <hagb4rd> boulevard
12:44:03 <Sgeo> Could you repeat what I said, I'm not sure what you're referring to
12:44:16 <hagb4rd> <Sgeo>http://www.reddit.com/r/ruby/comments/161mik/whys_site_is_back_up_link_to_discussion_on_hacker/
12:44:53 <Sgeo> _why renewed his domain name and put a weird puzzle on it
12:45:25 <Sgeo> I have no idea what boulevard is or how (s)he/it comes into play
12:47:51 -!- nooodl has joined.
12:48:22 <hagb4rd> boulevard-talk is is another word for gossip
12:48:51 <hagb4rd> "Gossip is idle talk or rumor about the personal or private affairs of others. It is one of the oldest and most common means of sharing facts, views and slander. This term is used pejoratively by its reputation for the introduction of errors and variations into the information transmitted, and it also describes idle chat, a rumor of personal, or trivial nature."
12:49:24 <Sgeo> Ah
12:49:46 <Sgeo> Also, I managed to misread _why as asking why?
12:49:52 <Sgeo> That's disturbing on my part
12:50:03 <hagb4rd> that was kind of a word play ;)
12:50:06 <hagb4rd> i must admit
12:50:10 <Fiora> I still don't get the whole thing with _why
12:50:22 <Fiora> people trying to stalk him down and so on seemed incredibly creepy
12:59:10 <hagb4rd> http://upload.wikimedia.org/wikipedia/commons/thumb/e/e0/Hans_Weiditz09.jpg/800px-Hans_Weiditz09.jpg <-- this one is called "gossip women and the devil".. 16th century
12:59:53 <hagb4rd> yes ceepy is the right word i guess
13:04:22 <ais523> Fiora: that just happens to celebrities generally, I think
13:06:46 <hagb4rd> the dark side of fame
13:07:12 <Fiora> was he really that famous? I never even heard of him before the drama >_>;
13:08:20 <hagb4rd> me neither
13:10:01 <hagb4rd> that's why i orginally asked sgeo about his link. i thought it may be someone once hanging around here
13:10:37 <hagb4rd> or sth else related
13:10:49 <Sgeo> He was a famous Ruby person
13:11:16 <hagb4rd> fair enough
13:11:20 <hagb4rd> :p
13:11:36 <Fiora> clearly the problem is with the ruby fandom
13:12:58 <Taneb> I remember back when I was famous
13:13:53 <hagb4rd> ^rot13 Taneb
13:14:15 <hagb4rd> all bots are on strike
13:14:26 <Taneb> It's nothing that great
13:14:57 <hagb4rd> was trying to stalk your real identity
13:15:29 <Taneb> "Taneb" is a portmanteau of reverses of the first three letters of my name and my brother's name
13:15:47 <hagb4rd> cool.. pretty secure
13:16:03 <Taneb> My alt nick, "Ngevd", is my initials
13:16:21 <Taneb> Plus an E that was almost one of my initials
13:16:30 <Fiora> my name is... a fire emblem character whose name I liked
13:16:36 <Taneb> I live in the same town as elliott
13:16:49 <Taneb> Who I believe gets his nick from the fact that it's his name
13:17:20 <Sgeo> My nick is based off my first and last name
13:17:29 <Sgeo> Actually, I think these days my real name is rather public, so
13:17:45 <Taneb> Sgrawny Eomer
13:17:53 <Sgeo> Seth Gold
13:18:05 <Sgeo> It feels so weird to say that in cha
13:18:05 <Sgeo> chat
13:20:08 <hagb4rd> well it is. now you're not safe from all the gropies waiting outside your door
13:20:20 <hagb4rd> *groupies
13:21:56 <hagb4rd> though famous nerds don't have groupie fans i guess (not meaning you in first case sgeo :)
13:22:15 <Taneb> I'd hate to have gropies waiting outside my door
13:22:24 <Taneb> Actually...
13:22:29 <Taneb> I think that's happened
13:22:35 <shachaf> Fiora: Which short story? Chiang?
13:22:43 <Fiora> Yeah
13:22:49 <Fiora> the one you posted
13:22:53 <shachaf> I have not read Idoru.
13:23:11 <Fiora> it's basically about a japanese virtual super-idol that takes over pop culture I think
13:23:31 <Fiora> it's probably doubly wonderful reading it with modern context
13:23:44 <Fiora> given that the prediction (partially) came true
13:32:39 -!- VorpalPhone has quit (Quit: Bye).
13:37:47 <Taneb> Edvard Grieg looks like Mark Twain
13:37:50 <Jafet> Idoru!idoru@freenode/utility-bot/ex-server/idoru
13:40:04 <Jafet> I'm ambivalent about opengl 2+. On one hand, it doesn't do any matrix operations for you. On the other hand, I just figured out that my program doesn't need any matrix operations.
13:40:48 <Taneb> On the other hand, if I try to bend that far I will break...
13:40:55 <Taneb> On the other hand... there is no other hand.
13:40:56 <Taneb> No!
13:41:10 <Fiora> on the gripping hand!
13:41:23 <Jafet> On the other hand is my other hand
13:41:44 <Taneb> On the other hand is your foot. Would you please move it?
13:41:47 <hagb4rd> jafet: no matrix operations? how is that? how do you do transformations without matrix operations? and now don't say tensor-operations
13:42:12 <Jafet> My program just computes the texture.
13:42:18 <Taneb> quarternions?
13:42:51 <hagb4rd> jafet: back to the roots: what program are we talking about anyway?
13:42:55 <Jafet> I use opengl as a high-performance hardware-accelerated texture display platform.
13:43:12 <Sgeo> I could "easily" define a language that is just Racket except able to easily use Qoppa functions without wrapping the name in some function explicitely
13:43:30 <Sgeo> That's kind of a sucky way to approach interop though
13:43:32 <hagb4rd> interesting.. so in that case the transformations are just two-dimensional?
13:43:41 <Jafet> There are no transformations.
13:43:42 <Sgeo> Not interoping with Racket, but rather interoping with a Racket-like language
13:43:48 <Jafet> I just write one quad directly into screen space.
13:43:55 <Jafet> Or technically, clip space.
13:44:01 <hagb4rd> okay
13:44:16 <Sgeo> Wait, hmm, I have a "better" idea
13:44:35 <Jafet> @quote premature.general
13:44:35 <lambdabot> ksf says: ...premature generalisation is the root of all procrastination.
13:44:36 <Sgeo> A require transformer, that ... is that a legal way to write a require transformer
13:51:43 <Sgeo> Two plausible approaches: New language for interop with Qoppa, and require transformer that requires functions from Qoppa to be explicitly listed
13:53:44 <Sgeo> Hmm, the latter might not work so well
13:53:51 <Sgeo> require transformers are ... hmm
13:56:59 <Vorpal> hm, what sort of partition table is normally used on ARM based linux systems? I assume it isn't MBR-based, that seems silly
14:21:15 <fizzie> Some of them do GPT, I think.
14:22:02 <Vorpal> hm okay
14:23:31 -!- carado has joined.
14:33:58 <ais523> huh, why does the processor affect how the disk is partitioned?
14:43:14 <hagb4rd> sgeo: i don't know anything about racket, but why do you want to implement interop-ability from "within" and not by using a standard interface like a webservice? i don't see how you want to manage "real" interopability by not using services, and wonder if ever someone did this successfully
14:44:41 <Sgeo> It's like using a library. You don't make a webservice to use a library
14:45:00 <Sgeo> In Racket, you can make libraries and programs in different languages
14:45:06 <hagb4rd> ah ok
14:45:26 <hagb4rd> and.. does it work?
14:45:58 <hagb4rd> are they compiled to rudementary common language like the ILM code in .net?
14:46:28 <hagb4rd> or even down to assembler?
14:47:01 <Sgeo> They're compiled to Racket
14:47:08 <hagb4rd> maybe it's worth to give it a look..
14:47:17 <Sgeo> (approximately)
14:48:08 <shachaf> The toenails, on the other hand, never grow at all.
14:48:28 -!- impomatic has joined.
14:58:58 -!- mig22 has quit (Quit: mig22).
15:05:02 -!- Nisstyre-laptop has joined.
15:18:55 -!- TeruFSX has joined.
15:20:21 <elliott> quintopia: now I am tempted to fix all the american english elsewhere on that page :P
15:22:16 <Sgeo> If you like Kernel, maybe you'll love #%kernel!
15:22:27 <Sgeo> (Note: Kernel and #%kernel are unrelated)
16:02:05 -!- Nisstyre-laptop has quit (Quit: Leaving).
16:06:57 <Vorpal> hm, anyone know a good lightweight HTTP server that supports SSL and CGI (or SCGI, FastCGI, any of them will do)? With lightweight I mean really lightweight btw. Going to run it on an embedded linux system.
16:07:18 <Vorpal> won't need to be super fast, low memory usage is more important
16:09:58 <elliott> are you sure nginx isn't lightweight enough?
16:10:30 <Vorpal> elliott, no, I'm performing initial research. Since the hardware has not yet arrived, I can't yet test myself.
16:10:38 <elliott> thttpd might work, modulo bitrot
16:10:38 <Vorpal> Just trying to figure out what alternatives exist atm
16:10:46 <elliott> what embedded system is it out of curiosity
16:11:02 <Vorpal> elliott, RPi, but it will be running quite a few other things than just the web server
16:11:24 <elliott> pretty sure raspberry pi is more than capable of running something like nginx yeah
16:11:46 <elliott> its probably in the repos and stuff since it just uses debian?
16:11:51 <Vorpal> elliott, thing is, it will be handling torrents too (legal only of course), to an external usb disk. Pretty sure that will use up quite a few resources
16:12:09 <Vorpal> at the very least in the form of file cache
16:12:15 <elliott> legal only im sure
16:12:19 <Vorpal> indeed
16:12:32 <Vorpal> oh and openvpn, and irc bouncer.
16:12:32 <elliott> anyway that doesn't sound like the kind of thing that would differ between httpds
16:13:18 <Vorpal> hm? 512 MB RAM is not much when you are dealing with some multi-GB file downloads at the same time over torrent. That disk cache will be quite well used I suspect
16:13:29 <elliott> i mean
16:13:30 <Vorpal> but yeah I guess I'll start with ngnix and see how it works
16:13:39 <elliott> it doesn't sound like what webserver you use would really impact how bad that is
16:14:04 <Vorpal> well, it would possibly free up a few MB extra for other stuff. That was what I was considering
16:16:10 <Vorpal> ooh nginx has spdy support? Nifty.
16:17:10 <Vorpal> elliott, out of curiosity, what is your opinion on iptables, the various *bsd firewalls and so on? I heard a lot of people complaining about the complexity of iptables.
16:18:28 -!- KingOfKarlsruhe has joined.
16:18:56 <elliott> i literally know nothing about firewalls
16:19:03 <elliott> i have not done a single thing to solidity's
16:19:21 <Vorpal> solidity's?
16:19:26 <Vorpal> what's that
16:19:43 <elliott> esolangs.org server
16:19:46 <Vorpal> ah
16:20:19 <Vorpal> usually I just set up ufw these days. But I don't think that will be enough on the rpi, given how I want to handle OpenVPN.
16:20:40 <ais523> yeah, I just use ufw
16:20:46 <ais523> it's just a front end to iptables
16:20:52 <ais523> but a much neater one than iptables(8) itself
16:21:43 <Vorpal> ais523, any clue how messy it would be to mix in additional rules that ufw can't express, for marking packages (to be used by ip rule later on to use different routing tables for different stuff)
16:21:56 <ais523> Vorpal: probably messy enough that you shouldn't use ufw
16:21:57 -!- nooga_ has joined.
16:22:00 <ais523> it's not designed for that situation
16:22:02 <Vorpal> yeah I guess so
16:22:11 <Vorpal> but using raw iptables is fairly annoying
16:22:23 <Vorpal> s/packages/packets/
16:24:21 -!- nooga has quit (Ping timeout: 248 seconds).
16:25:51 <AnotherTest> old question from Vorpal: write a quick one. Keep it minimal and don't write it in a language that uses a lot of memory
16:26:18 <Vorpal> AnotherTest, write a quick web server on my own? Err, no thanks.
16:26:32 <Vorpal> too much work, I have better stuff to do
16:26:39 <AnotherTest> really not that much work
16:26:47 <ais523> if you don't care much about efficiency or features, web servers aren't hard to write
16:26:51 <Vorpal> AnotherTest, I need https, since I will access it from the public internet
16:27:04 <AnotherTest> Vorpal; use a library that handles HTTPS
16:27:04 <ais523> but the stock available ones will be much better than what you could quickly write on your own
16:27:07 <AnotherTest> like boost.asio
16:27:07 <Vorpal> hm
16:27:13 <Vorpal> boost? You are kidding me?
16:27:17 <Vorpal> why would I want C++
16:27:25 <AnotherTest> Because it doesn't use a lot of memory
16:27:30 <Vorpal> hah
16:27:36 <AnotherTest> you said "lightweight", I thought "C++"
16:27:45 <ais523> AnotherTest: you can make that statement about some special cases of C++ generally
16:27:46 <Vorpal> boost does use quite a bit actually.
16:27:47 <ais523> but not of Boost
16:28:18 <AnotherTest> The server I have here - using boost.asio uses...
16:28:20 <AnotherTest> (let me see)
16:28:29 <Vorpal> we use it at work, and it sure eats quite a bit of memory based on the profiling results.
16:28:54 <Vorpal> AnotherTest, asio is async io I presume? You can do that just fine in plain C
16:28:57 <AnotherTest> without any optimization (running debug mode even): 100kib
16:29:31 <AnotherTest> But I just started it, it should be more
16:29:38 <Vorpal> the issue with boost is that due to all the templates, for every variant you end up using, you get another copy of the code.
16:30:03 <Vorpal> so the binary size grows much quicker than it would have if it just used void* or whatever instead of templating
16:30:19 <AnotherTest> But the development time would rise for void*
16:30:22 <Vorpal> (STL suffers from that too to some degree, but boost seems worse)
16:30:39 <Vorpal> AnotherTest, not really. Compile time would be reduced
16:30:47 <Vorpal> thus reducing useless time wasted on that
16:31:31 <AnotherTest> I never have real problems with compiling taking long
16:31:46 <Vorpal> AnotherTest, I have had link times for the final binary of over a minute
16:31:52 <AnotherTest> if you just put the heavy stuff in a different compilation unit, there should be no problem
16:31:53 <Vorpal> in debug configuration
16:32:03 <AnotherTest> oh link times
16:32:27 <AnotherTest> well I have link times of 1s or something, project is well over 10k lines of code using boost and templates
16:32:30 <Vorpal> AnotherTest, well, we need to link statically since we are targeting embedded.
16:32:50 <AnotherTest> You could debug with dynamic?
16:33:09 <Vorpal> AnotherTest, well, not really, it would break stuff.
16:33:22 <Vorpal> can't talk about specifics there really
16:33:35 <AnotherTest> well then I can't really suggest a lot
16:33:48 <AnotherTest> anyway, I do disagree that you should use void* rather than templates
16:33:48 <Vorpal> AnotherTest, anyway, the project I work on is over 2m loc, not including external libraries such as boost
16:34:11 <AnotherTest> Wouldn't void* reduce run-time efficiency due to casting anyway?
16:34:43 <AnotherTest> (note: not sure about that at all)
16:34:44 <Vorpal> AnotherTest, a cast would be a no-op from assembly POV
16:34:54 <Vorpal> unless you are actually converting the data (say, int to float)
16:35:04 <AnotherTest> Yes, true
16:35:07 <Vorpal> casting a pointer to another pointer would definitely be a no-op
16:35:22 <AnotherTest> although maybe you could reduce 2 M loc to 1 M loc by using templates
16:35:54 <elliott> if you have 2 m loc you have other problems
16:35:54 <Vorpal> AnotherTest, btw, including shared_ptr brings in around 200 include files if you count recursively iirc
16:36:04 <elliott> and also probably it is not worth the time to make it 1m loc
16:36:27 <AnotherTest> elliott: you should have done that before, of course
16:36:39 <Vorpal> elliott, or you have a very complex system. It is actually fairly well structured into modules and such. It is just that there is so many modules.
16:37:36 <AnotherTest> Vorpal: yes, although I'd rather that than have to use raw pointers the whole time
16:37:41 <Vorpal> <AnotherTest> although maybe you could reduce 2 M loc to 1 M loc by using templates <-- we do use a lot of templates, that is in part what is killing the compile time.
16:37:49 <elliott> i don't think i know of any system remotely that large which i wouldn't consider overcomplicated for historical reasons or else preoccupied with dealing with problems it doesn't have to (like being in too low level a language)
16:38:03 <AnotherTest> I'm sure the chance on bugs and memory leaks is smaller when using stuff like shared_ptr
16:38:08 <Vorpal> elliott, well since it is C++ it obviously is in a low level language
16:38:58 <Vorpal> elliott, but we have real time requirements, which back when the system was initially created meant something like C or C++. The release binary size is just around 10MB iirc.
16:39:19 <Vorpal> bbl, food is ready
16:39:20 <AnotherTest> Vorpal: using C++ doesn't mean you have to use it low-level as in constantly using naked pointers and void*
16:39:23 <elliott> sounds like it doesn't have to be 2m loc
16:39:30 <elliott> AnotherTest: it sounds like you have never used C
16:39:39 <elliott> you can do data abstraction without using (void *) in C just fine
16:39:48 <AnotherTest> Yes you can
16:39:56 <AnotherTest> although you have other methods in C++
16:39:56 <elliott> the standard FILE type is abstract and you never need to use (void *)
16:39:59 <elliott> you can even do oop
16:40:05 <elliott> so stop talking about (void *) because it's a complete strawman
16:40:26 <AnotherTest> elliott: 1) he suggested using void* 2) no need to write C code in C++
16:41:38 <AnotherTest> anyway Vorpal, if this is an embedded system, I'm not sure if you will find any lightweight webserver that can be easily embedded
16:41:58 <elliott> (1) fine, i didn't read the entire thing. (2) what
16:42:22 <AnotherTest> also "elliott: you can even do oop", not true at all, whatever you say
16:42:31 <elliott> it is, sorry
16:42:34 <elliott> oop is very simple
16:42:41 <elliott> it involves some noise in C
16:42:47 <elliott> often it is worth it though
16:42:56 <elliott> of course the noise gets bigger and bigger if you try and do it exactly like C++
16:43:02 <AnotherTest> You cannot do true OOP without inheritance, encapsulation and polymorphism
16:43:05 <elliott> but that's unreasonable and not what "OOP" means at all
16:43:14 <elliott> haha if you think OOP requires inheritance...
16:43:17 <coppro> hahahaha
16:43:20 <elliott> of course you can do inheritance in C, I've done it!!
16:43:25 <coppro> lol people who think they know what oop means
16:43:26 <AnotherTest> That's my definition of OOP.
16:43:28 <elliott> but it sounds like you have no idea about what OOP means outside of C++_
16:43:31 <shachaf> inherit, ants
16:43:36 <elliott> so how about stop telling people who do know
16:44:03 <AnotherTest> elliott: like in C? a language that doesn't even claim to support the OO-paradigm
16:44:09 <elliott> lololol
16:44:10 <Vorpal> back
16:44:21 <elliott> it is literally irrelevant whether a language "claims to support a paradigm"
16:44:24 <coppro> ^
16:44:29 <elliott> what matters is whether you can do it or not and whether it brings benefits
16:44:34 <Vorpal> <elliott> sounds like it doesn't have to be 2m loc <-- probably. Especially if it wasn't C++
16:44:37 <coppro> you can code any paradigm in any language, really
16:44:37 <elliott> sometimes, in C, an object-oriented approach does
16:44:46 <elliott> sometimes it's too awkward to use a certain paradigm in a certain langauge
16:44:50 <elliott> that's not true here
16:45:00 <elliott> it's awkward in some ways but any C family language is pretty awkward at lots of things
16:45:15 <AnotherTest> elliott: It is not directly supported by the C language, so it's probably not a great idea to ignore that fact and do it anyway
16:45:17 <Taneb> Screw that, I'm gonna try to write a functional program in brainfuck
16:45:26 <Vorpal> <AnotherTest> anyway Vorpal, if this is an embedded system, I'm not sure if you will find any lightweight webserver that can be easily embedded <-- hm? That was for a separate thing from work embedded.
16:45:29 <elliott> AnotherTest: what
16:45:34 <elliott> thats like
16:45:35 <elliott> what
16:45:41 <elliott> you clearly have no idea whether it's a good idea or not
16:45:44 <elliott> because you've clearly never done it
16:46:00 <elliott> and also if you really constrict your thinking to exactly what the language designers advertised the language as being then woow like what the fuck
16:46:00 <AnotherTest> Because if I want to write OO code, I use an OOP.
16:46:06 <elliott> object oriented programming isn't some magic feature you have to support in the language
16:46:11 <elliott> its a set of techniques
16:46:21 <elliott> C predates the naming of these techniques as "OOP" so no shit it doesn't "claim to support them"
16:46:23 <elliott> but they work just fine
16:46:24 <AnotherTest> Yes, but you generally want those techniques to be supported
16:46:33 <elliott> if you really want an introduction see like http://www.yosefk.com/blog/oo-c-is-passable.html or whatever god I don't care
16:46:36 <elliott> "an OOP"????
16:46:41 <elliott> ok seriously
16:46:48 <elliott> when you have no idea what you're talking about
16:46:50 <Vorpal> one of the main causes to the problems of C++ is that while it had some decent ideas, it decided to add them on top of C. Not such a good idea IMO
16:46:51 <elliott> just stop arguing
16:46:54 <shachaf> elliott: why do you hate OOPs
16:46:57 <elliott> its embarrassing
16:47:01 <shachaf> lots of people want one!
16:47:09 <AnotherTest> elliott: seriously, an OOP was referring to an OO programming language
16:48:12 <Taneb> elliott, do you hate other O*Ps?
16:48:18 <AnotherTest> but yeah, making typos is definitely something that can never and should never hppen
16:48:25 <AnotherTest> *happen
16:49:31 -!- Arc_Koen has joined.
16:50:10 <AnotherTest> elliott: Also, it's not like that blog you linked me to provides the universal truth, everyone can write whatever shit they want on the internet
16:50:18 <elliott> yes
16:50:22 <elliott> you're demonstrating that very well right now
16:51:05 <elliott> heaven forbid i link you to the blog of someone fairly well-known who actually works on large C and embedded systems to help you educate yourself though
16:51:22 <AnotherTest> Well, who knows, maybe I am; but there is no way you can say that you are not
16:51:32 <ais523> I haven't been looking at this discusison, has it gone downhill?
16:51:34 <ais523> *discussion
16:51:44 <elliott> he also wrote a criticism of C++ that you have maybe heard of http://yosefk.com/c++fqa/, not exactly the most objective thing ever but certainly it has several good points
16:51:49 <elliott> ais523: it started downhill and dug underground
16:51:56 <AnotherTest> C++ works for me, I use C++.
16:52:03 <AnotherTest> C works for you, you use C.
16:52:06 <AnotherTest> I don't really care.
16:52:08 <elliott> i actually don't like C btw
16:52:15 <elliott> it's just you keep saying bullshit and passing it off as obvious truth
16:52:21 <elliott> when it is blatantly false
16:52:24 <elliott> so you should really stop doing that please
16:52:30 <ais523> I like C for when you're trying to do C's job
16:52:36 <ais523> it is quite rare that you have to do C's job, though
16:52:53 <ais523> I am not convinced that C++ is optimal for anything
16:53:07 <AnotherTest> elliott: sure it has some good critics, but it also has things that are simply not true
16:53:12 <AnotherTest> yes, C++ has serious flaws
16:53:29 <AnotherTest> any tool has flaws, but that doesn't mean it's entirely bad
16:54:17 <Taneb> This thing: better than some other things, and hence good
16:54:57 <elliott> have you actually read it? you didn't seem to have any idea who wrote what I linked and it has only been like two minutes since I linked the C++ FQA
16:55:06 <elliott> which I disagree with on numerous accounts but you can hardly claim he does not know his way around C++ and C thoroughly
16:55:07 <Vorpal> ais523, I pretty much agree with that. C++ does add some neat stuff, like virtual methods. Yeah, very neat. And namespaces. Quite useful for a large project. Maybe a few other things that I didn't think of.
16:55:27 <ais523> actually, I think my opinion is: C++ is only optimal for compatibility with other C++; and C is still optimal for C-like things, has been for years, and it's a huge shame that it has no serious competitors
16:55:30 * ais523 is rooting for Rust
16:55:53 <Vorpal> hm, what language is Rust?
16:56:01 <coppro> it's the New Cool Thing
16:56:10 <coppro> C++ is never optimal for anything
16:56:21 <coppro> but it's good enough for everything
16:56:26 <ais523> Vorpal: it's Mozilla trying to make a better language for systems programming
16:56:35 <Vorpal> hm, interesting
16:56:39 <ais523> it's mostly comparable to C in terms of features, but a lot safer
16:56:49 <Vorpal> oh?
16:56:54 <Vorpal> this sounds wonderful
16:57:01 <ais523> like, unless you explicitly use unsafe pointers, there's no way to write a memory leak or use-after-free
16:57:08 <Vorpal> ah
16:57:12 <elliott> I hope rust manages to get out of the experimental-undocumented-language-without-libraries phase
16:57:19 <elliott> well, at least, they have more documentation than most languages like that right now
16:57:24 <ais523> (it gives you scoped, unique, and garbage-collected pointers, which will be useful in most cases)
16:57:26 <ais523> elliott: so do I
16:57:26 <Vorpal> ais523, how easy is it to interface with existing C code and such though?
16:57:36 <ais523> Vorpal: it's a design goal to have an easy FFI for C
16:57:43 <ais523> the unsafe pointers exist specifically for that, I think
16:57:59 <Vorpal> ais523, okay... so what about when you are writing your GC in Rust?
16:58:15 <ais523> you don't, the standard library has the GC
16:58:25 <Vorpal> ais523, assume I'm using Rust to write a kernel for the moment
16:58:25 <ais523> but doesn't use it unless you use GCed pointers
16:58:42 <ais523> they're still a little unclear on what sort of GC it is, the language is still in quite early stages
16:59:05 <elliott> Vorpal: you're not going to be able to get away without writing a runtime system for any even vaguely modern systems language, really
16:59:07 <Vorpal> I would need some inline asm probably, and support for doing manual memory management (don't want to GC that DMA area now do I?) and so on.
16:59:09 <elliott> systems language =/= kernel language
16:59:14 <elliott> systems language = *systems language*
16:59:17 <Vorpal> hm
16:59:29 <Vorpal> elliott, so what good alternatives are there to C (with some asm) for kernels?
16:59:30 <elliott> not to say a systems language is necessarily a bad fit for writing a kernel
16:59:34 <elliott> but hey you need to write asm to boot a C kernel too
16:59:44 <Vorpal> indeed, I said C with some asm
16:59:58 <elliott> Vorpal: I don't think there are any
17:00:03 <elliott> but I'm not saying Rust would be a bad cohice
17:00:11 <elliott> just it'd require more asm/C/whatever boilerplate
17:00:16 <Vorpal> elliott, anyway I could think of a way to skip asm for booting. Would require the hardware to setup a nice initial state though
17:00:26 <elliott> people write more systems-language stuff than kernels though
17:00:41 <elliott> far more high-performance network servers etc. in the world than kernels
17:00:41 <Vorpal> true
17:01:12 <elliott> Vorpal: oh i forgot
17:01:15 <elliott> <Vorpal> elliott, so what good alternatives are there to C (with some asm) for kernels?
17:01:18 <elliott> @
17:01:56 <Vorpal> have any of you looked at the RPI boot sequence btw? It is weird: The GPU on the SoC loads code from a ROM that reads a file from the first partition of the sdcard, which sets up the RAM (previously only L2 cache was available), and loads the kernel. Then it starts the ARM core.
17:02:46 <Vorpal> (well it is a bit more complex, iirc there are two boot loaders, where the second one can read ELF and such, but won't fit into L2)
17:02:58 <Vorpal> pretty crazy design anyway
17:03:01 <elliott> Vorpal: btw I actually did start to half-design a language suitable for kernel programming in my head once
17:03:05 <elliott> it was pretty good
17:03:11 <Vorpal> oh
17:03:14 <elliott> unfortunately I'm not smart enough to figure out the type system or the memory management
17:03:24 <Vorpal> hm
17:03:25 <elliott> but you should totally use that if it ever starts existing
17:03:34 <Vorpal> elliott, what is the issue with memory management there?
17:03:44 <kmc> https://www.youtube.com/watch?v=_iSzgi2VhDw
17:03:49 <elliott> well it was going to have a linear type system (like ais523's hardware language!!!)
17:03:52 <elliott> (okay his is affine w/e w/e w/e)
17:04:15 <Vorpal> you basically need to have a couple of types of memory management, don't you? Manual, and GC, possibly you want some refcounted as well for some stuff
17:04:16 <elliott> and use that to give predictable resource management that wouldn't require a GC
17:04:27 <Vorpal> you do need some manual stuff, for low level
17:04:36 <elliott> i was also going to have explicit representation of closures as existential types
17:04:38 <ais523> elliott: haha, I was going to correct you with "actually affine" :)
17:04:38 <Vorpal> oh, interesting
17:04:48 <elliott> which lets you separate the code-function-pointer part of a closure from the data it bundles with it
17:04:55 <Vorpal> ais523, what is an affine type system?
17:05:03 <elliott> sort of like you can do in C by defining a closure type with a function taking the closure data and the data to go with it
17:05:09 <elliott> but safer/more automatic
17:05:18 <ais523> Vorpal: a type system where you can only use the argument to a function at most once in the function's body
17:05:23 <Vorpal> elliott, hm okay
17:05:30 <ais523> if you want to use it more than that, you have to call a duplicating function explicitly to copy the argument
17:05:39 <elliott> anyway it was closer to ML or Haskell or ATS (an interesting systems programming language) or whatever than C
17:05:41 <Vorpal> ais523, err, why?
17:05:47 <elliott> but the idea was to have it be comparable to C or C++ in terms of "runtime overhead"
17:05:48 <ais523> I guess Underload's technically affine, you need to use : to copy data
17:06:03 <elliott> with something sort of like C++'s "opt-in" abstraction penalties
17:06:11 <ais523> Vorpal: it helps loads to have copying explicit when you're reasoning about things that might be awkward to copy
17:06:18 <ais523> like, say, physical hardware circuits
17:06:18 <Vorpal> ais523, so if I want to do square(int i), it would need return dup(i)*dup(i)?
17:06:26 <Vorpal> or wait
17:06:28 <elliott> but i was very adamant about keeping lambda syntax, higher-order functions, first-class modeling of effects etc.
17:06:32 <elliott> ADTs,
17:06:41 <ais523> it'd be defined as let square = \i.dup (*)
17:06:44 <ais523> err
17:06:47 <ais523> square = dup (*)
17:06:56 <elliott> compile-time bounds checking...
17:07:00 <Vorpal> ais523, that looks forthish
17:07:01 <ais523> or square = \i.dup (\i1.\i2.i1*i2) i
17:07:18 <elliott> :t join (*)
17:07:19 <lambdabot> Num a => a -> a
17:07:23 <ais523> actually in Verity the dups are inferred, not explicit
17:07:25 <elliott> ais523: dup is join for the reader monad :)
17:07:28 <Vorpal> ais523, anyway wouldn't dup already consume the argument? So now you had i', but since i was already used by dup?
17:07:37 <elliott> Vorpal: dup gives you two copies of the argument
17:07:38 <elliott> and consumes it
17:07:41 <elliott> so you can use those two copies once
17:07:41 <ais523> Vorpal: yeah, dup consumes the argument, but it gives you two copies back
17:07:42 <Vorpal> ah okay
17:07:46 <Vorpal> makes sense
17:07:56 <elliott> anyway yeah you don't actually have to write code this way, the compiler can figure it out for you
17:07:57 <ais523> it's also by far the hardest part of the standard library to implement
17:08:10 <ais523> I think I'm a leader in the field of automatically inferring where to put the dups
17:08:16 <elliott> my language would have an advantage over ais523 in terms of how lenient the thing it's targetting would be :)
17:08:35 -!- DHeadshot has quit (Read error: Connection reset by peer).
17:08:47 <Vorpal> ais523, hm what were you targeting then?
17:08:52 <ais523> elliott: yeah, for my applications, it has to be strict for a reason :)
17:08:53 <Vorpal> verilog?
17:08:56 <elliott> vhdl I think
17:08:58 <Vorpal> ah
17:09:04 <ais523> Vorpal: hardware; the intermediate hdl hardly matters
17:09:09 <ais523> we're actually using a mix of VHDL and Verilog
17:09:23 * elliott has internalised the meanings of "affine" and "relevant" thanks to edwardk
17:09:36 <Vorpal> ais523, I don't know verilog, but vhdl at least I'm pretty sure doesn't require you to duplicate signals all that much?
17:09:54 <Vorpal> elliott, affine as in affine transformations? Or affine in the sense that we are using it now?
17:09:57 <ais523> Vorpal: you're missing the point
17:10:05 <ais523> you can't give two sets of inputs to a circuit simultaneously
17:10:09 <ais523> and expect it to be able to parse them
17:10:23 <Vorpal> hm, true
17:10:36 <ais523> previous research attacked the "two"
17:10:46 <ais523> we're currently working on the "simultaneously", hope to get that paper out in the next couple of weeks
17:10:52 -!- DHeadshot has joined.
17:10:57 <elliott> Vorpal: affine as in the same sense that is used in linear logic
17:11:08 <Vorpal> elliott, hm okay
17:11:11 <elliott> but the meaning is closely related in "affine transformation", I think
17:11:36 <elliott> linear: one; affine: zero or one; relevant: one or more
17:11:43 <elliott> for languages: "uses of your argument"
17:11:57 <Vorpal> ais523, couldn't you solve the issue of two sets of input by inlining the function into the parent function, thus creating separate copies of the circuitry? Or am I completely missing your point here?
17:12:00 <elliott> this has come up in lens
17:12:12 <elliott> there, it's "parts of a traversal"
17:12:30 <elliott> a linear traversal has one part always, so it's a lens
17:12:36 <Vorpal> ais523, like: both x and y calls foo, if x and y can run at the same time, you need separate copies of foo
17:12:39 <elliott> an affine traversal has zero or one parts, so it's a lens that can fail, a partial lens
17:12:40 <ais523> Vorpal: sure, but inlining everything tends to lead to exponential blowup
17:12:43 <ais523> you have stated the problem quite neatly
17:12:48 <elliott> a relevant traversal has one or more parts, so you know it's non-empty
17:12:52 <ais523> stating the solution is not so trivial
17:12:59 <Vorpal> hm true
17:13:14 <Vorpal> ais523, but if those two foo are actually used at the same time, don't you always end up needing separate copies?
17:13:17 <ais523> yes
17:13:25 <ais523> but they aren't always actually used at the same time
17:13:45 <Vorpal> so you are trying to tackle the problem of detecting if they are used at the same time or not?
17:14:19 <Vorpal> elliott, what do you mean with lens here? Not the optical kind I presume?
17:14:56 <Taneb> The Haskell kind, presumably
17:15:06 <elliott> Vorpal: http://lens.github.com/, http://hackage.haskell.org/package/lens
17:16:23 * Vorpal tries to find somewhere on those links that describes what a lens actually *is*.
17:16:48 <ais523> Vorpal: no, just of duplicating the bits that need to be duplicated
17:17:03 <elliott> Vorpal: it's a store comonad coalgebra!
17:17:11 <ais523> quick, \x.(x||x);((x;x)||(x;x)), how many copies of x do you need and which go where?
17:17:14 <elliott> Vorpal: you can watch edwardk's two-hour video
17:17:14 <Taneb> Vorpal, first class accessors
17:17:25 <Vorpal> ais523, ouch
17:17:54 <ais523> Vorpal: doesn't look so trivial any more when you give examples like that
17:18:06 <Vorpal> Taneb, hm, thanks. That makes some vague sense. I really only used the basics of haskell. I have very little knowledge of all the libraries that exist.
17:18:24 <Taneb> Vorpal, then they made them ridiculous
17:18:34 <Vorpal> heh
17:18:38 <elliott> Vorpal: basically haskell's record system sucks
17:18:48 <elliott> you can imagine defining the idea of a "first-class field"
17:18:58 <Vorpal> that sounds neat
17:18:59 <elliott> data Field whole part = (whole -> part, whole -> part -> whole)
17:19:01 <AnotherTest> elliott: "No, because C++ classes don't support aggregate initialization. "(from your link); actually that's not true. Initialization lists do just this
17:19:02 <Taneb> > preview _left (Left 10)
17:19:04 <lambdabot> Just 10
17:19:07 <AnotherTest> *initializer
17:19:11 <Vorpal> elliott, but the syntax for it looks annoying indeed
17:19:11 <Taneb> > preview _left (Right 10)
17:19:12 <lambdabot> Nothing
17:19:12 <elliott> firstTupleElement = (\(a,b) -> a, \(a,b) a' -> (a',b))
17:19:20 <elliott> lens is basically this
17:19:23 <elliott> but generalised a lot
17:19:25 <Vorpal> ah
17:19:28 <elliott> and with a better representation and lots of nice operators and stuff
17:19:29 <Vorpal> makes sense
17:19:37 <elliott> and it turns out lenslikes have wide applications beyond just field accessors
17:21:02 <Taneb> > [Left 1, Right 'a', Left 6] & traverse . _left *~ 2
17:21:04 <lambdabot> [Left 2,Right 'a',Left 12]
17:21:38 <Taneb> > [Left 1, Right 'a', Left 6] ^.. left
17:21:39 <lambdabot> Couldn't match expected type `[Data.Either.Either
17:21:40 <lambdabot> ...
17:21:47 <Taneb> > [Left 1, Right 'a', Left 6] ^.. _left
17:21:49 <lambdabot> Couldn't match expected type `[Data.Either.Either
17:21:49 <lambdabot> ...
17:21:50 <elliott> > [Left 1, Right 'a', Left 6] ^.. traverse . _left
17:21:52 <lambdabot> [1,6]
17:21:55 <Taneb> Blarg
17:22:04 <Taneb> elliott is better at lens than I am
17:22:15 <Taneb> To be fair, elliott is better at most things than I am
17:22:22 <Deewiant> ?ty traverse . _left
17:22:23 <lambdabot> (Functor (k (a -> f b)), Applicative f, Traversable t, Prismatic k) => k (a -> f b) (t (Either a c) -> f (t (Either b c)))
17:22:30 <Taneb> Except maybe genealogy and socialising and cosplay?
17:22:33 <elliott> Deewiant: it has a nicer type in 3.8 :p
17:22:46 <Vorpal> really the issue for a "causal" haskell user, is that there is SO MUCH STUFF.
17:22:56 <Deewiant> elliott: Before Prismatic?
17:23:04 <Deewiant> Or what
17:23:05 <elliott> Deewiant: 3.8, *after* Prismatic
17:23:07 <elliott> well, after new Prismtaic
17:23:11 <elliott> *Prismatic
17:23:13 <elliott> we vastly simplified it
17:23:18 <Deewiant> Ah, okay
17:23:19 <elliott> traverse._left
17:23:19 <elliott> :: (Control.Applicative.Applicative f, Traversable t) =>
17:23:19 <elliott> (a -> f b) -> t (Either a c) -> f (t (Either b c))
17:23:25 <elliott> now it just degrades to a regular old traversal
17:23:36 <Taneb> Dammit, I was halfway through typing that out
17:23:43 <elliott> traverse._left :: Traversable t => Traversal (t (Either a c)) (t (Either b c)) a b
17:24:03 <elliott> (_left itself looks like (Applicative f, Prismatic p) => p a (f b) -> p (Either a c) (f (Either b c)))
17:24:18 <elliott> we moved the overloading inwards
17:26:16 <AnotherTest> elliott: I'm not going to continue to read this "C++FQA", because the critics in their apply to both C and C++, and because many of things in there are exaggerated, or not entirely true. It's really just annoying to read and doesn't provide anything I have not heard before. I really don't see why someone would waste his time doing that.
17:26:26 <AnotherTest> *in there
17:26:33 <elliott> i literally don't care one bit whether you read it or not
17:26:45 <AnotherTest> don't send the link then
17:28:31 <elliott> okay seriously... shut up
17:28:36 <elliott> this is completely ridiculous
17:28:44 <shachaf> hi
17:29:30 <AnotherTest> elliott: no need to be an arrogant ass that doesn't care about anyone or something like that
17:30:31 <kmc> "NEXT THURSDAY: Trent infiltrates the Swedish virtual pedicab-racing scene to take down a crew of restaurant terrorists"
17:33:43 <elliott> kmc: "job description: restaurant terrorist"
17:34:29 <olsner> job description: virtual pedicab-racer
18:03:38 -!- atrapado has joined.
18:05:47 <c00kiemon5ter> heh, this was nice :D http://www.youtube.com/watch?v=3RBSkq-_St8
18:14:36 -!- fungot has joined.
18:25:53 <Vorpal> kmc, what is the context of that? Is there any?
18:54:46 -!- TeruFSX has quit (Ping timeout: 252 seconds).
18:55:30 -!- TeruFSX has joined.
19:00:30 -!- Bike has joined.
19:01:46 <kmc> it's from NTSF:SD:SUV::
19:07:30 -!- Bike has quit (Ping timeout: 255 seconds).
19:10:13 <hagb4rd> FUCK:THESE:SHORTCUTS::
19:10:33 <elliott> thats the joke hagb4rd
19:10:41 <hagb4rd> aw
19:10:47 <hagb4rd> muahrhr
19:12:05 -!- Bike has joined.
19:14:57 -!- ais523 has quit.
19:22:10 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.89 [Firefox 17.0.1/20121128204232]).
19:24:28 -!- sebbu has quit (Ping timeout: 252 seconds).
19:28:51 <hagb4rd> `clear
19:29:02 <Vorpal> hagb4rd, that makes very little sense
19:29:14 <hagb4rd> now.. that was a joke
19:30:17 <coppro> @tell ais523 hard copy grammar book acquired. proceeding to learn English again
19:30:17 <lambdabot> Consider it noted.
19:30:42 <hagb4rd> let's just start over again
19:30:45 -!- hagb4rd has left.
19:30:50 -!- hagb4rd has joined.
19:34:02 -!- Taneb has quit (Remote host closed the connection).
19:34:51 -!- sebbu has joined.
19:34:51 -!- sebbu has quit (Changing host).
19:34:52 -!- sebbu has joined.
19:35:14 -!- impomatic has quit (Quit: http://ukcaves.com).
19:35:19 <hagb4rd> @squeak gregor have you managed to fix the service interface already?
19:35:19 <lambdabot> Unknown command, try @list
19:35:56 <hagb4rd> and where is hackego?
19:39:24 -!- HackEgo has joined.
19:44:49 -!- oerjan has joined.
19:45:44 -!- sebbu2 has joined.
19:46:53 -!- sebbu has quit (Ping timeout: 255 seconds).
19:47:00 -!- sebbu2 has changed nick to sebbu.
19:49:17 <oerjan> <GreyKnight> "The biggest problem in communication is assuming it has taken place" :-D
19:49:48 <oerjan> the second biggest is people not being around when you want to comment on them.
19:49:59 <oerjan> hth.
19:50:03 <hagb4rd> we shall quote this
19:50:31 <oerjan> i shall assume GreyKnight will read this.
19:50:36 <hagb4rd> but i'm afraid of this empty space thing i did not understand
19:51:34 -!- Nisstyre has joined.
19:51:49 <oerjan> space, so vast and incomprehensible.
19:52:05 <hagb4rd> absolutely :>
19:53:38 <oerjan> two spaces between quoted lines. only one space on each side of [...] ellipses. no space between nicks and the surrounding <>'s.
19:55:22 <oerjan> this does not apply recursively within the quoted lines themselves, they should be literal as far as possible.
19:55:47 <oerjan> (you may use [...] to elide things there too.)
19:56:15 <oerjan> `quote
19:56:20 <HackEgo> 288) <Sgeo_> I think she either likes me, is neutral towards me, or dislikes me
19:56:41 <oerjan> `quote <
19:56:43 <HackEgo> 1) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 2) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 3) <AnMaster> that's where I got it <AnMaster> rocket launch facility gift shop \ 4) <Warrigal> GKennethR: he sh
19:57:02 <hagb4rd> alright
19:57:13 <oerjan> those are all wrong of course
19:57:23 <oerjan> since they are older than the quoting standard
19:57:32 <oerjan> well, 2 and 3.
19:57:47 <oerjan> `run quote " <"
19:57:49 <HackEgo> 1) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 2) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 3) <AnMaster> that's where I got it <AnMaster> rocket launch facility gift shop \ 4) <Warrigal> GKennethR: he sh
19:57:56 <oerjan> `run quote " [<]"
19:57:58 <HackEgo> 1) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 2) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 3) <AnMaster> that's where I got it <AnMaster> rocket launch facility gift shop \ 4) <Warrigal> GKennethR: he sh
19:58:17 <oerjan> why the _heck_ does that catch 1, i'm trying to exclude it
19:58:24 <oerjan> `run quote "[ ][<]"
19:58:25 <HackEgo> 1) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 2) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 3) <AnMaster> that's where I got it <AnMaster> rocket launch facility gift shop \ 4) <Warrigal> GKennethR: he sh
19:58:31 <oerjan> oh wait
19:58:42 <oerjan> the grepping happens after the line numbers are added, of course
19:59:06 <oerjan> `run quote "[^)] <"
19:59:07 <HackEgo> 2) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 3) <AnMaster> that's where I got it <AnMaster> rocket launch facility gift shop \ 5) <Quas_NaArt> His body should be given to science. <GKennethR> He's alive :P <GreenReaper> Even so. \ 6) <oer
19:59:23 <oerjan> `run quote "[^)] <" | tail
19:59:25 <HackEgo> 871) < zzo38> What is portable way of load/save floating points in files, using a C code? < kmc> #ifndef __STDC_IEC_559__ #error Here's a nickel, kid. Buy a real computer. #endif \ 874) <pikhq> Conext coyou'll cotell come cothat coyou cocan't coprefix coeverything cowith co"co". <oerjan> pikhq: coof urse conot! \ 878) <zzo38> The winter solstic
19:59:29 <fizzie> It's all so worng.
19:59:32 <oerjan> AAAAAAAAAAAA
19:59:35 <fizzie> Look at that 871.
19:59:47 <Bike> the horror, the horror!
19:59:54 <oerjan> i was trying to look at the last ones since they are generally better D:
20:00:28 <Bike> `quote 900
20:00:30 <HackEgo> 900) <GreyKnight> This might be the lack of sleep talking, but coproduct injections are pretty funny
20:02:39 <oerjan> `run sed -i '871s/\( *\)< /\1\1</g' quotes
20:02:42 <HackEgo> No output.
20:02:47 <oerjan> `quote 871
20:02:48 <HackEgo> 871) <zzo38> What is portable way of load/save floating points in files, using a C code? <kmc> #ifndef __STDC_IEC_559__ #error Here's a nickel, kid. Buy a real computer. #endif
20:05:24 <oerjan> sadly the no-recursion exemption means you cannot make a substitution that fixes the whole database automatically
20:05:51 -!- zzo38 has joined.
20:08:04 -!- AnotherTest has quit (Quit: Leaving.).
20:19:12 -!- impomatic has joined.
20:20:26 -!- Phantom_Hoover has joined.
20:23:50 <oerjan> `url quotes
20:23:51 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/quotes
20:24:53 <tswett> `quote 1
20:24:55 <HackEgo> 1) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork"
20:24:58 <Phantom_Hoover> oh christ i've been 18 for less than a day and already i'm turning into a Wine Person
20:25:19 <tswett> So, the quotes are still renumbered every time one is deleted, right?
20:25:37 <oerjan> yes
20:25:47 <shachaf> imo delete 1??
20:25:58 <shachaf> 1 isn't very good.
20:26:44 <tswett> `quote 11
20:26:46 <HackEgo> 11) <Warrigal> "You're at that stage in your life where you're going to want to do some things in private." --my mom
20:26:54 <tswett> }:|
20:27:15 <tswett> Meeh.
20:27:17 <tswett> `delquote 11
20:27:21 <HackEgo> ​*poof* <Warrigal> "You're at that stage in your life where you're going to want to do some things in private." --my mom
20:27:29 <oerjan> um...
20:27:50 <elliott> `help
20:27:51 <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/
20:27:58 <quintopia> elliott: i declare edit war!
20:28:03 <shachaf> tswett....................
20:28:16 <tswett> shachaf: what???
20:28:22 <tswett> `run echo $PWD
20:28:23 <HackEgo> ​/hackenv
20:28:44 <oerjan> i would like to point out that i am currently editing the entire quote database by hand, and if you start an edit war now i'm going to completely ignore it
20:29:10 <Phantom_Hoover> why are you doing tha
20:29:11 <Phantom_Hoover> t
20:29:20 <shachaf> `quoerjan
20:29:22 <HackEgo> 6) <oerjan> what, you mean that wasn't your real name? <Warrigal> Gosh, I guess it is. I never realized that. \ 15) <fungot> oerjan: are you a man, if there weren't evil in this kingdom to you! you shall find bekkler! executing program. please let me go... put me out! he's really a tricycle! pass him! \ 18) <oerjan> In an alternate universe, ehird
20:29:29 <shachaf> Hey, that worked.
20:29:57 <shachaf> `cat bin/quoerjan
20:29:59 <HackEgo> quote oerjan
20:30:04 <hagb4rd> Phantom_Hoover: because it's messed up
20:30:12 <shachaf> `allquotes
20:30:13 <HackEgo> 1) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 2) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 3) <AnMaster> that's where I got it <AnMaster> rocket launch facility gift shop \ 4) <Warrigal> GKennethR: he sh
20:30:26 <shachaf> `run echo 'allquotes | grep oerjan | shuf' > bin/quoerjan
20:30:28 <hagb4rd> and because he's a good boy
20:30:29 <HackEgo> No output.
20:30:30 <shachaf> `quoerjan
20:30:31 <HackEgo> 230) <oerjan> <Gregor> oerjan: Tell us what (a(b{c}d)*2e)%2 expands to <-- ababcdbcdedbabcdbcdede, i think <Gregor> oerjan: What - the - fuck \ 371) <oerjan> i never meta turing. he died before i was born. \ 15) <fungot> oerjan: are you a man, if there weren't evil in this kingdom to you! you shall find bekkler! executing program. please let me g
20:31:00 <shachaf> `quoerjan
20:31:02 <HackEgo> 376) <oerjan> as i was filled with zzo38 mystery at the moment i saw <zzo38> quintopia: I am at Canada. \ 657) <itidus20> if only alonzo church would have anticipated the computer terminal... <zzo38> itidus20: What do you think it would be if he did so? <itidus20> i just plucked his name at random [...] <oerjan> if only the marquis de sade would
20:31:24 <shachaf> `quoerjan
20:31:26 <HackEgo> 684) <fizzie> oerjan: Hey, what's your country code for telephonistic dialling from the outside world? <oerjan> fizzie: +47 <fizzie> oerjan: Ooh, you're, like, right next to Sweden there. <fizzie> I... guess you are geographically, too. \ 145) <oerjan> it's not obvious from quantum mechanics that you can destroy a universe arbitrarily. \ 375) <
20:31:28 <shachaf> Good quotes.
20:32:14 <hagb4rd> please don't just delete quotes that don't miss context
20:32:43 <elliott> `run hg diff -c 895 | patch -R
20:32:48 <HackEgo> patching file quotes
20:35:56 -!- carado has quit (Ping timeout: 246 seconds).
20:36:13 <coppro> @tell ais523 Can you point me to use cases of ?{} and %%s in actual code?
20:36:13 <lambdabot> Consider it noted.
20:36:13 <tswett> ababc dbc de, dbabc dbc de, de
20:38:09 <zzo38> "According to Nick Herbert, a PhD from Stanford University, if quantum physics is a realistic explanation for the universe, then telepathy is possible." Is this like saying how Einsteinian relativity can permit time travel because some of its solutions permit it?
20:38:09 <lambdabot> zzo38: You have 2 new messages. '/msg lambdabot @messages' to read them.
20:38:11 <zzo38> ?messages
20:38:12 <lambdabot> oerjan said 23h 42m 38s ago: http://en.wikipedia.org/wiki/Principal_homogeneous_space seems to include your concept if you use the integers as the group
20:38:12 <lambdabot> oklopol said 23h 41m 48s ago: crazy talk
20:43:57 <oerjan> `help
20:43:58 <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/
20:44:21 <hagb4rd> zzo38: i guess the known laws of quantum physics just don't exclude the possibility of 'telepathy'.. but they do not proove them in any way
20:44:38 <hagb4rd> *ti
20:44:42 <hagb4rd> aarg
20:45:18 <hagb4rd> however it's difficult enough to communicate using words
20:45:51 <oerjan> `fetch http://oerjan.nvg.org/quotes
20:45:58 <HackEgo> 2013-01-06 20:45:57 URL:http://oerjan.nvg.org/quotes [108182/108182] -> "quotes.1" [1]
20:46:14 <oerjan> `run mv quotes.1 quotes # Fix general formatting
20:46:17 <HackEgo> No output.
20:46:57 <hagb4rd> `quote 1
20:46:58 <HackEgo> 1) <Aftran> I used computational linguistics to kill her.
20:48:42 <hagb4rd> `url quotes
20:48:44 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/quotes
20:51:06 <zzo38> hagb4rd: Well, yes, I know, they do not prove them in any way.
20:52:12 <zzo38> But do you know how some people have figured out how relativity to permit time travel possibly?
20:52:24 <zzo38> I read that in another book.
20:53:51 <hagb4rd> well there was a young lady named bright. whose was much faster than light. she departed one day, in a relative way. and returned on the previous night ;)
20:54:01 <hagb4rd> actually: no
20:54:09 <Arc_Koen> time travel poetry!
20:54:33 <hagb4rd> *whose speed
20:54:39 <Arc_Koen> oh you were actually talking about time travel
20:55:01 <Arc_Koen> hagb4rd: how can a speed be faster than light
20:55:06 -!- carado has joined.
20:55:32 <Arc_Koen> it's like saying icecream is hungrier than me!
20:55:38 <hagb4rd> well we can slow down light to the speed of a bike.. but i guess that wouldn't help
20:56:02 <oerjan> `fetch http://oerjan.nvg.org/quotes
20:56:06 <HackEgo> 2013-01-06 20:56:04 URL:http://oerjan.nvg.org/quotes [108153/108153] -> "quotes.1" [1]
20:56:28 <oerjan> `run mv quotes.1 quotes # Some more formatting errors
20:56:31 <HackEgo> No output.
20:56:45 <Arc_Koen> hmmm well if I remember well the first time we encounter the team rocket in pokemon version yellow they said "Time rocket... fleeing as fast as light!" or something and the last time you beat them they say "Team rocket... fleeing as fast as a big bike!" or something
20:58:16 <hagb4rd> well time travel is not very much my discipline.. you should talk to zzo38 who's reading a book about it now
20:59:53 <Bike> eh what
21:01:15 <zzo38> I didn't say I am reading a book about it now. I said I read books in the past, some of which include some stuff about such things.
21:01:55 <hagb4rd> yes.. exactly. sorry zzo38.
21:03:05 <oerjan> a _true_ expert would have read them in the future.
21:03:17 <hagb4rd> lol
21:03:23 <kmc> `run gccrun 'printf("hello world\n");'
21:03:24 <HackEgo> bash: gccrun: command not found
21:03:27 <kmc> sucks
21:04:10 <elliott> !c printf("hello world\n");
21:04:15 <EgoBot> hello world
21:04:17 <elliott> kmc: hth
21:06:00 -!- lifthrasiir has quit (Ping timeout: 265 seconds).
21:08:11 -!- epicmonkey has quit (Ping timeout: 272 seconds).
21:09:18 <fizzie> But what about the unification!
21:09:24 <fizzie> `interp c printf("hello world\n");
21:09:34 <elliott> protip: that won't work
21:09:42 <HackEgo> Does not compile. \ ./interps/gcccomp/gcccomp: fork: retry: Resource temporarily unavailable \ ./interps/gcccomp/gcccomp: fork: retry: Resource temporarily unavailable \ ./interps/gcccomp/gcccomp: fork: retry: Resource temporarily unavailable \ ./interps/gcccomp/gcccomp: fork: retry: Resource temporarily unavailable \ ./interps/gcccomp/gcccomp: for
21:09:48 <fizzie> That's just silly.
21:11:16 -!- md_5 has joined.
21:11:30 <md_5> ooh shiny
21:11:51 <md_5> anyone know of any Glass interpreters other than the reference C one?
21:12:27 <SirCmpwn> md_5: if you're just looking for esoteric oop languages, try java
21:12:38 <fizzie> I have an unpublished half-finished one. (Or maybe it was a compiler.) ((That's not very helpful.))
21:13:18 <md_5> thanks SirCmpwn , although I was kindof going for esolang-ception
21:13:26 <md_5> where the glass interpreter was java :P
21:13:35 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
21:13:56 <SirCmpwn> there are brainfuck interpreters in brainfuck, right?
21:14:02 <SirCmpwn> maybe I should include one in my IRC bot
21:14:31 -!- lifthrasiir has joined.
21:15:41 -!- Phantom_Hoover has joined.
21:15:47 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
21:15:48 <fizzie> There are, yes; there's six listed in http://esolangs.org/wiki/brainfuck#Self-interpreters
21:15:54 -!- Phantom__Hoover has joined.
21:16:20 <Bike> make it an optimizing compiler. gotta have speed
21:16:29 <fizzie> That's probably awib, then?
21:16:48 <fizzie> (awib is also written in brainfuck.)
21:17:13 <md_5> http://www.hevanet.com/cristofd/dbfi.b
21:17:16 <fizzie> Admittedly it only targets like x83-32-Linux, C, Ruby, Go and Tcl, so it's pretty limited.
21:17:18 <md_5> thats probably the smallest one
21:18:09 <SirCmpwn> awib cheats
21:18:15 <SirCmpwn> they don't use straight-up brainfuck
21:19:48 <fizzie> What does that mean?
21:20:06 <SirCmpwn> it means you can put their source into a standard brainfuck interpreter and it won't work
21:20:07 <oerjan> it's way down crooked
21:20:22 <Arc_Koen> it means they have brainforeplay
21:20:50 <SirCmpwn> that would be an outstanding name for a brainfuck preprocessor
21:20:52 <elliott> SirCmpwn: Pretty sure it does?
21:20:58 <elliott> are you sure you were using a compliant interpreter?
21:20:59 <SirCmpwn> elliott: go read their code
21:21:05 <SirCmpwn> elliott: I didn't even run it
21:21:19 <fizzie> I was under the impression that it does run just fine under a (suitable) bf interpreter.
21:21:27 <elliott> SirCmpwn: I see nothing amiss skimming over http://awib.googlecode.com/svn/builds/awib-0.3.b
21:21:41 <elliott> (well, except the gratuitous ASCII art)
21:22:00 <SirCmpwn> that's after some processing
21:22:11 <SirCmpwn> https://code.google.com/p/awib/source/browse/trunk/awib-skeleton.b
21:22:40 <elliott> Just looks like #includes to me.
21:22:41 <elliott> Plus comments.
21:22:56 * elliott doesn't think that really counts as cheating.
21:23:06 <SirCmpwn> % where b = (bytecode OK ? 1 : 0) and Mm = maximum loop depth
21:23:15 <elliott> I'm pretty sure that is a comment.
21:23:15 <SirCmpwn> this looks like considerably more than just a comment of some sort
21:23:20 <elliott> % 20(0) T *0 b (code) 0 M m
21:23:20 <elliott> % where b = (bytecode OK ? 1 : 0) and Mm = maximum loop depth
21:23:25 <elliott> It's showing what the tape is at that point.
21:23:30 <elliott> And what b and Mm represent.
21:23:35 <SirCmpwn> hmm
21:23:46 <elliott> https://code.google.com/p/awib/source/browse/trunk/util/bfpp.py
21:24:10 <SirCmpwn> alright, not entirely cheating, then
21:32:14 <oerjan> comments are _so_ cheating
21:32:52 <fizzie> What was the bot that used one of the EsoInterpreters to do something?
21:33:28 <elliott> thutubot for underload?
21:33:43 <fizzie> That sounds very possible.
21:34:47 <fizzie> With uload.b, I guess.
21:35:15 <fizzie> I think I also tried it out with fungot, and it could run (x)S but nothing much more complicated than that, due to the resource limits.
21:35:16 <fungot> fizzie: a hard drive
21:35:51 <fizzie> ^show
21:35:52 <fungot> echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me tell
21:35:54 <zzo38> Would you like to play Arimaa with flat pieces with roman numbers I to VI on it?
21:35:56 <fizzie> ^show ul
21:35:57 <fungot> >,[>,]<[<]>[<+4[>-8<-]+>-[-7[-2[<+3[>-4<-]+>[<+4[>-5<-]+>[-11[-3[[-]<2[>[-]>+<2-]>>[<2+>>-]+<[->-<3[[>+<-]<]>>[>]]>[->[>]<[[>+<-]<]<2[[>+<-]<]<[[>+<-]<]>>[>]>[[[>]>+<2[<]>-]<2[[>+<-]<]>>[>]>[>]>[<2[<]<[<]<+>>[>]>[>]>-]<2[<]>]>>[[<+>-]>]<2[<]]]<[->>[>]<[[>>+<2-]<]<2[[>+<-]<]>+>[>]+5[>+8<-]+2>-[<+[<]>+[>]<-]]>]<[->>[[<2+>>-]>]<3[[>+<-]<]]>]<[-<[[<]>.[-]>[[<+>-]>]>>[[<+>-]>]<2[<]<2]>>>[[<+>-]>]<2[<]<]>]<[->>[>]<[[>+<-]<]<2[>>>>[>]
21:36:00 <fizzie> I suppose it's that.
21:37:14 -!- lifthrasiir has quit (Read error: Operation timed out).
21:37:26 <zzo38> Also, it could be played on intersections, with the trap squares marked with stars.
21:38:45 <SirCmpwn> even when the expected behavior is to fail horribly, my bot fails to fail
21:39:24 <hagb4rd> let'm join
21:39:26 <SirCmpwn> trying to direct program flow into the PING handler, which currently doesn't bother cleaning up, which in theory should just break everything when it gets a PING
21:39:39 <SirCmpwn> but nope, it just merrily continues executing like nothing went wrong
21:39:52 <SirCmpwn> I'd let him join, but the server won't ping me if it makes a peep
21:39:57 -!- lifthrasiir has joined.
21:41:05 <md_5> so anyway I was looking for a language I could use to script Java. It must have variables and functions with parameters.
21:41:25 <coppro> try befunge
21:41:29 <coppro> it sort of has those things
21:41:56 -!- Mr_Darcy has joined.
21:42:15 <SirCmpwn> md_5: APL if you hate yourself
21:42:31 <SirCmpwn> md_5: APL pretends not to be esoteric, though
21:42:46 <zzo38> What do you want to script Java, though? What are you trying to make?
21:42:57 <md_5> a joke
21:43:22 -!- zzo38 has quit (Remote host closed the connection).
21:43:22 <Mr_Darcy> hello
21:43:40 <hagb4rd> poor zzo38.. it's not his day
21:44:00 <Bike> hm, i wonder where one would get an APL compiler nowadays
21:44:10 -!- asiekierka has quit (Excess Flood).
21:44:17 -!- asiekierka has joined.
21:44:43 <SirCmpwn> ⎕←{⍵/⍨~{⍵∨≠\⍵}⍵∊'<>'}txt
21:44:46 <SirCmpwn> actual APL code
21:44:50 <SirCmpwn> and they say it isn't a joke
21:45:21 <oerjan> ^bf <+++++++++++++++++++++++++++++++++++++++++.
21:45:21 <fungot> )
21:46:32 <md_5> befunge doesnt really have functions
21:47:06 <SirCmpwn> md_5: the fact that you want functions means you're in the wrong channel
21:47:20 <md_5> lots of languages have them
21:47:23 <md_5> just not with paramaters
21:47:40 <Bike> Just go back to basics. Straight-up lambda calculus.
21:47:45 <oerjan> SirCmpwn: NOT TRUE. we'll let him use unlambda just fine.
21:47:45 <SirCmpwn> md_5: why not use IRP
21:47:56 <Bike> Or lack of lambda calculus, that works too.
21:48:43 -!- impomatic has left.
21:48:43 -!- impomatic has quit (Quit: impomatic).
22:05:20 -!- atrapado has quit (Quit: Abandonando).
22:16:02 <SirCmpwn> well fuck
22:16:15 <SirCmpwn> of course the error I've spent 15 minutes looking for comes from a comma in a comment
22:16:32 <oerjan> how commadic
22:17:17 <elliott> could have used a preprocessor!!
22:17:30 <SirCmpwn> then I wouldn't be able to claim it runs on vanilla brainfuck
22:18:10 <Bike> the brainfuck community would be simply apalled with you.
22:18:51 -!- Phantom__Hoover has quit (Read error: Operation timed out).
22:18:51 <SirCmpwn> there's a brainfuck community?
22:19:08 <Bike> that's the joke.
22:19:58 <Vorpal> <oerjan> ^bf <+++++++++++++++++++++++++++++++++++++++++. <-- shouldn't that terminate on the <?
22:20:11 <SirCmpwn> Vorpal: why would it?
22:20:19 <Vorpal> since it moves off the edge of the tape
22:20:24 -!- Mr_Darcy has left.
22:20:32 <Bike> ^bf +++++++++++++++++++++++++++++++++++++++++.
22:20:32 <fungot> )
22:20:40 <SirCmpwn> most interpreters (including the reference one) underflow the pointer
22:20:58 <Vorpal> SirCmpwn, hm, how would that work on an infinite tape though
22:21:13 <SirCmpwn> go to -1?
22:21:29 <SirCmpwn> with an infinite tape, it'd continue to negative infinity as well
22:21:30 <Vorpal> well, infinite in one direction: [0, +inf)
22:21:30 <oerjan> Vorpal: that was what i was checking, but fungot apparently is bidirectional
22:21:31 <fungot> oerjan: x&4 extracts one bit: the fnord. told it to join the jix club now with my own solution. ( of course not. i dare you to
22:21:46 <Vorpal> oerjan, hm
22:21:55 <elliott> x&4, the fnord bit.
22:22:11 <oerjan> simpler to implement, naturally, and befunge can give it an entire line to itself
22:22:40 <Vorpal> elliott, amusing that x&4 wasn't turned into fnord, it was apparently mentioned more than once...
22:23:42 <Vorpal> night →
22:25:27 <fizzie> oerjan: It's a loopy tape.
22:25:30 -!- Vorpal has quit (Read error: Operation timed out).
22:25:58 <fizzie> Wraps around on both edges, has I think a thousand cells or something like that.
22:26:07 -!- bfbot has joined.
22:26:19 <fizzie> (That's not an unheard-of implementation choice either.)
22:26:37 <Bike> bfbot, make me a sandwich, please.
22:27:05 <SirCmpwn> huh, channel messages are broke
22:27:10 <SirCmpwn> doesn't break execution, though
22:27:45 <fizzie> oerjan: (It's not a whole line because of memory usage concerns.)
22:28:18 <oerjan> okay
22:28:48 -!- bfbot has quit (Read error: Connection reset by peer).
22:28:49 <oerjan> ...wouldn't bf command limits take care of that automatically anyhow :P
22:28:59 <SirCmpwn> [ ,. ---------- ]
22:29:08 <SirCmpwn> goal: read until \n, output what's read
22:29:13 <SirCmpwn> doesn't work :(
22:29:50 <fizzie> oerjan: For brainfuck, probably, since you can't waste that much memory in one cycle.
22:30:04 <oerjan> SirCmpwn: is the cell 0 before you start the loop? :P
22:30:11 <SirCmpwn> ah-ha
22:30:26 <SirCmpwn> that might be it
22:31:25 <fizzie> ^bf -[>+],[.,]!wrapped around and terminated
22:31:25 <fungot> wrapped around and terminated
22:32:17 <SirCmpwn> I realized that, with very minor modification, my bot can work on two bytes of memory
22:32:47 <Bike> how do you store "PRIVMSG" in two bytes?
22:32:50 -!- TeruFSX has quit (Ping timeout: 246 seconds).
22:33:04 <SirCmpwn> you don't
22:33:20 <SirCmpwn> read a byte, "is it P", continue
22:33:25 <SirCmpwn> read a byte, "is it R", continue
22:33:27 <SirCmpwn> etc
22:33:45 <SirCmpwn> oerjan: works, thanks! http://i.imgur.com/tcmVu.png
22:34:00 -!- Phantom__Hoover has joined.
22:34:22 <SirCmpwn> I'd like to know where my <> mismatch is, though
22:35:15 <oerjan> hm matching <'s and >'s may not be a common editor feature :P
22:35:35 <SirCmpwn> I'm talking about the memory pointer being in the 65000 range
22:35:41 <SirCmpwn> it underflowed at some point
22:37:19 <oerjan> well are you using "balanced" [] loops, such that every loop is always supposed to be exited in the same cell as it's entered? if so checking it is essentially a bracket matching problem.
22:37:34 <SirCmpwn> yes, more or less
22:37:44 <SirCmpwn> my "if" statements work differently
22:37:49 <oerjan> (there are bf idioms which don't use that, but if you are only using 2 cells you're unlikely to be using them)
22:37:53 <oerjan> ah.
22:38:10 <SirCmpwn> my two cells are general working and stdin
22:38:19 -!- monqy has joined.
22:38:31 <SirCmpwn> read a value -> subtract expected -> set working to 1
22:38:42 <SirCmpwn> then, if zero, the "not expected" handler is run and sets working to zero
22:38:54 <SirCmpwn> then the "expected" handler is skipped because it uses working as the determining factor
22:39:36 <oerjan> don't you mean "if nonzero"
22:40:02 <SirCmpwn> maybe
22:40:49 <oerjan> ok but none of that requires non-balanced loops.
22:52:44 <oerjan> ^bf ,[>>+<< [->>+<<[<+>->>-<<[->+<]]>[-<+>]<] <] >>>[->]<+<+<+<+<+<+<+<+[ ++++++++++++++++++++++++++++++++++++++++++++++ .>]!a
22:52:45 <fungot> /00////0
22:52:55 <oerjan> oops
22:53:19 <oerjan> ^bf ,[>>+<< [->>+<<[<+>->>-<<[->+<]]>[-<+>]<] <] >>>[->]<+<+<+<+<+<+<+<+[ +++++++++++++++++++++++++++++++++++++++++++++++ .>]!a
22:53:19 <fungot> 01100001
22:53:23 <elliott> oerjan is the expert in low-cell BF
22:53:45 <SirCmpwn> what is the goal here?
22:54:02 <SirCmpwn> to output that number?
22:54:16 <oerjan> that's supposed to print in binary
22:54:21 <SirCmpwn> oh, I see
22:54:50 <quintopia> ^bf ,[>>+<< [->>+<<[<+>->>-<<[->+<]]>[-<+>]<] <] >>>[->]<+<+<+<+<+<+<+<+[ +++++++++++++++++++++++++++++++++++++++++++++++ .>]!!
22:54:51 <fungot> 00100001
22:55:01 <quintopia> looks like it works
22:55:04 <quintopia> ^bf ,[>>+<< [->>+<<[<+>->>-<<[->+<]]>[-<+>]<] <] >>>[->]<+<+<+<+<+<+<+<+[ +++++++++++++++++++++++++++++++++++++++++++++++ .>]!
22:55:04 <fungot> 00000000
22:55:05 <oerjan> yep
22:55:53 <oerjan> it's tweaked from my collatz function idea
22:57:29 -!- zzo38 has joined.
22:58:42 <quintopia> hi zzo38
23:03:40 <zzo38> Hello. Any question?
23:03:58 <quintopia> just saying hi
23:08:17 <SirCmpwn> fixed the mismatch :)
23:08:24 <SirCmpwn> I take it back :|
23:08:30 -!- Phantom__Hoover has quit (Ping timeout: 272 seconds).
23:08:52 <SirCmpwn> I fixed *a* mismatch
23:09:38 -!- Phantom__Hoover has joined.
23:13:00 <SirCmpwn> there, found the other
23:28:06 <SirCmpwn> no longer can use two cells
23:28:14 <SirCmpwn> I wrote the channel name into a buffer on channel messages
23:29:45 -!- Frooxius has joined.
23:45:17 -!- carado has quit (Ping timeout: 246 seconds).
23:48:52 <FreeFull> Well, I'm going to take the intersection of three ordered infinite lists
23:49:04 <FreeFull> And I'm wondering why according to google nobody else has done it
23:51:15 <FreeFull> At least not in haskell
23:52:43 <elliott> you can just write the intersection of two...
23:53:06 <elliott> then since the intersection of two ordered lists is ordered, you can take the intersection of that list and another list
23:53:52 <FreeFull> Yeah, I figured that
23:54:10 <shachaf> elliott: ok but what about the intersection of FOUR infinite lists
23:54:25 <FreeFull> I wasn't looking for three lists specifically, just lists
23:56:30 <SirCmpwn> ^bf >[-]<[-]++++++++++[>++++++++<-]>.
23:56:30 <fungot> P
23:56:39 <FreeFull> I figure you can always just get rid of the smaller element
23:56:41 <SirCmpwn> ^bf >[-]<[-]++++++++++[>++++++++<-]>++.
23:56:41 <fungot> R
23:56:51 <FreeFull> And if the elements are equal, you put that in the intersection list
23:57:22 <FreeFull> Of course that would only work for lists growing upwards
23:57:33 <elliott> You can tell whether it grows upwards or downwards easily.
23:57:47 <FreeFull> Yeah, but I'm too lazy to implement that =P
23:57:52 <Bike> isn't that intrinsic to the order...
23:59:33 <elliott> FreeFull: ...it's as simple as direction (a:b:_) = compare b a
2013-01-07
00:02:16 <FreeFull> let upIntersect [] _ = []; upIntersect _ [] = []; upIntersect (x:xs) (y:ys) | x < y = upIntersect xs (y:ys) | x > y = upIntersect (x:xs) ys | x == y = x:upIntersect xs ys
00:02:22 <FreeFull> So ugly D:
00:02:31 <FreeFull> How do I make that prettier
00:04:18 <elliott> That's not even valid code.
00:05:24 <shachaf> You can take inspiration from Data.List
00:05:46 * elliott would probably write it as
00:05:48 <elliott> isect [] _ = []
00:05:48 <elliott> isect _ [] = []
00:05:48 <elliott> isect xss@(x:xs) yss@(y:ys) = case compare x y of LT -> isect xs yss EQ -> x : isect xs ys GT -> isect xss ys
00:05:52 <elliott> Ugh. But with newlines.
00:05:54 <elliott> Stupid irssi.
00:05:57 <FreeFull> elliott: What do you mean it's not valid?
00:06:06 <FreeFull> ghci thinks it's valid
00:06:09 <elliott> Oh, wait.
00:06:11 <elliott> It is valid.
00:06:16 <elliott> I just misparsed the guards.
00:06:19 <elliott> Guard syntax is a bit dumb.
00:07:44 <FreeFull> Wouldn't you separate the cases with ; if you don't have newlines
00:07:53 <elliott> I had newlines but irssi messed it up.
00:09:50 <SirCmpwn> \o/
00:09:52 <SirCmpwn> bot works
00:09:59 <kmc> Delta Heavy is a good name for a band
00:10:00 <FreeFull> You probably have paste_join_multiline = ON
00:10:09 <elliott> I want it on some of the time.
00:10:13 <elliott> I want it off the rest of the time.
00:10:13 -!- bfbot has joined.
00:10:22 <SirCmpwn> $I am written in brainfuck!
00:10:22 <bfbot> I am written in brainfuck!
00:10:32 <monqy> `welcome bfbot
00:10:34 <HackEgo> bfbot: 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.)
00:10:36 <shachaf> $/quit
00:10:36 <bfbot> /quit
00:10:41 <shachaf> bfbot is broken.
00:10:42 <FreeFull> SirCmpwn: What does it do for networking?
00:10:55 <FreeFull> $<CTCP>ACTION licks shachaf<CTCP>
00:10:55 * bfbot licks shachaf
00:10:57 <SirCmpwn> FreeFull: standard brainfuck interpreter with stdin/stdout wired into a socket
00:11:30 <FreeFull> SirCmpwn: Did you write it in a different language and then compile to bf?
00:11:34 <SirCmpwn> nope
00:11:37 <SirCmpwn> https://github.com/SirCmpwn/bf-irc-bot
00:11:38 <FreeFull> Ouch
00:11:52 <FreeFull> So not even rlefuck?
00:12:24 <SirCmpwn> straight-up brainfuck.
00:12:36 <SirCmpwn> $weeeee
00:12:36 <bfbot> weeeee
00:12:45 <FreeFull> $
00:13:00 <SirCmpwn> I did write a special brainfuck interpeter to make my life easier
00:13:08 <SirCmpwn> handles talking to the socket, with some debugging stuff
00:13:42 <SirCmpwn> http://i.imgur.com/woXkC.png
00:13:43 <FreeFull> At least it'll be hard for other people to find bugs in your code and exploit your bot
00:14:09 <Bike> i like how the messages print. lliicckkss
00:14:20 <SirCmpwn> green is outgoing data
00:14:22 <FreeFull> SirCmpwn: Redirect the output to a file so you can watch it in a separate terminal
00:14:23 <SirCmpwn> white is incoming data
00:14:45 <Bike> $green is outgoing data
00:14:45 <bfbot> green is outgoing data
00:15:22 <monqy> $⌫
00:15:23 <bfbot>
00:15:28 <SirCmpwn> /msg bfbot J #channel is the only other command
00:15:30 <elliott> $ QUIT
00:15:31 <bfbot> QUIT
00:15:37 -!- bfbot has left.
00:15:39 <elliott> Hah.
00:15:55 <SirCmpwn> you meanie
00:16:09 * SirCmpwn sees about fixing that
00:16:28 <FreeFull> elliott: What did you do
00:16:34 <SirCmpwn> /msg bfbot J 0
00:16:43 <FreeFull> Oh
00:16:54 <FreeFull> People can make it join any channel?
00:16:59 <SirCmpwn> yeah.
00:17:04 <FreeFull> That doesn't sound right
00:17:06 <SirCmpwn> I don't plan to let the bot run actively
00:17:12 <SirCmpwn> it's not like it's useful
00:20:19 -!- nooga_ has quit (Ping timeout: 240 seconds).
00:32:25 -!- DHeadshot has quit (Read error: Connection reset by peer).
00:32:37 -!- DHeadshot has joined.
00:33:14 -!- DH____ has joined.
00:37:48 -!- DHeadshot has quit (Ping timeout: 272 seconds).
00:40:58 -!- nooodl has quit (Ping timeout: 272 seconds).
00:50:00 -!- FreeFull has quit (Ping timeout: 260 seconds).
00:53:50 -!- DHeadshot has joined.
00:58:04 -!- DH____ has quit (Ping timeout: 272 seconds).
00:59:20 <zzo38> In a new kind of C preprocessor I am making, the commands are starting by a dollar sign. One command is $utf8 which will be used to make UTF-8 character constants. Another command is $pool which makes long character constants converted into pool strings.
01:00:43 <zzo38> (Note: this $utf8 command is for character constants only; it cannot be used with string literals, or with names! If you don't specify $utf8 or $pool then it will treat it as single-byte encoding.)
01:04:11 <shachaf> What if I want to use a string literal?
01:04:22 <shachaf> Or a name.
01:08:25 <zzo38> You can still use UTF-8 string literals but they will be treated as a single-byte encoding and not UTF-8, so you need to decode UTF-8 if you want to be able to use Unicode string literals in your program.
01:09:09 -!- zzo38 has quit (Remote host closed the connection).
01:13:16 <coppro> anyone want to play chessers?
01:13:35 <coppro> it's a variant where pieces can only move forward until they hit the back rank, and when a piece captures, it can immediately move again
01:17:59 -!- FreeFull has joined.
01:19:19 <shachaf> kmc: Reading #haskell logs is weird because you're in them.
01:21:47 <kmc> aww
01:21:49 <kmc> thanks?
01:22:46 <oerjan> kmc: no he means you have to quit
01:22:46 <shachaf> Those were the good old days.
01:22:55 <oerjan> oh old logs
01:22:55 <shachaf> oerjan: no :'(
01:23:24 <oerjan> I WAS JOKING PLEASE DON'T CRY
01:23:31 <shachaf> : (
01:23:43 <shachaf> `ls bin
01:23:45 <HackEgo> ​? \ @ \ WELCOME \ addquote \ allquotes \ anonlog \ calc \ define \ delquote \ emoclaw \ emoclew \ etymology \ forget \ fortune \ frink \ google \ hatesgeo \ interp \ joustreport \ jousturl \ json \ karma \ karma- \ karma+ \ learn \ log \ logurl \ lua \ luac \ luarocks \ luarocks-admin \ macro \ maketext \ marco \ No \ pastaquote \
01:23:58 <shachaf> `No
01:23:59 <HackEgo> No output.
01:24:06 <shachaf> `No hi
01:24:07 <HackEgo> No output.
01:24:11 <shachaf> `cat bin/No
01:24:12 <HackEgo> ​#!/bin/sh
01:24:22 <shachaf> `ls bin | tail -n +30
01:24:23 <HackEgo> ls: cannot access bin | tail -n +30: No such file or directory
01:24:27 <shachaf> `ls bin | tail -n+30
01:24:28 <HackEgo> ls: cannot access bin | tail -n+30: No such file or directory
01:24:32 <shachaf> `run ls bin | tail -n+30
01:24:33 <HackEgo> luarocks \ luarocks-admin \ macro \ maketext \ marco \ No \ pastaquote \ paste \ pastefortunes \ pastekarma \ pastelog \ pastelogs \ pastenquotes \ pastequotes \ pastewisdom \ pastlog \ ping \ prefixes \ qc \ quachaf \ quoerjan \ quoerjandom \ quote \ quotes \ randomanonlog \ relcome \ rng \ roll \ rot13 \ run \ runc \ runce \ searchlog \ show \ tc
01:24:43 <shachaf> `quoerjandom
01:24:45 <HackEgo> 16) <fungot> oerjan: are you a man, if there weren't evil in this kingdom to you! you shall find bekkler! executing program. please let me go... put me out! he's really a tricycle! pass him!
01:24:48 <shachaf> `quoerjan
01:24:49 <HackEgo> 514) <oerjan> theorem prover yada yada halting problem. \ 189) <oerjan> elliott: i think i wrote a proof of 0*x = 0 on this channel once \ 614) <oerjan> elliott: it occurs to me that `? welcome is atypical: its information is actually true. \ 361) <elliott_> I'm not even going to try and understand what you're proposing. <oerjan> i understand it
01:24:53 <shachaf> Oh.
01:24:57 <shachaf> Why did I mess up quoerjan?
01:25:02 <shachaf> `cat bin/tc
01:25:02 <oerjan> EVIL
01:25:03 <HackEgo> cat: bin/tc: No such file or directory
01:25:13 <shachaf> `run ls bin | tail -n+60
01:25:15 <HackEgo> runc \ runce \ searchlog \ show \ tclkit \ tell \ toutf8 \ translate \ translatefromto \ translateto \ units \ url \ welcome \ WeLcOmE \ WELCOME \ WELCOMEe \ wl \ word \ words \ wtf \ zalgo
01:25:27 <shachaf> `run echo abc | zalgo
01:25:29 <HackEgo> a̋b̼c͊ \ ̭
01:26:08 <oerjan> `WELCOMEe now what
01:26:09 <HackEgo> NOW: WHAT: 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.)
01:26:21 <oerjan> `WELCOME now what
01:26:23 <HackEgo> NOW: WHAT: 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.)
01:26:26 <shachaf> `run echo 'echo -n "oerjan $@" | zalgo' > bin/zalgoerjan; chmod +x bin/zalgoerjan
01:26:30 <HackEgo> No output.
01:26:34 <shachaf> `zalgoerjan hi
01:26:35 <HackEgo> ŏe͓r̉j͘a͑n͚ ̲h̔i̮
01:26:36 <oerjan> `rm bin/WELCOMEe
01:26:40 <HackEgo> No output.
01:26:50 <shachaf> `cat bin/translateto
01:26:51 <HackEgo> ​#!/bin/bash \ exec translatefromto "auto $1"
01:27:13 <oerjan> i think the translate* commands were bitrotted even before HackEgo's web proxy died
01:27:31 <shachaf> `cat bin/translatefrom
01:27:32 <HackEgo> cat: bin/translatefrom: No such file or directory
01:27:37 <shachaf> `cat bin/translatefromto
01:27:38 <HackEgo> ​#!/bin/bash \ TEXT="$1" \ FROM=`echo "$TEXT" | sed 's/ .*$//'` \ TEXT=`echo "$TEXT" | sed 's/^[^ ]* //'` \ TO=`echo "$TEXT" | sed 's/ .*$//'` \ TEXT=`echo "$TEXT" | sed 's/^[^ ]* //'` \ if [ "$FROM" = "auto" ] ; then FROM="" ; fi \ \ curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate \ \ --data-urlenco
01:27:42 <shachaf> `cat bin/translate
01:27:43 <HackEgo> ​#!/bin/bash \ exec translatefromto "auto en $1"
01:28:06 <shachaf> `run echo $'#!/bin/bash\nexec translatefromto "auto no $1"' > bin/translatetoerjan; chmod +x bin/translatetoerjan
01:28:10 <HackEgo> No output.
01:28:20 <shachaf> Or should it be $1 no?
01:28:45 <shachaf> `hatesgeo
01:28:52 <shachaf> `cat bin/hatesgeo
01:28:53 <HackEgo> ​#!/bin/sh \ perl -n -e '/:(.*?)!.*JOIN/; $j{$1}++; END {print "$_ $j{$_};" for sort {$j{$b} <=> $j{$a}} keys %j}' $@
01:29:12 <oerjan> `cat bin/toutf8
01:29:13 <HackEgo> cat: bin/toutf8 : No such file or directory
01:29:17 <HackEgo> No output.
01:29:29 <shachaf> `cat bin/toutf8
01:29:30 <HackEgo> ​#!/usr/bin/python \ import sys \ import chardet \ x = sys.stdin.read() \ enc = chardet.detect(x)['encoding'] \ sys.stdout.write(x.decode(enc).encode('UTF-8'))
01:29:39 <shachaf> `run echo toutf8 | xxd
01:29:41 <HackEgo> 0000000: 746f 7574 6638 0a toutf8.
01:29:53 <shachaf> `cat bin/toutf8
01:29:54 <HackEgo> cat: bin/toutf8 : No such file or directory
01:29:55 <shachaf> Oh.
01:30:05 <shachaf> There I was thinking it was a clever trick.
01:34:16 <shachaf> Hmm.
01:34:28 <shachaf> So whenever I wonder about UTF-8 encoding/decoding of something I do it by hand.
01:34:37 <shachaf> I should probably write a script for that by now, or something.
01:35:30 <oerjan> funny i've been thinking about this all day
01:35:40 <oerjan> one of the bots should have such a script
01:36:22 <oerjan> or two, rather
01:36:56 <oerjan> lambdabot should already have it, but it's encodings are hopelessly broken
01:37:00 <oerjan> *its
01:37:14 -!- TeruFSX has joined.
01:38:46 -!- Phantom__Hoover has quit (Quit: Leaving).
01:40:34 <oerjan> @show ø
01:40:34 <lambdabot> "\195\184"
01:41:16 <shachaf> @show øëïáñ
01:41:16 <lambdabot> "\195\184\195\171\195\175\195\161\195\177"
01:41:47 <oerjan> ^ord øëïáñ
01:41:47 <fungot> 195 184 195 171 195 175 195 161 195 177
01:42:13 <oerjan> actually what i want is a way to get from utf-8 to codepoint
01:42:48 <shachaf> @read "\195\184\195\171\195\175\195\161\195\177"
01:42:48 <lambdabot> øëïáñ
01:43:21 <shachaf> At least lambdabot's bugs are well-behaved.
01:52:46 <FreeFull> > putStr "\195"
01:52:47 <lambdabot> No instance for (GHC.Show.Show (GHC.Types.IO ()))
01:52:47 <lambdabot> arising from a use of ...
01:52:56 <FreeFull> o.o
01:53:09 <shachaf> `zaloerjan
01:53:10 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: zaloerjan: not found
01:53:13 <shachaf> `zalgoerjan
01:53:15 <HackEgo> o͑e̞ȑj̴a̩nͫ ͠
01:53:26 <FreeFull> Why did lambdabot error there
01:53:34 <FreeFull> Oh wait
01:53:35 <FreeFull> Nevermind
01:53:39 <shachaf> `run echo '(echo -n "oerjan $@"; cat) | zalgo' > bin/zalgoerjan; chmod +x bin/zalgoerjan
01:53:42 <HackEgo> No output.
01:53:46 <shachaf> `zalgoerjan hello
01:53:50 <FreeFull> @putStrLn "\195"
01:53:50 <lambdabot> Unknown command, try @list
01:53:53 <FreeFull> @list
01:53:53 <lambdabot> http://code.haskell.org/lambdabot/COMMANDS
01:54:04 <shachaf> `run echo 'echo -n "oerjan $@" | zalgo' > bin/zalgoerjan; chmod +x bin/zalgoerjan
01:54:08 <FreeFull> @vixen
01:54:08 <lambdabot> People react to fear, not love; they don't teach that in Sunday School, but it's true.
01:54:13 <shachaf> `zalgoerjan uhhhh
01:54:33 <FreeFull> @faq
01:54:33 <lambdabot> The answer is: Yes! Haskell can do that.
01:54:49 <HackEgo> No output.
01:55:08 <FreeFull> `poweroff
01:55:21 <HackEgo> No output.
01:55:22 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: poweroff: not found
01:55:24 <HackEgo> No output.
01:55:34 <FreeFull> `/usr/sbin/poweroff
01:55:35 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /usr/sbin/poweroff: No such file or directory \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /usr/sbin/poweroff: cannot execute: No such file or directory
01:55:41 <FreeFull> `/sbin/poweroff
01:55:43 <HackEgo> poweroff: must be superuser.
01:56:17 <FreeFull> @read "a"
01:56:17 <lambdabot> a
01:56:23 <FreeFull> @read "-3"
01:56:23 <lambdabot> -3
01:58:32 <oerjan> i had this hunch the other day that whoever replaced @vixen chose a command that would annoy precisely the kind of people who would complain about the original
01:59:23 <Bike> @vixen
01:59:23 <lambdabot> Castro couldn't even go to the bathroom unless the Soviet Union put the nickel in the toilet.
01:59:24 <oerjan> *who did complain
01:59:38 <oerjan> hint: it's not really @vixen
02:00:14 <shachaf> `zalgoerjan Bike
02:00:15 <HackEgo> o̻eͧr͗j̷a͡nͭ ̕Bͣi̙k̷e͢
02:00:38 <olsner> `zalgoerjan ZALGO
02:00:39 <HackEgo> oͯe̙ȓjͮa͏n̤ ̿Z̖A̰L͛G̵O͙
02:00:50 <shachaf> `zalgolsner
02:00:51 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: zalgolsner: not found
02:00:57 <Bike> "combining double inverted breve"? awesome
02:01:45 <oerjan> maybe you should know that my putty terminal shows almost none of the special zalgo characters.
02:02:00 <olsner> shachaf: it's zalgoerjan, hth
02:02:00 <Bike> I'm sorry.
02:02:04 <elliott> oerjan: @vixen wasn't replaced by anything.
02:02:09 <elliott> lambdabot has typo-correction.
02:02:18 <oerjan> elliott: ...i know.
02:02:26 <oerjan> this does not change my theory.
02:02:35 <elliott> count myself as someone woh would complain about @vixen, fwiw
02:02:47 <Bike> @vixen
02:02:47 <lambdabot> I can see clearly now... that I was wrong in not acting more decisively and more forthrightly in dealing with Watergate.
02:02:49 <oerjan> i don't think the corrected command existed when @vixen did
02:02:53 <shachaf> elliott: Did you complain about @nixon?
02:02:58 <elliott> oerjan: it did
02:03:02 <shachaf> kmc complained about the unfair treatment of one vs. the other.
02:03:05 <oerjan> oh.
02:03:13 <elliott> shachaf: no. I don't think equating them is reasonable.
02:03:24 <oerjan> CURSE REALITY RUINING MY THEORIES
02:07:44 <kmc> i think my position on @vixen vs @nixon might have changed
02:07:58 <Bike> @nixon
02:07:59 <lambdabot> Don't try to take on a new personality; it doesn't work.
02:08:02 <kmc> i haven't firmly decided because it doesn't matter in the slightest
02:08:05 <shachaf> What's the newsition?
02:09:06 <elliott> sounds like lambdabot is giving kmc advice
02:09:21 <elliott> s/woh/who/
02:09:48 <shachaf> Don't blame kmc. He's from Massachusetts.
02:12:00 <oerjan> can we burn him as a witch instead?
02:12:31 <olsner> yes, we can do that!
02:14:38 <kmc> i have been to salem
02:14:43 <kmc> in fact it was halloween
02:14:45 <kmc> by accident
02:15:01 <kmc> it was a bicycle-date
02:15:26 <oerjan> a cyclic event
02:15:49 <kmc> a bikewise cyclic day
02:15:50 <oerjan> also i'm sorry, apparently you hang witches there, not burn them
02:16:03 <kmc> or stack rocks on them until they are crushed to death
02:16:47 <shachaf> kmc: You should go to Alice's Restaurant.
02:16:56 <shachaf> I guess that's a bit farther than Salem.
02:19:20 <kmc> yes
02:19:25 <kmc> there is a fast boat to/from salem
02:30:46 <oerjan> :t let nextInCycle3 x = ([x ..] ++ [minBound]) !! 1 in nextInCycle3
02:30:47 <lambdabot> (Bounded a, Enum a) => a -> a
02:31:11 -!- Arc_Koen has quit (Quit: Arc_Koen).
02:54:47 <FreeFull> I think @vixen should be cooler
02:57:09 <elliott> @vixen is just @nixon.
02:57:09 <lambdabot> Voters quickly forget what a man says.
02:57:43 <Bike> @vixen should be @nixon, but with all the quotes subtly rewritten into sexual innuendos.
02:57:43 <lambdabot> The Chinese use two brush strokes to write the word 'crisis.' One brush stroke stands for danger; the other for opportunity. In a crisis, be aware of the danger - but recognize the opportunity.
02:58:15 <oerjan> you mean it isn't?
03:00:42 <FreeFull> @vixen should be something completely unrelated to US presidents
03:00:42 <lambdabot> The press is the enemy.
03:02:54 <elliott> It was.
03:41:37 <kmc> shachaf: thanks to you i have to start cups whenever i want to print something, and stop it when i'm done :(
03:42:24 <oerjan> how evil
03:42:29 <shachaf> kmc: Sorry. :-(
03:42:40 <shachaf> You could try not caring.
03:42:48 <shachaf> It works for almost everyone else in the world.
03:43:03 <elliott> kmc: Have you tried not printing things?
03:43:08 <shachaf> Also that.
03:43:24 <shachaf> Also you could adjust it to a different port? I mean, there are literally THOUSANDS of them, how could a malicious person try all of them?
03:44:16 <oerjan> inconceivable!
04:10:13 -!- copumpkin has quit (Ping timeout: 252 seconds).
04:10:49 -!- copumpkin has joined.
04:12:05 <SirCmpwn> 65535 of them, actually
04:12:16 <SirCmpwn> anyway, this made me chuckle: http://www.reddit.com/r/programming/comments/16376h/i_wrote_a_functional_irc_bot_in_brainfuck/c7sejbv
04:47:24 <oerjan> http://www.reddit.com/r/programming/comments/16376h/i_wrote_a_functional_irc_bot_in_brainfuck/c7sda2c has a point.
04:59:51 <kmc> happy orthodox christmas
05:00:08 <oerjan> yay
05:08:58 -!- zzo38 has joined.
05:10:57 -!- TeruFSX has quit (Ping timeout: 276 seconds).
05:29:09 <zzo38> I have found glyphs some people have made up for some dwarf planets (mentioned on a Wikipedia talk page): http://www.zanestein.com/Trans-pluto.htm
05:40:43 <Sgeo> Is PLAI generally considered good?
05:41:05 <Sgeo> I feel like I should read HtDP (I feel like I'm a suckier programmer than I like to think), PLAI and SICP
06:12:55 <kmc> "So to recap, what's good about you opposed to me is that you know you're several degrees less clever than you think you are, and that's somehow morally healthy. Whereas my opinion of my own intelligence, as flawed an evaluation as anyone's is likely to be, is deemed unreliable because of its albeit subjective consistency."
06:13:49 <Bike> "know you're several degrees less clever than you think you are"? is this some kind of doxastic test question
06:32:13 <Sgeo> Dammit Chrome, when I copy a URL that has %20 in it, I don't want it to go into the clipboard as spaces
06:32:26 <monqy> oops sorry -chrome
06:33:48 <Sgeo> Theophilus, dont perform oral sex on girls against the city wall like a dog
06:34:03 <Sgeo> http://www.pompeiana.org/resources/ancient/graffiti%20from%20pompeii.htm
06:35:08 <monqy> oh ive seen that list
06:35:18 <kmc> "On April 19th, I made bread"
06:35:21 <kmc> that's some shit graffiti
06:35:24 <monqy> it's a good list
06:35:40 <kmc> unless "make bread" is slang for shitting
06:35:42 <kmc> which it probably is
06:37:39 <kmc> "The one who buggers a fire burns his penis"
06:37:42 <kmc> words of wisdom
06:37:57 <oerjan> hard-earned ones
06:38:12 <kmc> "We have wet the bed, host. I confess we have done wrong. If you want to know why, there was no chamber pot"
06:38:16 <kmc> what?
06:38:23 <kmc> "no chamber pot, guess i'll just piss in my own bed then"
06:38:50 <Bike> should have taken a cue from all the other graffitists and just pissed on the wall, gawd
06:38:51 -!- oerjan has quit (Quit: Too much shit talk).
06:39:12 <elliott> bye oerjan
06:48:23 <Gregor> VIII.2 (in the basilica); 1882: The one who buggers a fire burns his penis
06:48:25 <Gregor> Insightful
07:02:33 <zzo38> Sgeo: Does Chrome have any option to turn off such things? Many things I have seen in Chrome I don't like; it is why I don't use that one.
07:10:03 <Jafet> "This is a cached version of a page developed by Prof. Prof. Brian Harvey."
07:13:18 -!- atehwa has quit (Ping timeout: 264 seconds).
07:21:18 <quintopia> i profess professing myself sometimes
07:25:52 -!- FreeFull has quit.
07:58:36 -!- c00kiemon5ter has quit (Ping timeout: 272 seconds).
08:03:05 -!- dessos has joined.
08:04:10 -!- dessos has quit (Read error: Connection reset by peer).
08:05:48 -!- dessos has joined.
08:06:30 -!- azaq23 has joined.
08:07:16 -!- dessos has quit (Read error: Connection reset by peer).
08:08:08 -!- dessos has joined.
08:18:57 -!- epicmonkey has joined.
08:25:08 -!- Bike has quit (Quit: leaving).
08:40:15 -!- c00kiemon5ter has joined.
09:30:27 -!- DHeadshot has quit (Read error: Connection reset by peer).
09:59:14 -!- mig22 has joined.
10:01:01 -!- atehwa has joined.
10:02:19 -!- GreyKnight has joined.
10:02:55 <GreyKnight> coppro: No I didn't. Somebody else wrote that.
10:04:05 <GreyKnight> @tell ais523 Please link to your paper on the "simultaneous" question for circuit inputs, when it's out
10:04:05 <lambdabot> Consider it noted.
10:07:46 <GreyKnight> md_5: you want to script Java? Why not use JavaScript, duh
10:08:29 <GreyKnight> Sgeo: I highly recommend SICP at least, it is good stuff
10:11:57 <fizzie> We did PLAI on a course.
10:12:17 <fizzie> On the course that was the sequel of the course that did SICP.
10:12:31 -!- greyooze has joined.
10:12:47 <fizzie> Or maybe it was in fact the sequel of the course that did HtDP but used to do SICP.
10:13:10 -!- GreyKnight has quit (Ping timeout: 252 seconds).
10:13:44 <greyooze> `run echo "A lens is just a store comonad coalgebra!" >wisdom/lens
10:13:44 <greyooze> `? lens
10:13:45 <fizzie> It's all very confusing, because they were phasing out Scheme right when I went through the courses. It got split into two first, and I think my year group was the only one that got the two-part edition.
10:13:50 <HackEgo> No output.
10:13:53 <HackEgo> A lens is just a store comonad coalgebra!
10:14:34 <fizzie> `run ls wisdom/* | wc -l
10:14:35 <HackEgo> 98
10:14:37 <fizzie> So much wisdom.
10:14:55 <Sgeo> fizzie, how was PLAI?
10:17:26 <fizzie> Sgeo: I think it was good. We used a draft version from the author's website, I think. It's very much more about "here's how a programming language is/can be implemented" than "here's what up with this programming thing".
10:17:58 -!- mig22 has quit (Quit: mig22).
10:18:07 <fizzie> Re wisdom, I really like "the monad trail".
10:18:09 <fizzie> `? monad
10:18:11 <HackEgo> Monads are just monoids in the category of endofunctors.
10:18:12 <fizzie> `? monoid
10:18:13 <HackEgo> Monoids are just categories with a single object.
10:18:15 <fizzie> `? endofunctor
10:18:16 <HackEgo> Endofunctors are just endomorphisms in the category of categories.
10:18:17 <fizzie> `? category
10:18:19 <HackEgo> Categories are just categories.
10:18:30 <olsner> `? comonad
10:18:32 <HackEgo> Comonads are just monads in the dual category.
10:18:40 -!- greyooze has quit (Ping timeout: 252 seconds).
10:18:45 <fizzie> `? endomorphism
10:18:46 <HackEgo> Endomorphisms are just morphisms which compose with themselves.
10:18:48 <fizzie> `? morphism
10:18:50 <HackEgo> A morphism is a map between two objects in an abstract category.
10:19:11 <fizzie> That last is missing the "just".
10:19:19 <zzo38> Write it then.
10:19:52 <fizzie> `run sed -i -e 's/is a/is just a/' wisdom/morphism
10:19:54 <Sgeo> Does that monads one come from a brief, incomplete, and mostly wrong history of programming languages, or did that take it from a real statement?
10:19:56 <HackEgo> No output.
10:20:11 <fizzie> `? morphism
10:20:13 <HackEgo> A morphism is just a map between two objects in an abstract category.
10:21:13 -!- nooga has joined.
10:22:32 <zzo38> Sgeo: I don't know.
10:28:39 -!- GreyKnight has joined.
10:29:27 <GreyKnight> Sgeo: monad was the original AFAIK
10:29:28 <GreyKnight> zzo38: re $utf8: but I thought you hated unicode?!?
10:30:00 <zzo38> GreyKnight: I don't really like Unicode, so it is why it is not the default.
10:30:28 -!- EgoBot has quit (Remote host closed the connection).
10:30:34 <zzo38> Sure I could even add VLQ mode if it is useful to someone!
10:30:40 -!- EgoBot has joined.
10:32:20 <GreyKnight> SirCmpwn: some of our favourite languages contain nothing *but* functions
10:32:31 <zzo38> (UTF-8 and VLQ are two ways to encode short or long numbers; in both cases the octets coded 0 to 127 are representing themself number)
10:33:50 <zzo38> But VLQ will not be compatible with programs that expect ASCII.
10:34:50 <Sgeo> o.O KnightOS?
10:34:55 -!- Sgeo has left ("Leaving").
10:34:58 -!- Sgeo has joined.
10:35:05 <Sgeo> Stupid occasionally broken XChat
10:38:06 <GreyKnight> zzo38: didn't you say it preserves ASCII characters though??
10:40:18 <zzo38> GreyKnight: Yes, it will, but if you use VLQ some characters that are not ASCII characters will have bytes corresponding to ASCII characters, causing the program to read stuff that you didn't mean to put in. Therefore, VLQ should not be used to encode text files.
10:42:19 <zzo38> What I mean with the $utf8 command in my program, is that like you can write 'A' in a C program to make 65, then if instead of A you have a UTF-8 sequence (even if it is not in the range of Unicode, or is an overlong encoding, etc), then it is replaced by the number it represents.
10:43:45 -!- GreyKnight has quit (Ping timeout: 260 seconds).
10:47:04 -!- Phantom_Hoover has joined.
11:10:23 -!- zzo38 has quit (Remote host closed the connection).
11:31:29 <Sgeo> How much value can I get out of watching the SICP lectures rather than reading?
11:31:55 <Jafet> $5
11:32:15 <c00kiemon5ter> is that total or per hour ?
11:33:34 -!- GreyKnight has joined.
11:33:59 <GreyKnight> Sgeo: text >> video IMAO
11:34:32 <c00kiemon5ter> what is A there ^
11:34:36 <Jafet> You can collect the $5 from GreyKnight.
11:36:05 -!- asiekierka has quit (Excess Flood).
11:37:06 -!- asiekierka has joined.
11:38:06 <fizzie> A is for "awesome" there, I think.
11:38:36 <GreyKnight> "arrogant"
11:38:36 <GreyKnight> Opposite of IMHO
11:39:31 <GreyKnight> Jafet: I don't have any $s
11:39:32 <fizzie> IMHO, "IMHO" opinions generally aren't all that H.
11:39:38 <c00kiemon5ter> great, so after watching the vids I'll get my $5 from GreyKnight and buy some cookies.
11:39:49 <c00kiemon5ter> wat! I was tricked <.<
11:40:04 <fizzie> I have one dime and one cent, if someone wants to pick them up.
11:40:28 <fizzie> I keep mixing them with local currency accidentally.
11:44:30 -!- GreyKnight has quit (Ping timeout: 264 seconds).
11:46:29 -!- GreyKnight has joined.
11:48:11 <GreyKnight> fizzie: that's why I use IMAO! I am honest you see :o)
11:50:55 <fizzie> I had a sequel comment to make, but got sidetracked and forgot it.
11:52:55 -!- GreyKnight has quit (Ping timeout: 265 seconds).
12:03:17 -!- monqy has quit (Quit: hello).
12:03:45 -!- WeThePeople has joined.
12:14:16 -!- ais523 has joined.
12:22:16 -!- Taneb has joined.
12:25:26 -!- WeThePeople has quit (Remote host closed the connection).
12:39:29 <coppro> Gregor: what?
12:49:57 <Gregor> pooppy: What what?
12:50:42 <coppro> err, not you
12:50:49 <coppro> stupid tabcomplete
13:00:33 -!- TeruFSX has joined.
13:05:51 -!- ais523 has quit.
13:06:29 -!- TeruFSX has quit (Ping timeout: 248 seconds).
13:12:45 -!- aminos has joined.
13:13:24 -!- aminos has quit (Read error: Connection reset by peer).
13:18:55 -!- Phantom__Hoover has joined.
13:20:21 -!- Phantom_Hoover has quit (Ping timeout: 272 seconds).
13:21:33 -!- Phantom__Hoover has quit (Read error: Operation timed out).
13:35:46 -!- Phantom__Hoover has joined.
13:37:08 -!- Phantom__Hoover has quit (Read error: Operation timed out).
13:39:15 * Sgeo re-reads the PSOX spec
13:42:28 <fizzie> Is a new version of PSOX in the works?
13:42:35 <Sgeo> Probably not
13:42:42 <fizzie> In the WROX, then.
13:42:43 <Sgeo> waitwhat
13:42:44 <Sgeo> "0x00 0x02 0x16 0x0A
13:42:44 <Sgeo> Close and delete file descriptor f, and change either the current infile or outfile descriptors, or both, to stdio (0x02 for outfile, 0x03 for infile) if necessary."
13:43:13 <Sgeo> That function does not look like it takes an f
13:43:39 -!- carado has joined.
13:44:33 <Sgeo> It does, the spec just doesn't say it
13:44:34 <Sgeo> Bluh
13:48:17 -!- ais523 has joined.
13:50:50 -!- Taneb has quit (Quit: Page closed).
13:52:58 -!- Phantom__Hoover has joined.
14:00:04 -!- Arc_Koen has joined.
14:04:58 -!- azaq23 has quit (Quit: Leaving.).
14:36:20 -!- Taneb has joined.
14:44:37 -!- Nisstyre-laptop has joined.
14:47:15 -!- Nisstyre-laptop has quit (Client Quit).
14:54:45 -!- Nisstyre-laptop has joined.
15:20:17 -!- Phantom__Hoover has quit (Read error: Operation timed out).
15:21:48 -!- Nisstyre-laptop has quit (Quit: Leaving).
15:33:39 -!- FreeFull has joined.
15:57:44 -!- Phantom_Hoover has joined.
16:00:21 <Sgeo> "For example, in the following code the world is not destroyed as the preceding check fails:"
16:04:07 -!- yiyus has quit (Ping timeout: 260 seconds).
16:06:14 -!- yiyus has joined.
16:07:52 -!- FreeFull_ has joined.
16:08:00 -!- FreeFull_ has quit (Client Quit).
16:23:02 -!- GreyKnight has joined.
16:24:47 <shachaf> kmc: Hmm, I think I got on the wrong train.
16:25:28 <shachaf> Now I'm going all the way to Santa Clara, I guess.
16:26:08 <Sgeo> I'm going to try to reset my sleep cycle today. I think I'll just passively watch the SICP lectures
16:28:51 <shachaf> It won't work.
16:29:58 <GreyKnight> What is PSOX?
16:29:59 <GreyKnight> I can't find anything about it :-(
16:30:00 * GreyKnight pings fizzie and Sgeo in the hopes of getting a link from one of them
16:30:38 -!- GreyKnight has quit (Excess Flood).
16:31:52 <Sgeo> ...
16:32:36 <Sgeo> @message GreyKnight http://esolangs.org/wiki/PSOX
16:32:36 <lambdabot> Maybe you meant: messages messages?
16:33:42 <Sgeo> @tell GreyKnight http://esolangs.org/wiki/PSOX . Note that the latest version has a typo that needs to be fixed, the spec points to a URL that doesn't work (look at repo instead), and the file domain doesn't work (the others do, despite what the readme says)
16:33:42 <lambdabot> Consider it noted.
16:34:27 -!- GreyKnight has joined.
16:34:41 <Phantom_Hoover> hey GreyKnight i hear you're from northern ireland
16:34:49 <Phantom_Hoover> my commiserations
16:34:59 -!- greyooze has joined.
16:35:02 <greyooze> Sgeo: Ugh. That was not my fault.
16:35:26 <Phantom_Hoover> <Phantom_Hoover> hey GreyKnight i hear you're from northern ireland
16:35:26 <Phantom_Hoover> <Phantom_Hoover> my commiserations
16:35:27 <Sgeo> <Sgeo> @tell GreyKnight http://esolangs.org/wiki/PSOX . Note that the latest version has a typo that needs to be fixed, the spec points to a URL that doesn't work (look at repo instead), and the file domain doesn't work (the others do, despite what the readme says)
16:35:32 <greyooze> My connection likes to die slowly, wait five minutes, then transmit everything I said all in one go
16:35:43 <greyooze> > instant excess flood, just add water
16:35:45 <lambdabot> <hint>:1:21: parse error on input `,'
16:36:17 <Sgeo> I'm going to step out soon
16:36:21 <greyooze> Phantom_Hoover: your mother :-D
16:36:26 <Sgeo> Take a very long walk in search of coffee
16:36:36 <Phantom_Hoover> yes, she's from northern ireland too
16:36:46 <Sgeo> Hmm, does 7-Eleven sell coffee
16:37:13 -!- GreyKnight has quit (Client Quit).
16:37:16 -!- greyooze has changed nick to GreyKnight.
16:39:03 <GreyKnight> Sgeo: (RE: PSOX) ah, cool. You're the maintainer?
16:39:03 <lambdabot> GreyKnight: You have 1 new message. '/msg lambdabot @messages' to read it.
16:39:15 <GreyKnight> and/or author
16:39:36 <Sgeo> GreyKnight, primary author. elliott removed a feature.
16:39:51 <GreyKnight> "that's LIKE helping"
16:40:07 <Sgeo> I wouldn't call myself the maintainer. It hasn't been maintained since 2008
16:41:59 <GreyKnight> maybe it's just been perfected and therefore needs no changes :-)
16:42:59 <Sgeo> "Guile also offers some more experimental interfaces in a separate module. As was the case with the Large Hadron Collider, it is unclear to our senior macrologists whether adding these interfaces will result in awesomeness or in the destruction of Guile via the creation of a singularity"
16:43:36 <GreyKnight> Sounds like win-win :^)
16:46:51 <GreyKnight> Sgeo: so are there any outstanding things for PSOX or is it basically a solved problem
16:54:09 -!- GreyKnight has quit (Ping timeout: 256 seconds).
16:56:16 -!- GreyKnight has joined.
17:00:25 -!- AnotherTest has joined.
17:02:21 <FreeFull> I usually just have a fullscreen terminal open in a desktop
17:03:31 <AnotherTest> Hello
17:05:02 <Sgeo> GreyKnight, the file domain is not specified yet
17:05:07 <Sgeo> And unimplemented
17:05:17 <Sgeo> Also, it's rather Brainfuck-centric
17:05:28 <Sgeo> A lot of NULs that some esolangs may be unable to handle
17:05:43 <Sgeo> Choices made with Brainfuck in mind (0 = success)
17:05:44 <Sgeo> etc
17:05:57 -!- GreyKnight has quit (Ping timeout: 248 seconds).
17:05:57 <FreeFull> I wonder how many brainfuck implementations there are in haskell
17:06:34 -!- GreyKnight has joined.
17:07:48 <Arc_Koen> alot
17:10:06 <FreeFull> https://lh3.ggpht.com/_D_Z-D2tzi14/S8TRIo4br3I/AAAAAAAACv4/Zh7_GcMlRKo/s1600/ALOT.png
17:10:12 <GreyKnight> Sgeo: I am having a think about a variant control format that uses printable ASCII characters (seems the most likely range to be useful)
17:10:34 <GreyKnight> ...useful for languages that can't output arbitrary bytes
17:11:23 <GreyKnight> FreeFull: is than an alot :-I
17:11:30 <FreeFull> Yes
17:11:35 <Arc_Koen> FreeFull: that's actually what made me remove the space
17:12:08 <FreeFull> I don't want to imagine an alot of brainfuck
17:12:15 <FreeFull> That would be a poor, poor creature
17:12:52 <ais523> GreyKnight: what about Radixal!!!!?
17:12:52 <lambdabot> ais523: You have 3 new messages. '/msg lambdabot @messages' to read them.
17:12:57 <ais523> that can't even output arbitrary ASCII
17:13:11 <GreyKnight> "tough luck, you're on your own" ;-)
17:13:40 <GreyKnight> hm actually maybe we can have custom format translations along with the existing custom domains
17:13:57 <GreyKnight> that will allow handling bizarro languages like Radixal!!!! which need special cases
17:14:16 <Arc_Koen> FreeFull: but it would be alot of brainfuck *in haskell*
17:14:30 <ais523> specifically, it can't output prime-numbered codepoints, nor a few composite-numbered codepoints either
17:15:04 <GreyKnight> simple ASCII format translation: 0x00 0x01 0x02 maps to the string "`00 01 02`"
17:15:13 <ais523> GreyKnight: http://www.cs.bham.ac.uk/~drg/papers/popl11.pdf may be the paper you're looking for
17:15:15 <GreyKnight> and "``" is a literal "`"
17:15:30 * Arc_Koen adds to todo list: implement a mao engine that includes an esoteric programming language to write new rules
17:15:56 <GreyKnight> Arc_Koen: of course the language must be undocumented except by examples
17:16:01 <Arc_Koen> haha
17:16:13 <Arc_Koen> I don't know about that
17:16:17 <FreeFull> @src fix
17:16:17 <lambdabot> fix f = let x = f x in x
17:16:34 <ais523> GreyKnight: you could take binary as an input format, using arbitrary bytes as digits
17:16:36 <Arc_Koen> I've played mao with friends but it was closer to what Kevan would call "mini-mao"
17:16:39 <ais523> and require the input to start with a 0
17:16:53 <GreyKnight> thanks ais523, getting it now (will read later in the week probably)
17:17:13 <Arc_Koen> my main issue with mao is the "no talking" thing
17:17:27 <Arc_Koen> it was supposed to be fun, therefore we talked a lot
17:17:36 <GreyKnight> Arc_Koen: examples with no comments? :-o
17:17:41 <ais523> Arc_Koen: I find it more fun with no talking
17:17:50 <ais523> and the occasional PoO to argue about the rules (without mentioning them)
17:18:07 <GreyKnight> ais523: this is for Radixal!!!! specifically right? (I don't actually know it that well although I have a rough idea)
17:18:29 <ais523> GreyKnight: my binary suggestion would work with any language that could output two different bytes
17:18:31 <Arc_Koen> ais523: problem is I like to spend time with friends to talk
17:18:42 <ais523> Arc_Koen: I guess
17:18:46 <Arc_Koen> in my opinion if a card game is stealing your time with our friends, then you should probably not play it
17:18:47 * FreeFull isn't good at using fix
17:18:49 <GreyKnight> ais523: oh right, I see what you mean now
17:19:11 <Arc_Koen> plus it was our first game
17:19:26 <ais523> FreeFull: basically, fix \f.(stuff including f) is identical to "let rec f = "
17:19:34 <ais523> err, "let rec f = (stuff including f)"
17:19:46 <ais523> normally, the stuff including f would be a function itself
17:19:55 <Arc_Koen> if I introduce it with an obnoxious "I'm not gonna tell you what we are playing and you must shut up during the whole thing" I don't think they would have played
17:19:58 <Sgeo> Did I just put my pop-tarts in the microwave twice
17:19:58 <Sgeo> I have no diea
17:19:58 <Sgeo> idea
17:20:12 <Arc_Koen> but we had alot of fun so maybe we can try a more maoish version next time
17:20:39 <Arc_Koen> anyway I have to go, have a good evening
17:22:55 -!- greyooze has joined.
17:23:26 <greyooze> Sgeo: I haven't had those in years
17:23:43 <greyooze> now I'm hungry
17:23:46 -!- nooodl has joined.
17:24:06 -!- GreyKnight has quit (Ping timeout: 264 seconds).
17:24:06 * greyooze eats nooodl
17:24:11 -!- greyooze has changed nick to GreyKnight.
17:24:44 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
17:25:20 * nooodl dies...--More--
17:25:20 -!- Phantom_Hoover has joined.
17:27:48 -!- Vorpal has joined.
17:28:51 * GreyKnight presses space
17:29:47 <FreeFull> ais523: I can't figure how to do anything with fix other than make an infinite list with fix (3:)
17:31:17 <ais523> FreeFull: let exp2 = fix \f.\x. if (x == 0) then 1 else f(x-1)*2
17:31:23 <ais523> f is the recursive call
17:31:25 <ais523> and x the argument
17:32:38 <FreeFull> <interactive>:29:5: parse error on input `\'
17:32:48 <ais523> FreeFull: that's Verity, not Haskell
17:32:53 <FreeFull> Oh
17:32:56 <ais523> not sure what it looks like in Haskell syntax, someone can probably translate for me
17:33:43 <GreyKnight> FreeFull: \x.foo is, I think, (lambda (x) foo) in Scheme if that helps you translate
17:34:23 <FreeFull> So (\x -> foo) ?
17:34:32 <GreyKnight> (I don't recall Haskell's lambda syntax, I think it uses -> in place of the . ?
17:34:32 <GreyKnight> )
17:34:58 <ais523> GreyKnight: yeah, that makes sense
17:35:56 <FreeFull> Ok, fix (\f -> (\x -> if (x == 0) then 1 else f(x-1)*2)) works
17:36:06 <FreeFull> How would you use fix for recursion though?
17:36:11 <nooodl> > let exp2 = fix (\f x -> if (x == 0) then 1 else f(x-1)*2) in (exp2 5)
17:36:12 <lambdabot> 32
17:36:17 <FreeFull> Wait, nevermind
17:36:24 <ais523> FreeFull: that /is/ using fix for recursion
17:36:48 <FreeFull> I guess you have to provide a parameter =P
17:37:25 <ais523> FreeFull: you need to provide a lambda for the parameter
17:38:17 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
17:38:40 <GreyKnight> yay
17:38:40 <GreyKnight> basically it provides a letrec
17:38:46 <FreeFull> ais523: I meant for your example
17:39:17 <ais523> FreeFull: look at what nooodl did
17:39:29 <FreeFull> What if I wanted to use fix just to create the [1..] infinite list, without giving 1 as the parameter but rather having 1 inside the function
17:39:35 <FreeFull> I mean, inside the lambda
17:39:49 -!- Phantom_Hoover has joined.
17:40:58 <nooodl> hmm
17:40:58 <nooodl> > let f' = fix (\f x -> x : f (x + 1)) in f' 1
17:40:59 <lambdabot> [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28...
17:41:23 <nooodl> i don't think you can really get that 1 into the fix...
17:41:48 <FreeFull> > fix (\f -> 1:[(head f + 1)])
17:41:49 <lambdabot> [1,2]
17:42:35 <nooodl> > fix (\x -> ((x+1):))
17:42:36 <lambdabot> Occurs check: cannot construct the infinite type: a0 = [a0] -> [a0]
17:42:46 <FreeFull> > fix (\f -> 1:(map (+1) f))
17:42:47 <lambdabot> [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28...
17:42:52 <nooodl> oooh nice
17:43:00 -!- GreyKnight has quit (Ping timeout: 248 seconds).
17:43:31 -!- GreyKnight has joined.
17:44:07 <nooodl> man, that's a great fix example
17:44:10 <nooodl> i love it
17:44:53 <FreeFull> Seems fix (\x y z -> z:(map y x)) is the same as iterate y z
17:45:51 <nooodl> shouldn't that be: iterate = \y z -> fix (\x -> z:(map y x))
17:47:14 <FreeFull> > let itest = fix (\x y z -> z:(map y x)) in itest (+1) 1
17:47:16 <lambdabot> Couldn't match expected type `[a0]'
17:47:16 <lambdabot> with actual type `(a0 -> a...
17:47:26 <FreeFull> You're right
17:47:39 <FreeFull> > let itest = \y z -> fix (\x -> z:(map y x)) in itest (+1) 1
17:47:41 <lambdabot> [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28...
17:47:52 <fizzie> @pl \x -> z:(map y x)
17:47:53 <lambdabot> (z :) . map y
17:48:30 <fizzie> It's better because it has ":)" in it, and not ":(".
17:48:43 <FreeFull> @pl \x -> (x:)
17:48:44 <lambdabot> (:)
17:50:23 <nooodl> > fix $ (1:) . map succ
17:50:25 <lambdabot> [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28...
17:50:35 <nooodl> it's so... elegant...
17:50:53 <nooodl> (now that it has :) in it)
17:51:54 <GreyKnight> @help pl
17:51:54 <lambdabot> pointless <expr>. Play with pointfree code.
17:53:12 <GreyKnight> oh right
17:53:12 <GreyKnight> most pointless bot command ever :o)
17:53:34 <GreyKnight> I guess pointless transformation can be automated then?
17:54:06 <ais523> yes
17:54:13 <ais523> although the bot doesn't always do a perfect job of it
17:54:18 <ais523> transforming by hand gives better results
17:59:00 <fizzie> @pl \f g (a,b) -> (f a, g b)
17:59:00 <lambdabot> flip flip snd . (ap .) . flip flip fst . ((.) .) . flip . (((.) . (,)) .)
18:00:15 <GreyKnight> flipping 'eck
18:00:39 <fizzie> Also unpl is not exactly an inverse of pl.
18:00:42 <fizzie> @. unpl pl \f g (a,b) -> (f a, g b)
18:00:42 <lambdabot> (\ aa f -> (\ p w -> ((,)) (aa (fst p)) (f w)) >>= \ af -> snd >>= \ ae -> return (af ae))
18:01:04 <fizzie> @. unpl pl (\ aa f -> (\ p w -> ((,)) (aa (fst p)) (f w)) >>= \ af -> snd >>= \ ae -> return (af ae))
18:01:05 <lambdabot> (\ t f -> (\ l o -> ((,)) (t (fst l)) (f o)) >>= \ w -> snd >>= \ al -> return (w al))
18:01:25 <GreyKnight> @help unpl
18:01:25 <lambdabot> pointful <expr>. Make code pointier.
18:01:26 <fizzie> Aw, no more iterations?
18:01:35 <GreyKnight> it only claims to make the code *pointier* :o)
18:02:10 <fizzie> It's identityish enough for simple things.
18:02:11 <fizzie> @. unpl pl \x -> z:(map y x)
18:02:11 <lambdabot> (\ d -> z : (map y d))
18:05:55 <FreeFull> @unpl \x -> x
18:05:55 <lambdabot> \ x -> x
18:05:56 <oonbotti> ERROR:Word not found
18:06:06 -!- GreyKnight has quit (Remote host closed the connection).
18:06:06 -!- Bike has joined.
18:06:29 <FreeFull> fizzie: flip flip
18:06:37 <fizzie> flip flip fizzie
18:06:43 <fizzie> @ty flip flip
18:06:43 <lambdabot> b -> (a -> b -> c) -> a -> c
18:06:56 -!- GreyKnight has joined.
18:07:03 <FreeFull> :t flip
18:07:04 <lambdabot> (a -> b -> c) -> b -> a -> c
18:07:22 <fizzie> Well, that makes sense.
18:07:25 <GreyKnight> is there a more obfuscated way to describe lenses? The word "store" is almost easy to understand...
18:07:25 <GreyKnight> `? lens
18:07:27 <HackEgo> A lens is just a store comonad coalgebra!
18:07:50 <FreeFull> GreyKnight: Describe it in terms of Brainfuck
18:08:02 <fizzie> > flip flip 3 (+) 4 -- look, ma, it's infix
18:08:03 <lambdabot> 7
18:08:04 <GreyKnight> more category theory plox
18:08:45 <GreyKnight> bonus points if you can introduce another "co-" term
18:08:52 <nooodl> coflip
18:09:01 <FreeFull> cogreyknight
18:09:04 <fizzie> cocostore.
18:09:22 <FreeFull> colens
18:09:40 <c00kiemon5ter> cookie!
18:09:43 <GreyKnight> @let coflip a = a
18:09:45 <lambdabot> Defined.
18:09:58 <GreyKnight> what's a regular okie :-I
18:10:00 <FreeFull> @let coflip = id
18:10:01 <lambdabot> <local>:5:1:
18:10:01 <lambdabot> Equations for `coflip' have different numbers of arguments...
18:10:13 <nooodl> why is coflip id
18:10:54 <GreyKnight> actually really coflip should have type (a -> b -> c) -> a -> b -> c, I guess?
18:10:55 <GreyKnight> (disclaimer: I didn't reverse all the arrows in that type :o)
18:11:45 <FreeFull> That's the same as a -> a though
18:12:07 <FreeFull> Wait
18:12:07 <GreyKnight> but we require the input to be a function :-I
18:12:21 <FreeFull> :t (\f x y -> f x y)
18:12:23 <lambdabot> (t1 -> t2 -> t) -> t1 -> t2 -> t
18:12:28 <FreeFull> There you go
18:12:45 <FreeFull> Guess it's not the same
18:14:02 <GreyKnight> perfect
18:14:04 <GreyKnight> @let coflip = (\f x y -> f x y)
18:14:05 <lambdabot> <local>:5:1:
18:14:05 <lambdabot> Equations for `coflip' have different numbers of arguments...
18:14:07 <GreyKnight> @undefine coflip
18:14:28 <GreyKnight> @let coflip = (\f x y -> f x y)
18:14:30 <lambdabot> Defined.
18:14:54 <GreyKnight> > 2 (coflip (/)) 4
18:14:56 <lambdabot> Could not deduce (GHC.Num.Num ((t0 -> t0 -> t0) -> a0 -> t))
18:14:56 <lambdabot> arising fro...
18:15:17 <Bike> :t coflip flip
18:15:18 <lambdabot> (a -> t2 -> c) -> t2 -> a -> c
18:15:26 <GreyKnight> :<
18:16:28 <nooodl> what does "co-" mean generally
18:16:45 <GreyKnight> reverse ALL the arrows
18:16:56 <Bike> the dual, in some vague sense
18:17:47 <GreyKnight> > (flip (/)) 2 4
18:17:48 <lambdabot> 2.0
18:17:50 <GreyKnight> > (coflip (/)) 2 4
18:17:52 <lambdabot> 0.5
18:18:04 <GreyKnight> Perfect.
18:18:53 * GreyKnight wonders if a copumpkin is an Easter egg
18:23:06 <GreyKnight> Hm the unix pipe symbol is sort of flip (.)
18:23:37 <FreeFull> :t (€)
18:23:37 <lambdabot> fd:9: commitBuffer: invalid argument (invalid character)
18:23:41 <FreeFull> @t (€)
18:23:41 <lambdabot> Maybe you meant: tell thank you thanks thx ticker time todo todo-add todo-delete topic-cons topic-init topic-null topic-snoc topic-tail topic-tell type . ? @ ft v
18:23:44 <FreeFull> Oh wait
18:23:46 <FreeFull> lambdabot sucks
18:24:08 <GreyKnight> unfortunately | is already a syntax character in Haskell >:-(
18:24:17 <kmc> :t (>>>)
18:24:18 <lambdabot> Control.Category.Category cat => cat a b -> cat b c -> cat a c
18:24:32 <kmc> that specializes to (a -> b) -> (b -> c) -> (a -> c) i.e. flip (.)
18:24:39 <GreyKnight> oh good
18:24:44 <kmc> it's really obnoxious that (.) and (>>=) etc. flow in opposite directios
18:24:49 <GreyKnight> @botsnack
18:24:49 <lambdabot> :)
18:24:59 <Bike> :t (.)
18:25:01 <lambdabot> Functor f => (a -> b) -> f a -> f b
18:25:12 <GreyKnight> :t <<=
18:25:13 <lambdabot> parse error on input `<<='
18:25:13 <FreeFull> :t fmap
18:25:14 <lambdabot> Functor f => (a -> b) -> f a -> f b
18:25:50 <FreeFull> Bike: The standard is (.) :: (b -> c) -> (a -> b) -> a -> c but I guess lambdabot is using a different prelude
18:25:57 <kmc> yes
18:26:04 <kmc> lambdabot uses the "let's confuse beginners for fun" prelude
18:26:11 <GreyKnight> is this that Caleskell thing I keep hearing about
18:26:13 <kmc> yes
18:26:29 <FreeFull> > 3 4
18:26:30 <lambdabot> Could not deduce (GHC.Num.Num (a0 -> t))
18:26:30 <lambdabot> arising from the ambiguity chec...
18:26:35 <FreeFull> Ah, doesn't work anymore
18:26:41 <GreyKnight> :t lens
18:26:41 <lambdabot> Functor f => (s -> a) -> (s -> b -> t) -> (a -> f b) -> s -> f t
18:26:56 <GreyKnight> wow that's almost simple, where's the big crazy one?
18:27:09 <kmc> a programming language that doesn't ignore math is great, but i wish they would ignore more of the awful syntax mathematicians use
18:27:13 <FreeFull> It takes three functions and returns a function?
18:27:42 <FreeFull> kmc: In OO, . pretty much reads like unix |
18:28:00 <Bike> single-character identifiers are the future
18:28:09 <FreeFull> In Haskell, you sometimes have to read right, sometimes have to read left
18:28:52 <GreyKnight> Bike: Sure! Look at APL, for instance
18:29:20 <GreyKnight> Request: boustrophedron associativity
18:29:25 <FreeFull> APL is the paragon of readibility
18:29:33 <Bike> i thought APL had multi-character identifiers, just none in the standard.
18:30:05 <Sgeo> COFFEE
18:30:13 <GreyKnight> well yes but who uses *that* misfeature
18:30:45 <Bike> true
18:30:46 <Sgeo> I'd do a "Scheme is like Tcl" thing but the comparison actually makes sense on its own, rather than by looking at a twisted little thing that I have in mind
18:30:53 <Sgeo> *some sense
18:31:16 <Sgeo> But anyway: Scheme is like Tcl: They have a lot of OO systems to choose from and suffer for it
18:31:17 <FreeFull> Everyone knows that in Scheme you can use arbitrary strings in place of code
18:32:35 -!- GreyKnight has quit (Remote host closed the connection).
18:33:31 -!- GreyKnight has joined.
18:34:08 <GreyKnight> Sgeo: lua suffers from this a bit too
18:35:39 <GreyKnight> Thankfully you can usually at least do calls/field references on lua objects from an arbitrary object system with the same syntax
18:37:12 <Sgeo> shachaf, UPDATE
18:40:51 -!- GreyKnight has quit (Remote host closed the connection).
18:41:32 -!- zzo38 has joined.
18:41:33 -!- GreyKnight has joined.
18:54:16 <GreyKnight> I wonder if we can turn Monopoly into an esolang
18:55:00 <GreyKnight> Use some of the houserules to shovel money back into the system and it can run indefinitely
18:55:17 <AnotherTest> GreyKnight: a tape of properties you can buy? :D
18:55:26 <GreyKnight> Hm
18:55:48 <GreyKnight> I was hoping to use something close to standard equipment
18:56:17 <AnotherTest> You could maybe spend money to allocate memory?
18:57:04 <GreyKnight> Eh not a veryy interesting model of computation so far
18:57:11 <AnotherTest> It'd be non deterministic
18:57:13 <GreyKnight> veryyyyy
18:57:24 <AnotherTest> You'd have to throw dices
18:57:36 <AnotherTest> and see how much further you can move
18:57:53 <AnotherTest> alright my idea sucks
18:58:14 <FreeFull> Screw monopoly
18:58:16 <AnotherTest> (as in, it's not innovative, and just generally boring)
18:58:21 <FreeFull> Snakes and ladders
18:58:24 <zzo38> I thought of, can a program be written which decode NTSC NES/Famicom output making the 6-bit palette numbers (although some are duplicates and cannot be decoded uniquely) for each pixel?
18:58:38 <GreyKnight> FreeFull: oh that has potential
18:58:48 <GreyKnight> Fewer moving parts than monopoly too
18:59:15 <FreeFull> Add in laziness and make the board infinite
18:59:31 <Bike> b-but then how do you pass Go!
18:59:35 <AnotherTest> Is there a programming language yet where you have to play chess or something yet?
19:00:15 <AnotherTest> s/yet (where)/\1
19:02:27 -!- asiekierka has quit (Excess Flood).
19:02:34 -!- asiekierka has joined.
19:02:47 <AnotherTest> Ok that idea is bad too
19:02:58 <AnotherTest> and way too vague
19:03:07 <GreyKnight> Depends how you go about it
19:03:21 <GreyKnight> There is "esoteric chess" but it's purely a game
19:04:06 <FreeFull> :t (,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)
19:04:08 <lambdabot> a -> b -> c -> d -> e -> f -> g -> h -> i -> j -> k -> l -> m -> n -> o -> p -> q -> r -> s -> t -> u -> v -> w -> x -> y -> z -> t28 -> t29 -> t30 -> t31 -> t32 -> t33 -> t34 -> t35 -> t36 -> t37 ->
19:04:08 <lambdabot> t38 -> t39 -> t40 -> t41 -> t42 -> t43 -> t44 -> t45 -> t46 -> t47 -> t48 -> t49 -> t50 -> t51 -> t52 -> t53 -> t54 -> t55 -> t56 -> t57 -> t58 -> t59 -> t60 -> t61 -> t62 -> t63 -> (a, b, c, d, e,
19:04:08 <lambdabot> f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, t28, t29, t30, t31, t32, t33, t34, t35, t36, t37, t38, t39, t40, t41, t42, t43, t44, t45, t46, t47, t48, t49, t50, t51, t52, t53, t54,
19:04:08 <lambdabot> t55, t56, t57, t58, t59, t60, t61, t62, t63)
19:04:23 <GreyKnight> O_O
19:04:47 <AnotherTest> what about a language that requires solving the discrete logarithm problem?
19:05:07 <AnotherTest> ok no
19:05:37 <zzo38> How does "esoteric chess"?
19:06:02 <FreeFull> Chess where each spot is an instruction
19:06:14 <FreeFull> Which combines with the piece to become an operand
19:06:29 <FreeFull> And the first player to create a quine while obeying the conventional rules of chess wins
19:06:31 <GreyKnight> zzo38: I don't have a link handy, check chessvariants
19:07:23 <AnotherTest> Are there any concurrent esoteric programming languages actually?
19:07:49 <zzo38> GreyKnight: I performed a search on chessvariants and did not find it.
19:08:30 <GreyKnight> zzo38: there are symbols on the board and subsymbols on the pieces. As well as normal ("exoteric") moves, you can make "esoteric" moves which take your piece to the square which has the symbol of your current square XOR the piece's subsymbol
19:09:01 <GreyKnight> AnotherTest: not many, at least
19:09:12 <AnotherTest> that might be interesting
19:09:31 <AnotherTest> although it would have to have more than just being concurrent
19:11:29 <GreyKnight> zzo38: http://home.deds.nl/~spike/hesse/intrachange/ref/index.html
19:12:43 <zzo38> OK
19:13:27 <GreyKnight> It was inspired by the Glass Bead Game so he gets quite philosophical
19:14:47 <shachaf> Sgeo: Thanks!
19:14:57 <Sgeo> shachaf, you're welcome
19:15:12 -!- monqy has joined.
19:16:55 -!- asiekierka has quit (Excess Flood).
19:17:02 -!- asiekierka has joined.
19:20:45 -!- glogbackup has joined.
19:21:56 -!- AnotherTest has quit (Quit: Leaving.).
19:32:46 <zzo38> Yes I can see that, a lot having to do with the I Ching. But I still do not completely understand how the esoteric moves are determined. Maybe if I read again later I might understand better
19:34:35 <GreyKnight> It's fairly badly explained IMAO
19:45:42 <zzo38> Yes, it does seem badly explained.
19:49:46 <GreyKnight> Each square has what is effectively a six-bit symbol, and there are eight backrow pieces so they are labelled with three-bit symbols
19:51:32 <GreyKnight> Er no
19:51:42 <GreyKnight> Each of the six piece *types* corresponds to a particular bit in the square symbols
19:54:29 <GreyKnight> White pieces can only be on squares where their bit is on, black pieces where it's off
19:55:23 <GreyKnight> If you try to make a move into a disallowed square, you instead make an esoteric move to the corresponding square with that bit flipped
20:03:20 -!- Phantom_Hoover has quit (Read error: Operation timed out).
20:03:38 -!- ogrom has joined.
20:06:32 -!- asiekierka has quit (Excess Flood).
20:08:08 -!- asiekierka has joined.
20:13:07 <SirCmpwn> so I'm learning whitespace this weekend
20:13:41 <SirCmpwn> and then I'll be merging the brainfuck bot into the whitespace bot's code
20:14:45 <GreyKnight> While maintaining comments of course
20:14:54 <SirCmpwn> hah.
20:15:21 <SirCmpwn> I'm writing some code to turn psuedo-assembly into whitespace
20:15:29 <SirCmpwn> because I can think of nothing I want to do less than actually code in whitespace
20:16:56 <c00kiemon5ter> I am looking into factor today
20:20:15 -!- Phantom_Hoover has joined.
20:22:20 <c00kiemon5ter> stack-based concatenative languages seem fun
20:22:31 <c00kiemon5ter> yesterday I was looking at forth
20:22:51 <Taneb> c00kiemon5ter, check out Fueue. It's queue-based and ridiculous
20:24:05 <SirCmpwn> whitespace is not well documented
20:24:12 <SirCmpwn> how the fuck do labels work, for instance
20:25:01 <Taneb> They're just go-to points?
20:25:49 <SirCmpwn> sure
20:25:53 <SirCmpwn> but how do you identify them
20:25:59 <SirCmpwn> do they have a name? are the referred to relatively?
20:26:27 <SirCmpwn> oh, I see
20:26:30 <SirCmpwn> it's mentioned further up
20:27:00 <GreyKnight> Esolangs are well-known for their clear and well-organised documentation
20:28:35 -!- sebbu has quit (Read error: Connection reset by peer).
20:29:07 -!- sebbu has joined.
20:29:07 -!- sebbu has quit (Changing host).
20:29:07 -!- sebbu has joined.
20:29:40 <SirCmpwn> and how do subroutines work
20:29:47 <SirCmpwn> do they push a return address like sensible people
20:29:52 <SirCmpwn> or do they just store it in some undefined location
20:30:23 <Taneb> The latter
20:32:53 <SirCmpwn> incorrect
20:32:57 <SirCmpwn> the reference implementation uses the stack
20:32:58 <Taneb> Okay
20:33:13 <Taneb> Reference implementation is not the specification
20:33:53 <Taneb> I think an implementer is allowed to do whatever as long as behaviour is consistent
20:33:58 <GreyKnight> Well, for some esolangs it's the closest thing :-)
20:37:24 <SirCmpwn> this is the little assembly syntax I wrote up for whitespace: https://gist.github.com/f5f866bb98f4e6791334
20:37:30 <SirCmpwn> should make my life easier
20:39:35 -!- zzo38 has quit (Remote host closed the connection).
20:39:41 <fizzie> But isn't that cheating? ;)
20:39:49 <SirCmpwn> yes.
20:41:40 <GreyKnight> Writes bf by hand // Cheats at Whitespace
20:42:17 <GreyKnight> (in fairness he never claimed to be consistent, so it's okay in my book)
20:42:28 <SirCmpwn> well, brainfuck can actually be read with relative ease
20:42:45 <SirCmpwn> and I'm not preprocessing anything, I'm just mapping mnomics to whitespace code
20:43:15 <GreyKnight> *mnemonics
20:43:19 <SirCmpwn> yes, right
20:43:59 <GreyKnight> MNomic: a monad for representing nomic rulesets
20:44:27 <SirCmpwn> mnemonics, got it.
20:44:48 <Taneb> GreyKnight, that... would be virtually impossible to code
20:45:00 <GreyKnight> :<
20:45:26 <GreyKnight> Wait, *virtually* impossible? So really possible, okay :-D
20:45:49 <Taneb> Who knows, I've never tried
20:46:00 <Taneb> I bet if you used Cont and IO, it's doable
20:46:23 <GreyKnight> yay
20:46:38 <Taneb> God, my web-page looks dreary
20:47:25 <GreyKnight> Link?
20:47:27 <kmc> woah a 787 caught fire on the ground at my local airport
20:47:53 <Taneb> http://www.vandoorn.talktalk.net/esoteric/
20:48:05 <hagb4rd> hope it didn't take off then
20:48:22 <kmc> indeed
20:49:31 -!- GreyKnight has quit (Remote host closed the connection).
20:49:52 -!- GreyKnight has joined.
20:50:13 -!- GreyKnight has quit (Client Quit).
20:51:00 -!- GreyKnight has joined.
20:53:43 <GreyKnight> Taneb: I recommend setting the CSS property cursor: pointer; on your headers there, it will make it more obvious that they do something
20:54:27 <Taneb> Yeah, I'll change the colour scheme while I'm at it
20:54:39 -!- oerjan has joined.
20:55:14 <GreyKnight> MIBBLLII: best bf derivative
20:55:32 <Taneb> What makes you think it's a BF derivative?
20:56:18 <GreyKnight> well, I use the term loosely
20:57:46 <Taneb> Can you guess which is my favourite language on that page?
20:58:24 <GreyKnight> Fueue?
20:58:40 <Taneb> It's actually Luigi
20:59:05 <GreyKnight> Real Fast Nora's Hair Salon 3: Shear Disaster Download needs some more detail I think
20:59:16 <fizzie> Taneb: Are you actually Mario?
20:59:34 <Taneb> fizzie, I'm Princess Daisy
20:59:41 <GreyKnight> Idea: Mario Kart esolang
20:59:50 <hagb4rd> no! don't change the colour scheme! it actually is fine
20:59:58 <oerjan> WHAT DO YOU NEED DETAIL FOR IT HAS AN IMPLEMENTATION
21:00:16 <Taneb> hagb4rd, it looks really grim
21:00:28 <hagb4rd> i like it.. somehow
21:00:42 <hagb4rd> it's pretty basic
21:00:55 <hagb4rd> minimal
21:01:30 <GreyKnight> maybe put a coloured bar behind the page title too
21:01:31 -!- asiekierka has quit (Excess Flood).
21:01:37 -!- asiekierka has joined.
21:04:33 <oerjan> `? lens
21:04:34 <HackEgo> A lens is just a store comonad coalgebra!
21:04:58 <shachaf> What's with the "comonad"?
21:05:08 <oerjan> `run sed -i 's/!$/./' wisdom/lens
21:05:08 <FreeFull> `? comonad
21:05:11 <oerjan> `? lens
21:05:12 <HackEgo> Comonads are just monads in the dual category.
21:05:14 <HackEgo> No output.
21:05:15 <HackEgo> A lens is just a store comonad coalgebra.
21:05:23 <FreeFull> `? dual
21:05:24 <shachaf> That's like saying "IO monad" instead of "IO"
21:05:26 <HackEgo> dual? ¯\(°_o)/¯
21:05:36 <GreyKnight> I don't know, I just copy-and-pasted it from something elliott said
21:05:48 <FreeFull> `? monad
21:05:49 <HackEgo> Monads are just monoids in the category of endofunctors.
21:05:53 <Taneb> `? monoid
21:05:56 <HackEgo> Monoids are just categories with a single object.
21:06:00 <Taneb> `? category
21:06:02 <HackEgo> Categories are just categories.
21:06:06 <FreeFull> `? object
21:06:08 <HackEgo> An object is just something in a category.
21:06:10 <Taneb> `? endofunctor
21:06:12 <HackEgo> Endofunctors are just endomorphisms in the category of categories.
21:06:13 <hagb4rd> what i really can't look at any more is black font on white background.. it just burns my eyes at night (though i dropped contrast and brightnes as far as "possible")
21:06:16 <FreeFull> `? single
21:06:17 <Taneb> `? endomorphism
21:06:18 <HackEgo> single? ¯\(°_o)/¯
21:06:19 <HackEgo> Endomorphisms are just morphisms which compose with themselves.
21:06:23 <GreyKnight> shachaf: what
21:06:24 <Taneb> `? morphism
21:06:26 <HackEgo> A morphism is just a map between two objects in an abstract category.
21:06:30 <Taneb> `? map
21:06:32 <HackEgo> map? ¯\(°_o)/¯
21:06:35 <FreeFull> `? abstract category
21:06:37 <HackEgo> abstract category? ¯\(°_o)/¯
21:06:43 <FreeFull> `? category
21:06:45 <HackEgo> Categories are just categories.
21:06:56 <FreeFull> `? HackEgo
21:06:58 <HackEgo> HackEgo, also known as HackBot, is a bot that runs arbitrary commands on Unix. See `help for info on using it. You should totally try to hax0r it! Make sure you imagine it's running as root with no sandboxing.
21:07:04 <shachaf> FreeFull...........................
21:07:08 <FreeFull> `? shachaf
21:07:10 <HackEgo> shachaf sprø som selleri
21:07:18 <Taneb> `? Taneb
21:07:19 <GreyKnight> FreeFull: these work in private message too...
21:07:20 <HackEgo> Taneb is not elliott, no matter who you ask. He also isn't a rabbi although he has pretended in the past.
21:07:28 <GreyKnight> `? spam
21:07:31 <HackEgo> spam? ¯\(°_o)/¯
21:07:37 <olsner> hmm, what *is* an abstract category?
21:07:43 <Taneb> `? Ngevd
21:07:45 <HackEgo> ​ps1Zug6˯6Wok٩歲L3R V`1Y+I|Qf㷆4Ô'Y!>eͲ|!?αv9X;fꙿ.\&LH6#QAkN}Яm?GJ.1,o^SF!cפ>'k=VHpϖ$Qr.h>]!sqI[0iM+.9>kvPil˱23)M;ߢ%Kl1Aj\5C.˶zjr۷.1lrj<]'#Ze?F"jPBY
21:07:50 <FreeFull> Aw jeez
21:08:22 <shachaf> olsner: I think it has to do with the category of papers.
21:08:35 <FreeFull>
21:08:59 <hagb4rd> how are these entries modified?
21:09:47 <oerjan> `learn Spam is a delicious meat product. See http://www.spamjamhawaii.com/
21:09:50 <HackEgo> I knew that.
21:09:56 <hagb4rd> cool
21:09:57 <GreyKnight> they're just text files
21:09:58 <GreyKnight> in the wisdom/ directory
21:10:08 <olsner> spam jam, nice
21:10:18 <hagb4rd> thx greyknight
21:10:56 <hagb4rd> `run ls wisdom | paste
21:10:59 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.18219
21:11:07 <GreyKnight> `run "See `? for further details." > 'wisdom/`?'
21:11:09 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `"' \ bash: -c: line 1: syntax error: unexpected end of file
21:11:13 <GreyKnight> oh right
21:11:21 <GreyKnight> `run 'See `? for further details.' > 'wisdom/`?'
21:11:25 <HackEgo> bash: See `? for further details.: command not found
21:11:30 <GreyKnight> `run echo 'See `? for further details.' > 'wisdom/`?'
21:11:34 <GreyKnight> -_-;;
21:11:34 <HackEgo> No output.
21:13:40 <oerjan> `run echo "Morphisms are just elements of the Hom-set of a pair of objects." >wisdom/morphism
21:13:41 <hagb4rd> `url ?
21:13:44 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/?
21:13:46 <HackEgo> No output.
21:14:04 <hagb4rd> `url wisdom/?
21:14:06 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/wisdom/?
21:14:10 <FreeFull> `cat /dev/urandom
21:14:12 <HackEgo> ​/ls>~(Caj)HlW@ˈlkm,FncCr&4WU-,L'<;sJD$,z7>ZؔEZJLY&j:."$]<ØDPR2~rvW~{o.)(b3lc5a+@)
21:14:21 <oerjan> `run echo "Hom-sets are just sets of morphisms between two objects." >wisdom/hom-set
21:14:25 <HackEgo> No output.
21:14:32 <oerjan> `? object
21:14:34 <HackEgo> An object is just something in a category.
21:14:51 <oerjan> `echo "Objects are just elements of a category." >wisdom/object
21:14:52 <HackEgo> ​"Objects are just elements of a category." >wisdom/object
21:15:40 <oerjan> `run grep "is just" wisdom/*
21:15:44 <shachaf> Categories are just objects in the category of categories.
21:16:01 <GreyKnight> hagb4rd: it's `?
21:16:04 <GreyKnight> `? `?
21:16:06 <HackEgo> See `? for further details.
21:16:12 <HackEgo> No output.
21:16:29 <oerjan> `? quine
21:16:31 <HackEgo> ​`? quine
21:16:36 <oerjan> thought so
21:16:49 <GreyKnight> `? brick
21:16:51 <HackEgo> brick? ¯\(°_o)/¯
21:17:08 -!- carado has quit (Ping timeout: 246 seconds).
21:18:05 <GreyKnight> `run echo "Brick goes in brain. A common punishment for perpetrators of brainf**k derivatives." > wisdom/brick
21:18:09 <HackEgo> No output.
21:18:27 <oerjan> darn i was just about to write something like that
21:18:43 <GreyKnight> `run sed -i 's/A common/The statutory/' wisdom/brick
21:18:47 <HackEgo> No output.
21:19:06 <oerjan> `run sed -i 's/[*][*]/uc/' wisdom/brick
21:19:09 <HackEgo> No output.
21:19:13 <oerjan> `? brick
21:19:15 <HackEgo> Brick goes in brain. The statutory punishment for perpetrators of brainfuck derivatives.
21:19:54 <olsner> `? brain
21:19:54 -!- ogrom has quit (Quit: Left).
21:19:55 <HackEgo> brain? ¯\(°_o)/¯
21:20:07 <oerjan> `? brainfuck
21:20:09 <HackEgo> brainfuck? ¯\(°_o)/¯
21:20:17 <GreyKnight> "brain: a receptacle for bricks" ?
21:20:22 <olsner> `run echo "Brains are just bricks." >wisdom/brain
21:20:25 <HackEgo> No output.
21:20:31 <monqy> `? brainf**k
21:20:33 <HackEgo> brainf**k? ¯\(°_o)/¯
21:20:45 <GreyKnight> `run sed -i 's/just/just receptacles for/' wisdom/brain
21:20:49 <HackEgo> No output.
21:21:05 <oerjan> `learn brainfuck is the anti-derivative of esolangs.
21:21:08 <HackEgo> I knew that.
21:21:28 <GreyKnight> I was going to say it "is the integral of the family of terrible esolangs"
21:21:36 <shachaf> `cat bin/learn
21:21:38 <HackEgo> ​#!/bin/sh \ topic=$(echo "$1" | sed 's/ .*//' | tr A-Z a-z) \ info=$(echo "$1" | sed 's/[^ ]* //') \ echo "$1" >"wisdom/$topic" \ echo "I knew that."
21:21:40 <oerjan> ooh maybe that's better
21:21:58 <hagb4rd> i love this statement
21:21:59 <oerjan> `learn brainfuck is the integral of the family of terrible esolangs."
21:22:01 * GreyKnight was assuming bin/learn just consisted of "echo 'I knew that'"
21:22:02 <HackEgo> I knew that.
21:23:12 <oerjan> `run echo "There is no such thing as brainf**k. You may be thinking of brainfuck." >'wisdom/brainf**k'
21:23:16 <HackEgo> No output.
21:23:17 <shachaf> oerjan: You should make a `learn variant that accepts the full sentence directly.
21:23:22 <shachaf> Rather than using echo.
21:23:23 <oerjan> `? brainf**k
21:23:25 <HackEgo> There is no such thing as brainf**k. You may be thinking of brainfuck.
21:23:32 <monqy> `? brainf*ck
21:23:34 <HackEgo> brainf*ck? ¯\(°_o)/¯
21:23:39 <shachaf> hi monqy
21:23:41 <shachaf> `? monqy
21:23:42 <monqy> hi shachaf
21:23:43 <HackEgo> The friendship monqy is an ancient Chinese mystery; ask itidus21 for details.
21:23:47 <monqy> `? shachaf
21:23:49 <HackEgo> shachaf sprø som selleri
21:23:53 <shachaf> `ls wisdom/
21:23:54 <HackEgo> ​`? \ ? \ ☃ \ 🐐 \ ais523 \ atriq \ augur \ banach-tarski \ boily \ bonvenon \ brain \ brainf**k \ brainfuck \ brick \ c \ cakeprophet \ category \ coffee \ comonad \ coppro \ egobot \ elliott \ endofunctor \ endomorphism \ england \ esoteric \ europe \ everyone \ finland \ finnish \ finns \ fizzie \ flower \ freefull \ friendship \ functor \
21:24:00 <shachaf> `? functor
21:24:02 <HackEgo> Functors are just morphisms in the category of small categories
21:24:08 <GreyKnight> `? ☃
21:24:10 <HackEgo> ​☃ brrr...
21:24:11 <monqy> `? friendship
21:24:13 <HackEgo> friendship wisdom
21:24:27 <GreyKnight> `? fungot
21:24:28 <fungot> GreyKnight: it's just like any other
21:24:30 <HackEgo> fungot cannot be stopped by that sword alone.
21:24:53 <GreyKnight> fungot: It is not! This one's got your name on it.
21:24:53 <fungot> GreyKnight: and each bitstring has the same bug as moz firefox ( fnord doesn't work
21:25:33 <augur> `? augur
21:25:35 <HackEgo> augur took no cakes.
21:25:36 <oerjan> ^style ct
21:25:37 <fungot> Selected style: ct (Chrono Trigger game script)
21:25:37 <augur> :(
21:25:42 <augur> i want a cake!
21:25:45 <augur> `take a cake
21:25:47 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: take: not found
21:25:50 <oerjan> fungot: what's that sword all about
21:25:50 <fungot> oerjan: time to shove off you go! didn't you create him? that kino guy!
21:26:12 <oerjan> `? Gregor
21:26:13 <HackEgo> Gregor ? ¯\(°_o)/¯
21:26:15 <oerjan> `? Gregor
21:26:16 <HackEgo> Gregor took forty cakes. He took 40 cakes. That's as many as four tens. And that's terrible.
21:26:19 <GreyKnight> `take 40 cakes (as many as four tens)
21:26:21 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: take: not found
21:26:49 <oerjan> `cat bin/?
21:26:51 <HackEgo> ​#!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z) \ [ -e "wisdom/$topic" ] || { echo "$1? ¯\(°_o)/¯"; exit 1; } \ cat "wisdom/$topic"
21:28:22 <GreyKnight> `? feather
21:28:23 <oerjan> `run sed -i 's/a-z/a-z | sed "s\/ *$\/\/"/' bin/'?'
21:28:24 <HackEgo> feather? ¯\(°_o)/¯
21:28:26 <HackEgo> No output.
21:28:31 <oerjan> `cat bin/?
21:28:32 <HackEgo> ​#!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z | sed "s/ *$//") \ [ -e "wisdom/$topic" ] || { echo "$1? ¯\(°_o)/¯"; exit 1; } \ cat "wisdom/$topic"
21:28:38 <kmc> berlin brandenberg airport opening is delayed to 2014
21:28:44 <oerjan> `? Gregor
21:28:46 <HackEgo> Gregor took forty cakes. He took 40 cakes. That's as many as four tens. And that's terrible.
21:28:51 <oerjan> FINALLY
21:29:20 <oerjan> no more shall we be downthrodden by the evil of nick autocompletion
21:29:42 <shachaf> oerjan: You should delete the space after the nick anyway...
21:29:51 <oerjan> SHUSH YOU
21:30:10 <shachaf> For example, when I typed that, I pressed: o e r <tab> <backspace> <backspace> : <space> Y o u ...
21:30:17 <shachaf> I do that everywhere.
21:30:47 <GreyKnight> I have my client fill in the ": " automatically if it's at the start of a line
21:30:49 <oerjan> wait is there really nothing about feather
21:30:54 <oerjan> `? feather
21:30:56 <HackEgo> feather? ¯\(°_o)/¯
21:30:59 <oerjan> `? ais523
21:31:01 <HackEgo> Agent "Iä" Smith is an alien with a strange allergy to avian body covering, which he is trying to retroactively prevent from ever evolving.
21:31:01 <kmc> `quote feather
21:31:03 <HackEgo> 891) -!- ais523 has parted #esoteric ("someone is going to mention Feather, I know it"). \ 892) <Bike> i don't even know anything about feather and i'm getting sick of the time travel jokes \ 893) <shachaf> oerjan: Comonads? <oerjan> shachaf: no, feather
21:31:09 <kmc> `quote feather
21:31:11 <HackEgo> 891) -!- ais523 has parted #esoteric ("someone is going to mention Feather, I know it"). \ 892) <Bike> i don't even know anything about feather and i'm getting sick of the time travel jokes \ 893) <shachaf> oerjan: Comonads? <oerjan> shachaf: no, feather
21:31:35 <GreyKnight> oerjan: it wiollen haben be written antilater
21:31:54 <shachaf> kmc: `quote doesn't randmize when you give it an argument. :-(
21:32:00 <kmc> ok
21:32:05 <kmc> `quote kmc.*feather
21:32:07 <HackEgo> No output.
21:32:10 <kmc> fuck it
21:32:12 <hagb4rd> kmc: yea, it's the second delay (because of some fire security mismanagement). the costs of it rise from planned 2bio€ to 4,3bio€..top new around here
21:32:27 <oerjan> GreyKnight: the ais523 one is an allusion.
21:32:30 <hagb4rd> *news
21:32:35 <shachaf> @quote kmc
21:32:35 <lambdabot> kmc says: types substitute for documentation much better than documentation substitutes for types
21:32:41 <shachaf> @quote <
21:32:41 <lambdabot> Plugin `quote' failed with: getRandItem: empty list
21:32:49 <shachaf> @quote kmc
21:32:49 <lambdabot> kmc says: maybe the 9,639,482nd time we argue about C++ we will finally resolve the issue
21:33:01 <shachaf> (spoilers: they didn't)
21:33:02 <kmc> hagb4rd: wow, that's a huge jump
21:33:13 <hagb4rd> yep
21:33:15 <oerjan> `run ls *quo*
21:33:16 <HackEgo> quotes \ quotese
21:33:22 <oerjan> `run ls bin/*quo*
21:33:24 <HackEgo> bin/addquote \ bin/allquotes \ bin/delquote \ bin/pastaquote \ bin/pastenquotes \ bin/pastequotes \ bin/quoerjan \ bin/quoerjandom \ bin/quote \ bin/quotes
21:33:53 <olsner> `quoerjan
21:33:54 <monqy> `cat quotese
21:33:55 <HackEgo> 685) <fizzie> oerjan: Hey, what's your country code for telephonistic dialling from the outside world? <oerjan> fizzie: +47 <fizzie> oerjan: Ooh, you're, like, right next to Sweden there. <fizzie> I... guess you are geographically, too. \ 873) <oerjan> i think the problem is you're trying to interpret finnish as logic. \ 262) <fungot> oerjan: ar
21:33:56 <HackEgo> ​<Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ <AnMaster> that's where I got it <AnMaster> rocket launch facility gift shop \ <Warrigal> GKennethR: he should be t
21:34:07 <olsner> `quoerjandom
21:34:09 <HackEgo> 7) <oerjan> what, you mean that wasn't your real name? <Warrigal> Gosh, I guess it is. I never realized that.
21:34:47 <ais523> is that just a random oerjan quote?
21:34:50 <ais523> `quoerjandom
21:34:51 <HackEgo> 804) * oerjan makes a brainfuck derivative for quoting xkcds
21:34:54 <ais523> I guess so
21:35:31 <oerjan> `quoerjan
21:35:33 <HackEgo> 361) <elliott_> I'm not even going to try and understand what you're proposing. <oerjan> i understand it perfectly. it's completely nuts. \ 376) <oerjan> adding quotes by yourself is strictly prohibited and will lead to you being banned \ 636) * oerjan concludes that unsafeCoerce has no effect on strictness \ 95) <oerjan> insufficient time dilati
21:35:55 <hagb4rd> `cat bin/quoerjandom
21:35:56 <HackEgo> quoerjan | shuf -n 1
21:36:12 <oerjan> `cat bin/quoerjan
21:36:14 <HackEgo> allquotes | grep oerjan | shuf
21:36:40 <ais523> oerjan: did you add 376?
21:36:48 <oerjan> MAYBE
21:38:32 <oerjan> `rm bin/quoerjandom
21:38:35 <HackEgo> No output.
21:38:53 <oerjan> after recent changes that has become even more redundanter
21:38:58 <shachaf> oerjan: Hmm, I think we should restore quoerjan and quoerjandom to their old state.
21:39:26 <shachaf> `quoerjan
21:39:28 <HackEgo> 382) <Phantom_Hoover> oerjan, little do you realise that everything you say and do is part of that great monad tutorial we call life. \ 514) <oerjan> theorem prover yada yada halting problem. \ 635) <CakeProphet> but yeah the caliphates expanded their empire by conquering people and then forcing them to either convert to Islam or die. [...] <oerjan
21:39:33 <shachaf> `zalgoerjan hi monqy
21:39:34 <HackEgo> o͖eͪr̗j̓a͈nͩ ͣh͂ȉ ̍mͩo͑n͔q͐yͥ
21:39:54 <hagb4rd> `cat bin/pastelog
21:39:56 <HackEgo> ​#!/bin/sh \ cd /var/irclogs/_esoteric \ \ pasterandom() { \ if [ "$1" -gt 150 ]; then \ echo "No." \ exit \ fi \ for i in $(seq "$1"); do \ file=$(shuf -en 1 ????-??-??.txt) \ echo "$file:$(shuf -n 1 $file)" \ done | paste \ } \ \ if [ "$1" ]; then \ if expr "$1" + 0 >/dev/null 2>&1; then \
21:40:27 <hagb4rd> `cat bin/log
21:40:28 <HackEgo> ​#!/bin/sh \ cd /var/irclogs/_esoteric \ if [ "$1" ]; then \ grep -P -i -- "$1" ????-??-??.txt | shuf -n 1 \ else \ file=$(shuf -en 1 ????-??-??.txt) \ echo "$file:$(shuf -n 1 $file)" \ fi
21:40:31 <olsner> `quote fungot
21:40:31 <fungot> olsner: that no one was allowed to use the crane, enter any two of these letters, a b y.
21:40:33 <HackEgo> 11) <fungot> GregorR-L: i bet only you can prevent forest fires. basically, you know. \ 14) <fizzie after embedding some of his department research into fungot> Finally I have found some actually useful purpose for it. \ 16) <fungot> oerjan: are you a man, if there weren't evil in this kingdom to you! you shall find bekkler! executing program. plea
21:40:44 <Bike> qungot?
21:41:07 <shachaf> Bike: That's not how it works.
21:41:14 <shachaf> We should have a parallel bot, HackEgoerjan.
21:41:15 <FreeFull> `run echo $0
21:41:17 <HackEgo> bash
21:41:34 <FreeFull> `echo $0
21:41:36 <HackEgo> ​$0
21:41:42 <FreeFull> `pwd
21:41:44 <HackEgo> ​/hackenv
21:42:00 <Bike> shachaf: fungoerjan?
21:42:31 <hagb4rd> #esoerjan
21:42:37 <hagb4rd> k
21:42:40 <hagb4rd> enough
21:43:00 <shachaf> Bike: I don't know why I even bother responding to someone with a four-letter nick.
21:43:05 <oerjan> i support #esoerjan if you stop talking about this here
21:43:58 -!- HackEgo has quit (Remote host closed the connection).
21:44:02 <Bike> shachaf, that is uncalled for discrimination.
21:44:17 <oerjan> `? lens
21:44:24 <oerjan> oops
21:44:26 <FreeFull> And hackbot crashed
21:44:36 <GreyKnight> Gregor: :<
21:44:41 <hagb4rd> swat him
21:45:01 * oerjan swats GreyKnight -----###
21:45:06 <hagb4rd> yea
21:45:09 <GreyKnight> ow
21:45:28 <oerjan> it's your own fault for using smileys that look like flies
21:45:46 <shachaf> Speaking of which, http://i.imgur.com/NPo4R.jpg
21:46:18 <oerjan> O KAY
21:46:20 <GreyKnight> compound: ꙮ-)
21:46:24 -!- asiekierka has quit (Excess Flood).
21:46:31 -!- asiekierka has joined.
21:47:20 <olsner> shachaf: funpuns
21:47:32 <shachaf> olsner: byfare
21:47:36 <shachaf> whoa, dude
21:47:38 <FreeFull> Who runs hackbot?
21:47:50 <ais523> FreeFull: HackEgo is GregorR's
21:47:57 <ais523> GreyKnight: HackEgo left for no obvious reason
21:48:22 <FreeFull> I might have done `run rm -rf *
21:48:26 <FreeFull> Just maybe
21:48:34 <oerjan> FreeFull: that won't do anything hth
21:48:45 <FreeFull> Depends on how often the snapshots are
21:48:56 <oerjan> no, it won't, period.
21:49:22 <FreeFull> oerjan: Well, ls said no files found before hackego went off
21:49:32 <oerjan> wat
21:49:48 <GreyKnight> ais523: I know, I was prompting Gregor to see if he would fix it for us
21:50:24 <FreeFull> oerjan: Why did you think it would do nothing
21:50:30 <oerjan> FreeFull: was this in a separate command?
21:50:44 -!- Taneb has quit (Ping timeout: 255 seconds).
21:50:46 <oerjan> FreeFull: because everyone has tried it before, and it does nothing. hth.
21:50:52 * GreyKnight requests a swat for FreeFull
21:50:55 <olsner> I haven't tried it
21:50:58 <FreeFull> oerjan: I did it in PM
21:51:07 <FreeFull> Just `run rm -rf *
21:51:41 <shachaf> oerjan is very hthelpful.
21:51:44 <FreeFull> The `run is important, because otherwise the * becomes a blank
21:51:49 <oerjan> i know
21:52:05 <oerjan> FreeFull: in any case, http://codu.org/projects/hackbot/fshg/ doesn
21:52:08 <olsner> if hth was a single consonant, I wonder how it would sound
21:52:11 <oerjan> t show your command
21:52:27 <FreeFull> oerjan: `run runs it in bash
21:52:41 <FreeFull> And if everything got deleted, it wouldn't show up, would it
21:53:08 <oerjan> FreeFull: ...you have no idea how HackEgo works, do you.
21:53:10 <GreyKnight> the repository is outside the sandbox's scope
21:53:11 <FreeFull> Maybe it doesn't show stuff from PM
21:53:22 <FreeFull> GreyKnight: Yeah, so it can get restored
21:53:38 <FreeFull> But there might be stuff that didn't get commited
21:53:41 <GreyKnight> which means rm inside the sandbox can't delete records from the repository
21:54:00 <FreeFull> Yes, I know that
21:54:05 <oerjan> FreeFull: how did you check that there were no files and what was the response
21:54:21 <FreeFull> I closed the chat afterwards
21:54:28 <FreeFull> But the first ls listed lots of stuff
21:54:44 <FreeFull> The second said there wasn't anything
21:55:06 <oerjan> FreeFull: btw you can get "No output." simply from HackEgo timing out
21:55:32 <oerjan> my bet is it was already crashing and it had nothing to do with files disappearing
21:55:49 <FreeFull> I don't think it was No output.
21:56:15 <GreyKnight> it also doesn't list my most recent privmsg commands (which I was waiting on for a while with no results)
21:56:39 -!- monqy has quit (Quit: hello).
21:57:05 <oerjan> @read "\xe2\x8c\xa8"
21:57:06 <lambdabot>
22:04:23 <GreyKnight> is there a unicode tumbleweed '_'
22:06:39 <oerjan> a unique ode to unicode
22:07:38 <shachaf> ^rot13 oerjan
22:07:39 <fungot> brewna
22:07:57 <FreeFull> ^rot13 is this actually rot13?
22:07:57 <fungot> vf guvf npghnyyl ebg13?
22:08:00 <FreeFull> Yes
22:08:01 <FreeFull> Ok
22:08:24 <oerjan> ^echo Why would you expect fungot not to have normal commands?
22:08:24 <fungot> Why would you expect fungot not to have normal commands? Why would you expect fungot not to have normal commands?
22:09:12 <hagb4rd> ^echo say it twice.
22:09:12 <fungot> say it twice. say it twice.
22:09:36 <kmc> yields falsehood when proceeded by its quotation
22:09:47 <FreeFull> kmc: Good thing it isn't
22:10:29 <hagb4rd> now i get the joke
22:10:32 <hagb4rd> maybe
22:10:40 <kmc> it's from GEB
22:11:11 <GreyKnight> ^echo Banach-Tarski
22:11:11 <fungot> Banach-Tarski Banach-Tarski
22:11:19 <kmc> except i can't spell
22:11:45 <kmc> "yields falsehood when preceded by its quotation" yields falsehood when preceded by its quotation
22:11:48 <kmc> is this statement true or false?
22:12:07 <Bike> no
22:12:17 <kmc> it's a paradox akin to "This statement is false", and yet it avoids explicit self-reference like "this statement"
22:12:35 <Bike> and what do you mean it's from geb? i thought quine came up with it
22:12:39 <kmc> well maybe
22:12:42 <kmc> i know if it through GEB
22:12:49 <kmc> know of*
22:12:49 <Bike> well yeah me too but still
22:12:53 <kmc> damn this cough syrup is strong
22:13:41 <Bike> « He revised traditional quotation into a system where the length of outer pairs of so called q-marks of an expression is determined by the q-marks that appear inside the expression.» god logic is weird
22:15:17 <oerjan> "is weird preceded by its quotation" is weird preceded by its quotation
22:15:45 <GreyKnight> «Uses weird quotation marks» is a property of Bike
22:16:17 <Bike> a property, or a class???
22:16:24 <kmc> 『hell yeah』
22:18:04 * FreeFull pokes Gregor
22:18:11 <kmc> "Q: I'm reading a book which uses italic text to mean something distinct from roman text. Doesn't that mean that italics should be encoded in Unicode?"
22:18:14 <kmc> "A: No. It's common for specific formatting to be used to convey some of the semantic content—the meaning—of a text. Unicode is not intended to reproduce the complete semantic content of all texts, but merely to provide plain text support required by minimum legibility for all languages."
22:18:48 <kmc> and then they added 13 extra copies of the latin alphabet for mathematicians anyway >_<
22:19:27 <Bike> how many typefaces treat blackboard bold like they do italics anyhow
22:19:38 <kmc> maybe latex?
22:20:07 <hagb4rd> well, i agree with that. formating shouldn't be done with encoding
22:20:16 <Bike> i don't think latex is a typeface... am I wrong
22:20:19 <kmc> it's not
22:20:23 <kmc> i meant "the various typefaces used by latex"
22:20:30 <Bike> oh ok
22:20:41 <kmc> hagb4rd: sure, but the question is whether various things are "formatting" or not
22:21:01 <kmc> the question of whether two glyphs are "the same character" formatted differently, or different characters
22:21:08 <kmc> this is a tricky question
22:21:20 <Bike> well, hm, maybe they justify math characters in the same way they justify including cyrillic characters that look just like latin ones?
22:21:58 <kmc> in unicode there is the added wrinkle of round-trip backwards compatibility with legacy encodings
22:22:15 <GreyKnight> 𝕎𝕙𝕒𝕥'𝕤 𝕨𝕣𝕠𝕟𝕘 𝕨𝕚𝕥𝕙 𝕓𝕝𝕒𝕔𝕜𝕓𝕠𝕒𝕣𝕕 𝕓𝕠𝕝𝕕?!
22:22:25 <kmc> so if /any/ historical encoding decided that two things are different characters, Unicode will have a way to represent both, and may list one as deprecated
22:22:47 <kmc> i believe this is the case with ANGSTROM SIGN vs LATIN CAPITAL LETTER A WITH RING ABOVE, for example
22:22:48 <Bike> GreyKnight: jesus that is some bad kerning
22:22:58 <kmc> some normalization will convert the former into the latter
22:23:17 <GreyKnight> Bike: looks okay here (apart from the apostrophe). Get a better font B-)
22:23:25 <kmc> LATIN CAPITAL S WITH OVERSTRIKE VERTICAL BAR
22:23:31 <hagb4rd> greyknight: it's a good thing if you don't want searchengines to match
22:23:53 <GreyKnight> sekrit messages
22:24:01 <hagb4rd> yes
22:24:03 <kmc> comes through as replacement character here, maybe because screen doesn't support non-BMP chars :/
22:24:33 <Bike> GreyKnight: https://dl.dropbox.com/u/12780151/blackboard.png behold
22:24:50 -!- nooga has quit (Ping timeout: 255 seconds).
22:26:49 <shachaf> kmc: It's awful, isn't it?
22:26:51 <kmc> :)
22:26:52 <kmc> shachaf: yeah
22:26:57 <shachaf> I almost want to switch to tmux.
22:27:01 <kmc> your computer is 98% plugged in!
22:27:11 <kmc> shachaf: tmux supports non-BMP?
22:27:14 <Bike> metal
22:27:15 <shachaf> Yep.
22:27:26 <kmc> blackbold is metal?
22:27:40 <kmc> heavy metal umlaut is so last century
22:27:44 <Bike> yep
22:27:53 <kmc> of course fraktur is metal, this much is well known
22:27:59 <shachaf> Next time I have to restart my IRC session it'll probably be in tmux.
22:28:18 <shachaf> But I haven't restarted it in, uh, almost a year.
22:28:27 <shachaf> I'd have to write down all my channels and what not.
22:28:30 <GreyKnight> Ho ni ble k em ing
22:28:35 <shachaf> And I'd lose scrollback (since I don't keep logs).
22:29:33 <GreyKnight> solution: keep logs
22:29:49 <Bike> retroactively!
22:30:04 <shachaf> Bike: Your IRC client highlights lines that don't contain "shachaf".
22:30:08 <shachaf> Looks like a bug to me.
22:30:59 <Bike> it's kind of hard to track down. I thought I had it working yesterday but actually it just hilighted every line with a seven-letter uncapitalized word in it.
22:31:00 <GreyKnight> FeatherIRC™: Get it yesterday!
22:31:14 <shachaf> What's feather?
22:31:27 -!- nooga has joined.
22:31:34 <GreyKnight> ask me earlier
22:34:36 * GreyKnight is considering turning his capslock into a compose key but is bothered by the potential for mistyping
22:35:17 <ais523> GreyKnight: I did that, compose typos are less damaging than capslock typos
22:35:31 <ais523> becaUSE INSTEAD OF YOUR SENTENCE LOOKING LIKE THIS
22:35:39 <ais523> it l°ks like this
22:35:52 <shachaf> Uh, but caps lock is escape.
22:36:53 <shachaf> I think I need more than 12 workspaces.
22:38:24 * GreyKnight gœs f® it
22:41:00 <GreyKnight> yay I can type ðs
22:42:49 <hagb4rd> ^ °
22:42:55 <hagb4rd> ^ord °
22:42:56 <fungot> 194 176
22:44:25 <GreyKnight> heh, Compose+<3 gives ♥ :-3
22:45:11 <GreyKnight> I'm disappointed there doesn't seem to be a composition for SMILING CAT FACE WITH HEART-SHAPED EYES though, maybe I should add it
22:45:50 <FreeFull> GreyKnight: ♥ ¤ ☺
22:45:53 <shachaf> I'm disappointed Compose < / 3 doesn't do anything.
22:45:59 <kmc> yeah
22:46:06 <FreeFull> \3
22:47:43 <shachaf> 😲
22:47:48 <shachaf> zomg my font has that.
22:47:55 <kmc> U+2F75D 'BULLET WITH BUTTERFLY WINGS'
22:49:27 <shachaf> forM_ ['\x1f600'..'\x1f638'] (putStrLn.(:[]))
22:49:32 <shachaf> I'm surprised that I have fonts for these things!
22:49:48 -!- epicmonkey has quit (Ping timeout: 276 seconds).
22:50:06 <shachaf> 14:35 <ais523> becaUSE INSTEAD OF YOUR SENTENCE LOOKING LIKE THIS
22:50:07 <shachaf> 14:35 <ais523> it l°ks like this
22:50:17 -!- Vorpal has quit (Read error: Operation timed out).
22:50:20 <shachaf> ais523: Either way they look like bizarre Unicode codepoints.
22:50:31 <ais523> takes fewer backspaces to fix the second problem
22:51:30 <shachaf> U+1F6FF FACE WITH FACE-SHAPED EYES [🛿]
22:51:55 <GreyKnight> MULTIOCULAR FACE WITH FACE-SHAPED EYES
22:51:59 <kmc> gaaaaah
22:52:03 <kmc> nightmares
22:52:08 <GreyKnight> (I tried to capslock that '_')
22:52:13 <kmc> multiocular O is already a creepy character as it is
22:53:55 <shachaf> Oh, MULTIOCULAR O would be a great replacement character.
22:53:57 <shachaf> 2F6A9 SPIDER FACE x (cyrillic letter multiocular o - A66E)
22:53:59 <shachaf> Er.
22:54:01 <shachaf> 2F6A9 SPIDER FACE
22:54:01 <kmc> hhttp://upload.wikimedia.org/wikipedia/commons/e/e2/Nine_orders_of_angels.jpeg
22:54:03 <shachaf> x (cyrillic letter multiocular o - A66E)
22:55:35 <Arc_Koen> hh
22:55:40 <kmc> all this stuff about six-winged many-eyed seraphim and four-headed cherubs is pretty messed up
22:55:53 <kmc> seems like a throwback to that old-time polytheism
22:56:28 <GreyKnight> not as messed up as your protocol specifier
22:56:34 <GreyKnight> (also I don't see it)
22:56:36 <shachaf> A66E CYRILLIC LETTER MULTIOCULAR O * used in the epithet 'many-eyed'
22:56:38 <shachaf> Ugh.
22:56:42 <shachaf> What's with this pasting, irssi?
22:56:49 <GreyKnight> hm I need to recycle X in order to load a new .XCompose :-/
22:56:50 <shachaf> I'm pretty sure there was a newline there.
22:56:55 <GreyKnight> in fact ☹
22:56:58 <kmc> GreyKnight: doing your part for the environment
22:57:41 <Bike> kmc: the hebrew apocrypha around it is pretty great too. did you know that adam and even were a thousands-of-miles-tall hermaphrodite, and that metatron's eye is taller than Earth?
22:58:03 <kmc> haha
22:58:08 <kmc> fun times
22:58:46 <GreyKnight> yeswell. There's a reason "apocryphal" acquired its secondary implications :-P
22:59:10 <hagb4rd> well at least polytheism could not be instrumentalized that easy for political issues.. (since monotheism has this "you shall have no other gods then me" part)
22:59:33 <Bike> lol, polytheism apolotical
22:59:37 <kmc> i think polytheism was politicized plenty
22:59:42 <GreyKnight> https://github.com/kragen/xcompose has a composition for U+1F4A9 PILE OF POO
22:59:43 <kmc> what with roman emperors claiming to be gods and all that
23:00:00 <Bike> GreyKnight: it's such a useful character!
23:00:06 <kmc> nice
23:00:12 <hagb4rd> the roman adepted greek gods.. and the greek adepted egyptian gods.. giving them other names
23:00:46 <kmc> <Multi_key> <Multi_key> <p> <o> <o> : "💩" U1F4A9 # PILE OF POO
23:00:57 <kmc> <Multi_key> <Multi_key> <l> <i> <e> : "🎂" U1F382 # BIRTHDAY CAKE
23:00:58 <kmc> c.c
23:01:08 <GreyKnight> and yet still no SMILING CAT FACE WITH HEART-SHAPED EYES, it's outrageous
23:01:10 <shachaf> A4BB YI RADICAL LIE [꒻]
23:01:22 <GreyKnight> COMBINING CAKE ABOVE
23:01:41 <shachaf> 1F60C RELIEVED FACE [<U+1F60C>]
23:01:44 <shachaf> 1F625 DISAPPOINTED BUT RELIEVED FACE [<U+1F625>]
23:02:41 <shachaf> kmc: The problem is that Compose bindings have to be prefix-free
23:03:05 <kmc> yes
23:04:38 <GreyKnight> hm you can tie a *string* to a compose sequence
23:04:52 <GreyKnight> FR assign an executable command >_>
23:05:08 <kmc> so it's a macro system?
23:05:11 <kmc> that's fun
23:06:22 <GreyKnight> hm I wonder if you *can* tie commands somehow... surely I'm not the first person to dream up such madness
23:06:50 <shachaf> VT220 (?) lets you assign key sequences to keys by sending certain escape sequences.
23:07:05 <shachaf> So you can cat a file and have it remap F6 to rm -rf * or something.
23:08:11 <hagb4rd> one thing i don't like about using macros is, you get used to them to the point of addiction.. and you get into problems using another system as your own
23:08:32 <hagb4rd> but maybe that's not a big deal anyway
23:08:35 <GreyKnight> trufax
23:08:50 <kmc> i've not found this to be a major problem
23:09:10 <kmc> likewise I am able to mentally switch between keyboard layouts
23:09:16 <shachaf> kmc C. Dvorak
23:10:25 <kmc> people sometimes try to dissuade others from learning Dvorak on the basis that it is impossible to know two keyboard layouts
23:10:41 <kmc> but it's not true in my experience, or in the experience of millions of bilingual computer users
23:11:13 <shachaf> @yarrrr
23:11:13 <lambdabot> Smartly me lass
23:11:25 <shachaf> arr needs improvements.
23:11:31 <shachaf> @brain are you thinking what i'm thinking?
23:11:31 <lambdabot> Well, I think so, Brain, but do I really need two tongues?
23:16:30 <fizzie> lambdabot does not want to be bilingual.
23:17:06 <shachaf> @brain?
23:17:07 <lambdabot> Oooh, I think so Brain, but I think I'd rather eat the Macarena.
23:17:13 <shachaf> @brain!
23:17:13 <lambdabot> Be quiet Pinky, or I shall have to hurt you.
23:17:42 <GreyKnight> if only we had HackEgo around to play with instead :<
23:18:12 <fizzie> fungot: How many languages do you know?
23:18:13 <fungot> fizzie: like, thanks princess. i'll take that under advisement!!
23:19:22 <hagb4rd> ^help
23:19:22 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
23:19:55 <GreyKnight> fungot: Well excuuuuse me princess!
23:19:55 <fungot> GreyKnight: that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword alone can't stop! that sword al
23:20:05 <Bike> deep.
23:20:14 <GreyKnight> Awesome song man
23:21:01 <shachaf> fungot.........................
23:21:02 <fungot> shachaf: shall we get back to the present? he's been known. we reptites will rule the world in a mere door that keeps us bound, hand, foot...and tongue kid? ...oh, it's you, isn't this morbid? the great adventurer toma levine rests in a grave to the north. it's a great place for a picnic! heard that magus's place...
23:21:19 <fizzie> That sword alone sure takes me back.
23:21:23 <GreyKnight> Graveyards: best place for picnics
23:21:31 <hagb4rd> he's going crazy..that's for sure
23:21:43 <GreyKnight> fungot: that sword alone can't stop!
23:21:43 <fungot> GreyKnight: is the gate key okay!! get' em! 200g per night. care, and stay...healthy! my husband...he's...he's...gone... but he left me precious gifts! the seeds...and our child, it's ancient history now...
23:21:58 <fizzie> It's very repetitive, this style.
23:22:01 <kmc> it probably helps that I learned dvorak at an early age when my brain was still all squishy
23:22:15 <fizzie> fungot: Does the Black Omen sparkle brightly in the sun?
23:22:15 <fungot> fizzie: but cyrus! are you leaving! come on, now!!! after them!! hp recovered! the chef's in a snit, trying to get food to the front lines. heard a spell to energize the sword takes immense evil! indeed! this thing. what you have? transform! this trading house. it's the kind! i've decided to stay with these humans! you're a traitor! you're not our king! but, we are far outnumbered!
23:22:36 <kmc> ^mode
23:22:44 <fizzie> ^style
23:22:44 <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
23:22:47 <kmc> oh right
23:22:51 <kmc> ^style ct
23:22:51 <fungot> Selected style: ct (Chrono Trigger game script)
23:22:53 <hagb4rd> when your was like a flower.. just floating in the breeze
23:22:57 <kmc> fungot: !
23:22:57 <fungot> kmc: these unique items make us invincible!!!
23:23:01 <kmc> fungot: !!!
23:23:02 <fungot> kmc: but cyrus! are you leaving! robo, don't waste your time. alfador only likes you, crono!
23:23:07 <hagb4rd> *your head
23:23:11 <kmc> this is quite the exciting style
23:23:12 <Bike> fungot: the future area was probably my favorite, what about you?
23:23:13 <fungot> Bike: it's time you jumped off this mortal coil... you've changed! marle looks so much like leene, that they will take you to your place of execution?! strange, but!?
23:23:26 <Bike> ct is a lot more violent than i remember, evidently
23:23:29 <GreyKnight> fungot: You're so excited today!
23:23:29 <fungot> GreyKnight: you are strong of will...! that's the pendant the gurus and miss you. fail to live up to your potential! you'll learn! sealed, you'll be in danger. open hatch.
23:24:48 <Jafet> fungot, like us, remembers the most visceral parts.
23:24:49 <fungot> Jafet: but, we are far outnumbered! do not turn, now!!! after them!
23:25:43 <hagb4rd> ^style
23:25:43 <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
23:26:07 <hagb4rd> what is this set? sounds like shakespear
23:26:33 <fizzie> Yes, that's what people often say about Chrono Trigger.
23:27:08 <fizzie> ^style ff7
23:27:09 <fungot> Selected style: ff7 (Full script of the game Final Fantasy VII)
23:27:10 <Bike> wait until it gets to one of the famous monologues
23:27:11 <fizzie> fungot: What's this game like?
23:27:11 <fungot> fizzie: there's no better manager in the next train's coming in soon.
23:27:33 <fizzie> I think it's one of those train simulators.
23:27:42 <fizzie> (The DOOM TRAIN simulator.)
23:27:49 <GreyKnight> `quote train
23:27:51 <kmc> fungot: train simulator!
23:27:52 <fungot> kmc: what should i do? the plate'll go ping to get that upset... this is the promised land.
23:28:06 <shachaf> I was on a train today.
23:28:09 <GreyKnight> fungot: Crazy motorbike!!
23:28:09 <fungot> GreyKnight: we still have far to go home.
23:28:14 <Jafet> fungot: chocobos
23:28:14 <fungot> Jafet: that, there aren't that many who make first class. same as all these files. that is the materia.
23:28:16 <shachaf> I bought a two-way ticket but ended up walking home instead of taking the train back.
23:28:25 <Bike> http://www.youtube.com/watch?v=2u84cH_bmTA Does fungot have this scene included
23:28:26 <fungot> Bike: but there is no such thing as the model becomes smaller, you never know what she had the feeling that we'll meet on the floor next to me now, i'm gonna be watching from here.
23:28:49 <shachaf> What's a good way to learn about type checking/inference/etc.?
23:28:50 <olsner> shachaf: why did you take the train in the first place if you could've just walked?
23:29:03 <fizzie> Bike: No, because 7 is not 6.
23:29:24 <Bike> are you sure :(
23:29:30 <olsner> shachaf: check some types, infer some stuff, you'll get the hang of it?
23:29:31 <shachaf> olsner: Well, I thought it was farther than it was.
23:29:34 <GreyKnight> > 7 == 6
23:29:36 <lambdabot> False
23:29:48 <shachaf> It ended up being ~4 miles away.
23:30:03 <olsner> hmm, 4 miles is a fairly long walk
23:30:04 <fizzie> Bike: It does have the FF7 crossdressing scene. Or at least should have.
23:30:06 <shachaf> olsner: Type checkers/inferences/...
23:30:16 -!- sebbu2 has joined.
23:30:16 -!- sebbu2 has quit (Changing host).
23:30:16 -!- sebbu2 has joined.
23:30:18 <Bike> fungot: what are your thoughts on yaoi?
23:30:19 <fungot> Bike: hmmm, oh. cloud... say something. i almost fell over. i don't like this.
23:30:29 <Jafet> fungot likes it.
23:30:30 <fungot> Jafet: which shinra is leading the world collecting glowing stones!? gone! my leg's stuck in the first day you came!? you mean by ' back then...
23:30:34 <Bike> oh, cloud....
23:30:41 <GreyKnight> fungot likes it so much he nearly fell over...
23:30:41 <fungot> GreyKnight: i'm impressed! he was some stuff about me!! that's the first problem!
23:30:52 <GreyKnight> (or maybe fungot just dropped the soap)
23:30:52 <fungot> GreyKnight: don't give a damn about the ancients. i hope not...... urrrrrrgh....
23:31:25 <fizzie> fungot: Are you writing a Cloud/Barret slashfic or something?
23:31:25 <fungot> fizzie: i've already decided! if there isn't anyone named yuffie here in sector 7 slums!?
23:31:35 -!- sebbu has quit (Ping timeout: 240 seconds).
23:31:42 <shachaf> Hmm, the train station is ~2 miles from here.
23:32:05 <kmc> where is here
23:32:13 <GreyKnight> it's all plotted out already, already decided. Yuffie is not going to be in it, she will break up fungot's favourite ship Cloud/Barret (OTP!)
23:32:14 <fungot> GreyKnight: we have to be in this house until i was so angry......
23:32:15 <shachaf> Home.
23:32:18 <kmc> epa?
23:32:21 <shachaf> And the walk from the other train station to my destination was another mile.
23:32:23 <shachaf> Yes.
23:32:30 <kmc> i like trains
23:32:41 <shachaf> This isn't just any train, though.
23:32:45 <GreyKnight> fizzie was a train once (there was a wireless network on the train)
23:32:48 <kmc> there's a district named Professorville? really?
23:32:51 <Bike> is it a doom train?
23:32:52 <shachaf> It's Caltrain.
23:32:56 <shachaf> kmc: Really.
23:33:15 <kmc> shachaf: oh, do you live close to the IKEA?
23:33:30 <shachaf> Yep.
23:33:31 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
23:33:43 <kmc> nice
23:33:47 <kmc> do they have cheap swedish meatballs
23:34:04 <shachaf> I've never been in there, actually.
23:34:12 <shachaf> Also I don't eat meatballs.
23:34:16 <kmc> ah right
23:35:02 -!- Phantom_Hoover has joined.
23:35:08 <kmc> they sell a drink called GLÖGG ÄPPLE
23:35:19 <Bike> does it have to be written in caps like that?
23:35:20 <GreyKnight> reindeerbølls
23:35:29 <GreyKnight> YËS
23:35:32 <kmc> Bike: yes, ikea items are always named in uppercase
23:35:34 <Bike> baller
23:35:45 <GreyKnight> IKËÄ
23:35:55 <kmc> it's really a pretty clever usability trick
23:36:21 <olsner> ikea can be pretty clever
23:36:25 <kmc> the item names function basically like part numbers, but are vaguely pronounceable amusing pseudo-scandanavianisms
23:36:41 <kmc> the easy identification of items is helpful e.g. when reselling on craigslist
23:36:47 <shachaf> I wish uppercase didn't exist.
23:36:50 <olsner> most of the names are actual swedish words or person names
23:36:57 <kmc> http://www.ikea.com/ca/en/catalog/products/00112432/ PASTAÄLGAR
23:37:23 <olsner> spaghettimööse
23:37:36 <kmc> KRÄFTSKIVA LYKTA -- Lantern for crayfish party
23:37:49 <kmc> so *that's* what my crayfish parties have been missing!
23:38:49 <olsner> skiva is a weird word ... same as record or slice but here it means party
23:39:09 <GreyKnight> The crayfish were all very disappointed
23:39:24 <kmc> huh
23:40:08 <hagb4rd> party is a weird word.. same as celebration but here it means group?
23:41:13 <shachaf> Hmm, so if you mention the distance to the nearest train station kmc will track you down.
23:41:36 <shachaf> The average person needs two or three train stations to triangulate.
23:41:40 <kmc> it also means group in english
23:41:57 <kmc> and "part of", as in "i'm a party to this conversation"
23:42:10 <kmc> shachaf: i'm just that good
23:42:18 <hagb4rd> yes i actually did mean english
23:42:24 <GreyKnight> group is a weird word... same as a set of elements which is closed under an assocative invertible binary operation with an identity element, but here it means bunch of people?
23:43:07 <hagb4rd> bravi
23:43:13 <hagb4rd> *bravo
23:43:51 <kmc> oh
23:48:55 <GreyKnight> @quote
23:48:55 <lambdabot> fmap says: <ivanm> right, functions <fmap> fortunately lenses subsume that use case
23:49:16 <GreyKnight> oh good, lenses replace functions too
23:49:38 <GreyKnight> I guess we can just go ahead and make an esolang out of primitive lenses?
23:51:09 <kmc> that would be cool!
23:51:59 <shachaf> kmc: I'm probably going to be going from JFK to the Bronx next month.
23:52:10 <Fiora> every time someone says lens I think of an actual lens, and I imagine using a combination of lasers and lenses as an esolang, where the lenses serve as FFT operators
23:52:17 <shachaf> Do you have any kmsecrets for how to do that?
23:52:30 <kmc> Fiora: diffraction gratings are FFTish aren't they
23:52:38 <kmc> i don't really know about this
23:52:59 <kmc> but i'm told that those laser pointers which project images contain basically a fourier transform of the image, as a diffraction grating
23:53:22 <kmc> also if you cut 7 tiny holes in a circle and then put laser light through it, you might get a quasicrystal
23:53:41 <kmc> shachaf: whereabouts bronx-wise?
23:54:30 <Fiora> I think a lens is literlaly an FFT when applied to coherent light?
23:54:37 <shachaf> kmc: Netherland Ave.
23:54:44 <shachaf> I guess it's a big place.
23:55:00 <Fiora> http://cns-alumni.bu.edu/~slehar/fourier/fourier.html see "the optical fourier transform"
23:55:14 <kmc> Fiora: cool!
23:55:15 <kmc> i will read
23:55:41 <GreyKnight> KFiora:
23:56:00 <GreyKnight> (not really FFT related but still pretty cool)
23:56:36 <kmc> shachaf: I don't have any tricks, I would just do what google maps says
23:57:12 <shachaf> I think this will be more trouble than ~Columbus Circle.
23:57:33 <kmc> to some points in the Bronx it would make sense to take the Q44 from Jamaica across the Whitestone Bridge
23:57:59 <kmc> but not to Netherland Ave, which is on the other side of the Bronx
23:59:00 <shachaf> Yes.
23:59:06 <GreyKnight> Fiora: I guess "logic gates" aren't terribly interesting by esolang standards though :-/
23:59:08 <kmc> taking a Metro North train from Grand Central is potentially a reasonable option
23:59:12 <shachaf> I like the definite article in its name.
23:59:18 <kmc> yes
23:59:28 <kmc> Fiora: do you know about the optical solution to the traveling salesman problem?
23:59:33 <Fiora> what O_O
23:59:39 <Bike> ooh that sounds fun
23:59:55 <kmc> i don't remember the details, but you can arrange optical fibers and beam-splitters with lengths corresponding to the distances between cities
23:59:58 * Fiora really loves alternate computational systems and stuff, so the idea of doing computation with lenses or whatever is really cool
2013-01-08
00:00:15 <kmc> and then you can put coherent light in and use interference to determine the shortest path
00:00:22 <Bike> ugh you know i don't have the money for physarum machines, don't tempt me
00:00:28 <kmc> thus solving an NP-complete problem in polynomial time BUT with an exponential amount of energy :/
00:00:48 <kmc> basically you have built a parallel computer where each photon is a separate instruction pointer
00:00:53 <Fiora> .... wow
00:01:00 <shachaf> That sounds nifty.
00:01:04 <Bike> kmc: doubles as the marketing copy
00:01:07 <GreyKnight> "We'll just farm out the computation to whatever the universe runs on"
00:01:37 <Fiora> we can perform FFTs by using a liquid crystal screen and a laser and a lens and a CCD
00:01:45 <oklopol> can't you fit only a polynomial number of photons in a cubic meter
00:02:18 <oklopol> because then that won't help you solve what otherwise takes exponential time, at least
00:02:28 <kmc> maybe so
00:02:35 <Fiora> I think in practice it's going to be limited more by melting the optical fiber
00:02:35 <oklopol> not that i don't agree with the wow
00:03:08 <kmc> another cool thing is http://en.wikipedia.org/wiki/TWINKLE
00:03:15 <Fiora> or we can solve optimization problems by like, representing them as protein folding problems
00:04:21 <kmc> this is a prime number sieve built out of simple, independent elements that communicate with a controller by freespace optics
00:04:25 <Fiora> http://cs.tau.ac.il/~tromer/twirl/
00:04:42 <kmc> yeah, that's the successor project
00:04:50 <Bike> kmc: so why is it only hypothetical?
00:04:56 <kmc> dunno
00:05:12 <Bike> bother
00:05:26 <kmc> the cool trick is that you sum the outputs from these elements just by measuring the total amount of light
00:05:33 <kmc> which is far far faster than you could run a binary adder tree
00:05:46 <kmc> and you clock them by blasting the whole wafer with IR light
00:05:58 <kmc> which is far easier than widespread clock distribution
00:07:08 <GreyKnight> Twinkle, twinkle, little prime // How I wonder what you divide
00:07:21 <shachaf> @slap GreyKnight
00:07:21 * lambdabot orders her trained monkeys to punch GreyKnight
00:07:27 <shachaf> Please, no bad rhymes.
00:07:28 <Bike> it doesn''t scan!
00:07:35 <Fiora> lambdabot is female?
00:07:36 <shachaf> Or that.
00:07:40 <GreyKnight> >:-(
00:07:44 <kmc> yeah
00:07:45 <GreyKnight> FINE you do better then!!
00:07:49 <oklopol> GreyKnight: best poem this year
00:07:50 <Fiora> ... for that matter, has a gender?
00:08:10 <Bike> hm. how i di-vide what you are? that's pretty sucky though
00:08:17 <GreyKnight> "Shamir has estimated that the cost of TWINKLE could be as low as $5000 per unit with bulk production." <-- I am guessing it would cost £bignum to make it non-theoretical *without* bulk production
00:08:21 <shachaf> @slap Bike
00:08:21 * lambdabot smashes a lamp on Bike's head
00:08:29 <Bike> ow :(
00:08:38 <GreyKnight> Bike, you don't divide the prime >:-(
00:08:51 <shachaf> GreyKnight: More like $bignum
00:08:57 <Bike> you do to see if it's really prime!
00:08:59 <shachaf> Which is something like half as much?!
00:09:04 <GreyKnight> shachaf: no u
00:09:26 <Bike> shachaf: this is computer science, constant factors are so unimportant
00:09:49 <shachaf> Bike: But every prime factors into constants...
00:09:50 <GreyKnight> bignum, multiplied or divided by 100
00:10:09 <GreyKnight> (order-of-magnitude error bars are the best thing)
00:10:41 <kmc> GreyKnight: $TEXAS
00:11:01 <GreyKnight> did I wander into #perl by accident
00:12:16 <kmc> is there a CPAN module to use £ and € as sigils
00:12:16 <kmc> surely
00:12:37 <GreyKnight> they have modules to let you program in Latin, surely the above exists
00:12:48 <GreyKnight> I'm sure I saw a Klingon one too
00:13:11 <GreyKnight> (for when regular perl isn't opaque enough)
00:15:01 -!- sebbu2 has changed nick to sebbu.
00:17:39 <oerjan> > nubBy(((>1).).gcd)[2..]
00:17:41 <lambdabot> [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101...
00:18:36 <shachaf> > nubBy((>1).:gcd)[2..]
00:18:38 <lambdabot> [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101...
00:18:59 <kmc> shachaf: will you give me a trip report regarding whatever route you take from JFK?
00:19:13 <shachaf> kmc: If you like.
00:19:30 <kmc> yay
00:19:32 <kmc> i do like
00:19:45 <GreyKnight> 5000 word essay please with diagrams
00:19:52 <shachaf> Hmm, is "trip report" also a drugs thing?
00:19:59 <kmc> yes
00:20:08 <kmc> that's the 'original' context from which i know it
00:20:08 <shachaf> Is that why you like trains so much?
00:20:13 <kmc> haha
00:20:14 <kmc> no
00:20:17 <shachaf> I guess that wouldn't explain why lexande likes trains.
00:20:43 <FreeFull> > fix (\x -> 1:map (+1) x)
00:20:45 <lambdabot> [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28...
00:20:57 <FreeFull> > fix (\x -> 1:map (gcd . (+1)) x)
00:20:59 <lambdabot> Occurs check: cannot construct the infinite type: a0 = a0 -> a0
00:21:21 <FreeFull> Wait
00:21:23 <kmc> yes, for some trips gmaps does recommend taking MNRR
00:21:27 <FreeFull> Nevermind
00:21:28 <oerjan> gcd takes two arguments
00:21:37 <shachaf> kmc: is that a drug
00:21:38 <FreeFull> Yeah, I noticed
00:21:45 <kmc> though i would just walk from lex/53rd to Grand Central instead of trying to catch the 6
00:21:50 <kmc> it's a railroad
00:21:50 <kmc> metro north rail road
00:21:51 <FreeFull> > fix (\x -> 1:map (*2) x)
00:21:52 <lambdabot> [1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,...
00:22:05 <FreeFull> > fix (\x -> 1:map (*2 - 1) x)
00:22:06 <lambdabot> The operator `GHC.Num.*' [infixl 7] of a section
00:22:06 <lambdabot> must have lower prece...
00:22:21 <oerjan> sad trombone
00:22:21 <FreeFull> > fix (\x -> 1:map (*2).(-1) x)
00:22:22 <lambdabot> No instances for (GHC.Num.Num [b0], GHC.Num.Num ([[b0]] -> [[b0]]))
00:22:22 <lambdabot> aris...
00:22:22 <shachaf> kmc: Once you recommended hopstop.com instead of Google Maps for NYC trips, I think?
00:22:28 <kmc> that's right
00:22:33 <kmc> let's see what hopstop says
00:23:03 <oerjan> FreeFull: that last one is wrong for at least 3 different reasons :P
00:23:38 <FreeFull> > fix (\x -> 1:map ((*2).((-)1)) x)
00:23:40 <lambdabot> [1,0,2,-2,6,-10,22,-42,86,-170,342,-682,1366,-2730,5462,-10922,21846,-43690...
00:24:19 <kmc> hopstop lets you exclude individual subway lines
00:24:22 <kmc> in case you really hate the G train
00:24:34 <FreeFull> I wonder how you would do primes
00:25:16 <FreeFull> > fix (\x -> 2:filter (\a -> a`mod`x == 0) (x+1))
00:25:17 <lambdabot> Occurs check: cannot construct the infinite type: a0 = [a0]
00:25:35 <FreeFull> Yeah, that wouldn't work
00:25:40 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
00:25:42 <FreeFull> x isn't the list, just an element
00:25:52 <shachaf> What's wrong with the G?
00:25:54 <GreyKnight> if you look at the entire lower list you could pull off some sort of sieve
00:26:17 <FreeFull> But I think you can only access the upper parts like this
00:27:01 -!- Phantom_Hoover has joined.
00:27:09 <kmc> it's the train everyone loves to hate
00:27:21 <oerjan> @src nubBy
00:27:22 <lambdabot> nubBy eq [] = []
00:27:22 <lambdabot> nubBy eq (x:xs) = x : nubBy eq (filter (\ y -> not (eq x y)) xs)
00:27:27 <shachaf> The E train is fancy.
00:27:31 <shachaf> Well, the one I was on.
00:27:34 <kmc> yes
00:27:40 <kmc> it has the newest cars in the system afaik
00:27:48 <kmc> with voice announcements by Bloomberg Radio personalities
00:28:01 <kmc> i think they do like Moscow Metro and use male voices in one direction and female in the other
00:28:55 <shachaf> Stay clear oft he closing doors, please!
00:29:38 <shachaf> Run around the block. Run for office. But don't run on the subway.
00:29:56 <GreyKnight> "Mind the gap." "The gap is old enough to mind itself, bog off."
00:32:14 <oerjan> > fix((0:).scanl(+)1)
00:32:15 <lambdabot> [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946...
00:32:34 <kmc> i think the newest cars on PATH might be a bit newer though
00:32:40 <oerjan> (other obligatory example)
00:32:59 <shachaf> oerjan: uhhhhhh...............
00:33:05 <shachaf> > fix((1:).scanl(+)1)
00:33:07 <lambdabot> [1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,1...
00:33:16 <shachaf> ftfy hth hand
00:33:21 <oerjan> shachaf: i considered, then rejected that option
00:33:33 <shachaf> But the sequence starts with 1.
00:34:34 <FreeFull> > fix((55),scanl(-)34)
00:34:35 <lambdabot> Couldn't match expected type `a0 -> a0' with actual type `(t0, t1)'
00:34:41 <FreeFull> > fix((55).scanl(-)34)
00:34:42 <lambdabot> No instance for (GHC.Num.Num ([b0] -> [b0]))
00:34:43 <lambdabot> arising from a use of `e_15...
00:34:55 <GreyKnight> starting with 0 gives you the nice boundary condition that F_0 = 0 and F_1 = 1
00:34:57 <FreeFull> > fix((55:).scanl(-)34)
00:34:59 <lambdabot> [55,34,-21,-55,-34,21,55,34,-21,-55,-34,21,55,34,-21,-55,-34,21,55,34,-21,-...
00:35:02 <GreyKnight> (how can you resist?!)
00:35:07 <oerjan> exactly!
00:35:15 <FreeFull> Ok, this isn't what I intended
00:35:23 <shachaf> Starting with 1 gives you the very nice condition that it's correct.
00:35:25 <shachaf> So there's that.
00:35:36 <oerjan> (also F_(gcd(m,n)) = gcd(F_m,F_n))
00:35:42 <FreeFull> Both 0,1 and 1,1 are correct
00:36:01 <shachaf> @swat oerjan
00:36:01 <lambdabot> Maybe you meant: slap what
00:36:08 <shachaf> @what oerjan
00:36:08 <lambdabot> I know nothing about oerjan.
00:36:21 <shachaf> oerjan is just a monoid in the monoid of monoids.
00:36:26 * GreyKnight gazes at shachaf Ꙭ
00:37:09 -!- nooga has quit (Ping timeout: 248 seconds).
00:43:54 <GreyKnight> > let trundle = (\init op -> fix (\x -> init:map op x)) in take 16 (trundle 1 (*2))
00:43:55 <lambdabot> [1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768]
00:47:39 <shachaf> If only there was a standard library operation for that.
00:48:14 <GreyKnight> Yes.
00:48:42 <GreyKnight> I'm sure it'd be very popular
00:49:00 <shachaf> Well, you can't just invent an entire standard library at once.
00:49:14 <shachaf> You start with a simple base, see what people are missing, and iterate.
00:49:22 <GreyKnight> first there is the important matter of *comment syntax* to settle
00:51:16 <FreeFull> > fix id
00:51:20 <lambdabot> mueval-core: Time limit exceeded
00:51:21 <FreeFull> > fix id 3
00:51:24 <lambdabot> mueval-core: Time limit exceeded
00:51:33 <FreeFull> > fix \x -> 3
00:51:34 <lambdabot> <hint>:1:5: parse error on input `\'
00:51:37 <FreeFull> > fix $ \x -> 3
00:51:38 <lambdabot> 3
00:51:46 <FreeFull> > fix $ id $ 3
00:51:48 <lambdabot> No instance for (GHC.Num.Num (a0 -> a0))
00:51:48 <lambdabot> arising from a use of `e_13'
00:51:48 <lambdabot> P...
00:51:48 <shachaf> > Just $ do 5 :: Int
00:51:49 <lambdabot> Just 5
00:52:17 <FreeFull> > Just $ do 5; return 10;
00:52:19 <lambdabot> Could not deduce (GHC.Num.Num (m a0))
00:52:19 <lambdabot> arising from the ambiguity check f...
00:52:28 <FreeFull> > Just $ do 5; return (10 :: Int);
00:52:29 <lambdabot> Could not deduce (GHC.Num.Num (m a0))
00:52:29 <lambdabot> arising from the ambiguity check f...
00:52:38 <FreeFull> > Just $ do 5 :: Int; return (10 :: Int);
00:52:40 <lambdabot> Couldn't match expected type `m0 a0'
00:52:40 <lambdabot> with actual type `GHC.Typ...
00:52:44 <FreeFull> Hrm
00:53:20 <GreyKnight> > fix (\f -> (\s -> 'h':'t':f s)) "h"
00:53:21 <FreeFull> :t Just $ do
00:53:22 <lambdabot> "hththththththththththththththththththththththththththththththththththththt...
00:53:22 <lambdabot> Empty 'do' block
00:53:31 <FreeFull> :t Just $
00:53:32 <lambdabot> parse error (possibly incorrect indentation)
00:53:34 <FreeFull> :t Just
00:53:35 <lambdabot> a -> Maybe a
00:53:57 <FreeFull> > Just $ do 5 :: Int; 10 :: Int
00:53:59 <lambdabot> Couldn't match expected type `m0 a0'
00:53:59 <lambdabot> with actual type `GHC.Typ...
00:54:13 <oerjan> :t \x -> do x
00:54:14 <lambdabot> t -> t
00:54:27 <FreeFull> > Just $ do 5 >> 10 :: Int
00:54:29 <lambdabot> Couldn't match expected type `GHC.Types.Int'
00:54:29 <lambdabot> with actual type ...
00:55:10 <oerjan> FreeFull: do 5 only works because the monadic type isn't checked when there is only one action
00:55:31 <shachaf> oerjan: It's hopefully not checked no matter how many actions there are.
00:55:40 <shachaf> It's just that (>>)'s type forces it.
00:56:00 <shachaf> :set -XRebindableSyntax
00:56:01 <oerjan> shachaf: i mean a do block action
00:56:05 <shachaf> λ> let (>>) = const id in do 5; 6
00:56:05 <shachaf> 6
00:56:41 <oerjan> oh well that redefinablesyntax thing
00:57:10 <GreyKnight> FreeFull: "do" is a special syntax and not a function, so (Just $ do) isn't anything meaningful AIUI
00:57:43 <nooodl> seriously, -XRebindableSyntax?
00:57:47 <FreeFull> :t Just $ return 5 >> return 6 :: Int
00:57:48 <nooodl> that sounds neat
00:57:48 <lambdabot> Couldn't match expected type `Int' with actual type `Maybe (m0 b0)'
00:57:48 <lambdabot> In the expression: Just $ return 5 >> return 6 :: Int
00:57:53 <shachaf> Hmm, you can make that particular line work without RebindableSyntax, I think.
00:57:54 <FreeFull> :t Just $ return 5 >> return 6 :: Maybe Int
00:57:55 <lambdabot> Couldn't match expected type `Int' with actual type `m0 b0'
00:57:55 <lambdabot> Expected type: Maybe Int
00:57:55 <lambdabot> Actual type: Maybe (m0 b0)
00:58:02 <FreeFull> :t Just $ return 5 >> return 6
00:58:03 * GreyKnight wonders what FreeFull is trying to do
00:58:04 <lambdabot> (Monad m, Num b) => Maybe (m b)
00:58:05 <shachaf> FreeFull: You should spam lambdabot in /msg
00:58:17 <FreeFull> One last thing
00:58:21 <FreeFull> > Just $ return 5 >> return 6
00:58:22 <lambdabot> No instance for (GHC.Show.Show (m0 b0))
00:58:23 <lambdabot> arising from a use of `M80020794...
00:58:34 <GreyKnight> or, maybe get ghci locally :-)
00:58:35 <FreeFull> M80020794....
00:58:42 <Bike> m80020794 is my favorite type.
00:58:43 <GreyKnight> those pesky M80020794s
00:58:52 <FreeFull> GreyKnight: lambdabot behaves differently from ghci though
00:59:02 <GreyKnight> well!
00:59:46 <shachaf> λ> Just $ do 5; 6
00:59:46 <shachaf> Just 6
00:59:48 <shachaf> No RebidnableSyntax
00:59:57 <oerjan> > Just $ return 5 >> return 6 :: Maybe (Either String Word16)
00:59:58 <shachaf> What do you say to that?
00:59:59 <lambdabot> Just (Right 6)
01:00:19 * shachaf feels mildly bad for that, actually.
01:00:30 <oerjan> > "Just $ do 5; 6"
01:00:32 <lambdabot> "Just $ do 5; 6"
01:00:44 <oerjan> UNICODE CHECK PASSED
01:01:03 <FreeFull> But that didn't use any UTF-8 that isn't also ASCII-7
01:01:09 <shachaf> I wouldn't feel bad for cheating.
01:01:13 <shachaf> Er, for cheating that way.
01:01:21 <oerjan> shachaf: you can do it with a sufficiently evil instance, of course
01:01:35 <shachaf> You need more than one, I think.
01:02:12 <oerjan> instance Num a=> Num (m a)
01:02:26 <shachaf> Right, that's one.
01:02:37 <oerjan> and a Show
01:02:39 <shachaf> I think you have to define two different data types to make it work?
01:03:10 <GreyKnight> It's time for the Tuesday edition of the Type Arcana Show
01:03:32 -!- nooodl has quit (Ping timeout: 248 seconds).
01:03:35 <shachaf> Making defaulting work is tricky.
01:03:37 <oerjan> FreeFull: THUS IT PASSED
01:04:12 <GreyKnight> > "😻"
01:04:13 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
01:04:37 <oerjan> @read 
01:04:37 <lambdabot> Plugin `dummy' failed with: Prelude.read: no parse
01:04:42 <oerjan> @read ""
01:04:42 <lambdabot>
01:04:51 <oerjan> eek
01:04:58 <oerjan> @read ""
01:04:58 <lambdabot>
01:04:58 <Bike> innovative bugs up in here
01:05:18 -!- ais523 has quit.
01:05:21 <oerjan> @show 
01:05:21 <lambdabot> "\239\152\187"
01:05:28 -!- zzo38 has joined.
01:07:22 <GreyKnight> > let trap_in_forcefield = (\P -> "⌇⌇"++P++"⌇⌇") in (trap_in_forcefield "shachaf")
01:07:22 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
01:07:39 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
01:08:01 -!- monqy has joined.
01:09:25 -!- Phantom_Hoover has joined.
01:10:10 <shachaf> hi monqy :')
01:10:14 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:10:28 <shachaf> have you ever been trapped in a force field
01:10:31 <monqy> hi shachaf
01:10:47 <monqy> i don't think those exist
01:10:54 <shachaf> uhhh
01:11:03 <shachaf> p. sure they do?
01:11:08 <monqy> ok
01:11:15 <shachaf> i saw it in a movie
01:11:26 <Bike> ⌇⌇forcefields⌇⌇
01:11:30 <oerjan> i'm trapped in this ridiculously strong force field
01:11:54 <oerjan> it's so strong, i simply cannot afford to get off this planet
01:12:12 <monqy> must suck to be you!!!
01:12:20 <GreyKnight> ⌇⌇😻 oerjan⌇⌇ Now a smiling cat with heart-shaped eyes is trapped in the force field with you
01:12:30 <GreyKnight> who will get hungry first?!
01:12:37 <Arc_Koen> oerjan: you can't because you don't really *want* to, that's all!
01:13:02 <hagb4rd> omg it really is a smiling cat with heart shaped eyes
01:13:52 * oerjan munches on the cat
01:14:21 <oerjan> it wasn't feline very good
01:15:31 <GreyKnight> hagb4rd, it is best character
01:15:36 <oerjan> monqy: the gravity of the situation is unmistakeable
01:15:50 <hagb4rd> all the time i thought it's a joke
01:16:52 <shachaf> Where should I learn about reading diagrams like http://slbkbs.org/help.png ?
01:16:59 <hagb4rd> now i am little bit scared
01:17:05 <shachaf> It looks scary.
01:17:52 <monqy> doesnt look that bad
01:18:19 <GreyKnight> hagb4rd: we also discovered a few weeks back that there are not one but three penis glyphs in Unicode hth
01:18:26 <oerjan> type judgements in natural deduction notation
01:18:34 <shachaf> I don't even know the notation.
01:18:40 <Bike> GreyKnight: but no combining penis above :(
01:18:45 <monqy> you've never seen natural deduction notation?
01:18:54 <hagb4rd> wow
01:18:56 <GreyKnight> shocking omission :<
01:19:04 <shachaf> I've seen simple versions.
01:19:21 <GreyKnight> (hagb4rd: to be fair they are all Egyptian hieroglyphs so not technically Unicode's fault :-3)
01:19:44 <GreyKnight> the hieroglyph for "penis" is guess what
01:19:51 <hagb4rd> dunno
01:19:57 <hagb4rd> a penis?
01:20:06 <Bike> combining multiocular o above
01:20:16 <GreyKnight> hagb4rd, exactly :-P
01:20:22 <hagb4rd> lol
01:20:26 <kmc> "Japanese hacker continues to taunt police with clue strapped to cat"
01:20:56 <GreyKnight> kmc: it's http://xkcd.com/262/ in real life :-o
01:21:43 <kmc> stupid cyberpunk future
01:22:44 <shachaf> monqy: Maybe the problem is that I don't know anything about type systems.
01:22:50 <monqy> that could be it
01:23:05 <GreyKnight> I am glad Unicode included specific codepoints for Roman numerals, I've no idea how I would write 50 without the glyph for "Ⅼ"
01:23:09 <shachaf> Do you know about type systems?
01:23:11 <monqy> shachaf: have you read "tapl"? it's a nice introduction
01:23:21 <shachaf> monqy: Nope.
01:23:26 <shachaf> Should I read that?
01:23:28 <oerjan> shachaf: hm the parts from the squiggly lines out _do_ look unfamiliar, without them most of it would be as i expect
01:23:29 <shachaf> I guess I should.
01:23:39 <GreyKnight> shachaf: you are a haskellian how can you not know type systems?!
01:23:52 <shachaf> GreyKnight: I'm a fake. :-(
01:24:10 <monqy> my guess about the squiggly lines is it's the constraints you can derive from the typing judgment
01:24:24 <monqy> what has to unify with what
01:24:39 <monqy> (which afaict is supported by how they're used)
01:25:12 <oerjan> aha
01:27:00 <monqy> shachaf: generally for natural deduction stuff the way i go about it is if there's something that the judgment is "about" e.g. the expression being typed, in the case of type systems, or evaluated, in the case of operational semantics, look at that bit under the line first to know what's going on, and then go from there
01:29:42 <oerjan> monqy: indeed that seems to be how to interpret the added tau ~ tau_1 condition in LETA
01:33:46 <shachaf> monqy: Hmm.
01:33:58 <shachaf> I guess I should read TaPL.
01:36:22 -!- Arc_Koen has quit (Quit: Arc_Koen).
01:40:16 -!- GreyKnight has quit (Quit: zzz).
01:40:30 <kmc> "A pony isn't a baby horse, it's a foal, a fucking foal is a baby horse" "Right, our guest tonight on I Don't Give A Fuck About Baby Horses is me"
01:40:44 <olsner> right, ponies are foals
01:42:55 <oerjan> hm do girls who want ponies believe that they are baby horses?
01:44:06 <olsner> they probably hope for a mishap in the pony store so they get a baby horse mistaken for a pony
01:44:28 <kmc> Mishap in the Pony Store would be a good name for an emo band
01:44:41 -!- TeruFSX has joined.
01:44:51 <oerjan> that has a ring to it
01:45:22 <hagb4rd> related: http://emobandname.com/
01:46:15 <oerjan> "Mornings Post Sex"
01:46:25 <kmc> i got "Drunk Hungry Sex"
01:46:33 <kmc> also "Bullied Your Family"
01:47:09 <olsner> "October Fun Hot Dog"
01:47:36 <Bike> That hardly sounds very emo.
01:48:40 <hagb4rd> well.. it hardly beats "mishap in the pony store"
01:48:48 <hagb4rd> that's right
01:51:04 <kmc> "New party logo: A kitten in a sock, sitting on a motorway shouting 'Help me, help me, I don't know what to do'"
01:55:50 <shachaf> ^rot13 ivan
01:55:51 <fungot> vina
01:56:11 <shachaf>
01:56:14 <oerjan> ^rot13 *GASP*
01:56:14 <fungot> *TNFC*
01:59:35 <hagb4rd> this reminds of a southpark episode in which they claimed the scripts of "family guy" beeing written by a group of seals randomly picking up some coloured balls representing pop-cultural-references
01:59:51 -!- WeThePeople has joined.
02:05:12 <kmc> "PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRAKCET * misspelling of "BRACKET" in character name is a known defect"
02:06:00 <shachaf> 1D0C5 BYZANTINE MUSICAL SYMBOL FHTORA SKLIRON CHROMA VASIS
02:06:02 <shachaf> * misspelling of "FTHORA" in character name is a known defect
02:06:14 <shachaf> Hmm.
02:06:26 * shachaf is more concerned with LAMDA.
02:06:56 <shachaf> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL LAMDA
02:07:51 <oerjan> * misspelling of "LAMBADA" in character name is a known defect
02:07:53 <kmc> but is it a known defect??
02:08:26 <shachaf> (The regular λ is also spelled LAMDA.)
02:08:57 <olsner> if they don't know how to spell something, I guess they can call it an unknown defect
02:09:18 <Bike> they can't change the names once they're set down, can they?
02:09:46 <olsner> they can start consistently misspelling the name
02:10:11 <Bike> referer
02:11:03 <FireFly> ^rot13 Vivian
02:11:03 <fungot> Ivivna
02:12:02 <FireFly> ^rot13 naught, vain
02:12:03 <fungot> anhtug, inva
02:12:21 <shachaf> ^rot13 anna
02:12:21 <fungot> naan
02:12:40 <monqy> ^rot13 funpuns
02:12:40 <fungot> shachaf
02:12:43 <monqy> :0
02:12:52 <shachaf> monqy: zomg
02:13:08 <shachaf> ^rot13 natural deduction
02:13:09 <fungot> angheny qrqhpgvba
02:13:15 <shachaf> ^rot13 monqy
02:13:15 <fungot> zbadl
02:13:21 <shachaf> ^rot13 mrmistermonkey
02:13:22 <fungot> zezvfgrezbaxrl
02:14:24 <shachaf> monqy: do you know about linear algebra
02:14:32 <olsner> ^rot13 itflabtijtslwi
02:14:32 <fungot> vgsynogvwgfyjv
02:14:44 <FireFly> ^rot13 emblazonry
02:14:45 <fungot> rzoynmbael
02:14:52 <monqy> shachaf: at lest some about it. what about it?
02:15:06 <shachaf> monqy: i don't know i don't know much about it :(
02:15:13 <shachaf> and elliott doesn't either? unless he does
02:15:22 <shachaf> and anyway should i know things about it
02:15:26 <olsner> ^rot13 g
02:15:26 <fungot> t
02:15:52 <FireFly> It's fun, especially if you like writing raycasters and raytracers and stuff
02:16:12 <monqy> my knowledge of linear algebra is more on the theory side than the appication side
02:16:33 <shachaf> the theory side is good
02:17:22 <olsner> derivative esolang time: vgsynogvwgfyjv is itflabtijtslwi but with T instead of G
02:17:31 <oerjan> OKAY
02:17:53 <oerjan> ^rot13
02:17:57 <oerjan> ^rot13 brick
02:17:57 <fungot> oevpx
02:18:04 <FireFly> ^rot13 oerjan
02:18:05 <fungot> brewna
02:18:09 <oerjan> ^rot13 brain
02:18:09 <fungot> oenva
02:18:25 <shachaf> ^rot13 averting
02:18:25 <fungot> niregvat
02:18:28 <oerjan> expect your oenva to swapped with an oevpx
02:18:34 <oerjan> *+be
02:18:34 <olsner> ok brewna
02:18:43 <shachaf> ^rot13 verily
02:18:43 <fungot> irevyl
02:18:52 <shachaf> ^rto13 regret
02:18:58 <shachaf> ^rot13 regret
02:18:59 <fungot> erterg
02:19:05 <FireFly> ^rot13 fuehrer
02:19:06 <fungot> shruere
02:19:09 <FireFly> oh, darn
02:19:20 <FireFly> that works when pluralised
02:19:29 <hagb4rd> hey regret makes a perfect anagram tooo
02:19:58 <FireFly> ^rot13 grievant
02:19:58 <fungot> tevrinag
02:20:24 <oerjan> qre shruere
02:20:38 <shachaf> Ooh.
02:20:40 <shachaf> ^rot13 ravine
02:20:41 <fungot> enivar
02:20:47 <FireFly> Oh, nice
02:20:48 <olsner> oerjan: I thought the brickbraining only applied for BF derivatives
02:21:15 <oerjan> A COMMON ERROR
02:21:36 <hagb4rd> we're just so lonely and bored
02:21:52 <shachaf> ^rot13 tang
02:21:53 <fungot> gnat
02:22:05 <hagb4rd> and we don't even have hackego to play with
02:22:38 <oerjan> ^rot13 hackego
02:22:38 <fungot> unpxrtb
02:22:49 <oerjan> ^rot13 fungot
02:22:49 <fungot> shatbg
02:23:00 <oerjan> ^rot13 hagb4rd
02:23:00 <fungot> unto4eq
02:23:19 <olsner> find a nice character that looks like a flipped G, swap / and \ and you can get iwlstjitbalfti
02:23:36 <FireFly> shachaf: http://hastebin.com/jelivupufu
02:24:11 <shachaf> I think your words file is better than mine.
02:24:48 <shachaf> ^rot13 erneenatrzrag
02:24:49 <fungot> rearrangement
02:24:51 <shachaf> "almost"
02:25:18 * FireFly uses the words-insane package from AUR
02:25:26 <FireFly> or rather, the words file it provides
02:25:44 <shachaf> Hmm, find me a good Debian package.
02:26:28 <FireFly> You could just look at the pkgbuild and grab the file from the same source
02:26:32 <FireFly> https://aur.archlinux.org/packages/wo/words-insane/PKGBUILD
02:26:57 <FireFly> http://downloads.sourceforge.net/wordlist/scowl-7.1.tar.gz it seems
02:27:45 <shachaf> > rot13 "terra"
02:27:47 <lambdabot> "green"
02:33:22 <oerjan> ^rot13 mars
02:33:23 <fungot> znef
02:33:47 <oerjan> ^rot13 mercury venus jupiter saturn uranus neptune
02:33:47 <fungot> zrephel irahf whcvgre fnghea henahf arcghar
02:33:52 <shachaf> ^rot13 pluto
02:33:53 <fungot> cyhgb
02:34:28 <oerjan> ^rot13 titan enceladus ganymede eris vesta ceres
02:34:28 <fungot> gvgna raprynqhf tnalzrqr revf irfgn prerf
02:34:32 <FireFly> ^rot13 mercurial
02:34:32 <fungot> zrephevny
02:34:55 <oerjan> the famous czech version control
02:35:15 <oerjan> ^rot13 czech
02:35:15 <fungot> pmrpu
02:36:23 <hagb4rd> ^rot13 io miranda triton
02:36:23 <fungot> vb zvenaqn gevgba
02:36:41 <hagb4rd> ^rot13 phobos
02:36:41 <fungot> cubobf
02:38:20 <c00kiemon5ter> ^rot13 cookies
02:38:20 <fungot> pbbxvrf
02:38:22 <shachaf> ^rot13 robyn
02:38:23 <fungot> ebola
02:38:44 <hagb4rd> shachaf is cheating
02:41:11 <hagb4rd> guess i'll watch another space-realated-documentation and try to fall asleep
02:41:16 <hagb4rd> ^rot13 good night
02:41:17 <fungot> tbbq avtug
02:41:54 -!- hagb4rd has quit (Quit: tbbq avtug).
02:43:04 <shachaf> ^rot13 nowhere
02:43:04 <fungot> abjurer
02:56:40 <shachaf> I guess most of these are well-known.
02:56:43 <shachaf> I didn't know them!
03:00:44 -!- DHeadshot has joined.
03:02:49 <zzo38> I have read it somewhere; "abjurer" and "nowhere" is apparently the longest ROT13 pair in ordinary English words.
03:03:50 <kmc> that's neat
03:04:34 <Bike> I don't even remember what "abjurer" means. A summoning magician? Some kind of legal thing?
03:04:37 <Bike> @wn abjurer
03:04:38 <lambdabot> *** "abjurer" wn "WordNet (r) 3.0 (2006)"
03:04:38 <lambdabot> abjurer
03:04:38 <lambdabot> n 1: a person who abjures
03:04:42 <Bike> Fuck you.
03:04:46 <shachaf> thx lambdabot
03:04:49 * kmc falls over laughing
03:05:01 <shachaf> @wn abjures
03:05:01 <lambdabot> No match for "abjures".
03:05:06 <kmc> apparently it means "to solemnly renounce"
03:05:07 <Bike> fuuuuuck youuuuu
03:05:09 <shachaf> @wn abjure
03:05:09 <lambdabot> *** "abjure" wn "WordNet (r) 3.0 (2006)"
03:05:10 <lambdabot> abjure
03:05:10 <lambdabot> v 1: formally reject or disavow a formerly held belief, usually
03:05:10 <lambdabot> under pressure; "He retracted his earlier statements about
03:05:10 <lambdabot> his religion"; "She abjured her beliefs" [syn: {abjure},
03:05:11 <lambdabot> {recant}, {forswear}, {retract}, {resile}]
03:05:31 <Bike> That's, like. How do you do that typically?
03:05:37 <Bike> I want "abjurer" on business cards now
03:05:50 <shachaf> @wn abjuration
03:05:50 <lambdabot> *** "abjuration" wn "WordNet (r) 3.0 (2006)"
03:05:51 <lambdabot> abjuration
03:05:51 <lambdabot> n 1: a disavowal or taking back of a previous assertion [syn:
03:05:51 <lambdabot> {retraction}, {abjuration}, {recantation}]
03:33:39 <kmc> "California man says he can drive in carpool lane with corporation papers"
03:33:44 <kmc> because corporations are people!
03:33:53 <kmc> this is masterful law-trolling
03:34:36 <Bike> is that in court yet?
03:34:59 <coppro> kmc: hahahahahahahahaha
03:35:31 <shachaf> Corporations are people, but corporation papers aren't corporations.
03:52:36 <kmc> then maybe bodies aren't people
03:54:37 <shachaf> Yes, but your soul is in your body.
03:55:09 <zzo38> Your soul is not a physical object though; how can it have a physical location?
03:55:17 -!- monqy has quit (Quit: hello).
03:55:28 <Bike> if they get a medieval theologian in court i will be appeased
03:57:26 -!- myndzi\ has joined.
04:05:04 <zzo38> But I also do not think whether your soul is a physical object is relevant to the case, anyways.
04:38:47 <zzo38> Someone once told me what they thought Canadian chess was, which was that the bishops are replaced by beavers, and that the king can use the gun, but only if he has a license.
04:41:10 -!- TeruFSX has quit (Ping timeout: 260 seconds).
04:44:09 -!- TeruFSX has joined.
05:06:50 -!- TeruFSX has quit (Ping timeout: 246 seconds).
05:07:39 -!- Nisstyre has quit (Remote host closed the connection).
05:14:13 -!- DH____ has joined.
05:15:47 -!- DHeadshot has quit (Ping timeout: 248 seconds).
05:17:25 -!- monqy has joined.
05:40:56 <Sgeo> I should really grab all my college stuff off their servers
05:41:43 <oerjan> then do so.
05:45:54 <kmc> zzo38: how far does the king shoot?
05:56:01 -!- WeThePeople has quit (Quit: Leaving).
06:03:11 <zzo38> kmc: I don't know. Someone just said these things; not the details.
06:03:47 <shachaf> zzo38: Does the king need a license in American chess?
06:05:23 <zzo38> shachaf: I know how to play the actual games called Canadian chess and American chess, and in neither game can the king shoot (American chess doesn't have a king). And it also isn't what those other people suggested to me.
06:05:45 -!- oklofok has joined.
06:06:08 <shachaf> What about Finnish chess?
06:06:37 <zzo38> I don't know that one.
06:07:19 <zzo38> They don't seem to have that one.
06:07:39 <zzo38> You can make up a variant called "Finnish chess" if you want to.
06:08:03 <shachaf> zzo38: Does the king have a gun?
06:09:12 <zzo38> shachaf: I think in some variants there is the king having a gun.
06:09:26 <zzo38> http://www.chessvariants.org/difftaking.dir/kingwithshotgun.html
06:10:24 <shachaf> zzo38: Is there a variant where you can take the king?
06:10:58 <zzo38> http://www.chessvariants.org/usualeq.dir/ktkprobl.html
06:11:28 <quintopia> zzo38: the canadian chess thing was just a joke, you know. the author knew that no such thing existed.
06:12:17 <zzo38> quintopia: Yes, I am sure you are correct; they were just suggesting a game like that, because I told them about Canadian chess, and they didn't know the actual Canadian chess game.
06:12:34 <Bike> what's actual canadian chess like?
06:12:41 -!- asiekierka_ has joined.
06:13:11 <zzo38> If you capture opponent's pieces, you have to place it on a vacant square as part of your turn. The color and kind of piece remains the same.
06:13:45 <quintopia> wow that sounds really difficult
06:14:07 <quintopia> i doubt a computer could play that one very well
06:14:20 <quintopia> it has a branching factor higher than arimaa
06:14:49 -!- DH____ has quit (*.net *.split).
06:14:49 -!- asiekierka has quit (*.net *.split).
06:14:49 -!- fungot has quit (*.net *.split).
06:14:49 -!- oklopol has quit (*.net *.split).
06:14:49 -!- Sgeo has quit (*.net *.split).
06:15:54 <quintopia> i once invented a game on a chessboard
06:17:40 <quintopia> iirc, if the queen got captured, it could swap with any other piece to be captured in its place
06:19:38 <quintopia> but i think an interesting variant would be: if a piece is captured and its starting square is open, it returns there instead. perhaps you would have to label all the pieces to remember where they started
06:20:10 <quintopia> zzo38: have you ever played bughouse
06:20:46 -!- Sgeo has joined.
06:22:32 -!- Nisstyre has joined.
06:22:46 -!- Nisstyre has quit (Changing host).
06:22:47 -!- Nisstyre has joined.
06:32:06 <zzo38> quintopia: I have played bughouse on computer once, I think, against the computer. I forget if I win or lose though
06:32:35 <zzo38> I think the variant where pieces return to their starting square if it is vacant, is exist too, and is called Circe.
06:32:52 <quintopia> zzo38: do you label the pieces
06:33:33 <zzo38> http://www.chessvariants.org/difftaking.dir/circe.html
06:33:57 -!- Sgeo_ has joined.
06:34:02 -!- Sgeo has quit (Ping timeout: 248 seconds).
06:34:21 <zzo38> It is possible to label the pieces (I believe if you label the pieces it is called "heraldic"), but it is different to how Circe is played.
06:34:57 -!- oerjan has quit (Quit: leaving).
06:35:44 <Bike> what, normally you just have to remember?
06:37:18 <zzo38> Bike: No; in Circe, a rook/knight/bishop is placed on a square of the same color as it is currently on, and a pawn is placed on the same file it is currently on.
06:37:29 <Bike> oh, i see.
06:38:22 <zzo38> However, you could also play Heraldic Circe where they do go back to their actual starting position instead.
06:39:58 <zzo38> My brother and myself have made up many chess variants, though.
06:46:16 <kmc> what is the best one?
06:47:54 <zzo38> I don't know.
06:50:53 <zzo38> However, some of them are: http://www.chessvariants.org/index/msdisplay.php?itemid=MSblandchess http://www.chessvariants.org/index/msdisplay.php?itemid=MSlatrumcolorumc http://www.chessvariants.org/index/msdisplay.php?itemid=MS123456chess http://www.chessvariants.org/index/msdisplay.php?itemid=MS123456chess
06:51:20 <zzo38> Here is one that me and my brother have invented simultaneously: http://www.chessvariants.org/index/msdisplay.php?itemid=MSchesswithcheck
06:54:17 <Sgeo_> DrRacket freezes way too much for my comfort
06:56:14 <zzo38> This is a game that I don't know the inventor; someone who described it to me, says someone else described it to him and he does not know who invented it. But this game was not already documented, so I put it onto the computer. http://www.chessvariants.org/index/msdisplay.php?itemid=MSchesswithquant
06:58:10 <Bike> telefrag chess, eh
06:58:25 <zzo38> How do you play telefrag chess?
06:58:33 <kmc> is a telefrag where you teleport inside someone else and explode them?
06:58:39 <kmc> that was the best in unreal tournament
06:59:13 <Bike> yeah, that's a telefrag. double bishop high-falutin' action reminded me of it
06:59:21 <kmc> bishop on bishop action
06:59:36 <kmc> 123456 Chess reminds me of 123456 Pokémon
07:00:14 <zzo38> What is 123456 Pokemon?
07:00:20 <kmc> a song
07:00:21 <kmc> https://www.youtube.com/watch?v=ZlVUXLBJg14
07:02:15 <Bike> dig the outfit
07:05:10 <zzo38> I have made up a Pokemon card puzzle requiring to retreat three times. Is there a situation which requires retreating more than three times?
07:05:33 <coppro> I don't know
07:08:01 <zzo38> Sometimes even in an actual game, I have retreated twice in one turn (even if not confused), but not more than that.
07:19:35 -!- augur_ has joined.
07:22:10 -!- augur has quit (Ping timeout: 260 seconds).
07:31:45 -!- ogrom has joined.
07:49:18 <zzo38> Can you understand this Pokemon card puzzle? gopher://zzo38computer.org:70/0textfile/miscellaneous/pokemon_card/puzzle.3 http://zzo38computer.org/textfile/miscellaneous/pokemon_card/puzzle.3
07:50:10 -!- ogrom has quit (Ping timeout: 255 seconds).
08:08:37 -!- ogrom has joined.
08:22:52 <zzo38> The other ones were you have to win before your opponent's turn; this one is different.
08:33:29 -!- zzo38 has quit (Quit: sleep).
08:35:43 -!- ogrom has quit (Quit: Left).
08:37:15 -!- mig22 has joined.
08:40:49 <Sgeo_> "The Adventures of a Pythonista in Schemeland "
08:40:53 <Sgeo_> It's starting to scare me away
08:41:50 <Bike> what, schemeland?
08:43:45 -!- Bike has quit (Quit: leaving).
08:47:11 <Sgeo_> "Basically, the R6RS standard is the result of a compromise between the partisans of explicit phasing - people wanting to control in which phases names are imported - and the partisan of implicit phasing - people wanting to import names at all phases, always.
08:47:12 <Sgeo_> A compromise was reached to make unhappy both parties."
08:48:59 <monqy> r6rs the perfect scheme for adventuring
08:53:47 -!- FreeFull has quit.
09:00:04 -!- mig22 has quit (Quit: mig22).
09:29:41 -!- Taneb has joined.
09:31:56 <Taneb> I'd like to put my weight behind Underload for the next featured language
09:32:25 <Taneb> It's got one of the best articles on the wiki, and is a really interesting language
09:35:14 -!- fungot has joined.
09:35:20 <fizzie> ^ul (load)(Under)SS
09:35:21 <fungot> Underload
09:35:25 <fizzie> !
09:36:09 -!- nooga has joined.
09:55:55 -!- carado has joined.
10:09:56 -!- ogrom has joined.
10:09:56 -!- ogrom has quit (Client Quit).
10:13:19 -!- monqy has quit (Quit: hello).
10:16:11 -!- DHeadshot has joined.
10:39:25 -!- monqy has joined.
10:44:47 -!- Taneb has quit (Ping timeout: 240 seconds).
10:45:10 -!- GreyKnight has joined.
10:47:17 <GreyKnight> Sgeo_: is that the only scary bit?
10:48:46 <GreyKnight> Huh, Gregor gives two responses for CTCP TIME... and they're in different timezones...
10:50:29 <FireFly> One is probably a VPS
10:50:35 <fizzie> Let's see if that confuses even machines.
10:50:37 <fizzie> @localtime Gregor
10:50:37 <lambdabot> Local time for Gregor is Tue Jan 8 05:50:36
10:51:01 <fizzie> Probably just looked at the first one. :/
10:51:26 <GreyKnight> Yeah that's consistent with the first response I got
10:52:56 <GreyKnight> Sgeo_: the TOC of "Adventures..." seems to consist almost entirely of macro stuff
10:53:25 <GreyKnight> @localtime fungot
10:53:26 <fungot> GreyKnight: they're easy. that's why i prefer to just learn
10:54:06 <fizzie> It doesn't answer to CTCPs at all. :/
10:54:22 <fizzie> I have two VERSION replies, but just one TIME.
10:55:46 <GreyKnight> I got *four* VERSION replies from Gregor
10:56:02 <GreyKnight> Someone's playing silly-beggars
10:56:13 <lambdabot> Local time for fungot is I AM ABOVE SUCH MORTAL THINGS AS TIME
10:56:29 <GreyKnight> lambdabot: it's truth
10:56:39 <Jafet> @nixon truth
10:56:39 <lambdabot> A man who has never lost himself in a cause bigger than himself has missed one of life's mountaintop experiences. Only in losing himself does he find himself. Only then does he discover all the
10:56:40 <lambdabot> latent strengths he never knew he had and which otherwise would have remained dormant.
10:57:56 <GreyKnight> I take the Granny Weatherwax approach to finding myself
10:58:24 <GreyKnight> I just looked down and there I was!
10:58:51 <fizzie> GreyKnight: Next you'll get eight PING replies, then 16 USERINFO replies, 32 FINGER replies, and so on.
10:58:54 <Jafet> You were underneath yourself?
10:59:20 <GreyKnight> Most people have their eyes at the top
10:59:32 <Jafet> 1048576 DCC handshakes. Oh wait.
10:59:59 <GreyKnight> Only two PINGs, sadface
11:00:15 <fizzie> And on the final square of the chessbord there were 2^63 XDCC file listings.
11:05:34 <GreyKnight> (two of the version replies were xchat running on different versions of Linux, one was "bip-0.8.8", the other was "Microsoft IRC# 2013 64-bit (Windows 9 Developer Pre-Alpha Release, x64, 1.5GB RAM)"
11:05:52 <fizzie> Hey, another bip user.
11:06:17 <GreyKnight> Well, assuming *any* of those were true :-P
11:06:17 <fizzie> I have a feeling that the last one might not be 100% truthful.
11:07:19 <GreyKnight> The xchats claim to be running under different Linux kernel versions so there are more lies afoot!
11:07:25 <Fiora> Yeah, jeez. only 1.5 gigabytes of RAM?
11:07:29 <Fiora> can't be right.
11:07:42 <fizzie> GreyKnight: They would probably be running on different machines, then?
11:07:48 <fizzie> I mean, bip *is* a bouncer.
11:08:01 <GreyKnight> Fiora: If Windows 9 can run with that much I will eat my hat :-U
11:08:19 <GreyKnight> fizzie: disclaimer: I don't know what bip is or does
11:08:32 -!- mig22 has joined.
11:08:55 <fizzie> It does what IRC bouncers usually do.
11:08:56 <Jafet> xchat's VERSION prints the kernel version?
11:09:20 <fizzie> Runs as a daemon, lets you connect N clients, broadcasts the stuff to all of them.
11:09:23 <GreyKnight> fizzie: disclaimer: I don't know what IRC bouncers are or do
11:09:42 <GreyKnight> O KAY
11:09:43 <fizzie> Jafet: It's to make life of a mIRC warrior easier. You know what scripts to run.
11:09:59 <Jafet> It's the best way to prevent your nick from being taken
11:10:00 <Deewiant> Sure it's not the version it was compiled on, or something?
11:10:33 <FireFly> Pretty sure it's the one it's running on
11:10:37 <GreyKnight> [Gregor VERSION reply] xchat 2.8.8 Linux 3.1-0.slh.5-aptosid-amd64 [x86_64/800.50MHz/SMP]
11:11:00 <GreyKnight> [Gregor VERSION reply] xchat 2.8.8 Linux 3.1-5.slh.2-aptosid-amd64 [x86_64/800.50MHz/SMP]
11:11:17 <fizzie> I like the megahurtz display too.
11:11:31 <GreyKnight> It gives a MHz number there so I assume "running"
11:12:07 <GreyKnight> fizzie: "what's the most irrelevant thing we could put in a VERSION reply?"
11:12:51 -!- Taneb has joined.
11:12:55 <Jafet> You wouldn't want to chat with someone who's on a slow machine, would you?
11:13:06 <Taneb> Depends on the person
11:13:07 <GreyKnight> It's not contagious!
11:13:14 -!- Phantom_Hoover has joined.
11:13:16 <fizzie> GreyKnight: I mean, it does kind of mean you don't have to keep pasting your vpenis.sh score so often.
11:13:25 <GreyKnight> Jafet: Hertzist >:-(
11:14:34 <Jafet> When the other person is on a different frequency, the conversation is over.
11:14:51 <fizzie> Vibrational frequency.
11:14:57 <GreyKnight> So, let's review. Gregor has two xchats running three timezones apart, with a tee to tie them both together. There is also some sort of joke VERSION reply involved.
11:15:21 <FireFly> Sure, nothing wrong with that
11:15:32 <fizzie> GreyKnight: And Gregor itself is kind of a probability distribution spread all over the globe.
11:15:49 <FireFly> A year ago I'd have reported three or four VERISON replies (although no lies)
11:15:49 <Jafet> Gregor has three irc clients, two running in timesliced virtual machines, one with a joke version (clearly the one he actually uses), connected to a bouncer
11:15:53 -!- mig22 has quit (Quit: mig22).
11:15:55 <fizzie> Or maybe that was electrons.
11:16:02 <GreyKnight> I would addquote that but SOMEBODY hasn't fixed HackEgo yet
11:16:11 <FireFly> Spread over two timezones quite far apart (a US one for the VPS, and my local swedish one for my clients connected to it)
11:16:21 <Jafet> HackEgo is kind of a probability distribution
11:17:01 <fizzie> Our friend fungot here has a lying hostname.
11:17:02 <fungot> fizzie: if you enforce monospacing, it's the buzzwords.
11:17:16 <GreyKnight> Jafet: we only get two PING and TIME replies, which makes me think the joke VERSION doesn't actually correspond to a real client
11:17:18 <fizzie> It says fis@selene.zem.fi, but that's just a ssh -L -- in reality it's running on momus.zem.fi.
11:17:42 <Jafet> fungot, you vicious charlatan
11:17:43 <fungot> Jafet: ( and true more...)
11:17:45 <GreyKnight> (Or maybe Microsoft IRC# doesn't support CTCP PING/TIME)
11:18:35 <Jafet> Perhaps Gregor has turned off ping and time replies to thwart would-be assailants
11:18:42 <Jafet> The xchats are cunning decoys
11:19:05 <GreyKnight> Honeypot xchat
11:19:37 <GreyKnight> Are we doing CSI:Linux again
11:20:07 <GreyKnight> Hm for maximum acronymicity let's go with CSI:GNU:Linux
11:20:40 <fizzie> I'm technically speaking in the "CSI-speech" project.
11:21:34 <GreyKnight> wat
11:21:52 <fizzie> Or I guess they spell it "CSI-Speech", with an uppercase S, in official materials.
11:21:59 <fizzie> I don't remember what it stands for.
11:22:02 <fizzie> The I is for inversion.
11:22:14 <GreyKnight> Is that trying to translate technobabble to English
11:22:16 <GreyKnight> Oh okay
11:22:24 <GreyKnight> CSI:fizzie
11:23:26 <GreyKnight> "fizzie: like Judge Dredd, in a way"
11:24:17 <fizzie> In the way that both the strings "fizzie" and "Judge Dredd" have one or more letters "e" in them.
11:24:23 <fizzie> That's about the extent of the similarities.
11:24:48 <Jafet> > "fizzie" `intersect` "Judge Dredd"
11:24:49 <lambdabot> "e"
11:25:02 <Jafet> > "Jafet" `intersect` "Judge Dredd"
11:25:06 <lambdabot> mueval-core: Time limit exceeded
11:25:15 <Jafet> I'm too evil
11:25:22 -!- monqy has quit (Quit: hello).
11:25:47 <GreyKnight> You also both hunt down lawbreakers and sentence them
11:26:25 <Taneb> And are fictional
11:26:29 <Jafet> I find trial programs and execute them
11:27:02 <fizzie> > "fungot" `intersect` "Judge Dredd"
11:27:03 <fungot> fizzie: and libc provides for it. heck, even ( macro ( fnord this lump of rumbling orange fur decides to budge.) possibly being less than ( expt 2 23) ( last 45)) is
11:27:03 <lambdabot> "ug"
11:27:13 <fizzie> That's closer.
11:27:32 <fizzie> fungot: What are you talking about?
11:27:32 <fungot> fizzie: ms is not the
11:27:43 <Jafet> > "Judge Dredd" `intersect` "President"
11:27:45 <lambdabot> "deredd"
11:27:59 <fizzie> Vote Judge Dredd for Presidredd.
11:30:39 <GreyKnight> fungot: (defmacro (rumbling-lump-of-fur colour) ...) ?
11:30:40 <fungot> GreyKnight: as i said. fnord is fnord and you'll have to use mzscheme, which is important for my program is an emulator for mit's cadr.
11:31:18 <Jafet> ^style
11:31:19 <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
11:31:28 <GreyKnight> Oh I forgot the fnords, sorry. I didn't realise they were so important.
11:31:44 <Jafet> (thinks fungot (speak us (like this)))
11:31:45 <fungot> Jafet: i suspend to disk most of the attempts at radical open-source os projects end up as:
11:32:20 <GreyKnight> End up as: nothing. Deep.
11:32:23 <GreyKnight> (Also: sort of accurate?)
11:33:49 <Jafet> End up in a suspended state
11:33:54 <fizzie> fungot: Don't be so pessimistic. :/
11:33:55 <fungot> fizzie: i haven't understood the concept of lie isn't obvious either.) shrug
11:34:08 <fizzie> So ruthless.
11:34:22 <Jafet> fungot refuses to shield our human minds from the truth
11:34:22 <fungot> Jafet: you don't need a version of lambda that curries, and assume the program got stuck in a room definition in calling it.
11:35:15 * GreyKnight turns that one into an esolang
11:35:38 <GreyKnight> Lambda doesn't curry, and your program is stuck in a room
11:36:20 <GreyKnight> Hm switch room for IO monad and you're close to Haskell
11:46:52 -!- GreyKnight has quit (Ping timeout: 256 seconds).
11:47:27 -!- greyooze has joined.
11:48:35 -!- greyooze has changed nick to GreyKnight.
12:00:20 <GreyKnight> Is it known what sort of computing system could solve the TM-halting problem? (Other than by trivial definition)
12:00:21 <GreyKnight> I guess TwoDucks can do it
12:02:19 <GreyKnight> Feather can't AIUI since it only uses continuations to give the *appearance* of time travel
12:02:20 <GreyKnight> Whereas TwoDucks presupposes time travel capabilities and just puts them to use
12:03:19 <Fiora> real-number computers can, I think
12:05:24 <Fiora> http://en.wikipedia.org/wiki/Malament-Hogarth_spacetime This one too
12:07:50 -!- GreyKnight has quit (Ping timeout: 256 seconds).
12:24:18 <FireFly> There's also banana scheme
12:38:16 -!- asiekierka_ has changed nick to asiekierka.
12:39:15 -!- GreyKnight has joined.
12:39:58 <GreyKnight> Fiora: oh yes banana scheme
12:40:10 <GreyKnight> The M-H thing is new on me, pretty nice
12:40:13 <GreyKnight> Ta
12:43:34 <Fiora> banana scheme?
12:45:55 -!- nooga has quit (Ping timeout: 260 seconds).
12:47:05 -!- GreyKnight has quit (Ping timeout: 246 seconds).
12:47:23 <Fiora> oooh. interesting
12:50:16 <fizzie> Wow, a system with a non-UTF-8 default locale.
13:01:11 <Taneb> Well, I was wrong. That was paedophilia
13:01:28 <Taneb> Even if the younger is over 13 and it's consensual
13:02:28 <Taneb> #what I do in my spare time
13:02:42 <Taneb> #read laws
13:11:20 -!- nooga has joined.
13:27:23 -!- epicmonkey has joined.
13:33:51 -!- nooga has quit (Quit: leaving).
13:43:55 <Jafet> So, the Malement-Hogarth spacetime is notable because, if it existed, it would be cool.
13:45:43 <Jafet> Like carbon nanotube monofilament, I suppose.
13:47:06 -!- GreyKnight has joined.
13:48:02 <GreyKnight> Jafet: also like pokémon (except those don't get a WP article :-( )
13:48:30 <Phantom_Hoover> <Fiora> real-number computers can, I think
13:48:32 <Taneb> I don't think Pokemon existing would be cool
13:48:32 -!- ais523 has joined.
13:48:37 <Jafet> http://www.rarecandytreatment.com/comics/1246650/the-re-bustening/
13:48:43 <Taneb> Imagine having 6 foot tall wasps
13:48:45 <Phantom_Hoover> this is more a symptom of how terrifying the reals are than anything else
13:48:58 <Taneb> And 10 year olds being able to tame gods
13:49:09 <GreyKnight> Actually some pokémon would be nightmare fuel if they existed
13:49:19 <Phantom_Hoover> I remember seeing some drawings of realistic pokemon, they were terrifying.
13:51:02 <GreyKnight> Phantom_Hoover: totally
13:52:14 <Sgeo_> What are the reals doing that's terrifying?
13:52:24 <Sgeo_> Besides mostly being indescribable
13:53:29 <Taneb> There's so damn many of them
13:53:40 <Taneb> I tried to count them once, but I could barely even get started
13:53:51 <Phantom_Hoover> Sgeo_, that's what's terrifying man
13:54:07 <fizzie> Taneb: Did you count as many as there are integers, at least?
13:54:28 <Taneb> fizzie, yes, yes I did
13:54:37 <Taneb> I thought that would be all of them, but it wasn't
13:55:32 -!- GreyKnight has quit (Ping timeout: 252 seconds).
13:55:38 <Taneb> Not by a long way
13:55:45 <Phantom_Hoover> the rest aren't very interesting anyway
13:56:35 <Taneb> e^pi + 7 would be the least interesting number there is, were it not for the fact that it's e^pi + 7
13:57:08 <Phantom_Hoover> e^pi + 7 isn't one of the rest though
13:58:17 <Phantom_Hoover> although the only obvious way of counting to it is only counting by a very generous definition
13:59:16 <Jafet> fromGödel <$> [0..]
13:59:55 -!- GreyKnight has joined.
14:00:15 <Sgeo_> Taneb, too easy to describe to be uninteresting
14:00:23 <Taneb> Yes
14:00:27 <Phantom_Hoover> GreyKnight, is the reason you reconnect all the time because you are using crappy ireland internet
14:00:40 <GreyKnight> it's because I'm using my phone
14:00:41 <GreyKnight> (usually)
14:00:49 <GreyKnight> and it likes to randomly drop out
14:01:08 <GreyKnight> <GreyKnight> Actually some pokémon would be nightmare fuel if they existed
14:01:13 <GreyKnight> ^-- Yamask is the WORST THING
14:01:32 <GreyKnight> it is the ghost of a *person*
14:02:01 <GreyKnight> (oh and it can possess you so yeah)
14:02:19 <fizzie> GreyKnight: Perhaps you should invest in one of those bouncers. (Extra benefits: you get people analysing your CTCP replies.)
14:02:55 <Sgeo_> In case anyone ever doubted that the government is a game of nomic http://www.bloomberg.com/news/2013-01-07/why-platinum-coin-opponents-are-all-wrong.html
14:03:18 <GreyKnight> fizzie: problem, this involves effort
14:03:37 <Jafet> :effort:
14:03:59 -!- Phantom__Hoover has joined.
14:04:07 <Phantom__Hoover> Gracenotes, what about drifloon
14:04:13 <Sgeo_> (Basically: Some law about the President being able to issue commemorative coins does not have a maximum denomination. Therefore, political consequences)
14:04:15 <Phantom__Hoover> i got it as a trophy in ssbm and when i read the description i was like what the FUCK
14:06:20 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
14:06:23 <Taneb> There should be a #esoteric nomic
14:06:59 <GreyKnight> Phantom__Hoover: I'm not Gracenotes but yes that is pretty horrifying too
14:07:31 <Phantom__Hoover> Taneb, only if the language for rule specification is esoteric
14:07:34 <GreyKnight> Sgeo_: IMAO governments could only be improved by acknowledging their game nature :-)
14:08:29 <Taneb> Phantom__Hoover, English is pretty esoteric, as is Finnish
14:08:45 <GreyKnight> Taneb: all rules must be programs in any esolang. A statement (including proposals etc) by any player is valid if it is accepted by all rule-programs.
14:09:02 <Taneb> I'd vote against that rule
14:09:30 <GreyKnight> FINE do better
14:10:20 <Phantom__Hoover> GreyKnight, booooring
14:10:42 <GreyKnight> DO BETTER THEN
14:11:53 <GreyKnight> `tumbleweed
14:11:54 <Sgeo_> Must...not...be...sarcastic...
14:12:11 <Taneb> Prime-numbered rules do not apply on the first Thursday in a month
14:12:14 <Phantom__Hoover> i'm thinking some sort of formal logic with really obtuse rules
14:13:07 <Jafet> Phantom__Hoover: that's not very specific
14:13:09 <Sgeo_> I didn't eat dinner last night. I was scared of being too loud
14:13:38 <Sgeo_> Will eat dinner for breakfast
14:13:41 <Phantom__Hoover> Sgeo_, ...don't you live at home
14:14:16 <Sgeo_> I live in an apartment building. Apparently there have been complaints about noise late at night and early in the morning
14:14:18 <GreyKnight> don't most people live at home...?
14:14:49 <Taneb> Some people live at school
14:14:55 <Phantom__Hoover> not at university age
14:14:59 <elliott> some people die
14:15:01 <Taneb> Or at university
14:15:04 <Taneb> Or at work
14:15:15 <Taneb> Or 6 feet underground in a small wooden box
14:15:17 <Taneb> Well
14:15:21 <Taneb> Nobody lives there
14:15:26 <Taneb> Not for very long, at least
14:15:48 -!- WeThePeople has joined.
14:15:56 <Sgeo_> `welcome WeThePeople
14:15:57 <GreyKnight> http://www.rarecandytreatment.com/comics/1197860/whos-watching-the-watchman/ <-- more creepy pokémon
14:16:07 <GreyKnight> Gregor: we miss HackEgo ;_;
14:16:24 <Sgeo_> Oh, huh, HackEgo's gone
14:18:21 <Phantom__Hoover> rip hackego
14:18:58 <GreyKnight> nap in peace
14:27:20 <GreyKnight> laser cannons but still no flying cars: http://www.bbc.co.uk/news/technology-20944726
14:28:52 <Jafet> GreyKnight: http://www.hammacher.com/Product/11812
14:29:06 <Jafet> The reason we can't have flying cars is because we're too dumb to fly them
14:29:32 <Phantom__Hoover> http://www.bbc.co.uk/news/world-us-canada-20941355
14:29:35 <Jafet> (Descent was a secret government project to study its feasibility. The result was strongly negative. Now you know.)
14:29:44 <Phantom__Hoover> you just can't make the bbc's use of quotes up
14:30:09 <Phantom__Hoover> Jafet, descent's that thing that freespace 1 was ostensibly a sequel to, right
14:30:21 -!- Nisstyre-laptop has joined.
14:32:03 <GreyKnight> I thought Descent II was the sequel to Descent :-I
14:32:28 <Sgeo_> o.O
14:32:35 <Phantom__Hoover> there's also a descent 3 in there somewhere
14:32:43 <Sgeo_> I almost jumped for joy when googling Tremulous and it said 1.2 was almost ready
14:32:53 <Sgeo_> Than I read that it was waiting for sounds. Which it has been for years
14:33:04 <Jafet> I should make a game called Sequel
14:33:14 <Jafet> Also, that's not a very cool laser cannon
14:34:08 <Sgeo_> wat http://www.causes.com/causes/809798-convince-president-obama-to-play-tremulous
14:35:10 <Phantom__Hoover> Jafet, is http://img237.imageshack.us/img237/1188/homesick2.png a cool enough laser cannon for you
14:36:20 <Jafet> http://www.youtube.com/watch?v=FQRIjzW-kg0
14:37:28 <Phantom__Hoover> yes but that's eve
14:37:42 -!- Nisstyre-laptop has quit (Quit: Leaving).
14:52:14 <WeThePeople> hi
15:05:33 -!- DHeadshot has quit (Read error: Connection reset by peer).
15:05:52 -!- DHeadshot has joined.
15:08:28 <Sgeo_> Hi WeThePeople
15:12:19 -!- Phantom__Hoover has quit (Ping timeout: 276 seconds).
15:13:58 -!- Phantom_Hoover has joined.
15:27:26 -!- hagb4rd has joined.
15:32:27 <FireFly> @tell zzo38 (re. puzzle.1) You only need two retreats I think: http://hastebin.com/wohodetece
15:32:27 <lambdabot> Consider it noted.
15:43:51 -!- azaq23 has joined.
15:44:00 -!- azaq23 has quit (Max SendQ exceeded).
15:44:35 -!- azaq23 has joined.
15:48:50 <elliott> 21:52:27: <FreeFull> oerjan: `run runs it in bash
15:48:50 <elliott> 21:52:41: <FreeFull> And if everything got deleted, it wouldn't show up, would it
15:48:59 <elliott> does he figure out how hackego's sandboxing works eventually
15:49:04 <elliott> or is reading this log going to be unending torment and agony
15:49:13 <shachaf> elliott: well HackEgo crashed
15:49:18 <shachaf> so maybe he was right?????
15:50:16 <elliott> 22:12:53: <kmc> damn this cough syrup is strong
15:50:18 <elliott> kmc: drugs
15:51:11 -!- Nisstyre has quit (Ping timeout: 260 seconds).
15:52:08 <elliott> 22:24:33: <Bike> GreyKnight: https://dl.dropbox.com/u/12780151/blackboard.png behold
15:52:12 <elliott> oh he's not here
15:53:03 <shachaf> hi Phantom__Bike
15:54:20 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
15:54:35 <elliott> 23:08:50: <kmc> i've not found this to be a major problem
15:54:35 <elliott> 23:09:10: <kmc> likewise I am able to mentally switch between keyboard layouts
15:54:38 <elliott> 23:10:25: <kmc> people sometimes try to dissuade others from learning Dvorak on the basis that it is impossible to know two keyboard layouts
15:54:41 <elliott> 23:10:41: <kmc> but it's not true in my experience, or in the experience of millions of bilingual computer users
15:54:44 <elliott> kmc: Doesn't this contradict your argument against Colemak?
15:56:26 -!- Phantom_Hoover has joined.
15:56:36 <elliott> `addquote <hagb4rd> what is this set? sounds like shakespear <fizzie> Yes, that's what people often say about Chrono Trigger.
15:57:23 <shachaf> `quoerjan
15:57:29 <shachaf> Oh.
15:57:37 <shachaf> elliott: The bot's not here.
15:57:49 <shachaf> I guess oerjan (helloerjan!) will logread this later and add quotes?
15:58:22 <Jafet> But how can he paste the logs without HackEgo?
15:58:28 <Jafet> Checkmate.
15:59:19 <Taneb> `style
15:59:23 <Taneb> ^style
15:59:23 <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
15:59:28 <Taneb> Bah, I'm tired
15:59:36 <Taneb> ^style jargon
15:59:36 <fungot> Selected style: jargon (UNIX-HATERS mailing list archive)
15:59:37 <FireFly> Checkmate, fungot.
15:59:37 <fungot> FireFly: for file in my code. i'm certain that everyone overlooks is that
16:00:11 <shachaf> ^style
16:00:12 <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
16:00:17 <shachaf> Oh.
16:00:22 <shachaf> ^style sms
16:00:22 <fungot> Selected style: sms (National University of Singapore SMS corpus, 2011-08-20)
16:00:25 <shachaf> fungot
16:00:26 <fungot> shachaf: can also but lunch will only b ready at 1 smth 2... u hungry? does it make your belly? how goes it loverboy. i hope they don't turn my phone off by then. before you created one like you suggested to me about the irrational. just like that! life is nt abt rs coffee at ccd,bt many frenz but they dunno u la?mama? i dun understand wat is it trying to talk back
16:00:39 <shachaf> it makes my belly, fungot.
16:00:39 <fungot> shachaf: near room wait
16:00:40 <Sgeo_> (new-∀/c name)
16:00:46 <Sgeo_> What a conveniently named function
16:00:56 <shachaf> What's wrong with it?
16:01:03 <Sgeo_> It's annoying to type
16:01:12 <shachaf> Why?
16:01:21 -!- Arc_Koen has joined.
16:01:40 <FireFly> Add ∀ to your keyboard layout then
16:02:05 * FireFly has it on altgr+shift+å (å being on the qwerty position for q)
16:02:26 * shachaf has it on Ctrl-Shift-U 2200 Space
16:02:56 * FireFly would appreciate a unicode-codepoint-entering mode that completes
16:02:58 <FireFly> argh.
16:03:05 <FireFly> that completes character names for you*
16:03:18 <shachaf> agda-mode?
16:03:24 <FireFly> C-S-u delta<Tab><Tab><CR>
16:03:35 <FireFly> I haven't used agda-mode, so I wouldn't know
16:06:01 <FireFly> http://wiki.portal.chalmers.se/agda/pmwiki.php?n=Docs.EmacsModeKeyCombinations ← this doesn't seem related to unicode input
16:09:54 -!- nooodl has joined.
16:34:35 -!- azaq23 has quit (Max SendQ exceeded).
16:38:33 <SirCmpwn> https://github.com/SirCmpwn/bf-irc-bot/pull/1
16:45:05 -!- carado has quit (Ping timeout: 246 seconds).
16:54:20 -!- Nisstyre has joined.
16:54:48 * hagb4rd pings Gregor
16:55:13 <hagb4rd> hello? are you here?
16:56:11 <hagb4rd> @ask gregor could you please check what happened to HackEgo?
16:56:11 <lambdabot> Consider it noted.
16:58:04 <hagb4rd> is gregor the only one who has access to that ominous sandbox?
17:00:34 <hagb4rd> open the gates! you evil scoundrel
17:03:04 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
17:14:14 -!- ogrom has joined.
17:16:04 -!- ogrom has quit (Client Quit).
17:16:19 <FireFly> SirCmpwn: oh, you've found your way here
17:16:28 <SirCmpwn> I am everywhere, FireFly
17:16:34 <FireFly> I presume you've seen fungot's source, then
17:16:34 <fungot> FireFly: same to me. leogoh sounds to me that u don't care enough to stop me... i ll seeyou! nomnomnom!then studying. anyways i vil nt so met some hadsome boys. i even told mark in my dream
17:16:59 <Taneb> FireFly, the migration from #0x10c-dev to here is mostly my fault, I'm afraid
17:17:12 <FireFly> Shrug, I don't care much :p
17:17:38 <shachaf> Ugh.
17:17:47 <shachaf> Taneb: You mentioned #esoteric in that channel?
17:17:54 <Taneb> Yes
17:18:05 <Taneb> Specifically, HackEgo's quote feature
17:28:25 <SirCmpwn> FireFly: nope
17:28:28 <SirCmpwn> FireFly: link it
17:28:34 <SirCmpwn> fungot: source
17:28:35 <fungot> SirCmpwn: shal i tel u dat problem! happy vinayaka nagar.. get it from me) has to leave not long ago? but it's up...
17:28:42 <SirCmpwn> :|
17:28:47 <FireFly> `source
17:28:48 <shachaf> ^style
17:28:48 <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
17:28:51 <FireFly> ^source
17:28:52 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
17:28:53 <shachaf> ^style pa
17:28:54 <fungot> Selected style: pa (around 1200 transcribed Penny Arcade comics)
17:29:00 <shachaf> Ugh.
17:29:02 <shachaf> ^style iwcs
17:29:02 <fungot> Selected style: iwcs (Irregular Webcomic scripts)
17:29:10 <shachaf> ^style alice
17:29:11 <fungot> Selected style: alice (Books by Lewis Carroll)
17:29:24 <FireFly> Considering its functionality, and it seeing daily usage, it's fairly impressive I think
17:29:42 <FireFly> (okay, really impressive)
17:29:52 <kmc> shachaf: you don't like penny arcade?
17:30:00 <SirCmpwn> is that befunge
17:30:04 <FireFly> Yes
17:30:13 <shachaf> kmc: Not especially, but then I haven't read much of it.
17:30:18 <shachaf> Maybe it's good if you read it.
17:30:21 <SirCmpwn> that's interesting
17:30:40 <SirCmpwn> is befunge difficult to code in (i.e. does it have good scemantics and such) or is it just a novelty because it's a grid
17:30:52 * kmc interprets that sentence two ways
17:31:05 -!- AnotherTest has joined.
17:31:36 <kmc> i think it's hit kind of a slump recently
17:31:38 <kmc> but it's pretty good overall
17:31:58 <FireFly> Well, it's certainly less difficult than brainfuck in the sense that.. it has "higher-level" commands, so to speak
17:32:01 <shachaf> I didn't mean you as in you.
17:32:09 <shachaf> I mean, maybe if one reads more of the comic, one finds it to be good.
17:32:26 <kmc> sure
17:32:30 <kmc> i figured that's what you meant
17:32:50 <FireFly> But I guess it has its own set of difficulties, what with using fungespace for both code and storage
17:33:20 <kmc> those guys are now doing approximately a billion things besides the comic
17:35:26 <kmc> they started a major charitable organization and a few gigantic gaming conventions
17:36:32 <kmc> and they've filmed a reality-TV-style "america's next webcomic artist" show called "Strip Search"
17:38:54 <kmc> also Paramount Pictures is making an animated film based on a single PA strip
17:39:12 <Fiora> Phantom_Hoover: I remember there was some thing where if you had an oracle that gave you the Nth digit of Chaitin's constant for your machine, you'd have a halting solver
17:39:18 <elliott> I'm glad you added "Pictures" there. Otherwise I'd be confused.
17:39:30 <elliott> Fiora: yeah, that's pretty much the definition of chaitin's number in fact
17:39:47 <Phantom_Hoover> same applies for a machine that tells you if an arbitrary diophantine is solvable
17:39:55 <elliott> Phantom_Hoover: that's a lot more magical though.
17:40:10 <elliott> As in, an oracle that just gives you some digits seems like a lot less to ask.
17:40:32 <kmc> i don't think anyone has done better than penny arcade in terms of turning a webcomic into a major business venture in several domains
17:40:40 <Fiora> Homestuck? :p
17:40:47 -!- FreeFull has joined.
17:40:55 <Phantom_Hoover> the thing that really boggles me is that the computable reals are uncomputably countable
17:40:56 <kmc> i... don't know anything about homestuck
17:41:13 <elliott> Phantom_Hoover: That's not so weird.
17:41:19 <Phantom_Hoover> oh and also there's the thing where you can have a function that grows slower than any computable function
17:41:25 <elliott> That one is weird.
17:41:25 <FreeFull> kmc: Is a webcomic
17:41:29 <elliott> Obvious but weird.
17:41:48 <FreeFull> It only has one panel per page
17:41:58 <kmc> slower than any strictly increasing computable function?
17:41:59 <Taneb> Homestuck really only has webcomic, shirts, books, and upcoming video game
17:42:10 <Taneb> Not as wide as Penny Arcade
17:42:13 <FreeFull> Phantom_Hoover: Is it uncomputable because it would take forever?
17:42:16 <elliott> Phantom_Hoover: have you seen http://r6research.livejournal.com/19619.html
17:42:18 <Taneb> And probably not as deep either
17:42:20 <kmc> yeah, plenty of webcomics sell swag
17:42:40 <kmc> that is the standard way to monetize a webcomic and a fair number of people have done ok with it
17:42:55 <elliott> Phantom_Hoover: really he thing is that all e.g. types in Coq look countable to us
17:42:59 <Phantom_Hoover> FreeFull, ok so basically it's not so hard to demonstrate that there are functions which grow faster than any computable function
17:43:01 <Taneb> Not many that had a 2.5 million dollar kickstarter to fund a video game
17:43:03 <elliott> because the set of expressions is countable
17:43:06 <kmc> that's cool
17:43:35 <Taneb> Which is going to be ridiculous simply because of the complexity of Homestuck
17:43:39 <FreeFull> Phantom_Hoover: I think there are more of those than there are computable functions
17:43:57 <Phantom_Hoover> obviously
17:44:16 <shachaf> Ugh, plane ticket prices have gone up.
17:44:24 <kmc> what kind?
17:44:34 <Taneb> Adventure game
17:44:40 <Phantom_Hoover> <kmc> maybe you should take a TRAIN
17:44:45 <Taneb> I've got no idea if anyone's talking to me
17:44:48 <Taneb> kmc might be
17:44:50 <Taneb> I'm not sure
17:44:51 <kmc> heh
17:44:57 <FreeFull> The fantroll that someone paid for doesn't seem to have appeared yet
17:45:03 <kmc> Taneb: i meant that the kickstarter is cool
17:45:14 <kmc> sadly "take the train instead" is not a reasonable option for most air routes in the USA
17:45:25 <Taneb> FreeFull, there's still a few months of Homestuck left
17:45:31 <FreeFull> Aren't trains in the USA expensive and slow?
17:45:38 <kmc> unless you quite enjoy the experience of sitting on a train for n+1 hours
17:45:45 <kmc> FreeFull: yes
17:46:11 <FreeFull> kmc: Imagine if Japan went over and did your trains for you
17:46:12 <FreeFull> Zoooom
17:46:14 <shachaf> I would take a train, except for that.
17:46:19 <kmc> yeah
17:46:25 <kmc> but we can't have that because BUY AMERICAN
17:46:35 <kmc> plus construction costs like 10x as much in america for no clear reason
17:46:38 <kmc> literally 10x in some cases
17:47:44 <kmc> the second avenue subway is going to cost $1,700,000,000 per kilometer
17:48:01 <kmc> which yes is about 10 times what it costs to build a subway in singapore or tokyo
17:48:10 <shachaf> That's a lot of money.
17:48:38 <kmc> i have taken the train+bus between LA and SF a few times and it's... okay
17:48:47 <kmc> one day in the far future there will be proper high speed rail on this route
17:48:50 <Taneb> The kickstarter video for the Homestuck game is probably the best rapid intro to Homestuck out there
17:48:52 <elliott> if I had a nickel for every nickel they're going to spend on the second avenue subway I'd have a lot of nickels
17:49:00 <kmc> indeed
17:49:00 -!- copumpkin has quit (Ping timeout: 252 seconds).
17:49:16 <elliott> if I had a nickel for every damn dime I'd have half the time
17:49:17 <Taneb> If I had a nickel for every nickel they're going to spend on that I have no idea what a nickel actually is
17:49:30 -!- copumpkin has joined.
17:49:31 <FreeFull> I imagine if the USA had good maglev trains, people would use them rather than go through the trouble of boarding a plane
17:49:48 <kmc> you don't need maglev
17:49:59 <kmc> there is only one passenger maglev in revenue service in the world
17:50:01 <quintopia> if i had a nickle for every nickel, i'd have holes in the floors grimed in a heap of birdshit
17:50:03 <elliott> Taneb: it's a kind of meltametal
17:50:07 <elliott> stupid mosh
17:50:12 <kmc> conventional rail can run plenty fast and has a lot of advantages
17:51:01 <Taneb> elliott, you live within 5 miles of the birthplace of the person to open the first commercial rail line!
17:51:25 <Phantom_Hoover> what if he actually lives in a shack a few miles from hexham
17:51:26 <Taneb> By 5 I mean 15
17:51:26 <kmc> in fact the record conventional rail speed is only like 6 km/hr less than the record maglev speed
17:51:38 <elliott> kmc: yes but maglev is cooler...
17:51:45 <kmc> oh
17:51:50 <kmc> well let's build a maglev then
17:51:50 <quintopia> elliott: only if you bother to supercool it
17:52:03 <quintopia> which is not cost-effective really
17:52:13 <Taneb> quintopia, just build it in Alaska
17:52:15 <Taneb> Problem solved
17:52:39 <quintopia> but alaska gets into the 60s in summer. also...who would ride it?
17:52:50 <kmc> FreeFull: it's also possible that if people started to use rail transit in great numbers, the TSA would assert their (legally already existing right) to install airport-style security at train stations
17:52:50 <quintopia> i guess it could carry people over the bridge to nowhere
17:52:57 <Taneb> Russians trying to get to Canada
17:53:04 <FreeFull> kmc: Ouch
17:53:22 <kmc> maglev bridge across the bering strait!
17:54:02 <elliott> kmc: do the TSA actually have a reason to do that?
17:54:11 <kmc> self preservation
17:54:17 <Taneb> Cash?
17:54:37 <kmc> yes salaries for themselves and cash for their contractor buddies
17:54:42 <FreeFull> http://projecteuler.net/problem=81 Help, I'm finding myself writing a whole matrix manipulation library
17:54:48 <elliott> well, people are going to use airports even if trains exist
17:55:02 <FreeFull> Actually, I guess it'll be useful for other matrix problems
17:56:17 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
17:57:36 <Taneb> I've taken a plane down to London a couple of times
17:58:36 <quintopia> i've taken a plane down in london
17:58:47 <quintopia> with my anti-aircraft gun nest
17:58:52 <shachaf> Taneb: have you considered taking a plane to new york
17:58:54 <FireFly> I've taken a plane to London too
17:58:58 <quintopia> just a matter of time before they find it
17:59:02 <Taneb> shachaf, nah, I'd get the train to there
17:59:04 <FireFly> It's a bit too far to swim, I think
17:59:54 <kmc> flying to new york city is a huge pain
18:00:17 <quintopia> flying is the only way to travel
18:00:31 <elliott> kmc: because your arms get tired?
18:00:34 <shachaf> kmc: Why?
18:00:46 <kmc> elliott: yes
18:00:50 <Taneb> I read somewhere that at one point the Empire State Building was going to have a airship port at the top
18:00:57 <kmc> shachaf: because the airports are in the middle of nowhere
18:01:02 -!- Phantom_Hoover has joined.
18:01:05 <GreyKnight> I just flew here from a Calabi-Yau manifold, and boy are my arms toroid!
18:01:18 <kmc> LGA isn't really in the middle of nowhere but it has no direct rail connection
18:01:21 <kmc> GreyKnight: hahahaha
18:01:31 <Taneb> Heathrow airport is in the middle of nowhere, but London's big enough that that counts as in London
18:01:40 -!- kmc has set topic: <GreyKnight> I just flew here from a Calabi-Yau manifold, and boy are my arms toroid! | http://codu.org/logs/_esoteric/.
18:02:06 <kmc> Taneb: sure, and bumblefuck queens counts as nyc, but it's still an annoying distance from the manhattan central business districts
18:02:27 <Taneb> I've never been to NYC, I wouldn't know
18:02:32 <kmc> heathrow is also kind of a pain but at least there are tube stations under the airport on lines that go directly into the city
18:02:37 <Taneb> I've only used two US airports
18:02:42 <kmc> (ok, one line, but still)
18:02:47 <Taneb> And I was too young to remember either
18:03:02 <FireFly> Eh, I flew to Newark and I didn't mind the distance from the city-center
18:03:05 <Taneb> Denver and one in California
18:03:27 <kmc> the transit situation from newark is a real pain
18:03:32 <Taneb> Hang on
18:03:39 <Taneb> Even Newcastle Airport is on the metro
18:04:46 <kmc> from newark you have to take the airport train to a New Jersey Transit commuter train station and take that into Manhattan, or take it to Newark Penn Station and get onto the PATH subway into Manhattan
18:05:01 <kmc> of course commuter trains are not as frequent as subway, and more expensive too
18:05:08 <kmc> and there's an extra charge for the airport train
18:05:18 <kmc> or you can take a Newark city bus and try not to get stabbed
18:05:33 <kmc> or you can take a privately run shuttle bus direct to manhattan which is honestly probably the best option
18:05:41 <kmc> if you are not tremendously cheap like myself and my friends
18:05:50 <FireFly> Yeah, that's what we did (take a shuttle bus, I mean)
18:05:50 <Taneb> Annoyingly, the Metro Centre is not the Centre of the Metro
18:05:56 <kmc> heh
18:06:00 <FireFly> They dropped us off by grand central
18:06:01 <shachaf> The bus is ~$15, right?
18:06:06 <kmc> sounds about right
18:06:08 <FireFly> I think so
18:06:10 <Taneb> That's be Monument
18:06:56 <Taneb> The only point on the Metro on three lines
18:07:03 <Taneb> Even though the Metro only has two lines?
18:07:08 <Taneb> It's on one line twice
18:07:50 <kmc> Boston has one of the better airport transit connections in the US
18:08:24 <kmc> there's a bus at the airport which turns into a fake train and takes you downtown, at which point you can transfer to the subway that goes to MIT and Harvard etc
18:08:33 <kmc> and it's all pretty close together and quick
18:09:28 <kmc> also "Calabi-Yau manifold" sounds like something the starship enterprise would get sucked into
18:09:50 <Taneb> Divert all power to rear thrusters!
18:10:04 <Taneb> It's no good, cap'n! We're manifoldin'!
18:11:50 <mroman> If I have some bunch of sets. And I the amount of elements in every set and the amount of elements in all possible intersection. Can I determine the amount of elements in the union of all sets?
18:12:16 <kmc> yes
18:12:21 <mroman> i.e I know |a|,|b|,|c| and I know |a n b|,|a n c|,|b n c|
18:12:22 <kmc> that's inclusion-exclusion principle
18:12:37 <shachaf> Looks like the Bronx is much more awkward to get to for everyone.
18:12:45 <kmc> yes
18:12:53 <elliott> isn't it just |a|+|b|+|c|-|a n b|-|a n c|-|b n c|...
18:12:57 <elliott> oh, I guess not
18:13:01 <kmc> http://upload.wikimedia.org/wikipedia/commons/3/3d/Inclusion-exclusion-3sets.png
18:13:07 <mroman> ok. so.
18:13:08 <elliott> right
18:13:12 <mroman> Neat.
18:13:38 <mroman> Given now that I have the corresponding truthtable of a knf boolean formula
18:13:44 <mroman> *cnf
18:15:09 <mroman> Like (a v c) ^ (!a v b) ^(b v c) would result in a truthtable with the entries {0x0,10x,x00}
18:15:35 <mroman> and every entry in that truthtable is actually a set of entries
18:15:49 <mroman> 0x0 would expand to 2 elements in that set 010 and 000
18:16:07 <mroman> Essentially I can calculate all the intersections in these sets.
18:16:48 <FreeFull> Now implement this as a data type
18:17:20 <mroman> e.g 0x0 and x00 would have the intersection 000
18:17:56 <mroman> and if everything works out
18:18:13 <mroman> I can calculate the amount of elements in the union of all these sets.
18:18:32 <mroman> probably.
18:23:38 <FreeFull> What is the union of 0x0 and x00?
18:23:54 <mroman> which would predict how many entries in the truth-table can not be solutions
18:24:09 <FreeFull> 000 010 100 110 ?
18:24:22 <FreeFull> Wait
18:24:27 <FreeFull> 110 wouldn't be there
18:24:37 <FreeFull> So just the first three
18:24:44 <mroman> 000, 010, 100
18:24:58 <FreeFull> The x gets lost
18:26:14 <kmc> so the size of each set is two to the number of x's
18:26:22 <mroman> exactly.
18:28:12 <kmc> and you can intersect two patterns... xx=x, x0=0, x1=1, 00=0, 11=1, 01 = 10 = whole set is empty
18:28:29 <kmc> nice trick :)
18:33:02 <mroman> well
18:33:15 <mroman> if the distance is zero, then there is no intersection yes.
18:33:38 <mroman> eh
18:33:40 <mroman> if it is not zero
18:34:01 <mroman> also
18:34:18 <mroman> if such a pattern has the distance two to every other pattern
18:34:30 <mroman> then a neighbouring pattern is a trivial solution for that cnf term.
18:37:27 <mroman> i.e {x00,00x,111}
18:37:47 <mroman> 111 has distance d = 2 two every other pattern
18:37:59 <mroman> therefore every pattern with d = 1 to 111 is a solution.
18:38:03 -!- c00kiemon5ter has joined.
18:41:11 <mroman> but that's probably never the case :)
18:41:43 <mroman> anyway it should be fairly quick to state if a cnf term has a solution or not
18:42:26 <mroman> however, findig that solution is not.
18:43:20 <mroman> because you can only state how big the set of non-solutions is.
18:43:54 <mroman> and therefore you also know the size of the set of solutions but you have no clue about what that set contains :)
18:46:35 <mroman> at least that's what my brain suggests me.
18:49:22 <GreyKnight> The intersection is cookies
18:49:25 -!- GreyKnight has quit (Quit: -->).
18:49:28 -!- Taneb has quit (Quit: Leaving).
18:50:19 <c00kiemon5ter> >:3
18:50:23 * c00kiemon5ter omnomnomnomnomnm
18:53:51 <quintopia> ahhhhhh
18:54:24 <FireFly> Don't eat the intersections!
18:55:25 <c00kiemon5ter> yummee
18:55:27 <mroman> ?
19:01:27 <Sgeo_> Huh. /r/promos is magic
19:07:38 -!- impomatic has joined.
19:16:19 -!- copumpkin has quit (Ping timeout: 248 seconds).
19:16:59 -!- copumpkin has joined.
19:23:35 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
19:24:25 -!- c00kiemon5ter has joined.
19:31:32 -!- Taneb has joined.
19:33:09 -!- Nisstyre has quit (Ping timeout: 248 seconds).
19:43:30 -!- Bike has joined.
19:56:58 -!- ogrom has joined.
19:57:08 -!- ogrom has quit (Read error: Connection reset by peer).
20:00:23 -!- AnotherTest has quit (Quit: Leaving.).
20:01:51 -!- GreyKnight has joined.
20:02:08 -!- GreyKnight has quit (Client Quit).
20:05:29 -!- GreyKnight has joined.
20:12:34 <GreyKnight> I just idly checked, and in fact simple-wikipedia *does* have an article on Calabi-Yau manifolds: http://simple.wikipedia.org/wiki/Calabi-Yau_manifold
20:12:40 <GreyKnight> Now I have a happy.
20:13:08 <Taneb> It links to "small" in the first line
20:13:12 <Taneb> I have a happy too
20:13:26 <Taneb> "But wait. These tiny parts are also interesting. Why?"
20:14:02 <olsner> I have read that article before, it has been there for quite some time
20:14:08 <GreyKnight> "That IS small."
20:14:40 <Lumpio-> >The English used in this article may not be easy for everybody to understand.
20:15:07 <olsner> oh, it was on the simple english wikipedia
20:15:09 <GreyKnight> I think "simplifying" the language used further would only make matters worse
20:15:26 <GreyKnight> olsner: thatsthejoke.gif
20:16:42 <olsner> thatsthejoke.youtube
20:16:56 <olsner> it's better with sound
20:17:52 <GreyKnight> oh hey there's a talkpage, this outta be good
20:17:57 <Phantom_Hoover> GreyKnight, the metaphors man
20:18:01 <Phantom_Hoover> i don't think i can handle
20:18:04 <Phantom_Hoover> all these metaphors
20:18:52 <GreyKnight> A metaphor is a lot like a beautiful woman.
20:19:28 -!- GreyKnight has quit (Quit: brb train).
20:19:49 <Phantom_Hoover> we will never know how
20:19:58 <Taneb> ...that's a simile
20:20:39 <Phantom_Hoover> similes are just metaphors anyway
20:20:44 <olsner> is simple english required on the talk pages too?
20:21:47 <Taneb> Who knows
20:22:06 <olsner> not me
20:23:37 -!- oerjan has joined.
20:23:54 -!- oerjan has quit (Client Quit).
20:25:37 -!- GreyKnight has joined.
20:25:55 <GreyKnight> and then you go to the en-wikipedia version and it's a ~whole new world~
20:27:08 <Taneb> http://la.wikipedia.org/wiki/Spatium_Calabi-Yau
20:27:37 <Bike> superchordarum
20:27:39 <GreyKnight> FINE a metaphor IS a beautiful woman HAPPY???
20:27:56 <GreyKnight> "Multiplex Calabi-Yau in cultura populare" :-D
20:28:01 <GreyKnight> I have several happies.
20:28:08 <Bike> right, of course the pop culture section is longest.
20:28:11 <Lumpio-> Why does half of the Latin article consist of "in popular culture"
20:28:12 <Lumpio-> wat
20:28:47 <GreyKnight> Calabi-Yau est nomen navis interstellaris quam Jetfire et grex technobotorum navigant in Transformariorum libello Stormbringer, ab IDW Publishing edito.
20:29:07 <GreyKnight> >>Transformariorum<<
20:29:29 <Taneb> Genitive plurul of transformarium?
20:29:40 <Taneb> of the transformations
20:30:01 <GreyKnight> I'm disappointed there's no actual la-wikipedia article for the Transformers
20:30:19 <GreyKnight> Taneb: not "transformations", these guys: http://en.wikipedia.org/wiki/Transformers
20:30:29 <Taneb> Oooh
20:30:42 <GreyKnight> "technobotorum"
20:30:55 <Taneb> yesssss
20:32:03 <Taneb> Transformaria: roboti incogniti
20:33:48 -!- sebbu2 has joined.
20:34:06 -!- sebbu2 has quit (Changing host).
20:34:06 -!- sebbu2 has joined.
20:35:04 -!- sebbu has quit (Ping timeout: 256 seconds).
20:38:10 <GreyKnight> ais523: I had something I wanted to say to you earlier, but then I forgot it. So this is a pointless comment.
20:38:28 <Sgeo_> elliott, tswett Fiora Phantom_Hoover http://movies.yahoo.com/news/homestuck-movie-comedy-inevitable-unless-not-board-unless-193000232.html
20:38:34 <Sgeo_> Taneb
20:38:46 <Taneb> Saw it
20:39:46 <GreyKnight> "you either don't kids"
20:39:51 <GreyKnight> I don't kids personally.
20:39:57 <Sgeo_> I don't mean to be mean to zzo38, but "But it could become a movie. Unless it can't." is a very zzo38 thing to say
20:40:04 <ais523> it is
20:40:14 <ais523> although zzo38 wouldn't put it quite like that
20:40:30 <Phantom_Hoover> Sgeo_, how can you be mean to zzo
20:40:58 <Phantom_Hoover> he is above and transcendant to us, he cares not for our petty insults
20:41:14 <Taneb> So does insulting him matter, if he cares not about them
20:42:19 <Phantom_Hoover> no
20:46:48 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
20:46:58 <GreyKnight> > let q = fix (\f x -> [x]:(f x)) in (q 1)
20:47:00 <lambdabot> [[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1],[1...
20:47:00 -!- oerjan has joined.
20:47:02 -!- c00kiemon5ter has joined.
20:47:24 -!- GreyKnight has quit (Quit: brb switching trains).
20:48:22 <Taneb> > fix ((Control.Applicative.<**>) . seq) (*) 8
20:48:24 <lambdabot> 64
20:48:36 <oerjan> 15:48:59: <elliott> does he figure out how hackego's sandboxing works eventually
20:48:39 <oerjan> the latter.
20:48:41 <oerjan> 15:49:04: <elliott> or is reading this log going to be unending torment and agony
20:48:57 <oerjan> or well, it gets cut short by HackEgo crashing.
20:49:24 <ais523> how was he trying to break out?
20:49:25 <oerjan> :t (<**>)
20:49:26 <lambdabot> Ambiguous occurrence `<**>'
20:49:27 <lambdabot> It could refer to either `Control.Applicative.<**>',
20:49:27 <lambdabot> imported from `Control.Applicative' at State/L.hs:4:1-26
20:49:44 * oerjan swats lambdabot -----###
20:50:02 <Taneb> It's flip (<**>)
20:50:13 <Taneb> *(<*>)
20:50:22 <oerjan> i know what it is, i was wondering why the heck you had to add the module
20:51:12 <Taneb> :t acceptSession
20:51:13 <lambdabot> Not in scope: `acceptSession'
20:51:20 <oerjan> ais523: he was just hallucinating his rm -rf * working.
20:51:30 <Taneb> Not that one
20:51:46 <ais523> oerjan: what's the point of doing that when it's just trivially undoable?
20:51:56 <ais523> we don't really even need the canary, it's just there for trolling
20:52:00 <ais523> `cat canary
20:52:03 <oerjan> SHUSH
20:52:18 * oerjan swats ais523 for mentioning the canary
20:52:23 * ais523 dodges
20:52:25 <oerjan> * + -----###
20:53:18 -!- GreyKnight has joined.
20:54:32 <olsner> what does the canary do?
20:54:41 <GreyKnight> oerjan: you are *too slow*
20:55:03 <oerjan> GreyKnight: what now
20:55:40 <GreyKnight> ais523 was able to dodge your swat
20:55:42 <oerjan> oh. well it's hard to hit when you forget the swatter.
20:55:49 <ais523> yeah
20:55:54 <ais523> you'd probably have hit otherwise
20:56:04 <ais523> olsner: basically it's just to stop people doing rm -rf *, and has no other effect
20:56:15 <GreyKnight> What is it, though
20:56:26 <oerjan> YOU WILL HAVE TO FIND OUT FOR YOURSELF
20:56:44 <GreyKnight> WELL IF HACKEGO WAS HERE I WOULD
20:56:46 <oerjan> hint: you've already had too many hints
20:57:26 * GreyKnight guesses a file with tactical permissions set
20:57:38 <oerjan> WRONG
20:57:39 -!- sebbu2 has changed nick to sebbu.
20:57:40 <ais523> GreyKnight: even stronger hint: HackEgo has a revert command, and enough intelligence to know when to use it
20:58:08 <GreyKnight> Oh, he auto-reverts if the canary is removed
20:58:21 <GreyKnight> Cute
20:58:24 <oerjan> YOU AND YOUR NUCLEAR HINTS
20:58:30 <elliott> It just doesn't commit, rather.
20:58:32 <Taneb> Is it atomic?
20:58:32 <Fiora> Sgeo_: that article is so badly written it almost makes me think it's trying to be sbahj-kitschy
20:58:35 <Taneb> Yes, very atomic
20:58:41 <GreyKnight> Put the nuclear hint in a space suite
20:59:00 <Sgeo_> Oh hey ∃ and ∀ are easy to type in DrRacket. \exists Alt-\ \forall Alt-\
20:59:36 -!- carado has joined.
20:59:43 <GreyKnight> Hm I wonder if there're standard compose sequences for those
21:06:34 <FreeFull> GreyKnight: No
21:06:50 <FreeFull> I grepped through compose sequences and didn't find it
21:07:43 <GreyKnight> Hmph
21:08:02 <oerjan> how can you grep for it if you cannot compose it? CHECKMATE LINUXISTS
21:08:13 <FreeFull> oerjan: Copy-paste?
21:08:17 * GreyKnight will add something to .XCompose
21:08:39 * oerjan sees FreeFull isn't into the spirit of checkmates
21:08:46 <kmc> https://groups.google.com/forum/#!topic/rubyonrails-security/61bkgvnSGTQ/discussion code execution exploit for any Rails app
21:09:06 <ais523> kmc: not /any/ Rails app? or is this a new one?
21:09:19 <FreeFull> I can also do ctrl+shift+u 2203 space
21:09:22 <FreeFull>
21:09:28 <FreeFull> But that's difficult to remember
21:09:29 <ais523> I thought the old one required you to modify a cookie to replace a representation of a string literal with a representation of a Ruby dictionary
21:09:32 <kmc> apparently a new one
21:09:40 <ais523> and that only worked if it happened to be stored in a cookie at the time
21:09:41 <ais523> hmm, OK
21:09:42 <kmc> haven't absorbed all the details
21:12:01 <oerjan> @hoogle absorb
21:12:01 <lambdabot> No results found
21:12:18 <oerjan> ...how can there not be a haskell function by that name
21:12:28 <elliott> hoogle doesn't search that much
21:12:29 <GreyKnight> !
21:12:54 <GreyKnight> :t Absorbaloff
21:12:55 <lambdabot> Not in scope: data constructor `Absorbaloff'
21:12:57 <olsner> @hoogle adsorb
21:12:58 <lambdabot> No results found
21:13:32 <oerjan> ah, hayoo shows Data.Semiring has one
21:13:44 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
21:14:34 -!- Phantom_Hoover has joined.
21:15:03 -!- carado has quit (Quit: Leaving).
21:15:10 -!- asiekierka has quit (Excess Flood).
21:20:11 -!- asiekierka has joined.
21:30:53 -!- GreyKnight has quit (Remote host closed the connection).
21:31:37 -!- GreyKnight has joined.
21:32:38 <oerjan> <shachaf> I guess oerjan (helloerjan!) will logread this later and add quotes? <-- TOO LATE I'M PAST IT NOW AND HACKEGO'S STILL NOT HERE
21:32:53 -!- asiekierka has quit (Excess Flood).
21:32:59 <shachaf> ohnoerjan!
21:33:14 <oerjan> r.i.p. quotes
21:33:26 <GreyKnight> lost forever ;_;
21:33:32 <olsner> still no hackego? this is horrible
21:33:35 <shachaf> oerjan: You could @remember it.
21:33:39 <shachaf> @quote
21:33:39 <lambdabot> elven says: foldr sounds like a web-2.0 service
21:33:44 <shachaf> @quote
21:33:44 <lambdabot> NealStephenson says: Long names get worn down to three-letter nubbins like stones smoothed by a river.
21:33:53 <shachaf> @quote
21:33:54 <lambdabot> JoeMarshall says: I recall that Mike Blair once got the meta-circular evaluator to run itself. It took about forty minutes to get to the prompt.
21:34:04 <GreyKnight> Shut up Nel Stp
21:34:07 <shachaf> @quote
21:34:07 <lambdabot> Veinor says: SMT? shin megami tensei! the goal is to figure out how to max your s-links in persona 4 on the first run ... which is reducible to SAT, now that I think about it
21:34:16 <shachaf> @quote
21:34:16 <lambdabot> EvanR says: oop is never about what people say its about
21:35:08 -!- WeThePeople has quit (Quit: Leaving).
21:35:19 -!- canaima172429 has joined.
21:35:26 <oerjan> @tell shachaf hm...
21:35:26 <lambdabot> Consider it noted.
21:35:37 <shachaf> @ask oerjan thx
21:35:37 <lambdabot> Consider it noted.
21:35:46 -!- asiekierka has joined.
21:35:53 <oerjan> @messages
21:35:53 <lambdabot> shachaf asked 16s ago: thx
21:36:21 <shachaf> @todo
21:36:21 <lambdabot> 0. SamB: A way to get multiple results from a google search
21:36:21 <lambdabot> 1. dons: improve formatting of @dict
21:36:21 <lambdabot> 2. dons: write Haskell Manifesto
21:36:21 <lambdabot> 3. lispy: don't let lambdabot's prettyprinter split the sequence @foo across lines
21:36:21 <lambdabot> 4. TheHunter: priviledged users should get priviledged listcommands.
21:36:23 <lambdabot> [37 @more lines]
21:36:44 <GreyKnight> "Haskell Manifesto"
21:36:49 <canaima172429> hola
21:36:49 <hagb4rd> what's up with gregor? doesn't he care anymore?
21:37:13 <GreyKnight> dammit a newbie and we don't have the bot to `welcome him!
21:37:15 <oerjan> IT'S LIKE HE'S NOT EVEN HERE
21:37:23 <oerjan> shocking
21:37:27 <hagb4rd> yes
21:37:28 <GreyKnight> what will we do?! ;_;
21:37:30 <hagb4rd> hi canaima172429
21:37:35 <oerjan> hm i have an idea
21:37:52 <elliott> @more
21:37:52 <lambdabot> 5. TheHunter: @type 1 :: Int
21:37:52 <lambdabot> 6. lispy: haddock gives a link from a type signature to the types. It would be nice if it also let you find functions in the given module that use a type.
21:37:52 <lambdabot> 7. dons: Implement @whatis
21:37:52 <lambdabot> 8. dcoutts: implement @cool list, as a clone of the @todo(-add) commands
21:37:52 <lambdabot> 9. dons: there's some bug in the 'when i left' code of @seen
21:37:54 <lambdabot> [32 @more lines]
21:37:58 <fizzie> ^welcome canaima172429
21:37:58 <canaima172429> hablan español
21:38:01 <elliott> @more
21:38:01 <lambdabot> 10. dons: sarahbot style @tell
21:38:01 <lambdabot> 11. beelsebob_: @tell command - relays a message to someone when they next speak
21:38:01 <lambdabot> 12. dons: @seen on lambdabot should report lambdabot's channels too
21:38:02 <lambdabot> 13. ski: when printing first lines of infinite things (or all cases with nonexact), should say 'at least'
21:38:04 <lambdabot> 14. ski: provide '@more <number>', at least for privmsg
21:38:06 <lambdabot> [27 @more lines]
21:38:10 <fizzie> fungot: You *had* a ^welcome there.
21:38:13 <elliott> @more
21:38:13 <lambdabot> 15. ski: '@todo-remove <number>' for priviledged users, and possibly the user who added the todo note (is @todo-replace worth it ?)
21:38:13 <lambdabot> 16. dons: BUG: @pl (\_ -> return ()) --> const return
21:38:13 <lambdabot> 17. beelsebob_: "@remind command formatted as '@remind <person> {at <time> | in <time interval>} {to | about} <reminder message>' to get lambdabot to remind someone to do something"
21:38:13 <GreyKnight> [9] "there's some bug" <-- thanks
21:38:14 <lambdabot> 18. beelsebob_: "@pester command to make lambdabot pester you in PM to do something"
21:38:16 <fizzie> Maybe I forgot to save. :/
21:38:16 <lambdabot> 19. Lemmih: Bug jethr0_ about GHC hacking.
21:38:16 <canaima172429> speak Spanish
21:38:18 <lambdabot> [22 @more lines]
21:38:23 <GreyKnight> @spam
21:38:23 <lambdabot> I won't; I want to go get some cookies instead.
21:38:23 <elliott> @pl (\_ -> return ())
21:38:23 <lambdabot> const (return ())
21:38:31 <elliott> @more
21:38:36 <elliott> these todos are a bit boring imo
21:38:38 <fungot> canaima172429: 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 e ...
21:38:45 <fungot> fizzie: still an fnord ear he lent but could not fnord what she meant: she was thinking of nothing but " snark" and the poor little thing coughed violently for some time.
21:38:54 <fizzie> Oh.
21:39:04 <oerjan> fizzie: shocking
21:39:05 <fizzie> fungot: So you're just slow, then.
21:39:07 <fungot> fizzie: " shall i help you off with your ' another time'!"
21:39:24 <oerjan> fizzie: it's probably a rather long bf program?
21:39:24 <GreyKnight> did fungot just try to proposition fizzie
21:39:26 <fungot> GreyKnight: " sylvie dear, do help to settle it! i'm sure a day in the country would do him good. i'm afraid i don't quite understand,' said the gnat.
21:39:27 <oerjan> ^show welcome
21:39:29 <fungot> ,[.,]+14[>+8>+4>+7>+6<4-]>2+2.-26.>2+3.+14.+7.<+.>+3.-2.<+2.<.<+4.>3+2.<2.>2+5.<+3.-3.<.+73.+5.>2.<.>-2.-4.<-4.<2.>-5.>2+.-.<.>-2.<-65.<-.+13.>2-10.<.>+4.<2-6.<-2.>2.+69.<2+.>.+5.>.<-2.>+4.>-3.-67.<2-2.<-.-3.-8.>+2.<-6.>-5..>.<+.<+6.>3.<2-2.>-8.<+2.<.>+7.>.<2.-2.>3.<3-.>2+4.<-2.>+4.-2.<-5.>2.<-6.<.>+3.>.<3.+.>+2.<+7.>-.+10.<+.>2+.<2+.>-5.>2+.-.<-31.<2+.>-2.>2.<2-5.+2.+3.>+31.>.<+4.<-4.-8.>+6.+3.<2-2.>-5.>+2.<2-4.+6.-.>3+12.-12.
21:40:09 <ais523> it's BF because it takes an argument?
21:40:12 <ais523> yes
21:40:32 <fizzie> Yes.
21:40:34 <GreyKnight> canaima172429: Bienvenido al centro internacional para el diseño esotérico lenguaje de programación y despliegue! Para obtener más información, echa un vistazo a nuestro wiki: http://esolangs.org/wiki/Main_Page. (Para el otro tipo de esoterismo, ir a algún otro canal que no puedo recordar el nombre)
21:41:24 <Bike> is that real or machine translated
21:41:27 <hagb4rd> oerjan: do we have the source of hackego?
21:41:47 <GreyKnight> I'll give you three guesses and the first two don't count :-3
21:42:39 <Bike> it's just that i'm wondering if i remember enough spanish to say it should be "el diseño y despliegue de esotérico lenguaje de promación" instead
21:43:17 <GreyKnight> *shrug*
21:43:35 <GreyKnight> I learnt one year of Spanish back in school many many years ago
21:43:39 <kmc> http://vladz.devzero.fr/013_ptmx-timing.php "Use /dev/ptmx to measure inter-keystroke timing"
21:43:42 <hagb4rd> coño
21:43:55 <Bike> most important word to learn in any language, eh?
21:44:05 <oerjan> hagb4rd: on gregor's github iirc
21:44:09 <kmc> my fiesta name is pendejo
21:44:13 <hagb4rd> k
21:44:37 <GreyKnight> oerjan: where is that?
21:44:51 <oerjan> !help
21:44:51 <EgoBot> ​help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help <command>.
21:44:56 <oerjan> !info
21:44:56 <EgoBot> ​EgoBot is a bot for running programs in esoteric programming languages. If you'd like to add support for your language to EgoBot, check out the source via mercurial at https://codu.org/projects/egobot/hg/ . Cheers and patches (preferably hg bundles) can be sent to Richards@codu.org , PayPal donations can be sent to AKAQuinn@hotmail.com , complaints can be sent to /dev/null
21:44:57 -!- Nisstyre has joined.
21:44:59 <GreyKnight> kmc: PS I mapped Compose-@-@ to be ꙮ hth
21:45:37 <kmc> nice
21:46:11 <shachaf> @_@
21:46:15 <GreyKnight> "Several articles ([1] for instance), demonstrate that inter-keystroke timing (also called latency), is considered sufficient to determine what information is being typed on a keyboard." <-- oooh nice
21:46:32 <kmc> yeah
21:46:45 <kmc> get your enemy's password by pointing a laser microphone at their window
21:46:56 <shachaf> In Hebrew @ is called a strudel.
21:47:00 <GreyKnight> what is a PoC here? It reads like "Piece of Code" but blegh
21:47:04 <kmc> in many languages it's a snail
21:47:05 <oerjan> https://bitbucket.org/GregorR/hackbot
21:47:07 <kmc> proof of concept
21:47:12 <shachaf> kmc: I wanted to see if you could make a Flash game that listened to your keystrokes and got some information from them.
21:47:18 <GreyKnight> \@_ <-- Andalusian Video Snail
21:47:19 <kmc> HTML5 microphone API!
21:47:23 <kmc> shachaf: that is a good idea
21:47:24 <shachaf> Or that.
21:47:30 <shachaf> I wonder how much you can get.
21:47:32 <Bike> get your enemy's password by pointing a laser microphone at their window <-- that game was surprisingly fun
21:47:35 <shachaf> Probably different keys sound pretty different.
21:47:45 <GreyKnight> Bike: what game?
21:47:48 <fizzie> There are papers on keyboard sounds.
21:47:50 <fizzie> It's pretty bad.
21:47:55 <kmc> i also saw an attack where you could reconstruct the image on a CRT monitor by photographing the diffuse light on the opposite wall with a high-speed camera
21:47:59 <fizzie> (From the point of view of the person being listened to.)
21:47:59 <kmc> e.g. from across the street
21:48:11 <kmc> laptops should conduct key sound to the microphone very well
21:48:12 <fizzie> kmc: Sadly, there are no CRT monitors any more.
21:48:13 <hagb4rd> greyknight: this might it: https://bitbucket.org/GregorR/hackbot/pull-request/2/transactional-hackego/diff
21:48:21 <Bike> GreyKnight: splinter cell. at one point you listen in on some people by pointing a laser microphone at their conveniently glass-windowed elevator.
21:48:22 <hagb4rd> *be
21:48:23 <kmc> sadly, not true
21:48:23 <fizzie> (I saw that thing too.)
21:48:35 <kmc> but yes, they are rare
21:48:40 <fizzie> It was also made with not terribly fancy hardware.
21:48:45 <GreyKnight> kmc: I think you can read a CRT even from outside an enclosed room if you can pick up the Van Eck radiation, actually
21:48:46 <kmc> i assume it doesn't work with LCDs
21:48:48 <Sgeo_> Yes, there are idiots who program in Racket.
21:48:54 <kmc> GreyKnight: yes
21:48:57 <Bike> these things always make me wonder how practical they are, though
21:48:58 <Sgeo_> http://csclub.uwaterloo.ca/~s76singh/how-to-compile-your-drracket-code/
21:49:03 <elliott> you know those laser keyboards
21:49:07 <Sgeo_> "Solution : Compile the racket code to c code using Chicken Scheme."
21:49:11 <GreyKnight> Sgeo_: there are idiots in every language :-3
21:49:17 <elliott> that just project it
21:49:20 <fizzie> Optical Time-Domain Eavesdropping Risks of CRT Displays.
21:49:23 <elliott> do those provide "sound protection"
21:49:26 <elliott> because you are just tapping a table
21:49:28 <Bike> like if you're going to set up a TEMPEST thing to watch someone's screen, wouldn't it be easier to just bribe their waiter or some shit
21:49:33 <fizzie> It includes the bit about using a telescope.
21:49:45 <Jafet> elliott: you're tapping DIFFERENT PARTS OF THE TABLE
21:49:46 <GreyKnight> "there are no CRT monitors any more" <-- I have one right here in my living room!
21:50:09 <Jafet> There should be a tax on people like GreyKnight
21:50:11 <fizzie> http://www.rootsecure.net/content/downloads/pdf/optical_tempest_crt.pdf it's a nice.
21:50:50 * GreyKnight traps Jafet in a forcefield ⌇⌇o_o⌇⌇
21:51:10 <Jafet> What kind of force is this
21:51:15 <Lumpio-> Do they still use CRTs for somethings these days?
21:51:16 <Jafet> Dark or light
21:51:58 <GreyKnight> Lumpio-: well I have one on my computer here
21:52:00 <Lumpio-> BLUE
21:52:18 <fizzie> There are leftover monitors, but I wonder how many are still being manufactured.
21:52:22 <Lumpio-> GreyKnight: I was more like looking for applications where flat screens *can't* replace them
21:52:22 <fizzie> Probably not a whole lot.
21:52:40 <Lumpio-> Not just people who didn't bother/want to replace their CRT
21:52:54 <GreyKnight> oh hey I do have hg on this machine \o/
21:53:05 <shachaf> Taneb..................
21:53:32 <Taneb> STOP ON YOUR ETERNAL QUEST TO PREVENT ME FROM POSTING ABOUT HOMESTUCK IN PROGRAMMING CHANNELS
21:53:44 <Taneb> THAT WORKED PERFECTLY WELL IN CONTEXT
21:53:48 <Phantom_Hoover> oh shit Taneb is angry now
21:53:51 <GreyKnight> Where's Pac-Man when you need him
21:53:55 <Taneb> NO I'M JUST LOUD
21:54:01 <fizzie> "CRT monitors are still widely used in the study of the brain's visual processing (e.g. in psychophysics). The speed and fidelity of their response, combined with the simplicity of their design, makes them well-suited for experiments where scientists need to have very fine control over stimuli which are presented to an observer."
21:54:01 <Taneb> BECAUSE IT'S LATE
21:54:03 <Taneb> AND I'M HYPER
21:54:09 <fizzie> (Also gamers, of course. Lag, you know.)
21:54:20 <Taneb> AND I'VE JUST SENT 12 TO SOMEONE I'VE NEVER MET SO HE CAN BY A RASPBERRY PI COMPUTER
21:54:21 * GreyKnight traps Taneb in a sound-muffling forcefield ⌇⌇'o'⌇⌇
21:54:24 <Bike> Really? I thought you needed specialized equipment to present images to bugs anyway.
21:54:26 <Fiora> :33 < taneb you sound supurr upset to me, is someowthing upsetting you?
21:54:38 <Taneb> NOT NOW NEPETA
21:54:40 <Bike> Like a vanilla CRT's max refresh rate isn't good enough for them.
21:55:01 <Phantom_Hoover> oh dear Taneb
21:55:05 <Phantom_Hoover> calm down
21:55:09 <GreyKnight> Bike: bugs?
21:55:15 <Bike> Insects.
21:55:16 <Taneb> I'm gonna get something to eat
21:55:21 <Phantom_Hoover> that
21:55:23 <Phantom_Hoover> may help
21:55:35 * GreyKnight doesn't know where insects entered the conversation
21:55:39 <Taneb> `quote mezzoforte
21:55:44 <Taneb> AAARGH HACKEGO
21:55:48 * Taneb breathes
21:55:54 <Taneb> Goodbye
21:55:56 -!- Taneb has quit (Quit: Leaving).
21:55:57 <Phantom_Hoover> NO
21:56:00 -!- Phantom_Hoover has left ("Leaving").
21:56:04 -!- Phantom_Hoover has joined.
21:56:04 <elliott> Bike: Are you sure bugs aren't just stupid?
21:56:05 * GreyKnight puts a cork in Taneb's gob while he breathes
21:56:16 <Bike> GreyKnight: fizzie's quote about psychophysics.
21:56:16 <Bike> GreyKnight: "observers" often constitute more than just humans.
21:56:40 <Bike> elliott: This is science. We need to know precisely how stupid they are.
21:56:51 <GreyKnight> right but... you sounded as if you were responding to a comment about insects
21:56:55 <elliott> Bike: Real stupid.
21:56:59 <hagb4rd> well think of cicadas.. they finally found out a good algo for primals
21:57:05 <Jafet> If bugs are stupid, why do people program computers like them?
21:57:17 <GreyKnight> s/like/with/
21:57:23 <Bike> GreyKnight: Fizzie's comment reminded me of psychophysics experiments I've heard of, that involved bugs. Simple.
21:57:38 <Bike> elliott: but there are so many reals! we need bounds
21:57:40 <Jafet> wherewithal
21:57:55 <elliott> Bike: +a lot
21:57:55 <GreyKnight> Bike: I am just saying some context would have helped!
21:58:11 <GreyKnight> +alot
21:58:24 <fizzie> The helpful alot.
21:58:37 <GreyKnight> -alot is less helpful
21:59:13 <Bike> GreyKnight: do we need to do psychophysics on you too, bub?
21:59:37 <kmc> wow *two* 787 malfunctions on the ground at BOS in two days
21:59:44 <kmc> a battery fire and then a fuel leak
21:59:55 * GreyKnight puts Bike in the forcefield with the others ⌇⌇ o_o 'o' o_o ⌇⌇
22:02:51 <hagb4rd> 😻 😻 😻 😻
22:04:10 <GreyKnight> I also have Compose-b-r-r = ☃
22:05:17 <hagb4rd> beware of my heart shaped cats legion
22:05:21 <oerjan> i keep thinking that unicode snowman looks more like a cartoon cat head
22:05:58 <hagb4rd> heart/shaped/eyes
22:06:04 <oerjan> which i guess is good since i don't have fonts for any of the actual cats
22:07:30 <GreyKnight> oerjan: *GASP* How can you live like that?!
22:07:59 <oerjan> miserably, naturally
22:08:16 <oerjan> it's ok i've always been more of a dog person
22:09:06 <GreyKnight> THEN HAVE I GOT A CODEPOINT FOR YOU 🐶 🐶 🐶 🐶
22:09:59 <oerjan> also putty shows a lot less than my browser, i have to look at the logs even for the snowman
22:10:36 <oerjan> (putty is incapable of using more than one font simultaneously)
22:11:07 <oerjan> GreyKnight: my what nice square boxes!
22:11:09 <Fiora> heart shaped cats legion?
22:11:13 <Fiora> more like leijon
22:11:31 <oerjan> since when is Fiora swedish
22:11:52 <Fiora> http://25.media.tumblr.com/tumblr_mdanwyAOdu1r3ez80o1_r1_500.gif
22:12:08 <Fiora> sorry. homestucking
22:12:28 <GreyKnight> objection none of their eyes are heart-shaped
22:12:40 <oerjan> OKAY
22:12:48 <olsner> oerjan: probably Fiora is not swedish at all
22:12:50 <oerjan> (lejon is swedish for lion)
22:12:58 <Fiora> I am very not swedish XD
22:12:59 <oerjan> olsner: well it _was_ slightly misspelled
22:14:02 <oerjan> i guess leijon is what legion would be spelled like in some hypothetical reform
22:15:06 <fizzie> GreyKnight: Have you got a bridge-shaped codepoint to sell us if we believe any of that?
22:15:23 <olsner> I think the spelling leijon exists as a surname though
22:15:49 <GreyKnight> fizzie: even better:
22:15:55 <fizzie> (fi:leijona == en:lion.)
22:16:30 <hagb4rd> surprise.. it even makes sense
22:16:39 <GreyKnight> U+0346 COMBINING BRIDGE ABOVE ͆
22:16:53 <fizzie> (fi:leijoina == en:"as kites", approximately.)
22:16:54 <olsner> leijona tervalakritsi
22:17:28 <oerjan> olsner: yes google showed some people
22:17:33 <fizzie> (The plural essive noun case of leija 'a kite'.)
22:17:57 <elliott> high leijoina
22:18:11 <olsner> hmm, as kites => asive case?
22:18:20 <oerjan> high as kites, check
22:18:36 <fizzie> "The essive or similaris case (abbreviated ess) carries the meaning of a temporary location or state of being, often equivalent to the English 'as a (child)'."
22:18:47 <fizzie> Wikipedia only has examples in Finnish and Estonian.
22:18:53 <fizzie> Perhaps it's not such a popular noun case.
22:18:59 <Bike> fucking hipster ugric languages
22:19:24 <oerjan> en:lion = no:løve, to demonstrate how gentle creatures they are
22:19:50 <fizzie> oerjan: Is en:liøn also no:love?
22:20:00 <oerjan> cån't yøu feel the løve tønight
22:20:07 <fizzie> Come to Kenyä, we've got liøns.
22:20:09 <oerjan> fizzie: POSSIBLY
22:20:17 <GreyKnight> fizzie: (Forget Norway)
22:20:37 <fizzie> GreyKnight: More like Snoreway.
22:21:33 <GreyKnight> If Kenya were to physically urinate all over Norway, this trajectory would give optimum coverage.
22:21:47 <oerjan> finnish lions are of course retarded http://satwcomic.com/coat-of-arms
22:21:58 <hagb4rd> fizzie: can you link me to a good (free) en-fi dictionary?
22:23:01 <GreyKnight> oerjan: wow Scandinavia sure does love lions
22:23:04 <oerjan> also http://lolpics.se/5232-retarded-lion
22:23:05 <GreyKnight> * løve
22:23:20 <oerjan> yes we dø
22:23:26 <oerjan> (no:dø = en:die)
22:23:39 -!- elliott has left.
22:23:53 <GreyKnight> oerjan: that makes the whole "do or die" thing a lot simpler
22:25:11 <oerjan> <Bike> fucking hipster ugric languages <-- finnish is not ugric, hungarian is ugric
22:25:36 <olsner> finnugric then?
22:27:22 <oerjan> GreyKnight: except en:do = no:gjøre
22:27:28 <oerjan> *finno-ugric
22:28:21 <GreyKnight> oerjan: shush dead
22:28:24 <GreyKnight> er
22:28:27 <GreyKnight> oerjan: shush dear
22:29:48 <fizzie> hagb4rd: I use our site license of a commercial one. For random lookups, though, Wiktionary is probably just fine.
22:30:21 <hagb4rd> øk
22:31:25 <fizzie> There's some (pretty lame) conspiracy theories about the nine roses in the Finnish one.
22:31:37 <GreyKnight> ØḴ
22:31:46 <fizzie> ("The purpose of the nine roses remains unknown, but are now mostly considered to be decorative only. They have sometimes been claimed to represent the nine historical provinces of Finland, but this hypothesis has not found support among prominent scholars.[1] The number of towns in the nominal "Grand Duchy of Finland and Karelia" in 1580 were also nine,[2] but no known historical research ...
22:31:52 <fizzie> ... provides support for a link between the number of roses and the number of towns in Finland in 1580.")
22:32:12 <fizzie> They're quite of randomly-haphazardly put in there.
22:32:57 <Phantom_Hoover> <Fiora> I am very not swedish XD
22:33:12 <Phantom_Hoover> EXCELLENT YOU HAVE PASSED CRITERION 0
22:33:19 <Fiora> ... criterion 0?
22:33:30 <Phantom_Hoover> "don't be swedish"
22:33:36 <Fiora> but like. criterion for what?
22:33:41 <olsner> inclusion
22:34:03 <Fiora> but... why?
22:34:05 <kmc> as in "high as kites"?
22:34:06 <fizzie> Survival?
22:34:27 <Phantom_Hoover> everything
22:34:33 <GreyKnight> Fiora: so you can stop being welcomed
22:34:37 <GreyKnight> ^welcome Fiora
22:34:37 <fungot> Fiora: 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 ...
22:34:41 <Fiora> oh gosh not again
22:34:52 <fizzie> "For the other kind of esoterica ...actually, forget it."
22:35:00 <fizzie> fungot: Put some effort into that, would you.
22:35:01 <fungot> fizzie: ' you should have meant! what do you call it a ' defective conclusion'. all m are x; &there4 all y are x, and no y' exist. i.e. all nice are not-new. 0 1 all y are x", that is,
22:35:32 <fizzie> Is it just me, or is fungot somehow more random than usual?
22:35:32 <fungot> fizzie: size and tears he sorted out those of the largest size. holding his pocket handkerchief before his streaming eyes. " isn't he wise?"
22:35:37 <oerjan> btw the theory is that the finnish and hungarian branches developed their plethoras of cases _separately_ and the ancestral language had only six or so
22:36:10 <fizzie> oerjan: We only have 15 or so now.
22:36:42 <Bike> gg hungarian
22:36:45 -!- canaima172429 has left.
22:38:38 <GreyKnight> I guess canaimawhatsis got tired of us ._.
22:39:28 <hagb4rd> elliott too
22:39:28 <fizzie> Inessive, elative, illative; adessive, ablative, allative. That's the standard litany of the locative case names they teach(ed, anyway) in primary school.
22:40:02 <GreyKnight> unrelated: I like how the standard Linux Compose file for en_US.UTF-8 includes codes *typed with* <Cyrillic_pe>, <Cyrillic_a>, etc
22:40:24 <GreyKnight> elative/illative/allative sound totally non-confusable
22:40:59 <GreyKnight> hah, Compose-C-C-C-P gives you a ☭
22:41:09 <oerjan> GreyKnight: if you know how latin prepositional prefixes work, they are...
22:41:32 <FreeFull> GreyKnight: Compose cccp? How would you do that? It only accepts two keys for me
22:41:38 <FreeFull> Oh
22:41:39 <oerjan> e- i(duplication)- and a(duplication)- from ex, in and ad respectively
22:41:39 <FreeFull> Needs shift =P
22:41:45 <GreyKnight> oerjan: I mean they sound alike when spoken aloud
22:41:58 <oerjan> OKAY
22:42:02 <GreyKnight> FINE
22:42:03 <FreeFull> ☭_☭
22:42:18 <oerjan> THAT'S YOU ENGLISHES' PROBLEM
22:42:22 <olsner> GreyKnight: maybe you're not enunciating them properly
22:42:42 <fizzie> GreyKnight: They're typically taught along with a single word in each of those cases, in the same order. Like "koirassa, koirasta, koiraan; koiralla, koiralta, koiralle". (In a dog, from (inside of) a dog, into a dog; on/at a dog, from a dog, to a dog.)
22:42:50 <fizzie> (Probably they're not using the word "dog" there.)
22:42:51 <GreyKnight> I need to turf somebody out of the forcefield so I can put olsner in
22:43:32 <GreyKnight> fizzie: Reminds me of the old saying. Outside of a dog, a book is man's best friend. Inside of a dog, it's too dark to read.
22:44:05 <GreyKnight> ("Outside of _" is an idiom for "Except for _")
22:44:12 <hagb4rd> fizzie: does the dog/the noun remain unchained in all that prepositions?
22:44:20 <fizzie> GreyKnight: That's a good example of a thing that wouldn't really translate.
22:44:26 <GreyKnight> ((dontexplainthejoke.gif))
22:44:48 <fizzie> hagb4rd: None of them are prepositions in Finland, so I'm not sure what the question means.
22:45:05 <fizzie> In Finnish.
22:45:08 <hagb4rd> hm
22:45:12 <fizzie> I even had "Finnish" there.
22:45:13 <oerjan> i _think_ it would work in norwegian
22:45:38 <olsner> it almost works in swedish
22:45:45 <fizzie> We don't really have the equivalent outside-of idiom.
22:46:02 <fizzie> If you translate "outside of a dog" directly, it just means the outside of a dog.
22:46:37 <GreyKnight> "What why are they talking about dog leather"
22:46:59 <fizzie> I suppose you could do something slightly far-fetched but similar by starting from the translated "except for a dog", and then inventing an alternative way to interpret it.
22:47:33 <oerjan> http://home.no/toppned/side2.html is the only hit i found, at the bottom
22:47:39 <fizzie> But it wouldn't be the inside-it's-too-dark joke then.
22:48:39 <olsner> the swedish for "except for" conveniently also means outside of, replacing out with in in that word gives you a word that technically also means inside of but isn't really used that way
22:49:19 <oerjan> well yes it doesn't work to replace utenom with innenom
22:49:19 <fizzie> I tried to google for "koiran ulkopuolella" (outside of a dog), but it's all about how long different pet parasites/disease-vectors survive outside of a dog.
22:49:58 <fizzie> Uh, except for a machine-translated bit.
22:50:22 <olsner> outside of a dog, worms don't survive for long. inside of a dog they can't read.
22:50:29 <GreyKnight> Try to make joke > Get stuff about dog worms
22:50:50 <fizzie> "Oletko sairaita peräkorokekansi nukka koti tulee tai etsiminen märkä paikan päällä rakkaiden matto tai matto? No minulla on ratkaisu. -- Kun yrität junan mitään, erityisesti koira, voi usein olla vaikeaa ja huolellinen, mutta nämä helpot toimet on avuksi onnistuneesti yöastia, Potta koulutuksen oman koira. -- Vaihe 3: Muista ottaa yhteyttä koiran ulkopuolella usein, erityisesti ...
22:50:57 <fizzie> ... silloin, kun olet ensin wake up aamulla, ennen kuin voit siirtyä lepotilaan yöllä ja kunkin aterian jälkeen." (For the Finns.)
22:51:33 <fizzie> I like the "Kun yrität junan mitään." That's approximately "when you're trying to train something", except it's train as in the vehicle.
22:51:53 * hagb4rd wonders how "on" "at" "in" "into" and so on can not be prepositions
22:51:54 <fizzie> So it's "When you're trying a train's anything."
22:52:01 <Bike> deep
22:52:08 -!- Nisstyre has quit (Ping timeout: 256 seconds).
22:52:31 -!- md_5 has quit (Quit: ZNC - http://znc.in).
22:52:32 <fizzie> hagb4rd: By being inflected endings. "In a dog" = "koirassa", "into a dog" = "koiraan".
22:52:43 <olsner> dogwards
22:52:44 <hagb4rd> ok
22:52:45 -!- md_5 has joined.
22:52:47 <hagb4rd> i see
22:53:16 <hagb4rd> that answers my question
22:53:41 <fizzie> (The base noun in the nominative case is "koira". And it's of course not always a simple suffix, there's all kinds of fuzzy vague rules how the stem gets changed.)
22:54:37 <fizzie> kite (singular), kite's (possessive), kites (plural), kites' (possessive plural): leija, leijan, leijat, leijojen.
22:54:42 <GreyKnight> First rule of language: It's NEVER just a simple suffix.
22:58:51 <GreyKnight> "high as a kit": leicqcdmcqwlookatmyhands
22:59:04 <hagb4rd> now i am finnished
22:59:07 <GreyKnight> …ugh
22:59:19 <fizzie> Though I suppose the "plural" is kind of arguable, it's not like we only have a single plural. ("Two kites" would be "kaksi leijaa", and "(some) kites" would be "(joitakin) leijoja". But "(these) kites" is "nämä leijat".)
22:59:57 <fizzie> I forgot to put parenthesis markers to all the "context" words there.
23:00:21 <FreeFull> Kite as in the thing you fly or the bird?
23:01:17 <nooodl> the thing you fly
23:01:29 <olsner> is that depending on whether the number of kites is known or unknown or something?
23:01:51 <nooodl> dual forms are a thing in a lot of languages
23:01:56 <nooodl> i bet "two kites" is just a special case
23:02:04 <hagb4rd> it the depends on whether number of kites is infinite :p
23:02:14 <fizzie> No, it's not; it'd be the same after any number.
23:02:32 <nooodl> oh
23:02:41 <fizzie> But I suppose it needs to be a particular number.
23:02:53 <nooodl> does just "leijaa" mean anything?
23:03:16 <fizzie> Well, no, one way of saying "many" would also gt that form. ("monta leijaa")
23:03:34 <fizzie> But another way of saying it ("paljon leijoja") would not.
23:03:38 <olsner> how about a few kites?
23:03:57 <GreyKnight> fizzie: in that case you should parenthesise (two) :-)
23:04:11 <fizzie> olsner: Muutama leija, vähän leijoja. (Okay, the last is "few kites", not "a few".)
23:05:10 <olsner> few (not many) and "a few" (at least a few) is sort of different though
23:05:20 <fizzie> Yes, they are.
23:05:30 <fizzie> ("A couple of kites" = "pari leijaa".)
23:05:31 <olsner> but maybe not different enough to have cases of their own
23:05:54 <fizzie> Hey, look, "muutama leija" doesn't have a plural at all.
23:05:57 <fizzie> Fancy that.
23:06:18 <fizzie> (It's still "at least a few kites".)
23:06:30 <fizzie> (There are definitely more than one.)
23:06:50 <olsner> (But despite that not plural?)
23:07:12 <fizzie> Well, I mean, the noun is in the usual nominative case, without a plural form.
23:07:49 <fizzie> ("leija" as opposed to "leijat", "leijoja" or "leijaa", the latter of which is I think actually the partitive case or something.)
23:08:52 <fizzie> I suppose it's kind of arbitrary, but it's definitely determined by the part indicating the amount.
23:09:12 <GreyKnight> Welcome to #finnish :-D
23:09:48 <fizzie> Hey, isn't it the official language of the channel.
23:10:00 <fizzie> At least according to a few long-lived topics.
23:10:11 <olsner> a while there I thought wikipedia said "The partitive case [denotes] partitiveness"
23:10:22 <fizzie> There's #esoteric-en for you other guys.
23:10:27 <olsner> (it actually said partialness)
23:12:37 <olsner> meh, grammar is hard and I am slep
23:12:48 <GreyKnight> slep is haerd
23:13:04 <FireFly> hærd?
23:13:26 <fizzie> Herd of slep.
23:14:40 <GreyKnight> while(!asleep()) sheep++;
23:15:25 <fizzie> Hird of Unix-Replacing Daemons; Hurd of Interfaces Representing Depth.
23:16:42 <hagb4rd> that's greyt.. can i quote this greyknight?
23:17:11 <GreyKnight> I didn't originate it but okay :-U
23:17:29 <hagb4rd> hm
23:18:57 <fizzie> GreyKnight: Do you generally fall asleep when sheep wraps over? (Or the other way around?)
23:19:27 <GreyKnight> related: http://xkcd.com/571/
23:19:50 <fizzie> while (sheep + 1 > sheep) sheep++; sleep();
23:19:51 -!- DHeadshot has quit (Read error: Connection reset by peer).
23:21:13 <fizzie> Advanced sleepers may try to parallelize that with lucid-dream sheep-counting.
23:22:31 <hagb4rd> lol
23:23:22 <hagb4rd> sheep overflow
23:28:02 -!- Nisstyre has joined.
23:28:48 -!- GreyKnight has quit (Quit: back later).
23:30:59 <fizzie> http://sprunge.us/gGDZ that's a new message for me.
23:31:13 <fizzie> (Only happens for -S, not e.g. for -c.)
23:37:38 -!- impomatic has quit (Quit: http://retroprogramming.com).
23:40:19 -!- epicmonkey has quit (Ping timeout: 248 seconds).
23:48:40 -!- copumpkin has quit (Ping timeout: 252 seconds).
23:49:11 -!- copumpkin has joined.
23:50:55 -!- Nisstyre has quit (Ping timeout: 260 seconds).
23:51:01 -!- GreyKnight has joined.
23:52:16 <GreyKnight> ∀compose characters ∃some awesome
23:56:37 <GreyKnight> I spent a while trying to figure out why my bibold characters weren't working. Then I realised I hadn't actually included that part in my .XCompose >_>
2013-01-09
00:00:13 <GreyKnight> http://satwcomic.com/moby-is-a-dick who is the sparkly individual at the end there?
00:00:22 <FreeFull> Do you want to know how dot files came around?
00:00:33 -!- sebbu has quit (Read error: Connection reset by peer).
00:00:44 <Bike> sure
00:01:02 -!- sebbu has joined.
00:01:17 <FreeFull> The person who wrote ls got lazy and filtered out . and .. entries by checking if the first character of a filename was a .
00:01:19 <fizzie> GreyKnight: Iceland is sparkly.
00:01:21 -!- Nisstyre has joined.
00:01:51 <Bike> FreeFull: believable. too believable. make it snopesworthy.
00:02:11 <GreyKnight> But I thought Iceland was all green and it was Greenland that was all ice :-I
00:02:42 <Bike> green things can sparkle!
00:03:08 <GreyKnight> Iceland: like an emerald, in a way
00:03:31 <GreyKnight> ...wait are they stealing our "Emerald Isle" motif >:-O
00:03:36 * GreyKnight declares war
00:05:57 <oerjan> be careful, they have volcanoes
00:06:57 <GreyKnight> and Björk
00:06:57 <FreeFull> Bike: https://plus.google.com/101960720994009339267/posts/R58WgWwN9jp
00:07:04 <FreeFull> Here, from Rob Pike
00:07:28 <GreyKnight> http://satwcomic.com/size-matters Denmark and Norway are *bros*, but Sweden just has to go and be awkward
00:08:28 <Bike> FreeFull: still boring.
00:10:09 <FreeFull> I'm sorry if reality is boring to you :)
00:10:11 -!- nooodl has quit (Ping timeout: 248 seconds).
00:10:22 <GreyKnight> FreeFull: "[…] during the Version 2 rewrite, when the file system became hierarchical (it had a very different structure early on)." <-- this was interesting by itself
00:10:47 <FreeFull> GreyKnight: MSDOS didn't have a hierarchical FS at the beginning either
00:11:10 <GreyKnight> back in the mists of time
00:12:06 <oerjan> i believe technically danish and norwegian both got Å from swedish after the countries had all separated, http://en.wikipedia.org/wiki/%C3%85#Origin
00:15:10 <FreeFull> Hierarchical FS support was added in MS-DOS 2
00:15:51 <GreyKnight> "NTFS allows files to contain more than one stream of bytes, each of which have an independent range of file positions starting at zero. Microsoft did this as a generalization of the original MacOS concept of a file having two forks, a data fork and a resource fork. I'd claim that it was a mistake on the Mac, and a bigger mistake for Microsoft to build it into NTFS."
00:16:12 <Bike> does anyone use that?
00:16:22 <Bike> on windows, i mean, i've heard of mac forks.
00:17:32 <oerjan> everyone knows windows cannot fork properly
00:18:25 <FreeFull> NTFS has a lot of features that end up essencially unused
00:18:34 <FreeFull> You can use the multiple stream thing to hide files
00:18:35 <Bike> doesn't everything?
00:18:37 <GreyKnight> "dd is horrible on purpose. It's a joke about OS/360 JCL. But today it's an internationally standardized joke. I guess that says it all." <-- this page is a source of lols
00:18:50 <Fiora> weird NTFS features things reminds me of NTFS Link
00:19:04 <Bike> FreeFull: sounds great for malware.
00:19:19 <Fiora> it was this little tool that let you have symbolic link support in windows, it was really easy and simple and intgrated into the explorer
00:19:27 <FreeFull> I think you can really only access the files from command line if they're hidden that way
00:19:31 <Fiora> @g NTFS junction point
00:19:31 <lambdabot> Maybe you meant: gazetteer get-shapr ghc girl19 google googleit gsite gwiki . ? @ v
00:19:41 <Fiora> @google NTFS junction point
00:19:42 <lambdabot> http://en.wikipedia.org/wiki/NTFS_junction_point
00:19:43 <lambdabot> Title: NTFS junction point - Wikipedia, the free encyclopedia
00:19:57 <FreeFull> NTFS allows hard links and symbolic links, and you can mount a device inside a directory
00:20:21 <Fiora> symbolic links are only for folders though, I think
00:20:33 <Fiora> the main thing I used it for is I could move a big folder to another drive, then add a symbolic link so that programs still thought it was there
00:20:39 <Fiora> so I could like, add a new hard drive, then symbolic-link program files
00:26:42 <FreeFull> Under linux, hard links are to files only
00:27:15 <ais523> FreeFull: not true; the kernel API can handle directory hardlinks just fine, as can the usermode programs like ln
00:27:19 <ais523> however, most /filesystems/ can't
00:27:23 <ais523> which is why you can't create them
00:28:26 <FreeFull> ln will refuse to create them, to prevent loops
00:28:38 <ais523> FreeFull: unless you're root and tell it not to care about that
00:28:51 <GreyKnight> ln --trust-me
00:28:58 <FreeFull> True
00:29:28 <FreeFull> ext4 won't permit it, wonder what filesystems will
00:30:33 <FreeFull> ntfs might
00:32:44 -!- Nisstyre has quit (Ping timeout: 255 seconds).
00:35:22 <Fiora> Sgeo_: update
00:36:53 * oerjan imagines mount taking a regexp argument, and mounting the device at _all_ matching paths simultaneously
00:38:06 <GreyKnight> Why stop there? Generate all possible strings that could match the regexp, create the necessary paths, and mount it everywhere
00:39:35 <oerjan> um the point is the regexp is supposed to be allowed to give infinitely many strings. for those useful loops and stuff.
00:40:06 <GreyKnight> oh you sort of meant the same thing as me I think
00:40:11 <oerjan> or put differently... yes.
00:40:41 <GreyKnight> communication, taking place, etc
00:40:41 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
00:41:01 <oerjan> hackego, not in place, etc
00:41:29 <GreyKnight> -_-
00:41:45 * oerjan hopes Gregor is fine
00:42:28 -!- monqy has joined.
00:43:26 <GreyKnight> monqy: help Gregor
00:43:26 <GreyKnight> he is trapped and only you can rescue him!
00:43:34 <monqy> ok
00:44:11 <Bike> it's those darn forcefields, i knew they'd be nothing but trouble
00:46:10 <GreyKnight> I never put Gregor in a forcefield!
00:46:39 <oerjan> they said forcefields were trivial to escape, but they underestimated the gravity of the situation
00:47:06 * oerjan would do puns on magnetism instead if he could think of any
00:47:18 <quintopia> i put gregor in a field of gravitational force and a field of electromagnetic force!
00:47:45 * GreyKnight puts c00kiemon5ter in a forcefield, and three cookies outside ⌇⌇ :-3 ⌇⌇ o o o
00:47:52 <oerjan> well the second is illegal, we'll have to charge you for it
00:48:38 <GreyKnight> oerjan: some people think I use forcefields to attract the ladies, but it is just my animal magnetism
00:48:42 <quintopia> oerjan: the gradient of your joke potential field is radially aimed toward "bad"
00:51:21 <oerjan> quintopia: you just want a magnetic monopoly!
00:51:37 <GreyKnight> These puns are making my hair curl
00:52:10 <oerjan> we can really div 'em out
00:52:43 * oerjan isn't sure that was a pun
00:52:46 <Fiora> quintopia: puns are an integral part of this channel :<
00:53:19 <oerjan> they get a bit derivative after a while
00:54:16 <GreyKnight> I'd complain, but I don't want to make waves…
00:56:46 <oerjan> waves are ok, just don't go cosin trouble
00:57:15 <Fiora> this has kind of gone off on a tangent
00:59:00 <GreyKnight> Well, I can see the parallels
00:59:12 <oerjan> i think you are just projecting
00:59:32 -!- WeThePeople has joined.
01:05:20 -!- elliott has joined.
01:06:29 <Sgeo_> Fiora, what the fuck did I just watch?
01:07:32 <Bike> canon
01:07:38 <Fiora> Sgeo_: I really don't know
01:08:07 * oerjan doesn
01:08:10 <oerjan> 't know either
01:08:38 <kmc> so is every rails app in the world getting hacked right now or what happened with that
01:09:56 <Fiora> it's apparently "trickster mode is canon now"?
01:10:40 <kmc> what?
01:10:53 <Bike> kmc: maybe you could make a startup dedicated to cracking startups.
01:11:05 <kmc> i'm so confused
01:12:02 <kmc> maybe i could make a startup dedicated to smoking crack
01:12:17 <Bike> so, a startup
01:12:35 <kmc> It's like TACOCOPTER for CRACK COCAINE!
01:12:42 <kmc> yes
01:12:43 <kmc> actually
01:12:48 <GreyKnight> kmc: Well maybe all the news sites are on Rails and so they can't tell us about it :-I
01:12:49 <kmc> given how cheap small toy drones are getting
01:12:53 <Fiora> kmc: oh sorry I meant in response to Sgeo_
01:12:56 <kmc> maybe we should use them to deliver drugs
01:13:01 <kmc> Fiora: oh ok i thought so maybe
01:13:11 <kmc> but it kind of made sense with what i said
01:13:14 <kmc> but not enough sense >_<
01:13:49 <kmc> unfortunately i think small toy drones don't have much cargo lifting capacity
01:14:01 <Fiora> kmc: "An attacker can execute any ruby code he wants including system("unix command"). This effects any rails version for the last 6 years."
01:14:05 <Fiora> I think that's it
01:16:15 <oerjan> @nixon on wikipedia
01:16:15 <lambdabot> The second point is that coming out--coming back and saying that black Americans aren't as good as black Africans--most of them , basically, are just out of the trees. Now, let's face it, they are.
01:16:39 <kmc> http://www.lawfareblog.com/2012/09/operation-stux2bu-layered-offense-and-defense-and-drone-cyberattacks/ in which a defense policy expert, a 14 year old kid, and an 11 year old kid win a drones duel using cyberwarfare
01:18:04 <GreyKnight> Fiora: O_@
01:18:12 <kmc> yeah fun times
01:28:12 -!- GreyKnight has quit (Quit: zzz).
02:09:41 -!- TeruFSX has joined.
02:12:47 -!- WeThePeople has quit (Ping timeout: 246 seconds).
02:53:00 -!- Arc_Koen has quit (Quit: Arc_Koen).
03:01:23 <kmc> first zombie 6.001 lecture was today
03:01:50 <kmc> i was trying to go through some simple fibonacci-type examples in recitation and my students were asking about how you implement variadic functions and macros and stuff
03:01:53 <kmc> i guess that's a good sign?
03:03:11 <oerjan> it means no one ate their brains yet
03:07:12 <Bike> 6.001 is undead now?
03:09:09 <kmc> it has been undead for a while
03:09:18 <kmc> students teach it over the january Independent Activities Period
03:09:25 <kmc> the original course is compressed into 1 month
03:09:49 <Bike> i thought it was just, you know, dead
03:11:16 <kmc> http://www.insinuator.net/2013/01/rails-yaml/ has more about that rails vulnerability
03:16:07 * Sgeo_ is not in fact competent enough to just be able to click the edit button on GitHub, change the code, and send a pull request
03:16:19 <Sgeo_> I renamed an identifier but forgot to rename it everywhere
03:16:29 <Sgeo_> (Or, well, just didn't see that location)
03:22:02 -!- oerjan has quit (Quit: Ribbit).
03:33:02 -!- oerjan has joined.
03:42:12 <FreeFull> If I do a pattern match like [a] in haskell, what is the value of a?
03:42:52 <kmc> it will match any list that contains exactly one element
03:42:56 <kmc> a will be bound to that element
03:43:20 <oerjan> > let [a] = [1,2,3] in a
03:43:22 <lambdabot> *Exception: <interactive>:3:5-17: Irrefutable pattern failed for pattern [a]
03:43:29 <oerjan> > let [a] = [5] in a
03:43:30 <lambdabot> 5
03:43:52 <FreeFull> So it only matches if there is a single element
03:44:02 <kmc> yes
03:44:27 <oerjan> > let a:b = [1,2,3] in (a,b)
03:44:28 <kmc> it is sugar for (a : [])
03:44:28 <lambdabot> (1,[2,3])
03:44:42 <kmc> the two primitive patterns for lists are [] and (x : xs)
03:44:49 <kmc> matching empty and non-empty lists respectively
03:45:05 <kmc> a pattern like [a,2,b] is sugar for (a : (2 : (b : [])))
03:45:53 <kmc> lists have special syntax but otherwise they act like a normal algebraic data type, data List a = Nil | Cons a (List a)
04:00:40 <kmc> and that's where babies come from
04:01:13 <oerjan> > repeat "babies"
04:01:15 <lambdabot> ["babies","babies","babies","babies","babies","babies","babies","babies","b...
04:08:36 <Sgeo_> The Racketeers are... scared of hidden mutation?
04:08:47 <Sgeo_> <asumu> Depending on what you mean by Scheme-y, yes. Guile has GOOPs, for example. The generics library was designed not to allow such backpatching.
04:08:47 <Sgeo_> <asumu> Because it's basically some hidden mutation.
04:12:26 <monqy> hi
04:13:25 <monqy> whats this about
04:14:02 <Sgeo_> Taking a value from library A and a generic interface from library B, and writing a library C that makes the value implement the interface without the consent of the value
04:14:43 <Sgeo_> <Sgeo_> Hidden mutation isn't necessarily evil
04:14:44 <Sgeo_> <Sgeo_> Any Haskell implementation is going to do hidden mutation to turn lazy thunks into values when that thunk is forced
04:14:44 <Sgeo_> <asumu> That's unobservable mutation.
04:14:44 <Sgeo_> <asumu> It's an optimization over call-by-name basically.
04:14:44 <Sgeo_> <asumu> You can definitely observe a mutation of a method table of some object.
04:14:46 <Sgeo_> Hrm
04:15:06 <Bike> what are you hrming about
04:15:41 <elliott> presumably why he's pasting #clojure(?) #racket(?) logs into #esoteric
04:15:48 <Sgeo_> #racket
04:16:44 <Sgeo_> He's right that there's a difference, I'm not sure though if hidden but observable mutation is to be avoided
04:16:46 <monqy> by "making it implement an interface without its consent" do you mean mutating it to patch in an implementation
04:17:05 <Sgeo_> Pretty much
04:17:05 <monqy> idk how this system works
04:17:10 <monqy> but
04:17:17 <monqy> sounds like you're doing something icky and bad
04:17:31 <Sgeo_> It's how some OO systems for Scheme work
04:17:51 <Bike> wait, since when do you need to mutate an object to define methods on its class
04:18:55 <Sgeo_> Need to mutate the class. Or, well, it would end up responding differently to the question "do you respond to this?" at point t1 and point t2
04:19:33 <kmc> what does "hidden but observable" mean
04:19:54 <Bike> "you can see it without looking at implementation details but it's not obvious if you're stupid"?
04:20:07 <Bike> Sgeo_: well, if it's message-passing based, i guess.
04:20:50 <Sgeo_> Presumably "hidden" as in "It's not immediately obvious that you're mutating something", I guess?
04:21:21 <monqy> why do you want to do this thing anyway
04:24:09 <Sgeo_> Because it's quite easy to imagine two libraries developed in isolation that would fit well together
04:25:24 <Bike> what about.............. generics
04:25:24 <monqy> and the only way to make them fit well together is to muck up their internals
04:25:44 <hagb4rd> what about defining ..interfaces?
04:25:53 <Sgeo_> Bike, the generics system new in Racket is like this
04:25:55 <Bike> not enough ellipses try again
04:27:38 <Sgeo_> And the Interface system in the OO is also like this, the class needs to consent
04:28:04 <Bike> oh, christ,i thought you were taking two minutes to type up an explanation of The Generics System New In Racket
04:28:23 <Sgeo_> oops, sorry
04:28:24 <Bike> anyway i meant like c++ sort of generics
04:28:34 * Sgeo_ doesn't know what those are like
04:28:44 <monqy> Sgeo_: didn't that other guy said the generics system was designed not to allow the stupid stuff you're doing
04:28:50 <Bike> well there aren't class objects so you certainly can't muck with them!
04:29:22 <monqy> Sgeo_: so what do you mean by it "is like this"????
04:29:36 <Bike> is like mutating weirdness
04:29:41 <Sgeo_> Is like the whole "thing implementing a generic needs to declare it"
04:29:49 <Bike> though i get the feeling we're not getting a balanced description? question marks here
04:30:04 <monqy> i get the feeling we're not getting a description at all
04:30:09 <Bike> yeah that also
04:31:17 <Sgeo_> Sorry, I'm not entirely certain of every mechanism of the generics stuff and the OO and interface stuff
04:33:36 <monqy> you seem to know enough about it to make wild statements about how it works / what use is telling us about it if you don't understand it well enough to clue us in on what the hell you're talking about
04:33:40 <monqy> "pick one"
04:34:03 * oerjan is reminded of the Expression Problem
04:34:42 <hagb4rd> basically it's about defining a contract between different classes or even complete systems. all parts agree on that contract to exchange data.. that's it
04:34:48 -!- DHeadshot has joined.
04:34:54 <hagb4rd> isn't it
04:35:30 <oerjan> http://en.wikipedia.org/wiki/Expression_problem
04:37:43 * Sgeo_ was vaguely under the impression that that didn't apply to dynamically typed languages
04:37:57 <Bike> says "static type safety" right there yo
04:38:16 <hagb4rd> so if everything works out fine a programmer just needs to care to satisfy the contract defined in the interface.. no need to care about how alien libs or classes work internally..
04:38:29 <Bike> ..
04:39:36 <Sgeo_> I googled for PLT Scheme expression problem
04:39:43 <Sgeo_> Something on the mailing list mentioned mixins
04:40:14 <hagb4rd> you should google for PLT scheme expression solution
04:43:09 -!- guestbot has joined.
04:47:35 <oerjan> Bike: i know but doing it without mutation seems to make it a problem for single-dispatch dynamic OO as well...
04:47:57 <Sgeo_> I always get implementation paralysis when I look at Scheme. Chicken Scheme or Racket, how can I decide?
04:48:06 <Sgeo_> (Yes, I know Racket doesn't really fit any Scheme standard)
04:48:41 <monqy> do you feel the same way when you look at haskell
04:48:52 <monqy> ghc or hugs?????
04:48:52 <Bike> oerjan: i'm not sure how the problem even makes sense with mutation, i mean, it explicitly says "new cases" &c
04:48:58 <Bike> hugs 4lyfe
04:48:59 <monqy> or uhc or jhc have you thought about that
04:49:05 <oerjan> monqy: not any more since hugs died :(
04:49:13 <Bike> hugs 4deth
04:49:19 <monqy> oerjan: thats part of the joke :]
04:49:59 <Sgeo_> The Haskell community is pretty centered around GHC. The Scheme community is very much not centered around any one implementation
04:53:05 <monqy> ok ok how about C
04:53:17 <monqy> or or or or or or or or or or or javascript
04:53:34 <Bike> javascript is different, instead of choosing an implementation you just fail to write for all them.
04:53:40 <monqy> that's the joke :(((((
04:53:49 <monqy> ok i'll try a new joke
04:53:59 <Bike> Are those chins, or...
04:54:53 <kmc> cross platform javascript is not that bad
04:55:47 <kmc> well it is very easy if you really just mean "javascript"
04:55:47 <monqy> server side javascript solutions => no need to write for multiple implementations???
04:55:58 <kmc> but if you also mean browser APIs, DOM, etc. then it is still not too bad
04:57:28 <hagb4rd> stop it kmc.. the guys try to agree on the least common denominator ..c and javascript is bad :P
04:58:03 <Bike> who said anything was bad? i'm just hear to fuck up jokes.
04:58:16 <kmc> you're just hear to fuck up spelling
04:58:23 <monqy> ooh i thought of a good one Sgeo_: do you get the implementation paralysis when you try to write your Assembly's
05:00:05 <oerjan> http://www.reddit.com/r/speling hth
05:02:21 <oerjan> more on topic, brainfuck and befunge might have implementation paralysis. so does malbolge, although for a completely different reason.
05:02:29 -!- augur_ has changed nick to augur.
05:02:47 <Sgeo_> Well, there's the fact that Scheme libraries tend to be highly unportable
05:02:57 <Sgeo_> Since there aren't many for pure R5RS
05:03:16 <Sgeo_> There's a bunch of stuff for Chicken Scheme, a bunch of separate stuff for Racket, etc
05:04:34 -!- Frooxius has quit (Read error: Operation timed out).
05:06:52 -!- asiekierka has quit (Excess Flood).
05:06:56 -!- DHeadshot has quit (Read error: Connection reset by peer).
05:06:58 -!- asiekierka has joined.
05:07:10 -!- DHeadshot has joined.
05:12:27 <kmc> that sucks
05:13:26 -!- Frooxius has joined.
05:28:18 -!- TeruFSX has quit (Ping timeout: 264 seconds).
05:55:36 -!- guestbot_ has joined.
05:56:56 <kmc> eodermdrome has implementation paralysis
05:57:58 -!- guestbot has quit (Ping timeout: 245 seconds).
05:59:02 -!- guestbot has joined.
05:59:18 <guestbot> !bfjoust stupidrush (+++++>------>++++++>)*3++>([(+)*11[-][+...]]->)*19[[-]]
05:59:21 <EgoBot> ​Score for guestbot_stupidrush: 34.6
06:00:14 <ais523> huh, not bad
06:01:16 <quintopia> hi guestbot
06:01:35 <quintopia> ais523: it used your advice of making six decoys
06:02:33 -!- guestbot_ has quit (Ping timeout: 245 seconds).
06:03:06 <ais523> quintopia: that's more than 6 decoys
06:03:10 <kmc> isn't it eight?
06:03:27 <quintopia> oh
06:03:32 <quintopia> thats a *3
06:03:34 <quintopia> whoops
06:04:04 <quintopia> !bfjoust stupidrush (+++++>------>++++++>)*3++>([(+)*11[-][+...]][++.+]->)*19[[-]]
06:04:07 <EgoBot> ​Score for quintopia_stupidrush: 31.8
06:04:11 <quintopia> haha
06:04:20 <tswett> I think I want to forsake set theories. I'm going to do all my mathematics in second-order Peano arithmetic with Henkin semantics.
06:04:26 <quintopia> !bfjoust stupidrush <
06:04:28 <EgoBot> ​Score for quintopia_stupidrush: 0.0
06:04:31 <tswett> The only things that exist are the natural numbers, and certain sets of natural numbers.
06:06:10 <tswett> You know what, let's call them "classes" instead of "sets". "Set" will mean a finite collection of natural numbers. If a collection is definable but infinite, it's a class.
06:06:12 <kmc> or 9 rather
06:08:02 <tswett> In fact, "set" is really just a synonym of "natural number". A natural number n is an element of a natural number S if and only if S divided by 2^n, rounded down, is odd.
06:08:20 <Bike> aristotlean logic is so old-hat, you can say classes are whatever without meaning classes exist!
06:12:26 -!- oerjan has quit (Quit: leaving).
06:14:16 <tswett> Rational numbers are number-level. Real numbers are class-level. As for sets of real numbers, TANST.
06:14:57 <tswett> So how do you do calculus? Easy: toss out all the non-continuous functions. A continuous function of real numbers can be represented as a set of natural numbers.
06:16:24 <tswett> Just represent it as a function Q -> R, which you can, in turn, represent as the set of all pairs (x, y) of rational numbers such that y < f(x).
06:51:48 -!- copumpkin has quit (Ping timeout: 248 seconds).
06:52:18 -!- copumpkin has joined.
06:56:41 -!- Nisstyre has joined.
07:30:03 -!- guestbot has quit (Ping timeout: 245 seconds).
07:35:52 -!- azaq23 has joined.
07:36:04 -!- azaq23 has quit (Client Quit).
07:38:58 <fizzie> The weird. This (desktop) computer has some kind of a built-in speaker inside.
07:39:42 <elliott> its friend.....
07:40:55 <fizzie> I'm not sure you understand. There is SOUND coming OUT OF IT.
07:41:43 <elliott> its friend............
07:42:25 <monqy> does the sound sound like beeps
07:42:31 <monqy> i disable pc speaker because gosh i hate it
07:42:40 <fizzie> It does not sound like beeps.
07:42:43 <fizzie> It sounds like sound.
07:42:48 <fizzie> I'm as confused as I was back when I got my SparcStation, ran mpg123 on it, and SOUND came OUT OF IT. (There's a speaker in that thing too.)
07:42:49 <monqy> does it sound like whirring
07:42:56 <monqy> disable fan, disable spinny discs
07:43:53 <fizzie> Well, I mean, it did stop when I closed the U-tube link. But the sound shouldn't have come out in the first place, because it's not got anything plugged in its sound holes.
07:44:00 <fizzie> (That sounds a bit dirty.)
07:44:47 <monqy> pretty sure it's fashion-illegal for a desk box to have onboard sound
07:44:49 <monqy> in bad taste
07:46:52 <fizzie> It's a Fujitsu machine.
07:46:57 <fizzie> Fujitsu something something something.
07:47:13 <fizzie> Fujitsu CELSIUS W520 POWER.
07:49:37 <Gregor> fizzie: I recently accidentally discovered that nvidia video cards come with sound cards that work over HDMI.
07:49:37 <lambdabot> Gregor: You have 1 new message. '/msg lambdabot @messages' to read it.
07:49:57 <Gregor> So if you plug it into an audio-capable monitor or TV, voila, sound.
07:50:08 <Gregor> Glad I didn't choose to watch porn as my first test of the video card.
07:50:24 <Gregor> Why is HackEgo crashing so much :(
07:51:13 -!- HackEgo has joined.
07:51:59 <fizzie> I think pretty much anything with a HDMI connector these days has a "sound card" (FSVO) in it. The onboard graphics of my home desktop do too.
07:52:13 <hagb4rd> `ls
07:52:39 <HackEgo> bin \ canary \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ lib \ luabuild \ luafilesystem-1.6.2-1.rockspec \ luafilesystem-1.6.2-1.src.rock \ luarocks.err \ luarocks.out \ paste \ penlight-1.0.0-1.rockspec \ penlight-1.0.0-1.src.rock \ quotes \ quotese \ robocop \ run \ share \
07:52:50 <hagb4rd> k.. so nothing got deleted
07:52:54 <hagb4rd> good
07:53:31 <fizzie> Some of that stuff perhaps ought to have gotten deleted, though.
07:55:02 <hagb4rd> `rm robocop
07:55:05 <HackEgo> No output.
08:13:07 <hagb4rd> hm..high resolution repdroduction documentation
08:13:46 -!- epicmonkey has joined.
08:22:09 -!- GreyKnight has joined.
08:22:23 <GreyKnight> Hi HackEgo!!!!!!
08:24:10 <GreyKnight> `botsnack
08:24:11 <HackEgo> ​:-D
08:25:34 <fizzie> `snackbot
08:25:35 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: snackbot: not found
08:25:37 * GreyKnight wonders if Sgeo_'s talk of "the Racketeers" means he is migrating languages again
08:26:59 -!- DHeadshot has quit (Read error: Connection reset by peer).
08:30:35 -!- DHeadshot has joined.
08:30:55 <GreyKnight> `quote
08:30:56 <HackEgo> 383) <ais523> Phantom_Hoover: nope, I removed . from the current directory
08:31:13 -!- ais523 has quit.
08:31:22 <GreyKnight> We were supposed to add some quotes? Better check the logs I guess
08:31:42 <GreyKnight> Alternatively I could eat breakfast
08:31:44 -!- epicmonkey has quit (Read error: Operation timed out).
08:32:28 <GreyKnight> Why does everyone keep quitting when I talk, it's quite rude!
08:33:21 <GreyKnight> Gregor: `gregorsnack
08:33:57 <elliott> `run rm -rf *
08:34:24 <HackEgo> No output.
08:34:31 <GreyKnight> onoz
08:34:32 <elliott> `ls
08:34:39 <HackEgo> bin \ canary \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ lib \ luabuild \ luafilesystem-1.6.2-1.rockspec \ luafilesystem-1.6.2-1.src.rock \ luarocks.err \ luarocks.out \ paste \ penlight-1.0.0-1.rockspec \ penlight-1.0.0-1.src.rock \ quotes \ quotese \ run \ share \ wisdom \
08:34:48 <elliott> looks like it MYSTERIOUSLY didn't work
08:36:05 <monqy> :o
08:36:53 * GreyKnight tidies up a bit
08:37:03 <GreyKnight> `ls
08:37:04 <HackEgo> bin \ canary \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ lib \ luabuild \ paste \ quotes \ quotese \ run \ share \ wisdom \ zalgo.hs
08:37:31 <monqy> `ls factor
08:37:33 <HackEgo> factor.image
08:37:40 <monqy> is this sgeo's doing
08:37:56 <GreyKnight> "probably"
08:39:51 <GreyKnight> `run echo $PATH
08:39:52 <HackEgo> ​/hackenv/bin:/opt/python27/bin:/opt/ghc/bin:/usr/bin:/bin
08:42:34 <GreyKnight> `welcome HackEgo
08:42:35 <HackEgo> HackEgo: 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.)
08:42:43 <GreyKnight> yay :>
08:42:45 -!- Bike has quit (Ping timeout: 248 seconds).
08:45:25 <GreyKnight> `? GreyKnight
08:45:27 <HackEgo> GreyKnight? ¯\(°_o)/¯
08:45:35 <fizzie> The Factor installation ran into file size limits or something, didn't it?
08:45:36 <GreyKnight> sadface
08:45:47 <GreyKnight> fizzie: I think so
08:46:06 <GreyKnight> factor.image is pretty large at any rate
08:46:28 <GreyKnight> (Basically a dump of the entire system state)
08:48:05 -!- DHeadshot has quit (Ping timeout: 248 seconds).
08:52:09 <GreyKnight> `? ¯\(°_o)/¯
08:52:11 <HackEgo> ​¯\(°_o)/¯? ¯\(°_o)/¯
08:52:25 <GreyKnight> Almost perfect
08:56:16 -!- Phantom_Hoover has joined.
08:59:07 <GreyKnight> `? Haskell
08:59:08 <HackEgo> Unbound implicit parameter (?haskell::Wisdom) \ arising from a use of implicit parameter `?haskell'
09:00:02 <GreyKnight> trufax
09:01:44 <hagb4rd> `run echo "AntiPattern: Intellectual Violence occurs when someone who understands a theory, technology, or buzzword uses this knowledge to intimidate others in a meeting situation. This may happen inadvertently due to the normal reticence of technical people to expose their ignorance." > wisdom/IntellecutalViolence
09:01:47 <HackEgo> No output.
09:02:23 <hagb4rd> `run mv wisdom/IntellecutalViolence wisdom/IntellectualViolence
09:02:27 <HackEgo> No output.
09:02:30 <GreyKnight> Example:
09:02:41 <GreyKnight> `? monad
09:02:42 <HackEgo> Monads are just monoids in the category of endofunctors.
09:07:20 <Phantom_Hoover> `rm wisdom/IntellectualViolence
09:07:23 <HackEgo> No output.
09:07:38 <Phantom_Hoover> I draw the line at letting hagb4rd add wisdom entries.
09:09:45 -!- GreyKnight has quit (Ping timeout: 240 seconds).
09:11:01 -!- Phantom__Hoover has joined.
09:12:28 -!- Phantom___Hoover has joined.
09:13:12 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
09:15:11 -!- Phantom__Hoover has quit (Ping timeout: 244 seconds).
09:15:16 <fizzie> `ls bin/No
09:15:17 <HackEgo> bin/No
09:15:18 <fizzie> Good, still there.
09:16:16 <hagb4rd> `cat bin/No
09:16:17 <HackEgo> ​#!/bin/sh
09:16:25 <fizzie> `No output.
09:16:27 <HackEgo> No output.
09:16:47 <fizzie> (I wondered about it a while ago until someone kindly explained it to me.)
09:17:08 -!- Phantom___Hoover has quit (Ping timeout: 252 seconds).
09:29:18 <hagb4rd> `run echo "DisagreeByDeleting is when a person disagrees with something and deletes it rather than posting an alternative idea alongside the item. See Also: IntellectualViolence" > wisdom/DisagreeByDeleting
09:29:21 <HackEgo> No output.
09:30:12 <fizzie> `run rm wisdom/DisagreeByDeleting # I don't agree
09:30:15 <HackEgo> No output.
09:30:37 <hagb4rd> i would have removed it anyway
09:32:56 -!- hagb4rd has quit (Quit: so long).
09:35:01 -!- augur_ has joined.
09:41:57 -!- epicmonkey has joined.
09:42:47 -!- Nisstyre has quit (*.net *.split).
09:42:47 -!- asiekierka has quit (*.net *.split).
09:42:48 -!- fungot has quit (*.net *.split).
09:42:48 -!- augur has quit (*.net *.split).
09:42:48 -!- Phantom_Hoover has joined.
09:45:14 -!- asiekierka_ has joined.
09:51:09 -!- Nisstyre has joined.
09:56:33 -!- FreeFull has quit.
10:00:03 <Sgeo_> http://xkcd.com/1158/
10:13:59 <Phantom_Hoover> the bowling ball analogy is so terrible
10:16:19 <Phantom_Hoover> it's basically the perfect way to teach someone some of the words used in general relativity whilst completely misleading them on what it's actually about
10:30:45 <Sgeo_> http://xkcd.com/895/
10:31:28 <Sgeo_> http://eddiecurrent.blogspot.com/2012/03/gravity-is-not-rubber-sheet.html
10:31:54 <Phantom_Hoover> I think it might be better just to say "yeah this is complicated and hard to understand" until you can properly explain what it means for space to be curved?
10:41:25 -!- asiekierka_ has quit (Excess Flood).
10:46:13 -!- asiekierka has joined.
10:58:16 <Jafet> @quote analogy
10:58:16 <lambdabot> lilac says: * lilac looks forward to Cale explaining category theory by analogy to Call of Duty
10:58:24 <Jafet> @quote analogies
10:58:24 <lambdabot> mmorrow says: a functor is like an analogy between two analogies
11:37:33 <FireFly> `run ls -l canary
11:37:35 <HackEgo> ​-rw-r--r-- 1 5000 5000 0 Jan 9 08:34 canary
12:38:02 -!- monqy has quit (Quit: hello).
12:42:30 <Phantom_Hoover> `run rm canary
12:42:32 <HackEgo> No output.
12:42:41 <Phantom_Hoover> `run ls -l canary
12:42:44 <HackEgo> ​-rw-r--r-- 1 5000 5000 0 Jan 9 12:42 canary
12:43:55 -!- Nisstyre has quit (Ping timeout: 244 seconds).
12:44:43 <fizzie> `run cat < canary
12:44:44 <HackEgo> No output.
12:44:54 <fizzie> (The "<" is to evoke the action of eating.)
12:46:25 -!- Arc_Koen has joined.
12:50:59 <Phantom_Hoover> `run echo tweet > canary
12:51:03 <HackEgo> No output.
12:51:06 <Phantom_Hoover> `run cat canary
12:51:07 <HackEgo> tweet
12:52:09 -!- hagb4rd has joined.
12:53:09 <hagb4rd> you don't need to `run unless you have more than 1 argument
12:53:32 <hagb4rd> `cat canary
12:53:33 <HackEgo> tweet
12:54:09 <fizzie> But cats often run.
12:54:56 <fizzie> `words --cat 10
12:55:00 <HackEgo> amameneïssol arrejareu intèriquina eixonant execres esbiadesen cats encipalegues acaderésseu pacalfarbono
12:55:00 <hagb4rd> hm..right
12:55:50 <fizzie> Those must be some foreign cats that speak like that.
12:55:56 -!- GreyKnight has joined.
12:58:29 -!- Nisstyre has joined.
13:03:30 -!- nooodl has joined.
13:03:54 -!- GreyKnight has quit (Read error: Operation timed out).
13:14:44 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
13:22:54 <hagb4rd> `url bin/words
13:22:55 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/words
13:23:26 -!- GreyKnight has joined.
13:23:45 <GreyKnight> fizzie: one of the words was "cats" interestingly
13:25:08 <Sgeo_> Oh dear God I think I got #RubyOnRails talking philosophy
13:28:10 -!- guestbot has joined.
13:31:11 <GreyKnight> Sgeo_: what have you done D:
13:33:10 <hagb4rd> speak the truth
13:33:18 <hagb4rd> (but ride a fast horse)
13:33:35 <Sgeo_> I'm trying to argue that there is such a thing as absolute reality
13:33:42 <Sgeo_> And they're talking about the theory of relativity
13:33:57 <GreyKnight> so *everybody's* off-topic, got it :-)
13:35:54 <GreyKnight> tell them to fix their bugs instead ;-)
13:42:33 -!- AnotherTest has joined.
13:58:51 -!- nooodl_ has joined.
13:59:22 -!- Nisstyre has quit (Ping timeout: 256 seconds).
14:01:25 -!- nooodl has quit (Ping timeout: 260 seconds).
14:11:56 -!- Nisstyre has joined.
14:18:27 -!- sivoais has quit (Ping timeout: 260 seconds).
14:28:59 -!- copumpkin has quit (Ping timeout: 252 seconds).
14:29:17 -!- Nisstyre has quit (Ping timeout: 255 seconds).
14:29:30 -!- copumpkin has joined.
14:30:45 -!- epicmonkey has quit (Ping timeout: 276 seconds).
14:43:50 -!- Nisstyre has joined.
14:44:55 <FireFly> `words --help
14:44:57 <HackEgo> Usage: words [-dhNo] [DATASETS...] [NUMBER_OF_WORDS] \ \ options: \ -l, --list list valid datasets \ -d, --debug debugging output \ -N, --dont-normalize don't normalize frequencies when combining \ multiple Markov models; this has the effect \ of making larger dataset
14:45:09 -!- sivoais has joined.
14:45:34 <FireFly> `words -l
14:45:36 <HackEgo> valid datasets: --eng-1M --eng-all --eng-fiction --eng-gb --eng-us --french --german --hebrew --russian --spanish --irish --german-medical --bulgarian --catalan --swedish --brazilian --canadian-english-insane --manx --italian --ogerman --portuguese --polish --gaelic --finnish --norwegian --esolangs \ default: --eng-1M
14:46:28 <fizzie> (It's the --catalan.)
14:46:34 <fizzie> (The cat language.)
14:48:47 <FireFly> I assumed that was the case
14:49:00 <FireFly> I wonder why that doesn't need to be `run though
14:50:41 -!- FreeFull has joined.
14:59:59 -!- Nisstyre has quit (Ping timeout: 260 seconds).
15:03:02 -!- carado has joined.
15:10:05 <GreyKnight> `which words
15:10:07 <HackEgo> ​/hackenv/bin/words
15:10:11 <GreyKnight> `file /hackenv/bin/words
15:10:13 <HackEgo> ​/hackenv/bin/words: a /usr/bin/perl script text executable
15:10:25 <GreyKnight> I guess perl is doing some magic to make it work
15:10:33 <elliott> what magic
15:10:37 <GreyKnight> `run cat $(which words) | paste
15:10:40 <elliott> or
15:10:41 <GreyKnight> shrug
15:10:41 <elliott> what's "it"
15:10:42 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.17694
15:10:49 <elliott> i don't see any abnormal behaviour
15:10:51 <GreyKnight> `words --cat 10
15:10:53 <HackEgo> devellació descoprot compar persondules rucarem estanca pallí rusuc arroqui mullotà
15:11:11 <GreyKnight> it can identify --cat and 10 as separate arguments without a run
15:11:24 <elliott> oh, right, that
15:11:27 <elliott> that's part of the program itself IIRC
15:11:40 <GreyKnight> that's what I said :v
15:11:54 <GreyKnight> s/perl/the perl code/
15:12:46 <GreyKnight> @ARGV = split /\s+/, $ARGV[0] if @ARGV == 1; # this looks like it
15:12:46 <lambdabot> Unknown command, try @list
15:12:51 <GreyKnight> shush dear
15:15:01 -!- Nisstyre has joined.
15:16:09 <fizzie> Yes, it has a manual splitting in case of a single argument.
15:16:25 <fizzie> Oh, I suppose that was already well-enough established.
15:16:31 <fizzie> Well uh your mom.
15:16:48 <fizzie> `run words --finnish 10 # it does need run when you want to make pithy comments like this one
15:16:51 <HackEgo> kässäännekstia sykkiämme haljaamuvuutta erästämilta ruhtaasiatyypilvo huikeämpänäsi kirichlettamme jylitsemiin syventämmästänne piamme
15:16:51 <GreyKnight> but what does it do if you call it without run ?????
15:17:09 <fizzie> `run words '--finnish 10' # oh no IT'S ALL WRONG
15:17:11 <HackEgo> luopeutuvana puhdettamiasi vällensa näköisempi lanillanne aihtyessamme muodeerinostetykypsyklisi arkimaan kaansa istamme
15:17:23 <fizzie> But I wanted the "finnish 10" wordset.
15:17:35 <GreyKnight> hm you managed to say the one line that would make mine less witty
15:17:52 * GreyKnight assumes the second list isn't Finnish
15:17:54 <GreyKnight> oh
15:17:55 <GreyKnight> right
15:18:04 <GreyKnight> my parser is broken
15:43:22 -!- epicmonkey has joined.
15:48:08 <hagb4rd> <GreyKnight>but what does it do if you call it without run ????? <-- afaik it passes the whole string as a single argument (as if passed in quotation marks).. so actually the # is not evaluated as a comment
15:48:41 <hagb4rd> correct me if i am wrong please
15:54:19 <hagb4rd> `source
15:54:21 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: source: not found
15:55:17 <hagb4rd> `ls /home/hackbot/hackbot.hg/multibot_cmds/lib
15:55:18 <HackEgo> fetch \ limits \ revert \ sandbox
15:55:30 <hagb4rd> `ls /home/hackbot/hackbot.hg/multibot_cmds
15:55:31 <HackEgo> lib
15:55:49 <GreyKnight> hagb4rd: I had typed that before fizzie's preceding line (I was making a joke)
15:56:03 <hagb4rd> k
16:03:04 <GreyKnight> :k fix
16:03:05 <lambdabot> Not in scope: type variable `fix'
16:03:13 <GreyKnight> hmph
16:03:27 <GreyKnight> :k (:t fix)
16:03:28 <lambdabot> parse error on input `:'
16:03:31 <GreyKnight> \o/
16:04:28 * GreyKnight traps lambdabot in a forcefield ⌇⌇ λ ⌇⌇
16:05:18 <Sgeo_> :t fix
16:05:19 <lambdabot> (a -> a) -> a
16:05:25 <Sgeo_> :k (a -> a) -> a
16:05:26 <lambdabot> Not in scope: type variable `a'
16:05:26 <lambdabot> Not in scope: type variable `a'
16:05:26 <lambdabot> Not in scope: type variable `a'
16:05:38 <GreyKnight> lambdabot!!!
16:05:48 <Sgeo_> I imagine it would just be *
16:05:58 * GreyKnight sighs theatrically
16:05:58 <Sgeo_> :k (Int -> Int) -> Int
16:06:00 <lambdabot> *
16:06:15 <Sgeo_> Kinds are more for type constructors
16:06:17 <Sgeo_> :k Monad
16:06:18 <lambdabot> (* -> *) -> Constraint
16:06:26 <Sgeo_> Constraint?
16:06:35 <GreyKnight> Well that escalated quickly
16:08:04 <GreyKnight> I didn't even know :k could hold things other than * ( ) -> and er whatever the other ones are... # and % I think?
16:09:12 <kmc> # and ? and ??
16:09:14 <kmc> also (#)
16:09:17 <kmc> but they got renamed recently
16:09:49 <kmc> Sgeo_: constraints are things that can appear left of =>
16:09:50 <shachaf> Did you hear about our great new type?
16:10:03 <shachaf> newtype Bizarre p a b s t = Bizarre { unBizarre :: p t s -> p b a }
16:10:19 <kmc> newtype BlueRibbon p a b s t
16:10:29 <kmc> shachaf: so what's it for
16:10:37 <Sgeo_> Are there any uses for kinds like (* -> *) -> (* -> *) -> * -> *
16:10:46 <kmc> probably
16:10:48 <kmc> what kind of question is that
16:10:49 <Sgeo_> Are type constructors of that kind writable?
16:10:53 <kmc> yes
16:11:05 * Sgeo_ 's mind twists a little bit
16:11:06 <kmc> data Foo a b x = Foo (a x) (b x)
16:11:30 -!- nooodl_ has quit (Ping timeout: 260 seconds).
16:11:48 <kmc> Sgeo_: that Constraint stuff was added in recent GHC; now typeclass constraints are type-like things and can be manipulated with the other type machinery
16:12:15 <kmc> so you can have things that are polymorphic over various constraints, type families that produce constraints, etc
16:12:23 <kmc> it's basically off the chain
16:12:29 <shachaf> kmc: Making opposite lenses.
16:12:51 <shachaf> A profunctor lens is representable as either (p a b -> p s t) or as (q t s -> q b a)
16:14:29 <shachaf> This type, along with some instances, lets you turn any lens around and use it in the opposite way.
16:16:46 <kmc> you can't quite say "the kind of (a -> a) -> a is *" because you need to know that a has kind *
16:17:50 <shachaf> But (->)'s kind is * -> * -> *
16:17:53 <elliott> kmc: It has to be.
16:18:00 <elliott> Except for the unboxed stuff, I guess.
16:18:02 <shachaf> Admittedly there's some sort of subkinding thing going on here?
16:18:04 <elliott> But (->) always ends up with *.
16:18:06 <kmc> if (a -> a) -> a has a kind at all, its kind is *
16:18:27 * elliott is comfortable saying the type of ():xs is [()]
16:18:28 <shachaf> OK, sure.
16:18:35 <kmc> shrug
16:18:39 <GreyKnight> "<kmc> it's basically off the chain" <-- you spelt "rocker" incorrectly there hth
16:19:03 <GreyKnight> shachaf: you're making a concave lens? :-3
16:19:15 <shachaf> elliott: How's that name?
16:19:20 <shachaf> Concave and convex lenses?
16:19:25 <elliott> shachaf: How about no?
16:19:47 <GreyKnight> sadface
16:20:53 <shachaf> elliott: How do you make it work with the f, anyway?
16:21:05 <shachaf> elliott: I bet answering my question about representability would help!
16:25:28 <kmc> "...exfiltrating data from the phone by toggling a GPIO pin on the embedded CPU at radio frequencies."
16:25:31 <kmc> :O
16:25:56 <ion> Sounds interesting. URL?
16:26:05 <kmc> http://ossmann.blogspot.com/2013/01/funtenna.html
16:26:10 <ion> Thankes.
16:26:21 <kmc> this was for the worm that takes over all cisco phones in an organization and uses them to spy on you
16:28:22 <GreyKnight> Batman eat your heart out
16:28:32 <GreyKnight> I like how they call it a "funtenna"
16:30:51 <GreyKnight> light-hearted
16:33:52 -!- AnotherTest has quit (Quit: Leaving.).
16:39:27 -!- Bike has joined.
16:56:27 -!- GreyKnight has quit (Quit: -->).
17:10:34 <mroman> Was there actually a flaw I missing in the stuff I said yesterday?
17:22:06 -!- Phantom_Hoover has joined.
17:43:55 <fizzie> I don't like people who try to sell me things I don't want, when I try to get some simple thing done w.r.t. their company. :/
17:47:05 <shachaf> fizzie: Well, if you just stopped not wanting the things, that would solve everything, wouldn't it?
17:47:12 <Sgeo_> How important is pattern matching to the actor model?
17:47:41 <Sgeo_> Because in rudybot, I saw thread level mailboxes be used but didn't see a way to conform that the message was sent by who the thread was expecting it to be sent by
17:47:53 <Sgeo_> So I made a patch to have it send a new async channel instead
18:14:33 -!- Vorpal has joined.
18:40:17 <Sgeo_> Ok, so which of these people do I call to see if there's any way to speak to an advisor
18:40:33 <Sgeo_> "Chairperson [of CS program I guess]"
18:40:39 <Sgeo_> "Graduate Program Director for M.S. and Ph.D. Programs in Computer Science "
18:40:45 <Sgeo_> "Graduate Program Administrator for M.S. and Ph.D. Programs in Computer Science "
18:50:54 <coppro> probably the director
18:54:38 -!- david_werecat has joined.
18:56:05 <Sgeo_> Thank you, I'll try it
19:01:49 -!- Taneb has joined.
19:05:13 <coppro> elliott: ping
19:05:38 <david_werecat> !bfjoust behemoth >->++>>>(+)*38>(+)*4<<(-)*24<(+)*12<(-)*8<(+)*5<++>(+)*32>(-)*24>(+)*12>(-)*8>(+)*5<<<<(+)*16>(-)*22>(+)*20>(-)*8>(+)*0>>>>>((-[+[+[+[+[+[+[+[--------[-[-[-[-[(-)*38[+]>]+>{}]]]]]]]]]]]]+++>)%21)*21
19:05:44 <EgoBot> ​Score for david_werecat_behemoth: 52.1
19:05:52 <Taneb> david_werecat, haven't seen you in a while!
19:05:57 <Taneb> How're you doing?
19:06:09 <david_werecat> Things have been going well.
19:06:14 <david_werecat> Been busy
19:06:50 <david_werecat> So, what's new in #esoteric?
19:07:23 <Taneb> Fueue is implemented in three languages
19:07:51 <Taneb> Phantom_Hoover has a Tumblr
19:08:01 <Taneb> Which he uses to complain about brainfuck derivatives
19:08:34 <david_werecat> Speaking of brainfuck derivitaves...
19:08:36 <david_werecat> !bfjoust golf ++(>)*9([+++[-]>]>)*21
19:08:44 <EgoBot> ​Score for david_werecat_golf: 30.8
19:08:50 <Fiora> it has so few posts! we should clearly get him to pad it out with some homestuck.
19:08:52 <Taneb> Phantom_Hoover, does BF Joust count?
19:09:04 <Phantom_Hoover> yes
19:09:07 <Phantom_Hoover> it makes me so angry
19:09:16 <Phantom_Hoover> if only i had a means of expressing my rage
19:09:31 <Phantom_Hoover> Fiora, homestuck-based brainfuck derivatives?
19:09:33 <Taneb> Fiora, I hear he posts loads of Homestuck on a sideblog, pretending to be me
19:09:52 <Bike> homefuck is probably already the name of a few dozen pornos, though
19:10:09 <Taneb> http://homefuck.tumblr.com
19:10:12 <Taneb> Who dares investigate
19:10:21 <Bike> Moved to MuelinRouge
19:10:37 <Taneb> Aw man, that's lame
19:10:43 <Taneb> http://homesuck.tumblr.com
19:10:44 <Taneb> Who dares investigate
19:10:51 <coppro> nope
19:11:35 <Bike> poodle aerobics
19:11:51 <Bike> which is weird, because the fullpage flash made me expect meatspin
19:12:00 <Taneb> That's the problem with Tumblr
19:12:11 <Taneb> All the porn titles are taken by non-porn people
19:12:35 <coppro> `addquote <Taneb> That's the problem with Tumblr <Taneb> All the porn titles are taken by non-porn people
19:12:45 <HackEgo> 902) <Taneb> That's the problem with Tumblr <Taneb> All the porn titles are taken by non-porn people
19:12:49 <Taneb> Hey, is HackEgo back?
19:13:20 <Taneb> HackEgo AND david_werecat have returned: we need itidus20's opinion on this
19:14:07 <Phantom_Hoover> on the topic of porn
19:14:14 <Phantom_Hoover> i'm fairly sure farscape counts as it now
19:14:42 -!- ais523 has joined.
19:17:08 <hagb4rd> `run echo "high resolution documentation of reproduction" > wisdom/porn
19:17:42 <Phantom_Hoover> `run rm wisdom/porn
19:17:44 <HackEgo> rm: cannot remove `wisdom/porn': No such file or directory
19:17:50 <hagb4rd> haha
19:18:02 <Phantom_Hoover> so did someone block hagb4rd from it or what
19:18:09 <Bike> he used a leading space.
19:18:11 <Taneb> He had a space
19:18:13 <Bike> `? hagb4rd
19:18:14 <hagb4rd> yes your ego
19:18:15 <HackEgo> hagb4rd? ¯\(°_o)/¯
19:18:21 <Phantom_Hoover> dammit
19:18:31 -!- monqy has joined.
19:18:34 <Taneb> `learn hagb4rd is one spacey fellow. Spaaaaaaaaaaaaaaace.
19:18:38 <HackEgo> I knew that.
19:18:47 <Bike> `? Taneb
19:18:49 <HackEgo> Taneb is not elliott, no matter who you ask. He also isn't a rabbi although he has pretended in the past.
19:18:57 <Phantom_Hoover> `? Ngevd
19:19:01 <HackEgo> ​aj$_IKФbm4yj \ 4ܓ+J63`x}:N2`,TߞrU%K0sy$KO' \ vA&}L`P p.)T)Wowz2oSn^7E.Ӯ owlU-?twXKI\KɼCoU"~T.N#e(S+a.zu7>.?uȊO=`O!%_T.DzV"d}XPj"£ӭTYoyU=YJfV?1AhGH.]`fe߃xtp`
19:19:02 <Bike> are you a sufi?
19:19:14 <Taneb> I... am an ACT-or
19:20:10 <shachaf> `? hi
19:20:13 <HackEgo> hi? ¯\(°_o)/¯
19:20:36 <hagb4rd> ow bike.. you know about sufis?
19:20:54 <Bike> "ow"? does that pain you?
19:21:02 <hagb4rd> erm. no
19:21:14 <hagb4rd> it's just pronounec differently in german
19:21:15 <Bike> then why would you say "ow".
19:21:26 <hagb4rd> because i need to learn from you
19:21:26 <quintopia> HackEgo is back! and spewing random garbage! hurray!
19:22:00 <hagb4rd> bike: so how do you express the feeling of surprise?
19:22:05 <Taneb> quintopia, nah, that's just the only adequate way of describing Ngevd
19:22:17 <Bike> "wow", "huh", "gosh", "my stars and garters"
19:22:45 <hagb4rd> great. or are sufis just the guys flying planes in two towers?
19:22:53 <Fiora> Bike: didn't you comment the other day that you absorbed gosh from me?
19:23:38 <Bike> hagb4rd: what, no they're not
19:23:41 <Taneb> Golly, what an extraordinary happenstance
19:23:49 <Bike> Fiora: probably, since i did and all
19:24:05 <Fiora> sorry, I was just checking my memory
19:24:10 <hagb4rd> bike: i learned a little about sufis from the writing of robert anton wilson
19:24:15 <hagb4rd> +s
19:24:44 <Bike> RAW's kind of full of crap often, you should try actual academics, or - gasp - actual sufis
19:24:50 <hagb4rd> actually it was cosmic trigger. great book. one of my favourites
19:25:41 <hagb4rd> give me an author
19:25:45 <hagb4rd> or die in pain
19:26:00 <Bike> that's not very nice.
19:26:53 <hagb4rd> please
19:26:55 <Bike> but, i don't know that much about sufism particularly, just that it's a mystic/esoteric muslim tradition.
19:27:08 <Bike> http://en.wikipedia.org/wiki/Sufism#Modern.2Fcontemporary_Sufi_scholars though, conveniently enough....
19:27:17 <hagb4rd> oh yes the wiki article
19:27:23 <hagb4rd> i should've known
19:33:21 <tswett> `run echo $(echo foo)
19:33:22 <HackEgo> foo
19:34:31 -!- GreyKnight has joined.
19:35:29 -!- guestbot has quit (Ping timeout: 245 seconds).
19:37:28 -!- atriq has joined.
19:38:15 <GreyKnight> `addquote <fizzie> GreyKnight: And Gregor itself is kind of a probability distribution spread all over the globe.
19:38:18 <HackEgo> 903) <fizzie> GreyKnight: And Gregor itself is kind of a probability distribution spread all over the globe.
19:38:21 -!- Taneb has quit (Disconnected by services).
19:38:26 -!- atriq has changed nick to Taneb.
19:38:58 <Taneb> Is that, the Globe as in the pub in Hexham
19:39:09 <GreyKnight> `addquote <hagb4rd> what is this set? sounds like shakespear <fizzie> Yes, that's what people often say about Chrono Trigger.
19:39:13 <HackEgo> 904) <hagb4rd> what is this set? sounds like shakespear <fizzie> Yes, that's what people often say about Chrono Trigger.
19:40:09 -!- david_werecat has quit (Ping timeout: 276 seconds).
19:43:09 -!- GreyKnight has quit (Remote host closed the connection).
19:45:18 -!- nooodl_ has joined.
20:10:40 -!- Nisstyre has quit (Ping timeout: 260 seconds).
20:14:10 <Taneb> Fiora, what did you make of the recent Homestuck update
20:16:38 <coppro> Taneb: what's *not* to make of it
20:17:23 <Taneb> Sense
20:21:39 <Phantom_Hoover> oh man i need to pay attention to homestuck
20:22:31 <Fiora> Taneb: http://fioraaeterna.tumblr.com/post/40102764299/
20:22:39 <Fiora> and http://fioraaeterna.tumblr.com/post/40058507475/
20:23:45 <Phantom_Hoover> maybe i can leave homestuck on the backburner for a while longer
20:23:54 <Taneb> Phantom_Hoover, elliott took that path
20:23:59 <Taneb> It didn't end prettily
20:24:17 <Phantom_Hoover> how did it end
20:24:26 <Bike> on sgeo's dread List.
20:24:31 <Fiora> I don't understand why people were fussing over the update so much though <_<; this didn't seem particularly insane to me as updates go I guess?
20:24:51 <Taneb> Did...
20:24:55 <Taneb> Did you watch the flash
20:24:57 <Fiora> yes
20:25:21 <Fiora> rainbows~
20:25:54 <Taneb> It's probably the most doesn't-make-sense-out-of-context page in Homestuck
20:25:58 -!- Nisstyre has joined.
20:26:54 <Fiora> I'm not sure, there's a looooot of those
20:26:55 <Fiora> http://www.mspaintadventures.com/?s=6&p=006619
20:27:05 <Fiora> and often those arelike, the most wonderful panels <3
20:27:32 <Taneb> http://www.mspaintadventures.com/?s=6&p=003158
20:27:54 <Fiora> http://www.mspaintadventures.com/?s=6&p=pony this one?
20:28:09 <Taneb> http://www.mspaintadventures.com/?s=6&p=pony2 more so
20:28:18 <Fiora> wait, there's another? @_@
20:28:31 <Phantom_Hoover> which one has the sexy neighs
20:28:55 <Fiora> ohhhh the one with roxy
20:29:23 <Fiora> http://www.mspaintadventures.com/?s=6&p=007555 this one too?
20:30:22 <Taneb> I think "every damn page of Homestuck, Problem Sleuth, Bard Quest, and Jailbreak" would work
20:35:30 <kmc> wheeee used pdb (the python debugger) for the first time
20:35:33 <kmc> it does in fact work
20:41:28 -!- Nisstyre-laptop has joined.
20:48:34 <shachaf> I've only ever used it in the form "import pdb; pdb.set_trace()"
20:48:45 <shachaf> But it works nicely.
20:55:16 -!- oerjan has joined.
20:55:57 -!- Nisstyre-laptop has quit (Remote host closed the connection).
21:05:38 -!- jix has quit (Ping timeout: 255 seconds).
21:06:29 <tswett> Hm. How about an esoteric programming language where every component of your program has a temperature. When components interact, temperature is transferred from the hotter one to the colder one.
21:06:33 <tswett> If a component gets too hot or too cold, it malfunctions.
21:06:36 <tswett> Program components get hotter as they are used.
21:08:33 <Taneb> And cool with disuse?
21:09:22 <tswett> Maybe there's just one specific component that coolls constantly.
21:09:39 <Bike> what if components just get more and more inaccurate as they heat, instead of having it be all or nothing?
21:10:21 <tswett> That would be nice.
21:10:26 <Fiora> I wonder how that inaccuracy would be handled. like, arithmetic erorr, or bit errors?
21:10:41 <tswett> Although I feel like maybe there should be a temperature range in which there are no errors at all.
21:10:43 <Fiora> maybe you could have, like, each part of the ALU be a component, and the hotter it is, the greater a chance of a bit flip
21:10:55 <Fiora> and the interpreter simulates the ALU so the bit flips can happen at any stage
21:11:20 <Taneb> tswett, and each component has a different tolerance
21:11:24 <tswett> If the ALU is too hot, bits will start flipping randomly. If the ALU is too cold, bits will randomly fail to flip.
21:11:37 <Fiora> that seems a little bit less physically accurate XD
21:11:40 <Bike> Fiora: i'm thinking of that von neumann paper about computing with inaccurate components. iirc they were analog but depending on the type of digital component that could be easy to figure out, like... oh there tswett goes.
21:11:53 <Bike> i was thinking something rate-oriented would start fucking up the rate, etc
21:12:04 <Fiora> analog seems like it'd fail more gracefully
21:12:17 <Fiora> whereas random bit flips could really do like basically anything
21:12:35 -!- Nisstyre has quit (Ping timeout: 240 seconds).
21:12:49 <Taneb> There haven't been many esolangs designed by a group of people
21:12:57 <Taneb> The only one that springs to mind is Wierd
21:13:15 <Bike> there seem to have been several designed primarily by one person, with "helpful" ideas thrown in by stooges on #esoteric.
21:14:09 -!- Phantom_Hoover has quit (Read error: Operation timed out).
21:14:13 <Taneb> And then there was that one that definitely isn't an acronym
21:14:27 -!- oerjan has quit (Quit: leaving).
21:15:10 <Taneb> Which didn't get very far
21:15:22 <Taneb> And it's successor, ABCDEF...G, which get even less far
21:23:40 -!- monqy has quit (Quit: hello).
21:28:34 -!- Nisstyre has joined.
21:29:08 -!- Phantom_Hoover has joined.
21:32:27 -!- impomatic has joined.
22:08:13 -!- Taneb has quit (Quit: Leaving).
22:08:21 -!- Vorpal has quit (Ping timeout: 276 seconds).
22:08:54 <coppro> elliott: pm me you waste of flesh
22:11:11 -!- carado has quit (Ping timeout: 246 seconds).
22:12:40 -!- oerjan has joined.
22:26:36 <oerjan> `rm -r -f *
22:26:38 <HackEgo> rm: invalid option -- ' ' \ Try `rm --help' for more information.
22:26:44 <oerjan> `run rm -r -f *
22:27:10 <oerjan> `ls
22:27:13 <HackEgo> No output.
22:27:23 <HackEgo> bin \ canary \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ lib \ luabuild \ paste \ quotes \ quotese \ run \ share \ wisdom \ zalgo.hs
22:27:38 <oerjan> FreeFull: OK i guess that's not what crashes it :P
22:28:05 <oerjan> by itself, at least
22:29:25 <oerjan> `run allquotes | tail -1
22:29:26 <HackEgo> 904) <hagb4rd> what is this set? sounds like shakespear <fizzie> Yes, that's what people often say about Chrono Trigger.
22:30:50 <oerjan> <shachaf> I guess oerjan (helloerjan!) will logread this later and add quotes? <-- GreyKnight stole my job!
22:31:36 <fizzie> `run shred --force --iterations=10 --zero --remove canary # maybe this'll finally kill it
22:31:38 <shachaf> helloerjan
22:31:39 <HackEgo> No output.
22:31:40 <fizzie> `run ls -l canary
22:31:44 <HackEgo> ​-rw-r--r-- 1 5000 5000 6 Jan 9 22:31 canary
22:31:45 <fizzie> :(
22:31:57 <shachaf> oerjan: Do you know what a cocategory would be in Haskell?
22:32:00 <shachaf> monqy: Or you.
22:32:08 <shachaf> I have: (_u :: forall p t s x. p t s -> Either (p t x) (p x s))
22:32:18 <shachaf> (_u :: forall p x. p x x -> ?)
22:32:26 <shachaf> Where ? is either Void or (p b a)
22:32:56 <oerjan> i thought category was a self-dual concept.
22:33:12 <shachaf> Well, this looks like coidentity and cocompsition.
22:33:14 <shachaf> Or something.
22:33:41 <kmc> heh, cute
22:33:54 <shachaf> Also I didn't invent these operations, they arose naturally.
22:33:58 <shachaf> So they must mean something?!
22:34:01 <oerjan> ooh
22:35:41 <oerjan> why not ? = (), btw
22:35:58 <shachaf> Because Void is the dual of ()
22:36:07 <shachaf> An operation :: p a a -> () wouldn't do you very much good.
22:36:09 <shachaf> You already have ()
22:36:39 <oerjan> but basically with Void you are saying that there cannot be any p x x 'es
22:36:56 <shachaf> Right.
22:37:15 <oerjan> shachaf: perhaps instead of the last you should have duals of source and target identities, those are sometimes used when doing categories without objects, i think
22:37:30 <shachaf> ?
22:37:53 <shachaf> These types come about naturally when you try to make an instance Category (Bizarre p a b)
22:37:58 <oerjan> p x x -> p x b _and_ p x x -> p a x
22:38:26 <shachaf> (By the way it's p b a, not p a b.)
22:38:31 <oerjan> OKAY
22:38:42 -!- jix has joined.
22:38:54 <shachaf> Anyway, those look like reasonable functions, but they're not the functions I'm dealing with here. :-)
22:40:57 <oerjan> `? monad tutorial
22:40:58 <HackEgo> Think of a monad as a spacesuite full of nuclear waste in the ocean next to a container of apples. now, you can't put oranges in the space suite or the nucelar waste falls in the ocean, but the apples are carried around anyway, and you just take what you need.
22:42:13 <FreeFull> oerjan: Ok
22:42:58 <oerjan> `? Sgeo
22:43:03 <HackEgo> Sgeo is a language nomad. He invented Metaplace sex.
22:43:35 <oerjan> `learn Sgeo is a language nomad. (Not to be confused with a language monad.) He invented Metaplace sex.
22:43:56 <HackEgo> I knew that.
22:44:44 <olsner> `? olsner
22:44:46 <HackEgo> olsner seems to exist at least.
22:44:50 <olsner> thanks
22:45:29 -!- ais523 has quit.
22:45:55 <oerjan> @tell <GreyKnight> Why does everyone keep quitting when I talk, it's quite rude! <-- WELL IF YOU WANT AN EXPLANATION YOU SHOULD BE HERE WHEN WE JOIN. SHEESH.
22:45:55 <lambdabot> Consider it noted.
22:48:54 <shachaf> oerjan: When <GreyKnight> manages to overcome the nick restrictions and join IRC, I'm sure they'll be very confused.
22:49:25 <oerjan> there are nick restrictions?
22:50:06 <shachaf> Yes, your nick can't have < or >
22:50:30 <oerjan> @tell GreyKnight <GreyKnight> Why does everyone keep quitting when I talk, it's quite rude! <-- WELL IF YOU WANT AN EXPLANATION YOU SHOULD BE HERE WHEN WE JOIN. SHEESH.
22:50:30 <lambdabot> Consider it noted.
22:54:57 <oerjan> `run ls -l canary
22:54:58 <HackEgo> ​-rw-r--r-- 1 5000 5000 6 Jan 9 22:43 canary
22:55:13 <oerjan> `rm canary
22:55:16 <HackEgo> No output.
22:55:17 <oerjan> `run ls -l canary
22:55:21 <HackEgo> ​-rw-r--r-- 1 5000 5000 6 Jan 9 22:55 canary
22:55:38 <oerjan> `run ls -l canary
22:55:39 <HackEgo> ​-rw-r--r-- 1 5000 5000 6 Jan 9 22:55 canary
22:56:17 <oerjan> elliott: if the commit is never made when canary is removed, why would the modification date change...
22:56:39 <oerjan> oh hm wait
22:56:43 <oerjan> `run ls -l canary
22:56:44 <HackEgo> ​-rw-r--r-- 1 5000 5000 6 Jan 9 22:55 canary
22:56:51 <oerjan> `ls
22:56:53 <HackEgo> bin \ canary \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ lib \ luabuild \ paste \ quotes \ quotese \ run \ share \ wisdom \ zalgo.hs
22:57:02 <oerjan> `touch test
22:57:05 <HackEgo> No output.
22:57:12 <oerjan> `run ls -l canary
22:57:14 <HackEgo> ​-rw-r--r-- 1 5000 5000 6 Jan 9 22:55 canary
22:57:23 <oerjan> `run echo test >test
22:57:26 <HackEgo> No output.
22:57:30 <oerjan> `run ls -l canary
22:57:31 <HackEgo> ​-rw-r--r-- 1 5000 5000 6 Jan 9 22:55 canary
22:57:39 <oerjan> `ls test
22:57:40 <HackEgo> test
22:57:53 <oerjan> `run rm -f *
22:57:56 <HackEgo> rm: cannot remove `bin': Is a directory \ rm: cannot remove `etc': Is a directory \ rm: cannot remove `factor': Is a directory \ rm: cannot remove `ibin': Is a directory \ rm: cannot remove `interps': Is a directory \ rm: cannot remove `lib': Is a directory \ rm: cannot remove `luabuild': Is a directory \ rm: cannot remove `paste': Is a directory \
22:58:03 <oerjan> `run ls -l canary
22:58:07 <HackEgo> ​-rw-r--r-- 1 5000 5000 6 Jan 9 22:58 canary
22:58:18 * c00kiemon5ter absords all three cookies lying outside the forcefield placed by GreyKnight ⌇⌇ 8-D ⌇⌇ .. . .
22:59:11 <c00kiemon5ter> `run mv canary canary_foo
22:59:11 <oerjan> absording them? you, you ... monster!
22:59:13 <HackEgo> No output.
22:59:21 <c00kiemon5ter> `run ls -l canary
22:59:24 <HackEgo> ​-rw-r--r-- 1 5000 5000 6 Jan 9 22:59 canary
22:59:28 <oerjan> `ls
22:59:30 <HackEgo> bin \ canary \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ lib \ luabuild \ paste \ quotes \ quotese \ run \ share \ test \ wisdom \ zalgo.hs
22:59:42 <c00kiemon5ter> it didnt move
22:59:46 <oerjan> `run ls -l `test
22:59:47 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching ``' \ bash: -c: line 1: syntax error: unexpected end of file
22:59:50 <oerjan> `run ls -l test
22:59:51 <HackEgo> ​-rw-r--r-- 1 5000 5000 5 Jan 9 22:58 test
23:00:36 <c00kiemon5ter> `run sh -c rm canary
23:00:37 <HackEgo> rm: missing operand \ Try `rm --help' for more information.
23:01:12 <c00kiemon5ter> `run sh -c 'rm canary'
23:01:15 <HackEgo> No output.
23:01:19 <c00kiemon5ter> `run ls -l canary
23:01:23 <HackEgo> ​-rw-r--r-- 1 5000 5000 6 Jan 9 23:01 canary
23:02:04 <c00kiemon5ter> `run cat canary
23:02:05 <HackEgo> tweet
23:02:12 <c00kiemon5ter> `run echo foo > canary
23:02:15 <HackEgo> No output.
23:02:18 <c00kiemon5ter> `run cat canary
23:02:19 <HackEgo> foo
23:02:26 <c00kiemon5ter> aha
23:02:53 <c00kiemon5ter> `run find . -name "canary" -delete
23:02:58 <HackEgo> No output.
23:03:04 <c00kiemon5ter> `run ls -l canary
23:03:07 <HackEgo> ​-rw-r--r-- 1 5000 5000 4 Jan 9 23:03 canary
23:03:09 <c00kiemon5ter> ah
23:03:13 <oerjan> `cat canary
23:03:15 <HackEgo> foo
23:03:24 <oerjan> `rm canary
23:03:26 <HackEgo> No output.
23:03:28 <oerjan> `cat canary
23:03:31 <HackEgo> foo
23:03:36 <oerjan> `run ls -l canary
23:03:37 <HackEgo> ​-rw-r--r-- 1 5000 5000 4 Jan 9 23:03 canary
23:06:00 <c00kiemon5ter> `perl <<< 'unlink("canary");'
23:06:01 <HackEgo> Can't open perl script "<<< 'unlink("canary");'": No such file or directory
23:06:14 <c00kiemon5ter> `run perl <<< 'unlink("canary");'
23:06:17 <HackEgo> No output.
23:06:20 <c00kiemon5ter> `run ls -l canary
23:06:23 <HackEgo> ​-rw-r--r-- 1 5000 5000 4 Jan 9 23:06 canary
23:06:26 <c00kiemon5ter> <.<
23:06:49 <oerjan> `words --help
23:06:52 <HackEgo> Usage: words [-dhNo] [DATASETS...] [NUMBER_OF_WORDS] \ \ options: \ -l, --list list valid datasets \ -d, --debug debugging output \ -N, --dont-normalize don't normalize frequencies when combining \ multiple Markov models; this has the effect \ of making larger dataset
23:09:47 <FreeFull> `perl -e 'unlink("canary");'
23:09:48 <HackEgo> No output.
23:14:11 <c00kiemon5ter> `run ls -l canary
23:14:11 <HackEgo> ​-rw-r--r-- 1 5000 5000 4 Jan 9 23:06 canary
23:14:56 <oerjan> <Sgeo_> Are there any uses for kinds like (* -> *) -> (* -> *) -> * -> * <-- i think taking the product of two Applicatives has that type
23:15:46 <oerjan> *that kind
23:16:08 <olsner> there are uses for all kinds of kinds
23:16:51 <olsner> `quote
23:16:53 <HackEgo> 61) <fungot> i am sad ( of course by analogy) :) smileys)
23:16:54 <olsner> `quote kind
23:16:56 <HackEgo> 182) <elliott> quintopia: that's offensive, i was in a mirror accident and now my second half is a permanent mirror <elliott> typing is kind of difficult \ 206) <oklopol> hey speaking of young, some kinds asked me to buy some tobacco for them and i did, and then they were all likd "wow that guy's coool" when i told them i don't need their money \
23:17:27 <olsner> oh my, oklopol misleading the young
23:17:31 <olsner> `quote 206
23:17:32 <HackEgo> 206) <oklopol> hey speaking of young, some kinds asked me to buy some tobacco for them and i did, and then they were all likd "wow that guy's coool" when i told them i don't need their money
23:17:55 <olsner> or maybe he just knows stuff about tobacco and youth that the rest of us don't
23:20:39 <olsner> `quote bored
23:20:40 <HackEgo> 181) <Sgeo> Oh. Stuff that uses actual physical numbers stemming from science. Bleh *gets bored* \ 258) <Phantom_Hoover> elliott, incidentally, I started my explorations again after getting bored of the Himalayas.
23:20:58 <olsner> `quote boring
23:21:00 <HackEgo> 117) <CakeProphet> how does a "DNA computer" work. <CakeProphet> von neumann machines? <Phantom_Hoover> CakeProphet, that's boring in the context of DNA. <Phantom_Hoover> It's just stealing the universe's work and passing it off as our own. \ 183) <Sgeo> My quotes are boring \ 342) <oklopol> yes i use the services of a psychic, but i'm consideri
23:21:14 <olsner> `quote 342
23:21:16 <HackEgo> 342) <oklopol> yes i use the services of a psychic, but i'm considering getting a live one since stuff like "hello $name, your first name $first_name has |$first_name| letters, so by using numerology we can tell ..." is getting kind of boring
23:22:09 * olsner imagines oklopol kidnapping a live psychic for fortune telling purposes
23:36:14 -!- nooodl_ has quit (Ping timeout: 256 seconds).
23:48:15 -!- DHeadshot has joined.
2013-01-10
00:08:05 -!- epicmonkey has quit (Ping timeout: 260 seconds).
00:22:13 -!- myndzi\ has quit.
00:33:25 <hagb4rd> <oerjan>elliott: if the commit is never made when canary is removed, why would the modification date change... <-- it seems to be comitted when the content changes
00:33:34 <hagb4rd> dunno if u noticed that
00:33:53 <hagb4rd> but the date is still ..wrong
00:35:17 <hagb4rd> (i'm a canary noob)
00:35:33 <oerjan> of course i noticed
00:36:21 <hagb4rd> is that an old story or sth?
00:36:29 <Arc_Koen> oklofok: you handed out drugs to underage youngsters!?
00:37:02 <oerjan> no, just poison
00:37:06 <oerjan> hth
00:37:16 <Arc_Koen> oh, in that case, ok
00:37:43 <hagb4rd> `pastelog rm.*canary
00:38:14 <HackEgo> No output.
00:39:01 <hagb4rd> `run pastelog rm.*canary
00:39:17 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.20862
00:40:01 <hagb4rd> `pastelog > canary
00:40:14 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.10517
01:21:13 -!- state has joined.
01:22:15 -!- state has quit (Client Quit).
01:28:13 <kmc> `quote
01:28:15 <HackEgo> 139) <fungot> Vonlebio: well, i'm only back in denmark because my work visa expired. please insert token to continue.
01:28:56 <kmc> "Television Review: ‘Deadliest Space Weather’ on Weather Channel"
01:30:38 <shachaf> Uncategories are, like, crazy, man.
01:30:56 <shachaf> coid :: p x x -> ?
01:31:10 <shachaf> Where ? is either Void or p b a
01:31:21 <shachaf> mpose :: p t s -> Either (p t x) (p x s)
01:31:25 <shachaf> Examples:
01:31:29 <shachaf> Type inequality
01:31:41 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:31:59 <shachaf> Also, "only one of b and a is inhabited"
01:32:02 <kmc> huh, yes
01:32:05 <shachaf> < would be an example.
01:32:23 <shachaf> This is apparently called "cotransitivity" and "irreflexivity", when you talk about relations.
01:32:28 <kmc> if t≠s, then for any x, either t≠x or x≠s
01:32:34 <shachaf> In http://www.fnds.cs.ru.nl/ccorn/documentation/doc008.html
01:33:01 <shachaf> http://ncatlab.org/nlab/show/linear+order calls it "comparison"?
01:33:31 <shachaf> I'm trying to think of other examples.
01:33:41 <shachaf> Ideally ones that you can express in Haskell.
01:33:50 <shachaf> Unfortunately you run into the ol' intuitionism barrier.
01:33:57 <shachaf> I.e. you don't know whether to pick "Left" or "Right".
01:35:41 <kmc> what are the laws for coid and mpose?
01:38:28 <shachaf> Not sure.
01:38:55 <shachaf> The types came up naturally from trying to make Bizarre a Category.
01:39:13 <shachaf> I'm ending up with a lot of weird classes this way.
01:39:15 <kmc> it's pretty cool how that can happen!
01:39:24 <shachaf> Yep.
01:39:26 <shachaf> (_u :: forall p x y a. p (x,y) a -> Either (p x a) (p y a))
01:39:29 <shachaf> (_u :: forall p b x y. p b (Either x y) -> Either (p b x) (p b y))
01:39:35 <shachaf> (_u :: forall p t s x. p t s -> Either (p t x) (p x s))
01:39:42 <shachaf> Oh, that's mpose.
01:39:48 <shachaf> (_u :: forall p b b' a a'. p (b,b') (a,a') -> Either (p b a) (p b' a'))
01:39:57 <shachaf> (_u :: forall p a b x. (a -> b) -> p b x -> p a x) f
01:40:03 <shachaf> I don't know the names for any of these.
01:40:26 <shachaf> (Well, the last one is just the contravariant half of a profunctor, actually.)
01:42:00 <shachaf> On the one hand I never get things like that happening in most other programming languages.
01:42:17 <shachaf> On the other hand I never have a need to talk about this sort of thing in other languages.
01:43:07 <Bike> coid = co-identity, yes?
01:43:19 <shachaf> Yep.
01:43:23 <kmc> well you don't really have a *need* in Haskell either
01:43:23 <shachaf> Identity is () -> p a a
01:43:42 <shachaf> kmc: Well, sure. But this all came up from trying to actually do things.
01:43:43 <kmc> Haskell facilitates thinking of things in a more structered way and with lots of powerful abstractions
01:43:48 <shachaf> ...And then generalizing them over and over.
01:43:55 <kmc> yeah
01:44:10 <kmc> in another language you would just not generalize, or generalize in a terribly ad-hoc way
01:44:31 <kmc> although certainly Haskell has less support for terribly ad-hoc generalization than some languages
01:44:37 <shachaf> Bike: And mpose = co-compose.
01:44:58 <shachaf> kmc: That doesn't stop people from trying. :-)
01:45:42 <kmc> it's strange that in each case we can think of, the momohorphisms or whatever are just proofs, and don't have interesting content
01:45:47 <kmc> whereas for categories they are things like functions
01:46:17 <kmc> you only need a single value of type NotEq s t, and you don't care what it is really
01:46:28 <shachaf> Well, p a a -> Void is a pretty unusual type when you're working with values.
01:46:46 <kmc> unless you are working with continuations ;)
01:47:06 <shachaf> cmccann said it reminded him of his dual-intuitionistic logic experiments.
01:47:18 <shachaf> That's where you have ¬¬a -> a, but you don't have a -> ¬¬a
01:47:39 <kmc> huh
01:48:31 <shachaf> Apparently you get all sorts of interesting behaviors, though I'm not sure what they are.
01:50:25 -!- Nisstyre has quit (Ping timeout: 248 seconds).
01:59:16 <shachaf> So maybe most Bizarro classes just aren't interesting in programs?
02:00:52 <shachaf> In the bizarro world, p a b -> p (Either b a) b turns into p b (Either b a) -> p b a
02:01:34 <shachaf> I guess that's not interesting from the perspective of p=inequality, or proofs, or whatever.
02:01:47 <shachaf> I suppose that only comes about from categories. With profunctors you get sane (but weird) things.
02:02:35 <oerjan> p a a -> Void intuitively means you _never_ have p's between equal types...
02:02:47 <shachaf> Right.
02:02:59 <shachaf> I think it might actually just be p x x -> p b a
02:06:34 <oerjan> p x x -> Either (p x a) (p b x) ... -> Either (Either (p x b) (p b a)) (Either (p b a) (p a x))
02:08:29 <oerjan> wait what
02:09:04 <oerjan> p x x -> Either (p x a) (p a x) ... -> Either (Either (p x b) (p b a)) (Either (p a b) (p b x))
02:15:50 -!- Nisstyre has joined.
02:20:27 <Arc_Koen> what's Either?
02:22:12 <kmc> http://blog.exodusintel.com/2013/01/07/who-was-phone/ nice exploit, taking advantage of an unbounded alloc() to collide the stacks of two threads
02:22:15 <kmc> like half-nelson.c
02:22:16 <oerjan> @src Either
02:22:16 <lambdabot> Source not found. You speak an infinite deal of nothing
02:22:26 * oerjan swats lambdabot -----###
02:22:42 <oerjan> Arc_Koen: data Either a b = Left a | Right b
02:23:09 <shachaf> Oh, newsham posted that link the other day.
02:23:12 * shachaf hasn't read it yet.
02:23:14 <kmc> cool
02:23:42 <Arc_Koen> oerjan: I actually don't know what that means
02:23:51 <Bike> it's a tagged union of a and b.
02:23:55 <Arc_Koen> what does the equal sign represent? the result of a function call?
02:23:59 <Arc_Koen> and the pipe sign?
02:24:01 <FreeFull> Arc_Koen: When using Either as a monad, the Left value would be like Maybe's Nothing but with added context
02:24:06 <kmc> Arc_Koen: you're french you know ocaml right?
02:24:10 <Bike> oh is this an in-joke
02:24:12 <Arc_Koen> indeed
02:24:38 <kmc> so it's like type ('a,'b) either = Left of 'a | Right of 'b
02:24:39 <Arc_Koen> (but I don't know what a monad is, though I've seen this word used quite a lot around here)
02:24:46 <Arc_Koen> oh, ok
02:24:48 <Arc_Koen> thank you
02:25:02 <kmc> :)
02:25:11 <oerjan> ignore FreeFull it's going to be way over your head if you don't understand basic data types yet :P
02:25:28 <FreeFull> kmc: Now explain monads to him in terms of ocaml
02:28:24 <kmc> sig type 'a t; val return : 'a -> 'a t; val bind : 'a t -> ('a -> 'b t) -> 'b t;
02:28:33 <kmc> that's the signature of a monad t
02:28:41 <kmc> i copied that out of some monad tutorial for ocaml
02:28:58 <kmc> but i won't link to it because i don't want to endorse a monad tutorial i haven't read, because most things called "monad tutorial" are terrible
02:29:23 <Arc_Koen> hmmmm ok
02:29:31 <kmc> anyway so it's not a big deal what a monad is, mechanically
02:29:46 <kmc> the trick is seeing why they are useful, and learning how to use various spceific monads
02:30:14 <kmc> and i don't know of a way other than to learn one specific monad, then another, and so on until you kind of get the abstraction
02:31:27 <kmc> since you know ocaml you could probably learn about monads in haskell without too many prerequisites
02:31:37 <Arc_Koen> so for instance something like 'a t = 'a list , with return x -> [x] and bind [x1; ...; xn] f -> f x1 @ ... f xn would be a monad?
02:32:18 <shachaf> Yep.
02:32:22 <kmc> is @ list concat?
02:32:30 <Arc_Koen> yup
02:32:34 <kmc> yeah, looks right then
02:33:13 <kmc> in Haskell, bind is written infix as >>=
02:33:20 <kmc> and there is some syntactic sugar as well
02:33:37 <Arc_Koen> well that doesn't sound particularly uninteresting but why is there someone talking about monads *any and every day* here?
02:34:01 <Bike> as an extension of someone talking about haskell any and every day here?
02:34:11 <Arc_Koen> hmmm that would make sense
02:34:32 <kmc> you can write "do { x <- a; b }" to mean "a >>= (\x -> b)"
02:34:34 <Arc_Koen> but I'm pretty sure I overread ais523 talking about monads in brainfuck or something
02:34:35 <Bike> though i don't think i've actually noticed a ton of monad talk. just jokes about comonads.
02:34:44 <kmc> \ vars -> body is the lambda syntax in haskell
02:34:44 <oonbotti> ERROR:Word not found
02:34:49 <kmc> hi oonbotti
02:34:52 <Arc_Koen> I was assuming it was some kind of algebraic structure
02:34:59 <kmc> well it is that too
02:34:59 <Bike> it is.
02:35:26 <kmc> for that it is more convenient to ditch 'bind' and use 'join' instead
02:35:48 <Bike> it's a monoid for endofunctors. which, assuming i'm not any stupider than usual, would make composition one
02:35:49 <kmc> join : ('a t) t -> 'a t
02:36:00 <kmc> so for lists, join concatenates together a list of lists
02:36:08 <oerjan> oonbotti: you are quiet. too quiet.
02:36:09 <oonbotti> oerjan: Perhaps you would like me to be quiet. too quiet..
02:36:26 <kmc> you can write bind in terms of join, and vice versa, except for one detail
02:36:30 <kmc> but i will let someone else take over now
02:36:40 <Bike> wow, if i google "endofunctor" i get the joke. fuck
02:36:52 <Bike> oonbotti: eliza is so common. couldn't you be parry instead?
02:36:52 <oonbotti> Bike: Why do you ask that?
02:36:58 <oerjan> `? endofunctor
02:36:59 <HackEgo> Endofunctors are just endomorphisms in the category of categories.
02:37:05 <Bike> oonbotti: because it'd be cool.
02:37:06 <oonbotti> Bike: What other reasons come to mind?
02:37:21 <Bike> oonbotti: because i've written up eliza myself, therefore it must be boring.
02:37:22 <oonbotti> Bike: Is that the real reason?
02:42:31 <shachaf> Arc_Koen: Monad doesn't seem that interesting mostly because it isn't that interesting, as an abstraction all on its own.
02:42:47 <Arc_Koen> ok
02:43:17 <shachaf> But individual monads can be interesting, and the value of the abstraction is that there are a lot of operations that work on any monad at all.
02:43:28 <shachaf> And those operations get specific meanings for specific monads.
02:43:34 <Arc_Koen> makes sense
02:44:26 <shachaf> Arc_Koen: In general you can vaguely think of "'a t" as being an "action" that "produces" 'as, along with having some arbitrary effects.
02:44:36 <shachaf> Tht description might not be that helpful without seeing some concrete cases, though.
02:44:45 <Arc_Koen> no I think it is
02:44:49 <shachaf> In the case of lists, the effect is nondeterminism.
02:45:06 <shachaf> So in Haskell you say: do { x <- [1,2,3]; y <- [4,5,6]; ... }
02:45:11 <shachaf> And each combination of
02:45:33 <shachaf> > do { x <- [1,2,3]; y <- [4,5,6]; return (x,y) }
02:45:34 <lambdabot> [(1,4),(1,5),(1,6),(2,4),(2,5),(2,6),(3,4),(3,5),(3,6)]
02:45:38 <shachaf> Will be given to the variables in turn.
02:45:43 <Arc_Koen> I'm not sure what "bind" would mean for "actions" though
02:46:12 <shachaf> Well, take "'a t" to mean "something that either gives you an a, or throws an exception".
02:46:31 <Arc_Koen> yes
02:46:43 <shachaf> Then bind gets an ('a t) and an ('a -> 'b t), and gives you 'b t
02:46:53 <Arc_Koen> yes
02:47:00 <shachaf> Can you see what that might do?
02:47:19 <Arc_Koen> some weird composition
02:47:29 <shachaf> Right.
02:47:41 <shachaf> In particular it'll try to run the ('a t), and if that throws an exception, it'll throw that exception.
02:47:49 <Arc_Koen> yes
02:47:53 <shachaf> If that succeeds, it'll pass it to your function.
02:47:57 <Arc_Koen> yes
02:48:00 <shachaf> You can use this to implement your own exception scheme.
02:48:09 <Arc_Koen> hmmmm not sure I understand
02:48:21 <shachaf> Let's say we only care about success or failure.
02:48:27 <Arc_Koen> ok
02:48:32 <shachaf> Does ocaml have Option?
02:48:35 <Arc_Koen> indeed
02:48:39 <shachaf> That's also a monad.
02:48:43 <Arc_Koen> type 'a option = Some of 'a | None
02:48:51 * shachaf doesn't know ocaml syntax at all.
02:48:53 <oerjan> @src Maybe
02:48:54 <lambdabot> data Maybe a = Nothing | Just a
02:48:57 <oerjan> yay!
02:49:04 <shachaf> Option is a simple "exception" monad.
02:49:06 <oerjan> @botsnack
02:49:07 <lambdabot> :)
02:49:10 <Arc_Koen> well that's just a type; I guess you'd need two functions return and bind to make it a monad
02:49:24 <shachaf> Right.
02:49:31 <shachaf> Can you write those?
02:49:32 <oerjan> @src Maybe return
02:49:32 <lambdabot> return = Just
02:49:35 <Arc_Koen> sure
02:49:55 <Arc_Koen> return x = Some x
02:50:15 -!- copumpkin has quit (Ping timeout: 260 seconds).
02:50:46 -!- copumpkin has joined.
02:51:22 <Arc_Koen> bind x f = (if x = Some y then f y else None)
02:51:35 <shachaf> Looks reasonable.
02:51:50 <shachaf> So you can look at a value of type "'a option" as an "action" which will either give you an 'a or fail.
02:51:57 <Arc_Koen> yes
02:52:17 <shachaf> So in Haskell, you might say: do { x <- foo; y <- bar; return (x + y) }
02:52:31 <Arc_Koen> uhhhhhhhhm
02:52:31 <shachaf> Where foo :: int option, bar :: int option
02:52:37 <shachaf> That's the same as, uh...
02:52:41 <Arc_Koen> ok
02:52:54 <Arc_Koen> wait
02:52:57 <shachaf> bind foo (\x -> bind bar (\y -> return (x + y)))
02:53:08 <Arc_Koen> return is supposed to take you one level higher
02:53:30 <Arc_Koen> so return (x + y) would be Some (Some x + Some y) or something
02:53:35 <Arc_Koen> which doesn't make much sense to me
02:53:55 <shachaf> No, x and y are ints.
02:54:05 <shachaf> foo and bar are int options
02:54:18 <Arc_Koen> so <- is some syntactic suger I don't know about then
02:54:33 <shachaf> Right, sorry. I guess it was only glossed over before.
02:55:02 <shachaf> do { x <- foo; ... } means bind foo (fun x -> do { ... })
02:55:38 <shachaf> Does that make sense?
02:56:02 <Arc_Koen> it would probably, at any other time than 4am
02:56:26 <Arc_Koen> yes it kind of makes sense
02:57:11 <Arc_Koen> well thank you for your help
02:59:40 -!- copumpkin has quit (Ping timeout: 256 seconds).
03:00:11 -!- copumpkin has joined.
03:05:03 <FreeFull> So wait
03:05:49 <oerjan> no waiting!
03:05:50 <FreeFull> Is saying "A monad is just a monoid in the category of endofunctors" the same as saying "A monad is a monad"
03:06:03 -!- david_werecat has joined.
03:06:07 <Bike> "the same" in what sense?
03:06:30 <Bike> the first obviously has more information, like "just" denigrating the concept, and then the everything else
03:06:47 <Bike> but maybe the latter is more useful to leibniz WHO KNOWS
03:07:13 <kmc> this is how definitions commonly work in mathematics
03:07:25 <kmc> you might define what monoid, category, and endofunctor are
03:07:45 <kmc> then because it's a hassle to write "monoid in the category of endofunctors" over and over, you give a name to that concept
03:08:10 <Bike> and before you know it, you're up on that mathematical ebonics
03:08:39 <FreeFull> Well, id x = x but you could just as well write id x = fromJust (Just x)
03:08:48 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:08:53 <kmc> what does that have to do with anything?
03:09:07 <Bike> obviously there are multiple possible definitions of what a monad is
03:09:10 <kmc> i think this is some weird kind of trolling
03:09:12 <Bike> useful in different contexts
03:09:19 <oerjan> http://en.wikipedia.org/wiki/Extensionality hth
03:09:20 <FreeFull> The second one requires defining Maybe but the effect is the same
03:09:25 <Bike> if i link tao's blog will everybody be stunned into silence?
03:09:42 <oerjan> the tao that can be linked is not the true tao
03:09:48 <kmc> what oerjan said
03:10:23 * FreeFull has no idea who tao is
03:10:30 <Bike> terence tao, a mathematician.
03:10:34 <kmc> FreeFull: is there a difference between saying "a square is a rectangle with equal-length sides" and saying "a square is a square"?
03:10:36 <oerjan> a damn good one.
03:10:42 <Bike> http://terrytao.wordpress.com/2009/10/19/grothendiecks-definition-of-a-group/ Here, FreeFull.
03:10:54 <Bike> on proof and progress is well worth reading if you haven't
03:11:34 <Bike> (also: a group is just a category with one object and a whole shitton of inverses~)
03:11:53 <shachaf> Bike: How about "a monoid is a category with one object"?
03:12:00 <shachaf> A group is a groupoid with one object.
03:12:11 -!- monqy has joined.
03:12:11 <Bike> works for me
03:12:23 <FreeFull> What is a groupoid?
03:13:10 <Bike> a category with a whole shitton of inverses
03:13:30 <FreeFull> So it's a cocococococococococococococategory?
03:13:39 <Bike> no, but yes
03:13:48 <FreeFull> It's a paradox?
03:13:53 <kmc> it's like a group, but instead of being able to 'multiply' any two elements, you can only multiply elements whose 'types' match, in the manner of a category
03:13:59 <Bike> that would be an antinomy
03:16:00 <oerjan> FreeFull: http://en.wikipedia.org/wiki/Intensional_statement#Examples_of_intensional_statements
03:17:11 <oerjan> in particular the second example is almost the same form
03:18:27 -!- WeThePeople has joined.
03:41:00 <Sgeo_> elliott, monqy Fiora
03:47:57 -!- DHeadshot has joined.
03:58:51 -!- aloril has quit (Ping timeout: 260 seconds).
04:05:58 -!- DHeadshot has quit (Ping timeout: 256 seconds).
04:11:28 -!- DHeadshot has joined.
04:11:58 -!- aloril has joined.
04:12:01 -!- Arc_Koen has quit (Quit: Arc_Koen).
05:01:46 <Sgeo_> The creator of ping died in 2000
05:02:27 <Sgeo_> I'm still not used to thinking of Internet pioneers as people who are alive, so to read what he wrote, think he is still alive... and then he was dead since 2000
05:03:29 <kmc> i remember reading about a project to archive videos of lectures given by CS pioneers before they all die
05:03:53 <kmc> since the entire field was created within living memory
05:04:17 <Sgeo_> I will never cease to be shocked by that
05:04:35 <Sgeo_> (Well, maybe I'll live long enough that it's no longer within living memory)
05:05:29 <shachaf> So linear orders, i.e. <, aren't equivalent to total orders, i.e. ≤, in constructivism.
05:05:59 <shachaf> And the former is "more fundamental"
05:06:45 <kmc> Sgeo_: out of curiosity, how old are you?
05:06:53 <kmc> if you don't mind me asking
05:06:53 <Sgeo_> 23
05:06:56 <kmc> oh
05:06:58 <kmc> ok
05:07:05 <Bike> presumably this is related to that whole uncomputability of equality businezzzzz
05:07:24 <shachaf> Bike: I don't think it really is?
05:07:26 <shachaf> Well, possibly.
05:07:47 <Bike> you don't think it's related?
05:08:06 <shachaf> Normally I think of them as being equivalent because you can just use (not (y ≥ x)) as (x < y), or something.
05:08:33 <shachaf> But, like sailors, constructivists have to be careful with their nots,
05:08:39 <shachaf> s/.$/./
05:08:40 <Bike> and if there's anything intuitionists like, it's negation everywhere
05:08:47 <kmc> *groan*
05:08:48 <Bike> oh, your joke is better.
05:13:14 <Bike> more seriously negation of those operations isn't very computable, is it
05:14:27 -!- aloril has quit (Ping timeout: 260 seconds).
05:22:55 -!- Nisstyre has quit (Ping timeout: 240 seconds).
05:25:29 <oklofok> so near the end of last year i learned to my surprise that groupoids are groups with types; i had somehow mixed them with magmas.
05:26:07 <oklofok> only problem is that like a year ago we published an article with a small thing about groupoids
05:26:11 <oklofok> which is about magmas
05:26:49 <oklofok> LIFE
05:26:50 <oklofok> OVER
05:26:56 -!- aloril has joined.
05:27:06 <Bike> oh so you're the bastard confusing me about what everything means
05:28:38 <oerjan> oklofok: yeah the word "groupoid" is somewhat ambiguous
05:35:33 <kmc> rails exploit is out: https://github.com/rapid7/metasploit-framework/blob/4c1e501ed09e1633fb57c0f2e30a946fa219f835/modules/exploits/multi/http/rails_xml_yaml_code_exec.rb
05:35:44 -!- Nisstyre has joined.
05:49:12 -!- Nisstyre has quit (Ping timeout: 256 seconds).
05:52:50 <oklofok> oerjan: it's used like that sometimes?
05:53:07 <oerjan> i've seen both meanings before, anyway
05:53:15 <oklofok> i can't actually open the officially published version so i don't remember if we had that portion in there
05:53:20 <oklofok> oh
05:53:22 <oklofok> kay
05:53:26 <oklofok> good
05:53:28 <oerjan> although the one we used was the category one
05:54:03 <oklofok> well i didn't even think it was worth checking that it means magma, so it would make sense that i have actually seen someone define groupoid that wa.
05:54:04 <oklofok> y
05:54:58 <oerjan> you will note that http://en.wikipedia.org/wiki/Groupoid contains a disambiguation link
05:55:40 <oerjan> "The term magma for this kind of structure was introduced by Nicolas Bourbaki. The term groupoid is an older, but still commonly used alternative which was introduced by Øystein Ore."
05:56:00 <oerjan> MUST BE GOOD IT'S NORWEGIAN
05:56:42 <oerjan> THE GUY WHO INVENTED THE OTHER DIDN'T EVEN EXIST
05:57:55 <oklofok> my guess would've been that the reason <= is a bad order is that unlike in real math, in constructivism you can't mod out the classes of equals
05:59:21 <oklofok> not that i know anything about anything
05:59:40 <oerjan> @quote farpotshket
05:59:40 <lambdabot> andr00 says: Today's software engineering word is "farpotshket." This is a Yiddish word meaning, "broken, because someone tried to fix it."
05:59:47 <oerjan> useful word
06:00:10 <oerjan> (HWN is out!)
06:00:11 <kmc> oh man, that is a quality word
06:00:28 <oklofok> maybe it should go groupoid, monoid, semigroup, semimonoid
06:00:31 <oklofok> erm
06:00:37 <kmc> hemidemisemimonoid
06:00:40 <oklofok> group, monoid, semigroup, semimonoid
06:00:48 <Bike> iss that like a hemidemisemiquaver
06:00:53 <kmc> yes
06:00:59 <Bike> excellent
06:01:16 <oerjan> sesquimonoid
06:01:16 <kmc> it is a monoid but only 1/64 of the usual laws apply
06:01:27 <oklofok> how do you pronounce yiddish
06:01:32 <kmc> me? poorly
06:01:54 <oklofok> no i mean is farpotshket pronounced as it is in english
06:02:20 <Bike> so how can this be generalized to the reals kmc. how can we have only 1/euler's constant laws apply?
06:03:38 -!- Nisstyre has joined.
06:05:12 <oerjan> @tell elliott how come you get into HWN with borrowed quotes
06:05:12 <lambdabot> Consider it noted.
06:05:28 <oerjan> @tell elliott *@ask
06:05:28 <lambdabot> Consider it noted.
06:05:46 <shachaf> oerjan: Which quote?
06:06:00 <shachaf> I think that might've been my fault.
06:06:01 <oerjan> the half the things one
06:06:06 <shachaf> I don't think he said that.
06:06:26 <oerjan> oh.
06:06:31 <oerjan> i see.
06:06:38 <shachaf> oerjan: See, you shouldn't believe everything you read.
06:06:42 <oerjan> @tell elliott sorry it's all shachaf's fault
06:06:43 <lambdabot> Consider it noted.
06:06:43 <shachaf> elliott didn't say half the things he said.
06:06:53 <shachaf> oerjan: Hey I'm not *sure* it was my fault!!
06:07:47 <oklofok> Content-Type: text/plain; charset=iso-8859-1
06:07:47 <oklofok>
06:07:47 <oklofok> Arvoisa vastaanottaja,
06:07:47 <oklofok> K ytt oikeushakemuksenne roolille "10_L_HR__XX_XX_Yleisrooli (ERP300)" on hyv ksytty.
06:07:47 <oklofok> K ytt oikeus on voimassa 10.01.2013 - xx.xx.xxxx.
06:07:47 <oklofok>
06:07:47 <oklofok> Certia IDM / SAP
06:07:54 <oklofok> waht is this
06:08:20 <oerjan> @quote schneier
06:08:21 <lambdabot> mm_freak says: bruce schneier is an endofunctor that turns all automorphisms into identities
06:08:43 <oklofok> might be easier to answer if you knew what it says
06:08:47 <oerjan> i think that technically means bruce schneier skeletizes people
06:09:31 <oerjan> oklofok: MAYBE
06:10:25 <oklofok> dear recipient, your usage license for the role "10_L_HR__XX_XX_Yleisrooli (ERP300)" has been accepted. the license is valid 10.01.2013 - xx.xx.xxxx.
06:10:57 <oklofok> yleisrooli means general role, in hr, h probably comes from henkilöstö = staff
06:11:15 <kmc> free ERP!
06:11:18 <kmc> good forever!
06:11:34 <shachaf> @wn ERP
06:11:35 <lambdabot> No match for "ERP".
06:11:37 <kmc> i like that you included the content type
06:11:38 <oerjan> shachaf: are you to blame for the tac precipitate one too?
06:11:46 <shachaf> oerjan: ?
06:11:50 <kmc> erp is enterprise resource planning
06:11:53 <oerjan> @quote precipitate
06:11:53 <lambdabot> tac says: If you're not part of the solution, you're part of the precipitate
06:11:57 <oklofok> kmc: it's normal for people to write content type in the message?
06:12:00 <oerjan> also a borrowed quote
06:12:03 <shachaf> oerjan: No.
06:12:14 <shachaf> I don't approve of borrowed quotes in lambdabot.
06:12:24 <shachaf> Unless they're attributed to their original author.
06:12:26 <shachaf> @quote SimonPJ
06:12:26 <lambdabot> No quotes match. Maybe you made a typo?
06:12:30 <shachaf> @quote simonpj
06:12:30 <lambdabot> simonpj says: Maybe if I had an Oleg implant I could express all this in the type system
06:12:32 <oklofok> kmc: that was just the body of the message
06:12:50 <kmc> huh
06:12:55 <kmc> well you know
06:13:00 <kmc> HTTP, SMTP, basically the same
06:13:44 <oerjan> @quote blame
06:13:44 <lambdabot> OlinShivers says: My God, no one could blame me -- no one! -- if I went off the edge and just lost it completely one day.
06:13:47 <oerjan> @quote blame
06:13:47 <lambdabot> quicksilver says: <cads> three new mersenne primes in the past couple of months <quicksilver> I blame the financial crisis [...] out of work bankers have nothing better to do that calculate primes.
06:13:50 <oerjan> @quote blame
06:13:50 <lambdabot> gwern says: believing in conspiracy theories means always being hopeful that at least there's someone to blame
06:13:52 <oerjan> @quote blame
06:13:52 <lambdabot> quicksilver says: <cads> three new mersenne primes in the past couple of months <quicksilver> I blame the financial crisis [...] out of work bankers have nothing better to do that calculate primes.
06:14:00 <kmc> heh
06:14:24 <oerjan> @quote blame
06:14:24 <lambdabot> lennart says: [August 1990] DON'T BLAME HASKELL WHEN THINGS GO WRONG
06:14:43 <shachaf> @quote augustss
06:14:43 <lambdabot> augustss says: Haskell already has enterprise monads; there is a fail method.
06:14:45 <oerjan> @quote doing.blame
06:14:46 <lambdabot> cmccann says: some people blame themselves, some people blame the language, but the people who really know what they're doing blame shachaf.
06:15:33 <Sgeo_> Racket is all about blame
06:15:49 <monqy> mhmmmm
06:15:50 <Bike> the blame paradigm of programming
06:16:50 <oerjan> that gives me a deja vu feeling but there's no such language on esolang
06:18:27 <oerjan> at least there is the blame calculus, although that's probably actually useful
06:19:19 <Bike> "Threesomes, With and Without Blame" nice name for a paper
06:19:24 <oerjan> http://homepages.inf.ed.ac.uk/wadler/topics/blame.html
06:19:46 <oerjan> OKAY
06:20:07 <shachaf> helloerjan
06:20:20 <shachaf> When you're a logreader, everything is a quote.
06:22:15 <oerjan> `addquote <shachaf> When you're a logreader, everything is a quote.
06:22:21 <HackEgo> 905) <shachaf> When you're a logreader, everything is a quote.
06:27:46 <Sgeo_> Is Racket officially called "Racket (formerly PLT Scheme)" now? I don't think I've seen a paper that talks about Racket without noting that it used to be called PLT Scheme
06:28:16 <shachaf> `quoerjan
06:28:19 <HackEgo> 569) <oerjan> i am sorry to disappoint you, but my musical taste is on the side abba, verdi, and celine dion. i know this may not be popular and that you would have preferred me to be a satanist. \ 16) <fungot> oerjan: are you a man, if there weren't evil in this kingdom to you! you shall find bekkler! executing program. please let me go... put me
06:28:33 <shachaf> fungot:
06:28:43 <shachaf> fungot..........................
06:28:46 <shachaf> fizzie...........................
06:28:50 <shachaf> Whoops.
06:30:06 <oerjan> the fun got away
06:33:07 <monqy> `quote 904
06:33:08 <HackEgo> 904) <hagb4rd> what is this set? sounds like shakespear <fizzie> Yes, that's what people often say about Chrono Trigger.
06:33:43 <shachaf> hi monqy
06:33:47 <monqy> hi shachaf
06:33:54 <shachaf> Do you know anything about weird reverse categories?
06:34:08 <monqy> what's so weird about them?????
06:34:19 <kmc> where did fungot got to
06:34:27 <fizzie> I think it a split.
06:34:41 <kmc>
06:35:02 <fizzie> Because I just restart-reconnected it, and it seemed to do just fine, but now I can not massage to it.
06:35:14 <fizzie> It is on morgan.freenode.net.
06:35:15 <shachaf> monqy: well they're backwards!!
06:35:22 <monqy> whoa, weird
06:35:24 <shachaf> monqy: Also I don't think they make any sense in Haskell?
06:35:30 <monqy> double weird
06:35:32 <shachaf> because, like, parametricity????
06:36:49 -!- Bike has quit (Ping timeout: 248 seconds).
06:51:12 -!- oerjan has quit (Quit: leaving).
07:06:44 -!- WeThePeople has quit (Quit: Leaving).
07:12:58 -!- FreeFull has quit.
07:22:19 -!- Lumpio- has quit (Ping timeout: 260 seconds).
07:48:24 -!- Lumpio- has joined.
08:00:56 -!- david_werecat has quit (Ping timeout: 246 seconds).
08:05:27 -!- Taneb has joined.
08:06:28 <shachaf> monqy: http://25.media.tumblr.com/tumblr_lpa3ccigYU1qmqpiro1_1280.jpg
08:06:55 <monqy> yes
08:07:43 <quintopia> shel
08:07:49 <monqy> yes
08:07:59 <monqy> i think i have a book with that one in it somewhere(where???)
08:08:13 <monqy> i should find it. i like(remember liking) that book
08:18:13 -!- fungot has joined.
08:18:24 <fizzie> (I just went ahead and changed servers.)
08:18:51 <shachaf> fungot: welcome back
08:18:52 <fungot> shachaf: are comments to code needed at any time. i don't know turt
08:18:57 <shachaf> ^style
08:18:57 <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
08:19:16 <fizzie> ^style isn't persistent, so it's in the default onw.
08:19:17 <fungot> Not found.
08:19:22 <fizzie> fungot: Not surprising.
08:19:22 <fungot> fizzie: that's where we're going, we could be discussing who said what to whom all afternoon)
08:29:22 -!- impomatic has quit (Quit: http://corewar.co.uk).
08:37:51 -!- epicmonkey has joined.
08:55:57 <shachaf> Sgeo_: Why didn't you notify me of the pbfcomics.com update?
08:59:40 -!- GreyKnight has joined.
08:59:50 <GreyKnight> shachaf: pbf update
08:59:51 <lambdabot> GreyKnight: You have 1 new message. '/msg lambdabot @messages' to read it.
09:07:29 <GreyKnight> related to earlier discussion about CRTs: http://www.bbc.co.uk/news/technology-20957218
09:13:28 <fizzie> You could totally optical-TEMPEST those and see what your neighbour is watching on their TV.
09:14:18 <fizzie> (Does UK still do non-digital over-the-air TV?)
09:15:17 <GreyKnight> I think it is all turned off now
09:15:53 <GreyKnight> There are units to decode digital signals into something you can plug into the aerial socket of an analogue TV though, so these B&W models will still be useful.
09:15:54 <fizzie> So you'll need a box for that B&W TV.
09:15:57 <elliott> I don't think the switchover is over yet.
09:16:04 <Sgeo_> "In answers to questions about some of the comics being missing from the website: the web content has been decimated to make the book more special."
09:16:24 <elliott> The digital switchover process involved discontinuing analogue terrestrial TV broadcasts, which in some areas allowed for greater signal strength and/or better coverage of digital multiplexes. The process concluded on 24 October 2012, when digital switchover completed in Northern Ireland (the same day as the Republic of Ireland also completed its digital switchover [13]).
09:16:31 <elliott> Hmm, okay.
09:16:40 <GreyKnight> I haven't really been keeping track, I don't have a TV myself (wouldn't have time to watch one anyway)
09:16:43 <fizzie> GreyKnight: Or you can go and buy a new black-and-white TV with an integrated DVB receiver. (Good luck finding one.)
09:16:57 <GreyKnight> Sgeo_: yeah I saw that too :-(
09:19:19 <GreyKnight> Sgeo_: It occurred to me that Qoppa could be "simplified" by making vau only take 1 parameter. Curried operatives, tasty :-)
09:19:46 <fizzie> Our analogue terrestial TV shutdown was September 1st, 2007, and back then (IIRC) the DVB receivers were having quite a bit of software troubles, especially when it came to DVB "bitmap" style subtitles sent by YLE.
09:22:41 * Sgeo_ needs to thoroughly read the Qoppa post
09:25:31 <GreyKnight> Oh I forgot about (bind)'s destructuring capabilities, I guess it is still possible but a bit more complex
09:25:41 -!- ais523 has joined.
09:26:37 <fizzie> (Also the company providing cable TV in our company is pushing also the DVB-T signals via the cable, as a compatibility thing for people with DVB-T (as opposed to DVB-C) tuners. There are always rumours it's going to stop, but it was still going on the other day.)
09:31:00 <Sgeo_> http://www.youtube.com/watch?v=DCBOSO4KnyU this video seems to be 1 second long but plays for longer
09:31:07 <Sgeo_> I don't get how that's possible
09:31:37 <GreyKnight> time travel
09:31:56 <fizzie> Time dilation.
09:32:20 <fizzie> TIME COMPRESSION, as seen in Final Fantasy VIII.
09:32:27 <fizzie> (It's total nonsense.)
09:32:34 <fizzie> ^style ff7
09:32:34 <fungot> Selected style: ff7 (Full script of the game Final Fantasy VII)
09:32:42 <fizzie> fungot: What do you know about TIME COMPRESSION?
09:32:43 <fungot> fizzie: what's this...... then...... i have to live in that chair and drink your goddamn tea!
09:32:51 <fizzie> Not much, apparently.
09:34:11 <fizzie> http://images3.wikia.nocookie.net/__cb20070918012703/finalfantasy/images/4/4c/Time_Compression.jpg <- that's what it looks like, however.
09:34:37 <GreyKnight> no spoilers, I am playing FFVIII and haven't got that far :-(
09:35:09 <fizzie> Oh no.
09:35:15 <fizzie> I just spoiled it all.
09:35:23 <fizzie> Had you heard of TIME COMPRESSION, though?
09:35:30 <GreyKnight> NUUUUUUU
09:35:33 <GreyKnight> (yes)
09:35:48 <fizzie> Well, that's good, at least.
09:36:12 <GreyKnight> Sgeo_: I would like to revise my earlier report. Taking complex (bind) structures into account I don't think you can reduce vau below two parameters.
09:36:46 <GreyKnight> consider the difference between (vau (a (b c)) ...) and (vau ((a b) c) ...) for example
09:36:56 <GreyKnight> not to mention (vau (a b c) ...) of course!
09:37:19 <GreyKnight> hm maybe with some (let) jiggerypokery...
09:37:28 <fizzie> fi:vau == en:wow.
09:37:50 <GreyKnight> Oh Qoppa must be a really exciting language for Finns then!
09:41:43 <Sgeo_> GreyKnight, how does this sound? On the Racket side, using a macro like (from-qoppa) that would define it
09:42:12 <GreyKnight> which "it"?
09:42:22 <Sgeo_> e.g. (from-qoppa foo bar baz) expands into (begin (define foo (q 'foo)) (define bar (q 'bar)) (define baz (q 'baz)))
09:42:46 <Sgeo_> Where q is a function that calls the Qoppa interpreter with the purpose of retrieving the value named by the symbol
09:45:24 <GreyKnight> every time I try to type NIL today I type NUL instead
09:46:04 <GreyKnight> Sgeo_, how does it handle vaus?
09:46:51 <Sgeo_> When an operative is called as though it were a function, each value is wrapped in a quote form before calling the operative
09:47:04 <Sgeo_> This way, if the operative is a wrapped function, evaluation leads to the original value
09:49:17 <c00kiemon5ter> Sgeo_ while loading it says 1:18
09:50:03 <c00kiemon5ter> also another plugin I have that among other displays the % loaded, says: 196150%
09:50:44 <c00kiemon5ter> it is also non-seekable :D
09:51:53 * c00kiemon5ter is out to hunt cookies
09:52:18 <fizzie> And the picture is black for me for the 360p and 480p quality levels, only appearing for 240p.
09:53:09 <fizzie> "A: 10.9 V: 0.0 A-V: 10.867 ct: 0.040 0/ 0 ??% ??% ??,?% 194870 0" mplayer is pretty confused about it too.
09:56:56 <GreyKnight> Sgeo_, hm does this solve the problem we had with higher-order functions?
09:58:07 <GreyKnight> (PS: I reckon that you can use (vau (x) ...) and a cons-matching (vau (a . b) ...) allows arbitrary destructuring in a curry-like manner. Not especially revolutionary though)
09:58:50 <Sgeo_> GreyKnight, yes, I think this is a sufficiently good solution
09:59:23 <Sgeo_> fizzie, the first time I played it, it was black until a certain point. When I replayed it, the image appeared
09:59:50 <GreyKnight> I'm still partly asleep but AIR the problem was trying to pass an operative to a HOF
10:00:53 <Sgeo_> Yes, and this gives what I think is a reasonable semantic to a Racket HOF attempting to call an operative
10:11:48 * GreyKnight tries to think. Suppose we have the Racket HOF (define (smap F L) (cond ((null? L) '() ) ((list? L) (cons (smap F (car L)) (smap F (cdr L)) )) (#T (F L)) ) )
10:14:25 <Sgeo_> So it's a map that ... treat L like a tree?
10:14:40 <Sgeo_> Oh, I see
10:14:44 <GreyKnight> yeah pretty much
10:14:48 <Sgeo_> Don't see what the problem is though
10:15:04 <GreyKnight> (just a random function for me to think it through)
10:15:06 <Sgeo_> Also, maybe pair? instead of list?
10:15:15 <GreyKnight> oops
10:15:29 <GreyKnight> I don't know if there is a problem, I just wanted to work through an example and see how it would interact with qoppa
10:21:38 <GreyKnight> so if F is an operative, it receives one of '(car L) or '(cdr L) or 'L as its argument each time. Then it can eval those in the current environment and get the actual value
10:24:19 <Sgeo_> That wasn't the idea
10:24:42 <GreyKnight> of course that means the qoppa-operative needs to be able to understand what's in the environment passed from Racket but presumably you can introspect that okay
10:24:43 <GreyKnight> oh
10:24:54 * Sgeo_ wonders how that would work
10:25:32 <GreyKnight> what did you mean by quoting the arguments then?
10:26:30 <Sgeo_> If F is an operative, and I call it from racket like (F (car L)), if L is '(1 2), F sees (quote 1)
10:26:58 <Sgeo_> If F is in fact a function, when it goes to evaluate (quote 1), it gets 1 back, and thus does whatever it was going to do
10:32:04 <GreyKnight> ah so the value that we pass to smap as F isn't actually the operative directly, but something lambda-like that evaluates its arguments, quotes the resulting *value*, and passes that to the real operative
10:32:46 <GreyKnight> I am not sure how to write something that creates such a wrapper in Racket
10:33:52 <GreyKnight> ((lambda (x) (quote x)) 1) just gives 'x, of course; maybe some #%app magic can do it?
10:33:55 <Sgeo_> GreyKnight, yes. (Although in Racket, evaluating the arguments is automatic)
10:34:05 <GreyKnight> well yeah
10:34:27 <GreyKnight> I just don't know how to quote the value rather than the parameter
10:34:45 <Sgeo_> Well presumably, we just pass a list '(quote x) to the operative, since the operative will be be what's trying to evaluate it
10:35:05 <Sgeo_> (lambda (x) `(quote ,x))
10:37:43 <GreyKnight> ...how did I forget how to quasiquote kill me now
10:40:07 <Sgeo_> (lambda (x) (list 'quote x)) would give the same result, if that helps
10:43:36 <GreyKnight> something like (define (qoper O) (lambda A (apply-qoppa-oper O `(,@A)) ) ) should pass down the values of the racket-expressions under quotation (assuming I've got enough levels there)
10:44:07 <GreyKnight> *sigh* time was I could do that in my sleep
10:44:22 <GreyKnight> Ah, sleep, I remember that stuff. Good times.
10:47:34 -!- Phantom_Hoover has joined.
10:48:37 <c00kiemon5ter> heh, fizzie, Sgeo_ http://www.youtube.com/watch?v=DCBOSO4KnyU#t=1s
10:48:40 <Sgeo_> Phantom_Hoover, did you see the update
10:48:58 <Sgeo_> c00kiemon5ter, huh, interesting
10:49:00 <Phantom_Hoover> how many damn times do i have to tell you that i fell behind
10:49:02 <c00kiemon5ter> ie, skip the first second and everything is back to normal
10:49:25 <Sgeo_> Phantom_Hoover, unfall behind
10:49:49 <Phantom_Hoover> i don't answer to you!
10:50:35 <elliott> Phantom_Hoover: you're on the List
10:50:38 <elliott> you don't have a choice
10:50:54 <Phantom_Hoover> no
10:50:57 <Phantom_Hoover> im busting the list
10:51:03 -!- Phantom_Hoover has changed nick to Phatnom_Hoover.
10:51:12 <Phatnom_Hoover> what now sgeo
10:51:16 <Phatnom_Hoover> what now
10:51:50 <monqy> p sure phatnom hoover is on the list too
10:51:58 <elliott> its not nicks on the list ph
10:51:59 <elliott> its people
10:52:31 <c00kiemon5ter> be no people, be no list
10:53:13 <monqy> unbecome a human
10:53:39 <Phatnom_Hoover> this is all too much
10:53:39 -!- Phatnom_Hoover has quit (Quit: Leaving).
10:54:08 <monqy> could not perform the ritual to forfeit his humanity. remains on the list forever.
10:54:09 <GreyKnight> @tell Phantom_Hoover escape through a fractal core, he can't follow you!
10:54:09 -!- sploknee has joined.
10:54:09 <lambdabot> Consider it noted.
10:54:26 <GreyKnight> sploknee: hi Phantom_Hoover
10:54:40 <sploknee> who is phantom hoover ?
10:54:44 <monqy> good question
10:54:49 <sploknee> i am sploknee
10:54:51 <monqy> `welcome sploknee
10:54:54 <monqy> welcome sploknee.
10:54:56 <HackEgo> sploknee: 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.)
10:55:01 -!- DH____ has joined.
10:55:01 <sploknee> welcome monqy
10:55:11 <sploknee> wow
10:55:15 -!- DHeadshot has quit (Read error: Connection reset by peer).
10:55:17 <sploknee> HackEgo sure can type fast
10:55:25 <monqy> yeah he's like a wizard
10:55:28 <monqy> at the keyboard
10:55:30 <GreyKnight> In a way, aren't we all Phantom_Hoover?
10:55:51 <sploknee> im not
10:56:07 <sploknee> im not nearly good-looking, charming or intelligent enough to be phantom hoover
10:56:11 <Sgeo_> GreyKnight, I assume that includes the creator of Ook?
10:56:29 <monqy> includes the inventor of there once was a fish named fred
10:56:32 <elliott> sploknee: agreed
10:56:50 <sploknee> Sgeo_, well he does have the same initials as-- as phantom hoover
10:56:52 <sploknee> i suppose
10:57:25 <elliott> i like you sploknee
10:57:38 <GreyKnight> elliott: he's much better than PH that's for sure
10:57:45 * GreyKnight can't stand that guy
10:57:57 <monqy> except not as good looking charming or intelligent
10:57:59 <monqy> pfff
10:58:01 <sploknee> perhaps it's because of his cutting insights into how awful northern ireland is
10:58:12 <sploknee> he sounds like the sort of guy who'd make those
10:58:41 <GreyKnight> I'll give him some cutting insights if he comes here
10:59:17 <sploknee> see, this is why nobody likes northern ireland
10:59:52 <elliott> @tell Phantom_Hoover <GreyKnight> elliott: he's much better than PH that's for sure * GreyKnight can't stand that guy
10:59:52 <lambdabot> Consider it noted.
10:59:53 <monqy> btw sploknee have you heard of sgeo's "list"? it's like a rite of passage here. really, most of us are here because of this list, so i wouldn't be surprised if you came here for it
11:00:21 <elliott> sploknee: i confess i literally just realised you're ph
11:00:42 <sploknee> wh
11:00:49 <elliott> i blame the lowercase??
11:00:52 <sploknee> monqy, oh no i wouldn't be interested in that sort of thing
11:01:07 <monqy> is that a yes or a no!!!!!
11:01:08 <Fiora> is a really confusing new person welcome going on right now?
11:01:15 <elliott> Fiora: old person welcome
11:01:15 <sploknee> elliott, but i-- am sure phantom hoover speaks in lower case all the time
11:02:12 <elliott> monqy: i don't think you can truly distinguish the list and the channel
11:02:27 <GreyKnight> `welcome sploknee
11:02:28 <elliott> if entering the channel gets you on the list, and you cannot get off the list, does it not follow that you cannot leave the channel?
11:02:29 <HackEgo> sploknee: 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.)
11:02:38 <elliott> GreyKnight: you can't just use the same `welcome multiple times
11:02:39 <elliott> except if you're me
11:02:48 <Sgeo_> elliott, that assumes that leaving the channel would mean you leave the list
11:03:21 <GreyKnight> `emoclaw elliott
11:03:23 <HackEgo> ​(.tan.lad.cri no ciratosa# yrt ,aciratosa fo dnik rahto aht roF) .agaP_niaM/ikiw/gro.sgnalosa//:ptth :ikiw ruo tuo kcahc ,noitamrofni arom roF !tnamyolpad dna ngisad agaugnal gnimmargorp ciratosa rof buh lanoitanratni aht ot amoclaW :ttoilla
11:03:35 * Sgeo_ is now addicted to That Mitchell and Webb Look
11:03:52 <sploknee> don't worry you'll run out soon enough
11:04:07 <monqy> is this because of that number wang thing? I remember it was inspired by something with "Look" in its name
11:05:09 <elliott> Sgeo_: do I get /msg updates if I leave the channel
11:05:29 <monqy> whether or not your body gets updates, your spirit remains on the list eternally
11:05:35 <elliott> monqy: numberwang is http://www.youtube.com/watch?v=AIxz6BDmTNU which is from that mitchell and webb look
11:05:41 <monqy> yes ive seen numberwang
11:06:12 <elliott> then ye
11:06:24 <elliott> monqy: but have you seen "a history of numberwang"...
11:06:35 <monqy> i dont think so....but i like numberwang...........
11:06:38 <sploknee> simon!
11:06:41 <sploknee> he's from space
11:06:46 <elliott> https://www.youtube.com/watch?v=-r6NY4Kl8Ms "it's a history of numberwang"
11:07:13 <Sgeo_> I sort of watched all the Quiz Broadcast stuff and am now watching season 4, so I kind of already saw those sketches
11:07:15 <Sgeo_> :/
11:08:03 -!- oonbotti has quit (Ping timeout: 245 seconds).
11:09:05 <GreyKnight> \ x -> we can talk about lambda calculus without oonbotti interrupting us now
11:09:17 <sploknee> you know what's criminally underappreciated?
11:09:22 <sploknee> the armando ianucci shows
11:09:35 <sploknee> i suspect it's due to prejudice against the scots
11:12:40 <Sgeo_> BARGAINS BARGAINS BARGAINS
11:12:47 <sploknee> aha
11:12:50 <sploknee> has Sgeo_ gone mad
11:12:59 <sploknee> can he continue the list in this state
11:16:37 <elliott> bargains
11:16:52 <GreyKnight> fungot: bargains
11:16:52 <fungot> GreyKnight: hojo has named me, and you mr. leader! get out. these things take time.
11:19:35 -!- Nisstyre has quit (Ping timeout: 240 seconds).
11:21:31 <Sgeo_> Hojo? Not Hinjo?
11:23:15 <monqy> why would fungot lie
11:23:16 <fungot> monqy: all right! don't be wastin' time. you understand, don't worry!! move, will be a guinea pig, if it's for justice or revenge, or them folks-- none of that explosion!
11:23:50 <GreyKnight> fungot is strongly against exploding guinea pigs
11:23:50 <fungot> GreyKnight: oh yeah, well that ain't even started wit' you yet!
11:26:06 <Sgeo_> Hinjo is a character in OOTS. Hojo is not.
11:26:44 <monqy> that doesn't answer my question.....sgeo........
11:27:17 <elliott> ^style
11:27:18 <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
11:28:14 <GreyKnight> fizzie: why no OotS style :<
11:28:35 <Sgeo_> I HATE MY CAT. Also, we need Homestuck styl
11:28:36 <Sgeo_> style
11:28:47 <GreyKnight> ^style homestuck
11:28:47 <fungot> Selected style: homestuck (Homestuck pages 1901-4673)
11:28:50 <Sgeo_> Oh
11:28:51 <Sgeo_> derp
11:28:51 <elliott> you realise theres
11:28:52 <GreyKnight> :-U
11:28:55 <elliott> already
11:29:25 <GreyKnight> fungot: what's this homestuck carryon all about anyway?
11:29:26 <fungot> GreyKnight: it just doesn't feel secure the matriorb and hatch a new mother has any shit they want to scrape off their bulge on to a particular type of three-way relationship of a black president
11:29:38 <GreyKnight> What.
11:33:24 <GreyKnight> fizzie: so is there like a script we can run over some corpus of text to produce a fungot style, or is it more involved? (I may have already asked this)
11:33:24 <fungot> GreyKnight: what the hell
11:33:33 <GreyKnight> fungot: no u
11:33:33 <fungot> GreyKnight: in a good way though. sounds more like " the one", a casual shrine to an amazing actor. the film. you're just a run of the mill little psycho girl, a troll caegar a dozen. adventure awaits prototyping. but unlike all eleven other players only get one extra.
11:34:18 -!- Nisstyre has joined.
11:34:25 <monqy> ^style fungot
11:34:25 <fungot> Selected style: fungot (What I've said myself)
11:35:05 <GreyKnight> (Y fungot)
11:35:32 <monqy> imo there should be a style for dinosaur comics can someone make this happen
11:36:39 -!- sploknee has quit (Ping timeout: 260 seconds).
11:38:11 <GreyKnight> if SOMEBODY would tell us how to make styles...
11:39:09 <monqy> the secret to making styles is for the styles to already be there
11:42:02 <ais523> fungot: there's no point in us setting the style if you don't say anything
11:42:03 <fungot> ais523: if it's ( syntactically) long underwear all ready. name ( in other parts, written in c, it's dlopen(). if it's computable, it's compilable
11:42:31 -!- Nisstyre has quit (Ping timeout: 276 seconds).
11:42:56 -!- sploknee has joined.
11:42:58 <sploknee> <Sgeo_> I HATE MY CAT. Also, we need Homestuck styl
11:43:07 <sploknee> maybe your cat hates you
11:43:15 <sploknee> have considered discussion your problems with your cat
11:43:20 <elliott> sploknee: remember that time I didn't know you were PH
11:43:21 <elliott> good times
11:43:36 <monqy> who's PH
11:44:03 -!- Sgeo_ has changed nick to LowerMoreAcidic.
11:45:08 <sploknee> could've at least gone for HalfOfPKaMinusLogC
11:45:12 -!- Taneb_ has joined.
11:45:25 <LowerMoreAcidic> sploknee, I don't actually know that much detail about pH
11:45:34 <sploknee> `welcome Taneb
11:45:36 <HackEgo> Taneb: 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.)
11:45:37 <sploknee> `welcome Taneb_
11:45:39 <HackEgo> Taneb_: 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.)
11:45:49 * GreyKnight breaks out the methyl orange
11:45:55 -!- Taneb has quit (Disconnected by services).
11:45:59 -!- Taneb_ has changed nick to Taneb.
11:46:22 -!- atriq has joined.
11:46:46 <Taneb> Okay, I've left my computer on at home
11:48:55 <GreyKnight> `emoclaw Taneb
11:48:57 <HackEgo> ​(.tan.lad.cri no ciratosa# yrt ,aciratosa fo dnik rahto aht roF) .agaP_niaM/ikiw/gro.sgnalosa//:ptth :ikiw ruo tuo kcahc ,noitamrofni arom roF !tnamyolpad dna ngisad agaugnal gnimmargorp ciratosa rof buh lanoitanratni aht ot amoclaW :banaT
11:49:09 <GreyKnight> bananaT
11:49:12 <Taneb> Emoclaw's new
11:49:25 <Taneb> Yes, my secret is out
11:49:41 <Taneb> I'm actually a banana monad transformer
11:50:19 <LowerMoreAcidic> walcome?
11:50:52 <LowerMoreAcidic> Wait, Walcome, but it says Walcoma
11:51:00 <LowerMoreAcidic> Seems inconsistent
11:53:52 <elliott> `rm bin/emoclaw
11:53:55 <HackEgo> No output.
11:54:16 <ais523> really we could do with a bunch of welcome filters that can be layered on each other
11:54:23 <ais523> although, I don't get why we have this many welcome filters anyway
11:54:30 <ais523> or any at all, for that matter
11:54:44 <Taneb> Composable welcome filters?
11:54:51 <monqy> it could happen
11:54:54 <Taneb> Welcome filters are a category!
11:54:54 <GreyKnight> `emoclew elliott
11:54:56 <HackEgo> ​(.ten.lad.cri no ciretose# yrt ,aciretose fo dnik rehto eht roF) .egaP_niaM/ikiw/gro.sgnalose//:ptth :ikiw ruo tuo kcehc ,noitamrofni erom roF !tnemyolped dna ngised egaugnal gnimmargorp ciretose rof buh lanoitanretni eht ot emocleW :ttoille
11:55:04 <Taneb> (well, I think they're just a monoid....)
11:55:16 -!- hagb4rd has quit (Ping timeout: 256 seconds).
11:55:21 <monqy> category with one object is a category too
11:55:34 <GreyKnight> ais523: I had that thought too but couldn't be bothered implementing it :-)
11:56:30 <GreyKnight> IWBNI the filters could process the message and the person's nick separately
11:56:57 <GreyKnight> (for that matter preserving the URL would be nice too)
11:57:11 <GreyKnight> I feel a monad coming on...!
11:57:15 <LowerMoreAcidic> Why do I automatically think the filters should be written in Haskell
11:57:24 -!- Nisstyre has joined.
11:57:31 <LowerMoreAcidic> I can't just seem to say "Do it in Racket", my language of interest, pure functions like that make me think Haskell
11:57:44 <Taneb> GreyKnight: I don't think it's a Monad
11:58:43 <ais523> Taneb: I think they're a semigroup, which is a special case of a category
11:59:07 <Taneb> ais523: the identity transformation makes it a monoid
11:59:28 <sploknee> Taneb, monads are like bananas!!
11:59:50 <Taneb> sploknee: in that analogies to explain either invariably suck?
12:00:09 <ais523> Taneb: have /you/ seen a banana tutorial?
12:00:25 <ais523> hmm, what apart from monads gets excessively many tutorials?
12:00:43 <ais523> monads are like that
12:00:44 <Taneb> Drawing bodies?
12:00:52 <Taneb> Drawing people
12:01:14 <LowerMoreAcidic> Using Facebook
12:01:14 <Taneb> Monads are like drawing people, in that you learn them by doing, and the abundant tutorials all suck
12:01:25 <LowerMoreAcidic> There exists Facebook for Dummies
12:01:29 <monqy> i've seen a banana tutorial
12:01:29 <monqy> once
12:01:34 <monqy> i forgot what was in it though
12:01:57 <ais523> btw, I finally discovered what a burrito was, recently
12:02:02 <ais523> they're kind of nice to eat
12:02:05 <ais523> but don't really resemble monads
12:02:24 <Taneb> I prefer nachos
12:02:25 <monqy> you didn't know what a burrito is?? I'm surprised
12:02:47 <ais523> monqy: I'm British, they're not too common here
12:02:55 <sploknee> i ate burritos for years before knowing they were called that
12:02:56 <Taneb> ais523: a burritos kinda like a monad
12:03:12 <Taneb> In that you can put stuff in them and that makes them taste different
12:03:55 <LowerMoreAcidic> fizzie, can I transport fungot into another chatroom?
12:03:56 <fungot> LowerMoreAcidic: " and this is a new game. there is no longer the wand the better part made mercie, i should think at least, that is expressions which have not been able, to assume responsibilities. he went on, " the conclusion is, then thou, the greatest soldier, de. she wanna be friends, his state vsurp'd, his realme a slaughter-house, his subjects, the european council decided at its meeting on 30 april, or even this very di
12:04:03 <LowerMoreAcidic> ^style
12:04:04 <fungot> LowerMoreAcidic: ( that is, levinson went to kish, disappeared, had on your behalf of the commission is not allowed to use the crane, enter any two of these letters, a b y.
12:04:10 <Taneb> And you won't often find them in a crêperie.
12:04:20 <LowerMoreAcidic> ^styles
12:04:27 <Taneb> ^style
12:04:27 <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:04:39 <Taneb> ^style ic
12:04:39 <fungot> Selected style: ic (INTERCAL manual)
12:04:46 <Taneb> fungot, is this new?
12:04:47 <fungot> Taneb: your code will cause this error, but you will have the same data as the funge-98 library::); however, it's worth putting a comment with some other intercal compiler maintainers may also want to test if a character, a choicepoint is also computed `create' statement a compile-time error, thus causing this to be used in the pair had different values ( that is supported ( apart from its use of the fingerprint is loaded.)
12:05:35 -!- Nisstyre has quit (Ping timeout: 260 seconds).
12:05:38 <fizzie> Depends on the chatroom? It kind of "supports" multiple channels, in the sense that it doesn't know anything about channels, it just replies to the channel where the message came from.
12:05:43 <ais523> fungot: no it's been there for ages
12:05:43 <fungot> ais523: intercal-72 c-intercal clc-intercal j-intercal yes all versions all versions
12:05:59 <ais523> fungot: that's metadata, stop markoving it
12:06:00 <fungot> ais523: the structure of an optimizer idiom ( in intercal-72, but it is not allowed to `stash' or similar behaviour with respect to your program. in base 2, 3, 4, 5, 6, 7
12:06:06 <fizzie> `addquote <fungot> ais523: intercal-72 c-intercal clc-intercal j-intercal yes all versions all versions
12:06:06 <fungot> fizzie: the main expression in place of the mechanisms available for writing comments. one common idiom is to make things confusing, refers to a onespot or twospot variables, as shown here, a program starts running. the complications that that array can also help pin down a bug.
12:06:09 <HackEgo> 906) <fungot> ais523: intercal-72 c-intercal clc-intercal j-intercal yes all versions all versions
12:06:16 <fizzie> (I don't know, I just thought it looked funny.)
12:06:21 <ais523> fizzie: that's one of the worst fungot quotes ever
12:06:21 <fungot> ais523: 10 multithreading and backtracking extensions to intercal that is, there are various command line of the compiler will produce a `signature' for the full text of the distribution, information on how to fix this error.
12:06:28 <ais523> that's basically at the top of every page in the manual
12:06:31 <ais523> in a table
12:06:34 <fizzie> It was the "all versions all versions" bit.
12:06:42 <ais523> oh, hmm
12:06:50 <ais523> I guess if you interpret it as a sentence, not a table, it is kind-of funny
12:07:00 <fizzie> He just sounds so really enthusiastic about INTERCAL.
12:07:15 <ais523> there's also a windows phone 7 impl
12:07:25 <ais523> but it's very incomplete, it can only do hello world
12:08:30 <LowerMoreAcidic> fizzie, as in, if I took fungot's source, could I also take the Homestuck style?
12:08:30 <fungot> LowerMoreAcidic: operand overloading. ( rather than the intercal-72 manual is: scalar variables, as used in the distribution called " build") match other things to be precise, anywhere after the statement, and gnu cpp and ld, for instance
12:08:35 <LowerMoreAcidic> And just run it somehow
12:08:46 <LowerMoreAcidic> ^source
12:08:47 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
12:10:01 <Taneb> LowerMoreAcidic: you on Sgeo's list?
12:10:30 <fizzie> LowerMoreAcidic: The style files sadly aren't publicly available as-is anywhere. But (one of) the tool(s) for making them are, so you can make your own Homestuck styles that would probably be just as good, if not better.
12:15:50 <LowerMoreAcidic> Taneb, who is this Sgeo who you speak of?
12:16:32 <Taneb> LowerMoreAcidic: I have no idea
12:16:34 <Taneb> Possibly me
12:18:13 <sploknee> we are all sgeo
12:19:09 -!- Nisstyre has joined.
12:38:55 <elliott> the true secret of the list is that it has only one member
12:40:03 -!- oonbotti has joined.
12:40:27 -!- Taneb has quit.
12:41:46 -!- LowerMoreAcidic has changed nick to Sgeo.
12:45:38 -!- Nisstyre has quit (Ping timeout: 265 seconds).
12:49:26 -!- monqy has quit (Quit: hello).
12:57:41 -!- Nisstyre has joined.
13:00:34 <GreyKnight> ais523: feel free to improve my attempt at welcome filters: /hackenv/gktemp/welcome.hs
13:00:53 <GreyKnight> er http://sprunge.us/hiJM might be more readable
13:04:22 <GreyKnight> oh I can use case to deal with that reverseChar stuff
13:05:31 <elliott> you realise ais523 doesn't know Haskell, right?
13:05:58 <elliott> well
13:06:05 <elliott> maybe he does know it
13:06:17 <fizzie> Does ais523 know about timed hits?
13:06:18 * Sgeo didn't realize
13:06:41 <elliott> rewrite your program in OCaml and he might be able to help :P
13:08:23 <Sgeo> elliott, iirc you said something about Racket's contract stuff being interesting
13:08:25 -!- david_werecat has joined.
13:09:26 <elliott> i have no recollection of that
13:10:28 <GreyKnight> oh *well*
13:11:56 <GreyKnight> anyway the actual filters are just (String -> String), using the '@' character as a placeholder for the URL. So I guess I could break out to the shell and use a simple pipeline of scripts for filtering
13:12:02 <GreyKnight> (therefore you can write a filter in any language)
13:37:42 <Sgeo> http://pastie.org/5661445
13:37:49 <Sgeo> Really should be using for/fold
13:40:35 -!- DH____ has quit (Read error: Connection reset by peer).
13:40:40 -!- DHeadshot has joined.
14:03:17 <GreyKnight> `run gktemp/cwelcome | gktemp/target shachaf
14:03:19 <HackEgo> shachaf: 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.)
14:03:21 <GreyKnight> `run gktemp/cwelcome | tr a-zA-Z n-za-mN-ZA-M | gktemp/target shachaf
14:03:22 <HackEgo> shachaf: Jrypbzr gb gur vagreangvbany uho sbe rfbgrevp cebtenzzvat ynathntr qrfvta naq qrcyblzrag! Sbe zber vasbezngvba, purpx bhg bhe jvxv: http://esolangs.org/wiki/Main_Page. (Sbe gur bgure xvaq bs rfbgrevpn, gel #rfbgrevp ba vep.qny.arg.)
14:03:27 <GreyKnight> yay filters
14:05:40 <elliott> the filters are meant to process the URL too...
14:05:44 <elliott> all the existing ones do
14:05:58 <elliott> the name, also
14:06:11 <elliott> also, target exists
14:06:14 <elliott> `@ foo echo bar
14:06:15 <HackEgo> foo: bar
14:08:46 <ais523> elliott: I know a bit of Haskell, especially the semantics, I can't be bothered learning the syntax though :)
14:09:01 <GreyKnight> the existing ones *do* but IMAO they shouldn't, so there.
14:09:02 <ais523> I've even written serious (if small) Haskell programs before
14:09:57 <elliott> well your opinion sucks
14:10:01 <GreyKnight> no u
14:10:08 <ais523> elliott: is that even an opinion?
14:10:31 <GreyKnight> Opinions are like categories: everything is one
14:10:31 <elliott> ais523: unless IMAO means something completely different now, yes?
14:10:58 <elliott> ais523: hmm, didn't we write that underload compiler in haskell?
14:11:09 <elliott> I wonder if there are more innovations in Underload compilation to be made
14:11:12 <ais523> elliott: oh, I thought that was directed at me
14:11:20 <ais523> and yes, we did, but I thought it was entirely you writing it
14:11:27 <ais523> and I had repo access for no obvious reason
14:12:01 <elliott> ais523: hmm, maybe; I thought you wrote the initial version or something
14:12:09 <ais523> no, you wrote the initial version
14:12:16 <elliott> I mean, the initial non-Scheme version
14:12:18 <elliott> so the... ditial
14:12:21 <ais523> hmm
14:12:22 <elliott> what's the word for the second thing?
14:12:26 <elliott> btw, did anyone ever write a compiler that partially optimises integers?
14:12:42 <ais523> elliott: I have an interpreter that partially optimises integers
14:12:46 <ais523> but I can't remember what language it's for
14:12:50 <ais523> it might be Overload or Underlambda
14:12:51 <elliott> Underlambda, I think
14:12:57 <elliott> but interpreters don't count
14:13:05 -!- Arc_Koen has joined.
14:14:15 <fizzie> Is there an Overlambda?
14:14:33 <ais523> fizzie: no
14:14:51 <ais523> it is possible that the name will eventually be used, given the direction Underlambda would be going in if I were working on it
14:15:36 <elliott> ais523: hmm, I wonder if you can do partial type inference for Underload
14:15:40 <elliott> to write an optimising compiler
14:16:01 <elliott> that would let you eliminate lots of stack shuffling statically as well as tracking whether something stays a Smith integer
14:16:40 <ais523> elliott: that's actually the test case I'm using for Anarchy :)
14:17:13 <GreyKnight> "Smith integer" you say
14:18:16 <ais523> GreyKnight: elliott defined the term, not me
14:18:22 <ais523> they're the concatenative versions of Church numerals
14:18:51 <elliott> wasn't it actually oerjan
14:19:12 <ais523> hmm, perhaps
14:19:15 <ais523> I still think of them as Church numerals
14:19:17 <ais523> but perhaps they aren't
14:19:40 <ais523> btw, the Underlambda version of lists is much simpler than the Underload version, because I have a couple of extra primitives
14:19:49 <ais523> one which just puts parens around the entire stack, effectively
14:20:09 <ais523> and another one which can be used to test if the stack is empty
14:20:21 <elliott> I think we agreed they differ from church numerals somehow
14:20:41 <elliott> hmm, now I want to try writing an Underload type inferer
14:20:56 <elliott> it sounds interesting
14:21:03 <elliott> (inferrer?)
14:21:30 <GreyKnight> "concatenative" means it's based on Underload's * operator?
14:22:24 <GreyKnight> oh there's a section on [[Underload]] about it
14:23:00 <ais523> GreyKnight: concatenativity is a property that some languages have
14:23:30 <GreyKnight> if P, Q are programs then PQ is a program?
14:23:34 <ais523> it basically means that you can split a program at any point (except inside matched grouping operators like [] in BF) and get two separate programs, that can be composed (via the mathematical definition of composition) to form the original program
14:23:34 <elliott> hmm, partially inferring Underload stack effects seems quite easy
14:23:37 <elliott> ais523: have you done any work on this?
14:23:47 <ais523> if P,Q are programs, then PQ is a program which means \x.Q(P(x))
14:24:00 <ais523> elliott: as I said, I'm using it as a test case for Anarchy
14:24:03 <elliott> GreyKnight: concatenativity means that syntactic concatenation is semantic composition
14:24:10 <elliott> ais523: oh, I didn't see
14:24:14 <ais523> I also tried running it through OCaml's type inference machinery, but it's not tha good at it
14:24:17 <elliott> ais523: so Anarchy, um, writes type inferers for you?
14:24:31 <ais523> elliott: nah, I was compiling Underload into Anarchy
14:24:37 <elliott> I don't mean inferring the types of the combinators, but rather inferring the stack effects of actual programs; obviously this will fail in some cases
14:24:43 <elliott> (when there is a dynamic stack effect)
14:24:55 <ais523> it's designed as a language in which to write type inferers, but this was to test its type inferer (which doesn't exist yet but I think I know how it will work)
14:24:55 <elliott> but it seems like you could eliminate a lot of stuff statically like this
14:25:16 <ais523> elliott: actually the motivating reason for Anarchy was that I've written something like three type inferers for work now and it's a lot of pain doing it in any existing language
14:25:24 <ais523> OCaml's the least bad at the moment
14:25:32 <elliott> it's alright in haskell :)
14:25:36 -!- hagb4rd has joined.
14:25:44 <ais523> elliott: Haskell would have the same problems; actually slightly more because of no polymorphic variants
14:25:52 <elliott> I don't think OCaml has the generic programming facilities Haskell does
14:26:10 <elliott> probably Haskell is no better than OCaml for this kind of stuff for a novice though
14:26:16 <ais523> here's an example: you have three similar type systems, most of the types are the same in all three systems but there are a few that differ
14:26:24 <elliott> I know about OCaml's variants
14:26:29 <ais523> and you want to automatically convert from one type to another
14:27:02 <elliott> you can do similar stuff in other ways in Haskello jur st avoid the problem most of the time... of course it is an advantage but I don't believe it's comparable to the advantage of Haskell's generic programming facilities
14:27:08 <ais523> in OCaml, whether or not you have polymorphic variants, you have to write a case statement on every constructor in your system, recursing into their fields, and writing the constructor on both the left or the right
14:28:12 <elliott> yes
14:28:16 <ais523> actually, the example I use in the Anarchy docs, in OCaml, it looks like this: let rec stringise_leaves = function | `Tree x y -> `Tree (stringise_leaves x) (stringise_leaves y) | `Leaf x -> `Leaf (string_of_int x)
14:28:17 <elliott> that's the advantage Haskell has that I mentioned
14:28:21 <elliott> you don't have to do that
14:28:24 <ais523> how does that look in Haskell?
14:29:05 <ais523> if you can't read the OCaml I'll explain it, but I think you can, it's pretty clear
14:29:32 <ais523> btw, in Anarchy, it's stringise_leaves = | Leaf x -> string_of_int x | _ -> recurse
14:29:55 -!- sploknee has quit (Ping timeout: 240 seconds).
14:30:02 <elliott> ais523: stringiseLeaves = everywhere $ mkT show
14:30:34 <ais523> hmm, interesting
14:30:36 <elliott> or, arguably, stringiseLeaves = everywhere . mkT $ \case { Leaf x -> Leaf (show x); x -> x }
14:30:50 <elliott> or something of that form
14:30:55 <ais523> everywhere presumably does magic similar to Anarchy's recurse?
14:31:06 <elliott> more or less, though it's all just done with typeclasses
14:31:16 <elliott> you can write your own instances of the Data typeclass it uses, but you probably don't want to
14:31:18 <ais523> yeah, Anarchy's isn't very magical either, it just looks like it
14:31:28 <elliott> that's the Scrap Your Boilerplate system; there are others, though, like Uniplate
14:31:54 <elliott> (the lens package subsumes Uniplate and has an interface to Data.Data on which syb is built, also)
14:31:54 -!- sploknee has joined.
14:32:13 <elliott> :t Node
14:32:14 <lambdabot> a -> Forest a -> Tree a
14:32:19 <GreyKnight> The only difference I can see between Smith and Church integers is that the former's argument/return values go via a stack
14:32:32 <elliott> > Node 123 [Node 456 [], Node 789 [Node 12345 []]]
14:32:33 <lambdabot> Node {rootLabel = 123, subForest = [Node {rootLabel = 456, subForest = []},...
14:32:42 <elliott> > Node 123 [Node 456 [], Node 789 [Node 12345 []]] & template %~ show
14:32:43 <lambdabot> Node {rootLabel = 123, subForest = [Node {rootLabel = 456, subForest = []},...
14:32:48 <elliott> er, right
14:32:52 <elliott> > Node 123 [Node 456 [], Node 789 [Node 12345 []]] & template %~ (show :: Integer -> String)
14:32:54 <lambdabot> Couldn't match expected type `GHC.Integer.Type.Integer'
14:32:54 <lambdabot> with a...
14:32:59 <elliott> er
14:33:05 <elliott> what am I doing :)
14:33:28 <ais523> GreyKnight: Smith integers don't respect typing the way Church integers do
14:33:35 <elliott> ais523: right, my stringiseLeaves is actually wrong because it changes the type, I think
14:33:51 <elliott> er, sort of
14:33:52 <ais523> ^ul ((x))(:^:^:^)^SSSSSSSS
14:33:52 <fungot> ...bad insn!
14:33:55 <elliott> oh, never mind :)
14:33:56 <ais523> err, hmm
14:34:06 <ais523> ^ul ((x))(:^:^:^)^^SSSSSSSS
14:34:06 <fungot> ...bad insn!
14:34:10 <ais523> what am I doing wrong?
14:34:15 <elliott> bad insn
14:34:24 <ais523> yeah, but…
14:34:31 <fizzie> Hrm.
14:34:32 <GreyKnight> try using a better insn
14:34:36 <ais523> ^ul ((x))(:*:*:*)^^SSSSSSSS
14:34:37 <fungot> xxxxxxxx
14:34:38 <elliott> ais523: you're running x I guess?
14:34:40 <ais523> there we go
14:34:47 <ais523> elliott: yeah, just trying to figure out what I'd typoed
14:35:09 <ais523> can Haskell do the twice head thing?
14:35:09 <fizzie> fungot: Try being more helpful next time, please.
14:35:09 <fungot> fizzie: intercal-72 c-intercal clc-intercal j-intercal no version 0.28+ no no
14:35:18 <fizzie> This one was much more negative. :/
14:35:21 <elliott> ais523: twice head?
14:35:25 <GreyKnight> fungot has gone off haskell :-(
14:35:26 <fungot> GreyKnight: as an example of using `ick_create', that it's running as it doesn't matter where you need to insert shift codes; for information on the command rather than operating on it.
14:35:29 <ais523> elliott: it's an example Reddit came up with
14:35:33 <GreyKnight> er intercal (easy to get them mixed up)
14:35:37 <ais523> basically, "twice" is the church numeral for 2
14:35:44 <elliott> ais523: you mean twice head :: [[a]] -> a?
14:35:46 <elliott> for some twice
14:35:48 <ais523> i.e. \f.\x.f(f x)
14:35:49 <ais523> and yeah
14:36:11 <elliott> ais523: I think any type system that can do that doesn't have decidable inference
14:36:19 <elliott> or gives up some other important property anyway
14:36:25 <ais523> the problem is trying to write the type of twice: it's (a -> b & b -> c) -> a -> c
14:36:28 <elliott> err, I guess inference isn't the problem
14:36:31 <elliott> ais523: yes, oerjan has written about this
14:36:43 <elliott> it doesn't work :)
14:36:55 <ais523> Anarchy does that, but it does indeed give up properties I think you'd consider important
14:37:13 <ais523> actually, hmm
14:37:28 <elliott> ais523: http://stackoverflow.com/questions/8296695/is-milner-let-polymorphism-a-rank-2-feature/8433852#8433852
14:37:35 <ais523> in the absence of recursion, you could use SCC inference then linearization
14:37:43 <elliott> you can't compute principle types, is the problem, I believe
14:37:47 <ais523> so it's clearly recursion that makes it not work
14:37:54 <ais523> elliott: yeah, I don't care about those at all in Anarchy :)
14:39:05 <ais523> I decided to focus on the easier problem of "does this term have a type" at first order, rather than "what is the type of this term"
14:39:38 <ais523> as in, work out if the term types or not, given all the arguments
14:39:45 <ais523> this is all that's necessary to actually run a program
14:40:45 * elliott suspects your compiler is going to diverge a lot.
14:41:04 <ais523> elliott: I hope not
14:41:16 <ais523> I was planning to put some restrictions on recursion
14:41:22 <ais523> and then the compiler would provably terminate
14:42:01 <elliott> give language a maximum reduction depth of 65536
14:42:04 <elliott> PROBLEM SOLVED
14:42:18 <ais523> there are plausible reasons to want to recurse deeper than that
14:42:32 <Sgeo> 65537, just for a number that makes no sense whatsoever
14:42:33 <GreyKnight> thatsthejoke.gif
14:42:51 <ais523> Sgeo: actually 65537 is one of the most easy-to-memorize largish primes
14:42:55 <ais523> so it's quite frequently used
14:43:29 <Sgeo> o.O
14:43:41 <Sgeo> Use the first completely uninteresting integer
14:43:53 <ais523> elliott: oh dear, I've got into an argument with my boss about whether "Hindley–Milner type inference" is a correct phrase or not
14:44:03 <elliott> who is on what side?
14:44:23 <ais523> I vaguely remembered that Hindley–Milner referred to the type system, rather than the inference alog
14:44:24 <ais523> *algo
14:44:32 <elliott> In type theory, Hindley–Milner (HM) (also known as Damas–Milner or Damas–Hindley–Milner) is a classical type inference method with parametric polymorphism for the lambda calculus, first described by J. Roger Hindley[1] and later rediscovered by Robin Milner.[2] Luis Damas contributed a close formal analysis and proof of the method in his PhD thesis.[3][4]
14:44:34 <ais523> so wanted to rewrite it as "inference for Hindley–Milner types"
14:44:38 <ais523> elliott: yeah, he just quoted that at me
14:44:48 <elliott> Organizing their original paper, Damas and Milner[4] clearly separated two very different tasks. One is to describe what types an expression can have and another to present an algorithm actually computing a type. Keeping both aspects apart from each other allows to focus separately on the logic (i.e. meaning) behind the algorithm, as well as to establish a benchmark for the algorithm's properties.
14:45:01 <elliott> looks like this is the kind of argument where one of the arguers is wrong
14:45:21 <ais523> elliott: if you think it's fine, I'll be OK with it too
14:45:53 <elliott> ais523: compromise: say Damas-Hindley-Milner, which is what neither of you are proposing
14:45:56 <elliott> er
14:45:57 <elliott> ais523: compromise: say Damas-Hindley-Milner type inference, which is what neither of you are proposing
14:46:14 <elliott> (the idea of compromises is to pick something people aren't arguing over without actually resolving any objections, right?)
14:47:01 <ais523> elliott: :)
14:47:17 <GreyKnight> "perfect"
14:49:54 <elliott> ais523: btw, I am half-working on a language with variants like OCaml's
14:50:00 <elliott> no guarantees it will become a thing though
14:50:10 <ais523> polymorphic variants seem a bit like a band-aid, though
14:50:16 <ais523> they don't seem to solve any problem except "having to declare what type something is"
14:50:32 <elliott> well, they're fairly fundamental to my language
14:50:32 <ais523> and they don't even solve that problem in some cases, e.g. ocamlyacc requires you to declare what type its output is
14:50:37 <elliott> I don't really care what reason OCaml has them
14:50:42 <elliott> from what I hear it does them badly
14:50:46 <ais523> which means writing the type out by hand even when you have polymorphic variants
14:58:21 <elliott> in particular, the same trick is useful for records
14:58:27 <elliott> I forget how OCaml's record system works though, I think it has multiple
15:02:05 <GreyKnight> what, no lenses??
15:15:04 <GreyKnight> ...if this code had any more boilerplate, it could be mistaken for an actual boiler
15:20:12 -!- impomatic has joined.
15:29:47 -!- augur_ has quit (Remote host closed the connection).
15:31:35 -!- sploknee has quit (Ping timeout: 240 seconds).
15:32:17 <GreyKnight> I wonder if any other languages have lens-like concepts
15:38:01 <GreyKnight> ais523: can we get some of the monad tutorial people to write lens tutorials maybe???
15:38:11 <GreyKnight> I am eager to find out how to put some nuclear waste in a lens
15:39:23 <GreyKnight> `? lens
15:39:25 <HackEgo> A lens is just a store comonad coalgebra.
15:40:25 -!- Nisstyre has quit (Ping timeout: 276 seconds).
15:50:56 -!- nooodl_ has joined.
15:53:22 -!- sploknee has joined.
15:55:07 -!- Nisstyre has joined.
15:56:52 -!- GreyKnight has quit (Quit: -->).
15:58:16 -!- mekeor has joined.
16:01:48 <coppro> ahahah
16:01:51 <coppro> http://www.gpo.gov/fdsys/pkg/GPO-HPREC-HINDS-V5/pdf/GPO-HPREC-HINDS-V5-11.pdf
16:01:54 <coppro> wonderful
16:05:44 <coppro> there are some truly brilliant moments in there
16:25:54 -!- GreyKnight has joined.
16:26:11 -!- Arc_Koen has quit (Quit: Arc_Koen).
16:26:16 <GreyKnight> coppro: hm is this from some nomic?? :^)
16:27:27 <kmc> yes
16:29:44 <GreyKnight> I saw a few vaguely amusing bits but nothing really rib-tickling, maybe I missed them?
16:29:45 <GreyKnight> (Or maybe you need to be a Leftpondian to get them IDK)
16:35:14 -!- GreyKnight has quit (Ping timeout: 265 seconds).
16:36:05 <coppro> Gregor: no
16:36:10 <coppro> Gregor: it's from the US House of Representatives
16:37:55 -!- augur has joined.
16:46:15 -!- Arc_Koen has joined.
16:49:05 <kmc> that is a nomic
16:51:52 <c00kiemon5ter> this seems fun http://j.mp/ZwWCcX
16:52:44 <Sgeo> Oops! Google Chrome could not find j.mp
16:56:47 <c00kiemon5ter> fix your interwebz Sgeo!
16:57:23 <Sgeo> Hmm, working now
16:57:45 -!- impomatic has quit (Quit: impomatic).
17:04:29 <Sgeo> https://twitter.com/NRCC/status/289029749555212288
17:09:02 -!- Arc_Koen has quit (Quit: Arc_Koen).
17:11:18 -!- augur has quit (Remote host closed the connection).
17:16:42 -!- Zerker has joined.
17:16:46 -!- augur has joined.
17:17:50 -!- Zerker has quit (Remote host closed the connection).
17:18:04 -!- Zerker has joined.
17:25:10 -!- AnotherTest has joined.
17:25:16 <AnotherTest> Hello
17:26:35 -!- Frooxius has quit (Read error: Connection reset by peer).
17:27:53 -!- Frooxius has joined.
17:29:34 -!- Bike has joined.
17:29:45 -!- Zerker has quit (Read error: Connection reset by peer).
17:31:25 -!- Zerker has joined.
17:32:10 -!- augur has quit (Remote host closed the connection).
17:39:11 -!- FreeFull has joined.
17:39:20 -!- Zerker has quit (Quit: Colloquy for iPad - Timeout (10 minutes)).
17:39:32 -!- Zerker has joined.
17:41:53 <Sgeo> Implementing STM isn't that difficult, is it? I mean, I can imagine implementing _efficient_ STM to be difficult, but STM in and of itself sounds simple enough
17:42:04 -!- carado has joined.
17:42:41 <FreeFull> Sgeo: That's true for a lot of things
17:43:48 -!- carado has quit (Remote host closed the connection).
17:47:11 -!- Gracenotes has quit (Ping timeout: 246 seconds).
17:47:37 <sploknee> Sgeo, hey can phantom hoover come off the list please
17:47:59 <Sgeo> Only if sploknee goes on it.
17:48:18 <elliott> are people really seriously not allowed to get off the list
17:48:23 <sploknee> i am willing to accept this sacrifice
17:48:23 * Sgeo is joking
17:48:37 <shachaf> @djinn (Either (t -> s) (s -> t) -> Void) -> Not (Either (t -> x) (x -> t) -> Void) -> Not (Either (x -> s) (s -> x) -> Void) -> Void
17:48:37 <lambdabot> f a b c =
17:48:38 <lambdabot> void (c (\ d ->
17:48:38 <lambdabot> case d of
17:48:38 <lambdabot> Left e -> void (b (\ f ->
17:48:38 <lambdabot> case f of
17:48:39 <lambdabot> Left g -> void (a (Left (\ h -> void (a (Left (\ _ -> e (g h)))))))
17:48:40 <Sgeo> Although I'll need to force myself to remember somehow
17:48:41 <lambdabot> Right _ -> void (a (Right (\ i -> void (a (Left (\ _ -> i))))))))
17:48:43 <lambdabot> Right j -> void (b (\ k ->
17:48:45 <lambdabot> case k of
17:48:47 <lambdabot> Left _ -> void (a (Right (\ l -> void (a (Left (\ _ -> l))))))
17:48:49 <lambdabot> Right m -> void (a (Right (\ n ->
17:48:51 <lambdabot> void (a (Right (\ _ -> m (j n)))))))))))
17:49:03 <shachaf> i love that function!!
17:51:15 <Sgeo> The problem with people leaving the list is that I might forget that they're off the list
17:51:44 <Bike> don't you only have like three people on the list. how hard is that
17:52:05 <sploknee> Sgeo so help me god if you don't remove me from that list i will call you names so nasty you will never want to hear a spoken word again
17:53:30 -!- Gracenotes has joined.
17:59:53 -!- atriq has changed nick to Taneb.
18:00:35 <sploknee> Taneb, make Sgeo take me off the list
18:00:36 <sploknee> please
18:01:14 <Taneb> Sgeo, keep sploknee on the list at all costs
18:01:14 <Sgeo> sploknee, you are as off the list as it is possible to be
18:01:28 <Sgeo> (i.e. within the limits of my memory)
18:01:45 <Taneb> (shachaf ends up on the list sometimes, and he absolutely hates homestuck)
18:02:00 -!- Lumpio- has quit (*.net *.split).
18:02:00 -!- oklofok has quit (*.net *.split).
18:02:00 -!- Sanky has quit (*.net *.split).
18:02:00 -!- elliott has quit (*.net *.split).
18:02:00 -!- myndzi has quit (*.net *.split).
18:02:04 <sploknee> you aren't going to notify me when i change my nick back to Phantom_Hoover, then?
18:02:14 -!- elliott has joined.
18:02:15 -!- Lumpio- has joined.
18:02:17 -!- oklofok has joined.
18:02:24 -!- myndzi has joined.
18:02:27 -!- Sanky has joined.
18:02:38 -!- elliott has changed nick to Guest87682.
18:03:30 <Sgeo> sploknee, right
18:03:58 <sploknee> right, remove elliott from the list too and your crimes will be entirely attoned for
18:05:37 <Sgeo> I have no reason to believe that Guest87682 want to be taken off the list
18:05:47 <Taneb> Oh god, some people are changing their nicks
18:05:56 <Taneb> This must be what everyone else feels like, all the time
18:06:14 -!- Guest87682 has changed nick to elliott.
18:06:20 -!- elliott has quit (Changing host).
18:06:20 -!- elliott has joined.
18:06:39 * Bike plays the fiddle as Taneb burns
18:08:02 <sploknee> Taneb already burnt the other night
18:08:13 <sploknee> you're talking to the cinder that was him
18:08:25 <Taneb> sploknee, eating did help
18:08:29 <Taneb> Then I went to bed
18:08:32 <kmc> Sgeo: yes, you can implement inefficient STM with a single global lock
18:10:13 <kmc> every transaction takes the global lock, problem solved
18:11:58 <Sgeo> I nedd lspepe
18:12:01 <Sgeo> Need leep
18:12:03 <Sgeo> sleep
18:15:04 <kmc> google calendar's favicon style has changed slightly
18:15:11 <kmc> IS THIS THE BEGINNING OF THE END FOR THE SEARCH GIANT!?!?!?
18:16:54 <Sgeo> http://www.reddit.com/r/funny/comments/11zrnm/to_be_fair_most_people_in_ancient_rome_hadnt_even/
18:16:57 <sploknee> kmc is this you turning everything into a commentary on your pet peeves again
18:17:29 <Sgeo> help is reading /r/friends considered creepy
18:17:50 <sploknee> is that like a subreddit for finding friends
18:18:11 <Bike> i'm curious what corpus they use for english/latin with words like "nebraska"
18:18:52 <Sgeo> It's a pseudo-subreddit that shows all the submissions your Reddit friends made
18:18:58 <kmc> sploknee: yes
18:19:04 <Sgeo> I love putting the pseudo prefix on stuff
18:19:17 <kmc> you can have reddit friends?
18:19:19 <sploknee> i just
18:19:19 <kmc> til
18:19:34 <Bike> reddit stalkees
18:20:07 <Sgeo> They're unidirectional
18:20:15 <Sgeo> I can friend anyone without them knowing or needing to accept
18:20:33 <kmc> yeah
18:20:34 <kmc> so what Bike said
18:21:26 <Bike> gotta love social networks.
18:21:42 <kmc> Bike: google used to translate "quid pro quo" as "What happens in Vegas"
18:22:17 <Bike> so close
18:22:21 <kmc> i read an article this morning about how IBM accidentally taught Watson to swear profusely, but the article didn't have examples
18:23:33 <kmc> but it does remind me of another Watson story
18:24:30 <kmc> Q: "rhyming term in boxing for a below the belt attack"
18:24:34 <kmc> actual answer: "low blow"
18:24:39 <kmc> watson's answer: "wang bang"
18:24:57 <Jafet> Was it accepted
18:25:25 <kmc> this was in practice
18:26:03 <Jafet> Is there a jeopardy rule that awards discretionary points for that
18:26:08 <Jafet> I don't know jeopardy
18:26:09 <kmc> don't think so
18:26:22 <kmc> i think you have to get essentially the answer they are looking for
18:26:28 <kmc> even if others would fit the prompt
18:26:45 <Jafet> "lame game"
18:28:48 <oklofok> dick flick
18:29:41 <Bike> cock sock?
18:29:46 -!- Zerker has quit (Remote host closed the connection).
18:30:31 <oklofok> oh that's nick
18:30:34 <oklofok> erm
18:30:35 <oklofok> nice
18:30:54 <Bike> watson ain't got nuthin on me
18:30:57 <oklofok> i'm gonna sock your cock
18:31:10 <oklofok> i don't see a problem with this term.
18:31:37 <Jafet> Blow me low.
18:31:43 <oklofok> .hmm
18:31:45 <oklofok> good point
18:32:11 <Bike> if anything, doubling as a marketable sex toy name is an advantage
18:33:42 <Jafet> You cock socker
18:34:49 <AnotherTest> Has the syntax of mathematical statements (consisting for all, there exists etc.) been formally specified (and maybe standardized)?
18:34:57 <AnotherTest> *consisting of
18:35:05 <oklofok> pretty much
18:35:10 <Bike> prenex form?
18:35:28 <kmc> there are many axiomatic systems for predicate logic
18:35:42 <kmc> formal specification of syntax and semantics
18:36:02 <Bike> the syntax is important for godelization and all, it was probably the first language to have its syntax formally described, if anything
18:36:35 <Jafet> ISO standardized set theory
18:37:15 <AnotherTest> Where could I find such a spec?
18:37:27 <AnotherTest> (my searches have been unsuccessful so far)
18:37:27 <Jafet> Our grothendieck constructors are professionally certified and ready to lay your new foundations today!!
18:38:16 <Bike> why would they need a full spec? it's just quantification, predication, and a few things like implication or conjunction
18:38:16 -!- DHeadshot has quit (Read error: Connection reset by peer).
18:38:33 <Fiora> Sgeo: reddit has a weird definition of friend
18:39:00 <AnotherTest> Bike: not a full spec, just the formal syntax of a mathematical sentence
18:39:48 <Bike> can't you just write it out yourself
18:40:19 <Jafet> But what would you write it in?
18:40:27 <AnotherTest> Bike: I don't think I know all existing notations
18:40:49 <AnotherTest> (all existing and if possible "standard" notations)
18:40:59 <Bike> a sentence is either a variable, a sentence AND another sentence, a sentence OR another sentence, a sentence IMPLIES another sentence, a predicate(a sentence), forall variable sentence, exists variable sentence
18:41:06 <kmc> "Just owned up 12k RoR apps. Does anyone want to buy the combined db dumps? Email addresses of 43 white males 19-23 yr old in SF area."
18:41:09 -!- GreyKnight has joined.
18:41:10 <kmc> "Update on the Ruby on Rails vulns: very few servers have calc.exe installed, so you are probably safe. Patch over the weekend."
18:41:19 <AnotherTest> Bike: but there is also, there exists just one
18:41:44 <oklofok> AnotherTest: the actual syntax in use is 10%-90% natural language
18:41:44 <AnotherTest> and of course declarations
18:41:45 <Bike> if you want to include every notation everyone's ever used for first-order logic you're going to be working on it for all time
18:41:56 <oklofok> the formalizations have been done for the sake of formalizing
18:42:00 <Bike> logicians just make things up when they need it
18:43:07 <Jafet> I bet you've never heard of Jafet's homotopical subway turnstile notation
18:43:09 <AnotherTest> Well I think a formal definition would be useful just to make everyone use the same symbols
18:43:14 <Fiora> kmc: "43 white males 19-23 yr old" that is terrible and wonderful
18:43:16 <Bike> hahahahah
18:43:52 <Bike> right i bet if we just standardized a programming language we could get everyone using just the one too
18:44:14 <oklofok> AnotherTest: well the most universal mathematical language is english
18:44:25 <kmc> both are from @thegrugq who is an infamous figure in infosec and a prolific twitterrerer
18:44:34 <oklofok> for your purpose
18:45:13 <kmc> for now
18:45:37 <kmc> it was latin, then german, then russian, and one day it will be chinese
18:45:41 <AnotherTest> oklofok: I agree, but what if you wanted to have a standard set of symbols such as the current ones in use (there exists, element of etc.), you would need a standard to allow universal understanding of those symbols?
18:45:48 <Bike> what about french?
18:45:51 <kmc> probably that too
18:45:59 <oklofok> french had its moment
18:46:01 <AnotherTest> and greek
18:46:06 <oklofok> greek had its moment
18:46:14 <Bike> hm what did euler write in
18:46:16 <Bike> probably latin?
18:46:22 <AnotherTest> and german probably
18:46:27 * Bike hasn't ready any original euler. THE SHAAAAAME
18:46:29 <oklofok> latin had... okay i'll shut up
18:47:09 <oklofok> AnotherTest: universal understanding comes from explaining stuff in natural language, usually
18:47:11 <Bike> AnotherTest: commonly mathematicians just write something to the effect of "it'd be a PITA to write this out in english every time so here's a new symbol to designate [definition]" in their papers
18:47:23 -!- copumpkin has quit (Ping timeout: 252 seconds).
18:47:30 <oklofok> explain what you want to do and try not to assume too much previous knowledge
18:47:54 -!- copumpkin has joined.
18:48:04 <AnotherTest> Bike: oh well, I guess that works too
18:48:18 <AnotherTest> Although you do have to rewrite it every time again
18:48:41 <Bike> of course sometimes you get someone like bourbaki to come along and say "let's use this notation", and some of it catches on (null set) and some of it doesn't
18:48:52 <oklofok> well that's the implicit meaning of we'll denote the property of ........blahblah........ by (1).
18:49:13 <GreyKnight> I guess if we could work out a "really basic" language for specifying mathematics in it would be handy for bootstrapping communication with aliens :-)
18:49:32 <oklofok> i don't think i've seen people actually state that that's the reason in math papers, but it happens in the more applied sort of cs papers
18:49:32 <Bike> standardizing a language is sort of an impossible problem, look at french and they're using "weekend" in violation of the academie
18:49:40 <Bike> *their using
18:49:43 <Bike> GreyKnight: been done a few times
18:49:52 <Jafet> "This species, their math sucks."
18:50:11 <GreyKnight> Bike: well, that is sort of what AnotherTest wants I think
18:50:24 <Bike> philosophical languages, lol.
18:51:15 <oklofok> by the way do you like http://us.metamath.org/index.html
18:51:52 <oklofok> i found that delightful a few years back but i haven't heard much about it
18:52:10 <GreyKnight> Sounds like fun
18:52:34 <oklofok> perhaps i like it because it's the only formal proof system i have learned to read
18:52:54 <GreyKnight> I wonder if it counts as an esolang
18:53:44 <AnotherTest> I guess if we had a standardized math syntax, we could use syntax-direct translation to Alien math
18:54:36 <Jafet> "Substitution consists of replacing the symbols for variables with expressions representing special cases of those variables. That's the only mathematical concept you need!"
18:54:43 <Jafet> Crank meter reading high
18:54:49 <oklofok> in metamath?
18:54:58 <Bike> that's just lambda calculus, isn't it
18:55:09 <kmc> "need" for what?
18:55:14 <Jafet> So yeah, I heard rewrite systems are universal
18:55:33 <kmc> need to mechanically evaluate terms or need to understand wtf is going on
18:55:56 <GreyKnight> I saw a puzzle years ago which was a magic square created by aliens. You had to try and figure out which symbol meant what (of course you don't know what base their numbers are in)
18:56:30 <Bike> why would you assume they even use a radix system
18:56:39 <oklofok> why would you assume the symbols mean something
18:56:49 <oklofok> i would just assume they like drawing random things
18:56:52 <GreyKnight> Well that was implicit in the puzzle, Bike
18:57:31 <Jafet> Hey, mexicans use radix systems.
18:57:34 <AnotherTest> oklofok: they might as well not be able to draw
18:57:35 <Bike> not a very good representation of aliens, then!
18:57:52 <oklofok> AnotherTest: no, they have drawn a neat magic square
18:58:13 <AnotherTest> oklofok: maybe they kidnapped a human and forced him/her to do so
18:58:49 <oklofok> well i took the first sentence as fact and the rest as GreyKnight's interpretation.
18:59:07 <oklofok> although i suppose that can also be called creating something
18:59:07 <GreyKnight> Bike: it was a puzzle, not a research problem :-I
18:59:28 <Jafet> This anal probe is rather uncomfortable. I sense that they want me to draw a magic square
18:59:36 <Bike> GreyKnight: not hardcore enough
18:59:47 <GreyKnight> DO BETTER
18:59:59 -!- sploknee has quit (Ping timeout: 260 seconds).
19:00:32 <Jafet> This figure is known to be a magic square drawn by aliens. Determine how to attack their home planet
19:01:22 <GreyKnight> Jafet: Time Out Of Joint? :-)
19:01:38 -!- sploknee has joined.
19:02:37 <Jafet> Plan 3²
19:04:12 <GreyKnight> I like some things from plan9 but not other things
19:04:24 <oklofok> are you zzo in disguise
19:04:24 <GreyKnight> </zzo38>
19:04:42 <GreyKnight> Maybe
19:04:48 <kmc> Content-type: application/zzo38
19:05:13 <GreyKnight> kmc: equivalent to text/plain surely? :-)
19:05:26 <Bike> but what encoding is it eh
19:05:33 <kmc> cp437?
19:05:35 <GreyKnight> ASCII
19:06:54 <GreyKnight> @tell zzo38 What are your thoughts on plan9? Inquiring minds want to know.
19:06:54 <lambdabot> Consider it noted.
19:08:11 <GreyKnight> `welcome kmc
19:08:13 <HackEgo> kmc: 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.)
19:08:25 <kmc> `welcome fungot
19:08:26 <fungot> kmc: is: something special in canada called ' fourth'? if so, returns control to the fnord they tend to be news to me. calculus seems so much more interesting to have a .spec file, a file, then
19:08:27 <HackEgo> fungot: 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.)
19:09:06 <GreyKnight> fungot: I think canada's "fourth" is just the normal one (not sure though)
19:09:07 <fungot> GreyKnight: ' not very'.) followed by the tanks. hadn't even bothered to confiscate across the universal security strip
19:09:40 <GreyKnight> Oh! I didn't realise "fourth" was considered a national secret in Canada O_O
19:09:57 <kmc> well they number from zero in canada
19:10:02 <kmc> so it would be the same as US "fifth"
19:10:17 <kmc> (this might actually be true for buildings?!?)
19:10:20 <Jafet> I thought most of canada is below zero
19:10:59 <GreyKnight> We correctly number floors in the UK from ground level ("floor zero" if you like)
19:12:02 <Bike> roar hero, in slang
19:12:23 <GreyKnight> wat
19:12:32 <Bike> cockney!
19:13:19 <GreyKnight> Oh, rhyming slang. "Floor zero" isn't really a term, it doesn't have a rhyming-slangisation AFAIK
19:15:21 <kmc> rhyming slang is more involved than that
19:17:01 <kmc> sorry to be That Guy
19:17:41 <Bike> you're only allowed to be That Guy if you explain how you'd refer to the zeroth floor properly
19:17:46 <GreyKnight> This is #esoteric, if you weren't being That Guy someone else would (possibly elliott)
19:18:15 <GreyKnight> Bike, well it'd be "ground floor" for one thing!
19:18:27 <Bike> sucks
19:18:36 <GreyKnight> No u
19:18:55 <kmc> well you need to find a well-known two word phrase where one word rhyms with "zeroth floor" and then you would say only the *other* word
19:19:21 <Bike> stella!
19:19:53 <GreyKnight> more wat
19:20:28 <Bike> stella by moor, it's a nice song
19:22:46 <GreyKnight> "moor" has a longer o than "floor" round here so I would never have gotten that even if I'd heard of the song :-P
19:23:11 <Bike> impenetrable. the perfect slang
19:28:39 <quintopia> kmc: a friend of mine just tweeted the article about watson's swearing
19:32:23 -!- sploknee has quit (Quit: Leaving).
19:34:48 <Sgeo> I Want To Be That Guy
19:35:02 <kmc> ok
19:35:05 <kmc> go ahead Sgeo
19:45:57 -!- oerjan has joined.
19:57:39 -!- GreyKnight has quit (Quit: You hit the grey light. It explodes!).
20:17:34 -!- AnotherTest has quit (Quit: Leaving.).
20:19:58 -!- augur has joined.
20:30:01 <oerjan> 09:32:42: <fizzie> fungot: What do you know about TIME COMPRESSION?
20:30:01 <oerjan> 09:32:43: <fungot> fizzie: what's this...... then...... i have to live in that chair and drink your goddamn tea!
20:30:02 <fungot> oerjan: could've learned the fnord esolang fnord is about the course. i chose not to.) know you've cycled through the entire recursion in one go
20:30:02 <fungot> oerjan: if i use c ( and i'm not sure how well it works
20:30:11 <oerjan> let poor fungot out of the chair!
20:30:11 <fungot> oerjan: neilv annotated 5600 with " a sentence".
20:30:38 <olsner> fungot: stay in the goddamn chair!
20:30:38 <fungot> olsner: you do evaluate the innermost first, then the final 6,
20:31:42 <olsner> `quote evaluate
20:31:44 <HackEgo> No output.
20:32:40 <olsner> `quote something else
20:32:41 <HackEgo> No output.
20:32:46 <olsner> `quote anything
20:32:47 <HackEgo> 75) <dtsund> For those who don't know: INTERCAL is basically the I Wanna Be The Guy of programming languages. Not useful for anything serious, but pretty funny when viewed from the outside. \ 324) <ZOMGMODULES> I can trust elliott_ to have an opinion on anything and everything <elliott_> Yes. <elliott_> And the best thing is: it is the correct op
20:44:13 -!- Vorpal has joined.
20:47:51 -!- sploknee has joined.
20:57:11 -!- carado has joined.
20:58:10 -!- augur has quit (Remote host closed the connection).
21:11:35 -!- sebbu has quit (Ping timeout: 255 seconds).
21:13:12 -!- sebbu has joined.
21:13:12 -!- sebbu has quit (Changing host).
21:13:12 -!- sebbu has joined.
21:15:09 -!- WeThePeople has joined.
21:15:32 <FreeFull> I wanna be the guy isn't that difficult of a game
21:16:49 <oerjan> <Sgeo_> Hojo? Not Hinjo? <-- are you saying fungot needs an oots style
21:16:50 <fungot> oerjan: emacs still runs on the server side these days, i could
21:17:19 <oerjan> FreeFull: neither is intercal that difficult of a language
21:17:55 <ais523> oerjan: except when you're trying to do string handling
21:18:06 <oerjan> MAYBE
21:23:56 <Taneb> I'm somewhat disappointed Google Wave failed
21:24:01 <Taneb> It was actually pretty cool
21:24:30 <ais523> Taneb: the problem is it wasn't clear on what its use case was
21:25:16 <Taneb> I'm currently in a long comment thread on Facebook, with multiple people trying to hold multiple, intertwining conversations
21:25:20 <Taneb> THAT was its use case
21:26:18 <Taneb> elliott, how far did you get with your text-diagrams thing
21:26:23 <oerjan> <Taneb> Composable welcome filters?
21:26:25 <oerjan> hm...
21:26:36 <kmc> Taneb: yeah, on the other hand much simpler systems can handle that well
21:26:42 <oerjan> `cat bin/welcome
21:26:43 <HackEgo> ​#!/usr/bin/perl -w \ if (defined($_=shift)) { s/ *$//; s/ +/ @ /g; exec "bin/@", $_ . " ? welcome"; } else { exec "bin/?", "welcome"; }
21:26:47 <kmc> and it's easier to teach people a simpler system
21:26:49 <Taneb> kmc, such as?
21:26:56 <oerjan> `cat bin/emoclew
21:26:57 <HackEgo> ​#!/bin/sh \ welcome "$@" | rev | tr \)\( \(\)
21:27:17 <olsner> Taneb: IRC for example
21:27:37 <Taneb> Wouldn't quite work for this
21:28:09 <Taneb> Doesn't send out an alarm call to everyone, for instance
21:28:18 <Taneb> And multi-threaded convos can still get confused
21:28:31 <olsner> confusion is fun
21:28:43 <olsner> conFUNsion
21:29:06 <kmc> well Zephyr is an interesting example
21:29:30 <kmc> it is an obscure text-based chat protocol, used only at MIT and a little at a few other schools (and MIT-spawned startups)
21:29:57 <Taneb> kmc, I think the biggest problem would be convincing everyone to use it
21:30:08 <kmc> every message is sent to a particular "class", which is like an IRC channel, and an "instance", which is something you come up with on the fly to describe a particular topic
21:30:10 <Taneb> And I actually managed to get someone to use Google Wave
21:30:23 <kmc> for most people, the default view includes all messages, in time order
21:30:38 <kmc> but you can narrow down to view only one class, or one class-instance pair
21:30:50 <kmc> depending on whether you want context or focus, regarding these multiple intertwining conversations
21:31:13 <kmc> also you have a specific point in that time ordered view which denotes how far you have read
21:31:33 <kmc> and so you can expect that people will read everything, even if they aren't around right now
21:31:38 <kmc> which makes it something of an email replacement as well
21:31:48 <kmc> seamlessly transitioning between realtime and asynchronous communication
21:31:53 <Taneb> Biggest problem with Zephyr is convincing everyone to use it
21:32:06 <kmc> well yes
21:32:16 <kmc> they shouldn't, because the software and the protocol is all crazy and crufty and archaic
21:32:23 <Fiora> kmc: one thing I've noticed on IRC is that communities tend to spawn side-channels simply because of the multiple-conversations-at-once thing
21:32:28 <Fiora> and like, if I see two people talking about something in one place
21:32:31 <Fiora> I skip to the next channel >_>;
21:32:35 <Fiora> so I don't interrupt them
21:32:46 <kmc> but as it happens I'm working for a company which is building a web-based chat system on a similar model
21:32:55 <Taneb> #esoteric-homestuck
21:33:15 <kmc> with the idea that, in particular, this is a vastly better way for companies to communicate internally
21:33:21 <kmc> based on our own experience at companies using zephyr
21:33:52 <olsner> the swedish counterpart would be http://en.wikipedia.org/wiki/LysKOM
21:34:41 -!- mekeor has quit (Remote host closed the connection).
21:34:55 <elliott> Taneb: Not very.
21:35:08 <elliott> oerjan: Want to talk about UNDERLOAD?
21:35:47 <oerjan> `addquote <ais523> btw, I finally discovered what a burrito was, recently <<ais523> they're kind of nice to eat <<ais523> but don't really resemble monads
21:35:49 <oerjan> argh
21:35:49 <HackEgo> 907) <ais523> btw, I finally discovered what a burrito was, recently <<ais523> they're kind of nice to eat <<ais523> but don't really resemble monads
21:35:52 <oerjan> `revert
21:35:55 <ais523> oerjan: that's a weird typo
21:35:55 <HackEgo> Done.
21:35:58 <oerjan> `addquote <ais523> btw, I finally discovered what a burrito was, recently <<ais523> they're kind of nice to eat <ais523> but don't really resemble monads
21:36:01 <HackEgo> 907) <ais523> btw, I finally discovered what a burrito was, recently <<ais523> they're kind of nice to eat <ais523> but don't really resemble monads
21:36:04 <Taneb> elliott, because my thoughts have occasionally turned to it over the past couple of days
21:36:13 <Fiora> there's one extra < in there I think
21:36:30 <elliott> Taneb: Did you think of a good solution to the problems I had?
21:36:34 <oerjan> ais523: it's what happens when i forget between windows whether i've remembered to copy the < or not
21:36:44 <oerjan> elliott: hm?
21:37:11 <oerjan> `revert
21:37:13 <HackEgo> Done.
21:37:26 <oerjan> `addquote <ais523> btw, I finally discovered what a burrito was, recently <ais523> they're kind of nice to eat <ais523> but don't really resemble monads
21:37:29 <olsner> iirc, burrito means small donkey
21:37:29 <HackEgo> 907) <ais523> btw, I finally discovered what a burrito was, recently <ais523> they're kind of nice to eat <ais523> but don't really resemble monads
21:37:34 <oerjan> sheesh
21:37:58 <elliott> oerjan: I was thinking about Underload type inference to statically determine some subset of stack effects.
21:38:04 <elliott> this lead to me linking one of your SO answers to ais523 :P
21:38:33 <Taneb> elliott, I was thinking if you limited it to rectangles
21:38:51 <Taneb> Chars can be 1x1, 1x2, or even 1x0 or 1x3 or whatever
21:39:04 <Taneb> So don't encode size at type level, that would be bad
21:39:08 <oerjan> OKAY
21:39:41 <oerjan> see: that kind of curiosity killed Cat
21:39:48 -!- carado has quit (Remote host closed the connection).
21:39:54 <Taneb> Combining monoidally, I was thinking "a <> b" means "line a's top-left corner with b's top-left corner and paste b over a"
21:40:05 <Taneb> Combining characters can possibly combine like that, IDK
21:40:47 -!- carado has joined.
21:40:52 -!- WeThePeople has quit (Quit: Leaving).
21:41:20 <Taneb> What were some of your specific problems?
21:42:04 <elliott> Pasting b over a sounds kind of unuseful?
21:42:06 -!- carado has quit (Remote host closed the connection).
21:42:18 <elliott> I guess you'd need a notion of there not being any character at a particular position...
21:42:21 <Taneb> elliott, whitespace in b could come in handy
21:42:41 <elliott> My problems were with double-width characters.
21:42:45 -!- carado has joined.
21:43:17 <Taneb> I was thinking 0x20 is empty, NBSP is non-empty whitespace
21:43:34 <Taneb> double-width characters, you'd need some form of double width detector
21:43:54 <ais523> Taneb: clearly you need INTERCAL overstrikes
21:44:02 <ais523> V backspace - and all that
21:48:20 -!- atrapado has joined.
21:50:23 <Taneb> elliott, http://www.unicode.org/reports/tr11/ could be relevant
21:52:02 <elliott> I mostly know how they work in general, but thanks
21:53:14 <elliott> well, "sort of"
21:53:25 <Taneb> Well, that's the official version
21:53:37 -!- Vorpal has quit (Ping timeout: 248 seconds).
21:55:15 <kmc> maybe they don't have burritos in europe?!?!?
21:55:24 <ais523> kmc: they're not common
21:55:30 <ais523> the university canteen started selling them this month
22:00:43 <kmc> on the flip side you have shawarma / kebab / gyros / whatever you call it on every street
22:00:57 <kmc> at least in most parts of europe i have been to
22:02:17 <ais523> kmc: in the UK, fish and chip shops are really common, and they sell kebabs too
22:02:27 <ais523> I think the closest north american equivalent is a pizza parlour, but it's not that close
22:03:26 <kmc> yeah
22:03:31 <Taneb> Somewhere between a pizza parlour and a hot dog stand
22:04:11 <kmc> in american cities it's fairly common to find a non-chain fast food place that has pizza, gyros, fried chicken, burgers, french fries, etc
22:04:31 <kmc> but moreso in poorer areas
22:04:33 <Taneb> Heh, I'm rarely in British cities
22:04:45 <Taneb> The last time I was in a city that wasn't Newcastle was...
22:04:57 <Taneb> August?
22:05:10 <kmc> out in suburbia / most of the country, you have huge chain fast food restaurants with drive thru etc
22:05:19 <kmc> and those mostly stick to a single genre of food
22:05:26 <Taneb> We have those, too
22:05:27 <ais523> kmc: that seems very similar to the UK too
22:05:30 * elliott 's line parsed that as a lyric until after the comma
22:05:31 <kmc> though there are such as the Combination Pizza Hut And Taco Bell
22:05:33 <elliott> v. confusing
22:05:34 <ais523> except they'll do fish and chips in addition to all that
22:05:42 <elliott> ...
22:05:43 <kmc> elliott: i'm a poet and i don't even know it!
22:05:45 * elliott 's mind parsed that as a lyric until after the comma
22:05:49 <ais523> at least, the chains don't
22:05:52 <ais523> the non-chain places do, though
22:05:52 <fizzie> We have kebab places everywhere, but to get a burrito you'll pretty much have to choose one of the "Tex-Mex" themed restaurants, of which there's not really a shortage either, but they're not all *that* common. I can think of offhand about six in Helsinki centrum.
22:05:53 <elliott> kmc: now you have to make a song out of it
22:05:56 <elliott> hard to top that second line though
22:05:57 <kmc> out of which?
22:06:05 <elliott> 22:05:10 <kmc> out in suburbia / most of the country, you have huge chain fast food restaurants with drive thru etc
22:06:14 <elliott> out in suburbia / most of the country, you have huge chain fast food restaurants with drive thru etc / something something something
22:06:17 <kmc> just listen to this song instead http://www.youtube.com/watch?v=Vyfc10qDcR4
22:06:29 <kmc> i think most songs don't use the word "et cetera"
22:06:38 <kmc> radiohead used it though so it must be allright
22:06:38 <Bike> a remix?!
22:06:58 <shachaf> We have a pretty great type going here.
22:06:59 <shachaf> newtype Un p a s = Un { unUn :: p s -> p a }
22:07:39 <shachaf> What does it take to make p an instance of things?
22:07:52 <fizzie> There are now only two Pizza Hut restaurant (and three "express" places, and two "take-away only" places) in Finland; there used to be many more.
22:08:04 <kmc> what happened to them?
22:08:06 <elliott> kmc: now you have me listening to this again :(
22:08:09 <Bike> shit, the rap doesn't even fit the rhythm, i forgot about that
22:08:11 <elliott> I shook it off!!!
22:08:20 <fizzie> I think they've just closed.
22:08:28 <elliott> kmc: they died
22:08:34 <shachaf> elliott: Are you done?
22:08:38 * shachaf might go eat something.
22:08:45 <elliott> shachaf: I'm confused. Also tired.
22:09:26 <elliott> Taneb: Mentioning #esoteric in #haskell is banned. Gotta keep up the peanut gallery.
22:09:42 <Taneb> I referenced it, I did not mention it
22:09:45 <Taneb> Well
22:09:47 <ais523> elliott: what about mentioning #haskell in #esoteric?
22:09:50 <Taneb> I mentioned it the day before yesterday
22:09:54 <shachaf> elliott: Banned by whom?
22:09:57 <Taneb> Anyway
22:10:00 <Taneb> I'm gonna sleep now
22:10:04 -!- Taneb has quit (Quit: Leaving).
22:10:16 <elliott> shachaf: Um, imperial decree?
22:10:29 <fizzie> I've heard something about McDonald's not doing so well in Finland either. There isn't one really nearby here. And there are more instances of the local Finnish cheap clone (Hesburger). (As a rule of thumb, there's a Hesburger in every large shopping mall, but all McDonalds'ses are in their own separate buildings for some reason.)
22:10:38 <shachaf> elliott: Of which channel?
22:10:39 <ais523> the McDonaldses in the UK suck
22:10:46 <ais523> they're noticeably worse than those in Canada
22:10:49 <ais523> and thus I assume the US too
22:11:00 <coppro> yes
22:11:08 <coppro> Canada and US are comparable
22:11:13 <kmc> ah yes hesburger
22:11:19 <ais523> or at least, the large sample of McDonaldses I've checked in the UK are all worse than one specific McDonalds in Ottawa that I have no reason to believe is not representative
22:11:20 <coppro> though my preference is Canada
22:11:27 <coppro> I think they use extra grease in the US
22:11:31 <kmc> i always parsed it as a burger restaurant run by hesbollah
22:11:58 <fizzie> I think there's at least one Hesburger in Tallinn too, so they've branched out a bit.
22:12:05 <kmc> in greece, Goody's seemed to be beating McD's by quite a bit
22:12:11 <coppro> ais523: if it was unrepresentative, it was probably worse than usual
22:12:24 <ais523> coppro: McDonalds in Canada have negative skew?
22:12:28 <coppro> ais523: I've seen a couple of terrible McDonald's, but not exceptionally good ones
22:12:36 <ais523> fair enough
22:12:41 <fizzie> Also they have a "HeseCafe" (since McDonald's has cafes too), and a "HesePasta" (which is this cardboard box full of macaroni-and-stuff) thing in a couple of places.
22:12:46 <coppro> so it's unlikely you were above the mode
22:13:24 <kmc> fizzie: they have them in vilnius as well
22:13:40 <fizzie> Also McDonald's-of-Finland started selling their wrap things quite recently, autumn last year or something.
22:13:58 <fizzie> I understand those have been available elsewhere for quite a lot longer.
22:15:08 -!- atrapado has quit (Quit: Bye).
22:15:28 <oerjan> hesburgers heslige burgere
22:16:03 <fizzie> According to Wikipedia, there was a Hesburger in Syria from 2004 to 2006.
22:16:16 <kmc> in hungary the mcdonald's had a sign instructing you how to use the self serve soda fountain
22:16:55 <fizzie> There's also a Finnish pizza chain with one store in like China; it's amusing because it pops (or at least used to pop) up first when you went to their restaurant selector, since it wasn't in any of the "subdivisions of Finland" categories.
22:17:34 <fizzie> And the restaurant select-o-tron link was titled "nearest <pizza chain name>".
22:18:06 <elliott> why would they even have a store in like China
22:18:09 <fizzie> Apparently it no longer exists. :/
22:18:19 <fizzie> "In addition to Finland, Kotipizza restaurants are found in Saint Petersburg, Estonia and in China in Suzhou, near Shanghai."
22:18:32 <fizzie> Saint Petersburg and Estonia make some amount of sense.
22:18:36 <kmc> countries like australia, such as new zealand
22:18:40 -!- azaq23 has joined.
22:18:42 <Bike> why does it say where the chinese and russian ones are, but not the estonian one
22:18:53 <Bike> is the estonian one also in suzhou?
22:19:20 <fizzie> Bike: Because China and Russia are significantly bigger than Estonia, maybe?
22:19:53 <Bike> still doesn't let you show up on the estonian border and ask "yo where the kotipizza at"
22:19:58 <kmc> maybe they can open a restaurant in Formosa, Argentina and another in Formosa, Republic of China, directly opposite on the globe
22:20:18 <kmc> Bike: dunno, the border guards might know
22:20:23 <fizzie> I suppose maybe one of the Kotipizza franchisees might have moved to Suzhou or something?
22:20:38 <kmc> i'm at the kotipizza, i'm at the hesburger, i'm at the combination kotipizza hesburger
22:20:43 <fizzie> Bike: Also possibly there are several places in Estonia and they didn't want to list them.
22:21:02 <hagb4rd> \o/ somebody mentioned estonia!
22:21:10 <fizzie> There are two Kotipizzas and one Hesburger at the nearest shopping centre.
22:21:20 <fizzie> But I don't think I've heard of a combination one.
22:22:45 <hagb4rd> a pity there's no one here right from mongolia..
22:23:22 <hagb4rd> any asian folk here?
22:23:59 <Bike> where did that come from
22:24:49 <Bike> http://www.youtube.com/watch?v=WDEI06J00nk anyway have some estonia
22:31:07 * hagb4rd thinks it's a pity the relevance of the results to search queries on google are influenced by region of the request source by default. think they could change world if they dropt this feature
22:32:04 <ais523> hagb4rd: Google tries to give people what they want, not what they need
22:32:50 <hagb4rd> well you can change this.. but adjusting the default options still has an effect
22:33:03 -!- Bike has quit (Read error: Operation timed out).
22:33:03 <kmc> no google doesn't do either
22:33:06 <hagb4rd> but good point
22:33:19 <kmc> if you are not paying for a product then you are the product being sold
22:34:26 <FreeFull> Google doesn't seem to give me as good results for some queries as it used to
22:34:53 <elliott> kmc: Where can I buy kmc?
22:36:46 -!- GreyKnight has joined.
22:39:38 <hagb4rd> what i fear most is we might loose some diversity of knowledge (which imo somehow leads to creativity while interacting in mulitplayer mode) due to the synchronicity of the sources we use
22:39:51 <oerjan> hagb4rd: lifthrasiir is asian, at least
22:40:01 <hagb4rd> cool. hello lifthrasiir
22:40:08 <hagb4rd> good to have you here
22:40:33 <oerjan> dependent on your definition, i'm not sure about shachaf, i don't think he's currently _in_ asia
22:42:25 <hagb4rd> no i mean we use wikipedia or sth to check out facts for example (which has its advantages..by all means!)..
22:43:34 <hagb4rd> but in some way it's different than to wait until you get the right book or even make your own experience
22:43:48 <hagb4rd> (i'm not complaining)
22:44:08 <hagb4rd> just try to see the other side of the moon
22:45:32 <GreyKnight> oerjan: I tried playing with some pipelineable welcome filters stuff but elliott hated it because I preserved the URL from filtering >:-(
22:45:34 <hagb4rd> okay i don't know what schahaf is doing or how this was related to my statement oerjan
22:45:47 <hagb4rd> anyway
22:46:15 <hagb4rd> maybe it wasn't 0:)
22:46:24 <hagb4rd> a smoke?
22:46:38 <oerjan> GreyKnight: i'm afraid i'm with elliott on that one.
22:47:03 -!- GreyKnight has quit (Quit: Reconnecting…).
22:47:12 <elliott> if you generate URLs people can actually click, is there even a point to life?
22:47:32 <oerjan> HEY I NEVER SAID THEY SHOULD BE UNCLICKABLE GET TO WORK ON THAT ELLIOTT
22:48:00 <oerjan> ALSO MAKE IT AUTOMATICALLY COMPATIBLE WITH FUTURE FILTERS THX
22:48:09 <shachaf> oerjan: I'm not in Asia but I was born in Asia.
22:48:19 <hagb4rd> oh thats better
22:48:20 <oerjan> shachaf: yay as i thought!
22:48:39 <hagb4rd> schahaf: have you been there for while?
22:48:44 <hagb4rd> *lived there
22:48:59 -!- GreyKnight has joined.
22:49:18 <shachaf> I lived in Asia for something like half my life.
22:49:28 <hagb4rd> elliot: i'm sure there is some sense in it. let's keep some patience ;)
22:49:33 <oerjan> ^rot13 schahaf
22:49:34 <fungot> fpununs
22:49:51 <hagb4rd> or fuck do something about it!
22:50:03 <hagb4rd> sorry
22:50:34 * hagb4rd clears his throat
22:50:48 <oerjan> someone get hagb4rd an autocompleting client thx
22:50:57 -!- GreyKnight has quit (Client Quit).
22:51:09 -!- sebbu2 has joined.
22:51:09 -!- sebbu2 has quit (Changing host).
22:51:09 -!- sebbu2 has joined.
22:51:19 <shachaf> hoerjan
22:51:23 <hagb4rd> somehow it shows some respect when you type the name by hand
22:51:25 <hagb4rd> you know
22:51:51 <oerjan> hardb4g: OKAY
22:52:12 <hagb4rd> no progress withought the possibility of failure
22:52:18 -!- sebbu has quit (Ping timeout: 248 seconds).
22:52:25 <hagb4rd> maybe no progress at all
22:52:35 <shachaf> oerjan: Do you like this class: class Unapplicative p where unpure :: p Void; unstar :: p (a,b) -> Either (p a) (p b)
22:52:51 <shachaf> Or kmc. I think this is related to the category thing I was talking about yesterday.
22:53:04 -!- nooodl_ has quit (Ping timeout: 256 seconds).
22:53:20 -!- sebbu2 has changed nick to sebbu.
22:53:45 <oerjan> why (a,b) and not Either a b
22:53:47 <shachaf> It behaves a bit like a logarithm, as in log(a*b) = log(a)+log(b)
22:54:07 <shachaf> oerjan: I'm thinking of "P a" as meaning "a is uninhabited" for lack of anything better.
22:54:18 <shachaf> So Void is uninhabited, and if (a,b) is uninhabited then either a is or b is.
22:54:28 <oerjan> i just don't see how this class can be applied in any way
22:54:31 * oerjan runs away
22:54:40 <shachaf> I don't either!
22:55:01 <oerjan> aha
22:55:55 <oerjan> p a -> Either (p b) (p (b -> a))
22:56:13 <oerjan> would be more the reverse of <*>, no?
22:56:29 <shachaf> Right, this is for the opposite of p (); p a -> p b -> p (a,b)
22:56:44 <shachaf> Or (p a,p b) -> p (a,b)
22:56:54 <shachaf> You know, "real" Applicatives.
22:56:57 <oerjan> that formulation zzo38 likes, although you need Functor as well
22:57:04 <shachaf> Sure.
22:57:11 <elliott> you also get (a -> Void) -> p a, obviously
22:57:20 <elliott> (given contramap for both what oerjan said and what I said)
22:58:07 <elliott> shachaf: Do you have any instances of Not?
22:58:08 <elliott> Er.
22:58:11 <elliott> shachaf: Do you have any instances of Unapplicative?
22:58:19 <elliott> I mean, not even Not is an instance.
22:58:25 <elliott> I guess NotNotNot is?
22:58:27 <shachaf> I think Const Void is trivially an instance.
22:58:29 <elliott> No, it isn't.
22:58:36 <elliott> shachaf: Zomg so is Proxy!!!1 1 11 1
22:58:38 <shachaf> Otherwise you'll probably have to switch from Either to COr.
22:58:47 <elliott> Oh, c'mon.
22:59:10 <elliott> shachaf: What's a Contravariant that doesn't have a (->) in it?
22:59:17 <elliott> But that isn't trivial like Const Void.
22:59:18 <shachaf> elliott: Nothing.
22:59:32 <shachaf> That's the way you get things to be contravariant.
22:59:37 <elliott> shachaf: Oh, Unapplicative doesn't require Contravariant?
22:59:47 <shachaf> It should?
22:59:51 <elliott> It didn't how you defined it.
22:59:55 <elliott> I think maybe it shouldn't?
22:59:58 <elliott> unpure :: [Void]; unstar :: [(a,b)] -> Either [a] [b]
23:00:02 <elliott> That almost looks reasonable, after all.
23:00:03 <shachaf> elliott: Sure it should
23:00:10 <shachaf> Because Functor requires Contravariant.
23:00:16 <elliott> Um. What?
23:00:17 <shachaf> And Applicative requires Functor.
23:00:22 <elliott> Functor requires Contravariant?
23:00:23 <shachaf> I mean, instance Functor (Op p a)
23:00:28 <elliott> Well, sure.
23:00:31 <elliott> But if you want instances.
23:00:37 <elliott> And I think this notion might be more general than that.
23:04:20 <shachaf> 15:03 <monochrom> where is kmc? I miss him
23:06:46 <hagb4rd> playing basketball in the kitchen
23:07:13 <hagb4rd> whois monochrom
23:07:42 <hagb4rd> he isn't around here
23:07:43 <kmc> aw
23:08:46 <elliott> monochrom is kmc's #1 fan
23:08:54 <hagb4rd> no that was me!
23:08:56 <elliott> Wasn't monochrom the one who said kmc's FAQ was good too?
23:08:57 <elliott> Total fanboy.
23:09:00 <elliott> Clearly.
23:09:02 <hagb4rd> absolutely
23:10:14 <oerjan> monochrom is a #haskell guy, at least was when i was
23:10:33 <shachaf> monochrom is great.
23:10:52 <hagb4rd> well invite him to join us. i love great people
23:11:11 <oerjan> `pastlog <monochrom>
23:11:42 <HackEgo> 2011-09-01.txt:01:58:46: <CPO\_\bot> <monochrom> ddarius wins!
23:11:52 <oerjan> i don't think that counts
23:11:52 <shachaf> `quonochrom
23:11:54 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: quonochrom: not found
23:11:56 <oerjan> `pastlog <monochrom>
23:12:03 <HackEgo> 2011-02-06.txt:21:11:32: <elliott> <monochrom> for example "I'll pay you us$5 this is good money for you considering how poor you are!" is not pay well. it's insulting. make it us$500.
23:12:06 <hagb4rd> `pastelog <monochrom>
23:12:21 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.24396
23:12:21 <oerjan> it appears people just quote him here
23:13:19 <hagb4rd> have you change the mime type of the pastes? somehow chrome tries to download it
23:13:34 <hagb4rd> maybe it's just me
23:14:10 <oerjan> worked fine for me (not chrome)
23:14:39 <hagb4rd> ye dunno. nevermind thx
23:15:42 <oerjan> maybe it's that weird <CPO\ot> nick in the paste
23:15:47 -!- sivoais has quit (Ping timeout: 252 seconds).
23:16:05 <hagb4rd> hm.. too lazy too find out now
23:16:08 <oerjan> * <CPO\_ot>
23:16:27 <elliott> please porige cpo hot
23:16:57 -!- sivoais has joined.
23:17:16 <oerjan> or that + the Erdös
23:17:57 <oerjan> which i btw had to change encoding from us-ascii to get properly
23:20:32 <oerjan> today's http://www.mezzacotta.net/postcard/?comic=1466 makes me wonder about an IQ test which not only calibrates the _score_ according to the takers, but even what's considered the correct answer. (sounds like the internet...)
23:21:14 <oerjan> inb4 "the picture doesn't show up"
23:22:33 <Fiora> oerjan: that reminds me of this https://encyclopediadramatica.se/IQ_Test
23:23:09 <Fiora> the IQ test that shows you a high score, but shows other people a low score
23:29:13 <Gregor> HRRRRRRRRRRRRRRRNG
23:29:25 <Gregor> I sent an email inquiring about an accordion on Craigslist.
23:29:28 <Gregor> “Thanks for being interested in buying my VINTAGE PHILHARMONIC DOUBLE TONE CHAMBER ACCORDION W/ HARD CASE MADE. I will start my email by telling you that I'm currently out of country so pick up isn't an option. The item is as described, in perfect condition and will be delivered at your home address.”
23:29:38 <Gregor> Yaaaay scams >_<
23:32:06 <shachaf> Gregor: You should get a chromatic button accordion.
23:32:12 <shachaf> Not a "piano" accordion.
23:32:36 -!- GreyKnight has joined.
23:33:18 <hagb4rd> aw.. i'm planning to get an accordion too
23:33:38 <hagb4rd> or a sax
23:33:50 <hagb4rd> dunno.. difficult. maybe both in time
23:34:52 <hagb4rd> gregor: have you done some composing at last?
23:36:15 <GreyKnight> Wouldn't it be quite difficult to play both the accordian and the sax :-O
23:36:30 <hagb4rd> at the same time yes
23:37:22 <hagb4rd> but i'm not very out to become a professional.. so it doesn't matter as long as there is some fun doing it
23:38:31 -!- Arc_Koen has joined.
23:39:24 <GreyKnight> oerjan: FINE at least I got some Haskell practice out of it
23:39:34 <hagb4rd> an accordion has this warm, melancholic..yea...disaming sound
23:39:41 <oerjan> EXCELLENT
23:39:45 <Arc_Koen> GreyKnight: yeah RIGHT
23:39:54 <hagb4rd> *diarming
23:40:04 <hagb4rd> *DISARMING
23:40:05 <GreyKnight> **disarming ?
23:40:14 <hagb4rd> yes thanks greyt
23:40:19 <hagb4rd> greyT
23:40:26 <Arc_Koen> I was considering reading the logs so that I could actually pretend I knew what all those capital letters were about but I think that would be a waste of time
23:40:29 <oerjan> on second thought someone get hagb4rd a keyboard thx
23:40:44 <GreyKnight> pronounced like "great" B-)
23:40:54 <hagb4rd> oh yes.. i need the one which can be washed
23:41:02 <hagb4rd> *noted
23:41:09 <oerjan> and if that still doesn't help, a spell checker
23:41:10 <Arc_Koen> those flexible japanese ones?
23:41:25 <Arc_Koen> and if that still doesn't help, a new set of hands!
23:41:36 <hagb4rd> yea, i'm not good at typing. also you guys make me nervous
23:41:50 <hagb4rd> (i hope this word fits the case)
23:41:51 <GreyKnight> Arc_Koen: TLDR: I was experimenting with `welcome filters that transformed text while leaving the URL alone, everyone hates my idea ;_;
23:41:53 <oerjan> THERE'S NOTHING TO BE AFRAID OF
23:42:02 <Gregor> <shachaf> Gregor: You should get a chromatic button accordion. // I'd like to, but I don't have that kind of money.
23:42:07 <GreyKnight> It's type-correct though B-)
23:42:08 <Gregor> <hagb4rd> gregor: have you done some composing at last? // on the accordion, yes.
23:42:21 <shachaf> What kind of money is a chromatic button accordion?
23:42:23 <Arc_Koen> GreyKnight: thank you (why waste my time when I can waste someone else's!)
23:42:32 <GreyKnight> hagb4rd: but we haven't even threatened you! Much.
23:42:39 <shachaf> I've looked around and apparently they;re not easy to get hold of in the US.
23:42:44 <hagb4rd> gregor: somthing i can listen to? let's give it a try
23:42:56 <hagb4rd> greyknight.. no not really
23:43:08 <Gregor> hagb4rd: Would be except that I don't have an accordion right now >: (
23:43:09 <hagb4rd> aw of course you have!
23:43:14 <Arc_Koen> they have this crazy idea in France to calculate how much the time of a volunteer is worth
23:43:16 <Gregor> shachaf: Well into the thousands.
23:43:30 <Arc_Koen> I can say by experience that it's probably a negative amount :(
23:43:44 <GreyKnight> Why do we make you nervous, hagb4rd?
23:43:58 <hagb4rd> cmon greyknight. i was trying to make a compliment
23:44:03 <Arc_Koen> how do you know you were included in the "you guys"?!
23:44:08 <hagb4rd> i failed
23:44:16 <GreyKnight> :<
23:44:26 <hagb4rd> but sometimes yes..
23:44:31 <shachaf> Gregor: http://www.smythesaccordioncenter.com/Student_Chromatics.html has them for <$1000
23:44:39 <shachaf> I don't know if they're any good, though.
23:44:52 <shachaf> I suppose these are "learning accordions" or something?
23:44:53 <Gregor> shachaf: 60-bass = clearly shit
23:45:02 <Gregor> If it's not at least a 120 bass, it's not even worth consideration.
23:45:03 <shachaf> And 72?
23:45:06 <shachaf> OK.
23:45:19 <Gregor> Well, I say "at least", but they don't make more ^^
23:45:25 <Gregor> 72 is ALMOST worth consideration, 60 is simply not.
23:45:26 <shachaf> But piano accordions are horrible. :-(
23:45:36 <shachaf> Well, that page has 72 too.
23:45:38 <shachaf> Pianos are horrible. :-(
23:45:57 <Gregor> Plus, $1,000 for an accordion with no switches? Yeesh.
23:46:21 <GreyKnight> oerjan: so the point of http://www.mezzacotta.net/postcard/ is that there is a commentary but no actual comic?
23:46:53 <shachaf> Gregor: Should I learn to play the accordion?
23:47:07 <GreyKnight> How avant-garde
23:47:46 <Arc_Koen> hagb4rd: now that I think of it, I'm pretty sure I said something along the lines of "you guys make me nervous" on this channel before
23:47:51 -!- augur has joined.
23:47:57 <Arc_Koen> I think we're all nervous and someone is playing us
23:48:16 <Gregor> shachaf: I ♥ the accordion, but do what you want X-D
23:49:44 <hagb4rd> maybe it's elliott
23:50:08 -!- carado has quit (Ping timeout: 246 seconds).
23:50:08 <hagb4rd> no
23:50:28 <olsner> shachaf: you probably shouldn't, but do what you want
23:50:45 <GreyKnight> Arc_Koen: playing you... like an accordian
23:50:56 <GreyKnight> elliott: please stop making people nervous thx
23:51:28 <Arc_Koen> I doubt I'm that flexible
23:51:53 <hagb4rd> greyknight: it's not bad at all
23:52:05 <hagb4rd> no it's good!
23:52:16 <hagb4rd> at least sometimes
23:52:24 <Arc_Koen> (I wanted to make a joke about how accordions can blow... a lot of... air... but the flexible thing is all that came to mind)
23:52:27 * hagb4rd is perfectly saying nothing
23:52:37 <GreyKnight> This must be some strange usage of the word "nervous" with which I was not previously familiar :-P
23:54:52 <hagb4rd> hm.. dict.leo.org served a few translations of which a few seem to fit that context
23:55:53 <hagb4rd> nervous / exited would be related
23:55:57 <hagb4rd> excited
23:56:30 <Arc_Koen> exited
23:56:33 <GreyKnight> hm that would usually be associated with anticipation
23:56:33 <Arc_Koen> as in... departed?
23:56:39 <Arc_Koen> "you guys make me departed"
23:56:54 <GreyKnight> You guys made carado depart
23:57:31 -!- augur has quit (Remote host closed the connection).
23:57:40 <GreyKnight> hagb4rd: quite often it would be put as "nervous but excited" too; "nervous" by itself is usually negative
23:58:26 -!- augur has joined.
23:58:36 <hagb4rd> yea it|s amibivalente
23:58:41 <hagb4rd> -e
23:58:45 <Arc_Koen> excitedly nervous?
23:59:05 <Arc_Koen> oerjan: now is perfect time for PORTMANTEAUX
23:59:21 <olsner> portmontage
2013-01-11
00:00:17 <GreyKnight> excitervous?
00:00:31 <Arc_Koen> nervited
00:01:05 <oerjan> GreyKnight: yes
00:01:54 <GreyKnight> what
00:04:11 -!- augur has quit (Remote host closed the connection).
00:05:17 <oerjan> Arc_Koen: it would have been if i weren't up in the backscroll answering a completely different question
00:06:04 <Arc_Koen> you do know your answer won't appear up in the backscroll, right?
00:06:17 <oerjan> GreyKnight: every comic on that website is avant-garde, of course
00:06:19 <GreyKnight> It does if you use featherIRC
00:07:27 <oerjan> some so much that they are dead
00:07:29 <GreyKnight> oerjan: well, it's DMM. He practically oozes avantgardicity from every pore.
00:07:48 <oerjan> yep
00:09:22 <GreyKnight> (I hear you can get cream for that)
00:12:13 <hagb4rd> can u pick me up? whatt comic? which website?
00:14:31 -!- sploknee has quit (Ping timeout: 260 seconds).
00:14:46 <hagb4rd> ah yes
00:14:48 -!- sploknee has joined.
00:15:50 <hagb4rd> 'no eternal reward will forgive us now for wasting the dawn'
00:16:05 <oerjan> hagb4rd: http://www.mezzacotta.net/postcard/
00:16:10 <hagb4rd> thx
00:18:14 <hagb4rd> i wondered if the cross in the scandinavian flags is somehow related to christianity.. or what else
00:18:22 <hagb4rd> last night
00:18:31 <hagb4rd> is it?
00:22:03 <Gregor> “Will meet at Shell station at I-69 and south 96th for sale” Yeah, that's not creepy.
00:23:00 <hagb4rd> a real adventure
00:23:30 <hagb4rd> you haven't thought that you just can go and buy one..did you
00:23:39 <hagb4rd> you have to earn it
00:24:01 <hagb4rd> @karma gregor
00:24:01 <lambdabot> gregor has a karma of 1
00:24:35 <Gregor> hagb4rd: I've already gone through all this once.
00:24:38 <Gregor> Drove for two hours to buy one.
00:24:43 <Gregor> But that was less creepy.
00:24:56 <Gregor> It wasn't "I'll meet you at the gas station and we'll exchange a secret handshake"
00:25:09 <GreyKnight> I'm wearing a red carnation
00:25:33 <kmc> "the truck stop labeled with three thumbs up signs" "those aren't thumbs"
00:26:08 -!- Phantom__Hoover has joined.
00:26:20 <Phantom__Hoover> Gregor, what's this shady deal for?
00:26:24 <GreyKnight> codephrase: "The forests of Timber have changed." countersign "But the owls are still around."
00:28:01 <hagb4rd> "Excuse me but do you have a cousin named Sven?" -"No but I once had a barber named Dominique"
00:28:59 <hagb4rd> (melee island)
00:29:09 -!- sploknee has quit (Ping timeout: 248 seconds).
00:29:49 <hagb4rd> thumbs up if you like guybrush triftwood
00:31:40 <GreyKnight> You fight like a dairy farmer!
00:32:58 <Gregor> Phantom__Hoover: An accordion.
00:35:50 <oerjan> <hagb4rd> i wondered if the cross in the scandinavian flags is somehow related to christianity.. or what else <-- of course it is.
00:36:13 <FreeFull> the english flag has a cross too
00:36:52 <Gregor> There are perfectly justifiable reasons to want to go elsewhere to sell something, and frankly I'm safer at some random Shell station than some random person's house, but that is SOOOO shady >_>
00:37:55 <oerjan> FreeFull: itym 3 crosses
00:38:04 <oerjan> wait
00:38:08 <oerjan> you said english
00:38:11 <oerjan> never mind
00:38:14 <FreeFull> I did say english
00:38:19 <FreeFull> Red cross on white background
00:39:17 <GreyKnight> Gregor: maybe *he* doesn't want *you* to know where he lives
00:39:21 <FreeFull> I don't know if the scottish flag would count as having a cross since it's diagonal and the two lines aren't at 90°
00:39:34 <GreyKnight> in case you're a shady character :-|
00:39:45 <GreyKnight> FreeFull: it's called a saltire cross
00:40:04 <FreeFull> The Polish flag is pretty simple
00:40:09 <FreeFull> White top, red bottom
00:40:09 <FreeFull> Done
00:40:10 <GreyKnight> (I guess because it sort of looks like a jumping man if you squint?)
00:40:25 <GreyKnight> The old Libyan one was best. "Just green"
00:40:58 <Gregor> <GreyKnight> Gregor: maybe *he* doesn't want *you* to know where he lives // yes, that's one of the perfectly justifiable reasons.
00:41:07 <Gregor> But a GAS STATION?
00:41:10 <Gregor> Why not a mall.
00:41:12 -!- monqy has joined.
00:41:13 <Gregor> Or a park.
00:41:17 <Gregor> Or, y'know. Not a gas station.
00:41:22 <shachaf> monqy: hello
00:41:46 <hagb4rd> GreyKnight: i think it's not that old since gadhdhafi founded it afaik
00:41:56 <monqy> shachaf: ???hi
00:41:56 <kmc> yeah the one before was more like the one they have now
00:41:56 <lambdabot> monqy: You have 4 new messages. '/msg lambdabot @messages' to read them.
00:42:00 <hagb4rd> it was black, red, white before.. iirc
00:42:01 <GreyKnight> maybe he needs to get petrol as well ¯\(°_o)/¯
00:42:09 <kmc> maybe the same??
00:42:15 <shachaf> monqy: what
00:42:24 <GreyKnight> hagb4rd: I mean "old" in the sense of "previous" (IIRC they ditched it)
00:42:48 <hagb4rd> yea.. times are changing in the arabic world
00:42:56 -!- ais523_ has joined.
00:43:01 <hagb4rd> heat++
00:43:02 <kmc> aha but there was also a Libyan Arab Republic flag and then a Federation of Arab Republics flag
00:43:03 -!- ais523 has quit (Read error: Operation timed out).
00:44:00 -!- ais523_ has changed nick to ais523.
00:44:05 <hagb4rd> there so many flags.. more flags than nations
00:45:28 <kmc> http://www.otago.ac.nz/philosophy/Staff/JoshParsons/flags/alpha.html
00:46:40 <GreyKnight> I just want more single-flat-colour flags, is that so wrong? ._.
00:47:35 <oerjan> `? misspellings of croissant
00:47:36 <HackEgo> misspellings of crosant? ¯\(°_o)/¯
00:47:38 <kmc> 'Automatic weapons on a flag are especially bad. Appears to have been designed by a committee all of whom had stupid ideas for pictures of extra things to put on the flag.'
00:48:55 <hagb4rd> guess the green color (and of course the half moon) mostly represents islamic infuence
00:49:15 <oerjan> just put a nuclear bomb on your flag and get it over with
00:49:19 -!- Bike has joined.
00:49:26 <shachaf> hi Bike
00:49:36 <shachaf> have you ever considered the nick Bicycle
00:49:40 <shachaf> it would suit you
00:49:41 <kmc> "Serbians will have a chance to change this flag when Montenegro secedes from Yugoslavia. I suggest they take it."
00:49:43 <kmc> well they did
00:50:09 <kmc> put a crown eagle thingy on it
00:50:10 <Bike> Why would it suit me?
00:50:30 <FireFly> I like Nepal's choice of flag
00:50:39 <FireFly> Rectangular flags are so typical
00:50:47 <kmc> and Црне Горе ended up with something totally different
00:51:12 <Bike> libya's flag under gadaffi is my favorite.
00:51:49 <kmc> FreeFull: oerjan: doesn't it bug you that the various crosses on the Union Jack don't line up?!?
00:52:04 <kmc> it means you can have one that's upside down or backwards
00:52:07 <GreyKnight> oh yes, Nepal is good
00:52:21 <Bike> and the most depressing flag is definitely Mozambique's
00:52:22 <GreyKnight> Hm isn't there another country with a Nepal-shaped flag?
00:52:50 <FreeFull> kmc: A Polish flag can be upside-down too
00:52:50 <GreyKnight> kmc: well if it weren't that way how would you tell which way up you had it?!?
00:53:05 <kmc> FreeFull: true facts
00:53:06 <FreeFull> I don't see how you hang a flag backwards though
00:53:18 <FreeFull> A flag always has two sides
00:53:31 <GreyKnight> What if you hang it on a wall?
00:53:45 <Bike> well one side is generally designated as the side the pole's on
00:53:48 <kmc> FreeFull: wait until someone invents a möbius flag for their country
00:53:49 <FreeFull> Then you knock down the wall
00:53:57 <FireFly> Glorious
00:54:03 <FreeFull> kmc: Klein bottle flag?
00:54:14 <kmc> a bit harder to manage
00:54:19 <Arc_Koen> is that why the british flag is symmetrical?
00:54:29 <kmc> it's not symmetrical!
00:55:11 <Arc_Koen> I feel stupid now
00:55:17 <GreyKnight> I am in favour of nonorientable flags
00:55:19 <Arc_Koen> but would you notice if it were hanged backwards?
00:55:27 <kmc> Arc_Koen: i wouldn't
00:55:29 <kmc> but some people would
00:55:40 <kmc> i don't know which way is correct but wikipedia says
00:56:01 <kmc> they should have a referendum to symmetricize the flag
00:56:13 <kmc> saving billions of pounds
00:56:24 <Gregor> lol
00:56:29 <hagb4rd> btw how can quarks with the 1/2 spin appear the same only when turned 720 degrees.. also how many dimensions does it take to prove we're not wrong
00:56:31 <GreyKnight> s/sav/wast/
00:57:13 <GreyKnight> well if you rotate it 360 degrees then the spin is pointing the wrong way!
00:57:14 <kmc> the US state of Rhode Island had a referendum on changing the name to Rhode Island
00:57:17 <kmc> and it failed
00:57:24 <kmc> the current name is actually the State of Rhode Island and Providence Plantations
00:57:42 <coppro> haha
00:57:45 <Bike> is that like how massachusetts is "actuall a commonwealth" and north dakota "isn't a state"
00:58:03 <coppro> ND is a state
00:58:04 <oerjan> kmc: if my vague impression is correctly recalled, the crosses are strangely arranged in order that none of them be more prominent than the others according to heraldic rules
00:58:15 <kmc> ah heraldry
00:58:20 <kmc> another great nomic
00:58:30 <kmc> i don't know anything about North Dakota not being a state
00:58:36 <Bike> coppro: there was some thing a few months ago about how some technicality meant they weren't (like it matters)
00:58:57 <Bike> http://newsfeed.time.com/2011/07/14/because-of-constitution-error-north-dakota-is-not-a-state-and-never-has-been/
00:59:01 <GreyKnight> Bike: see previous comments re: nomic I guess :-)
00:59:19 <hagb4rd> is that a Saint Andrew's Cross on the union jack?
00:59:26 <Bike> which previous comments
00:59:26 <GreyKnight> every piddling little detail matters in a nomic B-)
00:59:29 <kmc> haha
00:59:34 <Bike> there are so many! i'm still waiting on my bicyclocity
00:59:40 <kmc> is that like Pope John XX
01:00:05 <Bike> «There has never been a Pope John XX, because the 20th pope of this name, formerly Petrus Hispanus, when elected Pope in 1276, decided to skip the number XX and to be counted as John XXI instead» yesssss
01:00:45 <Bike> antipopes are still the best though
01:00:47 <kmc> there are also off-by-one errors on all the Popes Stephen because the one who was going to be Stephen II died before he technically got all the way popeified
01:00:49 <GreyKnight> Bike: why?
01:00:55 <Bike> why what
01:01:02 <kmc> so Stephen VI is sometimes called Stephen VII, etc
01:01:02 <hagb4rd> though the high numbers symbolize continuity
01:01:05 <GreyKnight> (re: skipping XX)
01:01:14 <Bike> GreyKnight: oh, it just amuses me
01:01:27 <kmc> there was confusion on whether there had already been a John XX i think
01:01:36 <GreyKnight> hagb4rd: yes (re: St Andrew's Cross)
01:01:38 <Bike> the history of the papacy is really amusing and interesting
01:01:47 <GreyKnight> Bike: I mean, why did he skip it?
01:02:04 <coppro> just wait till Pope John XXX
01:02:21 <hagb4rd> what is then?
01:02:22 <kmc> Motherboy XXX
01:02:38 <hagb4rd> i don't think it'll wrap over soon :p
01:03:13 <Bike> GreyKnight: like kmc said, there was some confusion about which johns there had been so far
01:04:27 <Bike> there are two thousand years of popes, it's hard to keep records for that long
01:04:43 <Bike> or, 1200 years of popes, at the time
01:04:46 <hagb4rd> how can this be? the history of popes is documented very well (since the clerks were able to write)
01:04:48 <GreyKnight> It's easy to take modern record-keeping for granted
01:05:02 <oerjan> hagb4rd: the rotation thing makes sense if you think of the particles not just as isolated in space, but actually connected to the outside by threads; if you have a ball like that and try to rotate it 360 degrees it turns out you _cannot_ untangle the threads, but if you rotate it 720 degrees you can
01:05:05 <hagb4rd> but maybe they have excomunicated the one or the other
01:05:24 <Bike> hagb4rd: being able to write doesn't necessarily mean your records are accurate...
01:05:26 <kmc> well for the first few hundred years, christianity was a persecuted minority cult
01:05:29 <kmc> so there's that
01:05:38 <kmc> and there have been various schisms
01:05:39 <Bike> yeah pretty much all of the first ones were martyred
01:05:41 <GreyKnight> oerjan: A subatomic particle is a bit like a monad
01:05:42 <coppro> hagb4rd: that's only like another 10 johns
01:05:46 <kmc> or people invade and take over your city
01:05:47 <kmc> etc
01:05:59 <oerjan> GreyKnight: well they have the nuclear waste part right, at least
01:06:03 <Bike> also we've changed date systems a couple times
01:06:12 <Bike> so there goes that time accuracy
01:06:34 <Bike> http://en.wikipedia.org/wiki/Pope_Hyginus so we end up with a lack of information like so
01:06:37 <GreyKnight> You rotate the particle and put up a flag. Then you put the flag in a space suit and jump into some nuclear waste. You can take as many burritos as you want!
01:06:41 -!- augur has joined.
01:06:49 <hagb4rd> oerjan: phew.. that's hard to imagine
01:07:05 <coppro> hagb4rd: I lied. 7 more Johns
01:07:19 <GreyKnight> off-by-john error
01:07:25 <hagb4rd> lol
01:08:07 <kmc> back later
01:08:08 <GreyKnight> hm I haven't read the burrito one yet actually... to the search engine!
01:08:16 <hagb4rd> kmcu
01:08:32 <Bike> i thought "monads were like burritos" was from that article about monad tutorials sucking
01:09:06 <coppro> every year, the vatican publishes a list of popes
01:09:07 <coppro> *why*
01:10:43 <GreyKnight> Someone managed to actually map the properties of a monad to burritos: http://blog.plover.com/prog/burritos.html
01:12:16 <coppro> GreyKnight: turns out categories crop up every now and then in real life
01:12:19 <coppro> especially poset categories
01:12:36 <GreyKnight> Are IRC channels categories
01:12:42 <GreyKnight> :-|
01:12:59 <GreyKnight> fungot: would you like to be in a category?! You would fit right in!
01:13:00 <fungot> GreyKnight: call it by name.
01:13:21 <GreyKnight> fungot: how about we call it... Fungot?
01:13:22 <fungot> GreyKnight: i think i did that wrong anyway." ( interactive) ( let ( ( z ' get))
01:13:23 <coppro> GreyKnight: maybe
01:13:33 <coppro> GreyKnight: for instance, you can form a poset category from a bunch of tiles
01:14:00 <coppro> a set of tiles comes before another set if the first set can be cut up to produce the second
01:14:04 <coppro> BAM! category
01:14:06 <GreyKnight> oh, that's why somebody was conflating category theory with bathroom interior design the other day :-D
01:14:18 <GreyKnight> yay maths
01:14:40 <coppro> `addquote <coppro> GreyKnight: for instance, you can form a poset category from a bunch of tiles <GreyKnight> oh, that's why somebody was conflating category theory with bathroom interior design the other day :-D
01:14:44 <HackEgo> 908) <coppro> GreyKnight: for instance, you can form a poset category from a bunch of tiles <GreyKnight> oh, that's why somebody was conflating category theory with bathroom interior design the other day :-D
01:14:56 <coppro> hmm
01:15:05 <coppro> `addquote this quote is formatted wrong to annoy quitopia also it's not a quote
01:15:07 <GreyKnight> elliott will shout about the spacing
01:15:09 <HackEgo> 909) this quote is formatted wrong to annoy quitopia also it's not a quote
01:15:10 <oerjan> hagb4rd: http://www.youtube.com/watch?v=Rzt_byhgujg
01:15:17 <coppro> `quote
01:15:18 <HackEgo> 590) <Ngevd> "Facekicker" Hird is a member of the Hird family <Phantom_Hoover> Ngevd, world-renowned detective.
01:15:30 <shachaf> `quoerjan
01:15:32 <HackEgo> 361) <elliott_> I'm not even going to try and understand what you're proposing. <oerjan> i understand it perfectly. it's completely nuts. \ 109) <oerjan> alise: mainly it's the fact it blows so hard i cannot avoid hitting the walls of the thing, which completely goes against my basic public toilet hygiene principles \ 16) <fungot> oerjan: are you
01:15:50 <coppro> on one has "pictureofapotato.com"
01:15:51 <coppro> why not
01:15:52 <coppro> *no one
01:15:55 <shachaf> fungot: are you
01:15:56 <fungot> shachaf: unfortunately i still don't know my t-shirt size? :) ( of course, they're for the easiest machine mangling as a quote
01:17:02 <GreyKnight> fungot: I'm not buying you a T-shirt if you're just going to machine-mangle it
01:17:03 <fungot> GreyKnight: syntax-rules is fun as a palindrome? predicate" seems like a
01:17:21 <oerjan> hagb4rd: not quite the same but i couldn't quite find what i am thinking of
01:17:31 <GreyKnight> fungot wants bash to support syntax-rules?
01:17:31 <fungot> GreyKnight: i prefer darcs? cool)... but it's not
01:17:59 <GreyKnight> `? GreyKnight
01:18:02 <HackEgo> GreyKnight? ¯\(°_o)/¯
01:18:13 <GreyKnight> HackEgo I thought we were friends :<
01:18:45 <hagb4rd> orerjan: yea. it is hard to explain and imagine.. but i think i have a vague picture of what're out to say
01:19:16 <oerjan> hagb4rd: i'm wondering if what i said is literally correct, it _should_ be possible to make a video of it if it is true
01:19:39 -!- augur has quit (Remote host closed the connection).
01:19:47 <hagb4rd> in 3D please :p
01:20:05 <GreyKnight> Ørjan's Video Representation Hypothesis
01:20:27 <GreyKnight> if it is true, it is possible to make a video of it
01:21:00 <GreyKnight> hagb4rd further conjectures that the video can be in 3D
01:21:17 <coppro> hmm
01:21:38 <GreyKnight> First, consider a spherical video...
01:21:51 <hagb4rd> i doubt it
01:22:56 <hagb4rd> (i even marked it as irony for sure)
01:23:06 <hagb4rd> *as ironic
01:23:40 <hagb4rd> arg forget this expressions
01:23:46 <shachaf> monqy: do you know a lot about functors
01:24:11 <oerjan> of course it can be in 3D.
01:26:16 <hagb4rd> maybe..i tried to imply that the mathematicians need more than 3 dimensions.. but it may work for your analogy
01:26:46 <oerjan> they don't need 3 for the cup demonstration or the belt trick
01:26:53 * hagb4rd looks for his stereo glasses
01:26:59 <oerjan> it's a theorem about rotations _in_ 3d, after all
01:31:30 <hagb4rd> there seem to be an affinity to a moebius strip (in which it takes two rounds to get back to start)
01:33:05 <monqy> shachaf: what's a lot
01:34:41 <hagb4rd> metaquestion
01:34:42 <shachaf> monqy: not sure
01:35:19 <monqy> alright
01:35:29 <monqy> my answers not sure, too
01:35:48 <shachaf> monqy: you know the operation p a -> p (a,b)?
01:35:53 <shachaf> and the operation p a -> p (Either a b)
01:36:06 <shachaf> does that have names.
01:36:28 <monqy> whoa how'd that b get in there!!!!
01:36:40 <shachaf> EXACTLY
01:37:11 <shachaf> so do you know anything about these things
01:37:21 -!- sebbu has quit (Read error: Connection reset by peer).
01:37:30 <monqy> wild guess: the left one is {-# LANGUAGE TupleSections #-} fmap (,b), and the second one is fmap Left
01:37:33 <monqy> am i right???
01:37:44 -!- sebbu has joined.
01:37:44 <shachaf> monqy: no it's forall a b.
01:37:53 <monqy> :oooooo
01:38:06 <shachaf> and also you can't use fmap
01:38:14 <shachaf> because you don't know the variance of the functors
01:38:31 <shachaf> all you know is invariant ie (a -> b) -> (b -> a) -> p a -> p b
01:38:34 <shachaf> and this operation
01:39:54 -!- Phantom__Hoover has quit (Remote host closed the connection).
01:40:54 <monqy> forall b..........spooky..............
01:41:24 <shachaf> monqy: not really spooky when you use it contravariantly!!
01:41:24 -!- epicmonkey has quit (Ping timeout: 265 seconds).
01:41:34 <shachaf> like newtype Op r a = Op (a -> r)
01:41:39 <shachaf> that's not spooky
01:42:28 <monqy> but then the second one is spooky. the one with the either????
01:42:40 <shachaf> but then just use the second one covariantly
01:42:45 <shachaf> qed???
01:43:07 <monqy> but you said i didnt know the variances......
01:43:23 <shachaf> monqy: you don't know the variances when you use the operations
01:43:39 <shachaf> but then you can pick p when you're instantiating p yourself
01:44:08 <coppro> kɑpɹoʊ
01:44:58 <shachaf> monqy: another good invariant functor: Endo????
01:45:03 <shachaf> newtype Endo a = Endo (a -> a)
01:45:27 <shachaf> monqy: i'd like to mention that Endo supports both of these operations??
01:47:25 <monqy> ok
01:48:01 <shachaf> monqy: btw you can sort of generalisze them to any comonad/monad?
01:48:12 <monqy> what do you mean
01:48:36 <shachaf> p a -> p (w a), p a -> p (m a)
01:49:52 <monqy> ok
02:02:07 <shachaf> monqy: So ideally these operations would be on superclasses of Functor/Contravariant?
02:04:07 <monqy> idk is invariant "any good"
02:08:49 <shachaf> monqy: well pretty much every haskell type is invariant
02:08:56 <shachaf> except for the "weird ones"??
02:08:57 <shachaf> like ioref
02:09:01 <shachaf> but every adt
02:09:14 <shachaf> also "weird one??" like gadts
02:09:15 <shachaf> and rank2
02:09:26 <monqy> does that mean it's "any good"
02:10:23 <shachaf> it means it's "the goodest"
02:10:45 -!- ais523 has quit.
02:11:16 <monqy> oh
02:16:24 -!- dessos has left.
02:24:56 -!- azaq23 has quit (Quit: Leaving.).
02:26:32 -!- DHeadshot has joined.
02:43:01 -!- sebbu2 has joined.
02:43:20 -!- sebbu2 has quit (Changing host).
02:43:20 -!- sebbu2 has joined.
02:46:25 -!- sebbu has quit (Ping timeout: 248 seconds).
02:47:28 -!- TeruFSX has joined.
02:50:39 <hagb4rd> n8
03:01:37 <hagb4rd> oops..wrong window
03:02:09 * oerjan thought that was a 1337 way of saying good night
03:04:19 <hagb4rd> oerjan: it is yes. in german it is "gute nacht" or shortly "nacht" and 8 is "acht"
03:04:35 <hagb4rd> it almost works in english
03:05:29 <oerjan> except .. WHY ARE YOU STILL HERE THEN
03:05:45 * oerjan inquisitates
03:07:00 <hagb4rd> as i mentioned it was the wrong window. i was n8ing someone in a query.
03:07:03 <hagb4rd> :>
03:07:32 <oerjan> oh right it's not a symmetric relation
03:07:40 <hagb4rd> nope
03:07:41 * oerjan cackles madly
03:07:56 <hagb4rd> at least i think it is not
03:08:49 -!- copumpkin has quit (Ping timeout: 248 seconds).
03:08:54 <oerjan> hm almost works in italian or french too
03:09:20 -!- copumpkin has joined.
03:09:58 <hagb4rd> mysterious relation in the etymology of "night" and "eight"
03:10:07 <hagb4rd> maybe
03:10:41 <oerjan> they're probably all inheriting both words from common indoeuropean
03:15:32 <oerjan> @remember camccann Clearly the reason why edwardk uses Haskell now is because every C++ compiler has a restraining order against him.
03:15:32 <lambdabot> Good to know.
03:15:45 <shachaf> @quote cmccann learly
03:15:45 <lambdabot> cmccann says: Clearly the reason why edwardk uses Haskell now is because every C++ compiler has a restraining order against him.
03:16:15 <oerjan> @forget camccann Clearly the reason why edwardk uses Haskell now is because every C++ compiler has a restraining order against him.
03:16:15 <lambdabot> Done.
03:16:22 <shachaf> cmccann is his nick in IRC.
03:16:28 <oerjan> YOU SO DARN FAST
03:16:29 <shachaf> (It used to be syntaxglitch, I think?)
03:17:00 <shachaf> oerjan: what do you think of the "isomorphism" between ((a,b,c),a) and (a,b,c)
03:17:04 <shachaf> pretty cool isomorphism huh
03:17:14 <oerjan> WAT
03:20:30 <oerjan> this is obviously some strange usage of the word "isomorphism" that I hadn't previously been aware of.
03:21:42 <shachaf> well it's (\((_,y,z),x') -> (x',y,z)) (\(x,y,z) -> ((x,y,z), x))
03:21:46 <shachaf> great isomorphism imo
03:22:20 <oerjan> :t (\((_,y,z),x') -> (x',y,z)) (\(x,y,z) -> ((x,y,z), x))
03:22:21 <lambdabot> The lambda expression `\ (x, y, z) -> ...' has one argument,
03:22:22 <lambdabot> but its type `((t0, t2, t3), t1)' has none
03:22:22 <lambdabot> In the first argument of `\ ((_, y, z), x') -> (x', y, z)', namely
03:22:28 <oerjan> HUMBUG
03:22:58 <shachaf> oerjan: that's two lambdas...................
03:23:03 <shachaf> @ty iso (\((_,y,z),x') -> (x',y,z)) (\(x,y,z) -> ((x,y,z), x))
03:23:04 <lambdabot> (Functor f, Isomorphic k) => k ((t1, t2, t3) -> f (t4, t5, t6)) (((t, t2, t3), t1) -> f ((t4, t5, t6), t4))
03:23:31 <shachaf> 19:23 <lambdabot> (Functor f, Isomorphic k) => k ((t1, t2, t3) -> f (t4, t5, t6)) (((t, t2, t3), t1) -> f ((t4, t5, t6), t4))
03:23:36 <shachaf> qed
03:27:11 <oerjan> quite easily done
03:27:11 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:27:20 -!- DH____ has joined.
03:27:21 <shachaf> Wow, Evince downloaded this document all the way to 274% before opening it.
03:27:31 <shachaf> *That's* a dedicated PDF viewer.
03:31:30 <kmc> today in zombie 6.001 we used as an example this function (translated to Haskell):
03:31:33 <kmc> unique [] = []; unique (x:xs) = x : unique (filter (/= x) xs)
03:31:59 <kmc> this is amusingly similar to
03:31:59 <kmc> primes [] = []; primes (x:xs) = x : primes (filter ((/= 0) . (`mod` x)) xs)
03:33:17 -!- DH____ has quit (Read error: Connection reset by peer).
03:33:38 -!- DHeadshot has joined.
03:33:48 <monqy> nub?
03:33:51 <kmc> :t let foo f g k [] = k; foo f g k (x:xs) = f x (foo f g k (g xs)) in foo
03:33:52 <lambdabot> (t -> t1 -> t1) -> ([t] -> [t]) -> t1 -> [t] -> t1
03:34:09 <kmc> monqy: hm, I guess this does relate to the super small prime sieve using nubBy
03:34:10 <shachaf> > nubBy((>1).).gcd)[2..]
03:34:12 <lambdabot> <hint>:1:17: parse error on input `)'
03:34:18 <shachaf> Well, one more (
03:34:23 <shachaf> I think it's pretty directly related.
03:34:28 <shachaf> Except, hmm, not quite.
03:34:30 <kmc> is the 'foo' i just defined a something-morphism?
03:35:15 <shachaf> (a -> b -> b) -> ([a] -> [a]) -> b -> [t] -> b?
03:35:21 * shachaf can't read those types with the digits.
03:35:34 <shachaf> I missed one.
03:35:38 <shachaf> (a -> b -> b) -> ([a] -> [a]) -> b -> [a] -> b?
03:35:47 <shachaf> That looks a lot like a fold with an extra filtering step.
03:35:53 <kmc> that's what it is
03:35:53 <shachaf> @ty foldr
03:35:54 <lambdabot> (a -> b -> b) -> b -> [a] -> b
03:36:01 <shachaf> Oh, right.
03:36:03 <monqy> a fold with an extra "something"
03:36:10 <monqy> who knows what it could be
03:36:17 <shachaf> But not really a fold because you get an extra concrete list.
03:36:21 <shachaf> Sort of like a paramorphism?
03:36:28 <Sgeo> Is my old college likely to have advisor that alumni can speak to
03:36:29 <kmc> also at the end we trolled the students with ((\x -> x x) (\x -> x x))
03:36:30 <Sgeo> >
03:36:30 <Sgeo> ?
03:36:44 <kmc> Sgeo: that depends on what you want this advisor to do
03:36:50 <kmc> if the answer is "beg you for money" then certainly
03:36:58 <shachaf> kmc: When do you get to ((call/cc call/cc) (call/cc call/cc))?
03:36:59 <kmc> if other things then maybe
03:37:05 <Sgeo> Help me decide whether it's a good idea to go to grad school or just look for a job
03:37:07 <kmc> shachaf: I don't even know that one :/
03:37:26 <kmc> don't go to grad school
03:37:42 <Sgeo> kmc, hm?
03:38:00 <shachaf> kmc: Well, start with (call/cc call/cc)
03:38:13 <shachaf> (define x (call/cc call/cc))
03:38:14 <shachaf> (x 5)
03:38:15 <shachaf> x
03:38:17 <shachaf> 5
03:38:46 <shachaf> Er, the first three lines have a "λ> " in front of them.
03:39:04 * Sgeo 's mind breaks
03:39:14 <kmc> what
03:39:21 <shachaf> What's a good Scheme interpreter to use to test things?
03:39:26 <kmc> how does it...
03:39:27 <kmc> oh god
03:39:32 <shachaf> Usually I use "scm" because it's easy to remember the name.
03:39:34 <kmc> shachaf: i just tested it in DrRacket
03:39:36 <Sgeo> plt-r5rs?
03:39:38 <kmc> that's what we're using for the class
03:39:39 <Bike> shachaf's is an infinite loop, isn't it
03:39:40 <kmc> it's not exactly Scheme
03:39:48 <Sgeo> kmc, there's an R5RS mode
03:39:48 <Bike> is anything exactly Scheme
03:39:52 <shachaf> Oh, I seem to remember that waas good.
03:39:56 <kmc> yeah but something is broken about it
03:40:11 <shachaf> Oh, it wants to download 60MB.
03:41:05 * shachaf doesn't have that kind of bandwidth!
03:41:11 <kmc> :(
03:41:14 <kmc> tin can internet?
03:41:25 <shachaf> Something like that.
03:41:36 <shachaf> Well, it's not that bad.
03:41:53 <shachaf> The issue is a stupid router that makes everything unusable when a download is going on.
03:41:57 <Sgeo> Bike, shachaf's is a one-shot mutation. Somehow.
03:41:59 <kmc> buffer bloat :(
03:42:07 <shachaf> Yep.
03:42:17 <shachaf> Sgeo: Well, not necessarily, I think?
03:42:18 <Bike> Sgeo: i mean (c(call/cc call/cc) (call/cc call/cc)). the define thing is relatively simple
03:42:21 <kmc> you could rate-limit your download to be just under your max bandwidth
03:42:24 <Bike> *-c
03:42:43 <shachaf> kmc: I could, but the bandwidth is also somewhat variable.
03:42:43 <kmc> then interactivity will improve
03:42:46 <kmc> yeah :/
03:42:55 <shachaf> Also I don't know a good way of doing it without coöperation from a process.
03:43:01 <shachaf> Which doesn't really work for a typical browser, say.
03:43:02 <kmc> does it vary as a poisson process whose rate is subject to brownian motion but is 'sticky' at zero?
03:43:16 <shachaf> It's something you *could* do from outside the process but I don't think Linux supports it.
03:43:20 <kmc> (rather is packet delivery modeled as such)
03:43:31 <kmc> netem can throttle things i think
03:43:43 <shachaf> Hmm.
03:44:00 <kmc> i'm trying to figure out what the second call/cc does in (define x (call/cc call/cc))
03:45:25 <Bike> it gets called?
03:45:34 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:45:38 <kmc> well yes
03:46:43 <Bike> (define x (call/cc call/cc)) => (define x (call/cc (define x []))) => (define x (define x [])), I think
03:47:18 <Bike> er no, there's the side effect of defining x in there i suppose?
03:49:16 <kmc> oh
03:49:21 <kmc> i see
03:49:29 <kmc> that is mind-twisty
03:49:39 <monqy> saw what about it? theres a few wacky things going on
03:49:44 <oerjan> Bike: http://esolangs.org/wiki/Subtle_cough
03:50:40 <monqy> subtle cough is cute
03:50:54 <Bike> ternary logic through continuations, it's what i always wanted
03:51:36 <kmc> don't know what in particular, i just understand the evaluation steps and why they produce the resulting behavior
03:51:47 <monqy> ah
03:52:35 <monqy> imo it's easier to see if you throw out the 2nd call/cc and replace it with an identity function, but then it's not as confusing or aesthetically pleasant
03:53:20 <kmc> hm that does work too
03:53:32 <monqy> i was real into that sorta junk a few years ago
03:53:52 <shachaf> what sorta junk are you into now
03:53:57 <monqy> different junk
03:54:03 <shachaf> proofs or something?
03:54:11 <monqy> you could say that........
03:56:19 <shachaf> type systems?
03:56:26 <monqy> you could say that too!
03:56:30 <shachaf> who knows :'(
03:56:32 <shachaf> is it lenses
03:57:04 <monqy> lenses are neato but i wouldnt say i'm real "into" them at the moment
03:57:22 <shachaf> what are you into!!
03:57:23 <monqy> but maybe i am???
03:57:26 <monqy> who knows
03:57:40 <shachaf> monqy: do you like "simple lenses"
03:57:51 <shachaf> ie http://slbkbs.org/s.hs
04:00:00 <monqy> what does simple mean here...im guessing theres no relation to the Simple type alias in the lens package.....
04:00:25 <shachaf> lots of relation
04:00:30 <monqy> :ooo
04:00:34 <shachaf> pretty much all these lenses are simple
04:00:38 <shachaf> "i.e. nonpolymorphic"
04:00:42 <monqy> how boring !
04:00:46 <shachaf> so you have Lens s a instead of Lens s t a b
04:00:52 <shachaf> i know :'(
04:00:56 <kmc> 100% less stabby
04:01:08 <monqy> it looks a bit overcomplicated if you're not even polymorphic gosh
04:01:14 <monqy> what's the twist
04:01:16 <monqy> the excitement
04:01:18 <shachaf> monqy: the idea was to get insights!!!!
04:01:20 <monqy> what makes it worth it
04:01:20 <monqy> oh
04:01:23 <shachaf> ask elliott
04:02:13 <shachaf> monqy: we're not actually going to use these "are you crazy??"
04:02:16 <Sgeo> (call/cc identity) is very easy to understand
04:02:37 <monqy> shachaf: are you going to use the insights
04:02:46 <shachaf> Sgeo: (identity identity) is even easier to understand.
04:02:51 <hagb4rd> :t easy
04:02:51 <shachaf> "maximal easiness?"
04:02:52 <lambdabot> Not in scope: `easy'
04:03:26 <Sgeo> But (call/cc identity) has the same external effect as (call/cc call/cc) (even if they work differently, I have no idea)
04:03:41 <monqy> : )
04:04:01 <Bike> but it's Aesthetically Undesirable
04:05:15 <shachaf> monqy: so what are you actually into
04:05:29 <monqy> idk stuff
04:05:33 <monqy> pl stuff
04:05:41 <shachaf> like what
04:05:46 <monqy> maybe lenses too who knows
04:05:56 <monqy> pff how should i know
04:05:58 <shachaf> what "sorta" pl stuff
04:06:02 <kmc> racket seems to have every possible kind of delimited continuations
04:06:38 <Sgeo> I still only understand shift/reset :/
04:06:50 <Sgeo> And have no idea how the continuation model of Racket works
04:07:15 <shachaf> who needs continuations just use coroutines??
04:07:21 <shachaf> almost as good
04:07:39 <Bike> stern
04:07:59 <kmc> i'm kind of surprised there is apparently no get/cc ?
04:08:26 <Bike> shachaf said it was More Powerful
04:08:27 <shachaf> That's callCC (return . fix) in Haskell!
04:09:00 <shachaf> Bike: Well, in Haskell, callCC (return . fix) lets you do more things than callCC
04:09:06 <shachaf> Like get your program into an infinite loop.
04:09:09 <shachaf> "always a popular choice"
04:09:17 <Bike> an important thing to do
04:09:47 <kmc> :t return . fix
04:09:49 <lambdabot> Monad m => (a -> a) -> m a
04:11:11 <shachaf> @ty callCC (\k -> return (fix k))
04:11:12 <lambdabot> MonadCont m => m (m b)
04:18:18 <Sgeo> The Racket logo is pretty http://docs.racket-lang.org/images/pict_101.png
04:19:09 <kmc> hm that's not the one on http://racket-lang.org/ though
04:19:26 <kmc> the one you linked is pretty busy
04:19:32 <kmc> there's a shadow and a bubble and a lens flare (?)
04:19:44 <kmc> i agree it's pretty, but it's not a good logo
04:19:56 <Bike> 10 million hours in POV-ray
04:19:59 <kmc> haha
04:20:05 <shachaf> The Racket logo looks like the Tnuva logo.
04:20:16 <shachaf> http://www.apax.com/media/2041/Tnuva.JPG
04:20:23 <kmc> haha
04:21:16 <monqy> does tnuva look like tuna for a reason or did they just pick a silly name
04:21:50 <shachaf> monqy: it's in hebrew.............
04:22:04 <kmc> is the logo meant to be a stylized tav
04:22:12 <Bike> what's the hebrew for "tuna"?
04:22:37 <shachaf> "tuna"
04:22:38 <shachaf> kmc: Yep.
04:22:45 <shachaf> Well, I think so, anyway?
04:23:37 <kmc> it's hard to know how much it looks like a letter, without being someone who uses this script
04:23:42 <Bike> "tuna" <-- fucking loanwords
04:24:14 <monqy> shachaf: does that mean it looks like tuna in hebrew too
04:24:16 <shachaf> Well, it's pretty stylized.
04:24:39 <shachaf> monqy: no because tuna is spelled with a tet
04:24:49 <Sgeo> Maybe if I rewrite the call/ccs into a more recognizable form
04:24:53 <shachaf> http://en.wikipedia.org/wiki/Teth
04:24:55 <shachaf> http://en.wikipedia.org/wiki/Tav_(letter)
04:25:01 <Sgeo> (call/cc (lambda (k1) (call/cc k1)))
04:25:34 <monqy> very recognizable
04:26:06 <Bike> makes perfect sense
04:26:28 <hagb4rd> @ask gregor you said the sandbox behind hackego is designed to support the usage of external webservices in a native(?) way. can you give me hint, or a short example how it's done? or just a keyword i should look for? (what i'd like to do is sth like `run <call REST-service> | <transform response> | paste)
04:26:28 <lambdabot> Consider it noted.
04:26:32 <Sgeo> (call/cc (lambda (k1) (call/cc (lambda (k2) (k1 k2)))))
04:26:46 <Sgeo> I think
04:26:47 <monqy> whoa sgeo we don't want to get too recognizable here
04:26:51 <shachaf> Sgeo: does clojure even have call/cc........
04:26:55 <Gregor> hagb4rd: It's DESIGNED to, but it doesn't work right now. It's just an HTTP proxy.
04:26:56 <lambdabot> Gregor: You have 1 new message. '/msg lambdabot @messages' to read it.
04:26:57 <Sgeo> shachaf, no
04:27:15 <Sgeo> shachaf still doesn't understand me :(
04:27:22 <shachaf> Sgeo: ?
04:27:25 <Gregor> `run echo $http_proxy
04:27:26 <HackEgo> http://127.0.0.1:3128
04:27:30 <shachaf> Is Racket the new Clojure?
04:27:40 <Sgeo> yes
04:27:44 <kmc> call-with-current-proxyfactorybean
04:28:09 <shachaf> I prefer call-with-current-proxyfactorybeansingleton
04:28:14 <Sgeo> Maybe if I rewrite into let/cc
04:28:28 <shachaf> (let/cc let/cc)????????
04:28:29 <Sgeo> (let/cc k1 (let/cc k2 (k1 k2)))
04:28:34 <monqy> Sgeo: so what's the new factor
04:28:43 <hagb4rd> gregor: so would i use this proxy to call a service (if it wasn't broken)? a short example
04:28:44 <shachaf> monqy: that's also Racket
04:28:51 <monqy> shachaf: are you sure....
04:28:56 <shachaf> monqy: Racket is just that good
04:28:59 <hagb4rd> gregor: so how would i use ..
04:29:03 <monqy> are you sgeo? I hear you still don't understand him
04:29:13 <shachaf> monqy: don't believe everything you hear
04:29:18 <Gregor> hagb4rd: Depends on what language you're doing this in. They each have their own way to use an HTTP proxy. If you just want to curl or wget, those'll work out of the box.
04:30:13 <hagb4rd> gregor: as described i want to use it the shell
04:30:27 <Gregor> <call REST service> tells me nothing though.
04:30:44 <Gregor> Is that call just a curl call? If so, just use it, curl knows how to handle $http_proxy.
04:30:57 <shachaf> `curl http://slbkbs.org/hi
04:30:59 <HackEgo> ​ % Total % Received % Xferd Average Speed Time Time Time Current \ Dload Upload Total Spent Left Speed \
04:31:01 <hagb4rd> aw it's just like fetching an url ..not more
04:31:10 <hagb4rd> if wget will work things are fine
04:31:15 <Gregor> wget would work fine.
04:31:30 <Gregor> I only mentioned curl because usually it's more scriptable.
04:31:49 <hagb4rd> curl is cool too
04:32:01 <hagb4rd> so what exactly is broken
04:32:05 <hagb4rd> the proxy itself?
04:32:23 <Gregor> My sandbox's ability to communicate with the proxy.
04:32:29 <hagb4rd> can i help you fix it?
04:32:35 <hagb4rd> i know you're quite busy
04:32:54 -!- david_werecat has quit (Read error: Connection reset by peer).
04:33:14 -!- david_werecat has joined.
04:33:14 <Gregor> Well, I'm not sure if it's a problem with umlbox or something else. If you fetch umlbox and see if you can get its -L option to work, that'd give me a headstart, but it would be hours of work for you, or ten minutes for me ;)
04:33:37 <hagb4rd> lol
04:33:46 <shachaf> `curl larr mo
04:33:47 <HackEgo> ​ \ curl: (7) couldn't connect to host
04:34:03 <hagb4rd> okay.. i'll give it a try
04:34:26 <shachaf> monqy: how into lenses are you
04:34:35 <shachaf> monqy: enough to join #haskell-lens??
04:36:35 <Gregor> `run curl http://google.com/
04:36:37 <HackEgo> ​ \ curl: (7) couldn't connect to host
04:36:45 <Gregor> Hrrng
04:36:49 <Gregor> `run echo $http_proxy
04:36:51 <HackEgo> http://127.0.0.1:3128
04:36:55 <Gregor> `run wget http://google.com/
04:36:56 <HackEgo> ​--2013-01-11 04:36:56-- http://google.com/ \ Connecting to 127.0.0.1:3128... failed: Connection refused.
04:37:00 <Gregor> `run wget http://www.google.com/
04:37:02 <HackEgo> ​--2013-01-11 04:37:01-- http://www.google.com/ \ Connecting to 127.0.0.1:3128... failed: Connection refused.
04:38:24 <hagb4rd> are you sure there is no blacklist/whitelist at all?
04:38:39 <hagb4rd> hm
04:38:44 <Gregor> hagb4rd: The whitelist is on the proxy. This is failing to connect TO the proxy.
04:38:55 <hagb4rd> k
04:40:56 <Gregor> OK, double-WTF.
04:41:06 <Gregor> It works if I run it on the shell, but not from the bot...
04:44:15 <hagb4rd> `ls - l bin/wget
04:44:16 <HackEgo> ls: invalid option -- ' ' \ Try `ls --help' for more information.
04:44:30 <hagb4rd> `run ls - l bin/wget
04:44:31 <HackEgo> ls: cannot access -: No such file or directory \ ls: cannot access l: No such file or directory \ ls: cannot access bin/wget: No such file or directory
04:44:35 <Gregor> `run curl http://google.com/
04:44:36 <HackEgo> ​ \ curl: (7) couldn't connect to host
04:44:40 <Gregor> `run curl http://www.google.com/
04:44:41 <HackEgo> ​ \ curl: (7) couldn't connect to host
04:45:07 <Gregor> `run curl http://www.google.com/
04:45:09 <HackEgo> ​ % Total % Received % Xferd Average Speed Time Time Time Current \ Dload Upload Total Spent Left Speed \
04:45:14 <Gregor> Hm
04:45:24 <Gregor> `run wget http://www.google.com/
04:45:26 <HackEgo> ​--2013-01-11 04:45:25-- http://www.google.com/ \ Connecting to 127.0.0.1:3128... failed: Connection refused.
04:45:29 <Gregor> >_<
04:45:37 <Gregor> `run sleep 5 ; wget http://www.google.com/
04:45:51 <HackEgo> ​--2013-01-11 04:45:50-- http://www.google.com/ \ Connecting to 127.0.0.1:3128... connected. \ Proxy request sent, awaiting response... 200 OK \ Length: unspecified [text/html] \ Saving to: `index.html' \ \
04:45:57 <Gregor> Aha.
04:46:02 <oerjan> curiouser and curiouser
04:46:18 <oerjan> `head index.html
04:46:19 <HackEgo> ​<!doctype html><html itemscope="itemscope" itemtype="http://schema.org/WebPage"><head><meta content="Search the world's information, including webpages, images, videos and more. Google has many special features to help you find exactly what you're looking for." name="description"><meta content="noodp" name="robots"><meta itemprop="image" content
04:46:20 <hagb4rd> what is it? connection timeout`?
04:46:22 <Gregor> hagb4rd: The problem is that it can't communicate when it's initialized. As a temporary workaround, sleep for a second before making the request.
04:46:35 <hagb4rd> okay cool
04:46:37 <Gregor> Or bombard the server with connection requests for a while.
04:46:49 <oerjan> fäncy
04:47:00 <hagb4rd> thx gregor
04:47:38 <oerjan> `run sleep 1 ; translatefromto en de Does this work any longer?
04:47:42 <HackEgo> Traceback (most recent call last): \ File "/hackenv/bin/json", line 4, in <module> \ data = json.loads(sys.stdin.read().decode('utf-8')) \ File "/opt/python27/lib/python2.7/json/__init__.py", line 310, in loads \ return _default_decoder.decode(s) \ File "/opt/python27/lib/python2.7/json/decoder.py", line 346, in decode \ obj, end
04:47:55 <oerjan> i take that as a no
04:48:06 <oerjan> `run sleep 1 ; translatefromto 'en de Does this work any longer?'
04:48:11 <HackEgo> Traceback (most recent call last): \ File "/hackenv/bin/json", line 4, in <module> \ data = json.loads(sys.stdin.read().decode('utf-8')) \ File "/opt/python27/lib/python2.7/json/__init__.py", line 310, in loads \ return _default_decoder.decode(s) \ File "/opt/python27/lib/python2.7/json/decoder.py", line 346, in decode \ obj, end
04:49:00 <oerjan> i vaguely recall they discontinued that service, anyhow
04:50:41 <oerjan> `cat bin/translatefromto
04:50:42 <HackEgo> ​#!/bin/bash \ TEXT="$1" \ FROM=`echo "$TEXT" | sed 's/ .*$//'` \ TEXT=`echo "$TEXT" | sed 's/^[^ ]* //'` \ TO=`echo "$TEXT" | sed 's/ .*$//'` \ TEXT=`echo "$TEXT" | sed 's/^[^ ]* //'` \ if [ "$FROM" = "auto" ] ; then FROM="" ; fi \ \ curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate \ \ --data-urlenco
04:51:02 <oerjan> `run cat bin/translatefromto | tac
04:51:03 <HackEgo> ​ json 'data["responseData"]["translatedText"]' \ --data-urlencode langpair="$FROM"'|'"$TO" 2> /dev/null | \ --data-urlencode q="$TEXT" \ \ --data-urlencode v=1.0 \ \ curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate \ \ \ if [ "$FROM" = "auto" ] ; then FROM="" ; fi \ TEXT=`ec
04:51:38 <oerjan> `run grep -l curl bin/*
04:51:40 <HackEgo> bin/tclkit \ bin/translatefromto
04:51:48 <oerjan> `run grep -l wget bin/*
04:51:49 <HackEgo> bin/lua \ bin/luac \ bin/macro \ bin/units
04:53:09 <oerjan> `url bin/translatefromto
04:53:11 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/translatefromto
05:16:14 <hagb4rd> Gregor: one more thing: would you mind to install mono on that sandbox? (i promise i'll stop buggin you..at least for today :P)
05:21:49 -!- GreyKnight has quit (Remote host closed the connection).
05:31:56 -!- TeruFSX has quit (Ping timeout: 265 seconds).
06:02:14 <kmc> 'Take the Chanukah dreidel game, combine it with poker, and you've got a new dreidel experience that is truly fun. You'll check, bet, raise, or fold depending on the strength of your dreidel hand (or how much you like to bluff).'
06:05:17 <Sgeo> I hope they actually describe the game more thoroughly than "Take the Chanukah dreidel game, combine it with poker"
06:05:59 <monqy> quite an interesting concept, deserving of explanation
06:06:11 <Sgeo> Oh, there's a video of an explanation
06:06:18 <Bike> are there any dreidel-based esolangs
06:06:34 <Sgeo> Don't entirely understand what there is to pay for, exactly
06:07:10 <kmc> i think drawing the cards/whatever as independent trials fundamentally destroys a lot of the poker strategy
06:07:44 -!- copumpkin has quit (Ping timeout: 252 seconds).
06:08:16 -!- copumpkin has joined.
06:15:45 -!- Sgeo has quit (Read error: Operation timed out).
06:16:14 -!- Sgeo has joined.
06:21:43 -!- Bike_ has joined.
06:23:36 -!- Bike has quit (Ping timeout: 264 seconds).
06:24:04 -!- copumpkin has quit (Ping timeout: 244 seconds).
06:24:35 -!- copumpkin has joined.
06:26:20 -!- Bike_ has quit (Ping timeout: 255 seconds).
06:27:58 -!- Bike has joined.
06:51:24 -!- oerjan has quit (Quit: Good night).
06:59:56 -!- david_werecat has quit (Ping timeout: 246 seconds).
07:43:04 <oklofok> kmc: how so?
07:43:15 <oklofok> hmm
07:43:57 <oklofok> perhaps that's true
07:44:02 <kmc> well in hold 'em, some of the information asymmetry between players comes from using the cards only you can see to modify you probability estimate for what cards other people have
07:45:37 <oklofok> that is a very fine point
07:45:44 <oklofok> sorry i even asked
07:45:57 <kmc> i don't really know how important it is though
07:46:05 <kmc> cause i don't play poker very much or have any skill whatsoever
07:46:06 <oklofok> yeah who knows
07:46:51 <oklofok> i've never understood how poker is supposedly not at all about luck when there's so little information you get during the game
07:49:13 <Bike> the idea is that you can get the information you need from reading the other players, isn't it
07:49:34 <oklofok> like their faces and shit?
07:49:38 <Bike> yes
07:49:53 <Bike> taken to its most extreme form in indian poker, of course
07:50:08 <oklofok> the people i know who play both internet poker and real poker don't seem to consider them different games.
07:50:42 <Bike> maybe they are bad at poker :P
07:50:54 <oklofok> maye
07:50:56 <oklofok> maybe
07:51:10 <Bike> and of course, reading isn't limited to facial expressions
07:51:14 <Bike> e.g. watching how they bet
07:51:26 <oklofok> yeah they do talk about that kind of reading
07:51:29 <fizzie> That's true, you can read e.g. books.
07:52:12 <Bike> which of course adds another layer of play since you have to watch how you bet to make sure they're getting the possibly false information you want to have, and so on up the levels
07:52:57 <hagb4rd> epic piece of acoustic art --> http://hagbard.host-ed.me/media/weltamdraht.html
07:53:20 <Bike> like, even if you're randomly dealt a royal flush, that won't do you any good if you can't convince people to bet lots of money that round for you to win
08:02:59 <kmc> oklofok: in hold 'em there is a fair amount of shared information
08:03:33 <kmc> and so there's a fair amount of strategy, in addition to the luck and psychology elements
08:04:00 <kmc> which is probably why hold 'em became so popular
08:06:05 <kmc> and it's not just about who has the best hand at the end
08:06:21 <kmc> there are multiple rounds of betting, and a lot of strategy about what to bet when and how much
08:06:24 <kmc> especially in no-limit games
08:06:45 <kmc> and a lot of hands are won by everyone else folding, in which case nobody shows their private cards
08:07:13 <kmc> the problem i have with hold 'em is that statistically, most hands are not worth playing
08:08:08 <kmc> but it's boring to fold many hands in a row
08:08:30 <oklofok> isn't there a total order on the final hands?
08:08:38 <kmc> yes
08:09:19 <kmc> (you can have multiple winners due to ties or side pots, but that's not super important)
08:09:43 <oklofok> i'm just wondering where "not worth playing" comes from
08:10:24 <oklofok> about 1/n of hands are statistically worth playing with n players no matter what the rules are?
08:11:12 <oklofok> (not true but perhaps you have some wisdom that answers the underlying wonderingment.)
08:12:50 <oklofok> (might be true, dunno)
08:13:25 -!- Bike has quit (Quit: leaving).
08:13:29 <oklofok> also in this sort of game, the best strategys could depend on culture among poker players
08:14:00 <oklofok> people sharing some misconceptions say
08:14:09 <oklofok> well gotta go
08:14:57 <kmc> ok ttyl
08:15:30 -!- epicmonkey has joined.
08:15:30 <kmc> i think it is based on some assumption about other people's behavior
08:16:13 <kmc> people with bad hands will generally fold
08:17:04 <Fiora> which I guess means on average you're playing against only the people who think they have good hands, right?
08:17:23 <kmc> yeah
08:17:25 <Fiora> so people who have bad hands don't contribute to the pot, which makes things worse than 1/n
08:22:21 <kmc> if everyone always stayed in, then you would have a 1/n chance, but the strategy of folding bad hands will beat that and so the former isn't stable
08:23:29 <kmc> and the way the math for a stable strategy works out, the "bad hands" you want to fold are most of them
08:23:36 <kmc> judging only from the two private cards you see initially
08:23:42 <kmc> but i haven't done the math, this is just what people tell me
08:25:10 <kmc> got to sleep now, 'night all :)
08:25:39 <hagb4rd> <kmc>people with bad hands will generally fold <- only poker noobies do that
08:28:42 <Fiora> nini~
08:29:04 <hagb4rd> there are players out there who don't even look at their cards..just to avoid any physiological reaction
08:40:44 -!- FreeFull has quit.
08:45:21 -!- epicmonkey has quit (Ping timeout: 248 seconds).
09:07:14 <Arc_Koen> hagb4rd: but if the other players know you haven't looked at your cards, you're giving them too much information already!
09:50:34 -!- epicmonkey has joined.
10:07:14 -!- monqy has quit (Quit: hello).
10:20:55 <hagb4rd> Arc_Koen: yes it's not easy looking at your cards without looking at your cards ;)
10:25:34 <hagb4rd> but anyway.. the hand itself isn't that important. sure you can try to make your opponents think that you only play good hands (in order to do so you sometimes need to fold good hands)..unexpected behaviour.. variation... and suggestion
10:27:51 -!- carado has joined.
10:57:34 -!- mig22 has joined.
11:25:18 -!- Taneb has joined.
11:28:15 -!- epicmonkey has quit (Remote host closed the connection).
11:28:27 -!- epicmonkey has joined.
11:44:33 -!- sebbu2 has quit (Ping timeout: 248 seconds).
11:49:41 -!- sebbu has joined.
11:49:41 -!- sebbu has quit (Changing host).
11:49:41 -!- sebbu has joined.
12:01:27 -!- GreyKnight has joined.
12:02:13 <GreyKnight> `addquote <Bike> the idea is that you can get the information you need from reading the other players, isn't it [...] <Bike> and of course, reading isn't limited to facial expressions [...] <fizzie> That's true, you can read e.g. books.
12:02:23 <HackEgo> 910) <Bike> the idea is that you can get the information you need from reading the other players, isn't it [...] <Bike> and of course, reading isn't limited to facial expressions [...] <fizzie> That's true, you can read e.g. books.
12:02:47 <fizzie> For the record, I didn't read (pun not intended) the first comment.
12:03:09 <GreyKnight> I only played poker once (not for money), I used the abovementioned "just ignore what your cards say" approach. It was pretty funny, I cleaned up :-)
12:03:20 <GreyKnight> (having a naturally impassive face helps)
12:03:31 <Fiora> Sgeo: update
12:04:38 <GreyKnight> shachaf: update
12:04:59 <fizzie> fungot: update
12:04:59 <fungot> fizzie: imitate riastradh _failure_continuation_ is for.
12:05:49 * GreyKnight proposes the creation of #esoteric-update
12:10:55 <elliott> I think people expect me to complain that 910 is formatted incorrectly, so here's a line.
12:48:43 <Sgeo> elliott, Taneb Fiora, not-a-certain-someone-else: Also be sure to click the little icons at the top
12:50:12 <Taneb> (has elliott caught up again?)
12:50:48 <elliott> Taneb: I don't think you understand the List.
12:53:06 <Fiora> Sgeo: omg
12:54:54 <GreyKnight> elliott: you seriously need to write down these formatting rules, I TRY to follow them but nobody ever specifies, they just complain
12:55:06 <GreyKnight> `? quote formatting
12:55:08 <HackEgo> quote formatting? ¯\(°_o)/¯
12:55:12 <GreyKnight> You and me both, HackEgo
12:55:35 <elliott> pleased to be of service!
12:57:04 <GreyKnight> s/of/of no/
12:57:10 <hagb4rd> `log space between
12:57:37 <HackEgo> 2011-05-12.txt:10:40:56: <cheater_> for example the space between the source items could, inside the editor, be zero-width
12:57:52 <hagb4rd> `run pastelog space between
12:57:58 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.14698
12:58:17 <elliott> `run diff bin/pastelog{,s}
12:58:18 <HackEgo> No output.
12:58:21 <elliott> hm.
12:59:12 <hagb4rd> `run pastelog oerjan.*space.*between
12:59:25 <GreyKnight> Mao: the quote formatting game
12:59:29 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.1037
13:00:13 <GreyKnight> oh look one of those is actually relevant *faints*
13:00:38 <hagb4rd> `learn quote-fromatting "two spaces between quoted lines. only one space on each side of [...] ellipses. no space between nicks and the surrounding <>'s."
13:00:39 <GreyKnight> it still doesn't tell how many spaces to use around an [...] which is itself between quoted lines
13:00:41 <HackEgo> I knew that.
13:00:58 <GreyKnight> maybe I'll compromise, put one space before such a lacuna, and two after
13:01:04 <GreyKnight> "perfect"
13:01:32 <hagb4rd> `run mv wisdom/quote-fromatting "quote formatting"
13:01:34 <HackEgo> mv: cannot stat `wisdom/quote-fromatting': No such file or directory
13:02:00 <hagb4rd> `ls wisdom/qu*
13:02:01 <HackEgo> ls: cannot access wisdom/qu*: No such file or directory
13:02:10 <hagb4rd> `run ls wisdom/q*
13:02:11 <HackEgo> wisdom/qdb \ wisdom/qdbformat \ wisdom/quine
13:02:58 <hagb4rd> `run echo " "two spaces between quoted lines. only one space on each side of [...] ellipses. no space between nicks and the surrounding <>'s." > "wisdom/quote formatting"
13:02:58 -!- Taneb has quit (Ping timeout: 245 seconds).
13:02:59 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `'' \ bash: -c: line 1: syntax error: unexpected end of file
13:03:19 <hagb4rd> `run echo " "two spaces between quoted lines. only one space on each side of [...] ellipses. no space between nicks and the surrounding <>'s." > wisdom/quote formatting
13:03:20 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `'' \ bash: -c: line 1: syntax error: unexpected end of file
13:03:28 <hagb4rd> `run echo " "two spaces between quoted lines. only one space on each side of [...] ellipses. no space between nicks and the surrounding <>'s." > wisdom/quote-formatting
13:03:30 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `'' \ bash: -c: line 1: syntax error: unexpected end of file
13:03:42 <hagb4rd> `run echo "two spaces between quoted lines. only one space on each side of [...] ellipses. no space between nicks and the surrounding <>'s." > wisdom/quote formatting
13:03:45 <HackEgo> No output.
13:03:52 <hagb4rd> phew
13:04:01 <hagb4rd> `run ls wisdom/q*
13:04:03 <HackEgo> wisdom/qdb \ wisdom/qdbformat \ wisdom/quine \ wisdom/quote
13:04:31 <hagb4rd> quote should be good
13:05:00 <hagb4rd> `? quote
13:05:02 <HackEgo> two spaces between quoted lines. only one space on each side of [...] ellipses. no space between nicks and the surrounding <>'s. formatting
13:05:28 <elliott> `ls wisdom
13:05:29 <HackEgo> ​`? \ ? \ ⌨ \ ☃ \ 🐐 \ ais523 \ atriq \ augur \ banach-tarski \ boily \ bonvenon \ brain \ brainf**k \ brainfuck \ brick \ c \ cakeprophet \ category \ coffee \ comonad \ coppro \ egobot \ elliott \ endofunctor \ endomorphism \ england \ esoteric \ europe \ everyone \ finland \ finnish \ finns \ fizzie \ flower \ freefull \ friendship \ fun
13:05:44 <elliott> .
13:06:01 <elliott> what a mess.
13:06:20 <fizzie> `? fun
13:06:21 <HackEgo> fun? ¯\(°_o)/¯
13:06:29 <fizzie> I suppose it was just a cut. :/
13:06:34 <elliott> `? everyone
13:06:36 <HackEgo> Everyone in here is mad.
13:06:42 <fizzie> That's not fun.
13:06:43 <elliott> `? brain
13:06:45 <HackEgo> Brains are just receptacles for bricks.
13:06:56 <elliott> `? flower
13:06:57 <HackEgo> flower. what IS a flower?
13:07:10 <elliott> IMO these entries do not all live up to the high standards of the wisdom database
13:07:28 <fizzie> There's wisdom, and then there's wisdom.
13:08:00 <elliott> `run ls wisdom | paste
13:08:04 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.29398
13:08:29 -!- Nisstyre has quit (Ping timeout: 246 seconds).
13:08:58 <elliott> `? misspellings of croissant
13:09:00 <HackEgo> misspellings of crosant? ¯\(°_o)/¯
13:09:12 <elliott> I admit that one is pretty good
13:09:31 <elliott> `? qdb
13:09:32 <elliott> `? qdbformat
13:09:33 <HackEgo> qdb is used like: `quote; `quote regexp; `quote id; `addquote ...; `delquote id; `pastequotes regexp; `pastenquotes [n]; see also qdbformat
13:09:34 <HackEgo> qdbformat is: <nick> message; * nick action; two spaces between messages; all elisions marked with [...] other than irrelevant intervening messages; for messages separated by elision, one space on each side, not two
13:09:35 <elliott> `? quote
13:09:36 <HackEgo> two spaces between quoted lines. only one space on each side of [...] ellipses. no space between nicks and the surrounding <>'s. formatting
13:09:48 <elliott> `run rm wisdom/quote # content already present
13:09:52 <HackEgo> No output.
13:09:56 <elliott> `pastelogs qdbformat
13:10:09 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.3726
13:14:16 <hagb4rd> it`s a shitty name
13:15:01 <hagb4rd> who cares about where it's stored? (db).. also what is q
13:15:20 <hagb4rd> as your lawyer i suggest to rename this entry
13:15:40 <hagb4rd> @elliott
13:15:41 <lambdabot> Unknown command, try @list
13:15:53 <GreyKnight> hagb4rd: q = quote
13:16:11 <hagb4rd> greyknight :<
13:16:34 <GreyKnight> qdbformat is inconsistent with actual practice, for a bonus. I added a quote with irrelevant messages removed and oerjan put a [...] in there instead
13:16:50 <GreyKnight> starting to think maybe everybody has their own idea of "correct" here
13:17:41 <GreyKnight> hagb4rd: things like this are often called "QDBs" even if, as in this case, they aren't stored in a real database
13:17:45 <hagb4rd> i mean who will find this if you name it qdbformat? this sounds more like a documenation of a database architecture
13:18:04 <hagb4rd> i think you completely misunderstand what i'm saying
13:18:15 <GreyKnight> I would probably put it on wisdom/addquote personally
13:18:21 <hagb4rd> yesss
13:18:31 <hagb4rd> now we're home bro
13:18:34 <GreyKnight> I didn't, I was just explicating
13:18:36 -!- sploknee has joined.
13:18:52 <GreyKnight> (you didn't seem to have run into the term "QDB" before)
13:19:19 -!- david_werecat has joined.
13:19:28 <GreyKnight> also we are not brothers? At least AS FAR AS I KNOW :-OOO
13:20:03 <GreyKnight> dun dun duuuun
13:20:29 <hagb4rd> ^rot13 qdbformat
13:20:29 <fungot> dqosbezng
13:21:07 <GreyKnight> dqos = distributed quote organisation system
13:21:34 <hagb4rd> :)
13:21:36 <hagb4rd> okay
13:21:57 <GreyKnight> I don't know what bezng is ._.
13:22:25 -!- TeruFSX has joined.
13:22:36 <quintopia> me and hagb4rd have been bezng without you every friday afternoon
13:22:37 <fizzie> GreyKnight: It's the next generation bez.
13:22:39 <hagb4rd> it doesn't matter as long no one finds the information he's looking for in wisdom
13:22:58 <GreyKnight> `? monad tutorial
13:22:59 <HackEgo> Think of a monad as a spacesuite full of nuclear waste in the ocean next to a container of apples. now, you can't put oranges in the space suite or the nucelar waste falls in the ocean, but the apples are carried around anyway, and you just take what you need.
13:24:11 -!- Nisstyre has joined.
13:24:51 -!- TeruFSX has quit (Client Quit).
13:30:51 <GreyKnight> bez = Basic Existence of Zzo38
13:33:16 <hagb4rd> also the whole addqote thing is bullshit. one needs to quote in raw db-format. never seen such a stupid system. at least you don't need to paste it compressed as zip or sth
13:33:41 <quintopia> GreyKnight: i dont think said existence has been established. i mean, who's ever seen the guy?
13:39:30 <sploknee> hagb4rd, wat
13:40:58 <fizzie> I think I'm going to have to second that "wat".
13:41:23 <hagb4rd> wat wat
13:43:18 <fizzie> Tat wat.
13:44:20 <hagb4rd> it's symptomatic no one is able to add a simple quote the intuitive way. not even the prehistoric #esoteric members. you can just take a look at the 'corrected' version of the quotes file. ridiculous
13:44:50 <hagb4rd> and that's not only the old ones no
13:45:15 <hagb4rd> if you don't agree, you could express yourself clearly
13:47:36 <GreyKnight> Why doesn't bin/addquote just smoosh the formatting to be correct anyway? It would save a lot of griping.
13:47:43 <GreyKnight> SIMPLES
13:48:51 <fizzie> I certainly don't agree if the suggestion is that the quote system should somehow try to heuristically guesstimate and normalize spacing and formatting, as opposed to being a simple "store a line of text" system.
13:49:02 <coppro> Sgeo: the icons at the top don't do anything for me :(
13:49:30 <Sgeo> coppro, hmm. Flash block?
13:49:56 <Sgeo> Also, your volume is up?
13:50:59 <GreyKnight> fizzie: maybe it can automatically notify oerjan and elliott to review and correct the quote before adding it
13:51:37 <GreyKnight> /hackenv/bin/mechanical-turk
13:51:40 <coppro> Sgeo: ah that could be it
13:51:46 <hagb4rd> GreyKnight: good idea
13:52:01 <coppro> Sgeo: I also like how you told fiora of an update after fiora told you
13:52:13 <hagb4rd> lol
13:52:18 <hagb4rd> *sigh
13:52:33 <Sgeo> coppro, I only told her (and everyone) to click the things at the top
13:52:55 <Sgeo> And also wanted to prove that I did in fact remember to not notify he-who-must-not-be-notified-of-Homestuck-updates
13:53:02 <GreyKnight> hagb4rd accidentally laughed instead of sighing
13:53:41 <hagb4rd> yes it was a horrible sound.. on the edge of madness and desperation
13:54:25 <GreyKnight> and that means it's time for:
13:54:26 <GreyKnight> ^style lovecraft
13:54:26 <fungot> Selected style: lovecraft (H. P. Lovecraft's writings)
13:54:32 <hagb4rd> yea :D
13:54:42 <GreyKnight> fungot: hagb4rd accidentally laughed instead of sighing
13:54:45 <fungot> GreyKnight: the next day, and at vast intervals the small brown fnord nestling amidst huge trees beneath vertical precipices of fragrant brier and fnord. candlesticks and lot no. fnord, pabodie, and mctighe made an exhaustive aeroplane cruise over all the rest reigned that riot of luminous amorphousness, that alien and undimensioned rainbow of cryptic poison from the soil. he was hideously sure that in fnord there exists a basi
13:55:23 <GreyKnight> the dreaded small brown fnord!
13:55:24 <fungot> GreyKnight: aeons ago, before even the gods had sent to the bottom; forgetting that all things appear as they do. i paint in the cellar the laboratory with the long table under the electric lights.
13:55:32 <GreyKnight> !
13:55:36 <GreyKnight> fnord
13:55:45 <GreyKnight> fizzie: what just happened :-o
13:55:57 <GreyKnight> oh, that bug again
13:56:00 <fizzie> The same thing that always happens.
13:56:30 <fizzie> fungot: Why do you keep doing that?
13:56:30 <fungot> fizzie: we met no person, and as my hands went higher i knew that the room to a huge mahogany chest. he selected one, automatically.
13:56:50 <GreyKnight> They're fungot, fungot and the fizzie
13:56:52 <fungot> GreyKnight: now, in response to their requests, it was made the visitors could see that allen had already formed plans for dealing with the non-terrestrial planets. those sides fnord up so darkly and fnord that one wishes they would keep their distance, but this was not guessed till afterward, when old wateley drove his sleigh through the snow into dunwich village and discoursed incoherently to the group of loungers at osborne'
13:57:23 <GreyKnight> "non-terrestrial planets", i.e. almost all of them
13:59:33 <GreyKnight> hey Gregor, is there a convenient way to get a list of nicks currently in the channel from a HackEgo command? I had an idea
14:01:21 <GreyKnight> maybe have some code outside of the sandbox which maintains a list, then HackEgo can access it as a service via the HTTP proxy?
14:01:35 <Sgeo> I should probably go back to sleep
14:01:47 <GreyKnight> `run cat bin/pastelog | paste
14:01:51 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.6763
14:02:56 <GreyKnight> `ls /var/irclogs
14:02:58 <HackEgo> _ai \ _corewars \ _esoteric \ _esoteric-chess-variants \ _esoteric-minecraft \ _glogbot \ index.php \ log \ log.css \ log.js \ _plof \ raw \ _scapegoat \ stalker.php
14:03:02 <GreyKnight> `ls /var/irclogs/_esoteric
14:03:04 <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-
14:03:44 <GreyKnight> hm maybe we can just scrape it from the logs I suppose
14:04:23 <GreyKnight> in fact what I really want is "recently active online users" which is easy this way
14:04:26 <fizzie> That's nontrivial since it requires potentially (in theory, anyway) starting from the 2003 logs, and even that's not entirely reliable.
14:04:30 <fizzie> Oh, well, that's different.
14:04:34 <GreyKnight> Gregor: nevermind found a way :-)
14:04:44 <GreyKnight> fizzie: yeah that was what made me realise what I really wanted
14:04:57 <fizzie> What do you want it for?
14:05:50 <GreyKnight> I made a joke about a mechanical-turk command there but I figure I can actually do that: pick a user, send them the instructions, do something with their response :-)
14:05:50 <hagb4rd> yes.. you forgot to complete explaining your idea ;) what happens with this list? or is it a secret-surprise? ;)
14:06:12 <GreyKnight> ("send them..." in a private message)
14:06:40 -!- Taneb has joined.
14:07:20 -!- david_werecat has quit (Ping timeout: 252 seconds).
14:08:02 <GreyKnight> the application to quote formatting is obvious, I leave other applications of this idea to your imagination
14:08:19 <GreyKnight> I suppose this is a variant of http://esolangs.org/wiki/IRP
14:08:32 <fizzie> And how do you propose to send a private message from HackEgo?
14:08:45 <fizzie> (To someone else, I mean.)
14:08:50 <GreyKnight> oh!
14:08:56 <GreyKnight> I hadn't thought of that :<
14:08:56 <hagb4rd> privmsg
14:09:01 <fizzie> It's not a general-purpose IRC spambot, you know.
14:09:10 <hagb4rd> woa
14:09:43 <GreyKnight> hagb4rd: HackEgo communicates with us by virtue of his stdout being sent to the channel, he doesn't have a concept of IRC within the actual sandbox :-/
14:09:45 <hagb4rd> whazzup fizzie? i alway thought you're cool
14:09:48 <GreyKnight> hmmmmmm
14:10:10 <GreyKnight> allowing privmsgs from inside the sandbox would probably be a hilariously bad idea
14:10:11 <hagb4rd> greyknight
14:10:22 <hagb4rd> you can speak with hackego in private
14:10:31 <hagb4rd> that's not what you mean? don't yo?
14:10:35 <hagb4rd> *yout
14:11:19 <hagb4rd> erm... i guess i don't get it
14:11:43 <hagb4rd> fungot.. why can't hackego send private messages?
14:11:44 <fungot> hagb4rd: freely and fnord. the legend had the effect of publicity would be to avoid paine, since the primal life history of this literary form.
14:12:09 <fizzie> ^style sms
14:12:09 <fungot> Selected style: sms (National University of Singapore SMS corpus, 2011-08-20)
14:12:36 <fizzie> fungot: What do you think about the idea of HackEgo being able to send privmsgs to anyone?
14:12:36 <fungot> fizzie: hey i am in extreme situations: first- before getting it... second- after loosing it." ( muslim) *to start ur day today at ktv. later she buy one not i ask de. she wanna go also. hehe
14:12:48 <fizzie> Right.
14:18:09 <GreyKnight> hagb4rd: there is a wrapper layer which talks to IRC: it accepts commands, passes them to the sandbox. The sandbox returns some output. The wrapper combines it all onto one line and sends it over IRC to the place the command came from (maybe a channel, or a private conversation)
14:18:47 <hagb4rd> right
14:18:51 <hagb4rd> so far so good
14:19:20 <hagb4rd> and your idea was?
14:20:03 <GreyKnight> what I wanted to do was have the sandbox command, mid-execution, talk to a *different* place on IRC (a private conversation with some user), then take the response, do something, and finally produce output from the original command. There's no way to do this in the aforementioned model
14:20:44 <GreyKnight> beecause the sandbox doesn't understand IRC, only the wrapper does :-)
14:21:35 <GreyKnight> (hm actually I guess the user's response would need to be handled via some sort of callback, but that's beside the point)
14:21:42 -!- yiyus has quit (Ping timeout: 240 seconds).
14:23:11 <GreyKnight> of course there is good reason not to allow arbitrary privmsg sending, consider the following script: while true do irc.users["hagb4rd"].privmsg("spam spam spam") end
14:23:30 -!- Taneb has quit (Quit: Leaving).
14:24:03 <hagb4rd> sure.. but y not use hackego as the adapter between irc and the sandbox? this point is still not clear: ""then take the response, do something, and finally produce output from the original command"
14:24:53 <GreyKnight> well "do something" would depend on what you wanted to do (mechanical-turk would be a facility for creating commands)
14:25:31 <GreyKnight> "y not use hackego as the adapter between irc and the sandbox?" not sure what this means
14:26:04 <GreyKnight> HackEgo-the-IRC-username corresponds to the adapter layer that communicates between IRC and the sandbox
14:26:23 <GreyKnight> all the commands we have in /hackenv/bin/ are run *inside* the sandbox and hence can't see outside of it
14:26:26 <hagb4rd> i can execute the command on the shellbox --> take the response -> do whatever i want -> send it back -> and so on and so on
14:26:36 <hagb4rd> you can use services for that
14:26:44 <GreyKnight> in particular they don't know they're attached to IRC, you could run HackEgo on your desktop
14:26:56 <hagb4rd> not hackego
14:27:05 <GreyKnight> well the sandbox :-P
14:27:43 * GreyKnight decides to give a worked example:
14:28:10 <hagb4rd> the sandbox sends a http request to your desktop -> receives the response --> executes sth in the sandbox --> send this another service --> gets the response --> send it private to you
14:28:13 <hagb4rd> whatever
14:28:19 <GreyKnight> someone uses `newaddquote < fred> lol incorrect formatting :-3
14:29:04 <hagb4rd> send it private to you (by using hackegos interface)
14:29:25 <hagb4rd> i would like to scratch on some paper
14:29:33 <hagb4rd> that would make things clear i guess
14:29:53 <hagb4rd> IRC <-> HACKEGO <-> SANDBOX <-> webservice
14:29:56 <GreyKnight> we could use services to ask the adapter to send something over privmsg but that is kind of exploitable :-)
14:29:59 <hagb4rd> this way
14:31:04 <hagb4rd> the communication should be only between these tiers
14:31:39 <GreyKnight> yes this works, but it doesn't solve the problem of control over how much/what kind of communication
14:31:52 <GreyKnight> you could spam people via such a thing :-/
14:32:59 <hagb4rd> `tell GreyKnight this is a test
14:33:01 <HackEgo> I think you mean "@tell GreyKnight this is a test" instead?
14:34:09 <hagb4rd> the lambdabot is able to send private messsages. also hackego could provide such a service. (including flood control etc)
14:34:35 <hagb4rd> okay
14:34:42 <fizzie> But arbitrary code running on lambdabot is not able to send private messages.
14:34:52 <GreyKnight> lambdabot is attached directly to IRC :-P
14:34:57 <hagb4rd> IRC <-> HACKEGO <-> SANDBOX <-> webservice
14:35:34 <fizzie> The > [Haskell here] evaluator can't send privmsgs, and I seriously doubt it is ever going to be made to be able to do that.
14:35:52 <GreyKnight> similarly for HackEgo
14:35:53 <fizzie> (Even with any sort of flood control.)
14:36:12 <hagb4rd> okay
14:36:15 <fizzie> (Plus @tell does not send private messages either.)
14:36:37 <GreyKnight> most likely approach would be to make some sort of third-party web service, have the service's engine join IRC itself, and somehow convince Gregor to whitelist that service
14:37:02 <GreyKnight> (last part is the most difficult :-D)
14:37:05 <fizzie> GreyKnight: You could just be submitting that stuff to the real Mechanical Turk and volunteer to pay for it.
14:37:20 <GreyKnight> fizzie, not NIH-y enough
14:41:37 <hagb4rd> greyknight.. we wouldn't need to get another bot. but we could leave messages in the sandbox...hackego could read this message and if so joins (or becomes active) he could notify this user that there are messages waiting for him on the sandbox (like the lambdabot does, but w/out sandbox).. then the user can read this messages by activly excuting a command
14:42:36 <GreyKnight> that is exactly what lambdabot already does so Gregor is even less likely to implement that :-)
14:43:50 <hagb4rd> it was your idea to execute commands in the sandbox and send private msg with some results of that operations to other users (lambdabot is not able to do that;)
14:45:09 <GreyKnight> the functionality you described is exactly what lambdabot does, except accessible to the sandbox, which makes it exploitable. (imagine checking your messages and getting 350 "male enhancement" messages) So Gregor will probably not be up for that
14:45:31 <GreyKnight> I am not either really!
14:46:29 <hagb4rd> *sigh that's why i took it for an example. but i guess it (your idea) is not that relevant, because you're able to operate on the sandbox and pasting the result to lambdabot or whatever
14:47:05 <hagb4rd> if that was not your idea.. i still haven't got it. but nevermind ;)
14:47:09 -!- NihilistDandy has joined.
14:47:30 -!- NihilistDandy has quit (Client Quit).
14:47:51 <hagb4rd> (i'm happy with the given configuration so far.. now having services..muahrhrhrhr)
14:48:00 <hagb4rd> soon soon
14:48:01 <GreyKnight> My idea is supposed to be automatable, copy-pasting is no good. But without some sort of external webservice I don't see a way to do it safely. Even that may have safety problems, so I suppose I will just leave it.
14:49:38 <fizzie> Your idea was http://sprunge.us/NBfW if I got it right.
14:49:59 <hagb4rd> btw.. it wouldn't be a problem to exploit lambdabots functions .. a tiny script and you get your 350 male enhancement messages ;)
14:50:23 <hagb4rd> (as long as lambdabot does not provide a flood control or other resrtrictions)
14:50:28 <hagb4rd> we can test it
14:50:29 <GreyKnight> fizzie: yes that is pretty much it
14:50:30 <hagb4rd> shall we?
14:50:44 <GreyKnight> hagb4rd: I doubt lambdabot's owners will be happy...
14:50:57 <hagb4rd> me neither
14:51:21 <sploknee> why is hagb4rd talking
14:51:25 <sploknee> why are you all talking to hagb4rd
14:51:50 <GreyKnight> sorry we didn't get permission before having a conversation
14:51:57 <sploknee> have you not all realised that he's at least as dumb as itidus, but he's also under the delusion that he's intelligent?
14:52:11 <GreyKnight> o okay
14:52:34 <Sgeo> sploknee, I didn't forget sploknee
14:52:51 <c00kiemon5ter> does calling someone dumb makes him cleverer?
14:53:02 <sploknee> if only
14:53:09 <Sgeo> Where has itidus been?
14:57:49 -!- sploknee has quit (Ping timeout: 264 seconds).
14:59:19 <coppro> class is more fun when the prof prefers telling people that they're stupid to telling them that they're wrong
15:02:01 <GreyKnight> what if he tells them they're wrong *and* stupid?
15:02:07 <coppro> even better
15:03:09 <hagb4rd> maybe they start to cry
15:03:30 <coppro> no, then it's cruel :(
15:15:11 -!- asiekierka has quit (Quit: ZNC - http://znc.sourceforge.net).
15:17:17 -!- nooodl_ has joined.
15:19:49 -!- david_werecat has joined.
15:29:14 <Sgeo> run/fcontrol is interesting
15:30:03 -!- sploknee has joined.
15:30:50 <GreyKnight> how does that one work?
15:31:34 <Sgeo> run dynamically sets a handler that specifies what happens when you call fcontrol
15:31:44 <Sgeo> fcontrol is a function on a single argument
15:32:02 <Sgeo> And the handler that run specifies receives that argument and the continuation
15:32:03 -!- sebbu2 has joined.
15:32:03 -!- sebbu2 has quit (Changing host).
15:32:03 -!- sebbu2 has joined.
15:32:49 -!- sebbu has quit (Ping timeout: 248 seconds).
15:34:04 <GreyKnight> apparently control/prompt work like a monad
15:34:13 <GreyKnight> it all comes back to monads in the end!
15:34:18 <Sgeo> So, if the handler to run ignore the continuation and just returns the argument from fcontrol, within the thunk passed to run, fcontrol is an abort
15:36:55 <quintopia> Gregor: i guess ZEE is done for, now that someone has actually written the enhancement algorithm :D http://brainwindows.files.wordpress.com/2010/03/picture-101.png
15:38:03 <GreyKnight> quintopia: CSI will be very interested!!
15:38:31 <GreyKnight> didn't someone use a similar approach to vectorise old 8-bit sprites?
15:39:11 <c00kiemon5ter> that's nice :)
15:40:39 <GreyKnight> http://research.microsoft.com/en-us/um/people/kopf/pixelart/paper/pixel.pdf
15:40:45 <quintopia> GreyKnight: photoshop uses a very similar thing to fill in deleted areas of images "smartly"
15:40:46 <Sgeo> ZEE?
15:43:24 -!- davidwerecat has joined.
15:46:09 -!- david_werecat has quit (Ping timeout: 248 seconds).
15:48:52 -!- davidwerecat has left ("Sorry, got to go.").
15:51:16 <GreyKnight> davidwerecat: hi, bye
15:52:33 * Sgeo WILL try to understand Racket's evaluation model
15:53:35 <GreyKnight> just write a metacircular evaluator in Racket, do all your work in there, then you know exactly how it is evaluating :o)
15:55:21 <c00kiemon5ter> :P
15:56:40 -!- mekeor has joined.
15:58:51 * GreyKnight puts some cookies inside a forcefield ⌇⌇ o o o ⌇⌇
15:59:11 <GreyKnight> what now c00kiemon5ter?!?
15:59:26 <quintopia> those aren't cookies
15:59:28 <quintopia> those are o's
15:59:33 <shachaf> quote GreyKnight
15:59:36 <shachaf> `quote GreyKnight
15:59:38 <HackEgo> 845) <GreyKnight> fungot, sing me to sleep <fungot> GreyKnight: 53. file://localhost/ mnt/ space/ media/ books/ 1000+sci-fi%20books/%5bebooks%5d%201000+%20sciencefiction%20%26%20fantasy%20novels%20%28.lit%20forma/ pratchett%2c%20terry/ text/ 14/ fnord <GreyKnight> This is not a very good song \ 855) <GreyKnight> headache + train with screeching b
15:59:38 <GreyKnight> I couldn't find a Unicode cookie :<
15:59:47 <shachaf> @brain are you thinking what GreyKnight is thinking
15:59:47 <lambdabot> Now, Pinky, if by any chance you are captured during this mission,
15:59:47 <lambdabot> remember you are Gunther Heindriksen from Appenzell. You moved to Grindelwald
15:59:47 <lambdabot> to drive the cog train to Murren. Can you repeat that?
16:02:36 -!- ais523 has joined.
16:03:51 <GreyKnight> looks like c00kiemon5ter has been deterred (also: I just tried to tab-complete"looks". Just kill me now.)
16:03:59 <GreyKnight> ((insert spaces to taste))
16:07:36 * c00kiemon5ter omnomnomnomnomnomnomnom
16:09:03 <GreyKnight> but how did he get through the forcefield?!? @u@
16:10:26 <c00kiemon5ter> I did not! the cookielicious force within me grew outside the forcefield absording the crumbles
16:10:53 <GreyKnight> darn cookie physics
16:11:29 <GreyKnight> (d/dx) cookies = ?
16:11:41 <c00kiemon5ter> om
16:12:04 <GreyKnight> sin^2(cookies) + cos^2(cookies) = ??
16:12:30 <GreyKnight> "My usual approach is useless here"
16:13:06 <c00kiemon5ter> btw, e^(i pi) + 1 = o
16:13:24 -!- sebbu2 has changed nick to sebbu.
16:14:02 <c00kiemon5ter> sin^2(cookies) + cos^2(cookies) = tan^(cookies) = nom
16:14:24 <Arc_Koen> tan to the cookies?
16:14:39 <GreyKnight> Arc_Koen: cookies are beyond your feeble rules of mathematics
16:15:03 <c00kiemon5ter> tan xor cookies = nom
16:15:22 <c00kiemon5ter> silly koen
16:16:46 <Arc_Koen> I don't know... trying to get tanned with chocolate... weird idea
16:17:42 -!- sebbu has quit (Ping timeout: 240 seconds).
16:19:34 -!- david_werecat has joined.
16:19:42 <GreyKnight> maybe they're ultraviolet cookies
16:20:02 <GreyKnight> hm
16:20:24 <GreyKnight> dough + white chocolate chips + parma violets = ultraviolet cookie??
16:20:30 <GreyKnight> someone try this
16:20:49 -!- epicmonkey has quit (Ping timeout: 244 seconds).
16:24:20 -!- ogrom has joined.
16:24:49 -!- davidwerecat has joined.
16:27:13 -!- david_werecat has quit (Ping timeout: 248 seconds).
16:30:35 -!- Taneb has joined.
16:30:44 -!- david_werecat has joined.
16:31:44 <hagb4rd> `addquote * GreyKnight puts some cookies inside a forcefield ⌇⌇ o o o ⌇⌇ <GreyKnight>what now c00kiemon5ter?!? * c00kiemon5ter omnomnomnomnomnomnomnom <GreyKnight>but how did he get through the forcefield?!? @u@ <c00kiemon5ter>I did not! the cookielicious force within me grew outside the forcefield absording the crumbles <GreyKnight>darn cookie physics
16:31:48 <HackEgo> 911) * GreyKnight puts some cookies inside a forcefield ⌇⌇ o o o ⌇⌇ <GreyKnight>what now c00kiemon5ter?!? * c00kiemon5ter omnomnomnomnomnomnomnom <GreyKnight>but how did he get through the forcefield?!? @u@ <c00kiemon5ter>I did not! the cookielicious force within me grew outside the forcefield absording the crumbles <GreyKnight>darn c
16:31:57 <hagb4rd> shit
16:32:03 <hagb4rd> too long
16:32:35 -!- davidwerecat has quit (Ping timeout: 255 seconds).
16:33:05 <c00kiemon5ter> http://sprunge.us/SjGB
16:33:15 <c00kiemon5ter> an informal introduction
16:40:28 <hagb4rd> :D
16:40:30 -!- sebbu has joined.
16:40:30 -!- sebbu has quit (Changing host).
16:40:30 -!- sebbu has joined.
16:41:03 <hagb4rd> `ls
16:41:04 <HackEgo> bin \ canary \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ gktemp \ ibin \ index.html \ interps \ karma \ lib \ luabuild \ paste \ quotes \ quotese \ run \ share \ test \ wisdom \ zalgo.hs
16:41:18 <hagb4rd> `url quotes
16:41:19 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/quotes
16:48:37 <GreyKnight> c00kiemon5ter: cookie-based esolang plox
16:49:46 -!- sebbu2 has joined.
16:49:46 -!- sebbu2 has quit (Changing host).
16:49:46 -!- sebbu2 has joined.
16:50:26 <c00kiemon5ter> :)
16:50:41 -!- sebbu has quit (Ping timeout: 248 seconds).
16:58:45 <coppro> Taneb: WHAT'S NOT TO THINK ABOUT HOMESTUCK
17:00:20 <Sgeo> coppro, did you get top banner working?
17:00:26 <coppro> yeah
17:00:29 <coppro> was muted before
17:00:44 <coppro> which was a shame because I missed the ENGAGING remix of Homestuck Anthem
17:03:53 <Sgeo> I'm certain that someone predicted this, but was not taken seriously
17:06:34 <Taneb> I think that describes most of Homestuck
17:08:13 <Sgeo> Someone apparently predicted the big reveal of [S] Cascade as a joke
17:09:12 <Taneb> I think that Jane's in Eridan's dream bubble, looking at it
17:10:53 <Taneb> That looks Land of Angels, certainly
17:11:00 <Taneb> Not so mach Land of Wrath, though
17:11:43 <Sgeo> It looks like the Land of WTFIDON'TEVENKNOWANYMORE
17:11:57 <Taneb> LOWTF
17:13:00 <Sgeo> <Sgeo> <Taneb> LOWTF
17:13:00 <Sgeo> <techloveArtist> YES
17:13:00 <Sgeo> <techloveArtist> THAT IS IT
17:13:00 <Sgeo> <techloveArtist> Tell Taneb I approve.
17:13:14 <Taneb> :)
17:13:36 <Taneb> Tell him his approval is appreciated
17:13:46 <Taneb> Or her
17:13:57 <Taneb> Or whatever pronoun techloveArtist likes
17:14:20 <Sgeo> Taneb, join us!
17:14:26 <Taneb> Where!
17:14:45 <Sgeo> irc.swiftirc.net #MSPA
17:16:21 -!- sebbu has joined.
17:16:44 -!- GreyKnight has quit (Quit: <<=).
17:17:20 -!- sebbu2 has quit (Ping timeout: 260 seconds).
17:24:35 -!- FreeFull has joined.
17:35:04 -!- Bike has joined.
18:01:06 -!- copumpkin has quit (Ping timeout: 252 seconds).
18:01:37 -!- copumpkin has joined.
18:02:58 -!- Taneb has quit (Quit: GOING AWAY OR SOMETHING).
18:03:55 -!- impomatic has joined.
18:21:30 <nortti> "When someone says: 'I want a programming language in which I need only say what I wish done', give him a lollipop."
18:23:14 <c00kiemon5ter> and He said "Let there be Forth!", and Forth was
18:24:09 <c00kiemon5ter> btw (Sgeo), I think I like Factor, though I have done nothing with it, just show some talks and read some docs
18:24:32 <Sgeo> c00kiemon5ter, cool
18:26:10 -!- copumpkin has quit (Ping timeout: 248 seconds).
18:26:39 -!- copumpkin has joined.
18:27:23 <Sgeo> I should finish watching DS9 at some point
18:27:28 <Sgeo> But I should also work on my SL project
18:27:33 <Sgeo> And put my resume out
18:35:48 <coppro> you should probably do the last first
18:35:49 <coppro> and the first second
18:35:54 <coppro> and probably the second never
18:36:23 <elliott> happy birthday
18:38:08 <c00kiemon5ter> SL is what ?
18:38:37 <coppro> elliott: happy birthday
18:39:08 <elliott> coppro: merry christmas!
18:40:01 <Sgeo> coppro, arguably, I should do the second first, and the third second
18:40:30 <Sgeo> The second is something I could potentially put on a resume
18:40:42 <coppro> elliott: happy halloween!
18:41:04 <elliott> coppro: no...
18:41:06 <elliott> it's not halloween
18:41:14 -!- copumpkin has quit (Ping timeout: 252 seconds).
18:41:45 -!- augur has joined.
18:41:46 -!- copumpkin has joined.
18:41:49 <coppro> elliott: :(
18:41:53 <coppro> copumpkin: can I carve you?
18:41:56 <coppro> or cocarve you
18:44:47 -!- GreyKnight has joined.
18:45:07 <GreyKnight> In dual category, copumpkin carves *you*!
18:45:19 <GreyKnight> Sgeo: yes what is SL in this context
18:45:28 <Sgeo> Second Life
18:45:45 <GreyKnight> What is it?
18:45:47 -!- mekeor has quit (Quit: bye).
18:45:49 <coppro> `quote
18:45:50 <HackEgo> 618) <shachaf> VMS Mosaic? <shachaf> I hope that's not Mosaic ported to VMS. <shachaf> Hmm. It's Mosaic ported to VMS.
18:45:54 <Bike> a game about furries
18:45:57 <GreyKnight> (The project, not SL)
18:46:10 <GreyKnight> Bike, no that's Furcadia :-)
18:46:52 <Sgeo> GreyKnight, just a little ride
18:46:59 <Sgeo> Roll up the tube, roll down the tube
18:47:17 <GreyKnight> What's the CVable part?
18:47:27 <GreyKnight> Or resumeable, whatever
18:47:43 <Sgeo> I thought any programming work I did that I could talk about counted as resumeable?
18:49:02 <GreyKnight> I don't know anything about SL, you can code stuff for it then?
18:49:05 <shachaf> Does Clojure support resuming? I thought it didn't have first-class continuations.
18:53:38 <Sgeo> GreyKnight, yes
18:54:05 <GreyKnight> What language? A custom one?
18:54:22 <Sgeo> shachaf, even ignoring the fact that you're still acting as though Clojure is my current obsession, CL has resumable exceptions without having first-class continuations
18:54:26 <Sgeo> GreyKnight, yes, LSL.
18:55:08 <shachaf> CL barely has first-class functions.
18:56:23 <olsner> what does it mean for soemthing to be first-class? can you have a language entirely without first-class constructs?
19:00:57 -!- GreyKnight has quit (Remote host closed the connection).
19:01:20 -!- GreyKnight has joined.
19:02:18 <GreyKnight> shachaf is a lisp-2 h8er
19:02:44 <shachaf> GreyKnight: It's true.
19:02:52 <GreyKnight> olsner: hmm do you need variables for "first-class" to be meaningful?
19:03:53 <FireFly> olsner: brainfuck probably doesn't have any first-class constructs
19:04:07 <kmc> are there any lisp-3s?
19:04:24 <Bike> CL has a lot more than two namespaces, so yes
19:04:29 <GreyKnight> I guess you need a concept of "variables" at least
19:04:34 <sploknee> CL is a lisp-5 or something even excluding configurable stuff.
19:04:54 <Bike> alternately, obscure joke about reflective experimental lisps here
19:05:08 <GreyKnight> Idea: make qoppa a lisp_3
19:05:15 <GreyKnight> Er obvious typo
19:05:22 <Bike> variables, applicatives, and operatives?
19:06:25 <GreyKnight> Yep
19:06:35 <kmc> you can have the same name bound to both an applicative and an operative?
19:07:03 <kmc> that would be confusing as hell
19:07:25 <Bike> yeah i'm not sure how that would work with wrapping and all
19:08:14 <Sgeo> You need to use an operative to apply an applicative
19:08:15 <GreyKnight> Easy, use (applicative) and [operative]
19:08:19 <Sgeo> app
19:08:59 -!- david_werecat has quit (Ping timeout: 260 seconds).
19:09:26 <Bike> «it's all «combination» in the end»
19:16:37 -!- ogrom has quit (Ping timeout: 276 seconds).
19:16:42 <kmc> GreyKnight: no i don't think you need variables for the concept of 'first class'
19:16:50 <kmc> just values
19:17:10 <Bike> so integers are first class in brainfuck?
19:17:23 <kmc> probably
19:17:29 <kmc> it's not like a terribly well-defined thing
19:19:23 -!- Taneb has joined.
19:24:26 <kmc> http://arstechnica.com/gadgets/2013/01/17000-linux-powered-rifle-brings-auto-aim-to-the-real-world/ wooooonderful, a rifle with a wifi access point built in
19:24:30 <kmc> i'm sure it is completely secure
19:27:20 <Bike> i can use my phone to remotely spot for my sniper friend? it's just what i've always wanted
19:27:47 <Bike> "There's a social media aspect, too" ok, this is hilarious.
19:30:31 -!- GreyKnight has quit (Ping timeout: 265 seconds).
19:32:39 <sploknee> kmc, well yes, it is.
19:32:55 <sploknee> It says in the article that it physically cannot fire unless the trigger is being held down.
19:33:22 <Bike> what if someone hacks in and changes the video feed to the scope
19:33:25 <Bike> wouldn't that be fun?
19:33:35 <sploknee> The worst it could do is make it possible to fire it by just pulling the trigger.
19:34:14 <kmc> the worst it could do is make someone think they are shooting at one thing, when they are actually shooting at something else
19:34:19 <kmc> seems pretty bad
19:35:43 <sploknee> Assuming they don't check what the gun's pointed at without the scope.
19:36:21 -!- azaq23 has joined.
19:36:21 <kmc> i'm no gun expert but i believe doing so would defeat the point of the scope
19:36:35 -!- azaq23 has quit (Max SendQ exceeded).
19:36:49 <sploknee> I'm no gun expert either but I believe a basic part of safety is situational awareness.
19:37:00 -!- azaq23 has joined.
19:37:23 <fizzie> I liked the bit where it's expensive enough to come with an iPad preloaded with the fancy video feed software.
19:37:32 <kmc> oh it actually comes with the ipad?
19:38:05 <sploknee> "The price is relatively highthe rifles start at about $17,000"
19:38:09 <sploknee> that
19:38:12 <sploknee> is quite high
19:38:37 <fizzie> The article I was reading said it's around $25 grand (which is compatible with that figure, of course) and comes with it.
19:38:44 <fizzie> Maybe at $17k you don't get it.
19:39:17 <sploknee> No, you get it for the 17k version too.
19:43:10 <fizzie> Oh. Oh well. But what if you're a flaming NetBSD enthusiast or something and don't want your rifle to come with an Apple product?
19:43:45 <Bike> the coveted BSD sniper market
19:44:49 <kmc> http://www.tpdnews411.com/2013/01/marijuana-fqa.html 'Q) I have a warrant for my arrest and just wanted to smoke a "little weed" while riding my train. My warrant had nothing to do with my marijuana, what's the problem?'
19:48:16 <elliott> amazing
19:51:03 <fizzie> Incidentally, is there a free Android IRC client that does client-side SSL certificates? (AndroIRC seems to, but it costs moneys, and I'm a cheapskate.)
19:52:00 <fizzie> AndChat just says "SSL Support" with no mention of client-side certs, Yaaic I can't really tell of.
19:55:05 <fizzie> (Oh, AndroIRC doesn't cost money, the version that does is to disable ads. Well, anyway.)
19:55:22 <fizzie> (It was "Android IRC" that costed money.)
19:55:30 <fizzie> (These are all very imaginatively named.)
19:57:19 -!- oerjan has joined.
20:03:04 -!- nortti has changed nick to moe.
20:03:20 -!- moe has changed nick to nortti.
20:03:31 <nortti> O_o
20:05:29 <oerjan> Ø_ø
20:06:26 <nortti> Ö_ö
20:07:12 <olsner> ö is a smiley all by its own
20:07:19 <kmc> Ő_ő
20:09:21 <oerjan> hungarian eyebrows
20:15:56 <oerjan> <GreyKnight> it still doesn't tell how many spaces to use around an [...] which is itself between quoted lines
20:16:35 -!- WeThePeople has joined.
20:17:08 <oerjan> @tell <GreyKnight> it still doesn't tell how many spaces to use around an [...] which is itself between quoted lines <-- one space on each side, in fact those are the main kind
20:17:08 <lambdabot> Consider it noted.
20:17:35 <elliott> oerjan: thats not how @tell works
20:17:43 <oerjan> dammit
20:17:54 <oerjan> @tell GreyKnight <GreyKnight> it still doesn't tell how many spaces to use around an [...] which is itself between quoted lines <-- one space on each side, in fact those are the main kind
20:17:54 <lambdabot> Consider it noted.
20:18:02 <olsner> can you @untell?
20:18:13 <Taneb> @redact
20:18:20 <Taneb> By which I mean probably not
20:18:34 <fizzie> @unperson Taneb
20:18:34 <lambdabot> Unknown command, try @list
20:18:56 <oerjan> olsner: the only way i know is by nick stealing
20:19:18 <olsner> < and > are probably not allowed in a nick, what a shame
20:19:18 <oerjan> which is a bit rude you could say
20:19:29 <oerjan> olsner: indeed i had that pointed out last time i did this
20:20:50 <oerjan> elliott: if GreyKnight just had the sense to be online when i join, i would not make most of these errors!
20:21:18 <olsner> or the sense not to log out
20:24:04 <oerjan> well that's not as good, i'm weary of message people who are long time idle
20:24:11 <oerjan> *messaging
20:24:30 <olsner> wary?
20:24:58 <oerjan> MAYBE
20:25:10 <oerjan> (next time open wiktionary _before_ speaking)
20:25:37 <olsner> easily upmiscible words
20:32:34 <oerjan> `quote 910
20:32:36 <HackEgo> 910) <Bike> the idea is that you can get the information you need from reading the other players, isn't it [...] <Bike> and of course, reading isn't limited to facial expressions [...] <fizzie> That's true, you can read e.g. books.
20:33:13 <oerjan> `run sed -i '910s/ [[]...] /[...]/g' quotes
20:33:17 <HackEgo> No output.
20:33:19 <oerjan> `quote 910
20:33:21 <HackEgo> 910) <Bike> the idea is that you can get the information you need from reading the other players, isn't it [...] <Bike> and of course, reading isn't limited to facial expressions [...] <fizzie> That's true, you can read e.g. books.
20:33:47 <oerjan> elliott: YOU LAZY BUM
20:35:02 <elliott> oerjan: my complaint was badly-received enough that I did not feel like spending the effort, sorry!
20:35:45 <fizzie> Quotes, the leading cause of nickpings these days.
20:36:10 <elliott> oerjan: btw I feel the [...] there are probably obfuscatory.
20:37:10 <olsner> `quote fizzie
20:37:12 <HackEgo> 14) <fizzie after embedding some of his department research into fungot> Finally I have found some actually useful purpose for it. \ 38) <fizzie> Seconds. 30 of them. Did I forget the word? \ 144) <fizzie> It's like mathematicians, where the next step up from "trivial" is "open research question". <fizzie> "Nope... No...This problem can't be done
20:38:09 <fizzie> I forget which word I forgot there.
20:38:14 <oerjan> <GreyKnight> (having a naturally impassive face helps) <-- always keep an impassive face near inflammable materials
20:39:07 <oerjan> elliott: you need to write a thesis on proper [...] use
20:43:34 <oerjan> `? quote formatting
20:43:36 <HackEgo> quote formatting? ¯\(°_o)/¯
20:43:53 <elliott> `? qdbformat
20:43:55 <HackEgo> qdbformat is: <nick> message; * nick action; two spaces between messages; all elisions marked with [...] other than irrelevant intervening messages; for messages separated by elision, one space on each side, not two
20:44:10 <elliott> for all the whining that entry has been there for over a year
20:44:49 <oerjan> WOW I NEVER KNEW
20:45:34 <oerjan> good you told me before i added my completely silly explanation based on quantum pair production of spaces.
20:45:49 <Taneb> `quote different
20:45:50 <HackEgo> 188) <zzo38> Maybe they should just get rid of Minecraft. If more people want it someone can make using GNU GPL v3 or later version, with different people, might improve slightly. \ 312) <Phantom_Hoover> Scotland turns from red and yellow to A DIFFERENT SHADE OF YELLOW \ 364) <Gregor> You just went from "no sexualized ads" to "we have ads for dildo
20:46:30 <nortti> ioccc just keeps impressing me
20:48:03 <oerjan> `? qdb
20:48:05 <HackEgo> qdb is used like: `quote; `quote regexp; `quote id; `addquote ...; `delquote id; `pastequotes regexp; `pastenquotes [n]; see also qdbformat
20:49:07 <oerjan> `?
20:49:08 <HackEgo> cat: wisdom/: Is a directory
20:49:10 <oerjan> `?
20:49:11 <HackEgo> cat: wisdom/: Is a directory
20:49:23 <oerjan> `? help
20:49:24 <HackEgo> help? ¯\(°_o)/¯
20:49:36 -!- epicmonkey has joined.
20:49:41 <oerjan> `? `?
20:49:42 <HackEgo> See `? for further details.
20:50:07 <nortti> `ls wisdom
20:50:08 <HackEgo> ​`? \ ? \ ⌨ \ ☃ \ 🐐 \ ais523 \ atriq \ augur \ banach-tarski \ boily \ bonvenon \ brain \ brainf**k \ brainfuck \ brick \ c \ cakeprophet \ category \ coffee \ comonad \ coppro \ egobot \ elliott \ endofunctor \ endomorphism \ england \ esoteric \ europe \ everyone \ finland \ finnish \ finns \ fizzie \ flower \ freefull \ friendship \ fun
20:50:14 <oerjan> `? wisdom
20:50:15 <HackEgo> wisdom is always factually accurate, except for this entry
20:50:30 <fizzie> `? ?
20:50:32 <HackEgo> ​? is wisdom
20:50:49 <shachaf> HackEgo supports cat wisdom now?
20:50:54 <ais523> the `? wisdom entry is, of course, completely a lie
20:50:58 <ais523> `cat wisdom/*
20:51:00 <HackEgo> cat: wisdom/*: No such file or directory
20:51:03 <ais523> `run cat wisdom/*
20:51:05 <HackEgo> See `? for further details. \ ? is wisdom \ ☃ brrr... \ You are probably using one right now! \ 🐐 <(Unicode goat laments your inability to render Unicode goat.) \ Agent "Iä" Smith is an alien with a strange allergy to avian body covering, which he is trying to retroactively prevent from ever evolving. \ atriq or two \ augur took no cakes. \ "
20:54:57 <oerjan> `cat bin/learn
20:54:59 <HackEgo> ​#!/bin/sh \ topic=$(echo "$1" | sed 's/ .*//' | tr A-Z a-z) \ info=$(echo "$1" | sed 's/[^ ]* //') \ echo "$1" >"wisdom/$topic" \ echo "I knew that."
20:55:35 -!- ogrom has joined.
20:55:37 <fizzie> `run ls wisdom/* | grep -v ngevd | xargs -i grep cake "{}"
20:55:45 <HackEgo> augur took no cakes. \ Gregor took forty cakes. He took 40 cakes. That's as many as four tens. And that's terrible.
20:56:28 <shachaf> `run file wisdom/ngevd
20:56:31 <HackEgo> wisdom/ngevd: symbolic link to `/dev/urandom'
20:56:36 <shachaf> Oh.
20:56:46 <fizzie> That was an exercise in frustration. ngevd's /dev/urandom link made a plain "grep ... *" not work, and the straight-forward | xargs grep hit the spaces.
20:56:59 <fizzie> Maybe a find -print0 | xargs -0 would've been better, though.
20:57:18 <ion> find … | xargs … can usually be replaced with find … -exec …, too.
20:57:31 <olsner> `run grep -l cake wisdom/* | xargs cat
20:58:02 <HackEgo> No output.
20:58:36 <fizzie> `run find wisdom -not -name ngevd -print0 | xargs -0 grep -h cake
20:58:36 <olsner> btw the new bond movie appears to be completely pointless
20:58:38 <HackEgo> augur took no cakes. \ Gregor took forty cakes. He took 40 cakes. That's as many as four tens. And that's terrible.
20:58:51 <fizzie> It's arguably better but not shorter.
20:59:34 <fizzie> (-exec would've also been hokay.)
21:00:02 <fizzie> Also "run find wisdom -not -name ngevd" reads like a story.
21:00:11 <fizzie> Run, find wisdom; don't ask anyone called ngevd.
21:01:55 -!- zzo38 has joined.
21:01:57 <zzo38> ?messages
21:01:57 <lambdabot> FireFly said 3d 5h 29m 41s ago: (re. puzzle.1) You only need two retreats I think: http://hastebin.com/wohodetece
21:01:57 <lambdabot> GreyKnight said 1d 1h 55m 6s ago: What are your thoughts on plan9? Inquiring minds want to know.
21:02:54 <oerjan> `? quote
21:02:54 <HackEgo> quote? ¯\(°_o)/¯
21:03:02 <olsner> `? oerjan
21:03:03 <HackEgo> Your evil overlord oerjan is a lazy expert in future computation. Also a lying Norwegian.
21:03:13 <augur> how do i take a cake!
21:04:34 <FireFly> Huh, do hastebin pastes expire?
21:04:41 <zzo38> Yes, puzzle.1 requires only two retreats.
21:04:44 <ais523> is hastebin like pastebin, but faster?
21:04:52 <zzo38> However, some puzzles need other number of retreats.
21:05:07 <FireFly> http://hastebin.com/jopafacoko that was my solution
21:05:19 <oerjan> `run echo "Quotes are just elements of the quantum dilapitated bogosphere. See qdb." >wisdom/quote
21:05:23 <HackEgo> No output.
21:05:23 <FireFly> er, by puzzle.1 I meant puzzle.3 I think
21:05:31 <oerjan> `? quote
21:05:32 <HackEgo> Quotes are just elements of the quantum dilapitated bogosphere. See qdb.
21:05:37 <oerjan> oh hm
21:05:56 <oerjan> `run echo "Quotes are just elements of the quantum dilapitated bogosphere. See qdb." >wisdom/quote #elliott doesn't like double spaces _other_ than between quotes
21:06:00 <HackEgo> No output.
21:06:03 <oerjan> `? quote
21:06:04 <HackEgo> Quotes are just elements of the quantum dilapitated bogosphere. See qdb.
21:06:13 <zzo38> Yes, puzzle.3 also need only two retreats. Well, actually it depends what your opponent will play, I think.
21:06:43 <FreeFull> `? freefull
21:06:43 <HackEgo> FreeFull is either full of freedom or free of fulldom, we are not sure. \ F
21:07:20 <ais523> bleh, now I want to !bfjoust something and randomly get top 10 on the leaderboard
21:07:22 <ais523> but that's hard :(
21:07:23 <Sgeo> http://newyork.cbslocal.com/2012/01/11/embed-map-test/
21:07:27 <fizzie> FireFly: With a name like that... (re hastebin and expiration)
21:08:27 <oerjan> `? FreeFull
21:08:28 <HackEgo> FreeFull is either full of freedom or free of fulldom, we are not sure. \ F
21:08:37 <fizzie> Do sprunge pastes expire? Would've thought they'd be running out of the four-character namespace soon otherwise.
21:08:39 -!- Phantom__Hoover has joined.
21:08:40 <fizzie> > 36^4
21:08:42 <lambdabot> 1679616
21:08:47 <fizzie> That's not a whole lot.
21:09:20 <Phantom__Hoover> Maybe they expand it?
21:10:05 <oerjan> `run sed -i '2,$d' wisdom/freefull
21:10:08 <HackEgo> No output.
21:10:10 <oerjan> `? FreeFull
21:10:12 <HackEgo> FreeFull is either full of freedom or free of fulldom, we are not sure.
21:10:28 <zzo38> FireFly: Did you solve puzzle.3 what is your solution?
21:10:49 <oerjan> FreeFull: i didn't realize your revert 0 back when was actually trying to revert something that needed reversion
21:10:55 -!- sploknee has quit (Ping timeout: 264 seconds).
21:10:58 <oerjan> or wait
21:11:06 <oerjan> FreeFull: bah, those weren't the same date
21:11:27 <FireFly> zzo38: yes, I think so, and <FireFly> http://hastebin.com/jopafacoko that was my solution
21:11:38 <FireFly> (I misremembered when I said I solved puzzle.1)
21:13:14 <FireFly> er, "WIND" should be Gust of Wind
21:13:15 <fizzie> `run find wisdom -type f -not -name ngevd -exec wc -l {} \; | grep -v '^1 '
21:13:24 <HackEgo> 2 wisdom/pie
21:13:26 <fizzie> `? pie
21:13:27 <HackEgo> I like pie \ I like pie
21:13:34 <fizzie> I suppose that's fair.
21:13:42 <FireFly> Oh, it shouldn't. it was a move apparently
21:14:47 <zzo38> FireFly: It is not a helpmate; you must consider all opponent's possibility.
21:15:43 <zzo38> Also, your Clefairy has no energy.
21:16:08 <zzo38> O no wait, it does.
21:16:44 <zzo38> Still, you need to consider the opponent's possibility of retreating.
21:16:49 <FireFly> Oh, hm, I didn't consider that the opponend could retreat the Ponyta for Rapidash
21:16:52 <FireFly> opponent*
21:16:59 <zzo38> Yes; that is what I meant.
21:17:19 <Phantom__Hoover> ...discussing pokemon tactics
21:17:24 <Phantom__Hoover> how far we hath fallen
21:18:28 <zzo38> FireFly: Now that you consider the opponent can retreat, then do you have idea to play next?
21:18:53 <Phantom__Hoover> esolang based on pokemon. go.
21:19:58 <zzo38> Phantom__Hoover: Look in the list of ideas; if you don't like the ones already there based on Pokemon, add one!
21:20:55 <FireFly> I'm thinking...
21:21:44 <FireFly> Let's see.. if we assume the opponent retreats to Rapidash, we could stall for another turn by using WIND again, and then continue 'til the opponent runs out of cards
21:21:48 <FireFly> But I don't think that counts
21:22:24 <FireFly> (and if the opponent doesn't retreat or retreats to the other Ponyta you could just OHKO it via curse + ember)
21:23:52 <zzo38> Continuing until the opponent runs out of cards does count; however, since you used BILL, you will run out of cards first.
21:24:16 <FireFly> Oh, good point
21:24:52 <FireFly> Hmm, and I do need the BILL in order to start it off
21:28:31 <FireFly> hmmm
21:28:51 <FireFly> I think I get it
21:29:12 <FireFly> instead of using bill, we retreat for Haunter, then retreat again for Clefairy and discard the recycle energy
21:29:20 <FireFly> thus getting it back to the hand so we can attach it to Clefairy
21:29:42 <FireFly> and thus, we could still follow the stall-or-KO-ponyta tactic
21:30:36 <FireFly> (did I miss something again?)
21:30:53 <zzo38> Haunter's retreat cost is zero.
21:31:31 <zzo38> But it is close.
21:31:40 <FireFly> Bah! evolve to Gengar then
21:31:46 <FireFly> just to up the retreat cost
21:32:10 <zzo38> Yes.
21:32:17 -!- augur has quit (Ping timeout: 248 seconds).
21:32:44 -!- augur has joined.
21:36:04 <FreeFull> Imagine if *nix had lazy files
21:36:12 <FreeFull> So they could be infinite in size
21:36:38 <shachaf> Like pipes?
21:36:53 <olsner> I guess what you really want is a special file the starts a process when you open the file
21:37:14 <olsner> you can probably do that with fuse
21:38:04 <fizzie> There are systems where it's more integral than using fuse.
21:38:08 <oerjan> <sploknee> have you not all realised that he's at least as dumb as itidus, but he's also under the delusion that he's intelligent?
21:38:59 <zzo38> FireFly: Do you know the puzzle.1 and puzzle.2 and can you make any of your own Pokemon Card puzzles?
21:39:21 <fizzie> I am under the impression that Hurd has a lot of translators that do not need any terribly special privileges in order to provide "file-like" interfaces.
21:39:50 <oerjan> Phantom__Hoover: i hope you are just lousy at making jokes here.
21:40:16 <fizzie> http://www.gnu.org/software/hurd/hurd/translator.html -- that kind of thing.
21:40:36 <Phantom__Hoover> oerjan, no comment due to not knowing what you're talking about.
21:40:54 <oerjan> Phantom__Hoover: see the above paste.
21:41:02 <Phantom__Hoover> I do.
21:41:04 <FireFly> zzo38: I did make one but I haven't triple-checked that it's not solvable in an easier way than what I intend
21:41:07 -!- WeThePeople has quit (Quit: Leaving).
21:41:08 <FireFly> (and it's not all that hard)
21:41:28 <zzo38> FireFly: I would like to see anyways
21:41:42 <FireFly> http://hastebin.com/kodagalime
21:41:42 <oerjan> Phantom__Hoover: i take it you were, then.
21:42:15 <Phantom__Hoover> Nope, still don't see what you actually mean.
21:43:44 <zzo38> FireFly: Is it OK with you if I make a copy? (I can add your name and whatever else you want on it, if you wanted)
21:43:54 <FireFly> zzo38: sure, go ahead
21:44:25 <FireFly> You could credit me with my nickname, that'll do
21:46:16 <oerjan> Phantom__Hoover: i don't think insulting someone like that is acceptable if it's not _clearly_ a joke to all involved.
21:46:59 <Phantom__Hoover> Unless the person doing it is a troll or something, then you couldn't care less.
21:47:19 <zzo38> FireFly: OK.
21:48:32 <oerjan> ...that is precisely the kind of response a troll would give, isn't it.
21:49:29 <Phantom__Hoover> Perhaps you'll even kick people who complain about me now.
21:49:56 -!- ChanServ has set channel mode: +o oerjan.
21:50:07 -!- oerjan has set channel mode: +b *!*sploknee@unaffiliated/phantom-hoover/x-3377486.
21:50:07 -!- oerjan has kicked Phantom__Hoover Have a break!.
21:50:14 -!- oerjan has set channel mode: -o oerjan.
21:50:19 <oerjan> PERHAPS
21:50:29 <hagb4rd> hey keep cool guys. i'm don't feel insulted.
21:50:39 <hagb4rd> he just had a bad day i guess
21:50:58 <zzo38> FireFly: I have done; I have added your name, converted to ASCII, and corrected the spelling of "Defending".
21:51:12 <zzo38> Other than that I have made no changes.
21:51:28 <oerjan> hagb4rd: good, good. i've decided he needs a lesson nonetheless.
21:52:30 <quintopia> fizzie: you miscalculated
21:52:50 <hagb4rd> also my statements were kind of harsh too,
21:53:20 <quintopia> fizzie: the four character name space is 14.7m because case-sensitive
21:53:38 <quintopia> but yeah, i assume they will overwrite things eventually
21:56:27 <oerjan> hagb4rd: this isn't really about a single event. i don't find it acceptable that he insults other people _and_ complains about my lax moderation at the same time.
21:57:52 <oerjan> then he shouldn't be surprised if i suddenly decide to make it stricter.
21:58:17 <hagb4rd> ok :)
22:02:08 -!- Nisstyre has quit (Quit: Leaving).
22:02:39 -!- monqy has joined.
22:07:36 -!- Phantom_Hoover has joined.
22:07:58 <Phantom_Hoover> oerjan, FTR lax moderation is one thing; actively contrarian moderation is quite another.
22:07:58 <lambdabot> Phantom_Hoover: You have 2 new messages. '/msg lambdabot @messages' to read them.
22:08:02 -!- ChanServ has set channel mode: +o oerjan.
22:08:40 -!- oerjan has set channel mode: +b *!*@unaffiliated/phantom-hoover/x-3377486.
22:08:53 -!- oerjan has kicked Phantom_Hoover Ban evasion.
22:08:53 <quintopia> true. Phantom_Hoover is correct, oerjan. actively contrarian is far better than lax moderation.
22:09:23 <Taneb> I can't take this madness any more
22:09:37 <Taneb> I'm going to move to the next track of this muse album
22:09:50 <quintopia> :D
22:09:55 <hagb4rd> lol
22:10:08 <quintopia> u m-m-m-m-m-m-m-m-mad-mad-mad bro?
22:10:10 <Taneb> Hey, I like this song
22:10:19 <oerjan> why the heck doesn't mode allow removing stricter -b instances
22:10:24 -!- oerjan has set channel mode: -o oerjan.
22:10:38 <Taneb> We've arrived at panic station
22:11:06 <quintopia> is that a muse song? i thought it was someone else
22:11:20 <quintopia> (it's all a p fun board game)
22:11:28 <olsner> ah, Panic Station is the song that comes after Madness
22:12:03 <olsner> on some muse album
22:17:21 <oerjan> `quote 911
22:17:22 <HackEgo> 911) * GreyKnight puts some cookies inside a forcefield ⌇⌇ o o o ⌇⌇ <GreyKnight>what now c00kiemon5ter?!? * c00kiemon5ter omnomnomnomnomnomnomnom <GreyKnight>but how did he get through the forcefield?!? @u@ <c00kiemon5ter>I did not! the cookielicious force within me grew outside the forcefield absording the crumbles <GreyKnight>darn c
22:18:09 <oerjan> `sed -i '911s/>/> /' quotes
22:18:09 <HackEgo> Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]... \ \ -n, --quiet, --silent \ suppress automatic printing of pattern space \ -e script, --expression=script \ add the script to the commands to be executed \ -f script-file, --file=script-file \ add the contents of script-
22:18:12 <oerjan> `run sed -i '911s/>/> /' quotes
22:18:16 <HackEgo> No output.
22:18:18 <oerjan> `quote 911
22:18:19 <HackEgo> 911) * GreyKnight puts some cookies inside a forcefield ⌇⌇ o o o ⌇⌇ <GreyKnight> what now c00kiemon5ter?!? * c00kiemon5ter omnomnomnomnomnomnomnom <GreyKnight>but how did he get through the forcefield?!? @u@ <c00kiemon5ter>I did not! the cookielicious force within me grew outside the forcefield absording the crumbles <GreyKnight>darn
22:18:25 <oerjan> argh
22:18:37 <oerjan> oh
22:18:40 <oerjan> `revert
22:18:43 <HackEgo> Done.
22:18:48 <oerjan> `run sed -i '911s/>/> /g' quotes
22:18:52 <HackEgo> No output.
22:18:55 <oerjan> `quote 911
22:18:57 <HackEgo> 911) * GreyKnight puts some cookies inside a forcefield ⌇⌇ o o o ⌇⌇ <GreyKnight> what now c00kiemon5ter?!? * c00kiemon5ter omnomnomnomnomnomnomnom <GreyKnight> but how did he get through the forcefield?!? @u@ <c00kiemon5ter> I did not! the cookielicious force within me grew outside the forcefield absording the crumbles <GreyKnight> da
22:23:30 -!- Arc_Koen has quit (Quit: Arc_Koen).
22:24:24 <FireFly> I presume the cutoff isn't intentional
22:24:48 <hagb4rd> hackego cuts it off actually
22:24:50 <FireFly> Maybe remove the last line
22:24:51 <oerjan> `run quote 911 | rev
22:24:53 <HackEgo> scisyhp eikooc nrad >thginKyerG< selbmurc eht gnidrosba dleifecrof eht edistuo werg em nihtiw ecrof suoicileikooc eht !ton did I >ret5nomeik00c< @u@ ?!?dleifecrof eht hguorht teg eh did woh tub >thginKyerG< monmonmonmonmonmonmonmo ret5nomeik00c * ?!?ret5nomeik00c won tahw >thginKyerG< ⌇⌇ o o o ⌇⌇ dleifecrof a edisni seikooc emos stup t
22:25:12 <FireFly> Oh, heh
22:25:45 <elliott> thginKyerG
22:25:45 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
22:25:54 <Sgeo> elliott, monqy Taneb Fiora
22:26:04 <FireFly> `run quote 911 | cut -c100-
22:26:06 <HackEgo> ​ c00kiemon5ter?!? * c00kiemon5ter omnomnomnomnomnomnomnom <GreyKnight> but how did he get through the forcefield?!? @u@ <c00kiemon5ter> I did not! the cookielicious force within me grew outside the forcefield absording the crumbles <GreyKnight> darn cookie physics
22:26:18 <Sgeo> ... the bot may have lied
22:26:46 <oerjan> `run sed -i '911s/^ */$/' quotes
22:26:50 <HackEgo> No output.
22:26:52 <oerjan> oops
22:26:54 <Sgeo> bot did not lie
22:26:56 <oerjan> `revert
22:26:58 <HackEgo> Done.
22:26:58 <Sgeo> There really is an update
22:27:13 <oerjan> `run sed -i '911s/^ *//' quotes
22:27:17 <HackEgo> No output.
22:27:20 <oerjan> `quote 911
22:27:21 <HackEgo> 911) * GreyKnight puts some cookies inside a forcefield ⌇⌇ o o o ⌇⌇ <GreyKnight> what now c00kiemon5ter?!? * c00kiemon5ter omnomnomnomnomnomnomnom <GreyKnight> but how did he get through the forcefield?!? @u@ <c00kiemon5ter> I did not! the cookielicious force within me grew outside the forcefield absording the crumbles <GreyKnight> dar
22:27:23 <Fiora> Jane is heading to Jake's planet... oh. oh dear.
22:27:32 <oerjan> ONE MORE CHARACTER
22:27:50 <FireFly> Jake is new?
22:27:56 <FireFly> oh.. wrong kind of character
22:29:28 <elliott> `quote 909
22:29:29 <HackEgo> 909) this quote is formatted wrong to annoy quitopia also it's not a quote
22:29:32 <elliott> `delquote 909
22:29:36 <HackEgo> ​*poof* this quote is formatted wrong to annoy quitopia also it's not a quote
22:29:47 <oerjan> IT WAS INEVITABLE
22:29:52 <FireFly> `quoteadd *poof* *poof*
22:29:53 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: quoteadd: not found
22:30:00 <FireFly> ...addquote, I guess
22:30:00 <oerjan> also worst misspelling of elliott i've seen
22:30:06 <FireFly> `addquote *poof* *poof*
22:30:10 <HackEgo> 911) *poof* *poof*
22:30:16 <FireFly> `delquote 911
22:30:21 <HackEgo> ​*poof* *poof* *poof*
22:30:57 <oerjan> Sgeo: you might want to take elliott off your list. just a friendly hint before i go out to buy some horse heads.
22:31:28 <Sgeo> Wait, did elliott say he wanted to come off the list? I forget?
22:31:45 <Sgeo> I remember someone claimed he wanted that, I think, but he didn't say it himself?
22:32:02 <FireFly> `quote quote
22:32:03 <HackEgo> 30) <oklopol> i can get an erection out of a plank, you can quote me on that. \ 70) [Warrigal] `addquote <Dylan> hahaha, Lawlabee is running windows <Lawlabee> 'cuz it's pretty awesome. [Lawlabee] Warrigal: :( \ 71) Note that quote number 124 is not actually true. \ 79) <ais523> let's put that in the HackEgo quotes files, just to completely mys
22:32:47 <FireFly> `quote 124
22:32:49 <HackEgo> 124) <Sgeo> Why shouldn't I just do everything in non-Microsoft-specific C#? <ais523> it's like trying to write non-IE-specific JavaScript with only Microsoft documentation and only IE to test on
22:33:18 <FireFly> I guess the indices have been shifted
22:34:11 -!- Taneb has quit (Quit: Leaving).
22:34:18 <Sgeo> At some point I will write a program to retrieve every quote that has ever been in there
22:35:14 <FireFly> Also, the formatting in #70 looks weird to me
22:36:03 <oerjan> i think i didn't dare edit #70 because recursion (the _quoted_ part of quotes should be accurate)
22:36:11 <elliott> 70 is one of those quotes broken enough that you just give up and let it be.
22:36:15 <oerjan> `quote 70
22:36:16 <HackEgo> 70) [Warrigal] `addquote <Dylan> hahaha, Lawlabee is running windows <Lawlabee> 'cuz it's pretty awesome. [Lawlabee] Warrigal: :(
22:36:20 <elliott> like the django quotes
22:36:33 <FireFly> `quote Lawlabee
22:36:35 <HackEgo> 70) [Warrigal] `addquote <Dylan> hahaha, Lawlabee is running windows <Lawlabee> 'cuz it's pretty awesome. [Lawlabee] Warrigal: :( \ 82) <Warrigal> Making a small shrine to Lawlabee in my basement is something I should get around to at some point. \ 747) <tswett> ais523: well, Dylan said "hahaha, Lawlabee is running windows", and then Lawlabee s
22:36:57 <FireFly> Apparently his windows box is pretty well-known
22:39:12 <oerjan> oh hm
22:39:46 <Sgeo> elliott, do you wish to be removed from the list or remain on the list?
22:40:02 <FireFly> That is the question.
22:40:07 <oerjan> `run sed -i '70s/ *[[]/ [/' quotes # i think this is the most logical
22:40:10 <HackEgo> No output.
22:40:14 <oerjan> `quote 70
22:40:14 <shachaf> Bike: do you wish to be removed from the list or remain on the list?
22:40:15 <HackEgo> 70) [Warrigal] `addquote <Dylan> hahaha, Lawlabee is running windows <Lawlabee> 'cuz it's pretty awesome. [Lawlabee] Warrigal: :(
22:40:18 <shachaf> Fiora: do you wish to be removed from the list or remain on the list?
22:40:22 <shachaf> monqy: do you wish to be removed from the list or remain on the list?
22:41:15 <hagb4rd> should we add a limit of character as convention for the quotes? or do we have one? if so, it'd be nice when hackego would give a warning about this or sth. and some basic formatting (like trimming leading spaces) maybe could be implemented without much effort..
22:42:04 <Fiora> I like being on the list
22:42:20 <olsner> what is the list?
22:42:25 <FireFly> It could break after the last (double-space-delimited) line that fits, and append […] if such a break happens
22:42:58 <hagb4rd> yes .. sth like that
22:43:29 <hagb4rd> at least if oerjan doesn't mind if we steal his job ;)
22:44:39 <Fiora> olsner: sgeo pings people when there's homestuck updates
22:44:57 <FireFly> Which reminds me, maybe I should start reading homestuck
22:44:58 <Sgeo> Sometimes
22:45:00 <olsner> you should write a hackego command for doing that
22:45:05 <Sgeo> FireFly, yes
22:45:29 <olsner> or perhaps all of you should just subscribe to the RSS feed
22:45:43 <Fiora> FireFly: you should
22:45:50 <oerjan> `pastequotes django
22:45:55 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5404
22:46:15 <olsner> I'm still in all of them :(
22:46:29 <olsner> someone else get quoted saying django please
22:46:43 <FireFly> `quote 321
22:46:45 <HackEgo> 321) <monqy> `quote django <HackEgo> ​352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something \ 407) <cpressey> `quote django <HackEgo> ​352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something <cpressey> thankfully only one <monqy> thankfully only two
22:46:54 * FireFly accidentally nickpings half the channel
22:47:36 <FireFly> olsner: it's tempting to addquote that line
22:48:10 <elliott> `addquote <oerjan> `pastequotes django <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5404 <olsner> I'm still in all of them :( <olsner> someone else get quoted saying django please
22:48:14 <HackEgo> 911) <oerjan> `pastequotes django <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5404 <olsner> I'm still in all of them :( <olsner> someone else get quoted saying django please
22:48:46 <olsner> Obviously.
22:50:30 <oerjan> olsner: HAPPY TO HELP
22:50:52 <FireFly> The second expansion of "HTH"
22:51:16 <olsner> oerjan: NOT HELPING
22:51:37 <hagb4rd> `url bin/addquote
22:51:38 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/addquote
22:53:17 <hagb4rd> that's a hell of a script :P
22:53:46 <hagb4rd> unrefactorable
22:55:21 <FireFly> `addquote
22:55:23 <HackEgo> No output.
22:56:39 <FireFly> `url bin/quote
22:56:41 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/quote
22:58:42 <FireFly> Huh, neat, didn't know about `nl`
22:58:54 <hagb4rd> i can write a script a script as proposal if you like. (not changing the way things are stored, but just doing the very basic clean job/control functions)
22:59:23 <hagb4rd> you can decide if you like it then
23:01:05 <hagb4rd> oerjan or who ever feels responsable: do we need a limit of characters per quote?
23:01:19 <oerjan> no.
23:01:19 <Bike> what's a list
23:01:21 <hagb4rd> ok
23:06:04 <FireFly> Bike: a roped-off enclosure where medieval knights jousted.
23:06:05 <hagb4rd> *responsible ("in charge" also is great :)
23:06:21 <Bike> o
23:06:59 <FireFly> Oh, that's apparently "the lists", in plural.
23:12:49 -!- GreyKnight has joined.
23:13:16 <GreyKnight> <hagb4rd> Gregor: one more thing: would you mind to install mono on that sandbox? <-- in theory you could do it yourself you know :-)
23:13:16 <lambdabot> GreyKnight: You have 1 new message. '/msg lambdabot @messages' to read it.
23:15:42 <impomatic> I've just noticed Netcetera have removed all the binary downloads from my website :-(
23:15:43 <hagb4rd> greyknight: no i didn't know. i mean: i don't know if i'm allowed to do so, since even my wisdom entries got deleted
23:16:24 <FireFly> `run echo $SHELL
23:16:25 <HackEgo> ​/bin/sh
23:16:28 <GreyKnight> oh people delete quotes and wisdom all the time :-)
23:16:34 <FireFly> `which bash
23:16:36 <HackEgo> ​/bin/bash
23:16:37 <FireFly> `which zsh
23:16:38 <HackEgo> No output.
23:16:42 <hagb4rd> Gregor: am i allowed to install mono?
23:16:50 <hagb4rd> just to make sure
23:16:52 <GreyKnight> "it's easier to ask forgiveness than permission"
23:16:54 <FireFly> `ls
23:16:56 <HackEgo> bin \ canary \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ gktemp \ ibin \ index.html \ interps \ karma \ lib \ luabuild \ paste \ quotes \ quotese \ run \ share \ test \ wisdom \ zalgo.hs
23:16:57 <GreyKnight> ;-)
23:17:04 <hagb4rd> :D
23:17:21 <hagb4rd> that's a good one
23:17:30 <FireFly> Pretty sure it's fine
23:17:33 <FireFly> I mean, it's meant to be sandboxed anyway..
23:17:41 <hagb4rd> cool cool
23:17:53 <FireFly> Speaking of which, what was the reason for the crash a few days ago?
23:18:39 <elliott> hagb4rd: not quite sure how a 4-lin escript counts as unrefactorable by any definition...
23:19:02 <hagb4rd> that was a joke
23:19:09 <hagb4rd> dear elliott
23:19:15 <GreyKnight> fizzie: I use AndroIRC, although I haven't tried the SSL thing. General experience: "It's okay."
23:20:03 <GreyKnight> Dear elliott, please recompile your sense of humour. All my love, GreyKnight xoxo
23:20:20 <FreeFull> `cat zalgo.hs
23:20:21 <HackEgo> import Random;main=mapM_((>>(י=<<randomRIO('̀','ͯ'))).י)=<<getContents;י=putChar
23:20:21 <hagb4rd> elliott: it's that i expected sth horrible, not that cute sober 4 lines of pure code
23:20:39 <oerjan> <GreyKnight> I guess you need a concept of "variables" at least <-- i think unlambda manages to have functions first-class and characters second-class without having variables
23:20:45 <FreeFull> Does HackEgo have haskell
23:20:53 <FreeFull> `runhaskell zalgo.hs Test
23:20:59 <HackEgo> Warning: ignoring unrecognised input `zalgo.hs Test' \ \ zalgo.hs Test:1:33: \ Not in scope: `main' \ Perhaps you meant `min' (imported from Prelude)
23:21:24 <GreyKnight> oerjan: I meant to say "values" there
23:21:32 <oerjan> ah
23:21:43 <GreyKnight> I was out walking in the rain so my typing may have been slightly erratic
23:22:06 <GreyKnight> `run runhaskell zalgo.hs Test
23:22:09 <olsner> FreeFull: lambdabot has haskell
23:22:10 <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.
23:22:18 <GreyKnight> /golfclap
23:22:26 <shachaf> `cat zalgo.hs
23:22:27 <HackEgo> import Random;main=mapM_((>>(י=<<randomRIO('̀','ͯ'))).י)=<<getContents;י=putChar
23:22:36 <shachaf> `run echo Test | zalgo
23:22:38 <HackEgo> Ṯeͮs̤tͮ \ ̦
23:23:25 <GreyKnight> <elliott> for all the whining that entry has been there for over a year <-- now if only anybody had known where it was
23:23:47 <GreyKnight> `run ln -s wisdom/qdbformat "wisdom/quote formatting"
23:23:50 <HackEgo> ln: accessing `wisdom/quote formatting': Not a directory
23:24:29 <GreyKnight> what have I done
23:24:33 <hagb4rd> `run ln -s wisdom/qdbformat wisdom/"quote formatting"
23:24:35 <HackEgo> ln: accessing `wisdom/quote formatting': Not a directory
23:24:49 <hagb4rd> dunno
23:24:54 <GreyKnight> Anyway at least we can all agree that 188 is best quote
23:25:06 <olsner> `quote 188
23:25:07 <HackEgo> 188) <zzo38> Maybe they should just get rid of Minecraft. If more people want it someone can make using GNU GPL v3 or later version, with different people, might improve slightly.
23:25:34 <olsner> not the best quote
23:26:36 <nooodl_> i'm gonna guess a quote number and hope it's the best one
23:26:42 <nooodl_> `quote 132
23:26:43 <HackEgo> 132) * Phantom_Hoover sticks crayons in his nose
23:27:10 <nooodl_> welp
23:27:11 <olsner> could be worse
23:27:37 <Bike> `quote 99
23:27:39 <HackEgo> 99) <oklopol> you move on the tape and shit
23:27:41 <FireFly> Cue rainbows pouring out of Phantom_Hoover's nose
23:27:44 <GreyKnight> Not *much* worse, but some
23:27:45 <Bike> this isn't going well
23:28:04 <FireFly> `quote 37
23:28:04 <GreyKnight> Meanwhile, oklopol is relieving himself on a tape
23:28:06 <HackEgo> 37) <Dylan> actually, I pretended to be a hobo to get directions
23:28:15 <GreyKnight> `run wc -l quotes
23:28:17 <HackEgo> 911 quotes
23:28:28 <nooodl_> i like "you move on the tape and shit"
23:28:38 <Bike> `quote 444
23:28:40 <HackEgo> 444) <pikhq> I actually had a Neopets account. I later gained a second digit in my age.
23:28:44 <FireFly> TMI I think
23:29:19 <Bike> `quote 643
23:29:20 <HackEgo> 643) <oklopol> the point of a university is research and training new researchers. the point of the world is to enable this.
23:29:32 <nooodl_> `quote 1
23:29:34 <HackEgo> 1) <Aftran> I used computational linguistics to kill her.
23:29:41 <FireFly> `run quote 777 # this can't go wrong, can it?
23:29:43 <shachaf> `quoerjandom
23:29:43 <HackEgo> 777) <itidus21> you are like the linux torvalds of quiz engines
23:29:44 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: quoerjandom: not found
23:29:45 <Bike> i wonder if the world has been informed of this relationship
23:30:10 <nooodl_> is there an online quote database or something
23:30:23 <oerjan> `url quotes
23:30:24 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/quotes
23:30:32 <GreyKnight> THERE
23:30:43 <shachaf> @what quotes
23:30:43 <lambdabot> I know nothing about quotes.
23:30:49 <GreyKnight> `run quote $(echo $((RANDOM % $(cat quotes | wc -l))))
23:30:51 <HackEgo> 858) <elliott> I kept telling my therapist I wanted more conventional, non-hip-hop-oriented treatment, but it was no use. my shrinkwrapped. <elliott> okay i hate myself for making a pun that bad <elliott> please kill me <elliott> :(
23:31:03 <FireFly> did you just reinvent `quote?
23:31:06 <shachaf> GreyKnight: Very useful one liner you've got there.
23:31:07 <Bike> isn't that basically what `quote does
23:31:08 <FireFly> `quote
23:31:09 <HackEgo> 797) <itidus21> elliott___: we have been calling a book new for 2000 years and it took einstein to figure out relativity
23:31:22 <GreyKnight> Bike: yes
23:31:23 <Bike> itidus21: what
23:31:55 <GreyKnight> FireFly: not only that: I reinvented quote in terms of itsemf
23:32:01 <GreyKnight> except spelt correctly
23:32:25 <oerjan> ooh
23:32:26 <Bike> metacircular quotation!
23:32:34 <shachaf> `run quote $(quote | sed 's/\).*//')
23:32:36 <HackEgo> sed: -e expression #1, char 8: Unmatched ) or \) \ 714) <olsner> what a world it would be if you could actually *steal* code so that the other project has to rewrite it or infiltrate your project to steal it back
23:32:51 <shachaf> `run quote $(quote | sed 's/).*//')
23:32:53 <HackEgo> 59) * oerjan swats FireFly since he's easier to hit -----### <FireFly> Meh * FireFly dies
23:32:59 <FireFly> Ouch
23:33:14 <GreyKnight> olsner: sort of related: http://www.bash.org/?104052
23:33:20 * FireFly swats oerjan for swatting him ------###
23:33:25 <olsner> GreyKnight: yes
23:33:36 <oerjan> now _that_ was unexpected.
23:33:53 <oerjan> the flies are rising
23:34:17 <olsner> `quote sed
23:34:17 <GreyKnight> RE: earlier talk of how many sprunge.us identifiers there are: they have both cases of letters, so the total available 4-character identifiers would be:
23:34:18 <HackEgo> 1) <Aftran> I used computational linguistics to kill her. \ 62) <fungot> ehird: every set can be well-ordered. corollary: every set s has the same diagram used from famous program talisman with fnord windows to cascade, someone i would never capitalize " i" \ 64) <oklofok> i use dynamic indentation, i indent lines k times, if they are used O(n^k) t
23:34:27 <GreyKnight> > (26+26+10)^4
23:34:28 <lambdabot> 14776336
23:34:59 <Bike> i like 62, let's use 62
23:35:02 <GreyKnight> (IMAO it would be better to not have 0 and O both valid characters, mind you)
23:35:13 <olsner> hmm, did any of those quotes contain the word sed?
23:35:27 <GreyKnight> "used" inthe first one
23:35:28 <FireFly> They contain the substring sed
23:35:32 <Bike> `quote " sed "
23:35:34 <HackEgo> No output.
23:35:44 <olsner> ah, used, yes
23:36:03 <GreyKnight> oh "used" in the other two as well actually
23:36:04 <kmc> is a sprunge like a funge?
23:36:06 <FreeFull> `run quote $(quote | sed 's/).*//')
23:36:08 <HackEgo> 577) <CakeProphet> l;le;ler;le;lr;e;ler;ler;le;lerr;le;le;erle;e;rler;lere;er;lerrelrrerererlanggt
23:36:11 <FireFly> Dynamic indentation is best indentation
23:37:13 <FireFly> I wonder if CakeProphet got rid of the dirt on his keys
23:37:26 <FreeFull> No
23:37:30 <FreeFull> The keys are dirt
23:37:39 <GreyKnight> `run sed s/tat/dat/ wisdom/quote
23:37:41 <HackEgo> Quotes are just elements of the quantum dilapidated bogosphere. See qdb.
23:38:06 <FireFly> Did you mean to -i that?
23:38:23 <GreyKnight> Yes
23:38:40 <GreyKnight> `run sed -i s/tat/dat/ wisdom/quote
23:38:51 <HackEgo> No output.
23:38:53 <GreyKnight> It's late, I'm cold and wet (and tired)
23:39:57 <kmc> `quote sprunge
23:39:59 <HackEgo> 236) <Gregor> !bfjoust furry_furry_strapon_pegging_girls http://sprunge.us/eKWa * Sgeo had no idea that Gregor was hetero
23:40:32 <FireFly> You and your bfjoust knight names
23:40:38 <FireFly> `quote bfjoust
23:40:43 <HackEgo> 225) <Vorpal> !bfjoust test (-)*10000 <EgoBot> Score for Vorpal_test: 12.9 <Vorpal> yay \ 226) <Vorpal> !bfjoust test (++-)*1000000 <Vorpal> probably will suck <EgoBot> Score for Vorpal_test: 30.4 <Vorpal> what \ 234) <Deewiant> !bfjoust sm3 < <EgoBot> Score for Deewiant_sm3: 43.4 \ 236) <Gregor> !bfjoust furry_furry_strapon_pegging_girls htt
23:40:56 <elliott> `? quote
23:40:58 <HackEgo> Quotes are just elements of the quantum dilapidated bogosphere. See qdb.
23:42:26 <FireFly> Wait, how did sm3 get >0?
23:42:49 * Sgeo has breached 2k worthless Internet points
23:42:52 <FireFly> The only game it could possibly win is against another copy of itself, if the other program goes first, as far as I can tell
23:42:57 <ais523> FireFly: bug in the hill
23:43:01 <FireFly> Ah
23:43:06 <ais523> it basically muddled wins with losses
23:43:17 <Sgeo> Calling them "worthless Internet points" totally disguises being actually interested in them
23:43:29 <Bike> @karma sgeo
23:43:30 <lambdabot> sgeo has a karma of 2
23:43:53 * FireFly concludes that worthless Internet points are millilambdabotkarmas
23:44:06 <ais523> my favourite thing about @karma is just how it triggers on random ++ and -- comments
23:44:16 <ais523> thus, why C is doing so well
23:44:17 <FireFly> @karma C
23:44:17 <lambdabot> C has a karma of 1
23:44:23 <ais523> hmm, was it reset?
23:44:32 <FireFly> @karma ##c
23:44:32 <lambdabot> ##c has a karma of 35
23:44:35 <FireFly> @karma c
23:44:35 <lambdabot> c has a karma of 1
23:44:36 <elliott> C has always been special-cased.
23:44:42 <elliott> FSVO always
23:44:45 <Bike> ++c
23:45:03 <FireFly> @karma g
23:45:03 <lambdabot> g has a karma of 106
23:45:04 <Sgeo> Add 1 to karma giving karma
23:45:24 <ais523> c++
23:45:26 <ais523> @karma c
23:45:26 <lambdabot> c has a karma of 1
23:45:29 <ais523> yeah, I see
23:45:56 -!- GreyKnight has quit (Ping timeout: 255 seconds).
23:46:01 <FireFly> @karma i
23:46:02 <lambdabot> i has a karma of 20
23:46:40 <Sgeo> Hmm, does the special-casing work on C-- too or just C++?
23:46:43 <Sgeo> @karma C
23:46:44 <lambdabot> C has a karma of 1
23:46:50 <Bike> c--++
23:46:54 <Sgeo> I'm scared to try it, don't know if it's reversible
23:46:56 <Sgeo> C--
23:46:58 <Sgeo> @karma C
23:46:59 <lambdabot> C has a karma of 1
23:47:19 <FireFly> Hmm, I can't think of any common sequence ending with --
23:47:31 <FireFly> @karma
23:47:31 <lambdabot> You have a karma of 1
23:47:39 <Bike> haskell lack-of-comments?
23:48:05 <kmc> some style guides state that there should be no space between a word and an em dash
23:48:27 <FireFly> would you keep the whitespace after the dashes then?
23:48:32 <kmc> but this convention is rarely followed when using '--' to represent an em dash
23:49:05 <FireFly> @karma -
23:49:06 <lambdabot> - has a karma of -793
23:49:09 <FireFly> hah
23:49:12 * shachaf doesn't like that style guide.
23:49:20 <Bike> @karma +
23:49:21 <lambdabot> + has a karma of 106
23:49:45 <FireFly> > 1 + 1 --- test
23:49:47 <lambdabot> 2
23:49:49 <FireFly> @karma -
23:49:49 <lambdabot> - has a karma of -794
23:50:10 <Bike> "cool"
23:50:16 -!- GreyKnight has joined.
23:50:56 <GreyKnight> `quote 71
23:50:58 <HackEgo> 71) Note that quote number 124 is not actually true.
23:50:58 <olsner> -++
23:51:11 <GreyKnight> `quote 124
23:51:13 <HackEgo> 124) <Sgeo> Why shouldn't I just do everything in non-Microsoft-specific C#? <ais523> it's like trying to write non-IE-specific JavaScript with only Microsoft documentation and only IE to test on
23:51:21 <kmc> shachaf: djb doesn't like the RDRAND instruction
23:51:28 <kmc> he says that an application should only get entropy from the operating system
23:51:32 <kmc> i'm not sure why though
23:51:58 * GreyKnight intends to delete quote 71 without one objection
23:52:11 <shachaf> Where does he say that?
23:54:14 <elliott> GreyKnight: I like it
23:54:24 <kmc> twitter
23:54:46 <GreyKnight> elliott: You like the idea of deleting the quote? Or the quote itself?
23:54:54 <elliott> the latter
23:54:58 * GreyKnight continues his merciless crusade against pronouns
23:54:58 <kmc> it's sad, because C# is actually a pretty nice language
23:56:04 <elliott> kmc: pascal tends to be a more mathematical programming language from my experience. haskell discards a lot of mathematical concepts by denying volatile types
23:56:29 <shachaf> "elliott aka worst of #haskell"
23:56:39 <olsner> 71 doesn't follow the quote laws
23:56:48 <oerjan> *GASP*
23:56:49 <elliott> kmc: it takes weeks to months for somebody to learn using monads
23:56:55 <elliott> kmc: i watched over 3 hours of monad lessons and i still cant tell a monad from a yumad
23:57:09 <Bike> y'all are awfully mean to one another
23:57:29 <olsner> it's hard to be nice when you hate everyone
23:57:30 <GreyKnight> elliott: think of it like a burrito
23:57:46 <oerjan> `quote burrito
23:57:47 <HackEgo> 907) <ais523> btw, I finally discovered what a burrito was, recently <ais523> they're kind of nice to eat <ais523> but don't really resemble monads
23:57:56 <shachaf> kmc: Lots of people seem to say C# is a nice language.
23:58:00 <elliott> GreyKnight: If we try hard enough we can make this place worse than #haskell and kmc will leave.
23:58:43 <kmc> elliott: what
23:58:50 <shachaf> elliott: I'd rather you don't do that.
23:59:05 <kmc> is that an actual #haskell quote
23:59:45 <shachaf> I think this person might be a troll.
23:59:59 <elliott> kmc: Yes.
2013-01-12
00:00:46 <Sgeo> volatile types?
00:00:53 <ais523> elliott: why are you trying so hard to get rid of kmc?
00:01:25 <elliott> ais523: Well, he's the worst person in the world and I hate him.
00:01:30 <elliott> kmc: Right?
00:02:08 <elliott> ais523: (I'm not.)
00:02:21 <hagb4rd> `cat /etc/*-release
00:02:22 <HackEgo> cat: /etc/*-release: No such file or directory
00:02:46 <kmc> :D
00:02:55 <olsner> I think consensus is that we approve of kmc
00:03:44 <shachaf> the #esoteric seal of approval?
00:03:57 <olsner> possibly
00:04:04 <Fiora> elliott is just jealous of his cool blog
00:04:26 <elliott> I bet kmc doesn't even get hate mail for his blog.
00:04:30 <elliott> PH's blog is the true one to be envious of.
00:04:45 <shachaf> Sgeo: You should notify me of updates to mainisusuallyafunction.blogspot.com
00:04:46 <kmc> aww <3
00:05:10 <shachaf> kmc: I guess you can notify me too, if you happen to notice them first.
00:05:14 <elliott> shachaf: It's mainisusuallyafunction.blogspot.co.uk
00:05:25 <elliott> mainisusuallyafunction.blogspot.hebrew
00:05:35 <olsner> it's trying to tell me its address is http://mainisusuallyafunction.blogspot.se/
00:05:54 <oerjan> i'm sure y'all are just misspelling http://mainisusuallyafunction.blogspot.no/
00:05:55 <shachaf> elliott: I think that's spelled ".co.il"
00:06:55 <oerjan> this mortal co.il
00:06:56 <kmc> you know someone is going to buy .jew
00:07:13 <Bike> definitely worth the thousands of dollars
00:07:24 <kmc> hell yes
00:07:38 <Bike> hm did mentifex mention .jew
00:08:27 <Fiora> kmc: on that note, I hadn't seen that hex-editing kernel module post
00:08:34 <Fiora> that is magnificently horrific
00:08:39 <kmc> thanks
00:08:54 <kmc> i thought linux modules had checksums but... not this one anyway
00:09:38 <Bike> oh, he didn't :(
00:10:00 <elliott> Bike: do you have a degree in crackpots or something
00:10:13 <kmc> from crackpottery barn
00:10:38 -!- Nisstyre-laptop has joined.
00:10:42 <shachaf> #esoteric is the best place to study crackpottery
00:10:42 <oonbotti> Nothing here
00:10:52 <shachaf> #hi
00:10:54 <Bike> no, i just took a wrong turn in my life back in the day
00:10:58 <shachaf> #esoteric oonbotti?
00:10:59 <oonbotti> Nothing here
00:11:13 <hagb4rd> greyknight would you help me with this debian installation of mono? i'm not sure why this doesn't work -> http://mono-project.com/DistroPackages/Debian
00:11:22 <Bike> one day you're just chucling at frakenstein surgery computer gangster boxes, and the next you're smoking kallisti cores off a schizo's back
00:11:30 * shachaf is tempted to quote #haskell now
00:11:43 <GreyKnight> hagb4rd: one problem with installing things on HackEgo is commands timing out :-)
00:11:51 <elliott> shachaf: You should do it. Hypocrisy is fashionable.
00:12:03 <shachaf> elliott: It's on-topic this time!
00:12:05 <shachaf> Unlike monads.
00:12:14 <hagb4rd> hm
00:12:18 <FireFly> Is it about lenses?
00:12:25 <shachaf> No.
00:12:33 <shachaf> It's about, uh, sheep?
00:12:42 <kmc> yessssss the frakenstein surgery computer gangster boxes
00:12:49 <GreyKnight> #esoteric What would be here if what was here was shachaf's common sense?
00:12:50 <oonbotti> Nothing here
00:12:59 <kmc> gangster computer god world-wide secret containment policy!!
00:13:16 <zzo38> Finally in Dungeons&Dragons game I got the spellbook.
00:13:28 <kmc> now you can spell
00:13:47 <elliott> kmc: I have no idea what is going on.
00:13:57 <Bike> another crackpot
00:14:15 <GreyKnight> Related: http://www.giantitp.com/comics/oots0012.html
00:14:16 <Bike> lawyer who went nuts and wrote all these barely legible rants about communist gangster frakenstein surgery
00:14:35 <FireFly> GreyKnight: exactly what I was thinking of
00:14:45 <kmc> elliott: http://www.bentoandstarchky.com/dec/containmentpolicy.htm
00:15:04 <kmc> there's a nice audio recording linked from there
00:15:23 <Bike> i love that site's design
00:15:47 <kmc> Four billion wordwide population - all living - have a Computer God Containment Policy Brain Bank Brain, a real brain, in the Brain Bank Cities on the far side of the moon we never see.
00:15:49 <hagb4rd> actually i get some "Permission denied" errors :/
00:16:37 <GreyKnight> the Brain Bank Cities!
00:16:41 <GreyKnight> I want to see those
00:16:46 <kmc> Worldwide as a Frankenstein slave, usually at night, you go to the nearby hospital or camouflaged miniature-hospital van trucks. You strip naked, lay on the operating table, which slides into the sealed Computer God Robot Operating Cabinet.
00:16:47 <hagb4rd> are you sure i'd have the rights to install packages in the sandbox?
00:16:56 * impomatic wonders when mannerisky was last here...
00:17:27 <FireFly> `which seen
00:17:29 <HackEgo> No output.
00:17:43 <GreyKnight> hagb4rd: everyone can write to it, that's why it's in a sandbox in the first place :-P
00:17:53 <shachaf> WAKE UP SHEEPLE
00:18:02 -!- epicmonkey has quit (Ping timeout: 246 seconds).
00:18:04 <Bike> GreyKnight: http://www.bentoandstarchky.com/dec/containmentpolicy/brainbankcities.jpg uh, HELLO, there's a picture RIGHT THERE
00:18:13 <FireFly> I don't think `run has root access (inside the sandbox)
00:18:17 <FireFly> `whoami
00:18:20 <HackEgo> whoami: cannot find name for user ID 5000
00:18:31 <FireFly> `touch /this
00:18:33 <HackEgo> touch: cannot touch `/this': Permission denied
00:18:55 <hagb4rd> there are some restrictions
00:19:06 <hagb4rd> :(
00:19:07 <GreyKnight> Bike: clicking takes effort -o-
00:19:14 <Bike> weak
00:19:39 <FireFly> `uname -a
00:19:41 <HackEgo> Linux umlbox 3.0.8-umlbox #2 Sun Nov 13 21:30:28 UTC 2011 x86_64 GNU/Linux
00:20:24 <GreyKnight> `cat the_list
00:20:26 <HackEgo> Sgeo \ Fiora
00:20:27 <GreyKnight> `update
00:20:30 <HackEgo> Sgeo Fiora: update
00:20:52 <GreyKnight> no more forgetful incidents :-)
00:21:47 <GreyKnight> Bike: I expected something more city-like, disappointed
00:22:11 <FireFly> You could just make it a wisdom entry..
00:22:11 <hagb4rd> @ask Gregor: would you please do me a favour and install the mono-packages? i don't seem to have sufficiant rights. only if you find some time to do so. Can you give me some feedback? I'd be gratful.
00:22:11 <lambdabot> Consider it noted.
00:22:14 <kmc> i enjoy the way Francis E. Dec uses language
00:22:22 <Bike> GreyKnight: "slow"
00:22:40 <hagb4rd> @tell Gregor http://mono-project.com/DistroPackages/Debian
00:22:41 <lambdabot> Consider it noted.
00:22:54 <GreyKnight> zzo38: perhaps the Brain Bank Cities on the moon would be a good spot for a D&D game. The illithids would love it there (perhaps they run the place)
00:22:57 <kmc> his run-on sentences are mostly grammatical, except that a lot of them are just huge noun clauses
00:23:51 <GreyKnight> hm I should have written it in Haskell for the practice
00:24:26 <FireFly> `ls interps
00:24:28 <HackEgo> 1l \ 2l \ adjust \ axo \ befunge \ bfjoust \ bf_txtgen \ boof \ build.sh \ cfunge \ c-intercal \ clc-intercal \ dimensifuck \ egobch \ egobf \ fukyorbrane \ gcccomp \ gforth_quit \ ghc \ glass \ glypho \ kipple \ lambda \ lazyk \ linguine \ Makefile \ malbolge \ pbrain \ qbf \ rail \ rhotor \ sadol \ sceql \ trigger \ udage01 \ underload \ unlambda
00:24:39 <FireFly> Hm, no plof ,_,
00:25:32 <GreyKnight> write one :-D
00:25:46 <GreyKnight> there is no plof on the wiki
00:25:55 <FireFly> I can't remember how to compile it
00:26:07 <FireFly> http://plof.codu.org/wiki/ fwiw
00:26:11 <oerjan> plof is not esoteric
00:26:23 <GreyKnight> *more* links to click?
00:26:25 <FireFly> Fair enoughs
00:26:37 <FireFly> enough* even
00:26:50 <oerjan> `cat bin/update
00:26:50 <HackEgo> ​#!/bin/sh \ echo "$(cat the_list | xargs -d'\n'): update"
00:26:51 <FireFly> But neither is Haskell!!
00:26:58 <FireFly> `ls
00:26:59 <HackEgo> bin \ canary \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ gktemp \ ibin \ index.html \ interps \ karma \ lib \ luabuild \ paste \ quotes \ quotese \ run \ share \ test \ the_list \ wisdom \ zalgo.hs
00:27:16 <FireFly> and it clearly knows how to run haskell programs
00:27:29 <oerjan> FireFly: that was why it's not on the wiki, not why it's not in interps
00:27:33 <GreyKnight> Haskell is confusing enough to count as an honorary esolang :-)
00:27:38 <FireFly> Oh.
00:27:39 <hagb4rd> `ls usr/bin
00:27:40 <monqy> but can hackego's `update compete with sgeo's personality
00:27:43 <HackEgo> ls: cannot access usr/bin: No such file or directory
00:27:47 <hagb4rd> `ls /usr/bin
00:27:48 <HackEgo> ​[ \ 2to3 \ 2to3-2.6 \ a2p \ addpart \ addr2line \ aot-compile \ appletviewer \ apropos \ apt \ apt-cache \ apt-cdrom \ apt-config \ apt-extracttemplates \ apt-ftparchive \ apt-get \ aptitude \ aptitude-create-state-bundle \ aptitude-curses \ aptitude-run-state-bundle \ apt-key \ apt-mark \ apt-sortpkgs \ ar \ arch \ as \ awk \ axi-cache \ base64
00:27:56 <GreyKnight> monqy: I doubt it.
00:28:02 <Bike> `install sgeo
00:28:02 <hagb4rd> `ls /usr/bin | paste
00:28:03 <HackEgo> ls: cannot access /usr/bin | paste: No such file or directory
00:28:04 <HackEgo> install: missing destination file operand after `sgeo' \ Try `install --help' for more information.
00:28:06 <GreyKnight> `cat /usr/bin/[
00:28:07 <HackEgo> ​ELF............>.....@.....@.......(z..........@.8..@.........@.......@.@.....@.@........................................@......@............................................@.......@.....u......u........ ............u......u`.....u`.....p.............. ...........u......u`.....u`............................
00:28:11 <hagb4rd> `run ls /usr/bin | paste
00:28:12 <FireFly> Nice
00:28:16 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.14597
00:28:21 <Bike> `run mv sgeo $(which update)
00:28:23 <HackEgo> mv: cannot stat `sgeo': No such file or directory
00:28:24 <GreyKnight> hm maybe I should've file'd it first :-)
00:29:23 <GreyKnight> I like how HackEgo contains /usr/bin/aptitude-curses, how are we supposed to use that?!
00:30:32 * GreyKnight tries it in private, gets expected garbage
00:30:44 <Bike> `aptitude-curses
00:30:57 -!- copumpkin has quit (Ping timeout: 248 seconds).
00:31:29 -!- copumpkin has joined.
00:31:48 <HackEgo> ​[1;24r[0;10m[4l[?7h[39;49m[?1000h[?25l[?1c[39;49m[0;10m[H[J[24d[0;10;1m[37m[41m[J[H[37m[44m Actions Undo Package Resolver Search Options Views Help[K
00:31:56 <Bike> pretty
00:32:10 <FireFly> `cat /dev/urandom | hexdump -C | less
00:32:12 <HackEgo> cat: /dev/urandom | hexdump -C | less: No such file or directory
00:32:12 <FireFly> er
00:32:16 <FireFly> `run cat /dev/urandom | hexdump -C | less
00:32:18 <HackEgo> 00000000 57 e0 19 43 83 b8 be 92 4c 8a 68 87 c6 5f ae df |W..C....L.h.._..| \ 00000010 66 50 15 32 bb 8f 48 a2 fc 58 78 50 35 b3 7c 31 |fP.2..H..XxP5.|1| \ 00000020 31 a5 c2 7d 4f e5 1d 2b 02 5f 5e e6 63 f6 88 ab |1..}O..+._^.c...| \ 00000030 02 49 5f 89 48 b1 68 bc 09 be 4f 99 0a d6 20 a3 |.I_.H.h...O... .| \ 00000040 ca da 4f c6 ab 0
00:32:26 <Bike> not pretty
00:32:35 <kmc> `run base64 /dev/urandom
00:32:36 <HackEgo> mVJnSjwftK95Zyx8f8GkXRRlJ8chsnslHIlp1XzcR4mdgOzg26oUZoLIjXfrg6/G5MHnco1wSQdW \ F1VQnLnImapZhyLkqwVWb7QskNTJofO008uTsucre/cvYXZACci97uy8NU3egKs4aEtqQXaqe4/Q \ j3uhPl0xLBA5dqYBt8VaHVrwaiVEnCogIgRmr88yXZNR8D67BGwPeTwZkkTq5xEMTeT/8XOwb9LD \ wXL/eYryzlJZ9ZJzc9PVWtYOvXfynYERs8NfR8zg8RDtVxcC/33Fq/3GojBhJXSbcjoEg7F9mtIE \ Lj/WdVicmyLDKLzNXi+0Vix98JU6HGaIXd
00:32:40 <FireFly> `run cat /dev/urandom | hexdump -C | vi -
00:33:09 -!- SirCmpwn has quit (Changing host).
00:33:09 -!- SirCmpwn has joined.
00:33:15 <kmc> `run ls -la /proc/self/fd/
00:33:30 <FireFly> umm
00:33:39 <FireFly> HackEgo: you alive?
00:33:43 <HackEgo> Vim: Warning: Output is not to a terminal
00:33:45 <HackEgo> total 0 \ dr-x------ 2 5000 5000 0 Jan 12 00:33 . \ dr-xr-xr-x 7 5000 5000 0 Jan 12 00:33 .. \ lr-x------ 1 5000 5000 64 Jan 12 00:33 0 -> /tty1 \ l-wx------ 1 5000 5000 64 Jan 12 00:33 1 -> pipe:[66] \ l-wx------ 1 5000 5000 64 Jan 12 00:33 2 -> /tty1 \ lr-x------ 1 5000 5000 64 Jan 12 00:33 3 -> /console \ l-wx------ 1 5000 5000 64 Jan 12 00:33
00:33:47 -!- impomatic has quit (Quit: impomatic).
00:33:49 <FireFly> Oh, good
00:34:01 <GreyKnight> "I think I heard that monads are about something involving overloading burrito operators in an endospacesuit category. I don't know, it sounds pretty complicated."
00:34:21 <Bike> `? endospacesuit
00:34:23 <HackEgo> endospacesuit? ¯\(°_o)/¯
00:34:29 <FreeFull> cospacesuit
00:34:30 <kmc> /tty1?
00:34:34 <kmc> `run stat /tty1
00:34:34 <GreyKnight> vim takes about a minute to start up apparently
00:34:36 <HackEgo> stat: cannot stat `/tty1': No such file or directory
00:34:46 <FreeFull> GreyKnight: That shouldn't happen
00:34:53 <FireFly> Or the timeout is after about a minute
00:35:01 <FireFly> (and that is when the output is collected)
00:35:08 <kmc> `run stat /console
00:35:09 <HackEgo> stat: cannot stat `/console': No such file or directory
00:35:22 <FreeFull> `run echo echo echo
00:35:23 <HackEgo> echo echo
00:35:35 <FreeFull> Let's try implementing an infinite list in bash
00:35:37 <hagb4rd> `run sleep 2; stat /tty1
00:35:41 <HackEgo> stat: cannot stat `/tty1': No such file or directory
00:35:46 <FreeFull> `run yes :D | tr -d '\n'
00:35:47 <HackEgo> ​:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:D:
00:36:20 <FreeFull> Pipes are partially lazy :D
00:36:22 <FireFly> `run (echo 8; yes =; echo D) | tr -d '\n'
00:36:24 <HackEgo> 8=============================================================================================================================================================================================================================================================================================================================================================
00:37:07 -!- ogrom has quit (Quit: Left).
00:37:40 <GreyKnight> `run yes '_,/`¯`\\,' | tr -d '\n'
00:37:42 <HackEgo> _,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,_,/`¯`\\,
00:37:43 -!- hagb4rd has quit (Quit: good night).
00:37:51 <FireFly> Fancy
00:37:58 <GreyKnight> hm too many \s
00:38:05 <FireFly> Try double quotes
00:38:05 <GreyKnight> `run yes '_,/`¯`\,' | tr -d '\n'
00:38:06 <HackEgo> _,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\,_,/`¯`\
00:38:09 <FireFly> or that
00:38:32 <FreeFull> `run cat /dev/urandom | tr -cd 'A-Za-z' | tr -d '\n'
00:38:34 <HackEgo> TLXJzjqIVvmotKMELfBLqdaOtHHwMkUotikPSoBjreENxPzqmMHeEzWSSlOOCrIXOXNVCjwXUGBDqyAKmDzUcYRHQOcXaGfuuNzOJfBGckRYARPutXorbAiUeHtNndjMWIiSUBbTftqzLatYZSccvCTCztlMSAhqBzTwroHUXEUWQYhqQktWFZIxaNbIvcNxOzjJxqTzxfdKDiTWKqyxsqLpKExeQIHkmZTGZahJomZlvBGhvhHIWoGhrUzNmqZVLJjFtnczPrmGjWmcqQwXGFWuTYSBhtskvEaCmolUrxGRjvKYdWIRbKBMNqINyClAhOtcHlVVWdIAfTEFVzdJPGrfCaEBMi
00:38:44 <FireFly> Looks like base64
00:39:05 <shachaf> why are y'all spamming the channel
00:39:06 <shachaf> stop it
00:39:14 <FreeFull> `run cat /dev/urandom | tr -cd 'A-Za-z' | tr 'A-Z' \\ | tr 'a-z' /
00:39:14 <FireFly> sowwy
00:39:15 <HackEgo> tr: warning: an unescaped backslash at end of string is not portable \ //\//\\\\//\///\\\\\\////\\\\//\\\/\\/\\\/\/\\/\/\/\\//\//\\\/\\//\/\///\///\\\//\\//////\///\/\\\\\\///\\\\/\\\\\/\///\\\/\///\\\\\/\/\\/\/\\\//\//\//\/\\\/\\\\\//\\////\//\\\/\/\\///\///\//\//////\/////\\//\\///\//\\\\\/\/\\/\//\\///\\/\\\////////\\\//\///\\//\/\\\/\////\///\\
00:39:24 <GreyKnight> yeah spamming is shachaf's job :-U
00:40:58 -!- sebbu has quit (Ping timeout: 245 seconds).
00:41:16 <oerjan> !slashes //\//\\\\//\///\\\\\\////\\\\//\\\/\\/\\\/\/\\/\/\/\\//\//\\\/\\//\/\///\///\\\//\\//////\///\/\\\\\\///\\\\/\\\\\/\///\\\/\///\\\\\/\/\\/\/\\\//\//\//\/\\\/\\\\\//\\////\//\\\/\/\\///\///\//\//////\/////\\//\\///\//\\\\\/\/\\/\//\\///\\/\\\////////\\\//\///\\//\/\\\/\////\///\\
00:41:45 <ais523> huh, why is that the same as the /dev/urandom tr'ed output?
00:42:01 * ais523 gets suspicious
00:42:03 <ais523> oh
00:42:08 <ais523> it's you saying it not a bot
00:42:36 <oerjan> SPOOOOKY
00:42:48 <shachaf> oerjan isn't a bot?
00:42:51 <oerjan> oh it starts with // no wonder it output nothing
00:43:14 <GreyKnight> do we know for sure oerjan isn't a bot?
00:43:27 <oerjan> all humans are bots, duh
00:43:38 <GreyKnight> Ö
00:44:01 <shachaf> hellørjan
00:44:01 <FreeFull> `run cat /dev/urandom | tr -cd 'A-Za-z' | tr 'A-Z' \\ | tr 'a-z' / | head -c 10
00:44:03 <oerjan> some of them are just programmed not to believe it
00:44:04 <HackEgo> tr: warning: an unescaped backslash at end of string is not portable \ //////\//\
00:44:12 <FreeFull> `run cat /dev/urandom | tr -cd 'A-Za-z' | tr 'A-Z' \\\\ | tr 'a-z' / | head -c 10
00:44:15 <HackEgo> ​\\\\\\////
00:44:17 <kmc> `run tr -cd '/\' < /dev/urandom
00:44:19 <HackEgo> tr: warning: an unescaped backslash at end of string is not portable \ \/\//\\\\//\\////\\\//\////\/\\/\\\///////\/\/\\//////\/////\//\////\////\\////\////\\/\/////\////\///\//////\\\////\\//\\\\\\\///\////////\/\\///\/\/\/\/\/\/\\/\///\//\/\///\\//\\\//\///\/\\\///\\\/\/////\////\\/\\//\/\/\\/\/\////\\/\//\\\\//\\//\/\\//\\\\\/\/\\\/\/\\//\\/\/\\/
00:44:21 <shachaf> `run cp -a bin/quoerjan bin/quørjan
00:44:25 <HackEgo> No output.
00:44:30 <shachaf> `quørjan
00:44:32 <HackEgo> 585) <oerjan> <Patashu> But wait what if I'm using a quantum computer <-- there is "quantum entropy". it's the same except no one understands it. \ 16) <fungot> oerjan: are you a man, if there weren't evil in this kingdom to you! you shall find bekkler! executing program. please let me go... put me out! he's really a tricycle! pass him! \ 59) * oe
00:44:41 <FreeFull> `shachaf
00:44:50 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: shachaf: not found
00:44:57 <kmc> `run declare -a x=('╱' '╲');while true;do echo -n ${x[$(($RANDOM%2))]};done
00:45:10 <HackEgo> ​╱╱╲╲╱╲╲╲╲╱╱╲╲╱╱╲╱╱╱╲╲╲╱╱╲╱╲╱╱╲╲╱╱╲╱╱╱╲╲╱╲╱╱╲╱╲╲╲╱╲╲╲╲╲╲╲╱╱╱╲╱╲╱╱╱╲╱╲╲╲╱╲╱╲╲╱╱╱╱╲╱╱╱╱╲╱╲╲╱╱╲╱╱╱╲╲╲╱╲╲╱╲╱╲╱╱╲╱╲╱╱╲╲╲╱
00:45:12 <oerjan> i sometimes think shachaf seems a little obsessed with me, what do you think?
00:45:22 <shachaf> oerjan: Just with your name.
00:45:26 <shachaf> It's a great name
00:45:31 <oerjan> true, true
00:45:39 <shachaf> I could say ørjan all day.
00:45:42 <kmc> character encoding fails?
00:45:45 <shachaf> ørjan ørjan ørjan
00:46:16 <FireFly> Are there any english words with /ø/?
00:46:25 <FreeFull> `run declare -a x=('╱' '╲');while true;do echo -n ${x[$(($RANDOM/4%2))]};done
00:46:27 <HackEgo> ​╱╱╲╱╱╲╱╲╱╲╲╲╱╱╱╲╲╱╱╲╲╱╱╲╲╲╱╱╱╲╱╲╱╲╲╲╱╱╱╱╲╲╲╲╲╱╲╲╱╲╱╱╱╱╲╲╲╱╲╱╱╲╱╱╲╱╱╲╱╲╱╱╱╱╱╲╲╱╲╲╱╱╲╲╱╱╱╲╱╲╱╲╲╲╱╱╱╱╱╲╲╲╲╱╲╲╱╲╲╱╱╲╱╲╱
00:46:28 <shachaf> ønglish
00:46:33 <Bike> place names? i can't think of any loanwords
00:46:51 <shachaf> Not a lone word.
00:46:55 <Bike> oh or do you mean the phoneme
00:47:00 <oerjan> elliott subtly(*) hints that shachaf is obsessed with _everyone_. (*) that is, he didn't actually say it
00:47:13 <FireFly> Yes, the phoneme
00:47:20 * FreeFull kisses shachaf to break the obsession curse
00:47:25 <shachaf> elliott: very subtle
00:48:15 <Bike> FireFly: wikipedia says it's present in south african english "bird".
00:49:21 <oerjan> is it a børd? is it a plejn?
00:49:45 <kmc> `run while true; do printf "\xe2\x95\xb$(($RANDOM%2+1))"; done
00:49:46 <HackEgo> ​╱╱╱╲╲╲╲╲╲╲╱╱╱╱╲╱╲╲╱╱╲╱╱╲╱╱╲╲╲╲╲╱╲╲╲╲╱╲╱╲╱╱╲╲╱╲╲╱╱╱╲╲╱╱╲╲╲╲╲╱╲╲╲╲╱╲╲╲╱╲╱╱╱╲╱╱╱╱╲╱╱╱╲╲╱╲╲╱╱╲╲╲╲╱╲╱╱╲╲╱╱╱╲╱╲╱╱╱╲╲╲╱╲╱╲
00:49:49 <kmc> ffs
00:50:24 <kmc> `run while true; do LC_ALL=en_US.utf-8 printf "\xe2\x95\xb$(($RANDOM%2+1))"; done
00:50:27 <HackEgo> ​╱╱╲╱╲╲╲╱╱╲╱╱╲╱╲╲╱╱╱╱╲╲╲╲╱╱╲╱╱╲╱╲╲╱╱╲╱╲╱╱╱╱╲╱╱╱╲╱╲╱╲╱╲╲╲╲╱╱╱╱╱╱╱╲╱╱╲╲╱╲╱╲╲╲╲╱╱╲╱╲╲╲╲╱╲╱╱╲╱╲╱╱╲╲╱╱╱╱╲╱╲╲╲╲╱╲╱╱╱╲╲╱╱╱╲
00:51:31 <FireFly> I guess "bird" is pretty close
00:52:05 <FireFly> Well, okay, somewhat close
00:52:17 <oerjan> elliott is now subtly(*) angry at me for referring to things he said in private, especially when he never said them. (*) ARGH STOP HITTING ME WITH THAT
00:52:48 * FireFly subtly swats oerjan -----###
00:56:43 <oerjan> all these copycat swatters around these days
00:56:46 -!- sebbu has joined.
00:56:46 -!- sebbu has quit (Changing host).
00:56:46 -!- sebbu has joined.
00:59:24 <GreyKnight> :t Monad
00:59:25 <lambdabot> Not in scope: data constructor `Monad'
01:00:00 * shachaf swats the copycats -----###
01:00:55 <shachaf> oerjan: What did he actually say to you?
01:00:58 <oerjan> :k Monad
01:01:00 <lambdabot> (* -> *) -> Constraint
01:09:14 <GreyKnight> http://www.haskell.org/haskellwiki/Monad_tutorials_timeline
01:09:32 <Bike> jesus christ.
01:09:46 <kmc> while true; do printf "\e[3$(($RANDOM%3+2));1m\xe2\x95\xb$(($RANDOM%2+1))"; done
01:10:39 <elliott> kmc: Is it just me or does that slow down the longer you leave it running?
01:12:25 <kmc> a lot of terminals suck at scrolling non-ascii chars
01:14:17 <elliott> urxvt
01:14:59 <oerjan> elliott: shachaf: sorry, i said too much stupid.
01:15:52 <oerjan> (much more stupid than whatever elliott said, anyway.)
01:20:10 <GreyKnight> `monad-tutorial
01:20:11 <HackEgo> All space stations must put their astronauts into space suits before sending them out.
01:20:31 <oerjan> wat
01:20:35 <GreyKnight> `cat bin/monad-tutorial
01:20:37 <HackEgo> ​#!/bin/sh \ shuf -n 1 wisdom/monad-tutorials
01:20:50 <GreyKnight> oerjan: prints random monad analogies from a list :-)
01:20:57 <kmc> `monad-tutorial
01:20:58 <HackEgo> All space stations must put their astronauts into space suits before sending them out.
01:21:02 <GreyKnight> (all actual examples of the breed scoured from the internet)
01:21:16 <kmc> `monad-tutorial
01:21:18 <HackEgo> Monads are like burritos.
01:21:31 <elliott> the burrito thing is not from an actual monad tutorial.
01:21:51 <shachaf> @quote copumpkin monads.are
01:21:52 <lambdabot> copumpkin says: monads are like monad tutorials
01:21:52 <GreyKnight> elliott: yeah but it's funny so.
01:21:56 <shachaf> @quote copumpkin monads.are.just
01:21:56 <lambdabot> No quotes match. :(
01:22:01 <GreyKnight> Oh I like that one
01:22:01 <shachaf> @quote copumpkin terminal
01:22:01 <lambdabot> copumpkin says: a monad is just a lax functor from a terminal bicategory, duh. fuck that monoid in category of endofunctors shit
01:22:03 <FreeFull> @quote monad
01:22:03 <lambdabot> psykotic says: the reader monad is your friend. trust the reader monad. be happy!
01:22:18 <monqy> `cat wisdom/monad-tutorials
01:22:18 <elliott> monad tutorial jokes are the most overdone thing in the universe
01:22:20 <HackEgo> Monads are a bucket brigade with project managers. \ Monads are like burritos. \ Think of a monad as a spacesuite full of nuclear waste in the ocean next to a container of apples. now, you can't put oranges in the space suite or the nucelar waste falls in the ocean, but the apples are carried around anyway, and you just take what you need. \ All sp
01:22:23 <monqy> this is bad
01:22:24 <GreyKnight> `run echo "Monads are like monad tutorials." >> wisdom/monad-tutorials
01:22:27 <HackEgo> No output.
01:22:27 <monqy> `rm wisdom/monad-tutorials
01:22:31 <HackEgo> No output.
01:22:32 <FreeFull> @quote burrito
01:22:32 <lambdabot> jmcarthur says: web monads are unicorn burritos that have been laying around in the attic for a few years
01:22:33 <monqy> `rm bin/monad-tutorial
01:22:36 <HackEgo> No output.
01:22:40 <FreeFull> @quote burrito
01:22:40 <lambdabot> kmc says: une monade est comme une crêpe. una mónada es como un burrito. eine Monade ist wie ein Strudel
01:22:45 <GreyKnight> monqy: >:-(
01:22:52 <monqy> shut up about monad tutorials shut up shut up shut up
01:22:57 <FreeFull> @quote monqy
01:22:57 <lambdabot> Plugin `quote' failed with: getRandItem: empty list
01:23:01 <shachaf> thanks monqy
01:23:03 <GreyKnight> rude
01:23:07 <monqy> you'rewelcomechaf
01:23:22 <shachaf> monqy: what's a better topic to talk about
01:23:31 <FreeFull> > words "Yep, these are words."
01:23:31 <monqy> how about lens :-)
01:23:32 <lambdabot> ["Yep,","these","are","words."]
01:23:39 <Bike> lens tutorial
01:23:45 <FreeFull> @quote lens
01:23:46 <lambdabot> roconnor says: a lens is a monoidal natural transformation between higher-order coalgebra functors, what's the problem?
01:24:02 <FreeFull> @quote coalgebra
01:24:03 <lambdabot> roconnor says: a lens is a monoidal natural transformation between higher-order coalgebra functors, what's the problem?
01:24:03 <oerjan> i think a monad may have hurt monqy once
01:24:11 <monqy> `? lens
01:24:13 <HackEgo> A lens is just a store comonad coalgebra.
01:24:21 <Bike> wow, i understand a positively weird amount of that question
01:24:22 <shachaf> `? store
01:24:24 <HackEgo> store? ¯\(°_o)/¯
01:24:31 <GreyKnight> I apologies for not having the same sense of humour as monqy I guess (!)
01:24:48 <FreeFull> `? coalgebra
01:24:50 <HackEgo> coalgebra? ¯\(°_o)/¯
01:24:51 <monqy> monad tutorial jokes are old as heck
01:25:00 <Bike> `? heck
01:25:02 <HackEgo> heck? ¯\(°_o)/¯
01:25:05 <GreyKnight> Oh okay, I'll go turn myself in to the Fun Police immediately
01:25:33 <shachaf> monqy is right btw
01:25:48 <oerjan> `learn Heck is where you end up if you don't believe in Gosh.
01:25:58 <FreeFull> monad tutorial jokes are older than programming
01:26:00 <Bike> I still want to know what an endospacesuit is for, though
01:26:02 <HackEgo> I knew that.
01:26:26 <Bike> possibly related to endoscopy?
01:27:17 <GreyKnight> `run rm -r gktemp
01:27:20 <HackEgo> No output.
01:27:22 <GreyKnight> `run rm -r luabuild
01:27:22 <oerjan> there have been movies about that.
01:27:27 <HackEgo> No output.
01:27:50 <Bike> about luabuild
01:27:51 <Bike> ?
01:28:31 <GreyKnight> `run rm bin/update the_list
01:28:32 <zzo38> Do new versions of C allow duplicate definitions?
01:28:36 <HackEgo> No output.
01:29:23 <elliott> GreyKnight: are you removing everything you added to the bot because monqy removed one thing you added to the bot
01:30:08 <GreyKnight> I removed two temp directories and a bit of humour which nobody cared about?
01:30:19 <Bike> `run echo "shachaf, elliot" > the_list
01:30:22 <HackEgo> No output.
01:30:31 <monqy> Bike: it's gotta be newline separated
01:30:46 <monqy> i applaud the sentiment though
01:30:46 <Bike> boring
01:31:00 <FreeFull> `run echo -e "shachaf\nelliot" > the_list
01:31:02 <HackEgo> No output.
01:32:09 -!- ChanServ has set channel mode: +o oerjan.
01:33:00 -!- oerjan has set channel mode: -o oerjan.
01:34:48 <GreyKnight> Interestingly I only found a handful of monad tutorial things which were halfway amusing. Most of the hits for "monad tutorial" are people complaining about how many monad tutorials there are
01:35:20 <GreyKnight> I suppose the next level is people complaining about how many complaints there are about how many monad tutorials there are?
01:35:35 <Bike> that's when it's time to just lay down and smoke a bit
01:36:11 <GreyKnight> setting fire to yourself is not the answer Bike
01:36:31 <elliott> oerjan: ?
01:36:34 <Bike> hey it worked pretty well in africa right
01:38:24 <GreyKnight>
01:38:51 <Bike> that guy was tunisian, right?
01:38:59 <Bike> yep he was. go me.
01:39:27 <Bike> he got a postage stamp!
01:42:46 <oerjan> elliott: !
01:43:03 -!- TeruFSX has joined.
01:44:32 -!- ais523 has quit.
01:45:42 -!- GreyKnight has quit (Quit: zzz).
01:45:58 <zzo38> Is there a way in a C program to tell to open a file with read-only and not allow other programs to write to that file while this program keeps it open for reading?
01:46:32 <kmc> no I don't think that's something you can do in portable C
01:46:45 <kmc> different operating systems have different forms of (advisory or mandatory) file locking
01:46:48 <Bike> that sounds like something you need os-dependent locks for
02:02:34 <zzo38> Is there any such section (in ELF and so on) as a section which cannot read/write/execute but is guaranteed to be unique pointers, which is not valid and is not the same as any valid pointers?
02:04:08 <shachaf> .section .zzo
02:05:25 -!- azaq23 has left.
02:11:06 <kmc> well in ELF you can have custom sections of any name with whatever permissions you like
02:20:22 <zzo38> But can the system and the programming language support such things which I specified?
02:31:23 <kmc> i don't understand totally what you mean
02:31:25 <kmc> but probably
02:32:51 -!- augur has quit (Remote host closed the connection).
02:35:26 <shachaf> System and Method to Support Such Things Which I Specified
02:55:59 -!- mig21a has joined.
02:56:05 -!- mig21a has quit (Client Quit).
02:58:23 <Gregor> Accordion #3!
02:58:24 <lambdabot> Gregor: You have 3 new messages. '/msg lambdabot @messages' to read them.
02:58:41 <shachaf> Gregor: How many of them are chromatic button accordions?
02:58:56 <Gregor> shachaf: Zero! This is three because #1 is in Oregon and I sold #2.
02:59:05 <Gregor> They were all roughly equivalent accordions.
02:59:08 <Gregor> *are
02:59:10 <shachaf> You should acquire a chromatic button accordion.
02:59:14 <shachaf> You would be a happier person.
02:59:17 <Gregor> shachaf: I would love to. Ain't gonna happen.
02:59:34 <Gregor> shachaf: I don't think you understand. My initial goal was a chromatic button accordion. Piano accordions are meh. But it just isn't going to happen.
02:59:51 <shachaf> Better no accordion than a piano accordion!
03:00:06 <Gregor> Well now you're just being silly.
03:00:18 <shachaf> Gregor: How about a concertina?
03:00:20 <fizzie> "Better no news than good news," goes the old saying.
03:00:28 <shachaf> One of the sane ones.
03:00:28 <Gregor> shachaf: Concertinas aren't even chromatic!
03:00:34 <shachaf> Gregor: Some of them are!
03:00:43 <shachaf> That one layout, what's-it-called.
03:01:03 <Gregor> Oh, apparently some of them are, quoth Wikipedia.
03:01:11 <shachaf> What are the popular layouts?
03:01:44 <shachaf> Hayden, was it?
03:02:37 <shachaf> http://www.concertina.com/fingering/images/hayden-W1350H480.gif
03:02:46 <shachaf> That looks chromatic to me.
03:03:06 <shachaf> And it's also not that kind where it makes a different note when you push and pull.
03:03:09 <Gregor> Wikipedia suggests English, German, and various variations on them. English is unisonoric (thank Jebus) and chromatic.
03:03:43 <shachaf> Unisonoric, that's the word.
03:03:48 <kmc> shachaf: did you read about that asterisk exploit
03:04:10 <shachaf> kmc: No! I should read that.
03:04:15 * shachaf has too many tabs open.
03:05:05 <zzo38> Why are there five uppercase letters in the diagram, and others are lowercase? They don't even have all of the notes with uppercase.
03:05:34 <shachaf> zzo38: I think it's the opposite of '
03:05:42 <shachaf> (Like people sometimes do with integrals!)
03:05:58 <shachaf> So F' = f
03:07:27 <zzo38> OK
03:07:42 <shachaf> You know how "bit" and "octave" mean the same thing?
03:08:48 <shachaf> Gregor: How do I tell a good concertina from a bad one?
03:09:12 <Gregor> shachaf: Personally, I wouldn't buy one without playing it first.
03:09:23 <Gregor> Unless it's brand new from, e.g., Hohner (if they make concertinas)
03:10:15 <shachaf> Gregor: But I don't know anything about playing concertinas.
03:10:23 <shachaf> In fact I've never played any musical instrument.
03:11:49 <Gregor> I had never played a piano accordion when I bought my first one. I just read up enough and tested what I could figure out. All that's important is that all the reeds make sound (both on push and pull), and that it sounds nice.
03:12:41 -!- carado has quit (Ping timeout: 246 seconds).
03:19:30 -!- augur has joined.
03:22:51 -!- augur has quit (Remote host closed the connection).
03:24:07 -!- augur has joined.
03:24:39 <Sgeo> monqy, Fiora if you didn't see it there was a recent update
03:25:43 -!- augur has quit (Remote host closed the connection).
03:26:26 <monqy> sgeo can you move me from this list to the supermega list. shachaf can replace me on this list.
03:26:41 <shachaf> monqy: im already on another list...........
03:26:43 <Sgeo> What's the supermega list
03:26:49 <monqy> the list for super mega
03:26:55 <monqy> i need my super mega updates
03:28:27 <elliott> i'd like to be on the super mega list too yes
03:29:14 <monqy> elliott did you see it's been updating recently!! it's a christmas miracle
03:29:37 <elliott> monqy: i did not. i often find it hard to tell whether i've seen a super mega comic before or not though
03:30:16 <oerjan> after looking at the first and last super mega comics - are you actually following this?
03:30:38 <elliott> oerjan: um super mega is fantastic
03:30:58 <oerjan> O KAY
03:32:20 <elliott> q: how can you see http://www.supermegacomics.com/index.php?i=385 and not laugh. a: maybe you're a zombie?? a skeleton, other misc. forms of dead and undeadness
03:33:53 * oerjan checks his pulse
03:34:01 -!- monqy_ has joined.
03:34:15 -!- monqy has quit (Disconnected by services).
03:34:27 -!- monqy_ has changed nick to monqy.
03:34:39 <oerjan> well i guess if i'm dead i could be imagining my pulse.
03:35:12 <zzo38> If you are dead you should not do anything.
03:35:35 <oerjan> zzo38: I DON'T ASCRIBE TO YOUR SENSELESS LIMITATIONS
03:35:54 <zzo38> You don't?
03:36:01 <zzo38> I thought you did.
03:36:17 <oerjan> ok maybe i did chuckle from the sheer absurdity of that comic. a little.
03:36:37 <oerjan> zzo38: WELL YOU WERE WRONG
03:36:53 <zzo38> O, OK.
03:37:05 -!- sebbu has quit (Ping timeout: 248 seconds).
03:37:34 <oerjan> anyway i find the evidence that elliott isn't being sarcastic inconclusive.
03:37:54 <monqy> i can assure you super mega is 100% verygood
03:38:17 <Bike> oh it has spurious quotation marks
03:38:49 <oerjan> my inconclusion stands.
03:39:26 <elliott> oerjan: sorry I actually do find super mega genuinely hilarious
03:39:32 <monqy> me too
03:39:41 <oerjan> OKAY
03:43:05 * Sgeo will not maintain a super mega list
03:43:53 <Bike> `cat the_list
03:43:55 <HackEgo> shachaf \ elliot
03:44:22 <fizzie> `update
03:44:23 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: update: not found
03:44:25 <fizzie> (Just guessing.)
03:44:43 <oerjan> @id hm
03:44:43 <lambdabot> hm
03:45:08 <oerjan> @@ @id (@tell elliott testing) (@tell fizzie testing)
03:45:08 <lambdabot> Consider it noted. Consider it noted.
03:45:08 <Bike> the lack of sgeoinality was the primary issue with update v. 1. maybe we can avoid that problem if sgeo is the architect of v. 3.
03:45:10 <fizzie> `run (cat the_list; echo update) | xargs # is that the syntax?
03:45:10 <lambdabot> fizzie: You have 1 new message. '/msg lambdabot @messages' to read it.
03:45:11 <HackEgo> shachaf elliot update
03:45:16 <fizzie> @messages
03:45:16 <lambdabot> oerjan said 9s ago: testing
03:45:22 <fizzie> What an unexpected message!
03:46:02 <elliott> oerjan: nice
03:46:02 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
03:46:06 <elliott> @messages
03:46:06 <lambdabot> oerjan said 58s ago: testing
03:46:34 <fizzie> (Okay I have to go catch a train.)
03:47:30 -!- carado has joined.
03:48:26 <zzo38> I have recorded the most recent Dungeons&Dragons session (from four days ago), except the experience points.
03:48:47 <oerjan> @read "test ho"
03:48:47 <lambdabot> test ho
03:49:31 <zzo38> What is the command in C to shorten a file?
03:49:48 <Bike> head
03:51:14 <oerjan> @@ (@id hi)
03:51:14 <lambdabot> hi
03:51:21 <oerjan> @@ (@id hi) (@id hi)
03:51:21 <lambdabot> hi hi
03:52:02 <oerjan> @@ @@ @read @run concat ["(\64tell " ++ s ++ " testing)" | s <- ["elliott", "oerjan"]]
03:52:04 <lambdabot> Consider it noted.You can tell yourself!
03:52:15 * oerjan whistles innocently
03:52:21 <shachaf> 19:45 <monochrom> I offer: sequence_ (intersperse (threadDelay 100000) (map (putStrLn . show) the_list)
03:52:35 <elliott> @messages?
03:52:35 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
03:52:37 <shachaf> Is it an omen?
03:52:39 <elliott> @messages
03:52:39 <lambdabot> oerjan said 35s ago: testing
03:53:01 <elliott> oerjan: I think I wanted this kind of sequencing before, but I forget what for.
04:00:33 -!- nooodl_ has quit (Ping timeout: 248 seconds).
04:05:05 <oerjan> `cat the_list
04:05:06 <HackEgo> shachaf \ elliot
04:05:21 <shachaf> `rm the_list
04:05:24 <HackEgo> No output.
04:19:20 <elliott> > ['a'..'z']
04:19:21 <lambdabot> "abcdefghijklmnopqrstuvwxyz"
04:21:32 <Bike> > ['ad'..]
04:21:34 <lambdabot> Syntax error on 'ad'
04:21:34 <lambdabot> Perhaps you intended to use -XTemplateHaskell
04:21:36 <Bike> aw.
04:32:18 <oerjan> > sequence [['a'..'z'],['d'..'z']]
04:32:20 <lambdabot> ["ad","ae","af","ag","ah","ai","aj","ak","al","am","an","ao","ap","aq","ar"...
04:33:07 <Bike> > ["ad"..]
04:33:09 <lambdabot> No instance for (GHC.Enum.Enum [GHC.Types.Char])
04:33:09 <lambdabot> arising from the arithm...
04:33:12 <Bike> bah!
04:34:42 <monqy> > flip replicateM ['a'..'z'] =<< [2..]
04:34:43 <lambdabot> ["aa","ab","ac","ad","ae","af","ag","ah","ai","aj","ak","al","am","an","ao"...
04:38:57 -!- Frooxius has quit (Ping timeout: 248 seconds).
04:55:14 -!- carado has quit (Ping timeout: 246 seconds).
04:59:59 -!- augur has joined.
05:35:39 -!- WeThePeople has joined.
05:38:50 <kmc> http://depts.washington.edu/sibl/Publications/Cheryan,%20Plaut,%20Davies,%20&%20Steele%20(2009).pdf
05:38:53 <kmc> 'People can make decisions to join a group based solely on exposure to that group's physical environment... In Study 1, simply changing the objects in a computer science classroom from those considered stereotypical of computer science (e.g., Star Trek poster, video games) to objects not considered stereotypical of computer science (e.g., nature poster, phone books) was sufficient to boost female undergraduates' interest in computer s
05:40:03 <Bike> "how can we make it more pink?"
05:41:17 <coppro> Bike: I suggest a sucker
05:41:23 <kmc> elephants
05:42:22 <Bike> i think the freshman cs lab had some poster of a BSD joke up, how stereotypical is that on the scale
05:43:21 <oerjan> 11.3
05:43:30 <Bike> noted
05:45:00 <coppro> Bike: doly surround sound typical
05:45:30 <Bike> dolby?
05:45:35 <oerjan> no, dolly parton
05:45:42 <oerjan> hth
05:45:53 <coppro> Bike: tis a pun
05:46:11 <Bike> fuck puns
05:46:20 <oerjan> ^rot13 fuck puns
05:46:20 <fungot> shpx chaf
05:46:54 <Bike> so close
05:47:00 <fizzie> The more edgy version of shachaf.
05:47:25 <fizzie> (Also good morning from a train.
05:47:50 <fizzie> It's an early one.
05:48:26 <oerjan> ^rot13 good morning
05:48:26 <fungot> tbbq zbeavat
05:49:28 <oerjan> bourre beaivi
05:49:44 <elliott> kmc: that cut off at "in computer s" fwiw
05:49:59 <elliott> fizzie: Are you a train again?
05:50:32 <oerjan> oh i misunderstood
05:50:55 <oerjan> i though shpx chaf was good morning from a train. they're not known for having the best PA systems.
05:51:29 <fizzie> elliott: Yes, I am a train again.
05:51:35 <oerjan> wait does fizzie take a train every morning?
05:51:48 <oerjan> *is
05:51:55 <elliott> does fizzie is a train every morning
05:52:10 <monqy> is fizzie ever not a train
05:52:16 <oerjan> does he is or does he ain't?
05:52:38 <kmc> i should get that line split whatever
05:52:52 <kmc> '...was sufficient to boost female undergraduates' interest in computer science to the level of their male peers.'
05:53:16 <kmc> fizzie: happy train
05:53:19 <oerjan> peer du lyver
05:53:43 <fizzie> Why does this thing keep reconnecting all the time.
05:54:22 <fizzie> kmc: The number of this train is "1".
05:54:39 <oerjan> is obama on it?
05:54:55 <elliott> fizzie: You're number 1.
05:55:11 <fizzie> It's not Train Force One, no.
05:55:35 <shachaf> how come there's no train force
05:56:00 <ion> which reminds me, i haven’t played OpenTTD for quite a while.
05:56:06 <quintopia> elliott: did deewiant write fizze
05:56:10 <oerjan> some armies had great success with trains in the 19th century
05:56:28 <oerjan> admittedly they probably did not fight from them
05:56:47 <fizzie> I think maybe trains are not terribly useful for an invasion. At least to a place with no railways.
05:57:09 <kmc> this is why russia uses a different rail gauge from germany
05:57:11 <quintopia> trains are indispensable for supply lines
05:57:17 <oerjan> (the prussians won a major war with austria due to it.)
05:57:18 <Bike> armored trains are the shit though.
05:57:33 <shachaf> fizzie: what about for defense against invasions
05:57:52 <quintopia> kmc: doesnt sound too difficult to deal with. just build a multigauge train carriage
05:58:14 <kmc> it is an obstacle though
05:58:17 <Bike> i think they actually did that a few times
05:58:25 <kmc> germany already had a bunch of equipment on one gauge and would have to modify it to invade
05:58:31 <Bike> but, the problem is that you have your shitload of trains already and retrofitting them would take a lot of time and money
05:58:41 <quintopia> germany was probably modifying it anyway
05:58:46 <kmc> variable gauge systems are used in spain today
05:58:57 <Bike> and i guess it's kind of hard to justify "WE NEED TO REBUILD OUR TRAIN CARRIAGES" to an oblivious military planner
05:58:57 <quintopia> they output some high quality qar shit
05:59:01 <quintopia> *war
05:59:31 <kmc> i think trains were indispensible in the first half of 20th century for moving tanks and artillery to the general battle area
05:59:43 <kmc> you don't want to drive a tank hundreds of miles, they break down and consume enormous amounts of fuel
05:59:57 <kmc> these days you would use airplanes or huge fuckoff trucks instead
06:00:12 <Bike> or both!
06:00:14 <quintopia> on the downside, they did klystron instead of vacuum magnetron for radar which was probably their biggest mistake
06:00:30 <kmc> in WWI they had some small railways in the trenches, using temporary equipment based on mining railways
06:00:53 <Bike> i hear the whole pakistan truck block and related resortion of the US military to planes cost a shitload of money though
06:00:55 <fizzie> http://en.m.wikipedia.org/wiki/Railway_gun also there's this.
06:01:08 <kmc> hm, finland and sweden use different gauges
06:01:31 <shachaf> They sought it with thimbles, they sought it with care; / They pursued it with forks and hope; / They threatened its life with a railway-share; / They charmed it with smiles and soap.
06:01:33 <Bike> hm... did different american rail companies use different gauges in order to be shitlords to one another?
06:01:40 <kmc> yes sometimes
06:01:51 <kmc> the streetcars in philadelphia are nonstandard gauge for this reason i believe
06:01:56 <Bike> nice
06:02:23 <kmc> they wanted to not get taken over by the commuter rail company (i'm not sure why)
06:02:44 <kmc> mainline railroads had lots of through-running on other people's infrastructure via trackage rights
06:02:53 <kmc> as well as frequent mergers, splits, etc
06:03:04 <kmc> so there there was more call for standardization
06:03:06 <coppro> and governments I guess weren't smart enough to go 'fuck you standard guage'
06:03:08 <coppro> ?
06:03:15 <kmc> not sure
06:03:20 <Bike> what, in the 19th century?
06:03:26 <fizzie> The http://en.m.wikipedia.org/wiki/Schwerer_Gustav is I think what I was thinking about when I mentioned railway guns.
06:03:38 <Bike> that was the one they only fired like once, wasn't it?
06:03:47 <Bike> and had shells larger than some small tanks
06:04:02 <kmc> they changed the gauge in the south of the US in one weekend
06:04:34 <kmc> 'Over a period of 36 hours, tens of thousands of workers pulled the spikes from the west rail of all the broad gauge lines in the South, moved them 3 in (76 mm) east and spiked them back in place.'
06:04:52 <fizzie> " The twin guns weighed nearly 1,350 tonnes, and could fire shells weighing seven tonnes to a range of 47 kilometers (29 mi)."
06:05:23 <kmc> finland uses Russian Close Enough Gauge
06:05:33 <Bike> kmc: man that sounds tedious
06:05:35 <kmc> 1524 mm instead of the standard Russian gauge of 1520 mm
06:05:42 <tswett> Hm. I'm trying to write a set theory into Coq. I wrote that anything can have an element, but only a set can be an element.
06:06:14 <tswett> Good ol' reverse set theory...
06:06:28 <monqy> ok
06:06:33 <oerjan> tswett: sounds perfectly right for gödel-von neumann-bernays theory
06:06:36 <Bike> shouldn't you call them "cosets" for maximum hipsterability?
06:06:42 <kmc> the USSR had rail-launched ICBMs too
06:07:00 <Bike> i thought the US did too for a bit?
06:07:16 <kmc> i think it was planned but not implemented
06:07:34 <kmc> here you can see one launch: https://www.youtube.com/watch?v=6BCoBGdvyiQ&t=0m42s
06:08:19 <kmc> and then from a truck
06:08:29 <kmc> it must be exciting to be inside the truck when this happens
06:08:31 <Bike> it doesn't fire while moving. shame
06:08:35 <oerjan> i can bomb more
06:08:36 <kmc> haha yes
06:09:01 <shachaf> Another odd Windows-people thing is that they associate the idea of a language-level exception with some sort of OS-provided facility.
06:09:42 <monqy> what does that mean
06:09:49 <Bike> jesus christ, that launch
06:09:59 <Bike> just sorta pops up and them WHAM rocket
06:10:44 <Bike> and according to the description the train one is called a Satan.
06:11:13 <Bike> oh, that's just the nato name.
06:11:25 <kmc> yeah that's the NATO code for it
06:12:03 <kmc> your pizza in 30 minutes or the next one is free
06:12:23 <Bike> i wonder if i can find a video of one of them fancy chinese carrierfucker missiles yet. probably not quite as explosive as an icbm, but still neat
06:13:22 <kmc> http://hybriddiplomacy.files.wordpress.com/2010/12/pizza.jpeg
06:13:43 <Bike> they got pretty bored in those silos, didn't they.
06:14:00 <kmc> i imagine there was a tremendous amount of masturbation
06:14:26 <Bike> kinky!
06:16:52 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
06:17:13 -!- zzo38 has quit (Remote host closed the connection).
06:19:13 -!- Nisstyre-laptop has joined.
06:22:08 <tswett> Hm, what would a reverse set theory look like, anyway?
06:22:27 <Bike> all i can think of is reverse mathematics, which is kind of not the same
06:22:41 <fizzie> It is the weirdest. The SSH connection has not completely disconnected even once, but the port-forwarded IRC one has done it five times.
06:23:04 <fizzie> Maybe the client has some kind of too eager timeout.
06:23:35 <tswett> ZFC is essentially a set of first-order axioms for V. V is constructed by starting with the empty set, and taking the powerset On times.
06:24:40 <shachaf> tswett: Got anything to say about Peano axioms?
06:24:55 <tswett> Well, that depends on whether you mean the first-order ones or the second-order ones.
06:25:13 <tswett> If you're talking about the first-order ones, rumor has it they actually have multiple models.
06:25:58 <tswett> V_0 is the empty set; for all a, a is not an element of V_0. For any ordinal number n, V_(n+1) is the power set of V_n; for all a, a is an element of V_(n+1) if and only if a is a subset of V_n.
06:26:07 <tswett> So what if you just reverse all those "element of" relations?
06:26:23 <tswett> Call the result M, for obvious reasons.
06:27:07 <tswett> For all a, a is not an element of M_0.
06:27:39 <tswett> Er, no, that's not reversed.
06:27:44 <tswett> For all a, M_0 is not an element of a.
06:27:46 <tswett> That's more like it.
06:28:09 <tswett> M_0 cannot be contained by any set. It's the yo mama set.
06:28:26 <Bike> isn't it the set of all sets (except itself)?
06:29:17 <tswett> Perhaps.
06:30:10 <tswett> M_1, then, is the... co-power-set of M_0, I guess? For all a, M_1 is an element of a if and only if a is a subset of M_0. Does that make sense?
06:30:50 <tswett> It doesn't seem to. M_0, being yo mama, must be really huge, so this would mean that M_1 is an element of everything.
06:30:59 <tswett> How about: M_1 is an element of a if and only if M_0 is a subset of a.
06:31:51 <tswett> Now M_1 is an element of M_0 and nothing else.
06:33:06 -!- TeruFSX has quit (Ping timeout: 264 seconds).
06:34:14 <tswett> Gee. V is what you get if you allow "all conceivable sets", under the restriction that there can't be an infinite chain of sets where each set contains the next.
06:36:05 <tswett> Well, if you just flip the element relation, and talk about reverse sets, then... sets behave quite like they did before, except it's like the element relation has been flipped.
06:39:52 <oerjan> tswett: aka axiom of foundation
06:40:52 <oerjan> or are you reversing that too
06:41:18 <Bike> set theory where well-founded sets aren't allowed
06:41:38 <oerjan> ooh
06:42:23 <Bike> ugh non-well-founded set theories just remind me of this shitty paper about how they supposedly are needed in biology, though
06:42:42 <monqy> ???
06:42:49 <shachaf> hi monqy
06:42:52 <monqy> hi shachaf
06:42:54 <monqy> is this about lens
06:42:54 <shachaf> do you know anything about Codensity?
06:42:57 <monqy> : )
06:42:58 <shachaf> not really
06:43:05 <monqy> i've "heard things"
06:43:11 <shachaf> what about Density
06:43:13 <shachaf> "the dual"
06:43:20 <monqy> i haven't heard much about it
06:43:32 <shachaf> so you know how Codensity is just the result of >>= right
06:43:42 <monqy> sure
06:44:08 <shachaf> so what's Density
06:44:17 <shachaf> is it "the input to <<="????
06:44:32 <monqy> is this a question to which you know the answer
06:44:43 <shachaf> not really
06:44:46 <shachaf> just trying to figure this out
06:44:51 <shachaf> data Density k a where Density :: (k b -> a) -> k b -> Density k a
06:45:04 <shachaf> so it's existential over the b
06:45:25 <shachaf> (<<=) :: Comonad w => (w b -> a) -> w b -> w a
06:45:56 <Bike> oh, aczel's theory is what i joked about, and was the thing in the paper. go me
06:46:22 <Bike> er no it doesn't mandate cycles in the graphs i guess. eh
06:47:36 <shachaf> monqy: so like can you tell me what it means
06:47:38 <shachaf> and stuff
06:48:27 -!- WeThePeople has quit (Quit: Leaving).
06:49:47 <oerjan> y'all are just being dense
06:50:59 <monqy> shachaf: it sure LOOKS like the input to <<=.......
06:51:20 <shachaf> monqy: but what's that existntial doing there.............
06:51:25 <shachaf> oh i guess it makes sense?
06:51:29 <shachaf> because you don't know what b is
06:51:32 <monqy> yes
06:51:35 <shachaf> you can still apply it to <==
06:51:38 <shachaf> <<<=
06:51:41 <shachaf> wthat thing
06:51:43 <shachaf> that
06:51:46 <monqy> yes
06:51:54 <shachaf> so that's good right?
06:51:57 <shachaf> what's it good for
06:52:04 <monqy> pfff who knows
06:52:11 <shachaf> monqy: do you "get" comonads
06:52:16 <shachaf> like what they're good for and stuff
06:52:19 <shachaf> not just what they are
06:52:26 <shachaf> like intuitions
06:53:06 <monqy> uhh istr knowing "how they work" and "how to use them" but i forget what theyre good for
06:54:36 <shachaf> monqy: btw Codensity m is bigger than m right
06:54:47 <shachaf> like Codensity (e ->) = State e??
06:55:04 <shachaf> what about Density
06:55:57 <shachaf> monqy: btw super mega is "pretty good"
06:56:06 <monqy> super mega is art
06:56:07 <shachaf> i have the feeling it might get old though??
06:56:10 <shachaf> does it get old
06:56:39 <monqy> super mega gets un-old, and it also never updates
06:56:47 <monqy> always fresh
06:57:03 <monqy> if you read it backwards it might get old though, but that's just how things go
06:57:10 <monqy> i havent tried it
06:57:15 <shachaf> what if i read it forwards
06:57:46 <monqy> the newer stuff is generally better than the older stuff
07:02:40 -!- ogrom has joined.
07:02:54 -!- ogrom has quit (Client Quit).
07:05:38 <shachaf> 53 is pretty good
07:06:09 <monqy> yes
07:06:29 <shachaf> what else is pretty good
07:06:47 <Bike> 68
07:07:18 <monqy> http://www.supermegacomics.com/images/332.gif
07:08:26 <monqy> did you see http://www.supermegacomics.com/images/385.gif linked earlier it is good
07:09:03 <shachaf> what else is good
07:09:13 <monqy> gosh so much
07:09:17 <monqy> you should find them for yourself
07:11:26 -!- oerjan has quit (Quit: leaving).
07:11:38 <monqy> http://www.supermegacomics.com/images/353.gif
07:12:55 <shachaf> btw 62 has a grammar mistake
07:12:59 <shachaf> it says it's instead of its
07:13:04 <monqy> oops
07:13:07 <shachaf> do i really want to read a comic with mistakes
07:13:49 <shachaf> head is a dinosaur is great
07:15:08 <shachaf> monqy: do you remember the girl scouts in psychonauts
07:15:39 <monqy> girl scouts......maybe??? vaguely
07:16:18 <monqy> oh the rainbow squirts???
07:16:26 <shachaf> oh right
07:16:28 <shachaf> those
07:16:38 <shachaf> what's the difference anyway
07:16:43 <shachaf> i don't know "american culture"
07:16:54 <Sgeo> Is there a list?
07:16:55 <Sgeo> `ls
07:16:58 <HackEgo> bin \ canary \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ lib \ paste \ quotes \ quotese \ run \ share \ test \ wisdom \ zalgo.hs
07:17:16 <shachaf> Sgeo: For what?
07:17:23 <Sgeo> `ls bin
07:17:24 <HackEgo> ​? \ @ \ WELCOME \ addquote \ allquotes \ anonlog \ botsnack \ calc \ define \ delquote \ emoclew \ etymology \ forget \ fortune \ frink \ google \ hatesgeo \ interp \ joustreport \ jousturl \ json \ karma \ karma- \ karma+ \ learn \ log \ logurl \ lua \ luac \ luarocks \ luarocks-admin \ macro \ maketext \ marco \ No \ pastaquote \
07:17:24 <fizzie> fungot: What do you think of dinosaurs?
07:17:26 <fungot> fizzie: but i've got great names for everyone else's hypothetical sons! love! hate to break up with utahraptor." then, hey presto, you're a muslim! give me a challenge to me!!
07:17:42 <Sgeo> Who's on the list, I forget
07:17:47 <Sgeo> Is elliott on the list
07:18:01 <shachaf> 71 is
07:18:05 <Sgeo> ?
07:18:06 <shachaf> Sgeo: Which list?
07:18:12 <Sgeo> The list list
07:18:21 <shachaf> Which one?
07:19:02 <Sgeo> `run echo "echo Taneb atriq Ngevd Fiora" > bin/list
07:19:06 <HackEgo> No output.
07:19:11 <Sgeo> I want to test it
07:19:14 <Sgeo> ~list
07:19:16 <Sgeo> `list
07:19:17 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/bin/list: Permission denied \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/bin/list: cannot execute: Permission denied
07:19:25 <shachaf> Sgeo: you can put me on the super mega list.
07:19:27 <Sgeo> `run chmod a+x bin/list
07:19:30 <HackEgo> No output.
07:19:35 <Sgeo> I am not maintaining the super mega list
07:19:38 <Sgeo> `list
07:19:39 <HackEgo> Taneb atriq Ngevd Fiora
07:20:00 <Sgeo> monqy are you on the list
07:20:06 <monqy> i'm on the super mega list
07:20:21 <Sgeo> Ok, so you're not on the existent list
07:20:28 <Bike> Sgeo: elliott is not on the list, but elliot is.
07:21:29 <shachaf> monqy: did you link 78 here before
07:21:39 <shachaf> or was that someone else/somewhere else????
07:21:53 <fizzie> Well-founded people are not on the list.
07:22:06 <monqy> probably somewhere else?
07:22:15 <monqy> somewhen else????
07:23:47 <shachaf> monqy: So any idea what these operations should be?
07:23:57 <monqy> operations??
07:24:06 <shachaf> p a -> p (a,b); p a -> p (Either a b); p (a,b) -> p a; p (Either a b) -> p a
07:24:10 <shachaf> te ones from before
07:24:12 <monqy> oh those operations
07:24:20 <monqy> i think they should just be themselves
07:24:39 <shachaf> Well, they're weaker than co/contravariance.
07:24:50 <shachaf> Because you can apply them to Endo (Endo a = a -> a)
07:25:05 <shachaf> (a -> a) -> (a,b) -> (a,b)
07:25:21 <shachaf> But it seems like there ought to be a better version of them?
07:29:12 <monqy> you said something earlier about generalising to an arbitrary (co)monad??
07:31:07 -!- zzo38 has joined.
07:31:46 <tswett> forall a : NS, forall r : N -> N -> Prop, a realizes r <-> forall x : N, x in a <-> exists y z, x = pair y z /\ r y z
07:32:10 <shachaf> monqy: well instead of ((b,a) -> a) you can have extract
07:32:25 <shachaf> monqy: and instead of (a -> Either b a) you can have return
07:32:28 <monqy> yes
07:32:36 <shachaf> but does that truly help you
07:32:42 <monqy> who knows
07:34:05 <shachaf> monqy: can you somehow reduce this down to only 2 operations
07:35:43 <shachaf> monqy: it's "kind of tricky" because Endo is Lensy and Prismy
07:35:49 <shachaf> but not Unlensy or Unprismy
07:35:59 <shachaf> lensy :: p a -> p (s, a)
07:36:04 <shachaf> prismy :: p a -> p (Either s a)
07:36:09 <shachaf> wait
07:36:21 <shachaf> yes
07:36:33 <Bike> isn't there some general thing that (a,b) and Either a b are, like a functor or whatever? Tuple a b and Either a b
07:37:03 <shachaf> Yes.
07:37:11 <zzo38> They are functors, they are also swappable but I don't know what else they would be
07:37:14 <shachaf> (b,) is a Functor, and (Either b) is a Functor
07:37:22 <shachaf> They're also bifunctors but I think that's less relevant?
07:37:37 <zzo38> (By swappable I mean to make (a,b) to (b,a) and (Either a b) to (Either b a))
07:38:35 <Bike> so uh, can't you have one operation p a -> p q a b to subsume p a -> p (a,b) and p a -> p (Either a b)
07:39:01 <shachaf> Not really?
07:39:03 <monqy> what's a pqab
07:39:23 <Bike> p (q a b)
07:39:46 <monqy> "not really" is a good answer imo
07:39:52 <Bike> fine
07:40:34 <shachaf> Bike: The issue is that one of these behaves like mapping and the other behaves like contramapping.
07:40:58 <Bike> should i even ask what the difference between contramapping and comapping is
07:41:16 <shachaf> map :: (a -> b) -> f a -> f b
07:41:23 <shachaf> contramap :: (a -> b) -> f b -> f a
07:41:38 <Bike> ...
07:41:58 <monqy> whats ... about it
07:42:14 <Bike> what does that actually do
07:42:25 <monqy> "depends on the instance"
07:42:27 <zzo38> You wrote: ...
07:42:30 <zzo38> Did you mean: !!!
07:43:24 <Bike> no, i did not mean that.
07:43:44 <Bike> monqy: how about List since that's the easydumb one for me.
07:43:52 <monqy> list isn't contravariant :-)
07:44:12 <Bike> right forget me go back to your whatevers
07:44:29 <shachaf> if you have questions ask them.....
07:44:33 <shachaf> like "what's an example"
07:44:39 <shachaf> that's a pretty good question??
07:44:57 <Bike> ok sure, what's a good example?
07:45:14 <shachaf> of what
07:45:20 <Bike> a contravariant functor.
07:45:41 <shachaf> newtype Op a b = Op (b -> a)
07:45:48 <shachaf> wait let's simplify
07:45:54 <shachaf> Predicate a = a -> Bool
07:45:57 <shachaf> that's contravariant
07:46:01 <shachaf> you can write
07:46:10 <shachaf> contramap :: (a -> b) -> Predicate b -> Predicate a
07:46:14 <shachaf> "think about it"
07:47:02 <shachaf> for example if we have a machine that can classify cats (thats the predicate)
07:47:08 <shachaf> and we can turn a dog into a cat
07:47:15 <shachaf> then we can build a machine that can classify dogs
07:47:35 <Bike> ohhhhhh.
07:48:44 <shachaf> crazy huh
07:48:55 <Bike> not that crazy, which is why it's nice
07:49:05 <shachaf> yes it's pretty simple
07:49:07 <shachaf> think of it this way
07:49:20 <shachaf> in a vague general sense, a covariant functor "produces" things
07:49:25 <shachaf> a contravariant functor "consumes" things
07:49:34 <Bike> that is a pretty vague sense
07:49:45 <shachaf> not all that vague
07:49:55 <shachaf> for example [a] "produces" as
07:50:02 <shachaf> (a list of 'a's)
07:50:07 <shachaf> it might produce 0 'a's
07:50:13 <shachaf> or it might produce a lot
07:50:16 <shachaf> but it's always producing
07:50:27 <shachaf> (Bool -> a) also produces 'a's
07:50:36 <shachaf> and other things
07:50:40 <shachaf> also produce
07:51:25 <shachaf> well ok it's "kind of vague?"
07:51:28 <Bike> so is map Predicate remotely useful
07:51:28 <shachaf> good night monqy
07:51:34 <monqy> Proxy a is my favourite 'a' producer
07:51:47 <monqy> Const b a comes in close 2nd
07:52:01 <shachaf> monqy: i kinda prefer "data Help a"
07:52:07 <shachaf> ie Const Void
07:52:14 <monqy> ahh yes
07:52:17 <monqy> p.good
07:52:50 <monqy> Bike: well if you have the cat classifier and a cat->dog transmogrifier...........
07:52:52 <shachaf> btw remember my logarithm class
07:53:16 <shachaf> Bike: i think monqy is implying "theres not much you can do"
07:53:24 <shachaf> you're "out of luck"
07:53:26 <shachaf> "game over??"
07:53:35 <Bike> "no" is like, one word
07:53:44 <Bike> but ok
07:53:48 <shachaf> it would be very useful
07:53:51 <shachaf> you just can't write it
07:53:57 <shachaf> (well you can in this case)
07:54:02 <shachaf> (but it wouldn't obey the laws)
07:54:08 <shachaf> LAW NUMBER 1
07:54:12 <shachaf> contramap id x = x
07:54:20 <shachaf> actually that's all you need in haskell i think??
07:54:46 <monqy> :o
07:54:56 <Bike> law number 2: "the rest of haskell"
07:55:17 <shachaf> monqy: it's because of "parateremicity"
07:55:22 <monqy> ye
07:55:26 <shachaf> at least it works for functors
07:55:35 <shachaf> i guess why wouldn't it work for contravariant functors
07:55:37 <shachaf> right?
07:55:47 <monqy> i hvaent thought about it
07:55:48 <shachaf> but actually i'm not quite sure what the proof is
07:55:57 <shachaf> so i don't know......
08:09:42 <tswett> Parametricity?
08:13:07 <Sgeo> I keep thinking of covariant as being on the result side of a function and contravariant as being on the input side
08:13:25 <monqy> ok
08:13:46 <Sgeo> What's a non-function example of a contravariant functor?
08:14:17 <Sgeo> Well, input side isn't contravariant as much as it is negate variance, I think
08:15:41 <Sgeo> `list
08:15:45 <HackEgo> Taneb atriq Ngevd Fiora
08:16:34 <monqy> you can ``check out'' an instance list at http://hackage.haskell.org/packages/archive/contravariant/0.2.0.2/doc/html/Data-Functor-Contravariant.html
08:16:41 <monqy> of course there are more instances they just aren't on that list
08:16:47 <monqy> but maybe you'll get an idea???
08:17:53 <Sgeo> Predicates are functions
08:18:02 <Sgeo> Comparisons are functions
08:18:10 <Sgeo> Equivalences
08:18:19 <monqy> well arent you mr. picky
08:18:40 <Bike> how about id
08:19:38 -!- Bike has quit (Quit: hello).
08:19:58 <monqy> idk what you mean by id but bye bye
08:20:24 <Jafet> > id k
08:20:26 <lambdabot> k
08:55:12 <zzo38> I don't have four energy!
08:56:30 -!- Taneb has joined.
08:58:05 <zzo38> I want to add some command or parameter or something to Internet Quiz Engine to allow four boolean questions to take up one byte of the selector string, but am not quite sure.
09:08:56 -!- Taneb has quit (Quit: Leaving).
09:41:37 -!- epicmonkey has joined.
09:44:19 <Sgeo> Numberwang is the best thing ever
10:10:49 -!- impomatic has joined.
10:40:08 <FreeFull> Sgeo: It's time for wangernumb
10:49:56 -!- mekeor has joined.
10:50:10 -!- sploknee has joined.
11:00:07 <Sgeo> FreeFull, is the German one in actual German, or nonsense?
11:00:31 -!- Nisstyre-laptop has quit (Quit: Leaving).
11:07:00 -!- Zerker has joined.
11:07:29 -!- carado has joined.
11:14:22 -!- zzo38 has quit (Remote host closed the connection).
11:16:48 -!- Zerker has quit (Quit: Colloquy for iPad - Timeout (10 minutes)).
11:23:53 -!- monqy has quit (Quit: hello).
11:35:59 -!- sploknee has quit (Ping timeout: 260 seconds).
11:36:53 -!- sploknee has joined.
11:49:51 -!- sebbu has joined.
11:49:51 -!- sebbu has quit (Changing host).
11:49:51 -!- sebbu has joined.
11:49:53 -!- epicmonkey has quit (Ping timeout: 248 seconds).
11:53:24 <Sgeo> `list
11:53:25 <HackEgo> Taneb atriq Ngevd Fiora
12:03:06 <FreeFull> Sgeo: No idea
12:03:14 <nortti> `which list
12:03:16 <HackEgo> ​/hackenv/bin/list
12:03:29 <nortti> `run cat list | paste
12:03:34 <HackEgo> cat: list: No such file or directory \ http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.3232
12:03:41 <nortti> `run cat bin/list | paste
12:03:46 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.21316
12:04:05 <FreeFull> > k
12:04:07 <lambdabot> k
12:04:12 <FreeFull> @src k
12:04:12 <lambdabot> Source not found.
12:04:16 <FreeFull> :info k
12:04:24 <FreeFull> :list k
12:04:54 <FreeFull> @pl \x y z -> cos x + cos y + cos z
12:04:54 <lambdabot> flip flip cos . (((.) . (+)) .) . (. cos) . (+) . cos
12:05:14 <nortti> why is there a command named list that is "echo Taneb atriq Ngevd Fiora"
12:21:18 <Sgeo> http://www.reddit.com/r/news/comments/16ffph/reddit_cofounder_aaron_swartz_commits_suicide/
12:21:30 <Fiora> nortti: it pings people when there's a homestuck update
12:21:49 <Fiora> I think sgeo set it up
12:22:16 <Sgeo> No. It pings people when I use it. I might be AFK or sleeping when there's an update
12:22:26 <Sgeo> And thus skip that list ping
12:22:39 <Fiora> clearly you need to like. hook it up to an rss thing
12:23:17 <olsner> aren't taneb, atriq and ngevd the same person?
12:24:43 <Sgeo> olsner, yes, but too lazy to try to figure out how to make it figure out which one he's using
12:55:05 -!- sebbu has quit (Ping timeout: 260 seconds).
13:08:52 -!- sebbu has joined.
13:08:52 -!- sebbu has quit (Changing host).
13:08:52 -!- sebbu has joined.
13:15:35 <oklofok> Sgeo: actual german
13:26:23 -!- DHeadshot has joined.
13:50:22 -!- nooodl has joined.
13:55:45 -!- azaq23 has joined.
13:55:57 -!- azaq23 has quit (Max SendQ exceeded).
13:56:48 -!- sirdancealot7 has quit (Ping timeout: 245 seconds).
13:57:22 -!- azaq23 has joined.
14:06:00 -!- nooodl has quit (Read error: Connection reset by peer).
14:06:12 -!- iamcal_ has quit (Quit: Planned maintenance, back soon).
14:16:58 -!- WeThePeople has joined.
14:39:11 <Sgeo> If I can't find an open-source editor to change my file smoothly, how terrible an idea is it to just open the .docx as a .zip and change the text I need in there?
14:40:07 <sploknee> awful
14:40:14 <sploknee> you will go to hell
14:41:56 <fizzie> You should try it out anyway though.
14:42:20 <fizzie> (I'd like to know what happens.)
14:42:50 <fizzie> Plus it's just hell, right?
14:44:43 <Sgeo> LibreOffice refuses to open, Google Docs says "file:///home/sgeo/Downloads/resume-2013-01-12.docx"
14:44:51 <Sgeo> No, that's not what Google Docs says
14:45:03 <Sgeo> "Sorry, we are unable to generate a view of the document at this time. Please try again later."
14:47:30 <fizzie> That was a boring result. I was hoping for something more exciting.
14:50:13 -!- DHeadshot has quit (Read error: Connection reset by peer).
14:50:15 -!- DH____ has joined.
14:53:14 <Sgeo> Maybe if I just use Microsoft Office Live...
14:53:30 -!- iamcal_ has joined.
14:54:12 <fizzie> I suppose Google Docs can edit too?
14:54:33 <Sgeo> fizzie, Google Docs does something with the spacing that makes it into 2 pages when it was originally one page
14:55:38 <fizzie> And LibreOffice does something silly too?
14:57:44 <Sgeo> LibreOffice does the same thing
15:05:22 <Sgeo> Microsoft Office Live, in edit mode, did some weird thing where it ignored some tabs, or at least didn't look like they showed up, but in view mode they were there
15:05:25 <Sgeo> So it was enoygh
15:05:29 <Sgeo> enough
15:16:15 -!- epicmonkey has joined.
15:24:18 -!- Vorpal has joined.
15:35:20 -!- nys has joined.
15:41:27 -!- DHeadshot has joined.
15:41:47 -!- DH____ has quit (Read error: Connection reset by peer).
16:09:27 -!- TeruFSX has joined.
16:19:55 -!- sploknee has quit (Read error: Operation timed out).
16:28:32 -!- oklofok has quit (Ping timeout: 255 seconds).
16:29:59 <shachaf> A whole new kind of monad tutorial! http://i.imgur.com/rxec4.png
16:34:56 -!- sploknee has joined.
16:56:13 -!- mig22 has quit (Quit: mig22).
17:09:56 -!- sploknee has left ("wait shit i'm still banned").
17:13:08 -!- Frooxius has joined.
17:27:32 -!- olsner has quit (Ping timeout: 245 seconds).
17:34:42 <Sgeo> Realm of the Mad God reminds me a very little of Mutation
17:35:07 <Sgeo> In that there's an end boss and everyone in the world is affected by the fight and by defeating the boss
17:36:37 <shachaf> Sgeo: Which lists am I on now?
17:36:56 <Sgeo> The "if I remember, and see OOTS update, I'll tell you" list
17:37:13 <shachaf> What about the super mega list?
17:37:25 <shachaf> And that one other list, I've forgotten what it's called.
17:40:01 -!- olsner has joined.
17:43:20 -!- Taneb has joined.
17:47:17 -!- azaq23 has quit (Read error: Connection reset by peer).
17:59:01 -!- Bike has joined.
18:08:54 -!- sebbu2 has joined.
18:08:55 -!- sebbu2 has quit (Changing host).
18:08:55 -!- sebbu2 has joined.
18:09:37 -!- sebbu has quit (Ping timeout: 248 seconds).
18:17:23 -!- NickOfCourse has joined.
18:21:43 -!- NickOfCourse has quit (Ping timeout: 245 seconds).
18:41:44 -!- sebbu2 has changed nick to sebbu.
18:42:41 -!- Nisstyre-laptop has joined.
19:08:26 -!- zzo38 has joined.
19:10:58 -!- DHeadshot has quit (Ping timeout: 248 seconds).
19:12:55 -!- DHeadshot has joined.
19:37:06 -!- ogrom has joined.
19:37:10 -!- AnotherTest has joined.
19:37:14 <AnotherTest> Hi
19:37:16 -!- ogrom has quit (Client Quit).
19:38:51 <Sgeo> shachaf, you're not on those lists, even if you think you're on those lists, because I'm not thinking about those lists
19:39:48 <shachaf> That's not really fair.
19:40:17 <Taneb> Sgeo, add shachaf to the lists
19:40:29 <Sgeo> I can add shachaf to the list list
19:40:41 <Sgeo> `run echo shachaf >> bin/list
19:40:47 <HackEgo> No output.
19:40:52 <Sgeo> `cat bin/list
19:40:54 <HackEgo> echo Taneb atriq Ngevd Fiora \ shachaf
19:41:05 <Sgeo> ...oops
19:41:12 <Taneb> I like how I'm 60% of the lsit
19:41:30 <Taneb> Gregor, can you add a way for HackEgo to see the channel's userlist?
19:41:48 * Sgeo would be too lazy to use that functionality, probably
19:42:09 <shachaf> `run sed -i s/shachaf// the_list
19:42:11 <HackEgo> sed: can't read the_list: No such file or directory
19:42:22 <shachaf> `run sed -i s/shachaf// bin/list
19:42:24 <HackEgo> No output.
19:42:35 <elliott> `run sed -i 's/Fiora/Fiora shachaf/' bin/list # fixed
19:42:38 <HackEgo> No output.
19:42:42 <elliott> `cat bin/list
19:42:42 <HackEgo> echo Taneb atriq Ngevd Fiora shachaf
19:42:43 <elliott> Perfect.
19:44:17 <shachaf> `run sed -i s/shachaf// bin/list
19:44:21 <HackEgo> No output.
19:45:06 <Taneb> `list
19:45:08 <HackEgo> Taneb atriq Ngevd Fiora
19:45:31 <Taneb> I'm 75% of the list, and I'm gonna see it at the same time as Sgeo now
19:48:11 <elliott> shachaf: You left a trailing space.
19:48:18 <elliott> `revert
19:48:20 <HackEgo> Done.
19:48:50 <shachaf> elliott: I don't care.
19:48:56 <shachaf> `run sed -i s/shachaf// bin/list
19:49:05 <shachaf> If you don't like trailing spaces, you fix it.
19:49:07 <shachaf> `run sed -i s/shachaf// bin/list
19:49:12 <HackEgo> No output.
19:49:23 <zzo38> FireFly's Pokemon Card puzzle seems something wrong with it; it doesn't seem to work.
19:49:42 <elliott> shachaf: I'm not the one changing bin/list!
19:50:57 <olsner> `run echo echo \''tail -n +2 $0 | paste -s -d" "; exit 0'\' \>\$1\;chmod +x \$1 > bin/makelist
19:51:00 <HackEgo> No output.
19:51:41 <olsner> ... etc
19:54:50 <olsner> hmm, paste is not the normal paste in hackego
19:58:24 <Sgeo> I think Realm of the Mad God would be more interesting if death was a total reset
19:58:58 <Sgeo> Rather than "Oh, you can keep items in vaults, more if you pay RL money, and you accumulate fame over time that doesn't reset on death that gives you stuff"
19:59:37 <olsner> perhaps Realm of the Mad God is not interesting under any circumstances
20:00:53 <Sgeo> I do generally like the idea of stats not being a permanent account thing though
20:01:02 <Sgeo> That's also a thing that interests me about LoL
20:01:17 <Sgeo> (Although in both LoL and RotMG, there are permanent stats)
20:02:43 <nortti> `sed -i bin/list 1s/$/shachaf nortti/
20:02:44 <HackEgo> Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]... \ \ -n, --quiet, --silent \ suppress automatic printing of pattern space \ -e script, --expression=script \ add the script to the commands to be executed \ -f script-file, --file=script-file \ add the contents of script-
20:02:50 -!- monqy has joined.
20:03:07 <nortti> `run sed -i '1s/$/shachaf nortti/' bin/list
20:03:10 <HackEgo> No output.
20:03:46 <shachaf> nortti..................................................
20:03:50 <shachaf> `rm bin/list
20:03:53 <HackEgo> No output.
20:03:56 <nortti> y?
20:03:59 <nortti> -wh
20:04:04 <nortti> *why?
20:04:32 <Sgeo> `revert
20:04:34 <HackEgo> Done.
20:04:39 <Sgeo> `cat bin/list
20:04:40 <HackEgo> cat: bin/list: No such file or directory
20:04:47 <Sgeo> ???
20:05:01 <FreeFull> `revert
20:05:03 <HackEgo> Done.
20:05:08 <Sgeo> `cat bin/list
20:05:10 <HackEgo> cat: bin/list: No such file or directory
20:05:13 <FreeFull> `revert 4
20:05:17 <Taneb> How tall is Michael Cera
20:05:34 <nortti> `run echo 'echo Taneb atriq Ngevd Fiora shachaf nortti' > bin/list
20:05:34 <HackEgo> Done.
20:05:37 <HackEgo> No output.
20:05:48 <shachaf> `rm bin/list
20:05:50 <HackEgo> No output.
20:05:51 <shachaf> I'm not on that list.
20:05:57 <nortti> `run echo 'echo Taneb atriq Ngevd Fiora nortti' > bin/list
20:06:00 <HackEgo> No output.
20:06:21 <monqy> hey guys whats up (is it dumb)
20:06:31 <shachaf> monqy: no (yes)
20:06:35 <elliott> `help
20:06:35 <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/
20:06:52 <Sgeo> Wait, nortti is capable of reading Homestuck?
20:07:07 <elliott> Sigh.
20:07:14 <elliott> FreeFull: Please don't use `revert if you don't know how it works.
20:07:40 <elliott> `revert 1492
20:07:46 <elliott> (One commit before `revert 4.)
20:07:53 <HackEgo> Done.
20:11:23 -!- DHeadshot has quit (Read error: Connection reset by peer).
20:13:31 -!- ais523 has joined.
20:23:27 -!- ssue has quit (Remote host closed the connection).
20:25:20 <shachaf> monqy: 106 is good
20:25:41 <nortti> `run echo 'echo Taneb atriq Ngevd Fiora nortti' > bin/list
20:25:44 <HackEgo> No output.
20:25:50 <olsner> `quote 106
20:25:52 <HackEgo> 106) <fungot> [...] i'm a law student so i am loving my bread machine
20:26:07 <Bike> `run echo " elliot" >> bin/list
20:26:11 <HackEgo> No output.
20:26:11 <shachaf> `quote 53
20:26:12 <HackEgo> 53) <Madelon> both of you, quit it with the f-bombs. <Madelon> kaelis: what's the matter? something censoring stuff you're interested in?
20:26:25 <Taneb> `ls bin/list
20:26:27 <HackEgo> bin/list
20:26:29 <shachaf> i nominate quote 53 for deletion
20:26:32 <Taneb> `cat bin/list
20:26:33 <HackEgo> echo Taneb atriq Ngevd Fiora nortti \ elliot
20:26:40 <Bike> darn
20:27:17 <nortti> 22:06 < Sgeo> Wait, nortti is capable of reading Homestuck? <-- at least I think I am. it seems to work with seamonkey 1.1.19
20:27:28 <nortti> `cat bin/list
20:27:30 <HackEgo> echo Taneb atriq Ngevd Fiora nortti \ elliot
20:27:55 <nortti> `sed -i '2d;1s/$/ elliott/' bin/list
20:27:56 <HackEgo> Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]... \ \ -n, --quiet, --silent \ suppress automatic printing of pattern space \ -e script, --expression=script \ add the script to the commands to be executed \ -f script-file, --file=script-file \ add the contents of script-
20:28:07 <nortti> `sed -i '2d' bin/list
20:28:09 <HackEgo> Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]... \ \ -n, --quiet, --silent \ suppress automatic printing of pattern space \ -e script, --expression=script \ add the script to the commands to be executed \ -f script-file, --file=script-file \ add the contents of script-
20:28:21 <Sgeo> nortti, even the flash animations?
20:28:23 <nortti> `run sed -i '2d;1s/$/ elliott/' bin/list
20:28:26 <HackEgo> No output.
20:28:29 <Sgeo> And HTML5 games?
20:28:43 <nortti> no html5
20:28:52 <nortti> flash should work
20:29:06 <nortti> I'll have to check that out
20:29:10 <Sgeo> The HTML5 games are kind of important
20:29:21 -!- oerjan has joined.
20:29:21 <Sgeo> I guess you could watch YouTube videos of people playing them
20:29:32 <nortti> ok
20:29:38 <elliott> `revert
20:29:40 <HackEgo> Done.
20:29:50 <nortti> `cat bin/list
20:29:51 <HackEgo> echo Taneb atriq Ngevd Fiora nortti \ elliot
20:30:03 <nortti> `sed -i 2d bin/list
20:30:04 <HackEgo> Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]... \ \ -n, --quiet, --silent \ suppress automatic printing of pattern space \ -e script, --expression=script \ add the script to the commands to be executed \ -f script-file, --file=script-file \ add the contents of script-
20:30:11 <nortti> `run sed -i 2d bin/list
20:30:14 <HackEgo> No output.
20:30:22 <fizzie> I always put an -e for the expression there.
20:30:29 <nortti> ah
20:30:34 <shachaf> monqy: i like FLOAT FAR REMOTE too
20:30:41 <shachaf> well part 6
20:31:10 -!- ssue has joined.
20:31:46 <fizzie> Even if it's not strictly necessary.
20:32:09 <shachaf> also part 9
20:32:38 <shachaf> and part 10
20:32:53 <Bike> `cat bin/list
20:32:55 <HackEgo> echo Taneb atriq Ngevd Fiora nortti
20:32:56 <oerjan> hm the ban list is the opposite order today of what it was yesterday
20:33:21 <oerjan> i cannot recall that i was on a different server...
20:34:51 <fizzie> Also I have to say I kind of like this Swype-style keyboard. It feels a bit like what I imagine the draw-runes-in-the-air magic in the Death Gate books to be.
20:34:56 <oerjan> perhaps there is some weird reversal when servers retell it to each other...
20:35:37 <oerjan> fizzie: do you see the ban list oldest first or newest first? :P
20:36:25 <oerjan> (i see newest first today, but it was oldest yesterday)
20:36:31 <nortti> I see it oldest first
20:36:40 <elliott> I see oldest first.
20:36:56 <oerjan> fancy
20:39:29 -!- epicmonkey has quit (Ping timeout: 248 seconds).
20:40:07 -!- aloril has quit (Ping timeout: 260 seconds).
20:40:08 <oerjan> also i think the lines are longer, they are wrapping now and i suspect the "by gibson.freenode.net, " wasn't there yesterday (and that's my current server).
20:43:20 <shachaf> http://www.supermegacomics.com/index.php?i=133
20:44:31 <fizzie> From /mode ... b or from ChanServ?
20:45:43 <oerjan> just /ban in irssi
20:46:04 <oerjan> /mode #esoteric -b gives the same
20:50:23 <shachaf> and 141??
20:51:45 <oerjan> <monqy> Proxy a is my favourite 'a' producer <-- that's _both_ covariant and contravariant, i'd think
20:52:02 <oerjan> since a isn't used at all
20:52:40 <oerjan> i'm not sure if there is any essential other way to get a type that is both
20:53:07 <oerjan> well, also Const
20:53:37 <elliott> data Friend a where Map :: (a -> b) -> Friend a -> Friend b; Contramap :: (b -> a) -> Friend a -> Friend b
20:53:40 <elliott> HTH.
20:53:43 <elliott> (OK, that violates the laws.)
20:54:06 <shachaf> oerjan: The thing with Void?
20:54:12 <shachaf> Well, it's all special cases of Const.
20:54:25 <shachaf> Const (), Const Void, Const HiMonqy
20:55:15 <shachaf> 147.. maybe
20:55:26 <fizzie> Mine was newest first.
20:55:45 <fizzie> (Sorry, a bit busy.)
20:57:03 <zzo38> When will they make Vatican III?
20:58:21 -!- atriq has joined.
20:59:11 <Bike> well let's see, vatican i was in '68
20:59:21 -!- Taneb has quit (Ping timeout: 276 seconds).
20:59:26 <Bike> so, by linear extrapolation, about 2059.
20:59:35 <oerjan> um wasn't the first one in the 19th century.
20:59:42 <Bike> 1868, yes.
20:59:48 <Sgeo> I think I may have had a bit much coffee
21:00:19 <oerjan> zzo38: well the current pope isn't very big on having doctrine changed, i think.
21:00:40 <elliott> Hmm, I thought Vatican I just went back to thousands-of-whenever-the-fuck ago.
21:00:55 <elliott> Catholicism: what's up with that??
21:00:57 <Bike> nah they weren't in the basilica
21:00:59 <oerjan> elliott: they called them councils back then
21:01:06 <oerjan> and that.
21:01:14 <oerjan> nicea is rather from rome, i assume
21:01:15 <Bike> they're all named The Council Of Wherever The Fuck We're Meeting, so
21:01:49 <oerjan> hm indeed it's vatican council as well iirc
21:02:14 <elliott> so it will be Cybervatican3000.com III
21:02:32 <Bike> hm, apparently nicea is called İznik now. cool.
21:02:50 <oerjan> "Unlike the five earlier General Councils held in Rome, which met in the Lateran Basilica and are known as Lateran Councils, it met in the Vatican Basilica, hence its name. Its best-known decision is its definition of papal infallibility."
21:03:10 * Sgeo is attempting to upgrade from Kubuntu 10.10 to a non-obsolete version
21:03:27 * Sgeo fails
21:03:28 <shachaf> http://www.supermegacomics.com/index.php?i=164
21:03:35 * atriq is attempting to actually go through with a silly idea elliott had the other day
21:03:52 <oerjan> atriq: REPENT BEFORE IT'S TOO LATE
21:03:55 <zzo38> Papal infallibility is rare, however I have read once that the way it was originally done was by popes doing bad things, however they corrected it since then.
21:03:57 <elliott> atriq: Um. What idea?
21:03:59 -!- atriq has changed nick to Taneb.
21:04:09 <Taneb> elliott, text-diagrams
21:04:14 <zzo38> What is your opinion on the Catholic doctrine and tradition and so on?
21:04:29 <Taneb> zzo38, traditioooooooon
21:04:30 <Bike> i give it 7/10.
21:04:31 <Taneb> tradition
21:04:33 <Taneb> ....
21:04:34 <elliott> Taneb: That was more "a thing I'm working on" than a one-off idea.
21:04:34 <Taneb> tradition
21:04:40 <Taneb> elliott, how far have you got with it?
21:04:49 * Sgeo watches it fail
21:04:49 <Sgeo> http://paste.ubuntu.com/1524824/
21:04:50 <Sgeo> :(
21:04:54 <oerjan> `addquote <zzo38> What is your opinion on the Catholic doctrine and tradition and so on? <Bike> i give it 7/10.
21:04:57 <HackEgo> 912) <zzo38> What is your opinion on the Catholic doctrine and tradition and so on? <Bike> i give it 7/10.
21:05:09 <elliott> Taneb: Well, I don't know of a resolution to the fundamental problem I discussed with kmc yet.
21:05:17 <shachaf> http://www.supermegacomics.com/index.php?i=170
21:05:34 <zzo38> Bike: That isn't very specific.
21:05:41 <Bike> (honestly not sure how one is supposed to answer that question. "it's pretty cool"? "i think they need more hats"?)
21:06:46 <zzo38> I don't know either. Still is isn't very specific, though.
21:07:19 <Bike> it's not a very specific question!
21:07:51 <Taneb> elliott, I'm just diving in and seeing how far I get
21:07:57 <oerjan> elliott: should i have put a [...] between those? Taneb commented on the same thing but i don't think it adds to the joke.
21:08:06 <Taneb> oerjan, nah
21:08:21 <Taneb> I was making an injoke which nobody here could reasonably get
21:08:32 <Taneb> > ['a','\NUL']
21:08:33 <lambdabot> "a\NUL"
21:08:34 <oerjan> Taneb: fiddler on the roof? >:)
21:08:43 <Taneb> oerjan, it's deeper than that
21:08:57 <oerjan> ok
21:09:02 <Taneb> My school's youth theatre made that bit ridiculous
21:09:08 <oerjan> aha
21:09:15 <Taneb> Anything that vaguely sounded like "tradition" would get sung that way
21:09:23 <Bike> elisioooooooooon
21:09:36 <Taneb> auditiooooooooooon
21:09:51 <elliott> oerjan: the elision there is fine
21:10:06 <elliott> only when lots of time passes or there's a significant amount of noise that would change the interpretation of the quote do you need a [...]
21:10:27 <Taneb> `quote insanity
21:10:28 <HackEgo> 412) <fizzie> There's that saying that the definition of insanity is doing the same thing over and over again and expecting different results. [...] <Taneb> You've just gave me a different result [...] <fizzie> It's always insane to expect different results, even when it's likely to occur.
21:11:22 <Taneb> An example of quotelision
21:11:24 * oerjan goes to youtube to find how it actually sounds
21:11:52 -!- oklopol has joined.
21:11:56 <Bike> kyrie, kyrie, kyrie elision
21:12:11 <zzo38> Such as, do you agree/disagree/neutral of things in the Catholic church, doctrine, and tradition; and if you think some things should be changed, their relation to things doing in other parts of the world, their relation with scientific things, and so on?
21:12:33 <Bike> uh, i think the pope should shut up about condoms? how about that?
21:12:39 <Taneb> I disagree with the catholic church on many points
21:12:54 <zzo38> Bike: Yes, that is the kind of things I meant.
21:13:09 <Taneb> Condoms and homosexuality mainly
21:13:17 <Taneb> As an asexual, these are big issues for me
21:13:33 <zzo38> Taneb: I, too, disagree with the Catholic church on many points.
21:13:40 <Bike> well, that's the main thing. other than that catholicism seems mostly easier to deal with than the protestants presently attempting to run the government
21:13:56 <zzo38> Bike: Yes, that is also the kind of things I meant to ask.
21:14:04 -!- AnotherTest has left.
21:14:21 <Taneb> UK, it seems every single religion out there is trying to run the government
21:14:22 <Bike> for example i think they've been cool with evolutionary theory for at least a century or so
21:15:35 <zzo38> Yes, I think so.
21:16:48 <Bike> why are you asking this?
21:17:14 <elliott> Bike: "Do or do not, there is no why." -- tolkein
21:17:14 <zzo38> I have heard once that the local diocese said that they respect homosexuality but would not have them married and things like that, but other people thought they said the Catholic church hates homosexuality. I agree that the church needs not have them married; you can go elsewhere there is a lot of everything all around.
21:17:20 -!- Nisstyre-laptop has quit (Ping timeout: 252 seconds).
21:17:42 * Sgeo would love not to be his step-mother's 411 service
21:17:51 <zzo38> I read a book yesterday about Catholic catechism; I disagree with most of it but I agree with a few.
21:17:52 <ais523> Sgeo: what does 411 do?
21:18:17 <zzo38> I disagree with humanist doctrine, for one thing.
21:18:18 <Sgeo> Information, I think, find out a phone number given a business?
21:18:42 <Sgeo> At least, that is what I was just asked to do, so not certain whether "411" was an accurate description
21:18:42 <zzo38> I also disagree with Trinity; it is completely illogical.
21:18:55 <zzo38> If you say it is symbolic, though, then I am OK with it (but still don't need it).
21:18:57 <Bike> oh, that's some old-skool heresy right there
21:19:13 <Sgeo> Wait, what's wrong with humanism?
21:19:47 <zzo38> They say humanity is the most important thing in the universe. I disagree; it is just one of many everything in the universe.
21:20:20 <oklopol> what's equally or more important?
21:20:20 <Sgeo> Humanity is the most important thing to humans, and to me that's pretty important
21:20:44 <oklopol> or incomparable
21:20:49 <monqy> um if there were intelligent aliens and they were my friends they would be pretty important to me...........
21:20:53 <Sgeo> Even if we're insignificant on some "cosmic" scale, I don't really care about the cosmic scale. It's not conscious, as far as we know
21:21:01 <Bike> have you considered gnosticism, zzo? (imagine me dressed in a mormon missionary outfit, holding a ripped up bible soaked in my blood)
21:21:15 <Bike> it's Pretty Cool
21:21:37 <zzo38> I have certainly studied all of those things, on Wikipedia and in books.
21:21:52 <Bike> then you, too, may already be Pretty Cool.
21:22:12 <SirCmpwn> learning japanese is reminding me of learning an esoteric programming langauge
21:22:52 <Sgeo> I feel weird from caffeine
21:23:56 <Bike> oh, also about catholics, i think missionaries should retroactively not be full of shit. that'd be good for all these readings I do. Thanks in retrovance catholics
21:24:00 <zzo38> "God is eternal [not limited to time], immense [not limited to space], contains all things, beyond human understanding" this much I agree with. "God chooses the Hebrews and makes them a people, gives the Jews a land, establishes the kingdom of David, ..." but this I just call mythology.
21:24:31 <Bike> deist!
21:25:44 <oerjan> trinity is insufficently illogical to be spiritually true, duh!
21:26:56 <Sgeo> Weird and absurd sounding does not inherently imply incorrect
21:27:09 <Sgeo> It does imply that pretty strong evidence is needed for it
21:27:34 <Bike> evidence? your inductive inference is no good here, son
21:27:50 <Bike> btw has anyone been to Kyuakse
21:28:21 <oerjan> @google kyuakse
21:28:23 <lambdabot> http://www.facebook.com/pages/Kyuakse/114985111848082
21:28:23 <lambdabot> Title: Update Your Browser | Facebook
21:28:29 <elliott> "humanity is the most important thing to humans" s/humans/humans who believe humanity is the most important thing to them/ presumably
21:28:40 <oerjan> VERY GOOD HIT, GOOGLE
21:28:48 <Bike> It's a small town in Burma.
21:28:52 <elliott> Bike: "retrovance" is a good word
21:29:07 <Bike> coretrovance
21:30:10 <oerjan> Bike: a more serious google search suggests it's spelled "kyaukse"
21:30:35 <elliott> It is famous for the Kyaukse Elephant Dance.
21:30:57 <Bike> so it is. i blame transliteration
21:30:58 <elliott> hmm, Wikipedia calls the country "Myanmar" in that article. but the link is to a redirect to "Burma".
21:31:11 <elliott> Bike: qhdgadfaffy
21:31:15 <Bike> it was called myanmar in the past, o'course
21:31:31 * elliott knows about the whole naming thing
21:31:37 <elliott> but it's interesting that Wikipedia can't decide which to use
21:32:14 <Bike> i would guess it's because nobody gives half a damn about kyaukse or its wikipedia article. or maybe some people do, and they're the people who edit articles on forgettable townships.
21:32:45 <elliott> so why are you asking us whether we have been there exactly :P
21:33:09 <Bike> because burma is more interesting than idle inexpert theology
21:33:10 <olsner> according to tvtropes, myanmar and burma are spelled the same way in burmese (or whatever their script is called)
21:33:19 <elliott> that's a damn good point Bike
21:33:54 <olsner> (iirc)
21:34:04 <zzo38> Well, you are correct that weird and absurd sounding does not inherently imply incorrect; nevertheless, to me, Trinity is only symbolic. It is my opinion.
21:34:42 <zzo38> Did you write on Wikipedia talk page about name of the countries, if it is necessary?
21:35:59 <Bike> hm, there are lots of norwegians here, right? how do i get to the point where i can recognize what country the name Fiskesjö is from without having to look it up? do i lick you or something?
21:36:10 <elliott> Bike: It's Finns we have a lot of.
21:36:13 <Sgeo> Does food help calm caffeinated nerves?
21:36:22 <Bike> darn and the name is swedish
21:36:22 <elliott> Feel free to lick oerjan tohugh
21:36:24 <olsner> Bike: shachaf is norwegian
21:36:25 <Bike> i'm doomed
21:36:27 <oerjan> zzo38: i doubt there is any point in us rehashing an old political issue on wikipedia
21:36:41 <elliott> oerjan: Well, it should be consistent with what the article on the country itself is called.
21:36:44 <elliott> Maybe I'll just change it.
21:37:03 <shachaf> olsner: I'm Asian...
21:37:21 <Bike> well norwegia is in eurasia.
21:37:30 <zzo38> oerjan: Well, if it is already there, there is no point, you are correct. But first you should see if it is already!
21:37:51 <oerjan> Bike: ö is the swedish letter, the danish and norweigan equivalent would be ø. otherwise, the _spelling_ seems norwegian to me, although it might be swedish as well; i think danish uses "sø" for the final subword.
21:37:59 <oerjan> (fish lake, basically)
21:38:08 <Bike> hmmmm, okay.
21:38:21 <Bike> What about the first name, Magnus? Mostly that just makes me think of an Icelandic strongman.
21:39:10 <Bike> Maybe I should have just skipped to looking up his faculty page instead of guessing nationalities randomly.
21:39:21 <elliott> oerjan: do you really call your country "norwegia"
21:39:23 <elliott> what a dumb name
21:39:35 <oerjan> elliott: not in norwegian, no.
21:39:50 <elliott> is this about the nynorsk bokmal thing
21:39:53 <olsner> is it Noreg?
21:39:56 <Bike> norweegie
21:40:02 <oerjan> the polish might call it that, they have w and words that look similar.
21:40:16 <oerjan> noreg is nynorsk, norge is bokmål.
21:40:47 <olsner> I suspect they just misspelled it while writing the nynorsk dictionary
21:40:50 <elliott> oh that top google result is the pl wikipedia article
21:40:52 <elliott> not no wikipedia
21:41:05 <Sgeo> Hmm, some page I found seems to be reassuring, but on the other hand, it seems to be agenda-y
21:41:18 <oerjan> these are presumably both from an older form similar to "norveg", which basically means north way
21:41:43 <olsner> apparently it's noregsland in faroese
21:42:07 <elliott> Sgeo: ...reassuring about what
21:42:17 <Bike> the caffeine agenda
21:42:54 <oerjan> Bike: afaict fiskesjø is not used as any well-known norwegian place name
21:42:59 <Sgeo> elliott, whether I might be in danger from how much coffee I had
21:43:30 <monqy> danger???
21:43:31 <oerjan> and latin called it "norvegia", from which many others may have borrowed it
21:43:51 <elliott> Sgeo: how much coffee have you drinken exactly...
21:44:00 <Sgeo> One extra-large cup
21:44:02 <oerjan> to a norwegian, "norvegia" is a rather bland brand of cheese.
21:44:11 <Bike> coffee isn't exactly a hard drug man
21:44:21 <Bike> unless you cut it with heroin or something you're fine
21:44:23 <oerjan> which for some reason gets marketed out the wazoo.
21:44:38 <Bike> and latin called it "norvegia" <-- vindication
21:44:51 -!- TeruFSX has quit (Ping timeout: 276 seconds).
21:44:53 <fizzie> "Norja" here.
21:45:05 <elliott> Sgeo: how are you going to die from one cup of coffee exactly
21:45:11 <elliott> people drink lots of coffee sgeo....
21:45:15 <monqy> elliott: um it was extra large
21:45:32 <monqy> he probably hasnt adjusted to the shock & terror
21:46:04 <Bike> sgeo, you really should have done some coke or hookers or telnet or something in college to loosen you up.
21:46:12 <oerjan> Bike: there are indeed many danish lakes called fiskesø, although seemingly not as the sole name
21:46:40 <Bike> lakes what
21:46:50 <elliott> Bike: telling kids to use telnet is just irresponsible
21:46:57 <elliott> what if someone steals their password
21:46:57 <olsner> Bike: maybe you could just ask magnus where he comes from
21:47:14 <Sgeo> I've telnetted before
21:47:15 <Bike> that sounds hard
21:47:42 <Bike> elliott: you gotta take risks when you're young man
21:47:56 <Sgeo> Mostly just to play on public NetHack servers though
21:48:05 <Bike> "I have written on Scandinavian outlaws, and a recent pamphlet addressed sovereign power more generally, through a discussion of the annual ritualized U.S. presidential pardon granted to one Thanksgiving turkey."
21:48:09 <olsner> the list of publications does include a bunch of entries with the note "(In Swedish)."
21:49:20 <Sgeo> I do think I'm above however much caffeine I should be consuming, I feel really weird
21:49:37 <monqy> have you ever had caffeine before, sgeo
21:50:01 <Sgeo> Yes
21:50:04 <Bike> sgeo, it's a stim
21:50:07 <Bike> it stimulates you
21:50:59 <oerjan> Bike: Magnus is a common norwegian name, our crown prince is named Håkon Magnus and his son is Sverre Magnus. also five medieval kings. however it is clearly borrowed from latin "magnus", great, probably via Carolus Magnus, the latin name of Charlemagne.
21:51:12 <Bike> i didn't know you even had a prince.
21:51:34 <elliott> oerjan: um magnus isn't THAT great imo
21:51:36 <elliott> there are better names
21:52:03 <olsner> e.g. Ultra Magnus
21:52:13 <elliott> topical: super mega magnus
21:52:48 <oerjan> oh and we shouldn't forget Magnus Carlsen >:)
21:53:39 <oerjan> elliott: it _means_ "great" you doofus :)
21:54:10 <elliott> oerjan: I take it Ørjan means frog-killer
21:54:18 <Bike> there are levels of irony here i don't think i understand
21:54:19 -!- ion has quit (Ping timeout: 276 seconds).
21:54:33 <oerjan> no, it means farmer, originally.
21:54:44 <oerjan> Bike: yeah obviously elliott realized that
21:56:17 <oerjan> four swedish kings as well
21:56:38 <oerjan> six saints
21:57:03 <oerjan> only one of which could be considered scandinavian, though
21:57:55 <oerjan> but now i'm just summarizing the english wikipedia.
21:58:02 <olsner> the current swedish royalty was imported from france
21:58:14 -!- ion has joined.
21:58:39 <oerjan> olsner: i understand they're quite happy to borrow medieval names nevertheless.
21:59:48 <oerjan> otoh wasn't there some noise about victoria's daughter not having any good swedish name
22:00:12 -!- sebbu2 has joined.
22:00:30 -!- sebbu2 has quit (Changing host).
22:00:30 -!- sebbu2 has joined.
22:01:05 <oerjan> "Estelle Silvia Ewa Mary" pretty much
22:01:37 -!- sebbu has quit (Ping timeout: 248 seconds).
22:08:17 -!- sebbu2 has quit (Ping timeout: 272 seconds).
22:08:55 <oerjan> <nortti> `run cat list | paste <-- `url hth
22:09:48 <oerjan> `cat bin/url
22:09:49 <HackEgo> ​#!/bin/bash \ if [ "$1" ] \ then \ echo 'http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/'"$1" \ else \ echo 'http://codu.org/projects/hackbot/fshg/' \ fi
22:10:15 <Bike> `url list
22:10:17 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/list
22:10:31 <oerjan> mind you that file isn't there
22:10:45 <Bike> is this a ghost??
22:10:46 <oerjan> `cat bin/paste
22:10:48 <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"
22:10:53 <oerjan> `ls list
22:10:54 <HackEgo> list
22:10:58 <oerjan> oh it is
22:11:02 <oerjan> OKAY THEN
22:11:34 <elliott> `cat list
22:11:35 <HackEgo> tail -n +2 $0 | xargs echo; exit 0 \ shachaf
22:11:38 <elliott> `cat bin/list
22:11:39 <HackEgo> echo Taneb atriq Ngevd Fiora nortti elliot
22:11:48 <elliott> IMO this is stupid
22:11:54 <shachaf> `rm list
22:11:56 <HackEgo> No output.
22:12:57 <oerjan> `run sed -i 's/^echo .*tip\//url /' bin/paste
22:13:01 <HackEgo> No output.
22:13:10 <oerjan> `run echo hi | paste
22:13:11 <elliott> oerjan: ?
22:13:12 <HackEgo> ​/hackenv/bin/paste: line 13: unexpected EOF while looking for matching `'' \ /hackenv/bin/paste: line 15: syntax error: unexpected end of file
22:13:14 <elliott> `cat bin/paste
22:13:16 <HackEgo> ​#!/bin/bash \ if [ ! "$1" ] \ then \ PASTE=- \ else \ PASTE="$1" \ fi \ \ PASTENUM="$RANDOM" \ \ mkdir -p $HACKENV/paste \ \ url paste/paste.'"$PASTENUM" \ cat "$PASTE" > $HACKENV/paste/paste."$PASTENUM"
22:13:16 <oerjan> argh
22:13:28 <oerjan> oh
22:14:18 -!- sebbu has joined.
22:14:19 -!- sebbu has quit (Changing host).
22:14:19 -!- sebbu has joined.
22:15:03 <oerjan> `run sed -i "s/paste.'/paste./" bin/paste
22:15:06 <HackEgo> No output.
22:15:10 <oerjan> `run echo hi | paste
22:15:15 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.25721
22:15:44 <oerjan> elliott: i like HackEgo's commands being modular
22:18:38 <oerjan> interestingly paste has no collision prevention.
22:20:42 <nortti> `cat bin/paste
22:20:43 <HackEgo> ​#!/bin/bash \ if [ ! "$1" ] \ then \ PASTE=- \ else \ PASTE="$1" \ fi \ \ PASTENUM="$RANDOM" \ \ mkdir -p $HACKENV/paste \ \ url paste/paste."$PASTENUM" \ cat "$PASTE" > $HACKENV/paste/paste."$PASTENUM"
22:20:44 <zzo38> Does any new C standard allow const members in a struct or union? I think functions (not function pointers) should also be allowed, but only if they are declared as const. I also thought typedefs should be allowed, but that might make the syntax difficult. (If a struct/union contains only const members, then the sizeof should be zero.)
22:20:50 <nortti> `cat bin/paste | paste
22:20:51 <HackEgo> cat: bin/paste | paste: No such file or directory
22:20:57 <nortti> `run cat bin/paste | paste
22:21:01 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.12606
22:21:21 <elliott> oerjan: I suspect that might be intentional.
22:21:30 <oerjan> nortti: ERM I JUST TRIED TO TELL YOU YOU DON'T NEED `paste FOR EXISTING FILES
22:21:50 <nortti> ok
22:22:11 <oerjan> elliott: yeah otoh someone recently decided not to clean up paste/ and seemed to imply this was for making the logs easier to browse
22:22:24 <elliott> oerjan: someone is a hypocrite and also not Gregor
22:23:20 <zzo38> (This is different to C++, which allows functions in a struct but in an entirely different way; in a way which does not fit with C, in my opinion.)
22:23:59 <elliott> "If a struct/union contains only const members, then the sizeof should be zero." but why
22:25:14 <zzo38> The const members should not take up any space. Actually, const members in a struct/union should be required to be also declared static, I think.
22:26:07 <oerjan> <FreeFull> > k
22:26:09 <oerjan> :t k
22:26:10 <lambdabot> Expr
22:26:15 <oerjan> :t var
22:26:17 <lambdabot> String -> Sym a
22:26:17 <zzo38> So that struct s { const int x; } is not allowed, but struct s { static const int x = 5; } should be OK.
22:26:22 <oerjan> hmph
22:26:24 <oerjan> :t fun
22:26:25 <lambdabot> FromExpr a => String -> a
22:26:41 <oerjan> :t val
22:26:42 <lambdabot> Not in scope: `val'
22:26:42 <lambdabot> Perhaps you meant one of these:
22:26:42 <lambdabot> `var' (imported from Data.Number.Symbolic),
22:26:47 <zzo38> Same with functions they should be static const.
22:27:26 <Bike> > var "hello"
22:27:27 <lambdabot> hello
22:27:30 <elliott> oerjan: what are you looking for?
22:27:31 <Bike> genius
22:27:38 <oerjan> FreeFull: a-z are basically defined in lambdabot as a = fun "a" :: Expr etc. except f,g,h don't have the :: Expr part
22:28:07 <oerjan> FreeFull: this makes them a primitive form of symbolic expression
22:28:30 <oerjan> and f,g,h can be used as functions since they are more overloaded.
22:29:07 <elliott> :t f
22:29:09 <lambdabot> FromExpr a => a
22:29:34 <FreeFull> > f
22:29:35 <lambdabot> Ambiguous type variable `a0' in the constraints:
22:29:35 <lambdabot> (GHC.Show.Show a0)
22:29:35 <lambdabot> ...
22:29:48 <FreeFull> oerjan: Interesting
22:30:26 <oerjan> (i think there's a var function which does fun + the :: Expr part automatically, but lambdabot chooses to import a different module's slightly similar but incompatible function of the same name instead.)
22:31:21 <oerjan> both var's have the nice property you can use them to show strings unescaped, though :)
22:31:30 <elliott> :t tex
22:31:31 <elliott> :t text
22:31:31 <lambdabot> Not in scope: `tex'
22:31:32 <lambdabot> Perhaps you meant one of these:
22:31:32 <lambdabot> `lex' (imported from Prelude),
22:31:32 <lambdabot> String -> Doc
22:31:34 <zzo38> What is your opinion of having static members of a struct/union?
22:31:35 <elliott> that too
22:31:46 <oerjan> text has the disadvantage it's strict in string length.
22:31:55 <oerjan> > text $ repeat 'a'
22:32:00 <lambdabot> mueval: ExitFailure 1
22:32:00 <lambdabot> mueval: Prelude.undefined
22:32:03 <oerjan> > var $ repeat 'b'
22:32:04 <lambdabot> bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb...
22:32:35 -!- carado has quit (Ping timeout: 246 seconds).
22:35:34 <c00kiemon5ter> `run yes b | head -n 10 | xargs printf '%s'
22:35:35 <HackEgo> bbbbbbbbbb
22:36:35 <elliott> > var $ cycle "a\n"
22:36:37 <lambdabot> a
22:36:37 <lambdabot> a
22:36:37 <lambdabot> a
22:36:37 <lambdabot> a
22:36:37 <lambdabot> a
22:36:39 <lambdabot> [21 @more lines]
22:36:42 <elliott> @more
22:36:42 <lambdabot> a
22:36:43 <lambdabot> a
22:36:45 <lambdabot> a
22:36:46 <elliott> love this feature
22:36:47 <lambdabot> a
22:36:51 <lambdabot> a
22:36:55 <lambdabot> [16 @more lines]
22:39:17 -!- asiekierka has joined.
22:57:45 -!- aloril has joined.
22:58:58 <oerjan> FreeFull: `revert does _not_ take a number of revisions to revert, but the number of a revision to revert _to_. you need to look at the hg web browser to find the number.
22:59:02 <oerjan> `help
22:59:02 <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:59:08 <oerjan> the last url there.
22:59:55 <elliott> you can also revert N revisions past iirc though i forget how, I think I implemetned that
22:59:58 <elliott> `revert --help
22:59:59 <HackEgo> abort: unknown revision '--help'!
23:00:03 <elliott> gj
23:01:52 -!- Nisstyre-laptop has joined.
23:02:01 <FreeFull> oerjan: Why did you think I thought it took the number of revisions to revert
23:02:11 -!- aloril has quit (Ping timeout: 252 seconds).
23:02:13 <FreeFull> Maybe I wanted to revert to revision 4 just to see what it was like
23:03:13 <oerjan> FreeFull: i tend not to assume people are pricks without evidence.
23:04:38 <oerjan> (some here would say even _with_ evidence. there would be more if i hadn't banned them.)
23:05:02 <oerjan> ...here i go again.
23:05:47 <elliott> oerjan: I don't think you're being cynical enough.
23:05:57 <oerjan> OKAY
23:06:47 <FreeFull> oerjan: Well, you can always go back to a revision in the future
23:06:51 <elliott> I like how 4/7 of the ban list is the same person.
23:07:02 <elliott> Also 2/7.
23:07:49 <oerjan> FreeFull: sure but if people don't notice soon enough there may be a mess of intervening information lost
23:07:56 <Bike> how does one get banned from #esoteric
23:08:27 <elliott> Bike: IME you have to try *really* hard.
23:08:30 <elliott> (this includes PH.)
23:08:37 <elliott> wait I got banned sometimes
23:08:38 <oerjan> > 90909 - 86400
23:08:40 <lambdabot> 4509
23:08:40 <elliott> ok you have to try really hard
23:08:41 <elliott> or be me
23:08:52 <Bike> how does one be elliott
23:09:00 <oerjan> now _that_ is really hard
23:09:03 <elliott> I hope we never find out.
23:21:50 -!- Taneb has quit (Quit: Leaving).
23:32:46 -!- mekeor has quit (Quit: bai bai).
23:49:07 -!- jdiez has quit (Ping timeout: 256 seconds).
23:50:28 <zzo38> Someone banned themself from Wikipedia for Lent.
23:52:25 -!- Fiora has quit (Quit: leaving).
23:52:27 <monqy> wikipedia is harmful and addictive
23:52:56 <oerjan> i think i recall someone doing the similar thing on reddit
23:53:02 <oerjan> a previous year
23:53:06 <monqy> reddit is harmful and addictive
23:54:43 <shachaf> monqy: is #esoteric harmful and addictive
23:54:59 <oerjan> of course it is!
23:55:33 <shachaf> what about #haskell-lens
23:55:44 <shachaf> "maximum addictivity??"
23:55:49 <monqy> i'm afraid of haskell lens, what if i get harmed and addicted
23:57:44 <shachaf> or worse, addicted and harmed??
23:58:22 <ais523> zzo38: banning yourself from Wikipedia is actually banned, in case it causes collateral damage
23:58:31 <ais523> strangely, banning your own bots from Wikipedia to stop them in an emergency isn't
23:58:38 -!- Bike has quit (Quit: leaving).
23:58:42 <ais523> despite apparently having the same problem
23:58:53 <ais523> presumably because the bans tend to be undone faster
23:59:21 <shachaf> ais523: Banning yourself from Wikipedia is banned?
23:59:32 <zzo38> ais523: O, OK, I didn't know those things before; now I do know.
23:59:47 <shachaf> What's the point of that?
23:59:55 <ais523> shachaf: yes, in case you have a shared IP address and you happen to catch someone else in the ban
2013-01-13
00:00:17 <ais523> you can make it a username-only ban rather than an IP ban, but sometimes people forget
00:00:18 <shachaf> Oh, I assumed you meant a username ban.
00:00:40 <shachaf> Well, presumably you won't be doing it more than once...
00:00:52 <elliott> I'm banning myself from ais523 for Lent.
00:00:59 <ais523> lent hasn't started yet
00:01:01 <zzo38> It isn't Lent yet.
00:01:09 <ion> It’s Lens.
00:01:27 <ion> pred Lent
00:01:28 <elliott> Um, it's Lent where I live.
00:01:39 -!- sebbu has quit (Ping timeout: 272 seconds).
00:01:39 <ais523> don't you live very near hexham?
00:01:41 <elliott> Lens lens lent lena lenb
00:01:46 <ais523> (hexham is very near hexham)
00:02:30 <ais523> `? hexham
00:02:39 <HackEgo> Hexham is a European town. There are nine people in Hexham, and at least two of them are in this channel. Taneb looks after the ham.
00:03:53 <ais523> just heard in an advert on TV: "The Daily Mail says it really works"
00:03:58 <ais523> is this a point in favour of the product, or against?
00:04:10 <oerjan> lens lentium
00:05:27 <kmc> ais523: haha
00:05:39 <oerjan> sorry, *lentum
00:05:52 <ion> ais523: :-D
00:06:09 -!- Bike has joined.
00:06:15 <elliott> ais523: is it a cancer cure
00:06:23 <ais523> no, it's a skin product
00:06:27 <elliott> um same thing?
00:06:35 <elliott> cures ugly cancer
00:06:53 <zzo38> ais523: It is a point against the Daily Mail, I guess.
00:07:20 <oerjan> oh Lent isn't from latin at all
00:07:27 <ais523> zzo38: there were enough of those already :)
00:07:36 <oerjan> "Shortened form of Lenten, from Old English lencten. Related to German Lenz (“springtime”), which is derived from a word related to long, because of the longer days."
00:11:04 -!- jdiez has joined.
00:16:21 -!- sebbu has joined.
00:16:21 -!- sebbu has quit (Changing host).
00:16:21 -!- sebbu has joined.
00:21:17 <shachaf> monqy: speaking of reddit have you seen http://www.reddit.com/r/EFLcomics/top/?sort=top&t=all
00:23:56 <ion> awesome
00:26:15 <monqy> i've seen stuff in that vein before but i don't do reddit so i havent seen that sub reddit
00:27:12 <shachaf> good reddit is pretty bad
00:31:29 <kmc> did Sgeo survive his coffee-trip?
00:36:07 <kmc> what kind of editor puts a BOM on a UTF-8 file??
00:39:30 <ion> :set bomb, :w
00:39:39 <kmc> oh, notebad
00:39:52 <kmc> i meant to type 'notepad' there but i'll let it stand
00:39:54 <oerjan> it's a bøm!
00:44:48 <elliott> according to /lastlog Sgeo he has not spoken since
00:44:49 <elliott> 21:49:36 <monqy> have you ever had caffeine before, sgeo
00:44:49 <elliott> 21:50:01 <Sgeo> Yes
00:44:51 <elliott> RIP
00:44:58 <Vorpal> oerjan, what is a bøm?
00:45:32 <Vorpal> oerjan, as opposed to a BOM
00:45:44 <Vorpal> is it just a Norwegian BOM?
00:49:35 <nortti> who can quess what this does before running it? http://ioccc.org/1987/korn.c
00:53:39 <ais523> nortti: purely from the year and filename, a hello world? (I haven't actually clicked the link, nor ever run the program)
00:55:48 <nortti> no
00:56:00 <nortti> main() { printf(&unix["\021%six\012\0"],(unix)["have"]+"fun"-0x60);}
00:56:06 <ais523> oh, that one
00:56:29 <ais523> I already know what it does, so I'll leave it to someone else
00:58:22 <oerjan> Vorpal: it's the kind of bøm which blows up things, i refer to the expertise of inspector clouseau on this matter
01:03:15 <nortti> once you realize what unix is and how it works it becomes pretty to understand
01:04:52 <oerjan> did you accidentally a word there or not
01:05:25 <ais523> it's a perfectly grammatical sentence as is
01:05:27 <ais523> and I rather like it
01:05:49 <ais523> (also, side effects of memes: "accidentally" has become a verb)
01:05:51 <oerjan> which is why i am unsure
01:06:15 <oerjan> verbing weirds language
01:06:26 <Vorpal> oerjan, oh okay
01:07:38 <Vorpal> <ais523> (also, side effects of memes: "accidentally" has become a verb) <-- Does OED recognize it as such though?
01:07:53 <ais523> who cares
01:08:00 <Vorpal> fair enough
01:08:59 -!- Bike has quit (Quit: leaving).
01:17:05 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
01:17:21 -!- c00kiemon5ter has joined.
01:20:49 -!- Bike has joined.
01:30:19 <FireFly> nortti: heh, glorious, took me a while to get it
01:35:17 <zzo38> FireFly: I think I solved your Pokemon Card puzzle, but it seems to be win in three, not win in two.
01:36:36 -!- aloril has joined.
01:37:32 <zzo38> FireFly: Is it supposed to be like that?
01:38:22 <FireFly> Hm
01:38:33 <FireFly> No, but I might've missed something
01:38:38 <FireFly> What is your solution?
01:39:14 <zzo38> I didn't type it but I will and will send you the file.
01:39:34 <FireFly> All right
01:40:22 <coppro> where is the puzzle?
01:41:14 <zzo38> coppro: Same where the others are. http://zzo38computer.org/textfile/miscellaneous/pokemon_card/puzzle.4 Also look at puzzle.3 if you haven't done yet.
01:43:11 -!- WeThePeople has quit (Quit: Leaving).
01:43:41 <coppro> zzo38: what does 'rc' on the active pokemon mean?
01:44:10 <zzo38> coppro: It means recycle energy. FireFly failed to specify; in my puzzles I have made it more clear.
01:44:12 <FireFly> That's a recycle energy
01:44:18 <FireFly> Oh, oops.
01:44:52 * FireFly fixes it in his local copy
01:44:58 <coppro> what does it do, again?
01:45:15 <zzo38> coppro: It is described in the Card Data.
01:48:53 -!- mig22 has joined.
01:49:44 <coppro> FireFly: I concur with zzo38; the game cannot be won in two turns assuming optimal play by the opponent
01:49:56 <coppro> FireFly: because the Charmander has insufficient energy
01:50:20 <coppro> in fact, I do not know if it is winnable at all
01:51:02 -!- aloril has quit (Ping timeout: 276 seconds).
01:51:14 <coppro> actually, yeah
01:51:41 <coppro> I think it isn't solvable
01:52:03 <zzo38> Will this work? http://sprunge.us/OYeR
01:52:05 <FireFly> Note Charizard's Energy Burn, which allows you to turn the double colorless energy into providing 2x { M } (after it's been attached)
01:52:15 <coppro> FireFly: no, it provides only one
01:52:22 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
01:52:23 <coppro> pretty sure
01:52:28 <coppro> although I'm not up on the Pokemon rules
01:52:38 -!- c00kiemon5ter has joined.
01:52:40 <zzo38> coppro: Does it? I thought it provided two, but even if it does I don't see how to win in two turns.
01:53:10 <zzo38> (It says "all energy" rather than "all energy cards", so I am assuming it is two.)
01:53:17 <coppro> ah
01:53:19 <coppro> hmm
01:53:26 -!- mig22 has quit (Ping timeout: 252 seconds).
01:53:37 <coppro> FireFly: I could do it in two if the Gust of Wind were the one that swaps *your* pokemon
01:53:48 <zzo38> Do you mean SWITCH?
01:54:01 <coppro> yeah
01:54:25 <FireFly> Oh, darn
01:54:26 <coppro> The problem is Sticky Goo
01:54:36 <coppro> You can't swap the Rattata out
01:55:08 <zzo38> Did you look at puzzle.3?
01:55:16 <coppro> not yet
01:55:34 <zzo38> coppro: Do you need to activate Rattata?
01:55:56 <coppro> zzo38: don't you need it to be active to use its power?
01:56:11 <FireFly> I think I screwed up when choosing pokemon for the opponent to have in play
01:56:12 <coppro> trickery
01:56:19 <FireFly> No, powers could be used from the bench
01:56:23 <coppro> oh ok
01:56:23 <zzo38> coppro: No. Unless it says it needs to be active, it does not have to be.
01:56:27 <coppro> ok
01:56:50 <coppro> there's still a reason, though. Rattata can survive an attack from the Dark Muk
01:57:10 <coppro> so Gust of Wind isn't required
01:57:13 <zzo38> That is true; and I have seen that.
01:57:14 <coppro> you still can't retreat though
01:57:34 <FireFly> Yeah, you're lacking one energy to be able to retreat, due to sticky goo
01:58:34 <zzo38> Does the solution I gave have any errors in it?
02:00:05 -!- DHeadshot has joined.
02:00:17 <FireFly> I can't spot any, at least
02:00:19 <FireFly> Hmm
02:00:43 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
02:00:54 <FireFly> Maybe we should just relabel it to be win-in-three instead
02:00:55 -!- c00kiemon5ter has joined.
02:01:01 -!- mig22 has joined.
02:01:38 <zzo38> OK.
02:03:08 <zzo38> What I generally do in my puzzles is to limit the number of cards in your draw pile instead.
02:03:37 <FireFly> That's also an approach I guess
02:04:01 <FireFly> Btw, have you finished PTCG GB2?
02:04:57 <zzo38> FireFly: Yes, I have won the game, however I have not beaten the computer 100 times, yet.
02:19:44 -!- Vorpal has quit (Ping timeout: 246 seconds).
02:34:26 -!- nys has quit (Read error: Connection reset by peer).
02:34:46 -!- nys has joined.
02:36:53 <FreeFull> I was thinking, you can only encode balanced trees in terms of lists within lists, right? The type system wouldn't allow unbalanced ones
02:37:24 <shachaf> There are lots of ways of encoding balanced trees that don't involve lists.
02:37:34 <shachaf> Well, it depends on how broad your meaning of "list" is.
02:38:04 <oerjan> FreeFull: you can use an empty list at any level to stop there, that's what lambdabot's Tree does
02:38:09 <oerjan> :t Node
02:38:10 <lambdabot> a -> Forest a -> Tree a
02:38:10 <FreeFull> Actually, the list wouldn't store the values at the various nodes that have children
02:38:14 <FreeFull> Just at the leaves
02:38:27 <oerjan> ah ok
02:38:58 <FreeFull> You probably could store the values at nodes if you got tuples involved
02:39:33 <oerjan> FreeFull: note that even if all leaves have the same depth (as using a fixed nesting level of lists would do) that still says nothing about the _number_ of leaves in each branch
02:39:47 <oerjan> so it can still be grossly imbalanced in that way
02:40:03 <zzo38> If it only at the leaf then you have (Free []), I think
02:40:13 <oerjan> but there are many ways of encoding trees as a Haskell datatypes, some autobalancing, some not
02:40:21 <oerjan> *-a
02:40:22 <zzo38> Although that isn't balanced
02:40:28 <FreeFull> oerjan: Oh yeah
02:40:30 <FreeFull> I didn't think of that
02:40:57 <FreeFull> How would you encode an autobalancing one?
02:41:01 <shachaf> hi zzo38
02:41:15 <shachaf> zzo38: what's the best comic strip (other than calvin and hobbes)
02:41:26 <zzo38> shachaf: I don't know
02:41:30 <FreeFull> print [[3,4],[5]]
02:41:33 <FreeFull> > print [[3,4],[5]]
02:41:34 <lambdabot> No instance for (GHC.Show.Show (GHC.Types.IO ()))
02:41:35 <lambdabot> arising from a use of ...
02:41:35 <shachaf> zzo38: IN YOUR OPINION
02:41:43 <FreeFull> > [[3,4],[5]]
02:41:44 <lambdabot> [[3,4],[5]]
02:41:50 <zzo38> Even in my opinion, I don't know.
02:42:01 <FreeFull> halvin and cobbes
02:42:31 <shachaf> halvin' calvin
02:42:41 <shachaf> modern-day zeno?
02:43:38 <oerjan> FreeFull: well for example a full binary tree can be encoded as Tree a = Leaf a | Branch (Tree (a,a))
02:44:09 <shachaf> Non-uniform data types: THE DEVIL?
02:44:24 <shachaf> Polymorphic recursion: THE DEVIL?
02:44:26 <FreeFull> oerjan: Not necessarily balanced though
02:45:25 <kmc> yes it is
02:45:42 <kmc> it is a complete binary tree with exactly 2^n elements
02:45:54 <FreeFull> Can you give an example usage?
02:46:06 <FreeFull> How do you use the Branch constructor?
02:46:08 <kmc> it's either Leaf a or Branch (Leaf (a,a)) or Branch (Branch (Leaf ((a,a),(a,a)))) or etc.
02:46:28 <shachaf> It encodes the log of the number of elements as a peano natural.
02:46:34 <kmc> it's a bitmisleading to call it 'Branch' imo
02:46:50 <kmc> because there is only one value under that Branch constructor
02:46:52 <oerjan> OKAY
02:47:12 <oerjan> i got a bit confused during writing that, but it ended up in the right form
02:47:13 <shachaf> kmc: It's foreshadowing branches yet to come.
02:47:14 <kmc> FreeFull: it's an usual sort of type because it invokes itself recursively at a different type than it was 'called' with
02:47:33 <FreeFull> Is (a,a) a tuple here?
02:47:39 <shachaf> Yes.
02:47:40 <kmc> yes a pair
02:47:48 <oerjan> also, this is a full binary tree, but i believe you can modify the (,) parts to make it e.g. a red-black tree instead.
02:48:06 * shachaf thinks non-uniform data types are "pretty cool if i do say so myself" but also rather tricky to work with.
02:48:22 <kmc> you should check out edwardk's finger trees talk: http://comonad.com/reader/2010/finger-trees/
02:48:31 <shachaf> I saw those slides.
02:48:47 <oerjan> ah yes finger trees use such a trick as well
02:48:49 <shachaf> I went through the exercise. They were trickier than they seemed.
02:49:02 <kmc> it has a type for ensuring that a 2-3 tree has the right properties
02:49:16 <oerjan> i don't recall if they're autobalanced by type though
02:49:29 <shachaf> Inferring polymorphic recursion is undecidable, too, I'm told.
02:49:51 <shachaf> I should learn about type checking and things.
02:49:59 <FreeFull> All the ( and ) get confusing
02:50:36 <shachaf> FreeFull: A tree is of the form Leaf a or Leaf (a,a) or Leaf ((a,a),(a,a)) or so on.
02:50:52 <shachaf> Well, the bottom of the tree is.
02:50:56 <shachaf> The number of tuples is decided by the number of Branch constructors.
02:51:08 <shachaf> Have you seen FunList?
02:52:15 <oerjan> shachaf: well haskell doesn't even try inferring it
02:52:24 <shachaf> data Bazaar a b t = Buy t | Trade (Bazaar a b (b -> t)) a
02:52:35 <shachaf> oerjan: Sure.
02:53:16 <FreeFull> shachaf: What sort of types would make sense for a, b and t here?
02:54:05 <shachaf> a and b could be the same type in the simple case.
02:54:16 <shachaf> So Int, Int, [Int]?
02:54:21 <shachaf> Char, Char, Text
02:54:29 <oerjan> i have a hunch that polymorphic recursion is the main thing preventing you from implementing haskell typeclasses entirely at compile time like i think C++ templates do
02:54:49 <elliott> C++ templates just inline everything, yes
02:54:49 <shachaf> What does jhc do about polymorphic recursion?
02:56:43 * oerjan thinks he's seen this discussed about jhc before but doesn't remember how it went
02:56:53 <oerjan> i don't know much about jhc
02:57:16 <shachaf> i love polymorphic recursion
02:57:20 <shachaf> it is so easy
02:57:45 <FreeFull> Speaking of completely unrelated things
02:57:57 <FreeFull> I need to write a fromInteger for my balanced ternary
02:58:30 <oerjan> hm...
02:58:34 <FreeFull> Or was it fromIntegral
02:58:40 * FreeFull checks
02:58:41 <oerjan> :t readInt
02:58:42 <lambdabot> Num a => a -> (Char -> Bool) -> (Char -> Int) -> ReadS a
02:59:42 <oerjan> > readInt 3 (`elem` "-0+") (\c -> case c of '-' -> -1; '0' -> 0; '+' -> 1) "0-+0-"
02:59:43 <lambdabot> [(-19,"")]
02:59:50 <oerjan> FreeFull: :)
03:00:18 <FreeFull> fromInteger
03:00:25 <oerjan> oh right
03:00:38 <oerjan> hmph
03:00:45 <Bike> :t fromInteger
03:00:46 <lambdabot> Num a => Integer -> a
03:01:05 -!- TeruFSX has joined.
03:01:11 <FreeFull> (fromInteger (3 :: Integer)) :: Double
03:01:15 <FreeFull> > (fromInteger (3 :: Integer)) :: Double
03:01:16 <lambdabot> 3.0
03:01:22 <oerjan> that was the wrong way of course
03:02:07 <oerjan> and the function the other way cannot be told to produce -1,0,1 digits
03:02:19 <oerjan> (showIntAtBase btw)
03:02:34 <oerjan> HOWEVER
03:03:02 <shachaf> oerjan: Can you figure out a type which is isomorphic to lists *AND* composable with (.)?
03:03:46 <oerjan> shachaf: isn't that what difference lists are supposed to be?
03:03:59 <shachaf> No, the type [a] -> [a] is much bigger than the type [a]
03:04:01 <FreeFull> I was planning to do it with `mod` and case matching, although that would be clunky
03:04:18 <oerjan> FreeFull: not _that_ clunky, surely?
03:04:21 <shachaf> oerjan: Feel free to substitute some other thing for lists, like monads.
03:04:22 <FreeFull> `? isomorphic
03:04:25 <HackEgo> isomorphic? ¯\(°_o)/¯
03:04:29 * oerjan was about to start writing it himself
03:04:42 <oerjan> shachaf: no particular idea
03:04:47 <FreeFull> oerjan: Slightly clunkier for balanced ternary than unbalanced ternary I think
03:04:57 <oerjan> FreeFull: yeah but hm i have an idea
03:05:10 <Bike> everything is represented internally as a bunch of bits. ipsofacto, arbitrary functions are both isomorphic to lists and composable with dot.
03:07:31 <shachaf> Thike
03:08:40 <FreeFull> oerjan: I wrote a function for adding two balanced ternary digits, and I have no idea if it could be terser or not
03:08:44 <FreeFull> Let me dpaste it
03:10:00 <oerjan> > let toBT 0 = ""; toBT n = c : toBT d where (d,m) = divMod (n+1) 3; c = head (show (d-1)) in toBT (-19)
03:10:01 <lambdabot> "----"
03:10:11 <FreeFull> http://dpaste.org/8CpZt/
03:10:15 <oerjan> oops
03:10:27 <oerjan> > let toBT 0 = ""; toBT n = c : toBT d where (d,m) = divMod (n+1) 3; c = head (show (m-1)) in toBT (-19)
03:10:28 <lambdabot> "-01-"
03:10:35 <shachaf> helloerjan
03:10:40 <shachaf> welcome back to #esoteric
03:10:48 <FreeFull> The first digit in the tuple is the result, the second is the carry
03:10:50 <oerjan> hi shachaf
03:11:46 <oerjan> FreeFull: the above does most of your fromInteger i think, you probably need reformatting
03:12:20 <tswett> PrimFunc (PrimSi PrimSort) PrimSort
03:12:21 <oerjan> > let toBT 0 = ""; toBT n = c : toBT d where (d,m) = divMod (n+1) 3; c = head (show (m-1)) in toBT (-1)
03:12:23 <lambdabot> "-"
03:12:28 <tswett> I think I may be prefixing my identifiers with "Prim" a little too much.
03:12:36 <oerjan> > let toBT 0 = ""; toBT n = c : toBT d where (d,m) = divMod (n+1) 3; c = head (show (m-1)) in toBT (1)
03:12:38 <lambdabot> "1"
03:14:12 <FreeFull> Hmm, [] might be a saner representation of zero over [Zero]
03:15:36 <oerjan> well i thought it was easier to fix that with a reformatting step if you needed it
03:16:40 <FreeFull> Although
03:16:55 <FreeFull> With my show instance, [] would just end up as an empty string
03:17:28 <FreeFull> Because I basically made a show instance for BTDigit and then used concatMap
03:17:50 <FreeFull> Easy to fix though
03:18:08 -!- lightquake has left ("Textual IRC Client: www.textualapp.com").
03:19:22 <FreeFull> oerjan: Do you think my addBTDigit does something wrong?
03:22:24 <oerjan> i think it gives the correct result, as for style i think it depends on what you are going for - speed, readability, shortness?
03:22:53 <shachaf> oerjan: so what do you think about lenses
03:22:56 <oerjan> seems readable enough, anyway
03:23:39 <oerjan> shachaf: lenses are a must for any aspiring astronomer
03:24:05 <shachaf> Computer science is no more about lenses than astronomy is?
03:25:02 <zzo38> I have heard of someone who made their own telescope lenses at home, without any professional anything. Someone thought they bought them from elsewhere, even though they made it at home.
03:25:46 <shachaf> What if they bought them from elsewhere, and lied about it?
03:26:18 <zzo38> It is possible, but unlikely, because they showed how they made the lenses, and try it and it works.
03:26:55 <oerjan> FreeFull: btw if you use the hpaste.org pastebin it can give automatic haskell style hints
03:27:21 <FreeFull> oerjan: Readability is nice
03:27:31 <FreeFull> It's hard to go wrong on speed for something this simple, right?
03:27:38 <oerjan> (although you can also use hlint yourself)
03:29:14 <oerjan> FreeFull: depends whether you want adequate speed or bleeding speed. in the latter case i wouldn't be competent to advise, anyway :P
03:30:02 <FreeFull> oerjan: It's not like I'm doing recursion or anything
03:30:22 <FreeFull> The only place I see where there might be a speed reduction is the min/max
03:32:00 <oerjan> FreeFull: indeed i suspect it would be faster if you wrote it as a case branch directly on the function without the min / max
03:32:07 <oerjan> which would be longer of course
03:32:26 <FreeFull> Well, conciseness and readibility is why I got the idea to use min/max =P
03:32:41 <oerjan> yep
03:33:25 <FreeFull> I wonder if there is a function Ord a => (a,a) -> (a,a) which would always put the smaller a in the tuple first
03:33:32 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:33:45 <FreeFull> I don't think it's a common thing to do
03:33:49 -!- DHeadshot has joined.
03:34:09 <oerjan> FreeFull: you can do [x,y] = sort [a,b]
03:34:24 <oerjan> might be slower though, or not
03:34:54 <FreeFull> oerjan: probably slower =P
03:35:27 <oerjan> also, if you use Control.Arrow you have min &&& max
03:35:36 <oerjan> :t min &&& max
03:35:36 <lambdabot> Ord b => b -> (b -> b, b -> b)
03:35:41 <oerjan> oops
03:36:01 <oerjan> needs more spice
03:36:18 <FreeFull> Hmm, I don't see sort in http://www.haskell.org/onlinereport/standard-prelude.html
03:36:19 <oerjan> :t curry min &&& curry max
03:36:20 <lambdabot> (Ord b, Ord b2, Ord b1) => b -> (b1 -> (b, b1) -> (b, b1), b2 -> (b, b2) -> (b, b2))
03:36:25 <oerjan> sorry, _less_
03:36:31 <oerjan> :t uncurry min &&& uncurry max
03:36:32 <lambdabot> Ord c' => (c', c') -> (c', c')
03:36:52 <oerjan> FreeFull: it's in Data.List
03:37:05 <oerjan> @hoogle sort
03:37:06 <lambdabot> Data.List sort :: Ord a => [a] -> [a]
03:37:06 <lambdabot> Data.List sortBy :: (a -> a -> Ordering) -> [a] -> [a]
03:37:06 <lambdabot> Data.ByteString sort :: ByteString -> ByteString
03:37:12 <Bike> > (uncurry min &&& uncurry max) (4,9)
03:37:13 <lambdabot> (4,9)
03:37:18 <Bike> > (uncurry min &&& uncurry max) (9,7)
03:37:20 <lambdabot> (7,9)
03:37:35 <FreeFull> Oh right
03:37:41 <FreeFull> It's not in prelude
03:37:52 -!- aloril has joined.
03:40:37 <FreeFull> sort = sortBy compare
03:40:51 <FreeFull> sortBy is pretty large
03:40:52 -!- ChanServ has set channel mode: +o oerjan.
03:41:05 <shachaf> +oerjan
03:41:06 -!- oerjan has set channel mode: -b *!*@unaffiliated/phantom-hoover/x-3377486.
03:41:19 <shachaf> Phantom_Hoover was banned?
03:41:20 -!- oerjan has set channel mode: -b *!*sploknee@unaffiliated/phantom-hoover/x-3377486.
03:41:32 <FreeFull> :t (&&&)
03:41:33 <lambdabot> Arrow a => a b c -> a b c' -> a b (c, c')
03:41:35 <oerjan> yep
03:41:39 -!- oerjan has set channel mode: -o oerjan.
03:41:49 <FreeFull> Oh, it's arrow stuff. No wonder I never saw it, haven't looked at arrows yet
03:42:02 <shachaf> @arrow
03:42:02 <lambdabot> Swab the deck!
03:42:38 <Bike> is an Arrow just a thing like ->
03:42:49 <shachaf> Yes(ish).
03:42:55 <Bike> best answer
03:43:03 <monqy> an arrow is something weird nobody likes
03:43:04 <shachaf> banswer
03:43:10 <oerjan> in particular, (->) is an Arrow instance
03:43:11 <shachaf> Bike: listen to monqy
03:43:23 <oerjan> and probably the most used one
03:43:24 <Bike> monqy, i am prepared to receive thine wisdom.
03:43:30 <shachaf> monqy: ok now Bike is listening
03:43:32 <shachaf> say somethign wise
03:43:35 <Bike> oerjan: what is another one
03:43:35 <monqy> an arrow is something weird nobody likes
03:43:42 <shachaf> monqy: something else
03:43:45 <monqy> hmmmmm
03:43:49 <Bike> something about music?
03:43:51 <Bike> i like music
03:44:42 <monqy> i need more wise things to say i cant think of anything
03:45:22 <Bike> oh, meta. that's deep
03:45:31 <shachaf> monqy: something about oerjan?
03:45:46 <FreeFull> (->) is a lot of instances
03:45:46 <shachaf> like "oerjan's name starts with o. therefore all all things that end with o lead to oerjan"
03:45:49 <monqy> oerjan is norwegian, or so they say
03:46:04 <Bike> mønjanqy... or somethinig
03:46:49 <FreeFull> :t (uncurry min &&& uncurry max)
03:46:50 <lambdabot> Ord c' => (c', c') -> (c', c')
03:46:54 <FreeFull> Oh yeah
03:47:01 <FreeFull> :t (uncurry &&& uncurry)
03:47:02 <lambdabot> (a -> b -> c) -> ((a, b) -> c, (a, b) -> c)
03:47:17 <shachaf> monqy: did you know i'm your "third biggest fan"
03:47:26 <shachaf> or maybe fourth
03:47:28 <shachaf> not sure
03:47:40 <FreeFull> :t (\x y -> uncurry x &&& uncurry y)
03:47:41 <lambdabot> (a -> b -> c) -> (a -> b -> c') -> (a, b) -> (c, c')
03:47:51 <oerjan> Bike: Monad m => Arrow (Kleisli m)
03:48:02 <Bike> cool
03:48:25 <oerjan> newtype Kleisli m a b = Kleisli (a -> m b) iirc
03:48:26 <FreeFull> So Arrow pretty much covers everything you could do?
03:48:43 <shachaf> oerjan: You know how (forall c. (b -> m c) -> a -> m c) is like Kleisli but composable with (.)?
03:48:51 <FreeFull> Comonads obviously would be Arrow instances too
03:48:54 <elliott> what
03:48:58 <shachaf> Er, wait.
03:49:08 <shachaf> Well, yes?
03:49:19 <shachaf> (Except the type is too big!!!!!!)
03:50:38 <FreeFull> http://www.haskell.org/arrows/ I see haskell.org has a big arrow tutorial thing
03:50:48 <shachaf> FreeFull: Ignore arrows.
03:50:57 <shachaf> There's no point.
03:51:16 <Bike> I hear they're something weird nobody likes.
03:51:29 <monqy> what about all those libraries that use arrows!!! god knows why
03:51:37 <Bike> "They serve much the same purpose as monads -- providing a common structure for libraries -- but are more general." hahaha
03:51:57 <oerjan> shachaf: er not really.
03:52:25 <monqy> the point of arrows is stupid lambdabot 1liners
03:52:43 <monqy> and maybe jokes???
03:52:44 <shachaf> oerjan: Not really what?
03:52:50 <shachaf> monqy: i like jokes, tell me a joke
03:53:01 <monqy> "arrows"
03:53:27 <Bike> yeah i noticed it said artwork by cale. is this the cale of the infamously fabulous caleskell
03:53:54 <shachaf> Surely.
03:54:18 <oerjan> shachaf: not really know how.
03:54:37 <shachaf> oerjan: The same way (x ++) is like x, but composable with (.)
03:54:53 <FreeFull> Could you make arbitrary C code into valid haskell by adding something at the top of the file? No adding anything at the bottom
03:54:55 <oerjan> O KAY
03:56:10 <oerjan> FreeFull: i don't think so, you need an end marker for both template quasiquotes and comments
03:56:31 <oerjan> FreeFull: or wait, _maybe_ you could have an extra preprocessing directive
03:57:03 <oerjan> i don't know if ghc supports doing that from top pragmas without parsing the rest, though
03:57:42 <oerjan> it would certainly not be _portable_ haskell, anyway.
03:58:06 <FreeFull> A C string could just happen to contain, say, -}
03:58:22 <FreeFull> So the comment solution wouldn't work for all C code
03:58:57 <oerjan> it wouldn't work for _any_ C code which doesn't end with -} followed by valid haskell :P
03:59:01 <Bike> do you actually need this for something?
03:59:41 <shachaf> How about {-# OPTIONS_GHC -x c #-}
03:59:42 <shachaf> Or something.
04:02:16 <kmc> x={-5}; int main() { printf("C!\n"); } /* -} 0; main = putStrLn "Haskell!" -- */
04:02:17 -!- aloril has quit (Remote host closed the connection).
04:04:40 <oerjan> kmc: i don't think you can put that in front of arbitrary C
04:05:13 <kmc> it wasn't directly an answer to FreeFull's question
04:05:30 <Bike> just wanted to show off dat polyglot
04:05:45 <Bike> I didn't know {-5} was legal there, though.
04:06:36 <coppro> it's not
04:06:42 <oerjan> shachaf: -x c is static, so cannot be used in OPTIONS_GHC
04:06:52 <Bike> oh, well then.
04:06:57 <shachaf> oerjan: Oh.
04:08:01 <coppro> this is remedied, though, by using "int x [] =" which is valid in both languages
04:08:13 <oerjan> only dynamic ones
04:09:41 <FreeFull> int x [] = {-5}; int main() { puts("Yeah, C!"); return 0; } /* x -- */
04:10:11 <FreeFull> Wait, no
04:10:15 <FreeFull> int x [] = {-5}; int main() { puts("Yeah, C!"); return 0; } /* -} x -- */
04:10:44 <Bike> int x [] = x, perfect
04:11:16 <FreeFull> > int 3 [] where int x [] = {-5}; int main() { puts("Yeah, C!"); return 0; } /* -} x -- */
04:11:18 <lambdabot> <hint>:1:10: parse error on input `where'
04:11:25 <FreeFull> Stupid lambdabot
04:11:33 <oerjan> shachaf: -F might work
04:11:45 <Bike> FreeFull: you know i don't think that's valid c precisely?
04:12:28 <FreeFull> Bike: Well, not what I fed to lambdabot
04:13:30 <Bike> anyway is there some way you can make the haskell parser hang on the first line? that would "work"
04:14:43 <oerjan> FreeFull: {-# OPTIONS_GHC -F -pgmF yourProcessingProgram #-} should work if you make yourPreprocessingProgram munge the file appropriately.
04:16:13 -!- aloril has joined.
04:17:10 -!- impomatic has quit (Quit: impomatic).
04:21:19 * oerjan files away http://hackage.haskell.org/packages/archive/acme-inator/0.1.0.0/doc/html/Acme-Inator.html for future use
04:21:54 <shachaf> oerjan: Have you seen acme-php?
04:22:00 <oerjan> nope
04:22:03 <shachaf> http://hackage.haskell.org/packages/archive/acme-php/0.0.1/doc/html/src/Prelude-PHP.html
04:26:12 <oerjan> shachaf: am i correct this could be done _much_ more concisely with lenses?
04:26:25 <shachaf> @quote shachaf lens
04:26:26 <lambdabot> shachaf says: I'm not sure what your question is, but maybe lens is the answer.
04:26:53 -!- DHeadshot has quit (Read error: Connection reset by peer).
04:27:01 -!- DH____ has joined.
04:30:36 <olsner> hmm, my nose is a flute
04:32:15 <oerjan> shachaf: i sense this library may have some unfortunate corner cases.
04:33:48 -!- nys has quit (Quit: quit).
04:35:34 <olsner> might be fun trying to use the php prelude
04:37:40 <kmc> oerjan: quite like its name sake
04:37:43 <oerjan> shachaf: i think the foldr and elem functions might be a bit off
04:38:29 <shachaf> Is elem wrong?
04:38:36 <shachaf> Oh, that's what you mean.
04:38:44 <shachaf> Yes, I remember wondering about that.
04:38:48 <shachaf> I guess it's just another gotcha.
04:39:35 -!- DH____ has quit (Read error: Connection reset by peer).
04:40:05 -!- DHeadshot has joined.
04:43:57 <zzo38> Can we make a probabilistic Pokemon card puzzle where your chance to win is not 100% but you have to maximize it?
04:47:01 <ais523> zzo38: perhaps if you knew the opponent's deck, but not the order of cards in it
04:47:14 <ais523> or if the opponent's deck didn't matter, and you knew your deck, but not the order of cards in it
04:47:34 <ais523> (if you have a good memory, you always know your deck, and if you haven't used cards that manipulate deck order, you don't know the order)
04:47:55 <zzo38> ais523: Yes, those are some, but then there are also coin tossing
04:49:06 <zzo38> Maybe on can be made somehow involving Imakuni?'s card.
04:51:00 <shachaf> `? finland
04:51:01 <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.
04:51:11 <shachaf> `? america
04:51:13 <HackEgo> america? ¯\(°_o)/¯
04:51:21 <shachaf> oerjan: how come america doesn't have a wisdom entry
04:55:14 <oerjan> `echo "This wisdom entry had to be removed due to a DMCA takedown notice." >wisdom/america
04:55:15 <HackEgo> ​"This wisdom entry had to be removed due to a DMCA takedown notice." >wisdom/america
04:55:17 <oerjan> `run echo "This wisdom entry had to be removed due to a DMCA takedown notice." >wisdom/america
04:55:20 <HackEgo> No output.
04:55:25 <oerjan> BETTER NOW?
04:55:53 <shachaf> `? united states
04:55:54 <HackEgo> united states? ¯\(°_o)/¯
04:56:57 <oerjan> `run echo "See America." | tee wisdom/usa >wisdom/'united states'
04:57:01 <HackEgo> No output.
04:57:11 <olsner> `? the us
04:57:13 <HackEgo> the us? ¯\(°_o)/¯
04:57:44 <oerjan> `run echo "The US is the country opposed to the THEM." >wisdom/'the us'
04:57:47 <HackEgo> No output.
04:58:04 <olsner> `? the them
04:58:06 <HackEgo> the them? ¯\(°_o)/¯
04:59:08 <Bike> an endless chain of cia world factbook lite
04:59:09 -!- DHeadshot has quit (Read error: Connection reset by peer).
04:59:27 -!- DHeadshot has joined.
04:59:27 -!- aloril has quit (Ping timeout: 260 seconds).
04:59:38 <oerjan> `run echo "Information on the THEM has been removed for national security reasons." >wisdom/'the them'
04:59:41 <HackEgo> No output.
05:00:57 <shachaf> `? north america
05:00:58 <HackEgo> north america? ¯\(°_o)/¯
05:01:00 <ais523> huh, do we add wisdom via creating the files directly?
05:01:05 <ais523> I thought there was a command
05:01:12 <Bike> learn?
05:01:19 <shachaf> ais523: The command can only create entries of a certain form.
05:01:31 <ais523> ah right
05:01:41 <shachaf> Of course, we *could* just make another command.
05:01:45 <shachaf> But that would be too easy?
05:02:30 <ais523> it wouldn't be much easier than `run echo
05:05:38 <zzo38> I have thought once, I wanted to make up a Pokemon card puzzle involving the Imakuni?'s cards, but I don't know how.
05:05:38 -!- DHeadshot has quit (Read error: Connection reset by peer).
05:06:38 <shachaf> `run >'hello there' echo helloerjan
05:06:41 <HackEgo> No output.
05:06:47 <shachaf> `cat hello there
05:06:49 <HackEgo> helloerjan
05:06:57 <shachaf> `rm hello there
05:07:00 <HackEgo> No output.
05:07:10 <coppro> oh good grief
05:07:26 <shachaf> Oh
05:07:28 <shachaf> Er.
05:07:32 <shachaf> Oh Nø
05:07:45 <coppro> "What is the single mechanism or dual mechanisms that allows a conduncting filament to grow in the vertical direction immediately after breakdown and then at a later time and with the reapplication of a higher current to undergo radial growth to a lower resistance state?"
05:07:53 <coppro> identify the object, subject, and verb
05:09:13 <olsner> the verb is 'identify', the subject is (implied) us, the objects are the object, subject and verb
05:10:05 <coppro> what
05:10:10 <coppro> that's not even... what
05:10:32 <olsner> happy to help!
05:17:10 * oerjan gives olsner a gold star for being helpful *
05:18:39 <oerjan> coppro: the verb is "is", which means there wouldn't be an object, and "What" is probably the subject. hth.
05:18:41 <Bike> coppro: the single mechanism..., what, is
05:18:57 <coppro> oerjan is correct
05:19:17 <oerjan> i don't remember the name in english of what goes on the other side of "is".
05:19:21 <coppro> subject predicate
05:19:54 <oerjan> i thought predicate included the verb
05:22:42 <coppro> sorry, subject predicat*ive*
05:22:55 * coppro grumbles about the choice of language by linguists
05:23:40 <oerjan> you just be happy they didn't choose chinese!
05:24:02 <Bike> chinese physics terms rock, though
05:24:58 <shachaf> `? denmark
05:25:00 <HackEgo> denmark? ¯\(°_o)/¯
05:25:09 <shachaf> ............
05:25:27 <Bike> `? maldives
05:25:29 <HackEgo> maldives? ¯\(°_o)/¯
05:25:35 <oerjan> i shall leave that to the danish esotericians present.
05:25:48 <olsner> there are no danes
05:25:53 <olsner> (are there?)
05:26:03 <oerjan> well they lucked out, then
05:26:36 <Sgeo> Why did it surprise me that Yogi Berra is still alive?
05:27:12 <monqy> hi sgeo
05:27:17 <Sgeo> hi
05:27:21 <monqy> how was the caffeine
05:27:29 <Bike> frankly i'm surprised that you're alive, after that trip of yours
05:27:35 <Sgeo> I think in the future it would be a bad idea to drink that much coffee
05:27:57 <monqy> maybe you'll get used to it
05:28:32 <Sgeo> Maybe it's terrifying that, even many hours later, my heart went from a normal rhythm to rapid beats for a few seconds
05:28:54 <oerjan> no more than six cups a day for you, young man!
05:30:16 <kmc> maybe you have a heart condition such that you should not consume caffeine
05:30:58 <elliott> maybe he does't
05:31:00 <elliott> *doesn't
05:32:02 <coppro> does anyone have source for a markov chain bot handy?
05:32:08 <coppro> we really need to have one trained on this channel
05:32:24 <oerjan> ^source
05:32:24 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
05:32:27 <oerjan> HTH
05:32:53 -!- ogrom has joined.
05:32:55 <elliott> `? burma
05:32:56 <HackEgo> burma? ¯\(°_o)/¯
05:33:04 <elliott> `run echo "ask Bike" >wisdom/burma
05:33:08 <HackEgo> No output.
05:33:27 -!- ogrom has quit (Client Quit).
05:33:48 <oerjan> Sgeo: http://www.sheldoncomics.com/archive/121224.html
05:34:37 <elliott> Bike: tell me all there is to know about burma
05:34:55 <monqy> Sgeo: https://www.youtube.com/watch?v=dZ2q9NmYf6g
05:35:30 <Bike> elliott: There are whole fucking shittons of people there, almost as many mountains, and also some dictatorships.
05:36:03 <elliott> Bike: have you ever been to burma
05:36:09 <oerjan> Sgeo: be sure to read to the end hth
05:36:37 <elliott> monqy: yes i love lasanga cat....
05:36:39 <Bike> No, but one time I was at a place where some other people had once been to burma, and then had been to that place.
05:36:43 <Bike> monqy: Good, good.
05:36:51 <monqy> i love lasagna cat too
05:37:01 <oerjan> also i hear they are good at shaving
05:38:14 <elliott> monqy: what about infinite solutions
05:38:35 <Sgeo> I should probably eat food
05:40:03 <monqy> ive never heard of infinite solutions before, but how about wonderfulstories aka thejunkwizards
05:40:32 <monqy> oh maybe ive seen this before
05:40:37 <elliott> infinite solutions is by the same people as lasanga cat
05:40:43 <shachaf> monqy: what do you know about "equirecursive types"
05:40:50 <monqy> shachaf: i know the stuff
05:40:54 <shachaf> oh boy
05:40:57 <shachaf> the stuff
05:40:59 <shachaf> that's the stuff
05:41:07 <shachaf> can you tell me a bit about them
05:41:15 <Sgeo> `list
05:41:16 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/bin/list: Permission denied \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/bin/list: cannot execute: Permission denied
05:41:23 <Sgeo> `cat bin/list
05:41:24 <HackEgo> echo Taneb atriq Ngevd Fiora nortti elliot
05:41:44 <monqy> shachaf: whats to know about them
05:41:52 <monqy> elliott: this infinite solutions thing is good
05:42:04 <elliott> it is
05:42:16 <shachaf> monqy: well if i knew i wouldn't ask right
05:42:27 <elliott> it looks like they deleted some of the videos :(
05:42:38 <Bike> trickster mode + ikeda -> something pretty weird
05:43:23 <oerjan> `run ls -l bin/list
05:43:24 <HackEgo> ​-rw-r--r-- 1 5000 5000 43 Jan 12 20:33 bin/list
05:45:06 <monqy> shachaf: like their definition or something specific about them or
05:45:10 <Sgeo> Look at his shirt
05:45:18 <shachaf> monqy: well i think i know the definition "more or less"
05:45:26 <shachaf> but like what happens when you allow them
05:45:33 <shachaf> is it "bad because too many things type check?"
05:46:33 <zzo38> Is there a three-dimensional Fourier transform?
05:47:31 <olsner> there should be
05:47:51 <Bike> http://en.wikipedia.org/wiki/Fourier_transform#Fourier_transform_on_Euclidean_space that was easy.
05:47:52 <oerjan> zzo38: you can apply a fourier transform to functions on R^3, if that is what you mean. any locally compact group works.
05:48:14 <zzo38> Actually I mean a discrete Fourier transform.
05:48:19 <oerjan> Z (giving series) and R are just the most common examples.
05:48:27 <Sgeo> `cat bin/list
05:48:28 <HackEgo> echo Taneb atriq Ngevd Fiora nortti elliot
05:48:31 <Sgeo> (Sound added)
05:48:32 <oerjan> zzo38: well Z^3 would also work
05:48:44 <zzo38> oerjan: OK.
05:49:02 <Bike> is Z^3 compact?
05:49:11 <oerjan> no, it's discrete
05:49:19 <Bike> right
05:49:28 <oerjan> any discrete _or_ compact group is locally compact
05:49:33 <Bike> Oh.
05:49:49 <oerjan> T = unit circle is a compact example, whose dual group is Z
05:49:51 <elliott> Sgeo: are you really going to cat out that program instead of making it work
05:50:03 <Sgeo> `run chmod a+x bin/list
05:50:04 <monqy> shachaf: there's also the thing where typechecking/inference/error-reporting gets a bit dumb
05:50:06 <HackEgo> No output.
05:50:21 <oerjan> oh hum it's T which gives series, which are of course just functions on Z.
05:50:28 <zzo38> Fourier transform is sometimes used on sounds and on pictures, so I thought, would it work on videos (with two spatial dimensions and one temporal dimension)?
05:50:31 <oerjan> starting with functions on Z gives you functions on T instead.
05:51:10 <Bike> zzo38: do you know about jpeg compression?
05:51:18 <zzo38> Bike: I know a few things about it.
05:51:53 <Bike> well, maybe asking about video compression would be better. i bet they use a lot of the same fouriery techniques.
05:52:25 <oerjan> zzo38: computer tomography is essentially using fourier transforms in 3 _space_ dimensions, do convert rays captured through your body into a 3-dimensional model of the inside
05:53:13 <zzo38> OK
05:55:49 <oerjan> *to
06:29:56 <Sgeo> http://mspabooru.com/index.php?page=post&s=view&id=83857 (arguably homestuck spoilers)
06:30:28 <coppro> Sgeo: it's the sort of spoiler that if you didn't say it was a spoiler, no one would know
06:36:08 <monqy> hi
06:38:11 <shachaf> `addquote <monqy> hi
06:38:20 <olsner> `quote hi
06:38:23 <HackEgo> 6) <Quas_NaArt> His body should be given to science. <GKennethR> He's alive :P <GreenReaper> Even so. \ 9) <Madelon> Lil`Cube: you had cavity searches? <Lil`Cube> not yet <Lil`Cube> trying to thou, just so I can check it off on my list of things to expirence \ 14) <fizzie after embedding some of his department research into fungot> Finally I ha
06:38:30 <shachaf> `quote <monqy>.*\bhi\b
06:38:32 <HackEgo> 733) <monqy> Sgeo: I used to have strict requirements for when I said hi but then everyone started saying hi and it all got weird \ 757) <Sgeo> hack and back? <Patashu> works on anything much slower than you <monqy> at the cost of: guilt, hating yourself, me sending you the message "hi" <Patashu> am I also forbidden to cast mephitic cloud and cb
06:39:46 <shachaf> `quote \bhi\b
06:39:48 <HackEgo> 152) <oklopol> comex: what? <oklopol> *vorpal <oklopol> comex: hi, tab-complete completed c to comex instead of Vorpal, dunno why \ 209) [on Walter Bright] <nddrylliog> I went to chat with him after his talk at the ELC and he was like "hum, right - humans. How do they work again... oh, hi!" \ 733) <monqy> Sgeo: I used to have strict requirements
06:40:09 <shachaf> monqy = Walter Bright?????
06:40:50 <monqy> no
06:43:02 <fizzie> monqy = just bright in general???
06:43:26 <monqy> a mystery
07:19:20 -!- oerjan has quit (Quit: leaving).
07:21:15 -!- zzo38 has quit (Remote host closed the connection).
07:50:11 -!- Bike has quit (Quit: t hurts).
08:14:09 -!- ogrom has joined.
08:19:07 <fizzie> Oh it is so sparkly, https://dl.dropbox.com/u/113389132/Misc/20130112-icicles2.jpg
08:19:57 -!- epicmonkey has joined.
08:20:06 <fizzie> (Taken yesterday, it's decidedly less sparkly today.)
08:20:38 <ais523> `quote 757
08:20:45 <HackEgo> 757) <Sgeo> hack and back? <Patashu> works on anything much slower than you <monqy> at the cost of: guilt, hating yourself, me sending you the message "hi" <Patashu> am I also forbidden to cast mephitic cloud and cblink <monqy> i will also send you "hi" if you: kite excessively, use mephitic cloud, -yes
08:20:55 <fizzie> (Or arguably it's as sparkly but less sunny.)
08:21:31 <fizzie> I don't understand the 757.
08:21:41 <monqy> it's not a very good quote
08:21:49 <ais523> fizzie: it's a reference to Crawl, the computer game
08:22:12 <ais523> this also explains the meme of me getting annoyed when elliott says "hi" to me, because I'm intentionally misinterpreting it as a monqy-style hi
08:22:12 <fizzie> Oh, that explains why it didn't make sense.
08:22:21 <ais523> basically if he says hi to you unsolicited, he disapproves of what you're doing
08:22:30 <ion> I know mephitic cloud, but what’s kiting?
08:22:37 <ais523> either that or he's trying to start a conversation
08:22:51 <ais523> ion: general battle tactic (mostly used in computer games, but can also work in real life) where you both outrange and outrun someone
08:23:03 <ais523> it involves repeatedly firing at them and then running away
08:23:03 <ion> Ok, thanks
08:23:36 <fizzie> ais523: Have you tried it out in real life?
08:24:06 <ais523> fizzie: no; I'm not that fast a runner, and don't own effective ranged weapons, and tend not to get into fights, and am unwilling to kill people
08:24:17 <ais523> so opportunities have been limited
08:25:05 <fizzie> I suppose there's the conversational version where you shout insults and then run away.
08:25:06 <ais523> I guess the real life equivalent of pillar dancing would be that, but running round and round in circles around a gun store, and every time you reach the entrance you stop to buy more ammo
08:25:29 <ais523> fizzie: that's not quite the same because it relies on reaction time, rather than limited range, to avoid getting shot back at
08:26:09 <fizzie> It could be a range thing if you can shout (much) louder.
08:27:35 <fizzie> Though I suppose generally the insultee would not maybe start to chase you. (Perhaps depending on the insult.)
08:27:48 -!- Taneb has joined.
08:30:16 <quintopia> i approve of this conversation
08:32:22 <fizzie> Complaint of the day: this client does not support an encoding fallback, so on one channel where half the people use ISO-8859-1 and half UTF-8 it's either full of mojibake or Unicode replacement characters. (And the encoding setting is per-connection, not per-channel.)
08:32:36 <Sgeo> I feel like a wreck
08:32:50 <Sgeo> I think I'm going to lay off the caffeine for a while
08:33:04 -!- aloril has joined.
08:34:13 * Sgeo can't figure out how to upgrade this obsolete Linux distro
08:34:28 <Sgeo> And I really want to run modern LyX but because of this I can't
08:34:41 <monqy> woops!!
08:34:53 <fizzie> Which one is it?
08:35:44 <quintopia> i still use a two year old lyx
08:35:52 <quintopia> what's so much better about today's
08:36:03 <monqy> modern or something
08:36:33 <Sgeo> 10.10
08:36:39 <quintopia> ha
08:36:49 <Sgeo> So the next Ubuntu in my upgrade path is also End of Life
08:36:53 <fizzie> There was quite a large improvement in LyX between some versions a few years back.
08:37:03 <quintopia> i'm using 10.04 :P
08:37:56 <quintopia> wait how can they not upgrade you all the way?
08:38:38 <ion> sgeo: Just reinstall, it’ll be faster.
08:39:00 <Sgeo> Hmm, there's some sort of old releases thing
08:40:23 <fizzie> I'd probably also just reinstall. But I'm sure it can be done. Somehow.
08:40:53 <Sgeo> There's an old-releases thingy
08:41:17 <quintopia> reinstalling would be a bitch and a half for me, but i know i'll have to do it eventually ;_;
08:41:18 <ion> You can upgrade using an unsupported update path (i.e. skip over releases in the supported path) manually, but you get to keep the parts when it breaks. :-P
08:41:52 <fizzie> But can the upgrade manager use the old-releases thingy?
08:41:54 <Sgeo> deb http://old-releases.ubuntu.com/ubuntu/ CODENAME main restricted universe multiverse
08:42:13 -!- aloril has quit (Ping timeout: 245 seconds).
08:45:25 <fizzie> When Ubuntu on PowerPC went from Canonical-supported to community-supported, and consequently was left out of most mirrors, all updates got real slow.
08:45:54 -!- aloril has joined.
08:46:27 <Sgeo> Maybe at least I can get new LyX on here, even if the 11.04 idea isn't working out
08:52:36 <fizzie> You can always just compile one from the official sources.
08:53:22 <fizzie> I have a vague feeling I did that when our workstations at work were stuck with a really old Ubuntu.
08:57:27 -!- aloril has quit (Ping timeout: 260 seconds).
08:59:49 <Sgeo> LyX works
09:00:51 -!- aloril has joined.
09:18:53 -!- Nisstyre-laptop has quit (Quit: Leaving).
09:26:26 -!- AnotherTest has joined.
09:26:32 <AnotherTest> Hello
09:30:24 <fizzie> OH NO!
09:31:01 <fizzie> (No reason.)
09:40:17 -!- DHeadshot has joined.
09:48:03 <elliott> fizzie: RIP.
09:49:34 <fizzie> Rip and tear.
09:50:18 <fizzie> I can't stop typing stupid stuff just because I like this swipe action so much.
09:50:51 <fizzie> It draws this decaying track kind of thing when I do.
09:52:12 <fizzie> (My first time using a swipeable touchscreen keyboard. If you couldn't tell.)
09:55:30 -!- sebbu has quit (Read error: Connection reset by peer).
09:55:57 -!- sebbu has joined.
10:23:38 -!- Vorpal has joined.
10:24:15 <Vorpal> Is there a file system that works well on windows and linux that supports files larger than 4 GB?
10:24:37 <Vorpal> last I looked exFAT was a mess on linux, and I presume NTFS is not rock solid still?
10:32:51 -!- Fiora has joined.
10:57:13 <fizzie> I was under the impression that NTFS works reasonably these days.
10:57:54 <ais523> NTFS has a different featureset from, say, ext4
10:58:03 <fizzie> With ntfs3g. Or something. It's worked well enough for me, though I haven't used it much.
10:58:11 <ais523> but I haven't had problems reading from and writing to an NTFS partition just with this Ubuntu default install
10:58:27 <ais523> (and holding large files is the purpose I use that partition for, as well as holding an install of Windows just in case)
11:09:44 -!- sirdancealot has joined.
11:16:05 <fizzie> The NTFS partition where the Windows is installed on the laptop is what I use for transferring data too on the dual-boot laptop, also with a standard Ubuntu install. (Which I believe does use ntfs3g.)
11:16:31 <fizzie> Or ntfsprogs was combined with it. Or something.
11:17:02 <fizzie> I don't know, It Just Works.
11:19:49 <Vorpal> hm
11:20:43 <Vorpal> okay
11:20:54 <Vorpal> might be worth trying then
11:21:10 <fizzie> Just don't blame me when it eats your data.
11:21:23 <Vorpal> or not :P
11:21:43 <Vorpal> fizzie, I need something to use on an external HDD for backup that will be used from both windows and linux
11:22:16 <fizzie> Haven't heard of any data-loss bugs with it or anything, it was just a standard disclaimer.
11:22:23 <Vorpal> true
11:34:26 -!- monqy has quit (Quit: hello).
11:43:49 -!- sploknee has joined.
12:09:59 -!- epicmonkey has quit (Ping timeout: 272 seconds).
12:58:08 -!- carado has joined.
13:33:07 -!- sploknee has changed nick to Phantom_Hoover.
13:33:32 -!- Phantom_Hoover has quit (Changing host).
13:33:33 -!- Phantom_Hoover has joined.
14:19:55 <fizzie> A modest proposal: since "const int foo = 100;" doesn't make a constant integer expression in C, and macros are evil, let's start using "const char foo[100]; ...(sizeof foo)..." for compile-time constants from now on. (Insert here an argument against enums.)
14:23:37 <elliott> fizzie: nobody can argue a cause like you do
14:24:22 <Taneb> I don't understand C
14:24:51 <Taneb> Is it right that in 2013 we still need to tell computers exactly how to do something?
14:29:02 <fizzie> Doesn't Haskell solve that issue?
14:30:46 <fizzie> Or Prolog, where you just specify goals. That sounds nice!
14:31:16 <FreeFull> Computer, make me a sandwich
14:32:06 <elliott> fizzie: Unfortunately Prolog doesn't work for those who have yet to find meaning in life.
14:34:08 <fizzie> What I learned on the Prolog course is that it's a good language if you need a thing that can say "No" a lot.
14:34:53 <Phantom_Hoover> `addquote <fizzie> What I learned on the Prolog course is that it's a good language if you need a thing that can say "No" a lot.
14:35:01 <HackEgo> 913) <fizzie> What I learned on the Prolog course is that it's a good language if you need a thing that can say "No" a lot.
14:35:53 <Taneb> > repeat "no"
14:35:54 <lambdabot> ["no","no","no","no","no","no","no","no","no","no","no","no","no","no","no"...
14:36:09 <Taneb> @faq Can Haskell say "No" a lot?
14:36:10 <lambdabot> The answer is: Yes! Haskell can do that.
14:36:21 <Phantom_Hoover> but what if you occasionally want it to say yes
14:36:45 <Taneb> > cycle (replicate 30 "No" ++ ["Yes"])
14:36:47 <lambdabot> ["No","No","No","No","No","No","No","No","No","No","No","No","No","No","No"...
14:37:07 <Taneb> > take 10 $ filter (== "Yes") $ cycle (replicate 30 "No" ++ ["Yes"])
14:37:09 <lambdabot> ["Yes","Yes","Yes","Yes","Yes","Yes","Yes","Yes","Yes","Yes"]
14:38:28 <FreeFull> What are you trying to do
14:38:42 <Taneb> Who knows
14:38:59 <Taneb> Who "no"'s indeed
14:39:59 <Taneb> One of my friends is entering a competition where the prize is "you go to space. And probably come back"
14:40:34 <Taneb> Anyone feel like voting for him?
14:41:01 <fizzie> Can you get your money back if you don't come back?
14:41:09 <Taneb> Yes!
14:41:14 <Taneb> Also free deoderant!
14:41:29 <fizzie> I suppose he's not paying though. If it's a prize.
14:41:36 <Taneb> https://www.lynxapollo.com/en_GB/48041/jonnie-barnes
14:42:31 -!- ais523 has quit.
14:49:04 -!- ogrom has quit (Quit: Left).
15:02:28 -!- epicmonkey has joined.
15:07:46 <Sgeo> "We call on our local, state and federal governments to uphold our First Amendment right to free speech by vigorously enforcing all laws against obscenity."
15:10:56 -!- DHeadshot has quit (Read error: Connection reset by peer).
15:10:59 -!- augur has quit (Remote host closed the connection).
15:11:25 -!- DHeadshot has joined.
15:13:57 -!- DHeadshot has quit (Read error: Connection reset by peer).
15:14:25 -!- DHeadshot has joined.
15:35:20 * Sgeo wonders if he should try writing his resume in LaTeX rather than using LyX
15:35:40 <ion> You’re writing it in LaTeX when you’re using LyX.
15:36:17 <ion> Don’t forget about Markdown with some LaTeX additions, converted to LaTeX with pandoc.
15:38:10 <Sgeo> "In LaTeX, you have to set up each of the margins manually, which can seem tedious at first. "
15:38:13 <Sgeo> o.O
15:46:16 -!- DHeadshot has quit (Read error: Connection reset by peer).
16:16:27 <Sgeo> The sketch where they're debating how cheese is made made me realize I know nothing about cheese
16:20:12 <olsner> which sketch is that?
16:25:22 <Sgeo> It's in season 2 episode 3
16:25:30 <olsner> OK
16:37:12 <Taneb> Things that make translating C code into Haskell #3: global variables
16:38:05 <elliott> they sure do make it #3
17:19:29 <kmc> uh usually you use default margins or \usepackage{fullpage}
17:20:06 <Sgeo> kmc, ah, ok
17:20:49 <fizzie> ion: Have you seriously started to use proper ’s?
17:21:06 <ion> fizzie: A number of years ago, yes.
17:21:17 <fizzie> I have so not noticed that.
17:24:14 <kmc> <Taneb> Is it right that in 2013 we still need to tell computers exactly how to do something?
17:24:18 <kmc> no but fortunately it's not the case
17:24:35 <kmc> there are a lot of extremely popular high level languages
17:25:11 <kmc> you can find lots of people who are productively employed as programmers, and have no clue how things work below the layer of Ruby or even Drupal
17:25:21 <kmc> we may make fun of them, but this is basically a sign of progress
17:25:43 * Sgeo now worries that he might be one of those people
17:26:00 <Sgeo> I have some idea of ... how things operate on a C level I ... guess
17:26:05 <elliott> programming as lifestyle v. programming as tool
17:26:10 <Sgeo> Is C level even really a thing
17:26:10 <kmc> C is used a) for things that need that level of control, b) by people who don't know better, c) by people who think it proves they have the biggest hacker penis
17:26:12 <elliott> both problematic :(
17:26:25 <kmc> Sgeo: yes
17:26:50 <kmc> and C is not telling "exactly how to do something" either
17:27:11 <kmc> C compilers perform all kinds of transformations, and then the CPU performs more on the fly
17:27:12 <elliott> the main problem with C is that it impedes the progress that can be made even at the levels for which C is used
17:27:22 <elliott> should ban its use or something
17:27:25 <kmc> yeah
17:27:40 <kmc> it certainly should be possible to make a better systems programming language than C
17:28:01 <kmc> but it's hard to make one which is better by a large enough fraction to beat out the current lingua franca
17:28:12 <kmc> programming languages almost never succeed or fail on their technical merits
17:28:17 <Sgeo> There are several projects working on that, aren't there?
17:28:34 <elliott> it was a fairly depressing realisation for me that reading about Multics' design made me think it was a billion times better than Unix and that it was terrible that it was abandoned
17:28:51 <elliott> it means I really am doomed to vapourware Right Thing second-system syndrome
17:29:24 <ion> What are the highlights of its design?
17:29:49 <elliott> ion: well if you think of all the misfeatures unix has saddled us with then it basically just didn't do those
17:30:08 <elliott> single-level store rather than a separate limited filesystem for one
17:30:15 <Fiora> I remember reading a thing saying that one of the reasons why a lot of the C replacements haven't caught on is that many don't have easy linking with existing C code
17:30:36 <Fiora> ABI-wise and so on
17:30:43 <elliott> yeah
17:30:48 <elliott> I think Rust is explicitly trying to be compatible like that
17:31:18 <ion> I might have picked Rust for an embedded-ish project, but it doesn’t support Arm yet. :-(
17:31:19 <elliott> C++ has taken off at least! if you need a C replacement with all the mistakes carefully left intact and some new ones added on
17:31:41 <elliott> p.s. also not actually suitable for the exact same purposes as C
17:33:33 <ion> I tried to look for the current state of the art for thread IPC in C++ and gave up.
17:36:07 <FreeFull> Someone wrote an OS in haskell
17:36:10 <FreeFull> Not a very good OS
17:44:05 <copumpkin> what makes a good OS?
17:45:39 -!- Nisstyre-laptop has joined.
17:53:02 <ion> Steve
18:06:04 <fizzie> And how much Steve does an OS need?
18:21:03 <Vorpal> fizzie, one cubic meter of it
18:21:32 <AnotherTest> copumpkin: the only way to create a good OS is to let elliott make it
18:26:01 <fizzie> Sometimes I wonder what W|A profiling will say of me. (Context: just queried for "volume of human body".) ((It's only 0.066 cubic metres.))
18:26:45 <Fiora> apparently human bodies are very close to the density of water
18:26:48 <Fiora> which I guess makes sense
18:27:26 <shachaf> What codensity? I heard codensity was "cooler than density".
18:27:31 <fizzie> You need 15 bodies to make up a cubic metre of Steve, if people are what you're using.
18:27:43 <shachaf> I'm not sure why they have those names, though. Something from topology?
18:28:13 <Fiora> 1 cubic meter is apparently 22 fioras
18:28:54 <fizzie> Fiora: Did you do a quick water displacement experiment to figure out your volume?
18:29:19 <Fiora> http://www.aqua-calc.com/calculate/weight-to-volume I used this thing
18:29:48 <Fiora> ... water displacement experiment ...
18:29:55 <Taneb> Human body as 0.98 the density of water
18:29:58 <fizzie> The bath tub thing.
18:30:05 <Fiora> yeah, I know
18:30:07 <Fiora> I don't think my bath is big enough to fully submerge me
18:30:36 <Fiora> the emergency drain wouldn't let it get that deep I think
18:30:51 <Fiora> this is silly
18:31:12 <fizzie> You just need to liquify yourself first. Except then you could measure the volume much more easily.
18:31:24 <Fiora> but wouldn't that change the volume?
18:32:05 <fizzie> I suppose that depends on how you do it. I guess the empty spaces would at least get lost.
18:32:14 <Fiora> phase changes change volumes though, right?
18:32:40 <FreeFull> No, why would they do that?
18:32:48 <FreeFull> Oh wait
18:32:53 <Fiora> I mean, ice is less dense than water, right?
18:32:56 <FreeFull> You are talking about materials, not sound
18:32:59 <Fiora> as an example
18:33:10 <Fiora> pffff
18:33:23 <FreeFull> Yeah, in general phase changes change pressure/density/volume
18:33:27 <FreeFull> Especially liquid/gas
18:35:29 <fizzie> The W|A volume estimate was "as measured by water displacement; data based on sample of 521 people, age range 17-51 years".
18:36:03 -!- Bike has joined.
18:36:30 <fizzie> There's also the useful "corresponding quantities" box, which lets you know you can make a cube 40 cm across out of a person.
18:54:27 <Gregor> Ugh, watching Enterprise. Why.
18:54:34 <Gregor> "Your vessel is under quarantine. Prepare to be boarded."
18:54:44 <Gregor> Yeah, because that's what quarantine means. Fucking idiot.
18:55:06 <Bike> maybe the speaker wants to try out being quarantine! you know, just for shiggles
18:55:14 <Bike> being in*
19:02:40 <Sgeo> I should resume watching DS9
19:02:45 <Sgeo> And eat some food
19:02:51 <Sgeo> And keep doing LinkedIn stuff
19:03:24 <Sgeo> This one professor who I know would give me recommendations isn't on LinkedIn
19:04:26 <Bike> is linkedin the one that spams you constantly
19:06:09 <Sgeo> A lot of spammers pretend to be LinkedIn I think
19:06:51 <Sgeo> As far as LinkedIn itself being spammy... I never seem to bother unsubscribing from stuff, so I just ignore all the newsletters I'm subscribed to from various sources
19:06:55 <Sgeo> I have 5,696 unread emails
19:08:20 <Bike> so... the answer is yes?
19:09:27 -!- fungot has quit (*.net *.split).
19:09:28 -!- lambdabot has quit (*.net *.split).
19:17:25 <fizzie> I've heard SkillPages (which is kind of like LinkedIn except you're supposed to have some sort of a skill, presumably as opposed to having some sort of a profession) is spammy in the "asks you for address book permissions, spams invites to all your contacts" kind of way.
19:19:28 <Sgeo> Bike, I'm sure I could unsubscribe from the LinkedIn emails if I wanted
19:20:43 -!- impomatic has joined.
19:24:18 <Sgeo> Hmm
19:24:31 <Sgeo> I like how AdBlock Plus is trying to have an agreement with advertisers to allow "acceptable" adds
19:24:34 <Sgeo> *ads
19:25:10 <AnotherTest> trying to have an agreement = getting a lot of money?
19:25:36 <Sgeo> As in, "if the ads meet certain requirements, they will be let through"
19:26:32 <Bike> what requirements?
19:26:40 <Gregor> $$$
19:26:58 <Sgeo> https://adblockplus.org/en/acceptable-ads#criteria
19:27:38 <impomatic> I don't block ads
19:29:13 <Sgeo> I think it's a good idea to effectively encourage advertisers to use non-obtrusive ads
19:29:41 <Sgeo> If by default static, non-obtrusive ads are let through, if a majority of people are using this filter, those will be the only effective ads
19:29:51 <Sgeo> Contrast if all ads are blocked, then, there's a problem
19:32:45 <impomatic> I hate auto playing audio ads and pop-over ads, but apart from those I'm not too bothered.
19:33:34 <impomatic> I also hate ads disguised as content... e.g. paid blog posts.
19:45:49 -!- sebbu has quit (Ping timeout: 264 seconds).
19:52:46 -!- sebbu has joined.
19:52:46 -!- sebbu has quit (Changing host).
19:52:46 -!- sebbu has joined.
20:04:59 -!- sebbu has quit (Ping timeout: 272 seconds).
20:11:17 -!- zzo38 has joined.
20:12:22 -!- sebbu has joined.
20:12:22 -!- sebbu has quit (Changing host).
20:12:22 -!- sebbu has joined.
20:17:00 -!- sebbu has quit (Ping timeout: 272 seconds).
20:21:06 -!- copumpkin has quit (Ping timeout: 264 seconds).
20:21:25 -!- AnotherTest has quit (Quit: Leaving.).
20:21:37 -!- copumpkin has joined.
20:27:01 -!- copumpkin has quit (Ping timeout: 248 seconds).
20:27:38 -!- copumpkin has joined.
20:29:23 -!- sebbu has joined.
20:35:17 <Sgeo> O....k....
20:35:25 <Sgeo> I need to learn to bite my tongue sometimes
20:36:52 <FreeFull> impomatic: I can't say I've ever read a blog which had something like that
20:41:43 -!- epicmonkey has quit (Ping timeout: 272 seconds).
20:46:31 -!- azaq23 has joined.
20:46:40 -!- azaq23 has quit (Max SendQ exceeded).
20:59:41 -!- oerjan has joined.
21:01:26 -!- trout has quit (Quit: I found 1 in /dev/zero).
21:03:48 -!- sebbu has quit (Ping timeout: 264 seconds).
21:06:44 -!- TeruFSX has quit (Ping timeout: 246 seconds).
21:07:10 -!- asiekierka has quit (Excess Flood).
21:08:28 -!- sebbu has joined.
21:08:28 -!- sebbu has quit (Changing host).
21:08:28 -!- sebbu has joined.
21:09:30 -!- Vorpal has quit (Ping timeout: 276 seconds).
21:11:06 -!- asiekierka has joined.
21:11:50 <olsner> Sgeo: biting your tongue will only hurt you
21:30:09 <impomatic> FreeFull: I've come across a few... It's usually pretty obvious that it's a paid post.
21:30:22 <FreeFull> impomatic: What sort of blogs?
21:31:41 <c00kiemon5ter> like people pretending to be unrelated to some company but have a blog that all it talks about is how awesome that company's products are
21:31:43 <c00kiemon5ter> I guess
21:32:13 <oerjan> impomatic: While I'm sitting here drinking my delicious Coca-Cola zero®, I'd just like to point out I think the paid post problem is greatly overrated.
21:32:39 <impomatic> I've seen a few on photography blogs. Several posts about photography, then a random one about "dentists in cleveland" or something.
21:34:21 -!- lambdabot has joined.
21:34:39 <FreeFull> Lol
21:40:51 -!- sebbu2 has joined.
21:41:09 -!- sebbu2 has quit (Changing host).
21:41:09 -!- sebbu2 has joined.
21:41:23 -!- sebbu has quit (Ping timeout: 245 seconds).
21:41:35 -!- sebbu2 has changed nick to sebbu.
21:41:36 <c00kiemon5ter> well the best ad one could have is make his company a meme, these days
21:44:29 <Sgeo> Why am I looking at Smalltalk again
21:45:10 <FreeFull> Sgeo: Because it's the OO language?
21:45:42 <Sgeo> No I don't really care for OO, and especially not single-dispatch class-based OO
21:45:48 <Sgeo> I just really like the IDE I think
21:52:47 <olsner> http://www.reddit.com/r/haskell/comments/16iakr/what_happens_when_a_monad_violates_monadic_laws/ should have an answer in terms of burritos
21:52:55 <olsner> or not
21:56:27 -!- Taneb has quit (Ping timeout: 272 seconds).
21:58:26 -!- TeruFSX has joined.
21:59:33 -!- Arc_Koen has joined.
22:00:30 <Sgeo> `list
22:00:34 <HackEgo> Taneb atriq Ngevd Fiora nortti elliot
22:00:35 <Sgeo> ...
22:01:27 <Bike> ,,,
22:01:37 <impomatic> '''
22:02:20 <Sgeo> I AM NOT A LIAR
22:02:22 <Sgeo> http://www.mspaintadventures.com/trickster.php?s=6&p=007623
22:03:19 <zzo38> I liar is not believed even though he tell the truth.
22:13:29 <impomatic> It's just started snowing! :-)
22:14:46 <kmc> yay
22:15:02 <Arc_Koen> hmmmmmmm hello
22:18:08 -!- Arc_Koen has quit (Quit: Arc_Koen).
22:18:38 -!- monqy has joined.
22:19:11 <oerjan> <shachaf> What codensity? I heard codensity was "cooler than density". <-- on the flip side, density is oler.
22:19:20 <Sgeo> "How do I use the GNU Smalltalk REP-loop?"
22:19:30 <Sgeo> I think that is the first time I have ever seen the phrase "REP-loop"
22:19:38 <Bike> read-epl
22:19:50 <oerjan> r-eval-pl
22:19:56 <oerjan> re-print-l
22:21:00 <c00kiemon5ter> re-print-loop could be confusing
22:21:25 -!- Arc_Koen has joined.
22:21:53 <c00kiemon5ter> (as it tends to read as a 'loop' that 'print's 're'peatedly) .. or something
22:22:39 <oerjan> <Fiora> http://www.aqua-calc.com/calculate/weight-to-volume I used this thing <-- 1 dm^3 (liter) of water is about 1 kg. hth.
22:23:27 <oerjan> (in fact that was the original intended definition of kg)
22:23:39 <kmc> ...i just got a phone call from a number 1 digit off from my own number
22:23:43 <kmc> and they hung up immediately
22:25:09 <oerjan> ^ul (sp)S((o)S)(~:^~:^):^(ky!)S
22:25:18 <oerjan> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
22:25:28 <oerjan> fizzie: a ghost ate fungot!
22:25:28 -!- azaq23 has joined.
22:26:58 <fizzie> Oh no ho ho.
22:27:41 <fizzie> It is not a connecting.
22:28:57 <fizzie> I even tried to change servurs.
22:29:24 -!- fungot has joined.
22:30:03 <oerjan> ^ul (sp)S((o)S)(~:^~:^):^(ky!)S
22:30:04 <fungot> spoooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo ...too much output!
22:30:27 <oerjan> somewhere out at infinity, a lonely ky! calls
22:31:17 <FreeFull> > x
22:31:19 <lambdabot> x
22:31:23 <FreeFull> > x * (y-y)
22:31:25 <lambdabot> x * (y - y)
22:31:44 <oerjan> FreeFull: it's a _very_ primitive symbolic type
22:31:59 <FreeFull> So no simplification
22:32:07 <FreeFull> > sin(x)
22:32:08 <lambdabot> sin x
22:32:38 <FreeFull> oerjan: What is it useful for?
22:32:57 <oerjan> demonstrating code
22:33:14 <oerjan> > foldr f a [x,y,z]
22:33:15 <lambdabot> f x (f y (f z a))
22:33:46 <FreeFull> > fmap f [1,2,3]
22:33:48 <lambdabot> Ambiguous type variable `b0' in the constraints:
22:33:48 <lambdabot> (GHC.Show.Show b0)
22:33:48 <lambdabot> ...
22:33:55 <FreeFull> > fmap f [x,y,z]
22:33:57 <lambdabot> Ambiguous type variable `b0' in the constraints:
22:33:57 <lambdabot> (GHC.Show.Show b0)
22:33:57 <lambdabot> ...
22:34:08 <oerjan> tends to require some explicit :: Expr here and there
22:34:17 <FreeFull> > fmap f [x,y,z] :: [Expr]
22:34:19 <lambdabot> [f x,f y,f z]
22:34:24 <oerjan> because f,g,h are so overloaded
22:38:57 <FreeFull> > let f x x = 2*x in f x x
22:38:58 <lambdabot> Conflicting definitions for `x'
22:38:59 <lambdabot> Bound at: <interactive>:1:7
22:38:59 <lambdabot> <in...
22:39:01 <FreeFull> > let f x x = 2*x in f y y
22:39:03 <lambdabot> Conflicting definitions for `x'
22:39:03 <lambdabot> Bound at: <interactive>:1:7
22:39:03 <lambdabot> <in...
22:39:11 <FreeFull> > let f x y = 2*x in f y y
22:39:12 <lambdabot> 2 * y
22:39:23 <FreeFull> Hrm
22:39:31 <FreeFull> How do you do Expr pattern matching
22:41:46 -!- nys has joined.
22:43:41 <oerjan> > let f v = case show v of "x" -> 1; _ -> v in map f [x,y,z]
22:43:43 <lambdabot> [1,y,z]
22:44:12 <oerjan> i'm not sure there's an intended way.
22:45:11 <oerjan> note that in let f x y = 2*x in f y y only the final two y's are actually Expr constants
22:45:35 <oerjan> the others are simply ordinary variables bound by the f declaration
22:47:13 <oerjan> > let f v | v == x = 1 | otherwise = v in map f [x,y,z]
22:47:14 <lambdabot> [1,y,z]
22:47:18 <oerjan> that works too
22:47:45 <oerjan> > (x+1) == (1+x)
22:47:47 <lambdabot> False
22:48:10 <oerjan> > (x+0) == x
22:48:11 <lambdabot> False
22:48:50 <shachaf> oerjan: Good point.
22:51:51 * oerjan finds the ntext
22:52:28 <shachaf> oerjan: Try this one:
22:53:00 <shachaf> Hmm, how did it go?
22:53:41 <oerjan> wat
22:54:53 -!- carado has quit (Ping timeout: 246 seconds).
22:55:17 <shachaf> I don't remember the really odd example.
22:55:19 <shachaf> But there's this.
22:55:24 <shachaf> > compare a (-a)
22:55:26 <lambdabot> LT
22:55:27 <shachaf> > compare x (-x)
22:55:28 <lambdabot> GT
22:55:48 <monqy> cute
22:55:49 <lambdabot> monqy: You have 3 new messages. '/msg lambdabot @messages' to read them.
22:56:23 <oerjan> "wat"
22:56:40 <shachaf> monqy: btw did you hear about the "latest advances in profunctor lenses"
22:56:51 <monqy> something about sharing
22:56:53 <oerjan> > compare a x
22:56:54 <lambdabot> LT
22:57:01 <oerjan> > compare (-a) (-x)
22:57:02 <lambdabot> LT
22:57:22 <shachaf> monqy: well that too
22:57:31 <shachaf> but also it's "pretty cool now??"
22:57:45 <shachaf> old profunctor lenses = worst thing ever
22:57:50 <oerjan> > sort [a,-a,x,-x]
22:57:52 <lambdabot> [a,negate a,negate x,x]
22:57:59 <shachaf> Aw.
22:58:02 <oerjan> ah of course
22:58:10 <monqy> what happened to profunctor lenses, what did you do, to them
22:58:14 <shachaf> There's a way of expressing it that doesn't involve explicitly negating.
22:58:25 <shachaf> monqy........thats classified..
22:58:41 <shachaf> "elliotts shame"
22:59:09 <shachaf> monqy: Remember when you were elliotts?
22:59:27 <monqy> vaguely
22:59:29 -!- asderca77 has joined.
23:00:16 <oerjan> monqy vaguely remembers all his past, future and simultaneous lives
23:00:31 <shachaf> And he remembers his dreams.
23:00:34 <shachaf> Not so vaguely.
23:00:37 <oerjan> ooh spooky
23:00:38 <shachaf> monqy: got any good dreams for us
23:00:48 <Bike> alt. some wise wisdom
23:00:59 <monqy> shachaf: only vaguely, this time
23:01:00 <shachaf> no..dreams only plz
23:01:03 <monqy> too vague for words!!
23:01:11 <shachaf> monqy: thats "pretty vague" imo
23:01:15 <shachaf> but can you get any vaguer
23:01:43 <monqy> maybe
23:01:52 <FreeFull> > compare a (-a)
23:01:53 <lambdabot> LT
23:02:09 <kmc> > compare a b
23:02:10 <FreeFull> Oh, shachaf already did that
23:02:10 <lambdabot> LT
23:02:13 <kmc> heh
23:02:16 <FreeFull> > compare compare compare
23:02:18 <lambdabot> No instance for (GHC.Classes.Ord (a0 -> a0 -> GHC.Types.Ordering))
23:02:18 <lambdabot> arisi...
23:03:26 <FreeFull> You know, one advantage of lisp over haskell, you can always treat functions as data, and can do things like displaying functions or reading functions in
23:03:54 <Bike> (< < <) is still wrong, sorry
23:04:05 <monqy> since when is that an advantage :-)
23:04:32 <shachaf> concision is equivalent to powerfulness monqy
23:05:28 <monqy> language with a primitive to solve sudoku. now that's power.
23:06:11 <zzo38> In Haskell though, you can also make up a data type, which can be used to make functions, although it does not have that normally.
23:06:52 <shachaf> Quick:
23:06:58 <zzo38> Treating functions as data to change parts of it can be useful though; but depending what you do, there might be other ways
23:06:58 <shachaf> What should p a b -> p (r,a) (r,b) be called?
23:07:06 <shachaf> edwardk wants to call it Strong.
23:07:11 <shachaf> I don't like that class??
23:07:27 <shachaf> class name
23:07:35 <Bike> Fucksterson
23:07:42 <monqy> "second" :-)
23:08:14 <shachaf> monqy: the class provides p a b -> (a,r) (b,r) too though.
23:08:34 <monqy> "(***)" :-)
23:08:36 <Bike> FirstOrSecond
23:08:39 <shachaf> Quick, edwardk will "ship" this as soon as he finishes cleaning up the haddocks!
23:08:48 <shachaf> Bike: More like FirstAndSecond!!
23:08:56 <Bike> :O
23:09:18 <zzo38> A category with *** making a monoid is called a tensor category, I think.
23:09:24 <Bike> how about just use some symbols
23:09:29 <Bike> "(*&*)"
23:09:38 <shachaf> zzo38: It doesn't have (***)
23:09:40 <shachaf> It's not a category.
23:09:54 <zzo38> I don't know why you don't like Strong, I think Strong is OK.
23:10:11 <FreeFull> :t (***)
23:10:12 <lambdabot> Arrow a => a b c -> a b' c' -> a (b, b') (c, c')
23:10:16 <shachaf> The same thing with Either is called Choice.
23:10:40 <monqy> "cochoice"
23:10:49 <FreeFull> > [1,2,3] *** [4,5,6]
23:10:49 <zzo38> Cochoice, perhaps?
23:10:51 <lambdabot> Couldn't match expected type `a0 b0' with actual type `[]'
23:11:07 <FreeFull> Wait
23:11:11 <FreeFull> Need something with two constructors
23:11:23 <FreeFull> No
23:11:26 <FreeFull> confused
23:11:30 <shachaf> zzo38: Well, it's been pushed to Hackage.
23:11:30 <zzo38> FreeFull: Such as, (->) is a tensor category too, can be use with ***
23:11:33 <shachaf> So Strong it is.
23:11:36 <zzo38> OK
23:12:23 <FreeFull> > ((\x y -> x*y) *** (\x y -> x+y))
23:12:24 <lambdabot> No instance for (GHC.Show.Show ((a0, a1) -> (a0 -> a0, a1 -> a1)))
23:12:25 <lambdabot> arisi...
23:12:37 <FreeFull> > ((\x y -> x*y) *** (\x y -> x+y)) (1,2)
23:12:39 <lambdabot> No instances for (GHC.Show.Show (a0 -> a0),
23:12:39 <lambdabot> GHC.Show.Sho...
23:12:49 <FreeFull> > ((\x y -> x*y) *** (\x y -> x+y)) ((1,3),(2,4))
23:12:50 <lambdabot> No instances for (GHC.Num.Num (t0, t1), GHC.Num.Num (t2, t3))
23:12:50 <lambdabot> arising fr...
23:12:59 <FreeFull> :t ((\x y -> x*y) *** (\x y -> x+y))
23:12:59 <Bike> > ((\x y -> x*y) *** (\x y -> x+y)) (1,2) 9
23:13:00 <lambdabot> (Num a1, Num a) => (a, a1) -> (a -> a, a1 -> a1)
23:13:00 <lambdabot> The function `(\ x y -> x GHC.Num.* y)
23:13:01 <lambdabot> Control.Arrow.*** (\ ...
23:13:06 <Bike> nice
23:13:42 <FreeFull> I'm confused about how you use ***
23:14:05 <shachaf> > ((+1) *** length) (4,"hello")
23:14:06 <lambdabot> (5,5)
23:14:34 <monqy> > const "hello" $ (***) *** (***)
23:14:35 <lambdabot> Ambiguous type variable `a0' in the constraint:
23:14:35 <lambdabot> (Control.Arrow.Arrow a0)...
23:14:38 <monqy> oh nooo
23:15:18 <FreeFull> shachaf: Why does the result take a tuple argument
23:15:24 <shachaf> @ty (***)
23:15:25 <lambdabot> Arrow a => a b c -> a b' c' -> a (b, b') (c, c')
23:15:37 <monqy> have fun explaining arrows
23:15:42 <monqy> "the true arrows joke"
23:16:04 <shachaf> monqy: well if you understand monads understanding arrows is just the next thing to do
23:16:08 <shachaf> "the next step in the progression"
23:16:10 <Bike> :k (->)
23:16:12 <lambdabot> * -> * -> *
23:16:15 <FreeFull> shachaf: Wouldn't comonads come first
23:16:26 <shachaf> FreeFull: The joke is that arrows are terrible
23:17:10 <zzo38> I also think Arrow is not so good, it should just have category, and then tensor category, and functor between categories, Arrow tries to put it together in the wrong way.
23:17:25 <shachaf> zzo38: We've figured out what the "true hierarchy" should look like.
23:17:49 <FreeFull> fmap (atob) somea
23:18:37 <FreeFull> What does $! do differently from $ ? Is it less lazy?
23:18:54 <zzo38> Haskell does not allow you do define class hierarchies in both ways; you cannot define a automatic superclass later on, or define splits and automatic subclass and combine and whatever like that!
23:19:08 <kmc> FreeFull: yes
23:19:09 <kmc> @src ($!)
23:19:09 <lambdabot> f $! x = x `seq` f x
23:20:29 <Bike> @src (->)
23:20:29 <lambdabot> Source not found. :(
23:20:31 <zzo38> Such as, (arr) is a functor from (->) to this other category, (***) defines a tensor category, etc, really they should be separate
23:21:07 <shachaf> zzo38: I agree completely.
23:21:45 <zzo38> And not all tensor categories have a functor from (->) and anyways you might want to define a functor from some other category.
23:22:13 <kmc> the arrow combinators are pretty useful if you specialize them to (->)
23:22:18 <kmc> but the Arrow generalization is crap
23:22:33 <shachaf> kmc: Our new generalization for lenses looks a whole lot like the Arrow methods.
23:22:39 <kmc> oh dear
23:22:39 <shachaf> Except split up differently.
23:22:43 <kmc> good
23:22:47 <zzo38> kmc: Yes, they are useful with (->) but still, they could be generalized but Arrow is the wrong way to do generalize.
23:23:10 <shachaf> We don't even want the Category superclass.
23:23:16 <shachaf> Lots of useful profunctors aren't categories.
23:23:30 <kmc> profunctor protip
23:23:44 <shachaf> Hah, our "id" method is called "tip"
23:23:50 <shachaf> We should call it "protip"
23:23:58 <FreeFull> :t fmap id
23:23:59 <lambdabot> Functor f => f b -> f b
23:24:59 <Sgeo> ..ok
23:25:02 <kmc> «id ≡ fmap id» is a functor law
23:25:05 <Sgeo> Programming from the debugger is weird
23:25:28 <Sgeo> How sane/insane is it to write a program in Smalltalk starting from the high level and just writing methods as the debugger keeps complaining?
23:26:54 <Bike> mm, pH of 10 or so, I'd say.
23:27:11 <shachaf> Sadly many functors don't satisfy that law.
23:27:13 <shachaf> Like (r ->)
23:27:18 <oerjan> Bike: pH of 10 isn't insane, just basic
23:27:25 <kmc> shachaf: due to strictness?
23:27:28 <shachaf> Yes.
23:27:28 <Bike> Exactly.
23:27:44 <kmc> haskellers tend to ignore that when talking about laws :)
23:27:52 <shachaf> True.
23:28:15 <shachaf> In lens we unsafeCoerce instead of using (foo . Newtype)
23:28:35 <monqy> :(
23:28:46 <shachaf> Even if you define strict composition, GHC doesn't manage to optimize (foo `dot` id) to foo.
23:28:55 <shachaf> I originally introduced the idea but now edwardk is a much bigger fan of it than I am.
23:28:57 <oerjan> fmap id = (.) id - how is that not id?
23:29:11 <shachaf> > ((.) id) undefined `seq` ()
23:29:13 <lambdabot> Ambiguous type variable `f0' in the constraint:
23:29:13 <lambdabot> (GHC.Base.Functor f0) ar...
23:29:26 <oerjan> hmph
23:29:27 <shachaf> > ((P..) id) undefined `seq` ()
23:29:28 <lambdabot> ()
23:29:30 <shachaf> thanks Cale
23:29:30 <Bike> "cool"
23:29:36 <monqy> caleskell is beauty
23:29:55 <shachaf> caleskell: more like annoyingskell??
23:31:45 <Bike> "hackskell" imo
23:32:03 -!- augur has joined.
23:32:15 <zzo38> Yes useful profunctors may be not categories, but, yet it is why I wanted to make Ibtlfmm to change a lot of things about the type classes to not have such problems as these.
23:32:38 <shachaf> monqy: btw edwardk shipped the new profunctors
23:32:40 <shachaf> with the name Strong
23:32:46 <zzo38> So one thing that would be needed for this, is kinds to also have constraints, as well as types.
23:33:09 <monqy> shachaf: yeah i need to install them if i want to install the new lenses because dependencies...
23:33:20 <shachaf> monqy: wait do you even install lenses
23:33:25 <shachaf> like lens HEAD??
23:33:28 <monqy> yes
23:33:30 <shachaf> wow
23:33:37 <shachaf> you're more "into lenses than i thought"
23:33:59 <shachaf> i guess it's monqy, lenxpert
23:34:53 <monqy> installed :0
23:35:01 * Sgeo freezes Pharo
23:35:29 <Sgeo> Turns out modifying stuff in order to let the declare inst var thingy redefine UndefinedObject is a bad idea
23:41:37 -!- impomatic has left.
23:48:48 -!- sirdancealot has quit (Remote host closed the connection).
2013-01-14
00:13:58 <tswett> Ibtlfmm, eh? Is that a programming language?
00:15:02 <Sgeo> Am I seriously about to try to convince myself that it's acceptable for a programming language to not have macros?
00:15:23 <shachaf> Are you?
00:15:26 <Bike> you're really dramatic, did you know that
00:15:33 <Bike> you should write plays!
00:15:34 <shachaf> The whole world is holding its breath, waiting for an answer.
00:15:42 <shachaf> Bike: Stop spoiling it.
00:15:46 <Bike> plays about hygenic macros
00:15:49 <tswett> Doesn't Haskell lack macros?
00:15:58 <tswett> Python, too?
00:16:12 <Bike> sgeo's going to have to deal with his love betraying him in this fashion, yes
00:16:30 <shachaf> I bet Clojure lacks macros.
00:16:31 <oerjan> > pred <$> "Ibtlfmm"
00:16:32 <lambdabot> "Haskell"
00:16:43 <Sgeo> Lack of macros was a reason for me to lose interest in Haskell
00:16:44 <tswett> Ah.
00:16:58 <Sgeo> And Python
00:17:05 <shachaf> what about the fact that haskell more like stupidskell
00:17:07 <Phantom_Hoover> Sgeo, this is a joke right
00:17:08 <shachaf> was that a reason
00:17:16 <tswett> Kinda funny. I tend to think of macros as being a sign of a bad language.
00:17:21 <Bike> I'm telling you. Hackskell is what all the cool kids are going to be saying, shachaf.
00:17:32 <kmc> GHC Haskell has macros
00:17:32 <shachaf> Bike: I didn't see monqy say it.
00:17:37 <Sgeo> But Smalltalk has some reflective features that sort of kind of make up for it
00:17:42 <Bike> monqy: Get on that.
00:17:45 <Sgeo> And the IDE is something that I really like
00:17:50 <tswett> Sgeo: do you think you have any interest in NFU?
00:17:53 <Sgeo> NFU?
00:17:57 <Sgeo> Oh, I didn't look at that
00:18:02 * tswett nods.
00:18:17 <shachaf> monqy is imo "the coolest kid??"
00:18:21 <tswett> I'm interested in it greatly because it seems like it could be a good platform for doing category theory.
00:18:46 <Bike> We don't need your o for that, shachaf. It's everybody's o. It's the world's o.
00:19:08 <shachaf> Bike: but is it monqys o........
00:19:19 <Bike> That remains to be seen.
00:19:21 <tswett> Because ZFC seems like it is not a good platform for category theory, and... and I guess I haven't looked at anything other than ZFC and NFU.
00:19:23 <Sgeo> tswett, I think that sometimes macros can make people lazy in coming up with abstractions
00:19:25 <Bike> monqy is more than the world, of course.
00:19:27 <shachaf> monqy: iuo are you "the coolest kid??"
00:19:41 <kmc> tswett: macros are the feature of last resort. you don't /want/ to use them, but in cases where everything else fails, it is much better to have macros than not
00:19:59 <tswett> kmc: that sounds exactly correct.
00:20:15 <kmc> probably Lisp et al celebrate macros a bit too much
00:21:02 <Sgeo> "From what this guy is saying, the power of Lisp style Macros is akin to what I can do with the syntactic Rewrite Tool and Blocks (Lambdas) in Smalltalk. "
00:21:07 <tswett> Though I have been fantasizing about a programming language that is essentially C++ with tons and tons and tons and tons and tons of macro features.
00:21:17 <tswett> Come to think of it, I guess C++ already has a bunch of macro-like things.
00:21:24 <Sgeo> (Rewrite Tool seems to be a thing that extends the IDE with code to transform code once, but I'm not sure)
00:21:25 <kmc> yeah people love metaprogramming C++ but they have to do it in this shit-ass template language
00:21:42 <shachaf> i love macros
00:21:44 <shachaf> they are so easy
00:21:45 <Sgeo> So, you write code one way, transform it into something more complicated, but... it stays complicated
00:21:47 <tswett> But what I mean is, like, C++ with so much metaprogramming stuff that you could essentially write Haskell in it.
00:22:11 <Sgeo> I think
00:22:18 <shachaf> Sgeo: Did you put me on the MIUAF update list?
00:22:35 <Sgeo> I don't even know what MIUAF is. So no.
00:22:42 <shachaf> whoa, dude, kmc is Twitterizing?
00:24:27 <tswett> > succ <$> "lambdabot"
00:24:29 <lambdabot> "mbncebcpu"
00:24:33 <shachaf> kmc: welcome to the "twittosphere"
00:24:49 <shachaf> If I "followed" people I would totally "follow" you.
00:25:08 <shachaf> Instead I'll put you in my file of "people to "follow" if I ever start "following" people"
00:25:25 <kmc> k
00:25:32 <shachaf> Next best thing.
00:26:27 <Sgeo> Ok, the Rewrite Tool thing seems to be some sort of search and replace
00:27:08 <Sgeo> What's this about kmc on Twitter?
00:28:39 <kmc> not a fan of solutions to boilerplate that involve "make the IDE write the boilerplate for you"
00:28:47 <kmc> code is read much more often than it's written
00:29:17 <kmc> a good abstraction allows you to reason about something without knowing what the abstraction expands to
00:29:29 <shachaf> Sgeo: I can't tell if that article is a parody.
00:30:15 <kmc> copypasta code should be avoided because it's hard to read, not because my poor fingers can't type it
00:30:35 <kmc> when i see copypasta code i often feel like i'm playing one of those 'spot the difference' puzzles
00:30:54 <kmc> where they have two drawings of a room and you need to identify the 5 different features
00:32:17 <shachaf> Sounds right.
00:32:32 <shachaf> Ideally if you generate code you should only ever have to read the source of the thing that generates it.
00:32:45 <shachaf> It can be tricky if that source is a bunch of vim macros.
00:32:50 <shachaf> Sgeo: Do vim macros count as macros?
00:33:09 <shachaf> lens has files like http://hackage.haskell.org/packages/archive/lens/3.7.3/doc/html/src/Control-Lens-Tuple.html :-(
00:33:48 <Bike> nice
00:34:07 <Bike> seems reasonably easy to distinguish the "boilerplate" there, though
00:34:53 <monqy> do people use 9-tuples? maybe in codegen....do people use codegen................
00:35:15 <Bike> though uh, what happens if you want 9-tu- yeah.
00:35:24 <kmc> shachaf: yeah there are a lot of things like that in haskell :(
00:35:26 <Bike> or 10-tuples. whatever
00:35:47 <kmc> doesn't stop beginners from gushing about how Haskell is so concise and abstract and you never need to repeat yourself
00:36:18 <Bike> beginners gush about everything regardless of anything, though
00:36:32 <kmc> true
00:36:50 <Bike> it's not haskell's fault, you just have to wait for them to germinate into soulless, bitter husks. Who use Lens.
00:36:56 <kmc> :D
00:37:21 <shachaf> It's pretty odd that people join #haskell with nicks like "HaskellGuy73" and talk about how Haskell is the best language ever, when it's apparent that they barely know it.
00:37:36 <Bike> what's odd about it?
00:37:43 <monqy> odd but not surprising
00:37:51 <monqy> predictable but sad
00:38:01 <Bike> yeah that sounds more appropriate.
00:38:04 <Bike> you're a gift to us all, monqy.
00:38:10 <monqy> why would people do that? well, it's just a thing people do.....
00:38:27 <shachaf> btw elliott said it was odd first
00:38:30 <Phantom_Hoover> `quote inspiration to us all
00:38:30 <shachaf> "im just parroting him"
00:38:32 <HackEgo> 546) <elliott> Dear god stop staring at me. <monqy> no never <Phantom_Hoover> monqy is always staring at everyone. <monqy> it takes many eyes to do this but I manage <Phantom_Hoover> He is an inspiration to us all.
00:39:12 <shachaf> `quote Phanton___Hoover
00:39:14 <HackEgo> No output.
00:39:16 <shachaf> `quoerjan
00:39:17 <HackEgo> 222) <oerjan> (the former is a very deep theorem, i'd have had to read the whole book to understand it, so i didn't.) \ 190) * oerjan considered buying lutefisk, but apparently it cannot be prepared in microwave </bachelor frog> \ 59) * oerjan swats FireFly since he's easier to hit -----### <FireFly> Meh * FireFly dies \ 377) <oerjan> as i was fi
00:39:59 <Sgeo> "These people would typically claim that it was not a necessary feature, everything you could do with macros could be done using various features of Smalltalk. I do not dispute this, save to observe that the same could be said for a Turing machine. "
00:40:06 <kmc> shachaf: what about HaskellLove
00:40:19 <kmc> 'don't forget that HaskellLove used to be scalalove'
00:40:31 <shachaf> HaskellLove has been gone for a while now.
00:40:31 <Bike> the turing argument is such a boring argument
00:40:33 <kmc> shachaf: how many eulers have you done
00:40:35 <shachaf> Who knows what they are now.
00:40:41 <kmc> gotta do 20 eulers this afternoon
00:40:48 <shachaf> i love eulers
00:40:50 <shachaf> they are so easy
00:40:53 <kmc> btw my uncle is the king of space
00:40:56 <shachaf> I guess beaky is in the post-kmc era.
00:41:01 <kmc> i don't know this beaky
00:41:16 <shachaf> You're missing out.
00:42:01 <kmc> Haskell has this problem more than most, because it's so different
00:42:32 -!- FreeFull has quit.
00:42:33 <kmc> presumably it is a bit harder to be a seasoned Python developer and then one day decide that Ruby is the answer to all problems of software
00:42:54 <kmc> cause it's self-evidently pretty similar
00:42:57 <kmc> i'm sure people do it though
00:43:13 <kmc> people who think that superficial details of syntax are the answer to all problems of software
00:43:18 <Bike> and they write excitingly long blog posts about it!
00:43:38 <kmc> you see, i am better than those people because i'm too bitter to find anything exciting anymore
00:43:42 <kmc> clearly.
00:43:55 <kmc> (it's not actually true though, i'm just excited by things other than languages)
00:44:08 <Bike> so anyway, how's Agda on Aeroplanes going
00:44:32 <shachaf> kmc: What are you excited by these days?
00:45:17 <kmc> emulating page permissions using split TLBs
00:45:27 <kmc> stackjacking exploit against asterisk
00:45:41 <Bike> Anything involving the word "stackjacking" is pretty exciting imo
00:45:48 <kmc> here is another thing i found cool recently: '...one strategy group was buying iphones periodically and comparing their serial numbers to estimate the velocity of sales, to front run the earnings numbers from Apple.'
00:45:49 <shachaf> Is that a card game?
00:46:11 <shachaf> That's like the what's-it-called.
00:46:12 <Bike> kmc: german tank problem? do they actually use serial serial numbers?
00:46:20 <shachaf> That.
00:46:42 <kmc> haha, I did not know it was called this
00:46:51 <kmc> thanks
00:46:58 <Bike> really? i thought everybody learned about it in high school stats
00:47:10 <kmc> not I
00:47:13 <shachaf> I didn't have high school stats. :-(
00:47:13 <kmc> or maybe I forgot
00:47:18 <shachaf> Actually I sort of did.
00:47:21 <Bike> exciting applications of boring math, such as killing natzees, you see
00:47:27 <shachaf> But they certainly didn't talk about it.
00:47:31 <shachaf> But I heard about it somewhere else?
00:47:42 <kmc> AP Stats was a weird class because it was 50% students who found calculus too difficult and 50% students who had already completed all the calculus that was offered
00:47:52 <kmc> you might say it had a... *puts on sunglasses* bimodal distribution
00:47:58 -!- variable has joined.
00:48:01 <shachaf> Speaking of minor syntactic differences, it's funny how Ruby's "for x in xs; ...; end" and Python's "for x in xs: ..." are completely different.
00:48:09 <Bike> Hey that's what it was like here too, gosh
00:48:21 <Bike> shachaf: What's the difference? I think you mentioned that before...
00:48:23 <kmc> what does the ruby one do? decode some YAML into arbitrary Ruby objects?
00:48:26 <Fiora> I don't think I ever actually took a proper stats class, I really should have
00:48:58 <Bike> I don't remember much from ap stats, honestly...
00:49:03 <kmc> i took AP Stats in high school, and then in college a stats course that was more mathematical (e.g. proving that things are an unbiased estimator or whatever)
00:49:22 <kmc> the former was crucial for the latter, not because we learned much hard math, but because we learned the language statisticians use
00:49:28 <kmc> which is different from mathematicians and anyone else
00:49:48 <shachaf> Bike: One of them passes (\x -> ...) as an argument to a method; the other one calls a method repeatedly to get results.
00:49:50 <kmc> AP Stats was mainly about applying one of 5 cookbook procedures and then writing a couple paragraphs justifying your choice
00:49:57 <Fiora> kmc: also, wow, that iphone sales thing
00:49:59 <Fiora> that is brilliant
00:50:06 <Bike> do "mathematicians" even have a unified language
00:50:08 <kmc> which is not really a maths course, but seems to match how people use stats in the real world
00:50:10 <Phantom_Hoover> stats is horrible
00:50:11 <Bike> shachaf: uh, huh.
00:50:15 <Bike> *ah
00:50:44 <shachaf> Haskell's "traverse" is a generalization of both that's in practice a bit more awkward to use than either?
00:50:50 <kmc> Fiora: yeah, I want to find out if they actually made money doing this
00:50:52 <shachaf> Well, it depends on what you want to do with it.
00:50:55 <Fiora> that's much smarter than my stock trading strategy which consists of "short microsoft" (okay that's only half-serious but)
00:50:59 <kmc> shachaf: come again?
00:51:07 <kmc> sorry, I don't understand the "passes an argument" one
00:51:22 <shachaf> In Ruby "for x in xs; ...; end" becomes xs.each {|x| ... }
00:51:38 <kmc> oh
00:51:44 <tswett> shachaf: and I take it xs.each {|x| ... } is a function call to xs.each?
00:51:50 <Bike> method call
00:51:53 <shachaf> Er, yes.
00:52:04 <shachaf> You can emulate the Python behavior using continuations or something if you want.
00:52:06 <kmc> but conceptually, they both do iterate over xs and invoke some code once for each element, yeah?
00:52:14 <shachaf> Right.
00:52:18 <Bike> well, i think you could redefine the each method?
00:52:20 <shachaf> In this case the mechanisms overlap.
00:52:33 <shachaf> Bike: You can redefine __iter__ or whatever it is in Python too.
00:52:54 <shachaf> Anyway it's interesting that such completely different things are going on.
00:52:55 <Bike> mm.
00:53:08 <shachaf> In Haskell you use an Applicative to describe some arbitrary effects.
00:53:21 <shachaf> If you want you can use a coroutine monad or whatever you want to emulate the Python behavior.
00:53:47 <tswett> In Haskell, anything can have any behavior under any circumstance.
00:54:56 <shachaf> The Haskell behavior is actually pretty neat.
00:56:23 <shachaf> The Python thing makes it easy to zip two loops together, for example.
00:56:52 <shachaf> The Ruby thing can in theory map over more things.
00:57:00 <shachaf> Hmm, I said each, not map, so maybe that's irrelevant.
01:03:36 -!- zzo38 has quit (Remote host closed the connection).
01:15:35 <kmc> MIT is off the Internet and rumor is that they're being DDoSed in retaliation for their supposed role in Aaron Swartz's death
01:15:43 <coppro> sigh
01:16:03 <kmc> meanwhile MIT has already announced an inquiry into their involvement, led by Prof. Abelson
01:16:06 <Bike> huh, seems like it'd take more than just LOIC to take out MIT, but what do I know
01:16:23 <Fiora> LOIC has taken out some pretty big sites hasn't it?
01:16:51 <kmc> yeah, I'm not sure how much traffic MIT handles on a given day compared to, like, Reddit
01:16:57 <Fiora> I mean, they took out the DoJ, FBI, MPAA, warner brothers, RIAA, HADOPI, UMG, and the copyright office all at once
01:17:11 <Bike> oh. well then.
01:17:12 <kmc> it's a pretty small university and doesn't host any particularly large services to my knoweldge
01:17:39 <Fiora> I wouldn't be surprised if LOIC can take down most any site except the top few hundred
01:17:45 <kmc> they do have 1/256 of all IPv4 addresses but that doesn't really help ;P
01:18:33 <kmc> also there were several MITnet outages last week, so maybe there were existing problems
01:20:05 <kmc> attempts to search for "MIT DDoS" mainly find articles about DDoS written in German ;P
01:20:28 <Fiora> I'm reminded when anon tried to ddos amazon or something
01:20:30 <Fiora> and it did like
01:20:31 <Fiora> nothin
01:20:33 <Fiora> *nothing
01:20:48 <Fiora> I think it was during the wikileaks thing
01:22:49 <kmc> oh because AWS shut down the WikiLeaks server or something
01:23:04 <Bike> wikileaks used aws, really?
01:23:50 <Fiora> I thought it was because they refused payment processing?
01:23:51 <Sgeo> Here's a thought: Ruby's attr_accessor vs Smalltalk "let the IDE do it". By letting the IDE make the accessors, when you want to change one, it's a simpler change (just change what the IDE already made). With Ruby, you need to make one yourself according to the format of the thing and then change the attr_ line
01:24:01 <Sgeo> Not a big deal in Ruby, but a bigger deal in CLOS I think
01:24:16 <Bike> yeah, thatwould make more sense.
01:24:26 <kmc> oh
01:24:36 <Fiora> huh, w3.gov and the DOJ are down too
01:26:06 <shachaf> w3.gov?
01:26:29 <Fiora> or something. um
01:26:29 <monqy> w3.org seems downish too :^)
01:26:46 <Bike> i've never heard of w3.gov
01:26:48 <Fiora> oops
01:26:54 <shachaf> justice.gov is up
01:26:56 <Fiora> this is what I get for blindly reading articles and assuming they'r right >_>;
01:27:10 * Fiora note to self: techcrunch is badly written
01:27:24 <shachaf> Fiora: That is an problem with articles.
01:27:28 <Bike> more like too exciting for facts! :D
01:28:03 <kmc> Fiora: they're just leveraging crowd content to disrupt the space of social big data
01:28:10 <Bike> haha
01:29:07 <Fiora> XD
01:30:36 <shachaf> Bike: /nick Bicycle
01:30:49 -!- Bike has changed nick to Bicyclidine.
01:30:50 <kmc> http://farm9.staticflickr.com/8511/8377438923_a1357cedeb_b.jpg when you see it...
01:31:11 <Sgeo> I should probably eat
01:31:35 <Fiora> is that the world as a tesselation?
01:31:40 <shachaf> Sgeo: you could give up eating for lent
01:32:13 <monqy> kmc: the negative space?
01:32:19 <Sgeo> kmc, that wraps in a way I'm not used to
01:33:54 <shachaf> monqy: want an "exepert level puzzle"
01:34:01 <shachaf> ps you have to be an expert
01:34:02 <monqy> how expert is this
01:34:13 <shachaf> edwardk said it was expert
01:34:17 <Bicyclidine> sgeo: "have you ever been so self-centered you cut Asia in half?"
01:34:21 <shachaf> so i'm not sure but maybe pretty expert??
01:34:28 <monqy> maybe...
01:34:30 <shachaf> also it involves fixing lens
01:34:38 <monqy> :>
01:35:14 <Bicyclidine> kmc: anyway i give up, what is it? i'm so bad at seeing it
01:35:14 <shachaf> are you a bad enough dude to fix lens........................
01:35:19 <Sgeo> I should introduce lenses to... I would say $language but no language I'm currently or recently interested in uses $
01:35:21 <kmc> look at the shape of the oceans
01:35:33 <Bicyclidine> whoa
01:35:34 <kmc> so yeah what Fiora and monqy said
01:35:45 <Fiora> it made me think escher
01:36:13 <Bicyclidine> i was wondering why the antarctic peninsula had those weird-lookin' islands
01:36:43 <Sgeo> I thought the land masses near the edge were duplicated
01:37:00 <Sgeo> ...The negative space ones also have that effect
01:37:05 <Bicyclidine> well that's map projection for you
01:38:05 <monqy> shachaf: whats this puzzle
01:38:07 <kmc> oh right MIT hosts w3.org
01:38:14 <shachaf> 17:15 <edwardk> if someone wants a good expert level puzzle they can finish out the Tailor i indexed comonad definition
01:38:16 <kmc> :/
01:38:25 <monqy> oh
01:47:08 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:55:21 * oerjan first assumed it was some kind of reconstructed prehistoric earth
01:55:33 <Bicyclidine> same.
02:04:50 -!- DHeadshot has joined.
02:07:10 <Sgeo> :( I think Pharo multithreading is co-operative
02:07:28 <Sgeo> Based on the fact that [true] whileTrue: []. just froze it
02:08:12 <shachaf> Is that a clojure dialect?
02:08:38 <Sgeo> Interruptible via Alt-.
02:08:58 <Sgeo> shachaf, if you want to believe it is, feel free to do so.
02:35:03 <quintopia> its smalltalk daftyhead
02:36:29 <Bicyclidine> Well Smalltalk runs in a VM right. So does Clojure.
02:36:43 <quintopia> so they're obviously the same thing
02:36:44 <kmc> so does C
02:36:45 <quintopia> i get it
02:37:02 <quintopia> C runs in a machine
02:37:20 <Bicyclidine> hm, actually is there a smalltalk that targets jvm instead of the... what is it even called? smalltalk vm?
02:38:07 <quintopia> there are a variety of smalltalk vms, so the /the/ is a bit off
02:38:12 <Gregor> There is no standard for the Smalltalk VM, and hence there's no name beyond "Smalltalk VM"
02:38:20 -!- ared_ has joined.
02:38:26 <Bicyclidine> oh, i was thinking of the one in the smalltalk-80 manual, i thought it was common
02:39:06 <quintopia> squeak is probably the most popular, tho pharo is catching on p quick
02:39:07 <shachaf> Smalltalk VMS? I hope that's not Smalltalk for VMS.
02:39:15 <Gregor> By my understanding, which may be wrong, of "The Language and Implementation" from that book, people care about the language, and some ideas, but only ideas, from the implementation :)
02:39:31 <Bicyclidine> heh.
02:42:05 -!- asderca77 has quit (Ping timeout: 272 seconds).
02:43:01 <kmc> well maybe it's more correct to say "C is a virtual machine"
02:43:22 -!- poillll has joined.
02:43:23 <kmc> all languages are specifications for virtual machines and all language implementations are virtual machine implementations
02:44:38 <Bicyclidine> are there things commonly referred to as "virtual machines" that have an execution model more complicated than assemblylike? (or, well, not linear, if that makes sense)
02:45:09 <Fiora> do massively parallel things count?
02:45:24 -!- Lotuss has joined.
02:45:55 <Bicyclidine> I remember reading a paper about a pointer-oriented architecture once, but I forget if it was supposed to be hardware or software or someone's psychedelic nonsense.
02:46:21 <Bicyclidine> Fiora: well the flow of control is still broadly "there's a PC, it goes a word at a time", isn't it
02:46:39 <kmc> well the JVM has memory-ordering semantics for concurrency
02:46:52 -!- Arc_Koen has quit (Quit: Arc_Koen).
02:47:01 <kmc> they are kind of shitty as i recall
02:47:13 <Fiora> hmm. what about something like the game of life? like a "virtual machine" that is a set of rules to evolve some state over time
02:47:20 -!- poillll has quit (Read error: Connection reset by peer).
02:47:28 <Bicyclidine> Oh, I had a professor trying to do that in hardware.
02:47:36 <Sgeo> I don't know whether I should `list
02:47:49 <Bicyclidine> And then there's dataflow processors and stuff.
02:48:12 <Bicyclidine> But I guess the advantages of a different execution model in the VM are kind of negated if the underlying (V)M has a wildly different one.
02:48:13 <Fiora> what about those processor design type things where you have ALUs directly connected to memory?
02:48:19 <Fiora> so that every single byte in memory gets operated on every cycle or whatnot
02:48:27 <Bicyclidine> I do not know those type things >_>
02:48:29 <shachaf> Sgeo: Looks like it's still 865 to me.
02:48:35 <Fiora> I remember it being an alternative to the von neumann bottleneck
02:48:40 <Fiora> of some sort
02:48:46 <Sgeo> Because there's a new Tumblr post
02:48:46 <Sgeo> http://mspandrew.tumblr.com/post/40486423180/lets-take-a-look-at-a-few-responses-more
02:49:26 <Bicyclidine> "butthurt socialjusticefag", aight.
02:49:33 <Bicyclidine> Fiora: so, what do you mean exactly, I don't think I get it?
02:50:26 <Fiora> um. basically like if I remember right
02:50:34 <Fiora> in a normal machine you fetch some data and operate on it each cycle
02:50:39 <Bicyclidine> right.
02:50:41 <Fiora> in like, a neural network, every bit of data gets operated on every cycle
02:50:47 -!- Lotuss has left.
02:51:12 <Fiora> because for every bit of state (a neuron for example) you also have hardware that modifies that state based on other things (some sort of logic unit?)
02:51:32 <Fiora> so like, imagine you wanted to do the game of life in hardware
02:51:34 <Bicyclidine> dataflow processor, I thought that was called
02:51:37 <Fiora> oh, so that's what it is
02:51:46 <shachaf> Every neuron has a corresponding neuroff.
02:51:47 <Bicyclidine> like an actual neural network, not what you're talking about, which sounds like you still have one CPU
02:52:03 <Fiora> I was thinking the sort of thing where "game of life" would be a 1024x1024 SRAM array hooked up so that each square of 9 wires into a logic unit
02:52:07 <Fiora> and to an output 1024x1024 SRAM array
02:52:23 <Fiora> so that's what a dataflow processor is?
02:52:54 <Bicyclidine> er, no, I think a dataflow processor is where you have a bunch of processors piping data into each other, like a physical neural network?
02:53:41 <Bicyclidine> ugh, i bet i'm getting the name wrong and ust making things up
02:54:06 <Fiora> I guess I was just thinking of the more general concept of "the amount of arithmetic logic you have is proportional to your memory" sort of thing
02:54:10 <Fiora> like a neural network would count as that
02:54:29 <Bicyclidine> mm, yeah.
02:54:32 <Fiora> so a processor with 1MB of memory would do operations on all 1MB every cycle
02:54:47 <Fiora> like a neural net would count as that, right?
02:55:00 <Bicyclidine> well depending on the complexity of the operations, i guess
02:55:10 <Fiora> yeah, I mean, you'd be doing far simpler operations
02:55:15 <Fiora> but looots of them
03:02:20 <Bicyclidine> guess it depends on what the operations are. a basic ANN is just a weighted sum, guess that wouldn't be hard to do in blocks
03:03:41 <Fiora> I remember when reading about this that the basic idea was that, since it's becoming more expensive to move things around than to do arithmetic on them, why not just avoid moving things around entirely
03:04:03 <Fiora> at least in the traditional buses-with-memory-controllers-and-caches-and-prefetchers-and-ways-and-things sense
03:04:11 <Bicyclidine> I thought it was always more expensive? That's why we have caches for memory but not arithmetic.
03:04:48 <Fiora> I think the ratio has gotten worse over time?
03:04:59 <Bicyclidine> geez.
03:05:21 <Fiora> http://en.wikipedia.org/wiki/Von_Neumann_bottleneck#Von_Neumann_bottleneck
03:05:53 <Fiora> I guess one way to look at it would be to like, compare the ratio of (things not ALUs) to (things that are ALUs) in like, a CPU, to a GPU
03:08:41 -!- ared__ has joined.
03:08:46 <Fiora> Bicyclidine: ooh, this is a thing.
03:08:48 <Fiora> http://en.wikipedia.org/wiki/Content-addressable_memory
03:08:51 <Bicyclidine> man, backus was cool
03:08:58 <Bicyclidine> Oh, that's the hardware hashish thing, right?
03:09:11 <Bicyclidine> that... isn't very good as made up adjectives go, is it.
03:09:12 <Fiora> it's something like what I described I think?
03:09:17 <Fiora> it has a comparison dicruit for every single bit in the memory
03:09:20 <Fiora> *circuit
03:09:29 <Fiora> so it's able to search the entire memory in one cycle
03:09:52 <Fiora> oh huh. that's how TLBs work
03:10:23 <Bicyclidine> i really shouldn't conflate hash tables with associative maps.
03:10:30 <shachaf> You shouldn't.
03:10:40 <monqy> i agree with shachaf
03:10:46 <shachaf> i agree with monqy
03:10:58 <Bicyclidine> Thachaf.
03:11:22 <shachaf> Bicyclidine: YOUR SENTENCE: s/idin//
03:11:38 -!- ared_ has quit (Ping timeout: 240 seconds).
03:11:48 <kmc> hardware hashish
03:11:48 <kmc> yes
03:12:01 <Bicyclidine> hardware hashashin
03:12:08 <kmc> yes
03:12:15 <kmc> next after ninjas and rockstars will be hashashin
03:12:17 <shachaf> i love hardware
03:12:19 <shachaf> they are so easy
03:12:59 <monqy> where did this loving /e asy thing come from this is like the 3rd time ive caught you saying it
03:13:02 <Fiora> $startup is looking for 3 ruby assassins to develop our backend
03:13:15 <monqy> assassins???
03:13:21 <Bicyclidine> If Stephenson wrote about hashashin would they be "popular"? Maybe he should do that. Then maybe people could learn about Ismailism! (haha like hell)
03:13:21 <Fiora> make sure to have at least 2 years of experience in ruby and rails, and 4 years of experience in knife and shuriken throwing
03:13:32 <Fiora> bonus points if you show up in the interview room without us seeing you
03:13:49 <kmc> they are mentioned briefly in Cryptonomicon
03:13:53 <shachaf> monqy: http://slbkbs.org/beaky.txt
03:14:18 <monqy> hooooo boy
03:14:22 <kmc> anyway I think that caliphpunk should be a thing
03:14:50 <Fiora> like cyberpunk, except middle-eastern themed instead of japan?
03:14:52 <Bicyclidine> Shitloads of stuff is mentioned briefly in Cryptonomicon, though. I haven't seen a Russian cryptographer coolness vival!!
03:14:57 <Bicyclidine> kmc: isn't that assassin's creed
03:15:04 <kmc> more like steampunk but set in 800 AD
03:15:07 <Bicyclidine> no, wait, the israel in that isn't caliphate is it
03:15:09 <kmc> in the middle east
03:15:10 <shachaf> monqy: try searching for things like "love"
03:15:27 <monqy> wow
03:15:28 <Bicyclidine> shachaf: jesus.
03:15:29 <shachaf> or "monoid"
03:15:46 <monqy> ahh yes
03:15:54 <monqy> what is WITH this guy
03:15:56 <Bicyclidine> «imagine if Haskell had a ``Design Patterns'' textbook equivalent that OOP folks refer to for abstractions» leaving now
03:16:15 <monqy> haskell/12.12.03:00:53:40 <beaky> monoids ftw
03:16:15 <monqy> haskell/12.12.03:00:58:56 <beaky> you love them too?
03:16:15 <monqy> haskell/12.12.03:00:59:12 <beaky> lambdabot can talk?
03:16:18 <monqy> shachaf was this your doing
03:16:22 <Sgeo> Pharo's dynamic variables involve making a class for each dynamic variable
03:16:38 <Bicyclidine> stale joke about "enterprise" here
03:16:45 <monqy> he keeps saying he loves things????help
03:17:00 <monqy> haskell/12.12.29:09:57:40 <beaky> lambdabot: I thought you loved monoids :(
03:17:01 <monqy> shachaf
03:17:05 <kmc> stardate 2.4 something
03:17:17 <Bicyclidine> kmc: imo we should just have more fiction set in caliphates in general
03:17:18 <shachaf> monqy what
03:17:28 <monqy> did you make lambdabot say things about monoids
03:17:50 <shachaf> who knows
03:18:20 <Bicyclidine> kmc: or really anywhere other than triply fictional medieval france but we knew that already
03:19:49 <shachaf> monqy: beaky is an "acquired taste"
03:19:57 <shachaf> i didn't appreciate beaky at first
03:21:49 <lambdabot> monqy: do you love monoids
03:23:11 <shachaf> 12:37:53 <beaky> stacks ftw
03:23:15 <shachaf> 12:38:08 <Cale> beaky: GHC doesn't use a call stack
03:23:19 <shachaf> 12:38:43 <Cale> (but it does actually use a stack, just not for function applications)
03:23:22 <shachaf> 12:38:48 <beaky> ah
03:23:24 <monqy> lambdabot: yes
03:23:30 <shachaf> ...
03:23:34 <shachaf> 12:39:22 <mauke> mcstar: that's still recursion :-)
03:23:34 <shachaf> 12:39:30 <beaky> recursion ftw
03:23:48 <Bicyclidine> imo corecursion
03:23:55 <monqy> beaky is a hero
03:25:12 <shachaf> imo monqy is a hero
03:25:48 -!- ared__ has quit (Read error: Connection reset by peer).
03:28:39 <kmc> beaky is a bot?!?
03:29:01 <shachaf> Huh?
03:29:06 <kmc> "Fair use for Tsar Bomba... The photograph belongs to Russian department of Atomic Energy Minatom. Introducing the picture on our server does not interfere with their ability to develop and market new nuclear devices"
03:29:26 <Bicyclidine> that may be the best copyright notice i've ever seen.
03:29:43 <kmc> yes it's one of my favorites
03:30:16 <shachaf> copyright ©
03:30:19 <shachaf> copyright ⓒ
03:30:22 <shachaf> copyright Ⓒ
03:30:24 <shachaf> ?????
03:31:04 <Bicyclidine> does the atomic energy minatom actually "market" nukes
03:31:27 <oerjan> unicode: making illegal copies of ©
03:31:36 <shachaf> copyright 🄫
03:31:50 <shachaf> copyright ㉢
03:32:05 <Bicyclidine> what, that's hangul. foul!
03:32:12 <shachaf> copyright 🅒
03:32:47 <Bicyclidine> Wait, Unicode has italic? Does that mean like from Italy, or actually italic
03:33:36 <shachaf> Sure it has italic.
03:33:38 <shachaf> Just ask kmc.
03:33:44 <kmc> Northrop Grumman made a nice CGI promotional video for the Minuteman III inter-continental ballistic missile
03:33:53 <kmc> you can find it on YouTube with various heavy metal songs dubbed over
03:34:02 <Bicyclidine> kmc, could you rant about this for a minute so i can absorb your brain? thanks
03:34:22 <shachaf> Maybe I shouldn't do the "Just ask kmc." thing.
03:34:36 <Bicyclidine> like how you shouldn't do the "it's trivial" thing?
03:34:52 <kmc> i was thinking i would go with Lockheed Martin Space Systems for my next ballistic missile purchase but this Minuteman video really turned me around
03:35:09 <shachaf> copyright ⒞
03:35:10 <kmc> i don't know much about italic
03:35:11 <Bicyclidine> haha
03:35:24 <Bicyclidine> what, why would you need parentheses in the one character
03:35:25 <shachaf> copyright ㈂
03:35:26 <kmc> just http://en.wikipedia.org/wiki/Mathematical_Alphanumeric_Symbols
03:35:40 <shachaf> Hmm, I like these:
03:35:43 <shachaf> FD3E ORNATE LEFT PARENTHESIS [﴾]
03:35:44 <shachaf> FD3F ORNATE RIGHT PARENTHESIS [﴿]
03:35:50 <Bicyclidine> Those are... pretty ornate.
03:35:58 <shachaf> Oh, it's just my font.
03:36:05 <shachaf> http://www.fileformat.info/info/unicode/char/fd3e/index.htm shows them as ornate.
03:36:10 <shachaf> Here they look like normal parentheses.
03:36:26 <Bicyclidine> yeah, they look kinda cool in my font.
03:36:44 <Bicyclidine> probably should remap () to ﴾﴿ for shiggles in fact.
03:38:00 <shachaf> kmc: Looks like I'll be going to NY in March instead of Feb.
03:38:06 <shachaf> "trip report delayed"
03:39:30 <shachaf> FF5F FULLWIDTH LEFT WHITE PARENTHESIS [⦅]
03:39:30 <shachaf> FF60 FULLWIDTH RIGHT WHITE PARENTHESIS [⦆]
03:40:47 <kmc> all that effort just to drop 475 thousand tons of TNT on someone
03:41:25 <kmc> that is pretty ornate
03:41:25 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:41:40 <kmc> maybe Template Haskell should use those
03:41:42 -!- DHeadshot has joined.
03:41:44 <Bicyclidine> Hey, dropping tons of TNT on people has been an important use of human resources for decades. Don't diss your forepeople.
03:42:52 -!- sebbu2 has joined.
03:42:53 -!- copumpkin has quit (Ping timeout: 272 seconds).
03:43:23 -!- copumpkin has joined.
03:44:47 -!- sebbu has quit (Ping timeout: 272 seconds).
03:53:15 <kmc> "The Sprint accelerated at 100 g, reaching a speed of Mach 10 in 5 seconds"
03:53:59 <oerjan> > 100*9.8*5
03:54:00 <lambdabot> 4900.000000000001
03:54:35 <Bicyclidine> mach ten is apparently 7615 mph.
03:54:50 <Bicyclidine> oh, but that's not mph is it. gah, units.
03:54:55 <Deewiant> 2951 m/s
03:55:49 <Fiora> I'm guessing the acceleration wasn't constant? since the way rockets work and stuff
03:55:53 <Fiora> so maybe 100 g was the max
03:55:53 <oerjan> `frink mach 10 -> m/s
03:56:02 <HackEgo> 3314.6
03:56:24 <Bicyclidine> we're gonna need the jerk of this Sprint, anonymous quotee
03:57:23 <Deewiant> Oh, W|A gave it at aeroplane altitude
04:04:24 <shachaf> kmc: Did you have a solution different from mauke's for "getting the address of an object that overloads unary &"?
04:05:18 <kmc> i don't remember that solution either
04:05:27 <kmc> could maybe reconstruct it though
04:11:18 <kmc> oh i've looked it up
04:11:30 -!- md_5 has quit (Read error: Operation timed out).
04:17:47 -!- md_5 has joined.
04:37:45 -!- nys has quit (Quit: quit).
04:49:23 -!- md_5 has quit (Ping timeout: 272 seconds).
04:51:50 -!- md_5 has joined.
05:07:29 -!- zzo38 has joined.
05:28:35 -!- DHeadshot has quit (Read error: Connection reset by peer).
05:28:51 -!- DHeadshot has joined.
05:36:09 -!- azaq23 has quit (Quit: Leaving.).
05:36:21 -!- Bicyclidine has quit (Ping timeout: 252 seconds).
05:38:12 -!- Bicyclidine has joined.
05:50:30 -!- WeThePeople has joined.
05:51:47 -!- hagb4rd has joined.
05:55:23 -!- DHeadshot has quit (Read error: Connection reset by peer).
05:55:29 -!- DH____ has joined.
06:00:18 -!- DH____ has quit (Ping timeout: 272 seconds).
06:18:06 -!- TeruFSX has quit (Ping timeout: 276 seconds).
06:21:19 <shachaf> oerjan: why do you use reddit...........................
06:25:45 <oerjan> what did i do now.
06:27:41 <oerjan> for about the same reason i used usenet in the '90s.
06:28:04 <oerjan> it's addictive.
06:28:31 <kmc> can you use reddit to download a film as a sequence of 50 rar files
06:28:49 <shachaf> you wouldn't download a sequence of 50 rar files
06:29:11 <Bicyclidine> kmc: no, but you can use it to download a film as a sequence of 50 gif files
06:29:37 <shachaf> i love gif files
06:29:38 <shachaf> they are so easy
06:30:04 <Bicyclidine> shachaf you need more jokes imo
06:30:18 <oerjan> i really didn't use usenet for downloading either.
06:30:26 <shachaf> Bicyclidine: what if it's not a joke
06:30:55 <kmc> what if shachaf is secretly that #haskell person whose name i forgot already
06:31:04 <Bicyclidine> no!
06:31:39 <Bicyclidine> i guess gif files actually are pretty easy. you can make them out of a video in like thirty seconds without knowing anything about anything.
06:31:45 <Bicyclidine> so maybe it's not a joke. i'm sorry, shachaf.
06:31:53 <shachaf> Bicyclidine: I wrote a GIF decoder once.
06:31:56 <shachaf> I should know!
06:33:54 <shachaf> Bicyclidine: Also it was a really bad GIF decoder.
06:34:06 <shachaf> "the worst gif decoder?????"
06:34:18 <shachaf> Bicyclidine: Did you know GIF files have a section for an ASCII art equivalent of the image?
06:34:23 <shachaf> "its that old"
06:34:41 <Bicyclidine> That's fantastic.
06:35:29 <kmc> shachaf: what is your solution for finding the address of a thing which overloads operator&
06:35:38 <kmc> does it start with reinterpret_cast<char&>
06:35:44 <oerjan> is that supported by browsers? if so maybe i should have used it for the agora horoscope.
06:35:49 <shachaf> Bicyclidine: Did you ever read a book that used the word "fantastic" in the sense of "fantasy, not feasible, etc."?
06:36:01 <shachaf> kmc: I don't have a solution. mauke's solution is http://codepad.org/XomA23ft
06:36:17 <Bicyclidine> You know, I don't think I have.
06:36:31 <kmc> this seems dubious
06:36:51 <kmc> you don't have the same guarantees on struct A that you do on char
06:37:05 <shachaf> Is your solution reinterpret_cast<char&>?
06:37:14 <kmc> well it's the one i googled when you asked the question earlier today
06:37:36 <shachaf> Is casting to a char and then taking the address even valid?
06:37:37 <kmc> http://www.informit.com/guides/content.aspx?g=cplusplus&seqNum=546
06:38:07 <kmc> 'C++ standard guarantees that an lvalue expression of type T1 can be cast to the type T2& if an expression of type T1* can be explicitly converted to the type T2 * using a reinterpret_cast.'
06:38:20 <kmc> "references: really just pointers"
06:38:38 <shachaf> Sure, but is casting (Foo *) to (char *) and then using it as an address valid?
06:38:49 <shachaf> Isn't there some thing where pointers to different types can be different sizes or something?
06:39:03 <olsner> but everything can be read as a series of chars
06:39:08 <kmc> not sure that's the case, if you can ignore function pointers
06:40:08 <kmc> IANAL
06:40:22 <shachaf> Nor am I.
06:40:56 <Fiora> I think they can be different sizes, but the cast has to convert it
06:41:03 <olsner> I guess casting pointers might just have to be a complicated conversion between kinds of pointers that have different sizes
06:41:25 <kmc> and 'char' and 'void' would be specially required to have the biggest size
06:41:25 <Fiora> i.e. the spec says things like "your machine can be really weird, but it has to make things work properly if it does things weirdly"
06:41:39 <shachaf> good spec
06:41:49 <Bicyclidine> all i can think of is string literals being lvalues.
06:41:59 <olsner> kmc: but function pointers can be bigger?
06:42:11 <oerjan> literally lvalues
06:42:22 <kmc> yeah, there's no guarantee that you can convert a function pointer to void*
06:42:51 <kmc> there are some AVR chips with fewer than 256 bytes of RAM but more than that much program ROM
06:42:58 <kmc> i don't think GCC will actually use one-byte pointers though
06:43:11 <olsner> once saw code that base64-encoded function pointers because there's no guarantee void* can fit a function pointer
06:43:40 -!- Bicyclidine has changed nick to Bike.
06:43:52 <Bike> Portability is important.
06:45:04 <shachaf> oerjan: And base64-encoding them is OK?
06:45:25 -!- oerjan has quit (Quit: No that's evil, good night).
06:46:03 <Bike> well playerjaned
06:46:10 <kmc> nice
06:46:14 <olsner> it probably wasn't base64 though, more like arbitrary encoding as letters and numbers
06:46:29 <shachaf> "whoops"
06:46:33 <olsner> (there was obviously base64 code elsewhere in this project. it was not reused.)
06:47:01 <kmc> is it guaranteed that different function pointers are interconvertible?
06:47:13 <kmc> can you use void (*)(void), or char[sizeof(void (*)(void))]
06:47:13 <shachaf> I just read that it was.
06:47:51 <olsner> I wonder if it matters though, if you change the type it's probably not safe to use the pointer anyway?
06:48:07 <kmc> sure, I meant for casting and then casting back
06:48:19 <kmc> as is often done for generic stuff
06:49:50 <shachaf> One time I was playing a "reverse-engineer this program" game, and I got to a place that did base64 encoding, and didn't recognize it as base64, and then I felt silly later.
06:50:03 <shachaf> Now I know to check whether something is base64 before working it out.
06:50:33 <shachaf> But on the other hand I used some fancy debugger and it was pretty nice.
06:50:39 <shachaf> Much nicer than gdb for that sort of thing.
06:51:26 <olsner> now you also know that it might be non-base64 because derp
06:51:46 <shachaf> Sure.
06:51:54 <shachaf> But it's easy to check whether something is base64. :-)
06:51:57 <kmc> which debugger?
06:53:16 <shachaf> I think it might've been OllyDbg?
06:53:19 <shachaf> I'm not sure.
06:57:26 <kmc> oh i hear that's a good one
07:01:22 <shachaf> If I remember correctly I tried WinDbg first.
07:08:21 * Sgeo knows nothing about reverse-engineering
07:08:24 <Sgeo> I should try to learn
07:08:58 <olsner> it's just programming backwards
07:10:40 <Bike> Sgeo: it's like those "1, 2, 3, 2, 0, what's next" games except a million times harder and also you have to steal the numbers from Iran.
07:22:23 <fizzie> Re "'char' and 'void' would be specially required to have the biggest size", as discussed here a while ago, I don't think they are specifically required to have the biggest sizeof; they just need to be able to contain any (object) pointer. So a system with sizeof (int *) > sizeof (char *) should be legal, assuming that any valid int * can be turned into a char * and back. (E.g. if there's some ...
07:22:29 <fizzie> ... useless padding or other redundancy in the int * representation.)
07:22:54 <shachaf> fizzie IAL
07:23:19 <fizzie> I'm sure the DS9K has a feature like that.
07:26:57 <Fiora> http://en.wikipedia.org/wiki/User:CompuHacker/CHDS9000 huh, didn't know about this thing
07:27:06 <Fiora> "Pictured here is the super-secure CHAR_BIT generator for the DeathStation, which uses atmospheric and geological white noise, a plasma lamp, and a variant of the Mersenne Twister algorithm to deliver to the program compiler a value of CHAR_BIT guaranteed to pass all known tests for primality and randomness. This is of tremendous assistance in preventing crackers from gaining knowledge about your systems."
07:29:05 <Fiora> "Armed Response Technologies has a range of ADPs (acronym-driven products) to suit all needs" this is wonderful
07:30:08 <Bike> is that paragraph you pasted a joke i am not getting
07:30:59 <Fiora> the deathstation I think is a joke computer that is technically ANSI C compliant but does everything in the most confusing unexpected way possible
07:31:05 <Bike> oh, i've wondered about something like this before though. I said I thought it would be interesting to have an implementation do everything "wrong" and I got "oh well that's [real implementation X]" as a snarky answer.
07:31:11 <Fiora> I think the joke there is how it comes up with the most random possible values for CHAR_BIT
07:31:20 <olsner> "... particularly suitable for use in fully automated missile control systems." undefined behavior probably launches the missiles then
07:31:29 <Bike> yeah i was just gonna say "why would you use a mersenne twister on actually random numbers"
07:31:38 <Fiora> I think it's all being silly
07:31:45 <shachaf> i love random numbers
07:31:48 <Fiora> "DeathStation 9000 or DS9K is sometimes also used as an adjective, as in "a DS9K endianness", meaning an endianness which is neither big-endian nor little-endian, like the American date format MM/DD/YYYY."
07:31:48 <shachaf> they are so easy
07:31:52 <Bike> no shachaf, no
07:31:58 <shachaf> Bike: YES
07:32:04 <Bike> Fiora: haha, never thought if it that way
07:32:06 <shachaf> THEY ARE EXTREMELY EASY
07:32:13 <monqy> shachaf...
07:32:18 <monqy> youre overdoing it....
07:32:18 <shachaf> monqy: what
07:32:23 <olsner> Fiora: fwiw, I think some real computers do actually have an endianness like that
07:32:25 <shachaf> monqy: help i can't stop
07:32:32 <Fiora> yeah, middle-endian is actually a thing right?
07:32:32 <monqy> :''''(you should see a doctor
07:32:33 <shachaf> i'm addicted
07:32:44 <Fiora> http://en.wikipedia.org/wiki/Middle-endian#Middle-endian
07:32:47 <shachaf> monqy: what kind of doctor
07:32:49 <Fiora> oh god. the PDP-11
07:32:49 <monqy> you will love rehab
07:32:52 <monqy> they are so easy???
07:33:01 <Fiora> "this ordering is known as PDP-endian"
07:33:02 <shachaf> oh no
07:33:06 <shachaf> monqy is it contagious
07:33:11 <monqy> yes:'(
07:33:22 <shachaf> monqy:i'msorry:'(
07:33:42 <Bike> Fiora: awesome.
07:34:36 <Bike> Never has Swift's terminology been used more appropriately
07:35:37 <Fiora> "Segment descriptors on Intel 80386 and compatible processors keep a base 32-bit address of the segment stored in little-endian order, but in four nonconsecutive bytes, at relative positions 2,3,4 and 7 of the descriptor start."
07:35:41 <Fiora> whyyyy @_@
07:36:02 <shachaf> Fiora: Don't ask why.
07:36:04 <fizzie> The segment descriptors are really nasty-looking things.
07:36:05 <olsner> it's an extension of a 24-bit format
07:36:06 <shachaf> That's not how x86 works.
07:36:08 <Bike> bahahaha
07:36:28 <Fiora> olsner: oooh
07:36:39 <shachaf> i love segment desciptors
07:36:43 <olsner> (I guess... it's not like I actually know how 286 protected mode works)
07:36:54 <Fiora> I guess that makes sense though
07:37:14 <fizzie> http://xn--nxa.zem.fi/~fis/segdesc.png look at that thing.
07:37:36 <fizzie> The segment limit is also split into a 16-bit value and then an extra nybble.
07:37:40 <shachaf> fizzie that url looks scary??????
07:37:41 <Fiora> that almost looks like a cpuid output register
07:38:23 <fizzie> shachaf: It's just β.zem.fi except for stupid browsers being all "wahh IDNs are all scammy domain name impersonation attempts".
07:38:36 <shachaf> fizzie, scammer??
07:38:39 <Bike> phishers confirmed for racists.
07:43:35 <fizzie> Anyhoo, the 286 protected mode did have a memory limit of 16 megs, so it does sound likely that it has had 24-bit base addresses for segments.
07:44:21 <fizzie> http://en.wikipedia.org/wiki/File:SegmentDescriptor.svg presumably the bits in cursive are post-286 extensions.
07:45:15 <fizzie> (Oh, it even says so in the description.)
07:45:15 -!- Salli35 has joined.
07:46:20 <Bike> It starts out looking so reasonable on the right, and gets progressively more... worrying.
07:47:10 <olsner> the first bytes are just limit and base address in the sensible 5-byte format, followed by two bytes of flags
07:47:57 <fizzie> One byte of flags, really.
07:48:18 <fizzie> The seventh byte (from the right) is all extended-flags-and-a-nybble-of-limit.
07:48:31 <zzo38> What can I use if I want to store true color 32x32 icons with transparency (but not alpha), in lossless compressed formats? What is best way for such things?
07:48:51 <Fiora> png?
07:49:17 <shachaf> GIF can do it but is certainly not optimal.
07:49:39 <Bike> can gif be described as "true color"
07:50:05 <fizzie> PNG sounds like the most mainstream way of doing it.
07:50:12 <Fiora> http://phil.ipal.org/tc.html technically yes, but only if you're like a really horrific person
07:50:24 <zzo38> Can a headerless PNG make such thing? Can it make transparent pixels without alpha channel?
07:50:49 <Fiora> is there something wrong with an alpha channel o_O
07:50:55 <fizzie> What's a "headerless PNG", anyway?
07:51:19 <Bike> Huh. I didn't know gif could have that many.
07:51:38 <Fiora> it's an animated gif where each frame introduces 256 new pixels
07:51:38 <shachaf> It's more horrific than you think.
07:51:44 <Bike> ...oh, in different blocks.
07:51:45 <Fiora> <_<;;;
07:51:50 <Bike> "great"
07:51:50 <zzo38> Such as discarding everything other than the data of the IDAT chunk.
07:51:53 <shachaf> Fiora: To be fair, that web page is too complicated.
07:52:02 <shachaf> You don't need a whole new animated GIF frame.
07:52:15 <shachaf> In fact that's pretty bad -- you see the thing where you can slowly watch the GIF loading?
07:52:18 <fizzie> I do think PNG's transparency options are limited to either having an alpha channel, or having a tRNS chunk which specifies a single transparency color.
07:52:20 <Bike> yeah, you could do it in a still, but it'd still be huge wouldn't it
07:52:39 <shachaf> Instead it should just not insert GCE blocks.
07:52:53 <shachaf> I should make a better version of that page without GCE blocks.
07:53:04 <shachaf> GIF allows multiple image blocks per frame.
07:53:13 <shachaf> GCE blocks introduce new frames.
07:53:22 <Bike> The undithered image is great, also.
07:53:27 <shachaf> Each frame can have its own palette.
07:53:52 <Fiora> I wonder if something like that would expose bugs in decoders
07:53:59 <Fiora> since it's so unusual and probably not often tested?
07:54:08 <shachaf> Something like what?
07:54:14 <zzo38> I also want to store all the icons in one file, which the program decodes and loads into RAM when it initializes.
07:54:14 <Fiora> multiple blocks in one frame?
07:54:21 <shachaf> That's actually pretty common.
07:54:29 <Fiora> really :o what's it used for?
07:54:39 <shachaf> If you want an "efficient" animated GIF, you don't want each frame to have the entire image.
07:54:52 <Fiora> yeah, there's pixels that are transparent, right?
07:54:55 <Fiora> which just use the previous frame's pixels
07:54:57 <shachaf> If you just changed a few pixels in each corner, you might have small four rectangles in each corner.
07:55:00 <Bike> hm, i should dig up that one picture that stymied me once and ask about it here for an exciting technical explanation
07:55:02 <shachaf> And they'd all be in the same frame.
07:55:06 <Fiora> ooooh
07:55:10 <Fiora> so GIF supports "spare images"?
07:55:11 <Fiora> *sparse
07:55:23 <shachaf> Right.
07:55:33 <shachaf> You can specify where the image blocks are relative to the whole image.
07:55:37 <shachaf> And their size.
07:55:41 -!- sall has joined.
07:56:01 <sall> hola
07:56:05 -!- Salli35 has quit (Read error: Connection reset by peer).
07:56:13 <Bike> Ciao.
07:56:34 <shachaf> !list
07:56:55 <monqy> holla???????
07:56:57 <Bike> ...oh, I lost it in my old hard drive. Darn.
07:57:03 <sall> alguien habla español
07:57:09 <monqy> yeah me too
07:57:12 <shachaf> Fiora: You could also specify a bunch of transparent pixels and hope for the compression to take care of it.
07:57:17 <shachaf> But LZW isn't that great. :-)
07:57:28 <zzo38> Actually there are also 16x16 true color icons without transparency, and monochrome 8x8 icons, but there can be one file for each kind of icons.
07:57:33 <shachaf> LZW is remarkably simple, though.
07:57:52 <shachaf> i love lzw
07:57:53 <shachaf> it is so easy
07:58:01 <fizzie> Is it SO BAD too.
07:58:08 <Fiora> shachaf: that is incredibly cool
07:58:10 <Fiora> does PNG let you do that?
07:58:18 <Fiora> or is deflate better enough that it doesn't matter too much?
07:59:12 <fizzie> MNG does, I believe.
07:59:23 <shachaf> PNG is fancy but I don't know much about it.
07:59:24 <fizzie> PNG itself doesn't really have animated frames, of course.
07:59:38 <Fiora> https://github.com/kud/jpegrescan/commit/d4b0de61e0689cdc2bcc30ad7d22ec9dce504477 ooh, this was what I was thinking of with image optimization breaking decoders
07:59:45 <fizzie> I suppose it could support sparse base images, but I don't think it does.
08:00:02 <shachaf> JPEG has much fancier compression than lossless formats typically do, of course.
08:00:05 <fizzie> Anyway, MNG "objects" have sizes and X/Y locations.
08:00:06 * shachaf went to a talk about JPEG once.
08:00:11 <shachaf> It was pretty nifty.
08:00:24 <Sgeo> I assume by MNG you don't mean the file format that Creatures uses for music
08:00:27 <Fiora> yay custom huffman codes and weird huffman scan orderings
08:00:31 <zzo38> Is it possible to detect the end of the IDAT data if you know the dimensions and have no header?
08:00:37 <fizzie> Sgeo: The animated PNG thing.
08:00:42 <Sgeo> http://creatures.wikia.com/wiki/MNG
08:00:42 <Fiora> APNG is the other one right?
08:00:48 <shachaf> One of the two competing animated PNG things.
08:00:49 <shachaf> Yes.
08:00:56 <fizzie> It's short for "Multiple-image Network Graphics".
08:01:02 <fizzie> They're not very creative around there.
08:01:20 <shachaf> I kind of wanted to write a JavaScript decoder for MNG or APNG so people could embed them in web pages and have them just work.
08:01:22 <Bike> Is MNG supported by anybody? I know Firefox has APNG support.
08:01:28 <shachaf> But then I decided not to.
08:01:31 <Fiora> there's an addon for chrome for APNG
08:01:36 <Fiora> does firefox still support apng?
08:01:38 <shachaf> A GIF decoder in JavaScript is bad enough!
08:01:55 <shachaf> I heard one of the formats was sort of dead. I think it was APNG.
08:01:55 <fizzie> "Dropped in 2003" in the Mozilla family, says Wikipedia.
08:01:58 <shachaf> I don't remember.
08:02:03 <Fiora> http://en.wikipedia.org/wiki/APNG#Application_support wikipedia says it has since 2008
08:02:09 <Fiora> oh! I remember, it must
08:02:13 <Fiora> Bulbapedia uses APNGs for its animations
08:02:24 <fizzie> mplayer and such can play MNG files. But yeah, it might be a somewhat dead format.
08:02:29 <shachaf> Wait, maybe it was MNG.
08:02:37 <shachaf> TRICK QUESTION: They're both dead, because they've never been alive.
08:02:44 <Fiora> http://bulbapedia.bulbagarden.net/wiki/SolarBeam_%28move%29
08:02:45 <fizzie> Also I don't think I've seen a JNG file once.
08:03:01 <Fiora> the image won't animate if you're using unextended chrome or safari or whatever, I think
08:03:14 <Fiora> I only found this out because a friend was like "wait I can't see the animation" and I was like "wait what in the even"
08:03:24 <fizzie> (JNG is the "JPEG image in a PNG container" format.)
08:03:32 <shachaf> GIF has a lot of features that no decoders today support.
08:03:38 <shachaf> Like a "click to advance" thing.
08:03:44 <fizzie> "Usually, all the applications supporting the MNG file format can handle JNG files, too. E.g., Konqueror has native MNG/JNG support, and MNG/JNG plugins are available for Opera, Internet Explorer, and Mozilla Firefox. The Mozilla Application Suite (and hence Netscape) originally supported MNG/JNG, but native support was removed in Mozilla 1.5a by developers and Mozilla has not supported the ...
08:03:49 <shachaf> And the ASCII art thing I mentioned.
08:03:51 <fizzie> ... format since, despite requests from its users. Safari does not support MNG/JNG."
08:04:13 <Bike> JPEG image in a...why would you want that?
08:04:29 <Fiora> @_@
08:04:52 <shachaf> JPEG is a really general thing.
08:04:53 <fizzie> Bike: You can have transparent JPEGs with it. :p
08:05:08 <Fiora> could you mix PNG coding and JPEG coding in the same image?
08:05:10 <Bike> Perfect.
08:05:25 <Fiora> like JPEG code a photo in the image and PNG code text or graphics
08:05:40 <fizzie> The transparency part can be a 8-bit greyscale JPEG datastream too.
08:05:50 <fizzie> So you can have a JPEG file with a JPEG-compressed alpha channel.
08:06:16 <shachaf> i love jpegs
08:06:20 <shachaf> they are so
08:06:21 <shachaf> uhhh
08:06:28 <Fiora> /quantized/
08:06:29 <shachaf> well i love them
08:06:30 <Bike> "huffmansexy"
08:06:58 <Fiora> jpeg&co are a good sin
08:07:02 <shachaf> I like how the GIF spec talks about CompuServe.
08:07:10 <Fiora> but you have to be very... discrete
08:07:14 <Bike> Fiora: that sounds like such an awesomely bad idea that i think it's possible, also
08:07:26 -!- epicmonkey has joined.
08:07:36 <shachaf> epicmonkey: we already have an epic monqy...........................
08:07:43 <shachaf> monqy: (you're epic right)
08:07:49 <fizzie> Fiora: You could do that with a MNG file.
08:07:50 <shachaf> (what does that mean anyway)
08:07:56 <Fiora> fizzie: jeez, wow
08:07:59 <shachaf> (are you an epic?)
08:08:00 <fizzie> Fiora: All MNG decoders are required to support both PNG and JNG subimages.
08:08:08 <Fiora> that is actually incredibly cool
08:08:23 <monqy> shachaf: hi???
08:08:25 <shachaf> hi
08:08:47 <fizzie> And it doesn't *need* to be animated, you can just compose the things together.
08:09:29 <fizzie> You can also magnify things on-the-fly with it, if you want to have images with different in-file resolution in different areas.
08:09:34 <shachaf> I wonder whether some GIF decoders actually support the User Input Flag.
08:09:37 <shachaf> That would be great.
08:09:40 <Fiora> that almost sounds SVGesque
08:10:13 <shachaf> Did you know that browsers insert an artificial delay when displaying animated GIFs, in violation of the spec?
08:10:26 <shachaf> That's because back in the day, computers were slow, so they took time between GIF frames.
08:10:33 <shachaf> So people made frames with delay 0
08:10:45 <shachaf> And then it became standard and everyone had to be backward-compatible.
08:10:53 <Fiora> is it an arbitrary delay, or do they just put a cap on the minimum frame length?
08:10:55 <fizzie> TIFF is another format that can be ridiculously ridiculous, and where there's probably a bazillion crufty decoders (made for texture-loading and whatnot) that only support some miniscule subset of it.
08:11:02 <Fiora> I know IE used to make a limit of 100ms per frame or something
08:11:03 <Fiora> which was really dumb
08:11:06 <shachaf> Fiora: Depends on the browser.
08:11:07 <Fiora> but firefox can do faster than that
08:11:25 <shachaf> Fiora: That's relevant to you when reading that comic strip, isn't it.
08:11:30 <Bike> those seizurey gifs are so annoying, though.
08:11:33 <shachaf> "maximum speed on my gif animations plz"
08:12:06 -!- sebbu has joined.
08:12:28 <Bike> shachaf, http://media.tumblr.com/fd5274f9d05acc03c7b795ba34e6886f/tumblr_inline_mgl55oVC6b1r3xc4e.gif
08:12:58 <shachaf> ?
08:13:06 <Fiora> http://www.mspaintadventures.com/storyfiles/hs2/02628.gif typical homestuck panel
08:13:08 <shachaf> Is that the thing that people were saying was offensive?
08:13:09 <monqy> racial slurs???????
08:13:11 <Bike> "that comic strip"
08:13:46 <shachaf> monqy: do you read that comic strip.....................
08:13:56 -!- sebbu2 has quit (Ping timeout: 272 seconds).
08:14:01 <Bike> the good thing about it, which i didn't notice for a while (because I didn't care), is that the interior of the letters are also caucasian skintone.
08:14:04 <Bike> Important Details.
08:14:14 <shachaf> i love important details
08:15:14 <monqy> i hate important details why can't details be unimportant???please
08:15:22 <Bike> So do I, shachaf. So do I. (sdichaf? help)
08:15:35 <fizzie> ^rot13 sdichaf
08:15:35 <Fiora> Bike: I think my favorite unimportant detail was that one time where a single pixel started fans shipping
08:15:35 <fungot> fqvpuns
08:15:39 <Fiora> literally a single pixel
08:15:43 <Bike> Fiora: er what
08:15:55 <Fiora> http://tvtropes.org/pmwiki/pmwiki.php/Main/ShippingGoggles see the quote here
08:15:59 <shachaf> ^rot13 Bike
08:15:59 <fungot> Ovxr
08:16:01 <shachaf> ^rot13 Fiora
08:16:02 <fungot> Svben
08:16:04 <Bike> that sounds like an important pixel. is it related to jng
08:16:11 <Bike> whoa, rot13 fiora is scandinavian.
08:16:17 <shachaf> have you considered changing your nicks to something "more rot13 friendly"
08:16:23 <Bike> meanwhile i'm icelandic and drunk.
08:16:28 <Bike> ^rot13 Bicyclidine
08:16:29 <fungot> Ovplpyvqvar
08:16:38 <olsner> ^rot13 Bike
08:16:38 <fungot> Ovxr
08:16:42 <Bike> That's... actually pretty compelling.
08:16:50 <fizzie> ^rot13 fizzie
08:16:51 <fungot> svmmvr
08:17:09 <Bike> Fiora: haha
08:17:11 <fizzie> Eh, friendly enough.
08:19:17 <oklopol> ^rot13 oklopol
08:19:18 <fungot> bxybcby
08:19:46 <oklopol> ^rot13 muukalainen
08:19:47 <fungot> zhhxnynvara
08:19:56 <oklopol> ^rot13 vittuthuuhkaja
08:19:57 <fungot> ivgghguhhuxnwn
08:20:04 <shachaf> ^rot13 ä
08:20:04 <fungot> ä
08:20:26 <shachaf> imo that should turn into n̈
08:20:40 <fizzie> `run words --finnish 10 | tr a-z n-za-m
08:20:43 <HackEgo> ynzzr znqnyynaar xbewhinygnnavfrzcvrzzr ivaraäyävxäiryyr irgbivgfhggnzvyyr fbhqnggnzznyyn fbvffä yrvuvaxnyiragäzäg xägxrycbznxh nnggbzvrav
08:20:58 <shachaf> `run words --finnish 10 | tr a-z n-za-m | sed 's/ä/n̈/g'
08:21:11 <HackEgo> anuxreglzn̈g uöyfxlzvyyn xelcn̈vflyrvwban fhhagvvivffn̈n̈a nvuglzvn̈zn̈ffn̈av byravxfrfvnyynzznyyr anvfrzzrgevfvyyn̈aar nuqnfzvfgnn enwbggnnafn gnvgfrzzn̈xfrzzr
08:21:20 <shachaf> much better
08:21:24 <shachaf> oopse
08:21:25 <fizzie> Now there's an offensive ö in there.
08:21:30 <shachaf> much better
08:21:38 <Bike> hm i bet there's a cool and sexy way to do this with unicode
08:21:51 <shachaf> `run words --finnish 10 | tr a-zäö n-za-mn̈b̈ |
08:21:53 <HackEgo> bash: -c: line 1: syntax error: unexpected end of file
08:21:54 <shachaf> `run words --finnish 10 | tr a-zäö n-za-mn̈b̈
08:21:57 <HackEgo> uhgxnyyrfv yncfvfgnav uhbyvfghfgnnivyyr fbvggiff neivggbznyyr ghcyvygnav luglzvvaanxfra fhhggnzvan gluzvzcvaaf crqntbennynvfh
08:22:03 <shachaf> ughhh.........
08:22:15 <Bike> so that combining_penis_above + hangul "te" is automatically shifted to combining_penis_above + hangul "I don't actually speak Korean, I don't know, something shifted"
08:22:30 <shachaf> `run words --finnish 10 | tr a-z n-za-m | sed 's/ä/n̈/g' | sed 's/ö/b̈/g'
08:22:32 <HackEgo> vyznacvgra an̈ccn̈varaar fn̈qryyvfrfv xnuynnirzznfgn cnxba ryn̈zcn̈an̈aar cvevglggn̈zn̈zzr uhuxrlglin̈ zrebyyrafn xrvxfrffrra
08:22:41 <shachaf> `run words --russian 10
08:22:52 <oklopol> why the g's?
08:22:54 <HackEgo> ​некахъ kreical довъчальина иняли мобирающие лрупповеркои хромаривле жпва врусствптъмъ осит
08:23:00 <shachaf> `run words --hebrew 10
08:23:03 <shachaf> oklopol: Why not?
08:23:06 <HackEgo> ​לעית לקול ברוכ ארט גנשטט עדני והמארק להרגש דלכו התבר
08:23:08 <oklopol> why not just n umlaut
08:23:22 <Sgeo> :/ I open 5 processes in Pharo and the UI slows down considerably
08:23:28 <shachaf> `run words --english 10
08:23:30 <HackEgo> Unknown option: english
08:23:35 <shachaf> `run words 10
08:23:43 <HackEgo> cent annin nion gostothodm ref indensaperley gissumpbe editarla bruing overfl
08:23:58 <oklopol> so how are these produced
08:24:00 <fizzie> `run words --russian --hebrew 10 # why won't you mix it up!
08:24:05 <HackEgo> ​מרודרךכללת שהנוטלות перековреиъ терно והשוב пормкор ויחות קריאו перепя חולדהאורטו
08:24:23 <shachaf> i love mixing up rtl and ltr languages
08:24:24 <oklopol> in both finnish and russian, there are frequently two adjacent letters that cannot occur next to each other
08:24:25 <shachaf> they are so easy
08:24:36 <fizzie> They're produced from character... trigrams, I think.
08:24:46 <fizzie> Some form of character ngrams, anyway.
08:25:00 <oklopol> okay
08:25:11 <oklopol> then how can a word start with two characters that dislike each other immensely
08:25:56 <Bike> Maybe they reconcile their differences for the sake of the greater word.
08:25:57 <fizzie> Do you have some examples? I don't want to de-rot13 all that, and I don't know Russian.
08:26:13 <fizzie> `run words --finnish 20 # it does mess up wovel harmony quite often
08:26:13 <Bike> Maybe these characters aren't as simple as you think, oklopol. Maybe they're reasonable, thinking people, just like anybody.
08:26:19 <HackEgo> tuoksimmäksen houstamaksempi hottaviin huojenilaaduistasi julkoneen säähdyssamme hisessä anakissamme kiihtelma ytismisesi kysyvänä esiksensa käämältä mahtaan huhteissanne naiiveäpakenemmilli dosti panammenkivaantitiedotta fyysyville päänneksensä
08:26:30 <oklopol> ъч is impossible afaik
08:26:32 <fizzie> "säähdyssamme"
08:26:44 <Bike> «naiiveäpakenemmilli» is a pretty great word.
08:26:47 <oklopol> that's a compound word, it's ok
08:27:07 <fizzie> oklopol: No, it's clearly just "in our <säähty>" except wrong.
08:27:08 <oklopol> uö is impossible afaik
08:27:20 <oklopol> oh
08:27:28 <fizzie> Where's an "uö"?
08:27:33 <shachaf> `run words --norwegian 10
08:27:35 <HackEgo> porelig ligst femtidsførert morøda lusjoneneredning fyltet brøsterendede bokserinjerra vårfattageilene måletraferdarda
08:27:39 <oklopol> oh oops.
08:27:43 <shachaf> There's a rule where ø must be followed by jran
08:27:45 <oklopol> that was rot13
08:27:46 <shachaf> Er.
08:27:49 <shachaf> There's a rule where ø must be followed by rjan
08:27:54 <shachaf> Pretty sure.
08:28:02 <fizzie> Lunchtime. ->
08:28:13 <oklopol> !rot13 uiosdufopisadjafs,dlm
08:28:16 <EgoBot> hvbfqhsbcvfnqwnsf,qyz
08:28:24 <oklopol> !rot13 owemdsaasölmcxu
08:28:24 <EgoBot> bjrzqfnnföyzpkh
08:28:33 <oklopol> !rot13 Egobot
08:28:34 <EgoBot> Rtbobg
08:28:44 <oklopol> !rot13 oboe
08:28:45 <EgoBot> bobr
08:28:53 <oklopol> !rot13 fuck
08:28:54 <EgoBot> shpx
08:29:06 <shachaf> monqy: have you ever gotten "addicted to rot13"
08:29:09 <oklopol> !rot13quote
08:29:12 <oklopol> !rot13quote
08:29:13 <oklopol> !rot13quote
08:29:13 <oklopol> !rot13quote
08:29:15 <monqy> shachaf: no
08:29:26 <oklopol> !rot13 addicted to rot13
08:29:26 <EgoBot> nqqvpgrq gb ebg13
08:29:40 <oklopol> !ebg13 asdfasdf
08:29:43 <shachaf> monqy: this is your brain: brain
08:29:49 <shachaf> monqy: this is your brain on rot13: oenva
08:29:51 <oklopol> !rot13 monqy
08:29:52 <EgoBot> zbadl
08:29:59 <oklopol> oh i've seen that one
08:29:59 <shachaf> monqy: don't do rot13
08:30:05 <oklopol> !rot13 shachaf
08:30:06 <EgoBot> funpuns
08:30:16 <oklopol> !rot13 elliott
08:30:16 <EgoBot> ryyvbgg
08:30:30 <shachaf> oklopol.............we've had enough.........
08:30:35 <oklopol> :(
08:30:38 <oklopol> ):
08:30:43 <oklopol> !rot13 ):
08:30:44 <EgoBot> ​):
08:30:44 <shachaf> !rot13 no more rot13 plz
08:30:45 <EgoBot> ab zber ebg13 cym
08:30:55 <oklopol> i'm gonna go away then
08:31:08 <shachaf> oklopol: you will be missed
08:32:44 -!- sall has quit (Ping timeout: 246 seconds).
08:34:51 -!- sebbu2 has joined.
08:35:23 -!- sebbu has quit (Ping timeout: 252 seconds).
08:42:27 -!- epicmonkey has quit (Ping timeout: 272 seconds).
08:43:29 -!- Taneb has joined.
08:53:51 <Sgeo> `list
08:53:52 <HackEgo> Taneb atriq Ngevd Fiora nortti elliot
08:59:26 <shachaf> i love updates
08:59:28 <shachaf> they are so easy
09:00:49 <monqy> sounds like shachaf wants to be on the list
09:01:22 <shachaf> monqy.......................
09:04:13 <Sgeo> dots dots dots dots dot dots
09:04:58 <Bike> ellipses
09:08:24 <shachaf>
09:09:36 -!- Bike has quit (Quit: leaving).
09:10:09 <fizzie>
09:14:45 -!- sebbu2 has changed nick to sebbu.
09:14:59 -!- copumpkin has quit (Ping timeout: 252 seconds).
09:15:31 -!- copumpkin has joined.
09:20:15 -!- impomatic has joined.
09:30:33 -!- WeThePeople has quit (Quit: Leaving).
09:50:19 -!- epicmonkey has joined.
10:02:59 <Sgeo> Basshunter's I-don't-actually-know-what-language music tends to be geeky, their English music tends to be .. not so much
10:03:32 <Fiora> swedish, right?
10:03:37 <Taneb> Quick googling says Swedish
10:07:35 <fizzie> He's the guy with that boat song?
10:09:46 <fizzie> (It's a well-known joke about "Boten Anna" being misinterpreted by people to be about a boat called Anna, due to sv:båt == en:boat.)
10:09:47 <Taneb> I think that's Can Bonomo
10:10:36 <fizzie> fungot: Are you one of those boats too?
10:10:37 <fungot> fizzie: fnord recall evxpr. i think those stereotypes are correct. there's no way discovered to anything else. it's not really
10:11:11 -!- monqy has quit (Quit: hello).
10:13:47 -!- asiekierka has quit (Excess Flood).
10:14:10 <fizzie> fungot: Have you ever banned people from this channel?
10:14:12 <fungot> fizzie: it has a lot of people are biased towards c-like syntax because that's what the rumours say. black helicopters and all.
10:14:38 -!- asiekierka has joined.
10:16:41 <Sgeo> fizzie, the music video even has a boat, doesn't it?
10:18:03 <fizzie> Yes, there was some sort of a thing like that.
10:18:24 <fizzie> "Despite the esoteric subject of the lyrics, the song was well received by mainstream media, albeit the word bot was frequently mistaken for boat (bot ("bot") is commonly pronounced almost the same as båt ("boat") in the dialect spoken by Altberg), and the double meaning of the word kanal — the IRC channel mistaken for a canal."
10:21:18 <Sgeo> If people didn't get that confused, would it have been as popular?
10:22:20 <Sgeo> Hmm, do I list hobbyist stuff in Experience on my resume?
10:22:26 <Sgeo> erm, on LinkedIn?
10:23:08 <Sgeo> Hmm, there's a projects thing
10:24:46 <Taneb> Is the first snippet on http://en.wikibooks.org/wiki/OpenGL_Programming/Modern_OpenGL_Tutorial_02 equivalent to a strict version of Haskell's readFile?
10:26:57 <Fiora> wasn't there a cover of the song that was *actually* about a boat?
10:27:04 <Fiora> with a music video of some guys partying on a boat
10:27:07 <Fiora> just to further confuse everyone
10:30:14 <Sgeo> I'm certain there was a banal English cover
10:30:22 <Sgeo> For no good reason other than to pander to non-geeks
10:30:25 <Sgeo> >.>
10:30:36 <Taneb> "Now You're Gone"
10:30:51 <Sgeo> Same song different lyrics
10:31:25 -!- asiekierka has quit (Excess Flood).
10:32:07 <fizzie> Taneb: That's kind of nasty code you've got there.
10:32:20 <Taneb> fizzie, that's why I'm confused
10:32:32 <Taneb> It looks like it ought to be readFile
10:32:42 <fizzie> Yes, that's clearly what it's trying to be.
10:32:45 <zzo38> In SDL some things work with separate threads. How does this interact with global variables?
10:33:00 <Fiora> probably "badly" XD
10:34:39 -!- asiekierka has joined.
10:35:05 <fizzie> Taneb: It's got all those problems implied by the comments, and arguably several more too, but a readFile is what it's clearly trying to be.
10:35:20 <Taneb> Thanks
10:37:00 <zzo38> But I want to know in what circumstances it would be OK to read/write global variables (to deal with music and timers)?
10:39:22 -!- sploknee has joined.
10:45:18 <Fiora> maybe use mutexes for starters?
10:52:31 <Sgeo> Hmm. Is it bad if I reorder my Projects thing so that the only one I can proudly point to is on top, even if that puts that section out of chronological order?
10:56:56 <Taneb> I think my brother went to see Basshunter live
11:06:57 <zzo38> Which is the better way to paste text on a screen in SDL, using SDL_LockSurface or using a paletted SDL_CreateRGBSurface and SDL_BlitSurface?
11:13:42 -!- DHeadshot has joined.
11:21:34 -!- Cryovat has quit (Read error: Operation timed out).
11:22:05 -!- Cryovat has joined.
11:22:15 -!- sploknee has quit (Read error: Operation timed out).
11:22:32 -!- sploknee has joined.
11:27:31 -!- carado has joined.
11:55:02 -!- zzo38 has quit (Remote host closed the connection).
12:14:45 <Sgeo> I do have to say I prefer ifTrue:ifFalse: to the traditional Lisp if
12:14:56 <Sgeo> (Although do realize it's possible to write a better if)
12:30:59 -!- Nisstyre-laptop has quit (Quit: Leaving).
12:53:19 <Taneb> Anyone know what GIMP's like on KDE?
12:53:36 -!- sebbu2 has joined.
12:53:36 -!- DHeadshot has quit (Read error: Connection reset by peer).
12:53:45 -!- DHeadshot has joined.
12:53:55 -!- sebbu2 has quit (Changing host).
12:53:55 -!- sebbu2 has joined.
12:54:51 -!- sebbu has quit (Ping timeout: 245 seconds).
12:55:07 <ion> Probably like GIMP.
13:11:06 -!- TeruFSX has joined.
13:19:40 -!- TeruFSX has quit (Ping timeout: 276 seconds).
13:24:12 <Taneb> Would it be worth upgrading to Ubuntu 12.10 just to get Gimp 2.8
13:26:17 <quintopia> no
13:26:30 <quintopia> ask a hard one
13:26:57 <Taneb> How can I install GIMP 2.8 on Ubuntu 12.04
13:32:08 <FireFly> How can I patch KDE 2 on FreeBSD
13:43:02 <Taneb> Mildly tempted to switch to Gentoo
13:43:16 <Taneb> Help
13:44:15 <Taneb> Hmm
13:54:46 -!- sebbu2 has changed nick to sebbu.
14:11:01 <ion> Anything is worth getting Gimp 2.8 for the sole reason that it finally supports a single-window mode.
14:11:35 <Taneb> Help I'm actually switching to Gentoo
14:11:43 <Taneb> And I'm still planning on using Unity
14:11:56 <Taneb> I'm beginning to believe that something may be seriously wrong with me
14:12:20 <ion> I like Unity, too. I got fed up with Gentoo after using it for a while a few years ago, though.
14:12:57 <Taneb> Tell me why, then give me the opportunity to get fed up myself
14:25:28 -!- boily has joined.
14:35:41 <ion> Upgrades were broken to a degree proportional to how long it was since you upgraded the last time. If you upgraded daily, it was more or less fine. If you didn’t get around to upgrading for a while, trouble was sure to follow.
14:40:43 * quintopia installs ubuntu on boily
14:43:06 <boily> quintopia: my machine ain't gonna get no ubuntu installed on it! I like my arch very much, thank you :p
14:43:22 <boily> btw, back from vacation. hi all!
14:43:30 <quintopia> i'm not installing on your machine
14:43:34 <quintopia> i'm installing on you
14:43:36 <boily> oh.
14:44:02 * boily subtly scuttles away from quintopia in a non aggressive manner...
14:44:05 <quintopia> are you fast enough to run ubuntu?
14:46:30 <boily> my cardio is abysmally bad. I don't think I can do with much more than good old ms-dos.
14:53:00 -!- Arc_Koen has joined.
14:57:38 <elliott> Taneb: dont use gentoo
15:07:02 <sploknee> elliott, why is Taneb thinking about using gentoo
15:08:45 <elliott> good q
15:09:06 <sploknee> what does it say about him
15:09:07 <sploknee> as a person
15:09:14 <sploknee> (that's not rhetorical btw)
15:11:41 -!- Bike has joined.
15:37:29 -!- FreeFull has joined.
15:38:57 -!- sebbu2 has joined.
15:38:58 -!- sebbu2 has quit (Changing host).
15:38:58 -!- sebbu2 has joined.
15:40:08 -!- sebbu has quit (Ping timeout: 245 seconds).
15:51:03 <quintopia> sploknee: it says nothing about him as a person. fundamental attribution error. his environment and experiences led to his believing it would be a good idea. he can still be saved.
15:51:24 <sploknee> quintopia, but it's gentoo.......
15:52:12 <quintopia> i installed gentoo once, back in '04
15:52:52 <quintopia> of course, i didn't use it much or keep it around long, but i'm no worse a person for it today
15:52:58 <quintopia> he can still be saved
15:53:55 <sploknee> (why is gentoo so corrupting btw)
15:57:23 <FreeFull> > groupBy (\x y -> (x+1)==y) [1,2,3]
15:57:24 <quintopia> the community i think
15:57:25 <lambdabot> [[1,2],[3]]
15:57:27 <FreeFull> Why?
15:57:33 <quintopia> i never was involved in the gentoo community
15:57:45 <quintopia> but i bet if i were, i'd be utterly lost to salvation
15:58:08 <FreeFull> Oh
15:58:14 <FreeFull> Does the x stay constant and y change
15:58:56 <elliott> FreeFull: that is an invalid use of groupBy, I believe
15:59:11 <elliott> yes, it is
15:59:14 <FreeFull> elliott: How so?
15:59:16 <elliott> the predictae you pass has to be an equivalence relation
15:59:25 <elliott> *predicate
15:59:41 <FreeFull> Damn
15:59:51 <FreeFull> Guess I'll have to write my own grouping functiom then =P
16:08:19 -!- epicmonkey has quit (Ping timeout: 272 seconds).
16:23:11 <FreeFull> > take 10 $! [1..]
16:23:13 <lambdabot> [1,2,3,4,5,6,7,8,9,10]
16:23:19 <FreeFull> Huh, why did that work
16:27:28 -!- Nisstyre-laptop has joined.
16:27:47 -!- sebbu2 has changed nick to sebbu.
16:28:00 -!- yiyus has joined.
16:29:24 <elliott> FreeFull: ($!) only goes to weak head normal form
16:29:30 <elliott> i.e. it just finds a constructor
16:29:43 <elliott> evaluate [1..] to WHNF and you get ((:) <something> <something>)
16:30:39 <FreeFull> Ok
16:30:48 <kmc> WHNF is the primitive step of Haskell semantics because it's the minimum amount of evaluation before you can pattern-match something
16:31:12 <kmc> > let a = [1..] in a `deepSeq` take 10 a
16:31:12 <FreeFull> So, infinite lists always work the same with $ and $!, bar speed differences?
16:31:13 <lambdabot> Not in scope: `deepSeq'
16:31:13 <lambdabot> Perhaps you meant `rdeepseq' (imported from Contro...
16:31:19 <kmc> buh
16:31:32 <elliott> FreeFull: yes
16:31:40 <elliott> FreeFull: the thing is, (take 10) is already strict
16:31:41 <elliott> > take 10 undefined
16:31:43 <lambdabot> *Exception: Prelude.undefined
16:31:51 <elliott> > take 10 (last (repeat []))
16:31:54 <kmc> yes unless you consider (let a :: [Int]; a = a in a) to be an infinite list
16:31:56 <lambdabot> mueval: ExitFailure 1
16:31:56 <lambdabot> mueval: Prelude.undefined
16:32:03 <elliott> take 10 _|_ = _|_
16:32:07 <elliott> so (take 10 $! x) is just (take 10 x)
16:32:28 <elliott> whereas e.g. repeat _|_ = [_|_, _|_, _|_, ..]
16:32:29 <elliott> so
16:32:31 <elliott> > repeat undefined
16:32:32 <lambdabot> [*Exception: Prelude.undefined
16:32:33 <elliott> > repeat $! undefined
16:32:34 <lambdabot> *Exception: Prelude.undefined
16:32:42 <elliott> > map (\_ -> ()) (repeat undefined)
16:32:43 <lambdabot> [(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),(),()...
16:32:44 <elliott> > map (\_ -> ()) (repeat $! undefined)
16:32:46 <lambdabot> *Exception: Prelude.undefined
16:33:13 <FreeFull> I see
16:44:25 <kmc> f ⊥ = ⊥ is the definition of "f is strict"
16:45:45 -!- Nisstyre-laptop has quit (Quit: Leaving).
16:51:33 -!- augur has quit (Remote host closed the connection).
16:57:10 -!- Nisstyre-laptop has joined.
17:17:23 -!- hagb4rd has quit (Ping timeout: 256 seconds).
17:30:43 -!- augur has joined.
17:33:52 -!- WeThePeople has joined.
17:36:23 <Jafet> const undefined is strict?
17:41:14 <kmc> i think so yes
17:41:25 <Jafet> Strictly speaking, of course.
17:41:30 <elliott> yes, it is
17:41:32 <kmc> precisely
17:41:41 <elliott> thanks to indistinguishability of bottoms
17:41:56 <kmc> <BUTT JOKE HERE>
17:42:16 <Jafet> Let's not overanalyze this
17:42:40 -!- Nisstyre-laptop has quit (Quit: Leaving).
17:43:23 -!- epicmonkey has joined.
17:50:05 <quintopia> hi epicmonkey
17:50:12 <quintopia> want to gossip about elliott's life?
17:51:03 <elliott> what
17:55:58 <epicmonkey> hey
17:57:12 <epicmonkey> there are other places
17:57:26 <epicmonkey> which also are the worlds end some at the sea jaws
17:57:36 <epicmonkey> or over a dark lake in a desert or a city
17:57:48 <epicmonkey> but this is the nearest in place and time
17:57:54 <epicmonkey> now and in England
17:58:01 <sploknee> but never in lost carcosa
18:10:06 -!- Nisstyre has joined.
18:18:47 -!- DHeadshot has quit (Read error: Connection reset by peer).
18:19:03 -!- DHeadshot has joined.
18:24:17 <Taneb> "A German student "mooned" a group of Hell's Angels and hurled a puppy at them before escaping on a stolen bulldozer, police have said."
18:24:25 <kmc> yes
18:24:37 <Bike> how do you escape anything on a bulldozer
18:24:44 <kmc> slowly and with great force
18:25:03 <kmc> through a wall maybe
18:25:12 <Taneb> He caused a 5km tailback on the motorway
18:25:18 <fizzie> I think I recall one (US) story about a "chase scene" involving a bulldozer.
18:25:40 <fizzie> IOW a man driving one around town and crushing everything in his path.
18:26:10 <fizzie> http://en.wikipedia.org/wiki/Marvin_Heemeyer <- yeah, I think it was this one.
18:27:18 <kmc> killdozer
18:28:21 -!- Snowyowl has joined.
18:28:47 <fizzie> "Outraged over the outcome of a zoning dispute, he armored a Komatsu D355A bulldozer with layers of steel --" I think that's called "showing initiative", or something.
18:29:09 <Taneb> Bah, he copied it from that movie with Orlando Bloom
18:29:47 <fizzie> Also this quote: [["I was always willing to be reasonable until I had to be unreasonable", Heemeyer wrote. "Sometimes reasonable men must do unreasonable things."]]
18:30:18 <kmc> reminds me of Falling Down as well
18:37:18 <Sgeo> o.O ^ and := in Smalltalk are syntactic sugar
18:38:36 <Bike> for sending messages of some kind?
18:38:40 <quintopia> because it returns the output of the last expression if not told otherwise?
18:39:32 -!- Nisstyre has quit (Ping timeout: 248 seconds).
18:39:35 <Sgeo> Bike, yes
18:41:09 <Sgeo> http://stackoverflow.com/questions/5638052/is-it-really-all-about-message-passing-in-smalltalk?rq=1#comment6435955_5638259
18:41:55 <Sgeo> quintopia, apparently that is not the case. Just tried it, it returned the object itself
18:42:31 <quintopia> Sgeo: okay i read the link. i didnt know about those messages.
18:53:53 -!- AnotherTest has joined.
18:53:57 <AnotherTest> Hi
18:54:19 <Sgeo> hi
18:55:40 <quintopia> hi
18:59:38 -!- Snowyowl has quit (Ping timeout: 245 seconds).
19:04:29 -!- Snowyowl has joined.
19:06:46 <Bike> Sgeo, but why does that surprise you?
19:07:07 <Bike> also ho damn beaky is in ##c.
19:07:16 <Bike> "i love switch statements"
19:08:28 <shachaf> Did he really say that?
19:09:13 <Bike> He really did.
19:09:17 <Bike> But! Not that they are easy.
19:09:28 <Bike> sometimes they get too big
19:09:42 <AnotherTest> Sometimes..
19:09:45 <kmc> i love duff's device
19:09:57 <AnotherTest> And maybe sometimes there's too much break?
19:09:57 <kmc> Duff's Device would be a good name for a band
19:10:17 <AnotherTest> Is there a hakell function that computer euler's totient btw?
19:10:25 <AnotherTest> *haskell
19:10:29 <AnotherTest> *computes
19:10:42 <kmc> yes
19:10:55 <Taneb> @faq Can Haskell compute Euler's Totient?
19:10:55 <lambdabot> The answer is: Yes! Haskell can do that.
19:11:36 <Sgeo> @faq Can Haskell compute all digits of Chaitin's Constant?
19:11:36 <lambdabot> The answer is: Yes! Haskell can do that.
19:11:39 <AnotherTest> @faq Can haskell do anything?
19:11:39 <lambdabot> The answer is: Yes! Haskell can do that.
19:11:49 <Bike> that seems like a weird thing for there to be a standard library function for,though.
19:12:18 <AnotherTest> Well, if they have a cryptography library that is standard, they should definitely have euler's totient
19:12:31 <AnotherTest> But I'm not sure about that either
19:12:44 -!- zzo38 has joined.
19:13:09 <zzo38> What colorspace is best compression?
19:15:20 -!- sploknee has quit (Ping timeout: 246 seconds).
19:15:59 <kmc> black and white
19:16:00 -!- sploknee has joined.
19:16:16 <Taneb> Depends on the image and minimum quality
19:16:48 <AnotherTest> Would ASCII art be like really efficient?
19:16:52 <AnotherTest> Ok probably not.
19:18:54 -!- monqy has joined.
19:18:57 <Bike> have an all white image, put it in one line to simplify, and then encode it as the kolmogorov complexity of the length of the line. it's simple.
19:21:55 <zzo38> I mean lossless; sorry I didn't be clear
19:22:23 <AnotherTest> Wouldn't Bike's suggesting be lossless :p?
19:22:32 <AnotherTest> *suggestion
19:23:52 <zzo38> Is RGB best (as PNG uses), or do other color spaces result in a better compression (it does not necessarily have to be DEFLATE)?
19:23:55 <AnotherTest> zzo38: You probably just want a colorspace with only the colors that you use
19:24:34 -!- Snowyowl has quit (Quit: Page closed).
19:26:02 <kmc> i suspect you can do better by separately compressing contiguous luma and chroma channels
19:26:59 <AnotherTest> kmc: hm. Wouldn't that depend on the amount of colors used?
19:27:10 <kmc> yes
19:27:24 <kmc> not always better, I mean for some common sorts of images
19:27:44 <AnotherTest> for the ones with more colors, probably
19:27:47 <zzo38> Yes, that would work, if you always use the same color and know which ones you are going to use! Still I did think of having a "reuse color" command, and a command for run length, and other than that to be predictive coding somehow. What is best probably depend much on what kind of pictures you are encoding.
19:28:47 <zzo38> One thing I am trying to do, however, is making the 32x32 and 16x16 true color icons for a puzzle game.
19:31:00 <AnotherTest> Well, is it really that much of a problem if they are not compressed in the most efficient way known/possible?
19:31:54 <AnotherTest> s/compressed/encoded
19:32:22 <zzo38> It doesn't have to be absolutely best, but I want to avoid redundant stuff being repeated too many times. However there may be many icons, due to many different kind of pieces in this game!
19:32:41 <Sgeo> Is Alan Davies known for anything other than QI?
19:32:47 <Taneb> Yes
19:33:00 <Taneb> Jonathan Creek, a mystery series
19:33:04 <Taneb> He's an actor
19:39:47 <Taneb> He was also in Angus, Thongs, and Perfect Snogging
19:43:41 -!- ais523 has joined.
19:51:47 <AnotherTest> Has a "rather smart" program that generates a program as short as possible given sets of input and output?
19:51:57 <AnotherTest> *been created yet
19:52:57 <Bike> look up massalin and her superoptimizer.
19:52:59 <Taneb> I seem to recall that's mathematically impossible
19:53:07 <Bike> turns out the space of programs is really fucking huge, though.
19:54:09 <AnotherTest> Taneb: notice "rather smart", it may use if statements if there is no other option; also do you seem to recall the proof
19:54:27 <Bike> Taneb: well given finite sets of input and output, or something less than a turing machine (say, a pushdown automaton, a physical computer) it's possible, if not tractable...
19:54:54 <Bike> AnotherTest: it's impossible because consider what happens if you let it use itself.
19:55:30 <Bike> should be the same proof as for uncomputability of kolmogorov complexity?
19:55:30 <AnotherTest> Bike: it would generate itself in the ideal situation :D?
19:56:16 <Bike> AnotherTest: basically, say RatherSmart(input,output) = some program not involving RatherSmart. But then Eval(RatherSmart(input,output)) is a shorter program. So RatherSmart is wrong.
19:57:25 <AnotherTest> Well I'm ok if it's not always right
19:58:02 <Bike> AnotherTest: http://dl.acm.org/citation.cfm?id=36194 here.
19:58:32 <Bike> more concerned with getting something out than with perfect optimality, so that sounds relevant to you.
19:58:34 <AnotherTest> thanks
20:06:27 <Fiora> well, generating the fastest program is possible at least
20:06:35 <Fiora> which I think is more the goal of superoptimization
20:06:47 <Fiora> since you don't have to worry so much about actually halting :P
20:08:02 <Bike> oh, durr, i confused time and space, didn't I.
20:08:23 <Bike> maybe because "size of program" is kind of an odd thing to optimize for?
20:09:17 <Bike> Fiora: fastest program runs into the wonderfully named full employment theorem for compiler writers, though.
20:09:49 <Bike> er no, it doesn't. hrm
20:12:06 <Fiora> "full employment theorem"? XD
20:12:34 <elliott> http://en.wikipedia.org/wiki/Full_employment_theorem
20:12:34 <Fiora> http://en.wikipedia.org/wiki/Full_employment_theorem oh gosh that is the best name
20:15:40 -!- AnotherTest has quit (Quit: Leaving.).
20:16:46 -!- Arc_Koen_ has joined.
20:16:46 -!- Arc_Koen has quit (Read error: Connection reset by peer).
20:16:47 -!- Arc_Koen_ has changed nick to Arc_Koen.
20:28:39 <zzo38> I thought of three kind of deck of cards that could be made.
20:30:20 <zzo38> One is cards printed with atomic number, symbol, name, period, group, a few other data, of chemical elements. Some kind of game might be makable with such things, somehow?
20:31:45 <zzo38> One is cards to make a game based on Chinese elements. (Many correspondences have been made up for Chinese elements, it seems.) Each one of the five beats another create, destroy another, etc, to be balanced in this way.
20:34:22 <zzo38> One is a deck of 360 cards one for each degree of a circle. Each card might have: degrees, astrological sign, degree in sign, classical element, decan, hemisphere, northern season, southern season. A game may be made of this somehow, using sign/degree in sign like suit/ranks perhaps, or having two players north and south, or using elements, and more ideas.
20:35:31 <zzo38> Oops! I also forgot: mode (cardinal/fixed/mutable; cycling in this order starting from zero).
20:39:25 -!- asiekierka has quit (Excess Flood).
20:42:10 -!- asiekierka has joined.
20:44:06 <Arc_Koen> zzo38: well, you can use any deck to play mao
20:44:29 <zzo38> Why? Do they not care what is printed on the card?
20:44:38 <Arc_Koen> no, not really
20:44:41 <Arc_Koen> http://kevan.org/games/minimao.php
20:45:07 <Arc_Koen> I mean as long as not all the cards are completely identical, of course
20:53:56 -!- monqy has quit (Quit: hello).
20:59:44 <Sgeo> Is Horrible Turn any good?
21:08:26 -!- variable has quit (Ping timeout: 255 seconds).
21:09:23 <Bike> Arc_Koen: i think an experienced mao player could make a good game out of a deck of identical cards.
21:09:55 <ais523> Bike: yeah, but it'd take a while to get started
21:10:19 <Bike> a price true players are more than willing to pay
21:11:45 <ais523> I'd probably add a fizzbuzz rule as the first one :)
21:11:57 <Bike> haha
21:21:32 -!- oerjan has joined.
21:29:08 -!- sebbu has quit (Ping timeout: 255 seconds).
21:32:34 <shachaf> hellørjan
21:32:41 <shachaf> Are you the real oerjan?
21:32:51 <oerjan> there is a real oerjan?
21:33:13 <fizzie> A truerjan.
21:33:13 <shachaf> Several!
21:33:24 <oerjan> nvg is doing server upgrades, so i'm using webchat instead
21:33:32 <shachaf> oerjan: Remember Trurl?
21:33:37 <oerjan> no.
21:33:37 <fizzie> oerjan: A likely story!
21:34:06 <oerjan> fizzie: marvelous! truth is so unlikely to be likely, usually!
21:34:53 <Bike> was there a person named Trurl here before? I think Ilike this person.
21:35:34 <shachaf> Bike: I was thinking of Lem's Trurl
21:35:55 <Bike> ah. wondering if someone had named themselves after lem
21:36:23 <oerjan> stanislaw lem? (i still don't know about trurl)
21:36:37 <shachaf> https://en.wikipedia.org/wiki/The_Cyberiad
21:38:09 <Bike> trurl and klapaucius (probably spelling wrong) are the main characters of that.
21:38:14 <Bike> i guess youcould also be Pirx or w/e
21:39:21 -!- sebbu has joined.
21:39:22 -!- sebbu has quit (Changing host).
21:39:22 -!- sebbu has joined.
21:55:38 -!- Taneb has quit (Ping timeout: 256 seconds).
21:57:17 -!- DHeadshot has quit (Read error: Connection reset by peer).
21:57:23 -!- DH____ has joined.
22:15:14 -!- WeThePeople has quit (Quit: Leaving).
22:15:47 <oerjan> @show ø
22:15:47 <lambdabot> "\195\184"
22:16:14 <oerjan> > "ø"
22:16:15 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
22:17:21 <ais523> oerjan: unicodiness bug?
22:17:51 <oerjan> yeah
22:19:26 <Sgeo> I should probably food
22:20:26 -!- boily has quit (Quit: Poulet!).
22:21:09 <fizzie> ^ord ø
22:21:10 <fungot> 195 184
22:21:15 <fizzie> It matches!
22:24:12 <Arc_Koen> Bike: well I guess if you play long enough, some cards will end up "differently damaged" and then you can start *really* playing
22:24:29 <Bike> i was thinking you would ust play so many cards at a time.
22:24:47 <Arc_Koen> ooooooh right
22:25:20 <Arc_Koen> also you could make rules about folding or tearing cards apart
22:25:54 <Bike> so many possibilities for fucking with people
22:26:18 <oerjan> fizzie: yeah but how the heck do you get any of the bots to give an actual codepoint number...
22:26:26 -!- carado has quit (Ping timeout: 246 seconds).
22:26:48 <sploknee> Bike, I'd just say that all the cards still have a suit and number and just play as normal.
22:27:14 <Bike> Haha, far better.
22:27:56 <sploknee> "Can I play... this one?" "Hmm. No."
22:28:44 <Bike> excuse me, what kind of Mao game lets you talk
22:28:51 <Bike> just give that fucker some penalty cards!
22:30:06 <fizzie> `run echo -n ø | iconv -f utf8 -t utf16be | od -t x1 # oerjan: the hard way
22:30:08 <HackEgo> 0000000 00 f8 \ 0000002
22:30:52 <Bike> weak
22:31:33 <fizzie> `run perl -e 'use utf8; printf "U+%04x", ord("ø");'
22:31:34 <HackEgo> U+00f8
22:33:58 <oerjan> > showHex (fromEnum (maxBound :: Char)) ""
22:33:59 <lambdabot> "10ffff"
22:34:18 <oerjan> JUST SO YOU KNOW
22:34:58 <fizzie> `run echo ø | perl -C7 -pe '$_=ord' # short-ish
22:34:59 <HackEgo> 248
22:35:02 <Bike> :t maxBound
22:35:03 <lambdabot> Bounded a => a
22:35:43 <fizzie> `run perl -e 'use utf8; printf "U+%08x", ord("ø");' # FIXED
22:35:44 <HackEgo> U+000000f8
22:38:44 <fizzie> > maxBound :: Integer -- the LARGEST NUMBER
22:38:45 <lambdabot> No instance for (GHC.Enum.Bounded GHC.Integer.Type.Integer)
22:38:45 <lambdabot> arising from...
22:39:27 <Bike> whoa, man.
22:39:32 <Bike> > maxBound :: Int
22:39:34 <lambdabot> 9223372036854775807
22:39:43 <fizzie> That's not so big.
22:40:14 <fizzie> > fromIntegral (maxBound :: Int) + 1
22:40:15 <lambdabot> 9223372036854775808
22:40:16 <Bike> it's several orders of magnitude bigger than it is on my machine, so :P
22:40:26 -!- WeThePeople has joined.
22:40:48 <oerjan> > maxBound :: Word64
22:40:49 <lambdabot> 18446744073709551615
22:40:52 <olsner> 64-bit? probably only twice as big as on your machine
22:40:59 <kmc> > 2**29 - 1
22:41:00 <lambdabot> 5.36870911e8
22:41:07 <Bike> 64 bit machines are twice as big as mine. yes
22:43:18 <fizzie> > maxBound :: Word128
22:43:20 <lambdabot> Not in scope: type constructor or class `Word128'
22:43:20 <lambdabot> Perhaps you meant one of...
22:43:23 <fizzie> Sad.
22:43:24 <kmc> > log (2**32) / log 10
22:43:25 <lambdabot> 9.632959861247397
22:44:20 -!- Nisstyre has joined.
22:44:29 <fizzie> > logBase 10 (2**32) -- no need for your FANCY MATH.
22:44:30 <lambdabot> 9.632959861247397
22:46:13 <kmc> Napier's Bones would be a good name for a band
22:46:23 <Arc_Koen> Bike: excuse me, what kind of Mao game lets you talk << the kind where you care about not losing your friends
22:46:26 <shachaf> > (length.show) (2^32) -- no need for your FANCY MATH
22:46:28 <lambdabot> 10
22:46:32 <kmc> probably psychedelic doompunk mathrock
22:46:37 <Bike> Arc_Koen: that is a bullshit game of Mao, sir
22:46:56 <fizzie> > 10**(logBase 10 (2**32)) - fromIntegral (maxBound :: Word32) - 1 -- its not zero math is wrong world is crumble
22:46:57 <lambdabot> -1.6689300537109375e-5
22:46:58 <Bike> :t 2**32 - 1
22:46:59 <lambdabot> Floating a => a
22:47:34 <shachaf> kmc: Did you read The Cyberiad?
22:48:14 <kmc> no :/
22:48:21 <Bike> you should fix that, it's so fun.
22:48:46 <Bike> it has a pagelong love poem using topology terms! and it's been translated
22:50:01 <shachaf> It's been translated into Hebrew!
22:50:04 <shachaf> Also English.
22:50:13 <Bike> Huh, who did the Hebrew translation?
22:50:37 * Bike first heard about the Cyberiad in the context of books that are hard to translate
22:51:47 -!- sploknee has quit (Ping timeout: 244 seconds).
22:52:05 <shachaf> Not sure.
22:52:57 -!- sploknee has joined.
22:54:46 <kmc> "There's no doubt that Apple is at the center of technology's largest revolution ever"
22:54:49 <kmc> ...
22:55:09 <kmc> oh i forgot about iAgriculture and the iSteamEngine
22:55:11 <Bike> The Arab Spring?
22:55:17 <kmc> -_-
22:55:33 <shachaf> kmc: are you doubting? don't doubt. there's no doubt.
22:55:35 <kmc> i love it when "technology" means exclusively "shiny toys for rich people"
22:55:50 <shachaf> i love technology
22:55:52 <shachaf> it is so easy
22:56:09 <kmc> c.c
22:56:44 <Bike> i love it when "technology" means exclusively "shiny toys for rich people" <-- well at least it's not so geared /directly/ towards chopping poor kids' arms off?
22:57:07 <Fiora> I guess you could argue that smartphones worldwide are a huge information democratization revolution thing?
22:57:20 <Fiora> but people in pakistan are mostly not buying iphones
22:57:32 <Bike> well the government keeps banning them.
22:57:36 <Bike> probably a bit of a turn-off, that
22:58:16 <kmc> cellphones are a huge global thing yeah
22:59:06 <Bike> kmc: also, http://www.theonion.com/articles/twitter-creator-on-iran-i-never-intended-for-twitt,6783/
22:59:37 <Fiora> there is something really amazing about how you can have some place in africa where the government is falling apart and there's serious disease problems and armed conflict and unstable food supplies but everyone is carrying around a cell phone and texting each other
22:59:42 <kmc> don't know about smartphones much less luxury smartphones
22:59:48 <kmc> yeah
22:59:57 <Fiora> but it makes sense, I think
22:59:58 <kmc> Fiora: do you know about M-Pesa?
23:00:03 <Fiora> since like, "stable food supply" is a lot harder than "$20 cell phone"
23:00:10 <Fiora> `google M-Pesa
23:00:12 <HackEgo> ​ \ Looking up 127.0.0.1:3128 \ Making HTTP connection to 127.0.0.1:3128 \ Sending HTTP request. \ HTTP request sent; waiting for response. \ Alert!: Unexpected network read error; connection aborted. \ Can't Access `http://google.com/search?q=%4d%2d%50%65%73%61' \ Alert!: Unable to access document. \ \ lynx: Can't access startfile
23:00:17 <Bike> wow.
23:00:21 <Bike> @google m-pesa
23:00:22 <lambdabot> http://en.wikipedia.org/wiki/M-Pesa
23:00:22 <lambdabot> Title: M-Pesa - Wikipedia, the free encyclopedia
23:00:27 <Bike> the weirdest thing in anthro class was still that everybody, everywhere, has a t-shirt
23:00:37 <kmc> it's a system used in Kenya and Tanzania for sending money with your cellphone
23:00:44 <kmc> reasonably secure / resistant to fraud
23:00:48 <Fiora> wow. that is so cool
23:00:54 <kmc> works for people with no prospect of having a bank account
23:00:55 <Bike> ooh, nice.
23:00:59 <kmc> it's used by GiveDirectly for their cash transfers
23:01:10 <kmc> and i think by some microloan programs as well
23:01:14 <kmc> and for general business transactions
23:01:18 <Bike> i should really do some of those microloan things when i get actual money
23:01:23 <Fiora> it's like, it bypasses so much of the financial infrastructure normally necessary
23:01:59 <Bike> "The growth of the service forced formal banking institutions to take note of the new venture. In December 2008, a group of banks reportedly lobbied the Kenyan finance minister to audit M-Pesa, in an effort to at least slow the growth of the service. This ploy failed, as the audit found that the service was robust." oh cool
23:02:08 <Fiora> awesome
23:02:53 <Bike> ok the afghanistan bit is pretty sad though
23:03:11 <Bike> i mean, nice that it worked and all, but the previous situation, well.
23:03:43 <oerjan> `cat bin/google
23:03:44 <HackEgo> ​#!/bin/bash \ if [ ! "$1" ] \ then \ echo 'Google what?' \ exit 1 \ fi \ \ QUERY=`echo -n "$1" | od -t x1 -A n -w1000 | tr " " %` \ \ lynx --cfg=/dev/null --lss=/dev/null \ \ --dump --width=1000 'http://google.com/search?q='"$QUERY" | \ grep -A 4 'Search Results' | \ tail -n 2
23:04:05 <oerjan> `run sleep 1; google M-Pesa
23:04:08 <HackEgo> ​ \ Looking up 127.0.0.1:3128 \ Making HTTP connection to 127.0.0.1:3128 \ Sending HTTP request. \ HTTP request sent; waiting for response. \ Alert!: Unexpected network read error; connection aborted. \ Can't Access `http://google.com/search?q=%4d%2d%50%65%73%61' \ Alert!: Unable to access document. \ \ lynx: Can't access startfile
23:04:41 <olsner> `fetch http://google.com/search?q=m-pesa
23:04:43 <HackEgo> http://www.google.com/search?q=m-pesa: \ 2013-01-14 23:04:42 ERROR 403: Forbidden.
23:04:43 <kmc> i've heard that in Tanzania, people who are too poor to own cellphones, or live in places with no coverage, will still own SIM cards
23:04:57 <kmc> and when they go into town they will ask random passers-by to borrow their phones and put the SIM in
23:05:09 <kmc> and this is how they coordinate their errands
23:05:27 <Fiora> I wonder if you could sell a service renting cell phones out for a few minutes
23:05:36 <Fiora> like a shop where you go in and pay a few cents and rent a cell phone to use your sim card with
23:05:58 <Bike> well then you need cents. which is like having a whole other currency.
23:06:46 <Fiora> I wonder if you could even automate it. lock the phones via cable or something to a kiosk and have a place to insert coins
23:06:56 <Arc_Koen> I think it's called a telephone box, or something
23:07:05 <Fiora> ... I don't think those take sim cards :P
23:07:22 <Bike> hm. phonebooth renaissance. not bad
23:08:04 <Arc_Koen> well, in london most of them have got wifi already
23:08:20 <oerjan> `run sleep 5; google M-Pesa
23:08:28 <HackEgo> ​ \ Looking up 127.0.0.1:3128 \ Making HTTP connection to 127.0.0.1:3128 \ Sending HTTP request. \ HTTP request sent; waiting for response. \ Alert!: Unexpected network read error; connection aborted. \ Can't Access `http://google.com/search?q=%4d%2d%50%65%73%61' \ Alert!: Unable to access document. \ \ lynx: Can't access startfile
23:08:48 -!- Arc_Koen has quit (Quit: Arc_Koen).
23:09:07 <sploknee> Fiora, why even keep the phone
23:09:27 <sploknee> i suppose there's the cost and simplicity factor for that
23:09:32 <Bike> Well it still needs network connectivity
23:09:51 <oerjan> Gregor: do you know why that doesn't work? i put in a sleep as you suggested previously, and opening the link shown from my browser _does_ work
23:10:03 <kmc> in NYC phone booths are mostly used as impromptu urinals
23:10:23 <kmc> they haven't imported the dutch (?) innovation of the amazing freestanding one-piece moulded quad porti-urinal
23:10:40 <kmc> plus I think americans are too prudish to use one
23:10:58 <olsner> probably counts as public urination, legally
23:10:58 <elliott> kmc: You americans make NY sound *so* appealing.
23:10:59 <Bike> but not too prudish to piss in a phonebooth!
23:11:22 <sploknee> elliott, here is new york in a nutshell: shops
23:11:29 <sploknee> street after fucking street of shops
23:11:29 <kmc> Bike: yeah well at that point you're drunk
23:11:42 <Bike> kmc: I thought the portiurinals were for the drunk as well.
23:11:44 <kmc> sploknee: uhm that's not all of NYC
23:12:00 <kmc> Bike: sure, but you probably have to pretend otherwise
23:12:00 <Bike> Maybe that was just wherever I read about them sanitizing it for us unpissy murkins.
23:12:04 <sploknee> kmc, it was a family trip i couldn't go to the nonshop parts
23:12:09 <kmc> sploknee: sucks
23:12:16 <elliott> when I was a kid
23:12:29 <elliott> all I knew about NY was like the skylines and what the skyscrapers and shit looked like
23:12:32 <elliott> but because of the perspective
23:12:44 <elliott> it always looked like they were literally packed right up against each other so there's barely any space for a street
23:12:52 <kmc> sort of true
23:12:57 <elliott> so my mental perception of NY was like
23:13:07 <elliott> barely being able to fit a car between the buildings
23:13:35 <elliott> (maybe this is actually true I have no idea what the city looks like beyond like Times Square)
23:13:36 <Bike> I thought that was how cities worked in general.
23:13:38 <kmc> haha
23:13:51 <kmc> well NYC streets are wider than old city centers in Europe
23:14:03 <elliott> (ug simple rural man. ug incapable of handling bigger cities than newcastle. ug sometimes incapable of handling newcastle)
23:14:06 <kmc> but still fairly narrow
23:14:09 <sploknee> Bike, i thought in america you generally can't tell the middle of the city from the outskirts
23:14:17 <kmc> each block does have a bunch of buildings right up against each other
23:14:22 <elliott> well edinburgh is okay
23:14:27 <elliott> the streets are wide in edinburgh right sploknee
23:14:34 <kmc> sploknee: not for anything worthy of being called a city
23:14:41 <sploknee> elliott, varies widely
23:14:56 <kmc> i'm kind of sick of the idea that suburban sprawl is exclusively an american problem
23:15:00 <kmc> i have been to slough
23:15:04 <kmc> it is nicer than new jersey but only a little
23:15:08 <sploknee> you poor bastard
23:15:19 <elliott> kmc: yes but do you have any famous poems about how terrible your sprawls are
23:15:26 <kmc> probably
23:15:36 <kmc> in fairness that poem was written when slough was full of factories, not commuters
23:15:54 <Bike> sploknee: as someone living in a metro area can i just say hahahahahaha, i can see cows from my house
23:16:41 <olsner> if you can see cows you're not in a city
23:17:05 <kmc> i'm sure there are some hipsters in brooklyn raising cows in a loft apartment
23:17:10 <sploknee> you might if you're in india
23:17:11 <kmc> it's the next step after chickens
23:17:19 <sploknee> if my rme textbooks were anything to go by
23:17:23 <Bike> the town (not city) I'm not actually in the limits of actually has (controversial!) laws on the books about livestock in town, it's awesome
23:17:26 <elliott> anyway car-centric big city design kind of terrifies me
23:17:37 <kmc> yeah it sucks
23:17:48 <kmc> NYC was spared the worst of Robert Moses's plans
23:17:53 <Bike> yeah, who was that one architect who was all pissed at cars...
23:18:00 <kmc> he wanted to put a huge elevated freeway on Canal St
23:18:01 <Bike> right, the lady who was the anti-moses
23:18:04 <elliott> there is just something inhumanly hostile about the whole layout
23:18:11 <kmc> and another on 34th St that might possibly have gone through the Empire St Building
23:18:19 <Bike> is that like the Big Dig?
23:18:24 <Bike> this whole... plan
23:18:42 <elliott> kmc: a freeway through the building?
23:18:45 <kmc> yes
23:18:49 <elliott> americans...
23:18:50 <Bike> they have those in tokyo, don't they?
23:19:08 <Bike> or at least highway exits or something
23:19:33 <elliott> despite this I strangely like how tokyo looks for some reason actually. their urban hell has soft rounded corners
23:19:43 <Bike> http://en.wikipedia.org/wiki/The_Death_and_Life_of_Great_American_Cities here's the thing i was thinking of!
23:19:43 <kmc> he also decided that there should be a beach for rich people and a beach for poor people, and built bridges over the road to the rich people beach so that buses couldn't get there
23:20:00 <elliott> kmc: wow
23:20:12 <Bike> "The modernist planners used deductive reasoning to find principles by which to plan cities. " i fucking love history
23:20:17 <kmc> anyway I think urbanism in the US is on the upswing again
23:20:20 <elliott> kmc: another day, another person to hate
23:20:34 <Bike> moses is an interesting guy, worth readin about
23:20:38 <Bike> so you can hate with a direction i mean
23:20:45 <Fiora> don't we have rich people beaches?
23:20:48 <Fiora> like, they're called "country clubs"
23:21:00 <sploknee> they're in the country you idiot
23:21:16 <Bike> Fiora: well the fucking over the poor is just going the extra mile, you know?
23:21:35 <elliott> country clubs with artificial indoors beach
23:21:44 <Bike> country clubs are just "poors stay out", not "poors stay out also we shit on your lawn"
23:21:55 <elliott> free lawn composting?!??!
23:21:58 <Fiora> I've been to one once, it was in the suburbs in florida (visiting distant relatives <_<;)
23:22:01 <elliott> that's communism
23:22:19 <Bike> elliott: what if it was a bald eagle doing the shitting, though
23:22:40 <elliott> communist eagle
23:22:50 <elliott> probably from the united states of soviet???
23:23:12 <elliott> USSR (United States of SovietR)
23:24:04 -!- oerjan has quit.
23:24:22 <sploknee> united socialist socialist reds
23:24:30 -!- oerjan has joined.
23:24:35 <elliott> oerjan: why are you using webchat. oh
23:24:51 <oerjan> I HAVE NO IDEA WHAT YOU ARE TALKING ABOUT.
23:25:02 <oerjan> (nvg did a server upgrade)
23:25:06 <elliott> anyway I think it would be interesting to have a city designed around not having any roads and instead having ubiquitous access to underground (or overground?????) rail instead
23:25:13 <elliott> probably this is already a "thing"
23:25:30 <kmc> i think rail basically sucks for last mile freight deliveries and the like
23:25:45 <kmc> cars are undeniably useful, it wouldn't be socially optimal to exclude them completely everywhere
23:25:45 <Bike> i've heard milwaukee has some coolness in that regard, in that you can walk everywhere even though it's fucking freezing because they have tunnels and skybridges everywhere
23:26:21 <kmc> cars / trucks i mean
23:26:29 <elliott> kmc: well side-effects are useful too
23:26:32 <elliott> call me a purist
23:26:34 <kmc> heh
23:26:57 <elliott> you can learn things about the ideal middle-ground solution by going to the very extreme
23:27:01 <elliott> *extremes
23:27:02 <Bike> ooh, they have municipal wireless too. maybe i should live there as long as i'm being an american
23:27:03 <shachaf> i love side-effects
23:27:04 <shachaf> they are so easy
23:27:05 <kmc> also most cities have surface public transit as well, be it buses or trams
23:27:26 <shachaf> kmc: I'm told I should read "The Power Broker"; should I?
23:27:29 <kmc> elliott: i'm not sure, it's just as easy to set up strawmen and knock them down
23:27:34 <kmc> shachaf: I've heard it's good but I haven't read it.
23:28:12 <elliott> oh, robert caro
23:28:29 <elliott> all I know about him is he has this billion-book biography of lyndon b johnson
23:28:31 <elliott> (who I know nothing about)
23:28:37 <Bike> if you set up a carless city in the US you'd be mocked as a hippie and disregarded. Presumably the analogy here is to trying to popularize the IO monad (instead of usual programming) in C.
23:28:47 <shachaf> elliott: well maybe if you read the biography you would know.........................
23:28:51 <kmc> Bike: it depends where in the US
23:28:58 <kmc> some areas are quite receptive to it
23:29:10 <kmc> the USA is a huge heterogenous country
23:29:20 <Bike> eh, i live near one of the more carless cities here and i don't think they'd go for /completely/ carless
23:29:28 <kmc> the degree to which values differ by geographical location is increasing, I believe
23:29:31 <oerjan> <-- BORING
23:29:35 <oerjan> * <elliott> the predictae you pass has to be an equivalence relation <-- BORING
23:29:38 <Bike> yeah probably
23:29:42 <elliott> *predicate
23:29:44 <elliott> <-- BORING
23:29:49 <Bike> i'm honestly sort of afraid of the south sometimes. i am the reverse racist??
23:29:57 <oerjan> > nubBy (((>1).).gcd)[2..]
23:29:59 <lambdabot> [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101...
23:30:09 <elliott> oerjan: that was a quote from the docs btw
23:30:22 <oerjan> oh?
23:30:25 <elliott> yes
23:30:28 <elliott> Bike: i like me some casual america-hating too
23:30:36 <elliott> Bike: but I also like america-hating-hating when annoying people do it
23:30:47 <shachaf> elliott will hate anything.
23:30:48 <Bike> don't we all?
23:30:55 <elliott> for instance europeans. the only people worse than americans
23:30:58 <elliott> bam two-in-one
23:31:13 <sploknee> Bike, classist
23:31:13 <Bike> i mean i do live here, i know they're not zombie evil ghosts or anything, but it's still pretty fucking sad to read about texas textbooks or whatever
23:31:30 <shachaf> elliott: what about hexham people
23:31:31 <Bike> or alabama juvie farms
23:31:47 <elliott> Bike: well they are zombie evil ghosts
23:31:58 <Bike> :O
23:31:58 <sploknee> they are zombie goasts
23:32:11 <kmc> zombie goatse
23:32:49 <elliott> anyway it's mainly that I hate cars
23:32:56 <elliott> and don't have any desire to drive one
23:33:06 <elliott> therefore roads are completely extraneous for me except for buses and I like trains more than buses!
23:33:07 <kmc> what about bikes
23:33:18 <Bike> imo bikes
23:33:20 <elliott> bikes are pretty good but I am terrible at riding bikes
23:33:31 <elliott> I don't think you need roads as we know them to support bikes though
23:33:37 <shachaf> i love bikes they are so easy
23:33:48 <kmc> sighchaf
23:33:56 <Bike> car roads kind of work against bikes, really, if the sanfran bloggers i follow are any indication
23:34:08 <kmc> SF roads are pretty big and scary compared to, say, Boston roads
23:34:09 <shachaf> kmc: You don't have a proper appreciation for this.
23:34:18 <shachaf> SF has weird streets.
23:34:26 <shachaf> i don't even understand it??
23:34:28 <kmc> Boston roads are all twisty and messy and so the cars don't go fast or with much confidence
23:34:31 <Bike> "After making his getaway on the bulldozer, he had driven so slowly that a 5km tailback built up behind him on the motorway." oh so that's the answer to that question
23:34:31 <elliott> like if you just had really wide streets
23:34:36 <kmc> SF has a kind of "damn the hills" street grid with big streets
23:34:38 <elliott> that seems like it could work for bikes
23:34:38 <Bike> kmc: boston drivers are crazed jerks though
23:34:42 <kmc> guess so
23:35:12 <elliott> I read once an argument that suggested we should just get rid of the street/road division and force drivers to drive carefully because there are people everywhere or something
23:35:17 <kmc> yeah
23:35:18 <elliott> I forget the details
23:35:39 <elliott> seems like it would be hard to sustain because big metal box is going to be better at intimidation than people
23:35:45 <kmc> some cities have those areas
23:35:57 <Bike> pedestrians have the right of way everywhere, don't they? (i mean, not that drivers necessarily care, but)
23:36:03 <shachaf> It's weird that there are no "old cities" in the US.
23:36:17 <Bike> old cities how?
23:36:25 <shachaf> Older than a couple of hundred years, I mean.
23:36:38 <elliott> Bike: well I am not really interested in the law
23:36:40 <Bike> well, yeah, we killed all the people who had been here for hundreds of years.
23:37:03 <elliott> since I don't believe much law-following goes on on roads anyway
23:37:24 <kmc> back later
23:37:27 <Bike> yeah, but then how do you get drivers to stop doing... all those shitty driver things
23:37:35 <elliott> well first you kill them
23:37:46 <Bike> sensible.
23:37:58 <elliott> more seriously I don't think a law that drivers have to start being reasonable would cause drivers to actually start being reasonable
23:38:17 <elliott> I don't really see any viable way to enforce road law
23:38:24 <Bike> no, of course not, we have those already. nobody actually follows all the laws, in the US anyway.
23:38:42 <shachaf> why not? they are so easy
23:38:47 <Bike> stopchaf
23:38:56 <shachaf> :'(
23:39:01 <sploknee> shachaf what is going on
23:39:13 <Bike> he has beaky addiction.
23:39:23 <elliott> shachaf is doing the thing where you quote someone you think is a troll in #esoteric a lot
23:39:24 <sploknee> what is beak
23:39:32 <shachaf> Bike: I heard that beaky was in ##c
23:39:44 <Bike> nope.
23:39:54 <shachaf> 11:07 <Bike> also ho damn beaky is in ##c.
23:40:05 <Bike> 15:39 [freenode] -!- There is no such nick beaky
23:40:12 <shachaf> elliott: I'm undecided as to whether beaky is a troll.
23:40:28 <shachaf> But I do love quoting beaky. It...
23:40:43 <Bike> no. no shachaf. nochaf
23:41:23 <elliott> 19:07:16: <Bike> "i love switch statements"
23:41:26 <elliott> ok that's pretty good
23:41:40 <shachaf> elliott: http://slbkbs.org/beaky.txt
23:42:03 <Bike> elliott: "but sometimes they get too big" "especially when I have lots of types"
23:42:22 <elliott> Bike: polymorphic switch
23:42:41 <elliott> Bike: Is PoppaVic still around?
23:42:52 <Bike> in ##c? i see someone by that name, yes
23:43:02 <elliott> I guess no then, if you don't know who that is.
23:43:02 <Bike> today the only person i particularly talked to was I-Love-Boobies, though
23:43:12 <shachaf> so easy
23:43:12 <Fiora> and me, I think!
23:43:19 <Bike> yeah but i talk to you seemingly everywhere
23:43:29 <shachaf> ##c is awful.
23:43:37 <shachaf> Well, was awful last time I was in it.
23:43:40 <Bike> elliott: googling the name got me a 4chan thread. I am thinking I will not google any more.
23:43:44 <shachaf> Is it less awful now?
23:44:12 <Bike> well it managed to teach me a lot of things about the more anal points of pointer arithmetic in standard C. But I didn't know much C to begin with.
23:44:37 <elliott> Bike: Seems like the go-to explanation of PoppaVic is down.
23:44:51 <shachaf> I love pointer arithmetic.
23:44:55 <Bike> On the other hand, somebody just asked why they couldn't use ++ in arr[idx++] = 0.
23:44:57 <shachaf> Bike: Points like what?
23:45:17 <shachaf> Bike: UPDATE: The exact code is arr[(*idx)++] = 0
23:45:19 -!- Phantom__Hoover has joined.
23:45:23 -!- sploknee has quit (Ping timeout: 255 seconds).
23:45:24 <shachaf> imo arr and idx are pretty bad variable names
23:45:36 <shachaf> @arr
23:45:36 <lambdabot> Shiver me timbers!
23:45:46 <Bike> shachaf: that if you have whatever x[5], x+5 is defined (but you can't dereference it), x+6 is not, and *((x+6)-2) is also not.
23:46:03 <oerjan> <elliott> I don't really see any viable way to enforce road law <-- reminds me of this apocryphical story about the norwegian supreme court justice who was asked if he'd ever broken the law. "Well, I do have a car!"
23:46:09 <shachaf> Bike: Hmm, I didn't know that last one. Are you sure?
23:46:16 <shachaf> What about: *(x + 6 + (-2))
23:46:28 <shachaf> And with parentheses around either group.
23:46:54 <Bike> shachaf: Fairly sure. Don't know about that; maybe the implementation is allowed to fold arithmetic as it wants if it's associative though.
23:46:55 <shachaf> Oh, I think I see, actually.
23:48:00 <shachaf> Did you take https://blogs.oracle.com/ksplice/entry/the_ksplice_pointer_challenge ?
23:48:04 <Fiora> I don't think it's associative if overflow can occur?
23:48:07 <Fiora> I'm not sure...
23:48:22 <shachaf> Another puzzle: https://gist.github.com/1454460
23:48:32 <shachaf> Hmm, I think I gave that person that puzzle.
23:48:52 <Bike> What does this program print? <-- behavior of %p isn't defined enough to say :P
23:49:38 -!- augur has quit (Remote host closed the connection).
23:49:43 <shachaf> It looks like Oracle broke it.
23:50:37 <Bike> "If you can help, find us on #sicp @ EFnet. We will be attacking ##c on Freenode soon enough. Expect us." ok, this poppavic guy may be hilarious.
23:51:08 <elliott> Bike: I found that same thread googling to try and find the link I wanted and I am pretty sure that is some idiot who talked to PoppaVic rather than PoppaVic?
23:51:18 <elliott> Anyway it looks like the page is gone and not even the Internet Archive has it.
23:51:22 <Bike> Yes, but by association, you see.
23:51:24 <elliott> RIP in peace.
23:52:36 <kmc> the pointer challenge was posted post-oracle
23:54:01 <shachaf> Was it?
23:54:05 <shachaf> I must have it mixed up, then.
23:54:14 <shachaf> Anyway why am I still here?
23:54:31 <shachaf> I was going to be going a while ago. :-(
23:54:31 -!- Phantom__Hoover has changed nick to Phantom_Hoover.
23:54:55 <Bike> i hate leaving, it's so sweet and sorrowful
23:56:21 <oerjan> if *(x + (6-2)) is undefined behavior, then so is *((x + 6) + (-2)), so an implementation would always be _allowed_ to rewrite the latter to the former, i think.
23:56:57 <elliott> shachaf: you can't leave until you figure out these functions
23:57:05 <shachaf> elliott..........
23:57:08 <shachaf> Sorry, I'm leaving now.
23:57:12 <shachaf> I'll be back later?
2013-01-15
00:00:33 <oerjan> <AnotherTest> Well, if they have a cryptography library that is standard, they should definitely have euler's totient <-- calculating euler's totient requires you to factorize, iirc
00:02:16 -!- impomatic has quit (Quit: impomatic).
00:03:57 <kmc> good goatkcd today
00:04:31 <Bike> haha, it is
00:12:06 <kmc> "Somebody should make Goat-Alt-Del"
00:14:11 <elliott> wouldn't that be just ctrl-alt-del
00:20:00 <elliott> kmc: can you help me write a haskell function
00:20:20 -!- epicmonkey has quit (Ping timeout: 248 seconds).
00:22:58 <Bike> https://twitter.com/PLT_Zizek so
00:23:00 <elliott> kmc: is that a yes
00:23:13 <elliott> Bike: good yes i like plt_zizek
00:23:14 <elliott> at least
00:23:16 <elliott> I remember liking plt_zizek
00:24:31 <Bike> https://twitter.com/PLT_Zizek/status/174508222684737536 well you see
00:25:15 <kmc> hahaha
00:25:47 <elliott> Bike: those are precisely my interests too
00:26:12 <kmc> this is pretty god
00:26:13 <kmc> good
00:26:44 <kmc> 'Large parts of PLT can be explained by simple Pavlovian conditioning. Java uses objects and is painful, so objects are associated with pain.'
00:26:47 <kmc> yes this all the time
00:26:58 <kmc> mysql / python threads / etc
00:27:10 <elliott> also https://twitter.com/PLT_Molyneux https://twitter.com/PLTAlaindeB
00:27:18 <Bike> i've heard people say that about lisp (and long ugly paren-full arithmetic expressions)
00:27:21 <elliott> I think PLT_Borat was the first
00:27:25 <Bike> am i a plt communist
00:27:33 <kmc> is there PLT_Marx
00:27:39 <elliott> https://twitter.com/PLT_Borat
00:27:52 <elliott> kmc: apparently no
00:27:54 <elliott> you get to start it
00:28:04 <kmc> wowowowowow
00:28:08 <Bike> when i googled "plt marx" Duck Soup came up, so I think that's a victory
00:28:12 <kmc> i will make so many 'class consciousness' jokes
00:28:34 <shachaf> kmc would start PLT_ebooks
00:28:48 <Bike> truly, enterprise fetishism is killing the proletariats
00:29:53 <kmc> i fell in love with the first gimmick twitter account that i met who could appreciate georges bataille
00:30:18 <shachaf> i love gimmick twitter accounts
00:30:27 -!- ais523 has quit.
00:30:39 <Bike> theory: all gimmick twitter accounts are actually run by continental philosophers
00:30:43 <kmc> shachaf: http://images4.wikia.nocookie.net/__cb20090501163307/othertitles/images/a/ab/Let's_Run_This_Shit_Into_the_Ground.gif
00:31:14 <Bike> "The imagery of the novel is built upon a series of metaphors which in turn refer to philosophical constructs developed in his work: the eye, the egg, the sun, the earth, the testicle." cool
00:31:17 <shachaf> kmc: I thought I already had?
00:31:37 <kmc> also the actual Žižek was on Julian Assange's talk show
00:31:45 <kmc> they prank called David Horowitz at home
00:32:00 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
00:33:11 <elliott> kmc: "the actual Žižek"
00:33:13 <elliott> what a ludicrous notion
00:33:15 -!- mig22 has quit (Quit: mig22).
00:33:56 <elliott> `addquote <kmc> i fell in love with the first gimmick twitter account that i met who could appreciate georges bataille
00:33:59 <HackEgo> 914) <kmc> i fell in love with the first gimmick twitter account that i met who could appreciate georges bataille
00:34:53 <kmc> Horowitz is one crazy motherfucker
00:35:13 <kmc> within a few minutes he had blamed "Democrats and the international Left" for the Iraq War
00:36:14 <Bike> Is his justification hilarious or just nonexistent
00:36:26 <kmc> i don't remember anything coherent
00:36:35 <kmc> no PLT_Jesus either!!
00:37:34 <Bike> «Horowitz also founded the organization Students for Academic Freedom, whose self-stated goal is combating "leftist indoctrination" in academia.» good, good
00:38:04 <elliott> kmc: is PLT_marx registered yet
00:38:18 <kmc> don't think so
00:38:31 <elliott> you're too slow
00:38:31 <kmc> Bike: he was raised by communists iirc
00:38:35 <kmc> and helped the black panthers kill somebody
00:38:40 <Bike> awesome
00:38:43 <kmc> and then kinda... made a 180° turn at speed
00:39:05 <kmc> elliott: surprise i don't actually want to run a gimmick Twitter account
00:39:32 <Bike> you need to run it? i thought you'd just set up a bot to search/replace on das kapital occasionally
00:39:53 <kmc> heh
00:40:29 <Bike> well, i guess that would be PLT_Marx_ebooks, which is one of the more specialized jokes I couuld think of
00:40:35 <kmc> 'the platitude that male sexism is keeping women from entering CS only reinforces the notion that the field belongs to men by default'
00:40:43 <kmc> kind of interesting to consider this one
00:40:45 <kmc> i don't think it's true though
00:40:59 <kmc> i mean it's not about who the field 'belongs to', just who dominates it right now
00:41:27 <Fiora> I think it's less "the platitude" and more that, whenever someone brings the topic up, a ton of guys come out of the woodwork and argue about it and don't actually let women talk
00:41:38 <elliott> Bike: plt_marx_ebooks sounds worth registering a twitter account to follow
00:41:59 <Bike> yeah, zizek is sometimes sort of... uh... bad, that way. apparently he said romani were the problem in europe or something. i'd rather just stick with listening to social scientists and activists on those subjects probably
00:42:12 <kmc> Fiora: yeah
00:42:23 <Bike> elliott: does the "wants to listen to incoherent marxist anecdotes, replaced with PLT jargon" demographic exist outside of this channel
00:42:37 <kmc> unfortunately there are often no women around, whether they want to talk about it or not
00:42:37 <elliott> Bike: um, like, everyone in the world?
00:42:46 <Bike> ok granted
00:42:48 <kmc> not so much on the internet but in these IRL communities with serious gender bias
00:43:18 <Fiora> kmc: basically it reminds me of this http://www.theonion.com/articles/man-finally-put-in-charge-of-struggling-feminist-m,2338/
00:44:18 <kmc> yeah
00:44:43 <kmc> i can see that
00:44:44 <Fiora> I mean I guess I experience this a lot myself, I see discussions on the topic but they feel very uncomfortable to enter, and the few times I've tried I often get shut down
00:44:51 <Fiora> (mostly online but still)
00:44:56 <kmc> yeah
00:45:33 <Fiora> there's also the single obligatory woman who insists that she speaks for all women and her experience is everyone else's and sexism doesn't happen in CS and hey boys do you like me yet do you like me
00:45:36 -!- Phantom_Hoover has joined.
00:45:38 <kmc> yeah
00:45:39 <Fiora> and then all the guys latch onto that and use it as "proof"
00:45:53 <Fiora> self-sustaining cycle etc <_>
00:46:01 <elliott> haha that onion article
00:46:20 <Fiora> yeah, that article is. I don't know. just simultaneously completely hilarious and depressing
00:46:24 <shachaf> good article
00:47:54 -!- augur has joined.
00:49:09 <kmc> i don't know, when I read say http://geekfeminism.wikia.com/wiki/White_Knighting or http://geekfeminism.wikia.com/wiki/Splaining i feel basically like i must be part of the problem no matter how hard I try and so I should keep my mouth shut
00:50:13 <Fiora> um... I guess a good start (just in general, not even sexism specifically) is to never talk over the people the discussion is about
00:50:37 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
00:50:37 <kmc> right
00:50:51 <kmc> but as you said, it can be really difficult and uncomfortable for those people to enter the conversation
00:50:54 <Fiora> like if a black person says something about racial issues it's not your job to say they're wrong or disagree
00:50:56 <Bike> well like you said it's not always obvious that you're doing that, like, if yeah well that.
00:51:24 <Bike> especially on the internet when it's not obvious who you're talking to, and in front of...
00:52:05 <Fiora> ... I think... I guess one thing is when people take up adversarial positions against <the existence of some form of oppression/discrimination/bigotry>"
00:52:07 <shachaf> Fiora: Why not?
00:52:18 <Fiora> that makes it uncomfortable for people of the oppressed group to enter the conversation
00:52:24 <Bike> why not what?
00:52:56 <Fiora> shachaf: basically, assuming you're not a PoC, you haven't experienced the racism a PoC has, so you can't really tell a PoC that his or her experiences are invalid.
00:53:25 <shachaf> Well, telling anyone their experiences are invalid is pretty silly.
00:53:32 <kmc> i'm more concerned about situations where i'm trying to come out against racism / sexism / whatever but still come off as a privileged douchebag due to some faux pas
00:54:13 <kmc> there seems to be a really fine line here and it scares me and makse me want to avoid getting involved at all
00:54:34 <Fiora> I think that the fact that you're worrying about that means you're probably reasonably okay
00:54:36 <Bike> same here, for what it's worth
00:55:22 <Bike> i usually avoid being involved unless it's a conversation like this. I'm too nervous to say "you shouldn't talk about Arabs that way" or whatever.
00:55:26 -!- augur has quit (Remote host closed the connection).
00:56:21 -!- TeruFSX has joined.
00:57:28 <Fiora> it's kind of a viscious cycle equally though, since if none of the guys who are unsure of themselves say anything, the only guys who end up being in the conversation are the douchenozzles
00:57:38 <Fiora> who are the most frustrating to talk with
00:57:44 <kmc> oh well I will just try to read more and understand more
00:58:04 <kmc> i am kind of new to caring about this stuff at all
00:58:12 <kmc> maybe it's just because i'm friends with people who are cooler than me who care about it
00:58:27 <Bike> Fiora: well then I say things and get into arguments with people I like. oops :(
00:58:35 <kmc> not sure if that's an intrinsically dumb reason or if it's basically how most social progress happens
00:58:39 <kmc> or both
00:58:50 <elliott> someone cooler than kmc?
00:58:52 <elliott> you mean anyone?
00:58:55 <elliott> BBBUUURNNNNN
00:59:11 <kmc> ICE BURN
00:59:38 * Fiora hugs Bike. sorry for that :<
00:59:49 <Bike> kmc: well i don't recall any major social changes for minorities being lead by people not in those minorities, so maybe taking the sideline is appropriate
01:00:22 <Bike> i'd just rather be the quiet white guy in the march than the guys MLK wrote Birmingham too, i guess
01:00:27 <Bike> to*
01:01:19 <kmc> yeah i'm not expecting to lead anything
01:01:49 <Fiora> I feel like on a small-scale level, like with a particular community or the like, or an office, or so on
01:01:54 <Fiora> that making it a good environment is a responsibility of the majority
01:02:05 <Fiora> the minority can't really fix it in any meaningful way
01:02:09 -!- Phantom_Hoover has joined.
01:02:35 <Bike> well they sort of can, in yelling at the majority to shape up, but that's hard and the onus shouldn't be on them
01:02:44 <Fiora> and if nobody does anything you get things like tvtropes where a steady inflow of creeps scared off everyone else who used the site
01:02:58 <kmc> oh i didn't know about that :(
01:03:00 <Fiora> or reddit where it started as like this cool site about programming things years ago and eventually became horrible
01:03:15 <kmc> to be fair reddit isn't one community, it's thousands
01:03:21 <kmc> probably they are mostly terrible though
01:03:35 <Fiora> it's just like, in my experience the kind of people who cause problems for communities are had to get rid of, while the people they bother are quick to leave
01:04:43 <kmc> what i meant by "how most social progress happens" is that I think there's a distributed shift of opinion among the majority / privileged group, that occurs as a result of hard work and sacrifice by the oppressed
01:04:49 <elliott> kmc: I've had a reddit account for ~2007 and I can assure you the vast majority are terrible now.
01:05:00 <elliott> I don't even read anything but /r/haskell now.
01:05:01 <Fiora> but the thing is, like
01:05:05 <elliott> Sometimes /r/programming but exclusively to laugh at idiots.
01:05:05 <Fiora> for society as a whole, you can't leave society
01:05:15 <Fiora> but in a community, people who are frustrated with things just leave
01:05:19 <elliott> Fiora: Well, you can...
01:05:21 <kmc> so i can try to be a better filter for ideas, rejecting the ones that are less fair and passing on the better ones
01:05:23 <Bike> kmc: tvtropes is a long boring internet drama story, but probably sort of instructive in that what happened might be summed up as the premier rule being "be nice", and having that used largely to e.g. shut down angry responses to calm neocolonial dickwads
01:05:37 <Fiora> it also got filled with creepy pedophiles and stuff
01:05:45 <Fiora> and the admins wouldn't do anything about it
01:05:51 <kmc> Bike: :(
01:05:58 <Fiora> and since users couldn't do anything either, the sane people slowly left
01:06:00 <Bike> so, stupid internet version of police shutting down protests in alabama, if that makes sense
01:06:14 <FreeFull> > fix (\x -> 2:scanl (+) x)
01:06:15 <lambdabot> Couldn't match expected type `[a0]' with actual type `[b0] -> [a1]'
01:06:16 <kmc> yeah it is hard to run any group bigger than a dozen people on "be nice"
01:06:19 <elliott> Fiora: I heard something about them trying to clean stuff up recently.
01:06:23 <FreeFull> > fix (\x -> 2:scanl (+) 0 x)
01:06:24 <elliott> But I don't know what happened to it.
01:06:24 <lambdabot> [2,0,2,2,4,6,10,16,26,42,68,110,178,288,466,754,1220,1974,3194,5168,8362,13...
01:06:31 <Fiora> fast eddie just decided to randomly delete pages he didn't like
01:06:37 <Fiora> like he deleted Lolita (later reverted)
01:06:39 <FreeFull> Wait, what sort of sequence is this
01:06:44 <kmc> i'm not sure why nerd groups seem to favor rule by platitudes, "be nice" or "be excellent to each other" or whatever
01:06:52 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
01:06:56 <FreeFull> Is it double the fibonacci numbers
01:06:59 <FreeFull> > fix (\x -> scanl (+) 0 x)
01:07:00 <Bike> watching a lot of cartoons instead of reading Darkness at Noon?
01:07:01 <lambdabot> [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...
01:07:01 <Fiora> but yeah it was kind f a mess and I probably don't want to go into all the details >_<
01:07:04 <FreeFull> > fix (\x -> scanl (+) 1 x)
01:07:05 <lambdabot> [1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,...
01:07:08 <kmc> clear, reasonably specific rules have a lot of advantages
01:07:12 <FreeFull> > fix (\x -> scanl (*2) 1 x)
01:07:13 <lambdabot> Occurs check: cannot construct the infinite type: b0 = b0 -> b0
01:07:18 <FreeFull> > fix (\x -> scanl (*) 1 x)
01:07:20 <lambdabot> [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,...
01:07:21 <elliott> kmc: because you can justify anything you want if the rules are that vague?
01:07:23 <FreeFull> > fix (\x -> scanl (*) 3 x)
01:07:24 <lambdabot> [3,9,81,6561,43046721,1853020188851841,3433683820292512484657849089281,1179...
01:07:26 <Fiora> I guess it's just like. it's really hard to fix a community after you've already scared off most everyone
01:07:37 <Bike> FreeFull: make a scanl for the goodstein sequence. thanks
01:07:39 <kmc> elliott: sure but why do the majority, who don't aspire to dictatorial power, go along?
01:07:56 <kmc> i can understand why "be nice" is a great rule for sociopaths
01:08:03 <kmc> they can get whatever they want while appearing nice
01:08:07 <Bike> kmc: it seems pretty sensible if you haven't thought about rules much.
01:08:23 <kmc> a lot of communities seem to believe that rules are just THE MAN KEEPING US DOWN
01:08:33 <Bike> yeah.
01:08:40 <FreeFull> Bike: What is the goodstein sequence
01:08:51 <Bike> man-down-keeping is more complicated than "the man exists", but that's an easy scapegoat.
01:09:05 <Fiora> there seems to be a thing where the more set-in-stone the rules are the more people are able to weasel their way around them
01:09:12 <Bike> FreeFull: try wikipedia. (it grows fast)
01:09:16 <kmc> Fiora: hm, that's true
01:09:25 <Fiora> like I know some friends who used to hang around GITP and they said it had exactly that problem, that people would take advantage of the rules to get other people hit by mods
01:09:32 <elliott> kmc: well have you noticed that most nerds are terrible
01:09:33 <kmc> what's GITP?
01:09:42 <Fiora> giant int he playground, some webcomic/gaming forum thing
01:09:47 <kmc> elliott: i've noticed that most of everything is terrible, do you think we could derive it from that
01:09:50 <elliott> kmc: that said plenty of nerds do like involved detailed rules!
01:09:54 <elliott> cf. wikipedia
01:09:55 <Fiora> compare to like, somethingawful, where the rules are pretty vague and the mods will ban people for being dumb
01:10:04 <elliott> which is also unimaginably terrible
01:10:04 <Fiora> and people who try to weasel the rules will get banned more for weaseling the rules
01:10:10 <kmc> do you think SA's community is functional?
01:10:12 <Bike> Fiora: that's why it's important (i think) to keep the human element in, like how court cases are ruled by judges and juries who, ideally, hear enough about the case to make an informed decision - rather than robotic "enforcement"
01:10:14 <kmc> it seemed pretty good when I was hanging out there
01:10:19 <Fiora> I'm not sure, but it seems vaguely okay
01:10:23 <Fiora> I'm not part of it but I know people who are
01:10:24 <kmc> but it's essentially a dictatorial oligopoly
01:10:31 <Bike> kmc: it's pretty functional as internet communities go, so not that functional but reasonable
01:10:39 <kmc> maybe that's fine given that they are not responsible for anyone's livelihood (well...)
01:10:40 -!- Phantom_Hoover has joined.
01:10:47 <Fiora> it has a lot of terrible people but the mods seem to utterly revel in banning them
01:11:07 <Bike> they actually are sometimes. They've banned this guy three or four times who ended up in Libya and Syria getting shot at. (tangent)
01:11:15 <FreeFull> Bike: I'm not writing that function
01:11:24 <Bike> FreeFull: weeeeeak
01:11:31 <FreeFull> Bike: You do it
01:11:37 <Fiora> it's really a pretty brilliant business model, they must have made thousands and thousands of dollars off like, horrible MRAs who keep re-registering and getting banned again
01:11:45 <kmc> yeah
01:11:58 <kmc> though if you do something truly awful they will perma-ban you and try to prevent you from evading
01:12:05 <Bike> i think someone tallied it up once and Ironic War Criminal had dropped like four hundred dollars on the placew
01:12:09 <Bike> place
01:12:37 <kmc> some people also put money in intentionally
01:12:41 <Bike> it's a semi-effective way of assigning consequences to actions, i think, and that sort of doesn't happen on a lot of the internet
01:12:41 <kmc> post BAN ME threads etc
01:12:56 <kmc> get banned due to Toxx clause
01:13:03 <Bike> toxxing makes no damn sense
01:13:10 <kmc> or is it... the best
01:13:17 <Fiora> yeah, I've never understood that, it's this weird egotistical thing
01:13:21 <Fiora> but it makes lowtax tons of money?
01:13:23 <myndzi> THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST
01:13:27 <myndzi> just sayin'.
01:13:27 <Bike> well it's definitely the best. just to watch people accidentally toxx themselves for both Ron Paul and Obama.
01:14:12 <Bike> though i think my favorite thing there was the guy accidentally posting in the third party candidate thread, and weaseling out of it by picking a third party in NY that nominated Obama.
01:14:23 <Bike> possibly this is remotely more on topic to rule-following??
01:15:37 <kmc> heh
01:15:47 <elliott> Bike: you still have hang-ops about off-topic chat in #esoteric?
01:15:57 <elliott> total newbei
01:15:59 <elliott> also, newbie
01:16:06 <Bike> elliott: haha, I mean, I'd rather talk about rules than about SA trivia
01:16:49 <Bike> possibly this leads into an esolang based on vehmic courts? i dunno
01:17:46 <elliott> esolang based on bicycles
01:17:54 <kmc> bicycle day
01:18:09 <elliott> its like taxi
01:18:09 <elliott> but eco
01:19:28 <kmc> and ero
01:22:13 -!- zzo38 has quit (Remote host closed the connection).
01:22:58 <kmc> 'Hatoful Boyfriend is an otome visual novel/dating sim created by Hato Moa that features pigeons as characters rather than the more common human anime characters.'
01:23:06 <kmc> that's right, a dating sim where you date pigeons
01:23:28 <kmc> in post-apocalyptic japan
01:23:30 <Bike> fiora, wasn't there a pun in "hato moa" somewhere?
01:23:40 <Fiora> "hato" means pigeon
01:23:43 <Fiora> so "hatoful boyfriend" is a pun
01:23:45 <Fiora> and a moa is a bird
01:23:48 <Fiora> so hato moa is another pun
01:23:58 <Bike> deep
01:23:58 <Phantom_Hoover> kmc, isn't that the one with the horrifying murder ending
01:24:09 <Bike> only if you romance the good doctor.
01:24:12 <Fiora> kmc: it's sort of a silly gimmick game, it's not serious
01:24:23 <Fiora> like a "look I can make a dating sim with pigeons!" game
01:24:25 <Phantom_Hoover> Fiora, horrifying murder endings are serious!
01:24:34 <Bike> the main character is a hunter gatherer anyway, presumably they are used to murder and being murdered
01:24:49 <Fiora> but it is pretty hilarious XD
01:25:17 <kmc> sure
01:25:19 <kmc> i figured as much
01:25:42 <kmc> maybe i like pigeons too much
01:25:46 -!- Bike_ has joined.
01:25:49 -!- augur has joined.
01:26:04 <Phantom_Hoover> kmc, could you perhaps be called a pigeon fancier
01:26:07 <Fiora> there are some pretty ridiculous professionally made ones though
01:26:15 -!- augur has quit (Remote host closed the connection).
01:26:17 <Bike_> Fiora: you sure it's not serious? they came up with a whole backstory to justify sapient pigeons
01:26:20 -!- Bike has quit (Disconnected by services).
01:26:23 -!- Bike_ has changed nick to Bike.
01:26:42 <elliott> `addquote <kmc> maybe i like pigeons too much
01:26:44 <Fiora> XD
01:26:45 <HackEgo> 915) <kmc> maybe i like pigeons too much
01:27:00 <Fiora> like the one where world leaders are genderswapped and turned into bishoujo characters and you date them or something
01:27:18 <Fiora> including obama and putin
01:27:19 <Bike> I've heard the manga of Das Kapital is actually pretty good.
01:27:22 -!- augur has joined.
01:27:42 <elliott> `addquote <Bike> I've heard the manga of Das Kapital is actually pretty good.
01:27:44 <elliott> it's add lots of quotes day
01:27:45 <HackEgo> 916) <Bike> I've heard the manga of Das Kapital is actually pretty good.
01:27:48 -!- augur has quit (Remote host closed the connection).
01:28:28 <Fiora> http://danbooru.donmai.us/pool/show/1805 <-- this is a doujinshi that tells the story of the communist revolution in russia and china (and the cultural revolution)
01:28:45 -!- FreeFull has quit (Quit: Time to sleep).
01:28:51 <Fiora> it has lin biao and mao and everything
01:29:00 <Bike> oh it's not the one by kago
01:29:06 <Fiora> http://sonohara.donmai.us/data/fb46e9e8cc39d20f88867d5f4909b29a.jpg
01:29:14 <Fiora> it's the one with the "criticize Ran campaign" ("criticize Lin campaign")
01:29:35 <oerjan> <FreeFull> Is it double the fibonacci numbers <-- yes, starting at index -1
01:31:22 <Fiora> "why did you wind up here, lady patchuli?" "for criticizing sakuya" "how about you?" "for supporting miss sakuya" "and you?" "I am sakuya"
01:31:49 <Fiora> that was... wait what happened in 1953 I am bad at history
01:31:55 <Fiora> Death of stalin, right!
01:32:10 <Bike> the sino-soviet split was before that right
01:32:22 <Bike> no, wait, that's way too early...
01:32:31 <Fiora> yeah, that was later I think?
01:32:45 <Bike> prc wasn't really off the ground in 1953 anyway
01:33:11 <Fiora> I suppose that makes sakuya laverentiy beria
01:33:37 <Bike> that would probably terrify me if i knew who sakuya was? or something.
01:33:40 <elliott> kmc: Can you figure out this class for me?
01:33:53 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:35:17 <kmc> doubtful
01:35:45 -!- monqy has joined.
01:36:24 <elliott> kmc: :(
01:36:25 <elliott> you are terrible
01:36:41 <elliott> kmc: You should start a Haskell blog and call it mainisusuallyanioaction
01:37:53 -!- augur has joined.
01:43:41 -!- augur has quit (Remote host closed the connection).
01:48:42 <kmc> womp womp
01:50:22 <oerjan> is that kmc's way of telling about smbc updates?
01:50:56 <oerjan> hm apparently that's a phrase
01:51:40 <kmc> it's like http://www.sadtrombone.com/
01:51:48 <kmc> what does it have to do with smbc?
01:52:04 <shachaf> oh boy a new twitter follower
01:52:09 <kmc> is it me
01:52:22 <shachaf> Seems to be.
01:52:26 <kmc> woah
01:52:31 <monqy> is it a spam bot
01:52:40 <shachaf> Twitter sends me emails from n-punpuns=...twitter.com
01:52:43 <shachaf> Er, funpuns
01:53:39 <shachaf> monqy: maybe
01:55:17 <kmc> my sauerkraut tastes like iron
01:56:16 <elliott> https://twitter.com/funpuns # shachaf
01:56:30 <elliott> monqy: amazing twitter account must see ^
01:56:30 <shachaf> elliott: ................................................
01:56:39 <shachaf> who did this
01:56:43 <elliott> its so good
01:56:50 <elliott> at least 17.5x better than any twitter account you could make
01:57:15 <monqy> very good twitter
01:57:20 <monqy> shachaf this is brilliant how did you come up with this
01:57:50 <shachaf> monqy: help
01:57:55 <shachaf> is this "your doing"
01:59:53 <elliott> kmc: what's your preferred commenting method in irc lines
01:59:57 <elliott> I used to use ;; a lot
02:00:03 <elliott> sometimes I use -- I think
02:00:07 <kmc> how do you mean
02:00:16 <elliott> as in when you want to comment something out on an IRC line
02:00:27 <shachaf> https://twitter.com/search?q=%23funpuns
02:00:27 <elliott> for instance to annotate a URL or respond to a quoted message that might otherwise be confusing to simply follow with text
02:00:32 <shachaf> "its a phenomenon"
02:00:38 <monqy> C1,1
02:00:43 <shachaf> elliott: <nick> blah blah </nick>
02:00:48 <shachaf> "symmetric"
02:00:54 -!- DH____ has quit (Read error: Connection reset by peer).
02:01:04 <shachaf> xml-irc pun
02:01:05 <elliott> monqy: what's that .........
02:01:09 <shachaf> hi
02:01:10 <elliott> that
02:01:11 <elliott> that
02:01:13 <elliott> HELP
02:01:14 <elliott>
02:01:16 <elliott> that
02:01:19 <shachaf> uhh
02:01:20 <elliott>
02:01:22 <elliott> augh
02:01:23 <shachaf> uhh what's this
02:01:26 <shachaf> help
02:01:32 <shachaf> monqy
02:01:34 <elliott> monqy: how did you get that C
02:01:37 <elliott> nooo it didn't work
02:01:40 <shachaf> C
02:01:40 <elliott> that inverted C
02:01:42 <elliott> yes
02:01:42 <elliott> that
02:01:47 <monqy> with reverse video
02:01:50 <shachaf> elliott: how did you get that I?
02:01:52 <elliott> whats the "key combo" again
02:01:54 <elliott> shachaf:
02:01:56 <monqy> ^V
02:01:56 <Bike> ^V, in irssi
02:02:02 <Bike> videot
02:02:11 <elliott> fjfj
02:02:12 <elliott> right
02:02:14 <elliott> that's ^V^V for me
02:02:19 <shachaf> oh no
02:02:23 <shachaf> do you use "screen/tmux"
02:02:57 <Bike> oh i have bind on escape_char
02:03:04 <Bike> er, i have ^V on that. why do i have ^V on that
02:03:21 <elliott> shachaf: no, I rebound ^V in irssi
02:03:22 <elliott> I use dtach
02:03:25 <shachaf> escape from monqy island
02:03:42 <elliott> Escape was the worst Monkey Island game by a large margin.
02:03:42 <monqy> ?????????
02:03:47 <oerjan> <kmc> what does it have to do with smbc? <-- only place i've seen the phrase before
02:04:15 <Bike> herrrrr
02:04:17 <Bike> yeah there we go.
02:04:18 -!- augur has joined.
02:04:52 <shachaf>
02:04:54 <shachaf> help
02:05:03 <shachaf> why is V =
02:05:14 <Bike>
02:05:17 <Bike> huh. dumb.
02:05:30 <Bike> elliott: what did you bind ^V to
02:05:39 <elliott> 02:05:34 ^V escape_char
02:06:02 <Bike> more important than escapes imo
02:06:11 <elliott> Bike: escapes are useful!
02:06:19 <Bike> i have escape on ^Q because ~emacs~
02:06:21 <kmc> Fiora: thank you for putting up with my questions / rambling earlier, by the way
02:06:27 <elliott> Bike: pfft emacs
02:06:50 <Bike> elliott: but seriously if you delete the binding you'll be able to reverse video in one keystroke
02:07:19 <elliott> Bike: reverse video is a tool to be used lightly
02:07:37 <kmc> <BLINK></BLINK>
02:07:42 <Bike> blasphemer
02:08:27 <kmc> owwwww
02:08:39 <shachaf> the little blasphemer
02:08:45 <Bike> the cool thing is you can pick any two numbers and it looks hideous, you don't even need to remember anything.
02:08:55 <shachaf> kmc: You should use _The Little Schemer_ in your class!
02:09:01 <shachaf> Or maybe _The Little Prince_
02:09:08 <Bike> or both. use both
02:09:08 <Fiora> kmc: jeez, I enjoy talking with you, don't worry about it
02:09:23 <elliott> Fiora: Ha!
02:09:27 <kmc> yay :)
02:09:28 <elliott> the idea that anyone would enjoy talking with kmc
02:09:28 <shachaf> How come nobody has read _The Little Prince_ despite it being one of the most famous books ever. :-(
02:09:38 <elliott> `welcome kmc
02:09:41 <HackEgo> kmc: 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.)
02:09:42 <kmc> i think up to several people have read it shachaf
02:09:44 <Bike> who hasn't? i have
02:09:46 <kmc> i've read The Reasoned Schemer
02:09:49 <kmc> it's p. good
02:09:55 <shachaf> Bike: Internet people don't count..........................
02:09:56 <Bike> i'm even barely aware that there's a latin version of it
02:10:33 -!- DHeadshot has joined.
02:10:57 <Fiora> elliott: yes, how absurd
02:11:25 <Fiora> /enjoying/ talking to a smart and cool person like that, pfff. what a joker we are.
02:11:35 <Bike> you're multiple people???
02:12:13 <shachaf> No, just king of IRC.
02:12:19 <Fiora> .... grammar. i am bad at it
02:12:39 <elliott> Fiora: ha! now you're implying kmc is smart *and* cool
02:12:48 <Bike> PoppaVic is talking now, btw.
02:12:50 <elliott> gag of the century
02:13:04 <Bike> I'll be sure to observe his interactions with beaky
02:13:08 <Fiora> (let's see if we can make him flustered here)
02:14:26 <kmc> is PoppaVic another pseudotroll?
02:14:32 <Bike> probably.
02:14:36 <Bike> he's elliott's friend.
02:14:43 <kmc> frelliott
02:14:48 <Bike> elliend?
02:14:55 <kmc> write that down in your notebooks now.
02:15:57 <shachaf> elliott: do they really call them copybooks in .uk.........................
02:16:09 <shachaf> (because that doesn't make any sense)
02:16:17 <Fiora> elliott: bike literally convinced me to join this channel by linking me to the jit spraying post I think
02:16:21 <Fiora> if I remember right
02:16:30 <shachaf> That's what I remember.
02:16:36 <Bike> elliott: see, and you said main is usually an IO action. for shame.
02:16:53 <kmc> el-Iott
02:17:17 <kmc> sir elliott of hexham
02:17:32 <elliott> Fiora: it's true, people come from all across the globe to #esoteric to gawk at crackpots like itidus20 and oerjan andkmc!
02:17:37 <elliott> andkmc
02:17:40 <kmc> Elliott Hagastaldunum
02:17:42 <elliott> apparentlykmc's name starts with a backspace
02:17:43 <Bike> you can do it!
02:17:46 * shachaf isn't sure what's with the thing where elliott constantly insults people.
02:17:54 <kmc> elliott: that would be great
02:17:59 <elliott> elliott hastalavista
02:18:00 <elliott> shachaf: it's just you
02:18:01 <Bike> does kmc really count as a "people"??
02:18:02 <elliott> and kmc
02:18:11 <elliott> mainly kmc
02:18:15 <elliott> *andkmc
02:18:15 <elliott> *mainlykmc
02:18:18 <kmc> that's almost as good as naming your kid \x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90
02:18:38 <shachaf> elliott: It would probably be better if you didn't.
02:18:39 <Bike> like...the string with backslashes, or... the characters that resolves to.. or...
02:18:54 <shachaf> kmc: Did you know that in intuitionistic logic a linear ordering is stronger than a total ordering?
02:18:58 <shachaf> Maybe I mentioned that in here the other day.
02:19:00 <kmc> i think you mentioned it
02:19:02 <Bike> you did.
02:19:04 <kmc> but i don't totally understand
02:19:12 <elliott> shachaf: gotta keep up my reputation
02:19:13 <Bike> because intuitionists are sailors, and knots also.
02:19:25 <kmc> Bike: in the future, 15 people will be famous
02:19:26 <shachaf> Oh, right, I mentioned it and made that pun.
02:20:13 <elliott> also the more I insult kmc the more my own power grows
02:20:19 <Bike> and I said it was because of that whole equality computability thing thingie, probably because i'd been reading andrej posts and sobbing.
02:20:20 <kmc> soon your hair will be orange
02:20:21 <elliott> it won't be long before I can take over the universe
02:20:26 <elliott> yes
02:23:08 <kmc> can you use amazon's recommendation engine to answer questions of the form "I know this other person likes X and Y, what thing Z should I get for them"
02:23:12 <kmc> short of buying X and Y yourself?
02:23:29 <kmc> amazon elastic birthday service
02:23:32 <shachaf> Open a fresh browser session, browse to X and Y?
02:23:44 <shachaf> I think they use what things you look at to recommend more things.
02:23:46 <Bike> i haven't checked but i'd imagine you can, try looking for "gift" in menus?
02:24:00 <shachaf> By fresh I mean no cookies, of course.
02:24:06 <kmc> Bike: sounds like effort
02:24:08 <kmc> but okay, if you insist
02:24:43 <kmc> it recommends i buy: hard drives, psychedelic rock, underwear
02:24:44 <kmc> for myself
02:24:51 <Bike> if the world is going to direct its efforts towards very efficiently convincing me to buy useless crap, i may as well play along a bit
02:24:53 <kmc> that's pretty good actually
02:25:16 <Bike> kmc: i get mostly knuth and kerouac. 2spooky
02:25:27 <shachaf> psychedelic rock?
02:25:29 <kmc> also recommends the tv show i am already watching (pirated) in another window
02:25:30 <shachaf> oh, that's a kind of music
02:25:45 <kmc> yes, amazon doesn't sell the other kind of psychedelic rock
02:26:07 <kmc> a big crystal of pure DMT
02:26:07 <shachaf> How do I find out what it recommends for me?
02:26:14 <Bike> really? can you not buy radioactive materials any more
02:26:17 <kmc> you can click "your recommendations" in the menu
02:26:37 <Bike> i wonder if anyone ever bought the badonkadonk
02:26:40 <shachaf> Hmm.
02:26:45 <shachaf> Lots of Raymond Smullyan.
02:27:05 <shachaf> And, uh, some stupid things.
02:27:13 <Bike> Oh, do tell.
02:27:13 <shachaf> And candy cigarettes.
02:27:21 <shachaf> I bought a big box of candy cigarettes once.
02:27:26 <shachaf> By candy I mean chewing gum.
02:28:28 <shachaf> i love amazon
02:29:10 <kmc> i love snowclone
02:29:12 <kmc> it's so easy
02:29:55 <Bike> word always just makes me think of how inuits don't actually have a billion words for snow (in the banal sense)
02:30:03 <kmc> shachaf: yeah well i bought this once: http://mcphee.com/shop/donkey-cigarette-dispenser.html
02:30:44 <shachaf> kmc: You, uh, win?
02:30:49 <oerjan> elliott: i am not a crackpot! you will regret saying that when i put you through my regretinator!
02:30:50 * shachaf can't compete
02:31:23 <elliott> kmc: do I dare ask why
02:31:41 <oerjan> * shachaf isn't sure what's with the thing where elliott constantly insults people. <-- and gets away with it, too!
02:31:50 <kmc> elliott: i was in college man
02:31:57 <Bike> if it weren't for you meddlerjans
02:32:14 <kmc> meddlerjans would be a good name for an all-drunk hillbilly band
02:32:15 <shachaf> maybe i should be in college :'(
02:32:24 <kmc> how much college have u had shachaf
02:32:47 <kmc> you could work for google, that's like being in college except that they pay you a ton of money and they put a chip in your brain
02:33:04 <Bike> wait, you didn't get chipped in college?
02:33:16 <shachaf> Bike: I think they reuse the high school chip.
02:34:04 <Bike> oh, ok.
02:37:34 <oerjan> they thought they could chip me, but i just operated on myself to insert a small farafay cage around the chip. checkmate educationists!
02:37:45 <oerjan> *faraday
02:38:30 <Bike> farafay should be a delicious pseudoitalian breakfast
02:38:59 <oerjan> -ay isn't much used in italian, i should think.
02:40:23 <Bike> too bad
02:44:00 <elliott> kmc: good morning! welcome to america!
02:45:07 <kmc> #1
02:49:26 <shachaf> Bike: What brought *you* here, anyway?
02:52:35 <Bike> I... don't remember.
02:52:46 <Bike> I think we already talked about this and the answer wassomething about Sgeo?
02:54:01 <shachaf> elliott has squinting disease
02:54:20 <shachaf> soon he'll start to see jesus on toast??
02:54:27 <monqy> ??
02:54:38 <Bike> hello
02:54:45 <shachaf> hello Bike
02:57:19 <oerjan> i am totally immune to seeing jesus on toast.
02:57:28 <oerjan> mostly because i never eat toast.
02:57:43 <shachaf> oerjan: Is that because you don't want to eat Jesus?
02:57:48 <shachaf> I think you're *supposed* to do that.
02:57:50 <shachaf> Or something?
02:58:51 <oerjan> no, it's more likely because i don't have a toaster.
02:59:31 <monqy> there's lots of toast without toaster
02:59:44 <elliott> oerjan: you don't have a toaster???
03:00:00 <shachaf> elliott: people in scandinavia don't have toasters.......
03:00:02 <monqy> broiler toast, french toast
03:00:49 <shachaf> monqy: have you been to scandinavia
03:00:55 <monqy> no
03:07:38 <oerjan> oh hm "never" might be an exaggeration, there might be toast in some of those breakfast meals you can get in restaurants. never saw any jesus, though.
03:08:01 <oerjan> not that i eat those often.
03:08:12 <Bike> the plural is "jesii"
03:08:44 <oerjan> ...i somewhat doubt that.
03:09:10 <Bike> it's in the common translation of the infancy gospel of pseudo-matthew. lookitup
03:12:50 <oerjan> jesus is ridiculously irregular in latin, but it's sort of a -u stem, which means -ii would be a very unlikely suffix
03:13:53 <shachaf> jesus is so easy
03:14:15 <Bike> oerjan: this is totally aramaic though
03:15:44 <oerjan> so let me see if i get this: the "is so easy" meme is a reference to this beaky guy on #haskell, right?
03:16:05 <Bike> assuming by meme you mean whatever shachaf's doing, yes
03:16:20 <oerjan> ah. a pseudo-meme.
03:16:31 <ion> pseme
03:17:01 <shachaf> oerjan: Did you see "the beaky logs".
03:17:05 <oerjan> no.
03:17:34 <ion> That movie sucked.
03:17:37 <Bike> the saga of beaky
03:18:13 <shachaf> http://slbkbs.org/beaky.txt
03:18:23 <kmc> the beaky code
03:18:26 <oerjan> after your aramaic irrelevance i shouldn't have bothered to check, but http://www.gnosis.org/library/psudomat.htm contains no "jesii".
03:18:28 <kmc> 2 beaky 2 furious
03:19:29 -!- Bike_ has joined.
03:19:58 <Bike_> is it true that Haskell makes you go through lots of hoops to accomplish practical things? <-- is this the "lisp is good for AI? also slow??" of haskell?
03:21:08 <Bike_> " what's haskell's equivalent of nil, or NULL, or None, or whatever the most empty object is?" ugh why do these things get linked to me, i can never stop.
03:21:34 <elliott> oerjan: you realise bike was joking btw
03:22:06 <shachaf> Bike: did you search for "love"
03:22:09 <elliott> Bike_: I hear you can't do side-effects in IO because of monads, etc.
03:22:13 -!- Bike has quit (Ping timeout: 245 seconds).
03:22:18 -!- Bike_ has changed nick to Bike.
03:22:51 <Bike> shachaf: yes, and that's how i got to the design patterns bit. and i just got to it again. thankschaf (this is sarcastic. in reality, nothankschaf.)
03:23:11 * ion loves searching for "love"
03:23:58 <Bike> "typeception"
03:24:05 <Bike> aren't those jokes super old yet.........
03:24:32 <oerjan> elliott: sure i suspected it but i couldn't resist seeing if pseudo-matthew was a genuine term
03:24:46 <Bike> it is.
03:25:06 <Bike> i actually do like all those old wayside religious things, i just also like dicking around.
03:25:27 <Bike> "what's real analysis?" help me shachaf
03:25:46 <shachaf> Bike: it is so easy
03:26:03 <monqy> shachaf don't you think we've had enough of love&ease by now....
03:26:30 <Bike> oh i searched for "lisp". that was a bad plan
03:26:48 <shachaf> monqy: Don't you think ew've had enough of more than three dots in a row by now?
03:27:45 <shachaf> 04:51:26 <beaky> zardoz?
03:27:56 <shachaf> I thought it was kmc but it turned out to be Jafet.
03:28:29 <kmc> zardoz!
03:29:04 <shachaf> Bike: haskell/12.12.18:04:52:19 <beaky> paul graham said that lisp is the most powerful language, and that all other languages are blub
03:29:15 <Bike> no. nooooo
03:29:41 <Bike> actually "most powerful language" sounds like it should be associated with zardoz
03:30:35 <Bike> the blub is evil,the lisp is good
03:35:06 -!- Bike has quit (Ping timeout: 240 seconds).
03:36:55 -!- Bike has joined.
03:39:06 <kmc> yes
03:41:48 <kmc> wow The Atlantic is running sponsored Scientology articles now
03:42:33 <kmc> http://www.theatlantic.com/sponsored/scientology/archive/2013/01/david-miscavige-leads-scientology-to-milestone-year-/266958/
03:42:43 <Bike> when you say "sponsored", do you mean like a literal sponsorship or- oh, i guess that answers that.
03:43:31 <kmc> a full page ad that looks like an article
03:43:35 <kmc> and is about how great scientology is
03:44:15 <Bike> full page ad in a newspaper. that's old school.
03:44:52 <elliott> yikes
03:45:22 <Bike> oh man are they doing the "fastest growing religion" thing too?
03:45:51 <Bike> What I'm getting out of this is mostly that they got their design sense from Stargate SG-1.
03:45:55 <monqy> if its growing fast that means i should believe in it right
03:46:58 <elliott> Bike: i was just thinking the first image looked so scifi
03:47:12 <elliott> this one time i knew someone for months (online) and it turns out they were a scientologist :/
03:47:16 <elliott> so i stopped talking to them
03:47:45 <Bike> an old guard guy on a site i used to use turned out to have been a scientologist and even worked on one of them ships once
03:47:52 <monqy> sometimes i forget scientology isn't an elaborate joke
03:47:57 <kmc> it is
03:48:05 <kmc> but most of them aren't in on it
03:48:09 <Bike> "Seems like David Miscavige and Scientology are on a roll. Also it appears the media have been missing the real story."
03:48:13 <elliott> Bike: in the present or the past
03:48:20 <Bike> in the past
03:48:29 <Bike> thankfully i didn't really know him
03:48:39 <elliott> well it's not so bad if they left right
03:49:08 <Bike> well I mean, they were still a scientologist.
03:49:36 <Bike> kmc: so i looked at the comments and clicked on a profile of one of the obvious shills and that was a bad idea.
03:50:18 <elliott> Bike: so by in the past you meant in the present
03:50:20 <kmc> now your thetans are going crazy
03:50:22 <elliott> oh boy link
03:51:22 <Bike> Basically he compares things to "Stalin's Russia" a lot.
03:51:57 <Bike> I don't know how to link to the user. "sorry"
03:52:41 <kmc> apparently MIT's student newspaper signed a similar deal with the devil after their staff embezzled their whole bank account
03:52:44 <kmc> so
03:52:47 <kmc> maybe that's what happened to the atlantic
03:52:54 <Bike> :(
03:53:06 <elliott> The Church of Scientology Orange County, standing just miles from Anaheim's famed "Magic Kingdom,"
03:53:31 <elliott> kmc: what did they do?
03:56:05 <Bike> paid articles... from yale
04:06:10 <kmc> the top picture on that article is...
04:06:19 <kmc> it looks like bad CGI from a bad sci fi film
04:06:23 -!- neologic has joined.
04:06:36 <oerjan> `welcome neologic
04:06:37 <HackEgo> neologic: 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.)
04:08:43 <neologic> hello ppl
04:09:24 <oerjan> bid quiet here now
04:09:25 <shachaf> `welcoerjan
04:09:26 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcoerjan: not found
04:09:28 <oerjan> *a bit
04:09:36 <monqy> hi
04:09:38 <shachaf> `run echo 'welcome oerjan' > bin/welcoerjan; chmod +x bin/welcoerjan
04:09:41 * oerjan swats shachaf -----###
04:09:42 <HackEgo> No output.
04:09:50 <Bike> `welcørjan
04:09:51 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcørjan: not found
04:10:14 <neologic> why esoteric programming language?
04:10:23 <shachaf> `welcoerjan
04:10:24 <HackEgo> oerjan: 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.)
04:10:24 <Bike> because it's not there.
04:10:57 <oerjan> velcroerjan
04:12:51 <monqy> neologic: good question
04:13:07 <elliott> `rm bin/welcoerjan
04:13:11 <HackEgo> No output.
04:14:02 <oerjan> ^ul (( )*S):((because)~^(it's)~^(there)~^)^
04:14:02 <fungot> because it's ...out of stack!
04:14:06 -!- zzo38 has joined.
04:14:09 <oerjan> hum
04:14:13 <oerjan> ^ul (( )*S:):((because)~^(it's)~^(there)~^)^
04:14:14 <fungot> because it's there
04:14:42 <oerjan> why esoteric programming language: because it's ...out of stack!
04:14:47 <oerjan> fungot knows all.
04:14:47 <fungot> oerjan: you are correct. there's no freedom for free.
04:14:54 <shachaf> `ls bin
04:14:55 <HackEgo> ​? \ @ \ WELCOME \ addquote \ allquotes \ anonlog \ botsnack \ calc \ define \ delquote \ emoclew \ etymology \ forget \ fortune \ frink \ google \ hatesgeo \ interp \ joustreport \ jousturl \ json \ karma \ karma- \ karma+ \ learn \ list \ lists \ log \ logurl \ lua \ luac \ luarocks \ luarocks-admin \ macro \ makelist \ maketext \
04:16:04 -!- sebbu has quit (Ping timeout: 248 seconds).
04:16:43 <oerjan> fungot: I DIDN'T WANT TO KNOW THAT
04:16:43 <fungot> oerjan: not sure if you want to *stop* looping. there is a function call and been faster. :p yesterday i had a problem
04:17:02 <oerjan> fungot: so you are saying i am going in circles?
04:17:03 <fungot> oerjan: you mean it is a concrete example of what would be your customer?
04:17:10 <elliott> `addquote <oerjan> fungot knows all. <fungot> oerjan: you are correct. there's no freedom for free.
04:17:12 <fungot> elliott: other than not being done by plt folks?) fnord combination to denmark, iirc. not sure it's simply a matter of orthography, not syntax
04:17:15 <HackEgo> 917) <oerjan> fungot knows all. <fungot> oerjan: you are correct. there's no freedom for free.
04:19:07 <neologic> [hackego] there are elements of this lang im suppose...
04:20:39 <neologic> karma+???
04:20:50 <Bike> karma++
04:21:47 <monqy> hackego is a strong believer in balance and karma
04:22:04 <kmc> is hackego the karma police
04:22:22 <monqy> might be a stretch, but you could say that
04:24:35 <shachaf> karma police police police karma police??
04:25:55 <oerjan> neologic: this channel isn't about just one esoteric programming language. HackEgo is a bot which anyone can make commands for.
04:26:08 <Bike> as aptly demonstrated by helloerjan
04:26:30 <oerjan> although it's EgoBot which has a lot of esoteric languages, originally, although there are plans to merge the two bots
04:26:56 <Bike> typed befunge?
04:26:57 <oerjan> `cat bin/karma+
04:26:58 <HackEgo> ​#!/bin/sh \ echo "$1 now has $(($(lib/karma "$1")+1)) karma." | tee karma
04:27:09 <zzo38> My basketball team is the most stealing in total, so they should be called Thief! But, they aren't called that, because I didn't know that at first.
04:27:25 <shachaf> zzo38: You should rename them.
04:27:50 <oerjan> Bike: i ... don't think anyone has tried making that?
04:28:20 <oerjan> at least not succeeded.
04:28:34 <Bike> neologic, you have your mission.
04:28:54 <zzo38> I don't want to rename it. That will cost a lot of money and fame.
04:29:28 <neologic> my mission...
04:30:33 <oerjan> `cat lib/karma
04:30:34 <HackEgo> ​#!/bin/sh \ count () { \ hg log --template '{desc}\n' | \ egrep '<[^]]*> karma\'$1 | \ fgrep -vix "<$2> karma$1 $2" | \ cut -d' ' -f3 | \ fgrep -cix "$2" \ } \ plus=$(count + "$1") \ minus=$(count - "$1") \ echo $(($plus-$minus))
04:30:58 <oerjan> ouch
04:33:07 <oerjan> `karma+ karma
04:33:16 <HackEgo> karma now has 1 karma.
04:33:21 <oerjan> `karma+ karma
04:33:30 <HackEgo> karma now has 2 karma.
04:33:33 <Bike> @karma karma
04:33:34 <lambdabot> karma has a karma of 4
04:33:38 <Bike> chameleooooon
04:33:52 <oerjan> ooh, so it is!
04:33:57 -!- neologic has quit (Ping timeout: 255 seconds).
04:34:26 -!- neologic has joined.
04:34:55 <oerjan> was that thing actually grepping the entire logs each time to calculate karma?
04:35:33 <Bike> `cat bin/karma
04:35:35 <HackEgo> ​#!/bin/sh \ echo "$1 has $(lib/karma "$1") karma."
04:35:45 <Bike> `cat lib/karma
04:35:47 <HackEgo> ​#!/bin/sh \ count () { \ hg log --template '{desc}\n' | \ egrep '<[^]]*> karma\'$1 | \ fgrep -vix "<$2> karma$1 $2" | \ cut -d' ' -f3 | \ fgrep -cix "$2" \ } \ plus=$(count + "$1") \ minus=$(count - "$1") \ echo $(($plus-$minus))
04:35:59 -!- DHeadshot has quit (Read error: Connection reset by peer).
04:36:06 <monqy> `ls karma
04:36:08 <HackEgo> karma
04:36:11 <monqy> karma
04:36:18 <Bike> chameeeeeleoooooon
04:36:18 -!- DHeadshot has joined.
04:36:25 <oerjan> `wc karma
04:36:26 -!- HackEgo has quit (Remote host closed the connection).
04:36:36 <oerjan> O KAY
04:36:45 <Bike> how rude.
04:37:17 <oerjan> i guess it was karma.
04:37:50 <shachaf> @karma+ java
04:37:50 <lambdabot> shachaf's karma lowered to 26.
04:38:20 <monqy> @karma java
04:38:20 <lambdabot> java has a karma of -1
04:38:33 <monqy> what happens if i
04:38:34 <monqy> @karma- java
04:38:34 <lambdabot> java's karma lowered to -2.
04:38:45 <monqy> oh no
04:38:47 <Bike> "whoa"
04:39:13 -!- neologic has left.
04:39:53 <oerjan> ^ul ((shachaf-- )S)(::::****):*^^
04:39:53 <fungot> shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf-- shachaf--
04:39:59 <oerjan> @karma shachaf
04:40:00 <lambdabot> shachaf has a karma of 1
04:40:02 <shachaf> thoerjan
04:40:27 <oerjan> you looked like you needed some help there
04:41:00 <monqy> i want in on this karma action
04:41:02 <monqy> @karma+ java
04:41:02 <lambdabot> monqy's karma lowered to 12.
04:41:25 <oerjan> ^ul (monqy-- )(::::****):*^S
04:41:25 <fungot> monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy-- monqy--
04:41:31 <oerjan> @karma monqy
04:41:31 <lambdabot> monqy has a karma of -13
04:41:38 <shachaf> oerjan..............................no..
04:41:39 <monqy> best karma?? imo yes
04:41:51 <shachaf> monqy: imo no
04:41:59 <shachaf> imnsvho
04:42:05 <elliott> java++
04:42:06 <elliott> @karma java
04:42:06 <lambdabot> java has a karma of -2
04:42:06 <elliott> HELP
04:42:07 <elliott> @karma
04:42:08 <lambdabot> You have a karma of 33
04:42:10 <elliott> cool
04:42:47 <shachaf> cooliott
04:42:53 <shachaf> "oops did i miss an l'
05:03:54 <Sgeo> Do I `list if I'm hours late?
05:05:12 <coppro> hmm
05:05:19 <coppro> would it count as me beating you if you didn't :P
05:05:22 <coppro> if so, no
05:06:29 <Bike> `list
05:06:37 <Bike> oh man
05:06:58 <oerjan> oops
05:07:53 <kmc> http://boingboing.net/2013/01/14/dread-cthulhu-leads-his-cult-t.html
05:08:19 <Bike> they should have just kept the original symbols in the picture
05:09:10 <shachaf> Sgeo: I don't see an update...
05:09:29 <coppro> there is indeed an update
05:09:44 <Bike> like that they kept "ideal orgs" though
05:10:23 <Bike> also casually dropped in Marsh.
05:12:25 <oerjan> i think org stands for orgies, right?
05:12:33 <oerjan> *+s
05:12:50 <shachaf> What does oerj stand for?
05:13:01 <oerjan> `? oerjan
05:13:08 <oerjan> we will never know.
05:17:37 <shachaf> oh noerjan
05:26:38 <kmc> "We have temporarily suspended this advertising campaign pending a review of our policies that govern sponsor content and subsequent comment threads."
05:28:55 <Bike> haha, they noticed the shills?
05:29:11 <quintopia> `list
05:34:43 -!- TeruFSX has quit (Ping timeout: 260 seconds).
05:49:44 <oerjan> :t in
05:49:45 <lambdabot> parse error on input `in'
05:50:02 <oerjan> :t out
05:50:04 <lambdabot> Mu t -> t (Mu t)
05:50:15 <oerjan> > (0$0`out`)
05:50:17 <lambdabot> The operator `L.out' [infixl 9] of a section
05:50:17 <lambdabot> must have lower precedenc...
05:50:32 <oerjan> oh no
05:50:42 <elliott> :t shakeItAllAbout
05:50:43 <lambdabot> Not in scope: `shakeItAllAbout'
05:50:49 <oerjan> > (0$0-)
05:50:50 <lambdabot> The operator `GHC.Num.-' [infixl 6] of a section
05:50:50 <lambdabot> must have lower prece...
05:51:05 <elliott> :t doTheHokeyCokey
05:51:06 <lambdabot> Not in scope: `doTheHokeyCokey'
05:51:09 <elliott> :t turnAround
05:51:10 <lambdabot> Not in scope: `turnAround'
05:51:17 <oerjan> why is it L. rather than the actual module name
05:51:24 <shachaf> That's the actual module name.
05:51:27 <elliott> :t L.out
05:51:28 <lambdabot> Mu t -> t (Mu t)
05:51:32 <elliott> L.hs
05:51:41 <oerjan> O KAY
05:51:47 <shachaf> elliott: lambdabot has a lens implementation?????
05:51:58 <shachaf> L.hs must be the final form of lenses.
05:51:58 <oerjan> oh hm
05:52:20 <oerjan> > (0$0`In`)
05:52:21 <lambdabot> The operator `L.In' [infixl 9] of a section
05:52:22 <lambdabot> must have lower precedence...
06:07:09 -!- sebbu has joined.
06:07:09 -!- sebbu has quit (Changing host).
06:07:09 -!- sebbu has joined.
06:25:45 -!- fizzien has joined.
06:26:55 <fizzien> Finally managed to bother getting this eduroam thing working, just checking what kind of an address I got.
06:27:05 <elliott> eduroam.hut.fi
06:27:10 <fizzien> Seems like a boring.
06:27:23 <coppro> eduroam is pretty awesome
06:27:27 <fizzien> Also outdated, there are no huts left.
06:27:53 <Bike> That's the thing where you get free wifi at any school, yeah?
06:28:01 <coppro> yeah
06:28:16 <shachaf> i love free wifi
06:28:19 <coppro> ^
06:28:34 <fizzien> It's "pan-European".
06:28:42 <Bike> we all do, shachaf. wadchaf.
06:29:12 <coppro> fizzien: it's beyond that
06:29:27 <coppro> also, mark your calendars
06:29:30 <kmc> McDonald's has pan-European free WiFi
06:29:33 <coppro> friday is the 10th anniversary of logs
06:29:44 <kmc> "logs: not just trees anymore"
06:29:49 <shachaf> @yarrrr
06:29:49 <lambdabot> This is the END for you, you gutter-crawling cur!
06:29:58 <kmc> anyway that is pretty cool
06:32:14 <fizzien> It says pan-European on the local eduroam instructions page. But that might well be outdated too.
06:33:45 <kmc> http://i.imgur.com/fGBV3.jpg
06:35:51 <shachaf> kmc: Are those two different ℳs?
06:37:23 <Bike> man, that does not display right here
06:37:37 <kmc> same mcdonald's
06:38:33 -!- fizzien has quit (Remote host closed the connection).
06:38:46 -!- fizzien has joined.
06:43:47 -!- fizzien has quit (Quit: .).
06:54:05 -!- oonbotti has quit (Ping timeout: 252 seconds).
07:03:26 <kmc> Wikipedia claims that Iran had a McDonald's for two days in 1994
07:03:40 <kmc> also http://www.datapointed.net/2010/10/the-farthest-place-from-mcdonalds-lower-48-states/
07:03:56 <kmc> i realized i was having two separate conversations with two groups of people, both about McDonald's
07:04:01 <kmc> and that fact disturbed me
07:04:06 <Bike> that sounds pretty sad yeah
07:04:13 <oerjan> were they 5 meters apart?
07:04:17 <oerjan> wait, 25
07:04:37 <kmc> no
07:04:54 <oerjan> ->
07:05:51 <kmc> neither the two conversations nor the two days in 1994 were 25 meters apart
07:06:36 <kmc> it would be very unusual if two days were only 25 meters apart, they should be more than 10^13 meters apart
07:07:46 <Bike> http://www.theonion.com/articles/the-6-best-dresses-at-the-golden-globes,30897/
07:09:17 <kmc> heh
07:14:06 -!- copumpkin has quit (Ping timeout: 240 seconds).
07:14:42 -!- copumpkin has joined.
07:57:20 -!- carado has joined.
07:58:59 <Sgeo> `list
07:59:30 <Sgeo> ?
07:59:42 <Sgeo> `cat bin/list
07:59:47 <Bike> the bot got eaten or whatever.
08:05:20 -!- carado has quit (Ping timeout: 246 seconds).
08:06:24 -!- WeThePeople has quit (Quit: Leaving).
08:09:30 <zzo38> I thought about sokoban compression. Run-length encoding with Huffman could be used, but there are many other things. All the edges should be used. All non-wall tiles should be joined to the start tile. The number of targets should equal the number of boxes. Targets cannot be placed in walls, or in squares that it is impossible for a box to reach due to too narrow corners and whatever.
08:10:15 <zzo38> Boxes cannot be placed in wall tiles or start tile, and should not be placed where they are impossible to ever move. Possibly spiral encoding might help, skipping the invalid positions.
08:11:14 <zzo38> There are also such things as, there must be at least one box which is not initially on a target.
08:14:18 <Sgeo> Fiora
08:14:23 <Sgeo> Who else?
08:14:28 <Bike> elliot
08:26:02 <shachaf> i love updates
08:26:03 <shachaf> they are so easy
08:26:42 <monqy> not with hackego down!! / have you made that exact same phrasing before / shachaf.........
08:27:15 <monqy> youve driven it so far into the ground!!!it's 6ft under(that's a metaphor for dead)
08:27:16 <shachaf> monqy: is that a monqyhaiku
08:27:35 <shachaf> monqy: oh no
08:27:48 <shachaf> should i stop
08:27:57 <monqy> probably...
08:28:00 <monqy> alt. yes
08:28:50 <shachaf> alt. no??????
08:29:25 <monqy> :/
08:32:54 <oerjan> How To Make An Undead Horse Trope In A Single Day: Shachaf Version
08:35:29 -!- Bike has quit (Quit: sleep?).
08:40:47 -!- ogrom has joined.
08:40:54 -!- ogrom has quit (Client Quit).
08:44:41 <olsner> what's an undead horse trope?
08:44:49 -!- epicmonkey has joined.
08:45:21 <oerjan> why i am glad you asked http://tvtropes.org/pmwiki/pmwiki.php/Main/UndeadHorseTrope
08:47:32 <shachaf> sabotoerjan
09:15:42 <coppro> haha
09:15:49 <coppro> someone posted in chinese; reply was 谷歌翻譯是好
09:23:33 <oerjan> 是。是的,它是。
09:28:01 -!- epicmonkey has quit (Remote host closed the connection).
09:28:33 -!- epicmonkey has joined.
09:31:10 -!- impomatic has joined.
09:32:15 -!- oerjan has quit (Quit: leaving).
09:45:26 -!- monqy has quit (Quit: hello).
09:48:01 <zzo38> Another use of zero-length arrays in GNU C can be to allow structures to contain constant data accessed by sizeof, and to make associated types accessed by typeof, both of which can be usable in macros.
09:57:15 -!- epicmonkey has quit (Remote host closed the connection).
09:57:47 -!- epicmonkey has joined.
09:58:19 -!- KingOfKarlsruhe has joined.
10:00:38 -!- zzo38 has quit (Remote host closed the connection).
10:00:47 -!- Taneb has joined.
10:36:22 -!- sirdancealot has joined.
10:37:06 -!- epicmonkey has quit (Ping timeout: 240 seconds).
10:46:23 -!- DHeadshot has quit (Ping timeout: 245 seconds).
10:54:28 -!- DHeadshot has joined.
10:55:51 -!- zzo38 has joined.
11:13:36 -!- Taneb has quit (Ping timeout: 240 seconds).
11:19:44 <zzo38> Is something like #line (2*3*7) OK in a C code?
11:23:11 <elliott> I doubt it.
11:31:56 <fizzie> It's just # line digit-sequence new-line
11:32:36 -!- mig22 has joined.
11:33:04 <fizzie> (With an optional string denoting the file name; and a third form that is # line pp-tokens new-line which must after macro expansion match the original.)
11:33:06 -!- Taneb has joined.
11:33:32 <fizzie> So it's okay to #define LINENO 12345 #line LINENO but it won't evaluate expressions.
11:37:17 -!- mig22 has quit (Ping timeout: 255 seconds).
11:39:40 -!- epicmonkey has joined.
11:40:06 -!- sploknee has joined.
11:45:40 -!- carado has joined.
11:51:30 -!- mig22 has joined.
11:54:09 -!- mig22 has left.
12:07:16 <ion> #line sqrt(42)
12:15:17 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.89 [Firefox 18.0/20130104151925]).
12:38:54 -!- hagb4rd has joined.
12:40:09 <hagb4rd> `run ls /usr/bin/mon*
12:40:32 <Taneb> HackEgo is off on an adventure
12:40:46 <hagb4rd> oh
13:17:30 -!- boily has joined.
13:24:00 <Sgeo> o.O
13:24:03 <Sgeo> Hi boily
13:26:55 -!- Taneb has quit (Quit: Leaving).
13:30:25 -!- Taneb has joined.
13:32:16 <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"?
13:50:18 -!- azaq23 has joined.
13:50:28 -!- azaq23 has quit (Max SendQ exceeded).
13:51:19 -!- azaq23 has joined.
14:00:36 -!- azaq23 has quit (Ping timeout: 240 seconds).
14:06:44 <elliott> quintopia: {{featured article}}
14:07:13 -!- azaq23 has joined.
14:07:21 -!- azaq23 has quit (Max SendQ exceeded).
14:07:47 -!- azaq23 has joined.
14:09:06 <quintopia> elliott: i dont want to tag a whole article. just one sentence. perhaps [citation needed] would be close enough, but i really want [this would be illogical, captain]
14:14:03 <hagb4rd> i guess he wanted to read the article you're refering to quintopia
14:15:22 <hagb4rd> you can at least make your notes at the discussion boards. don't know if you can tag only one statement
14:20:09 <hagb4rd> no he didn't
14:20:15 <hagb4rd> okay
14:20:35 <quintopia> hi hagb4rd
14:20:44 <elliott> quintopia: you could just remove the statement
14:20:51 <hagb4rd> hi quintopia
14:21:03 * Sgeo is curious as to what the statement is
14:22:20 <Sgeo> Oh hey PSOX is at risk of vanishing off the face of the Internet if I don't take action
14:22:36 <Sgeo> (Got an email from Assembla about having been inactive for almost 2 years)
14:27:47 <boily> Sgeo: hi Sgeo!
14:28:09 <Sgeo> hi
14:35:55 <impomatic> What is PSOX?
14:36:54 <sploknee> impomatic, this thing Sgeo made
15:13:03 -!- copumpkin has quit (Ping timeout: 245 seconds).
15:13:34 -!- copumpkin has joined.
15:19:54 <Sgeo> It's distressing how empty Smalltalk-related channels are
15:21:00 <Taneb> There's very little talk
15:26:44 -!- AnotherTest has joined.
15:26:50 <AnotherTest> Hello
15:26:58 <Taneb> Hey
15:36:49 -!- Sgeo has quit (Quit: Leaving).
15:38:57 -!- Sgeo has joined.
15:42:34 <sploknee> Taneb, i hear you were doing something stupid like trying to use gentoo
15:42:59 <Taneb> sploknee, yeah, that kinda failed miserably
15:43:20 <Taneb> Gentoo isn't for me
15:45:02 <elliott> it isn't for anyone
15:45:47 * Sgeo wants to try to set up Linux From Scratch at some point
15:52:41 <Taneb> Except now I'm in the mood to completely wipe my laptop
15:53:59 <Taneb> And get an OS that's more .... than Ubuntu
15:54:50 <boily> Taneb: as an arch zealot, may I kindly point you to that fabulous, magical, incredible distribution of superior quality?
15:55:14 <Taneb> I'll give it a shot, why not
15:55:28 <Taneb> As someone who's probably insane, can I use Unity on it?
15:57:51 <boily> some just did, with proof in the screenshot forum thread.
15:58:25 <boily> https://bbs.archlinux.org/viewtopic.php?pid=1217765#p1217765
16:00:13 <elliott> arch is like a good distro except secretly bad
16:00:14 <elliott> except i use it anyway
16:00:35 <fizzie> Hello today I am a dentist's office. It is a nervous place.
16:02:30 <elliott> fizzie: is there a dentist inside
16:02:36 <Sgeo> I think it's what's-his-name who said stuff critical of Arch
16:02:42 * Sgeo is very specific and detailed
16:03:06 <Sgeo> http://ansuz.sooke.bc.ca/entry/254
16:03:14 <Sgeo> "I've decided to stop using Arch Linux, because I believe in The Arch Way. I'm tempted to leave it at that, but more detail is below the cut."
16:04:43 -!- Taneb has quit (Ping timeout: 252 seconds).
16:05:31 <Sgeo> http://ansuz.sooke.bc.ca/entry/256
16:05:33 <Sgeo> ...
16:05:37 * Sgeo facepalms
16:05:53 -!- Bike has joined.
16:06:39 -!- Taneb has joined.
16:08:42 -!- Taneb has quit (Read error: Connection reset by peer).
16:09:02 <Sgeo> I just caused someone to download a Windows game
16:09:18 <Sgeo> (Because they liked the music soundtrack that I linked to and wanted to see if they could rip it from the game)
16:09:46 <elliott> ok
16:21:49 -!- Taneb has joined.
16:23:17 <kmc> boily: what do you feel about the Arch package signing controversy
16:24:06 <kmc> http://lwn.net/Articles/434990/ http://www.toofishes.net/blog/real-story-behind-arch-linux-package-signing/
16:24:44 <boily> kmc: I didn't really care while the subject was still hot, and I still don't. checking package signatures is wholly optional on the users' ends.
16:25:00 <Bike> is the latter blaming lwn's journalism?
16:25:24 <kmc> i didn't read the latter but thought i should link it for balance
16:27:21 <Sgeo> boily, but it shouldn't be optional for the developers to provide the means for the users to check package signatures (I haven't actually read any of the stuff, so don't know if that's the issue)
16:28:54 <Bike> «First, shame on you Nathan Willis, Jonathan Corbet, and LWN for allowing this to be published. This is not journalism- this is propaganda fueled by a rogue blogger who you've decided to let create a story where there isn't one. I'm going to address points in the article that are just flat out wrong.» right
16:30:07 <boily> Sgeo: that I agree with. it's the flamewars and other bickerings that annoy me to no end.
16:31:44 <Bike> yeah, why did i look at that comments section
16:39:05 -!- sploknee has quit (Ping timeout: 240 seconds).
16:40:01 <Taneb> Burning the Arch iso onto a disk now
16:59:38 -!- Vorpal has joined.
17:03:53 -!- Arc_Koen has joined.
17:05:58 <Taneb> What file systems are "in" this season?
17:06:59 <elliott> kmc: arch has package signing now
17:07:38 -!- epicmonkey has quit (Ping timeout: 245 seconds).
17:16:37 -!- sploknee has joined.
17:18:59 <Taneb> This would be so much easier if my laptop's wifi thingy actually worked
17:33:05 <Taneb> Well, this hasn't gone my way
17:44:06 -!- FreeFull has joined.
17:48:03 -!- Arc_Koen has quit (Ping timeout: 245 seconds).
17:49:05 -!- Arc_Koen has joined.
18:00:33 -!- ogrom has joined.
18:00:43 -!- ogrom has quit (Client Quit).
18:07:10 -!- DHeadshot has quit (Read error: Connection reset by peer).
18:07:36 -!- DHeadshot has joined.
18:17:10 -!- epicmonkey has joined.
18:21:35 -!- copumpkin has quit (Ping timeout: 252 seconds).
18:22:06 -!- copumpkin has joined.
18:30:49 <Arc_Koen> Early in his jump, it was about minus 40 degrees, which is that magical point where you don’t have to clarify whether you mean Fahrenheit or Celsius—it’s the same in both.
18:30:52 <Arc_Koen> ahah
18:31:05 <Arc_Koen> they did the same thing in stargate once that was slightly disturbing
18:33:10 -!- zzo38 has quit (Remote host closed the connection).
18:38:54 -!- copumpkin has quit (Ping timeout: 256 seconds).
18:39:25 -!- copumpkin has joined.
18:49:48 <sploknee> Arc_Koen, but what if it's in kelvin
18:50:00 <sploknee> or rankines (god have mercy upon you)
18:50:02 -!- impomatic has left.
18:52:04 <boily> sploknee: I have a friend in civil engineering who was sometimes stuck with this kind of nonsense when she was an undergrand.
18:52:35 <sploknee> *shudder*
18:52:35 <boily> (but then, I wasn't in a much brighter spot, with our measurements in thousands of inches...)
18:52:44 <sploknee> project rho uses them too
18:53:03 <sploknee> i guess because the guy who wrote it is Old and also a dickhead
18:53:37 <boily> "Never ascribe to malice that which is caused by greed and ignorance." -- Carl Keegan
18:54:51 <sploknee> i didn't ascribe anything to malice! just dickheadedness
18:58:25 <kmc> yeah, engineers in the US still sometimes use imperialish units :(
19:00:02 <Gregor> "imperialish"
19:00:07 <Gregor> All the tang of imperial units with half the fat.
19:00:53 <boily> sploknee: malice and dickheadery aren't the same? :p
19:06:39 -!- impomatic has joined.
19:20:31 <kmc> woah copumpkin has 24,295 twitter followers
19:20:32 <kmc> well done
19:20:53 -!- AnotherTest has quit (Quit: Leaving.).
19:25:41 <Sgeo> kmc, who are you on twitter?
19:25:45 <kmc> @miuaf
19:25:45 <lambdabot> Unknown command, try @list
19:25:51 <kmc> @shutuplambdabot
19:25:51 <lambdabot> Unknown command, try @list
19:26:46 <Sgeo> followed, although I doubt when I see my feed I'll remember unless I go to your feed
19:26:50 <Sgeo> profile?
19:27:59 <kmc> ok
19:28:38 <Sgeo> Erm, as in, I might have trouble remembering miuaf = kmc unless I see the name
19:28:58 <Sgeo> Also, I am again drinking coffee
19:29:01 <Sgeo> (less this time)
19:29:05 <Sgeo> (and not on an empty stomach)
19:35:37 <Sgeo> Multiple languages in the Smalltalk environment maybe?
19:35:37 -!- ogrom has joined.
19:35:56 <Sgeo> I think there have been things to do that before
19:38:29 <Sgeo> Hmm, writing functions for local use isn't really a typical thing to do in Smalltalk, is it?
19:38:39 <Sgeo> I mean, I see how one could
19:38:43 <Sgeo> | helperFun |
19:38:52 <Bike> does smalltalk even have "functions"? well, blocks i guess...
19:38:54 <Sgeo> helperFun := [:arg1 :arg2 | ... ]
19:38:56 <Bike> i have no idea how it scopes though.
19:39:26 <Sgeo> I think some recentish Squeak or Pharo changed the scoping?
19:39:46 <Bike> i have no idea
19:41:40 <c00kiemon5ter> I just realised I was looking at ##c
19:41:56 <c00kiemon5ter> as, suddenly, Bike and Fiora
19:42:38 <Fiora> sorry <.<;
19:42:43 <Fiora> bike is dragging me around
19:43:24 <Sgeo> Weird, Bikes are usually not the ones making the decisions on where to go
19:45:05 <Fiora> nor do tzetze flies oddly enough
19:45:27 <Bike> Hey, yes we do! As part of a swarm. It's democratic!
19:49:00 <Sgeo> Hmm. I think, to just mix together some Factor and Smalltalk thoughts, maybe what I'd like is a language with Smalltalk-ish syntax except the methods are not attached to objects but themselves contain code, and this code could, say, dispatch on first argument a.la Smalltalk, or do something else
19:49:43 -!- DHeadshot has quit (Ping timeout: 245 seconds).
19:50:54 <Fiora> bike has powers of persuasion basically
19:50:56 <Fiora> it goes like this
19:51:05 <Fiora> "but I tried ##c and it looked like a bunch of language lawyer arguments >_<"
19:51:17 <Fiora> "well I just had this really cool discussion here about X, here's the logs"
19:51:25 <Fiora> "oooh. *join*"
19:51:31 <Bike> plot twist: X turns out to be basically a language lawyer argument.
19:51:38 <Fiora> yes. that is the ultimate plot twist.
19:51:43 <Fiora> BUT IT WAS LIKE, INTERESTING, OKAYS
19:52:13 <Bike> Sgeo: have you read uh... http://piumarta.com/freeco11/
19:52:24 <Sgeo> No, but I will now
19:52:26 <Bike> (this dude's a smalltalker)
19:52:55 <Sgeo> Which one?
19:53:12 <Bike> The dude I just linked you.
19:53:35 <Sgeo> I meant, which paper are you suggesting I read?
19:53:56 <Bike> The first paper there is basically a really basic thing about how to make multimethods in user code, or single methods, or like whatever you want.
19:54:00 <Bike> so that one.
19:54:15 <Sgeo> Ok
20:07:37 -!- Vorpal has quit (Ping timeout: 276 seconds).
20:22:07 -!- asiekierka has quit (Excess Flood).
20:24:43 -!- asiekierka has joined.
20:32:15 -!- impomatic has left.
20:42:16 -!- impomatic has joined.
20:53:32 -!- ais523 has joined.
20:56:22 -!- asiekierka has quit (Excess Flood).
20:59:43 -!- asiekierka has joined.
21:07:57 -!- GreyKnight has quit (Ping timeout: 252 seconds).
21:14:01 <Sgeo> So, GNU Smalltalk's IDE is sometimes considered not as good, but is it really considered bad?
21:14:15 <Bike> it has an ide?
21:14:40 <Taneb> It has many
21:18:16 <Gregor> A Smalltalker would say that the way you're asking the question makes it impossible to answer.
21:18:18 * ais523 calculates how to offend as many people as possible with an opinion about Smalltalk
21:18:27 <ais523> GNU Smalltalk misses the point of Smalltalk. IMO, this is a good thing.
21:18:33 <Gregor> Smalltalk doesn't have an IDE. Smalltalk IS the whole environment, not a suite of tools.
21:18:37 <Gregor> I agree with ais523 :)
21:22:42 <Sgeo> Is Smalltalk the only dynamically typed language that does not try to give a meaning to doing an if on non-booleans?
21:25:15 -!- ais523 has quit (Ping timeout: 276 seconds).
21:26:17 <hagb4rd> maybe it's better for hackego not to disregard his private life
21:26:40 -!- boily has quit (Quit: Poulet!).
21:26:50 <Bike> Gregor: well, i thought gnu smalltalk wasn't an ide, then.
21:26:57 -!- ais523 has joined.
21:27:03 <Gregor> Bike: Exactly.
21:27:19 <Bike> ok
21:27:36 <Gregor> GNU Smalltalk isn't Smalltalk. It's some weird bastard child that results of ripping just the language component from the environment. To a Smalltalker, that's simply not Smalltalk.
21:27:42 <Gregor> To a Unixer, that's the only way Smalltalk can be useful :)
21:27:45 <Bike> that's what i thought.
21:27:53 <Bike> which is why i asked "it has an IDE?"
21:28:04 <Taneb> What do Smalltalkers and Unixers think of, eg, Squeak
21:28:50 <ais523> my issue with something like Squeak is that it's a very closed environment
21:29:06 <ais523> you can't extract a running Smalltalk program out of Squeak and run it elsewhere at all easily
21:29:20 <Bike> the main issue with image-based programming, probably
21:29:23 <ais523> this makes deployment awkward because you have to ship an entire GUI with, say, your server daemon
21:29:28 <Gregor> And to a Smalltalker, that's just some silly Unixer trying to drag their notion of programming into Smalltalk.
21:29:31 <Gregor> You silly Unixer.
21:29:35 <ais523> yes
21:31:08 <Bike> would be nice if you could do both. have an interactive lovely ide and then extract the boring program to run on a thirty year old netbsd installation
21:31:15 <kmc> instead of deploying our server daemons inside a Smalltalk GUI, we deploy them as virtual machines along with an entire vestigial installation of GNU/Linux
21:31:45 <Bike> Or yeah we could just wait for everything to become shitty Smalltalk anyway.
21:31:55 <Sgeo> I think there's a headless.. something
21:31:59 <Gregor> lol @ kmc. Soooo painfully true :)
21:32:02 <Bike> Speaking of which: Whatever happened to the "Unix philosophy" of tiny cogs? Did that ever actually exist?
21:33:04 <Sgeo> I think there's a headless option to the VM, and Pharo has a "Core" image that doesn't include a lot of the IDE stuff
21:33:09 <Sgeo> So there's that
21:33:38 <kmc> i can't wait until we give up on this layer as well and start, like, shipping around images that represent entire fleets of EC2 VMs, all to be virtualized on top of some other crap thing
21:33:39 <Gregor> Sgeo: But once you've built something in the normal environment, extracting it and putting it into another image is somewhere between magic and time travel in terms of possibility.
21:33:55 <Bike> kmc: I'm pretty sure I read that Greg Bear novel once!
21:34:38 <hagb4rd> you mean there's no need to deploy them hard-wired?
21:35:10 <Sgeo> What is the big problem with just using the same image in -headless? The file size bloat?
21:35:27 <Bike> complaints about file size are always amusing.
21:35:43 <Gregor> Sgeo: Let's say you wrote a useful library in one image, and a useful app in another, and now you'd like to use that library in that app.
21:35:54 <Gregor> Sgeo: Now you have to meticulously extract all the relevant objects and inject them into the other image.
21:36:10 <Sgeo> Isn't that what tools like Monticello are for?
21:37:04 <Gregor> Yes, tools exist to ease the process. But the point is, that whole notion that that IS a process is unique to Smalltalk.
21:37:42 <kmc> well shared library linking isn't exactly ponies & rainbows in other languages either
21:39:05 -!- carado has quit (Ping timeout: 246 seconds).
21:44:26 <Bike> is it really that different? if I write two programs in [non-Smalltalk language], and decide that the second needs some stuff from the first, I'll be copying out the stuff I need from the first's source into new source that I can compile seperately and then link
21:44:30 <hagb4rd> well ponies & rainbows would be a good theme for a new esoteric language.. have to keep that idea in mind
21:44:43 <Sgeo> I feel like Smalltalk's environment slightly encourages me to do version control, Racket's stuff encourages me to do unit testing
21:45:01 <Sgeo> Both practices I really don't do but should get in the habit of
21:47:49 <hagb4rd> you need version control in every language. that's for sure
21:49:12 <hagb4rd> but in best case you need not more than a reference to a version of your lib to make things happen
21:52:00 -!- asiekierka has quit (Excess Flood).
21:55:43 -!- asiekierka has joined.
21:57:20 <nortti> "In case you were wondering what Unix herpes looked like." http://i.crackedcdn.com/phpimages/article/2/8/2/161282_v1.jpg
21:59:44 <Sgeo> "If your application has a military, weapon-technical or genetic-engineering background, or if your company produces landmines or is involved in the management of patents on food, animals or humans or is owning any of these, please contact info@exept.de. In such a case, we may have to insist on a non-free licence agreement."
22:00:06 <Sgeo> No genetic-engineering on Smalltalk/X :(
22:00:30 <Bike> haha, what
22:02:35 -!- sebbu has quit (Ping timeout: 260 seconds).
22:03:32 <kmc> yeah genetic engineering is only useful for killing people
22:03:39 <kmc> either that or feeding huge numbers of people who would otherwise starve
22:03:41 <kmc> i can't remember which
22:04:24 <Bike> can they even enforce a license like that? BSD unless you're The Man?
22:04:35 <Fiora> there seem to be a lot of things like that
22:04:52 <Fiora> like, nitrogen compounds prevent billions of people from starving by fertilizing crops across the globe
22:04:57 <Fiora> they also explode
22:06:03 <Bike> genetic engineering is a bit weird because I don't think it's even been particularly used for violent applications. like, monsanto are assholes, but that's because of how patent law works (so, the later clause), not because they're messing with liiiiife
22:06:43 <Fiora> has it been used for biological weapons?
22:06:50 <Fiora> though I imagine if it *has* they wouldn't be talking much about it
22:07:37 <Bike> I don't think any major power has tried to engineer diseases since like the 80s. Sarin's cheaper anyhow.
22:08:14 <fizzie> It's for supersoldiers, right?
22:08:21 <Bike> ¬_¬
22:08:42 <Fiora> resident evil is totes a documentary
22:09:11 <Bike> Of course there's also the "are you seriously not even going to distinguish retrovirus mods from regular old controlled breeding" aspect, butgah
22:09:34 -!- sebbu has joined.
22:09:34 -!- sebbu has quit (Changing host).
22:09:34 -!- sebbu has joined.
22:09:55 <Bike> not even going to try, rather
22:11:05 -!- WeThePeople has joined.
22:12:20 <Bike> oh, biopreparat existed through the 90s.
22:13:58 -!- Taneb has quit (Quit: Leaving).
22:15:53 -!- sebbu has quit (Ping timeout: 252 seconds).
22:17:17 <fizzie> http://web.archive.org/web/19980626195924/http://www.dtic.mil/stinet/ndia/NLD3/camp.pdf "genetic engineering" for "military use" from the 1998.
22:17:28 <fizzie> Though it's not exactly for killing anyone.
22:22:31 <Bike> oh, i suppose i wasn't thinking of things notdirectly targeted atpeople
22:23:51 -!- sebbu has joined.
22:23:51 -!- sebbu has quit (Changing host).
22:23:51 -!- sebbu has joined.
22:29:38 -!- sebbu has quit (Ping timeout: 252 seconds).
22:35:56 -!- ogrom has quit (Quit: Left).
22:40:59 -!- sebbu has joined.
22:47:44 <Sgeo> Eliot
22:52:57 <ion> e2lio2t
22:53:28 <kmc> 2 fast 2 elliott
22:53:56 <sploknee> lern2elliott
22:54:04 <fizzie> e(l)\1io(t)\2
22:54:35 <Sgeo> There's a person named Eliot who does CogVM stuff
22:57:29 <ion> Inform him he mistyped “elliott”.
23:01:04 <Sgeo> Hmm, I don't think it's TCO, but the Smalltalk equivalent did seem to run a while
23:01:26 <Sgeo> Erm, Smalltalk equiv. of ((lambda (x) (x x)) (lambda (x) (x x)))
23:01:29 <Sgeo> Which I wrote as
23:01:35 <Sgeo> [:x | x value: x] value: [:x | x value: x]
23:03:19 <ais523> approved abbreviation in #esoteric is e(l)*2io(t)*2
23:03:26 <ais523> note that this is longer than the original :)
23:03:56 <Jafet> !bfjoust elliott elliott
23:04:07 <ais523> Jafet: that's just a no-op program
23:04:08 <EgoBot> ​Score for Jafet_elliott: 4.6
23:04:27 <ais523> perhaps we should have a no-op permanently on the hill
23:05:02 <Jafet> !bfjoust elliott (ellio++)*-1
23:05:07 <copumpkin> kmc: yay, welcome to twitter! my followers aren't very legit
23:05:08 <EgoBot> ​Score for Jafet_elliott: 8.6
23:05:16 <fizzie> ^ul ((S)(:SS))(( e)S~^:(l)~^(io)S:(t)~^a~a*~:^):^
23:05:17 <fungot> elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot elliott eliot e ...too much output!
23:05:43 <fizzie> (The mixed variants left as an exercise.)
23:06:35 <shachaf> copumpkin: Not even kmc?
23:06:52 <copumpkin> well, I have some "real" ones who follow me for the right reasons
23:06:57 <copumpkin> most follow me for the wrong reasons
23:07:08 <shachaf> I just logged in to Twitter and they sent me a "welcome back to Twitter" email.
23:07:15 <shachaf> What are the wrong reasons to follow copumpkin?
23:07:28 <Bike> looking for cohalloween ideas?
23:07:42 <ais523> when is cohalloween, anyway?
23:07:52 <copumpkin> shachaf: expecting to get information about iphone jailbreaks
23:07:56 <ais523> April 30?
23:07:57 <ion> `run echo el{,l}iot{,t}
23:08:07 <shachaf> copumpkin: Oh, that.
23:08:17 <copumpkin> indeed :)
23:08:18 <ais523> copumpkin: do you actually work in iphone jailbreaks, or are they just hoping?
23:08:18 <shachaf> i love iphone jailbreaks
23:09:00 <Sgeo> I want to write a Smalltalk quine, but not entirely sure what counts as a quine
23:09:01 <shachaf> ais523: I like the idea of tens of thousands of people following copumpkin for jailbreaks despite him having no known connection to them.
23:09:09 <Sgeo> PrintIt on [] prints []
23:09:14 <Sgeo> Does that mean it counts?
23:09:43 <shachaf> Sgeo: If you run the Ruby program "", it prints "". Does that count?
23:10:08 * Sgeo decides to try to write a program in the workspace such that, when I DoIt, it shows up in the Transcript
23:10:12 <copumpkin> ais523: I used to, but lost interest around the same time I got sucked into haskellrama
23:10:19 <shachaf> It works with Perl and Python, too.
23:10:41 <Bike> an object-oriented quine would return something that constructs an object-oriented quine, i would think
23:10:43 <ais523> shachaf: so do I, that's why I suggested it
23:11:09 <shachaf> ais523: Right.
23:11:19 <fizzie> ^ul (((S)(S))((S)(:SS))((:SS)(S))((:SS)(:SS)))(( e)S~^:^(l)~^(io)S(t)~^a~a~*~a~*~a*~:^):^
23:11:19 <fungot> elliott eliot elliot eliott elliott eliot elliot eliott elliott eliot elliot eliott elliott eliot elliot eliott elliott eliot elliot eliott elliott eliot elliot eliott elliott eliot elliot eliott elliott eliot elliot eliott elliott eliot elliot eliott elliott eliot elliot eliott elliott eliot elliot eliott elliott eliot e ...too much output!
23:11:25 <fizzie> (The easy way out.)
23:11:46 <shachaf> !bfjoust hi (((S)(S))((S)(:SS))((:SS)(S))((:SS)(:SS)))(( e)S~^:^(l)~^(io)S(t)~^a~a~*~a~*~a*~:^):^
23:11:48 <EgoBot> ​Score for shachaf_hi: 4.6
23:11:53 <shachaf> fizzie: That's a terrible BF program.
23:11:55 <ais523> now I'm wondering how much effort it'd be to make a decent-ish PRNG in Underload
23:12:08 <ais523> where "decent-ish" means "humans can't spot the pattern"
23:14:40 <Sgeo> [:q | Transcript show: q;
23:14:40 <Sgeo> show: ' value: ';
23:14:40 <Sgeo> show: q] value: [:q | Transcript show: q;
23:14:40 <Sgeo> show: ' value: ';
23:14:40 <Sgeo> show: q]
23:14:51 <Bike> deep.
23:14:54 <shachaf> hi
23:15:10 <Sgeo> The spacing is the way it is because that's how my original ended up showing up when printed
23:15:12 <Sgeo> So I just used that
23:15:18 <ais523> Sgeo: an attempt to make a Smalltalk quine?
23:15:24 <Bike> Have you considered implementing Smalltalk as a Racket language on the JVM
23:15:52 <Sgeo> ais523, did I fail somewhere?
23:15:59 <shachaf> Bike: The JVM is the thing that Clojure uses, right?
23:16:25 <Bike> "maybe"
23:16:48 <ais523> Sgeo: I don't know
23:16:57 <shachaf> Sgeo: How should we know? You only pasted the source of the program. You should paste its output.
23:17:01 <shachaf> alt. You only pasted the output of the program. You should paste its source code.
23:17:27 <shachaf> i love quines
23:17:31 <shachaf> they are so easy
23:18:06 <Sgeo> Doesn
23:18:11 <Sgeo> Doesn't work in GNU Smalltalk
23:18:44 <Sgeo> Or Amber-Lang
23:19:39 <kmc> oh i forgot that copumpkin is an iphone bandit
23:19:40 -!- DHeadshot has joined.
23:19:48 <kmc> it makes more sense now
23:19:56 <copumpkin> :)
23:20:40 <kmc> so far i'm finding twitter a lot more enjoyable than facebook and g+ and all these other newfangled social networks
23:20:48 <kmc> twitter is much more of a "Do one thing well" service
23:20:53 -!- sploknee has quit (Ping timeout: 248 seconds).
23:21:31 <kmc> maybe it's just because twitter is in a "making something people want" phase and facebook is in the later "extract as much money as possible from addicts" phase
23:23:07 -!- sploknee has joined.
23:23:31 <Fiora> twitter seems kind of like a neutered tumblr
23:23:39 <Fiora> with more techy social media people and less fandomy stuff
23:23:50 <copumpkin> kmc: good!
23:24:09 <copumpkin> Fiora: I don't see it as a neutered anything. I just use different services for different degrees of development of an idea
23:24:16 <copumpkin> I don't really get the cross-posting thing
23:24:30 <copumpkin> a lot of people auto-cross-post but it seems a bit silly
23:24:40 <copumpkin> who knows though, I might just be doing it wrong :)
23:24:46 <kmc> tumblr allows a lot more freedom to customize the look of your page, doesn't it?
23:24:57 <Fiora> I mean that like, it doesn't have a lot of stuff that tumblr does, it seems like largely a subset
23:24:59 <sploknee> unfortunately, yes
23:25:09 <Fiora> not that it's a bad thing, since, subsets can improve stuff
23:25:22 <kmc> yeah, facebook is also basically a superset of twitter
23:25:41 <shachaf> I think Twitter is definitely a superset of a subset of Tumblr.
23:25:49 <kmc> facebook wants to be everything
23:25:52 <Fiora> tumblr's supersetness seems to be largely oriented on much better posts (larger posts, formatting, image sets, etc)
23:25:55 <kmc> they want to replace the Web as the platform you build stuff on
23:26:00 <Bike> facebook is a superset of facebook?
23:26:02 <Fiora> and better reblog/reply/etc stuff, and better customization
23:26:06 <kmc> yes
23:26:08 <copumpkin> Bike: yeah
23:26:10 <kmc> but not a proper superset
23:26:15 <shachaf> Fiora: FSVO "better"
23:26:29 <Bike> kmc: i demand nontraditional set theories from my social media
23:26:51 <Fiora> yeah, to be fair the customization can be annoyingly hard
23:26:57 <Fiora> I had to practically half-learn css to make my page look how I wanted
23:27:08 <shachaf> css: so easy??
23:27:29 <shachaf> kmc: I hear there's going to be a Stripe Cambridge Drinkup.
23:27:42 <sploknee> and it can easily become a tool of war upon the eye
23:27:53 <shachaf> I'm not sure why I get all these emails.
23:28:47 <Fiora> tumblr doesn't force you to look at other peoples' pages though in that you can do all your interaction from the dashboard
23:29:00 <Fiora> so usually you can avoid dealing with that one person who has a yellow on pink page with autoplaying music
23:29:09 <Fiora> and replaces your mouse cursor with a sparkler
23:29:28 <shachaf> Fiora: Isn't that only if you follow them?
23:29:30 <Bike> Don't forget the ponies dancing around the screen.
23:29:35 * shachaf has a Tumblr account but doesn't use it.
23:30:05 * sploknee has a tumblr account and well you all know the rest
23:30:33 <Fiora> shachaf: yeah
23:30:35 <kmc> then you took an arrow to the knee?
23:30:37 <Sgeo> I have a Tumblr account that is on Planet Clojure
23:30:51 <Bike> that's even more forced than being easy.
23:31:07 <kmc> no people have stopped sayin git
23:31:11 <kmc> it's retro now
23:31:41 <shachaf> As far as I know "people" have never said the easy.
23:31:42 <shachaf> thing.
23:31:45 <shachaf> That's just me.
23:31:50 <copumpkin> kmc: you still in cambridge
23:31:51 <copumpkin> ?
23:31:54 <kmc> yeah
23:32:24 <shachaf> copumpkin: Well, all the "cool people" are in Cambridge.
23:32:40 <Fiora> I wonder how many horrible design sins my tumblr commits
23:32:53 <sploknee> this is american ripoff cambridge yes
23:32:55 <copumpkin> Fiora: 74 last I checked
23:33:33 <kmc> sploknee: yeah
23:34:10 -!- Arc_Koen has quit (Quit: The struct held his beloved integer in his strong, protecting arms, his eyes like sapphire orbs staring into her own. "W-will you... Will you union me?").
23:34:33 <shachaf> @nixon
23:34:33 <lambdabot> This is a great day for France!
23:34:50 <Fiora> wow, the W3c validator hates my page
23:34:53 <Fiora> actually oh god what is tumblr doing
23:35:03 <Fiora> they put a <!DOCTYPE html> at the top
23:35:08 <Bike> Fiora: have you checked their js? it's ~obfuscated~
23:35:09 <Fiora> then they add in the tumblr javascript
23:35:15 <Fiora> then they put the actual webpage
23:35:20 <Fiora> so my page ends up with TWO doctype tags
23:35:52 <shachaf> I don't think you're supposed to have your own doctype, are you?
23:36:13 <Fiora> well, the top tag is literally <!DOCTYPE html>
23:36:18 <shachaf> You should be able to style script tags with CSS.
23:36:18 <Fiora> is that a legitimate doctype?
23:36:27 <Fiora> http://validator.w3.org/check?uri=http%3A%2F%2Ffioraaeterna.tumblr.com%2F&charset=%28detect+automatically%29&doctype=XHTML+1.0+Transitional&group=0
23:36:35 * Fiora knows so little about web things
23:36:47 <Bike> Huh, I only got three errors.
23:36:49 <shachaf> E.g. have them all run at once, and give the ones with more opacity higher priority.
23:36:52 <shachaf> Or who knows.
23:37:02 <Bike> " Line 14, Column 67: Cannot recover after last error. Any further errors will be ignored." oh.
23:37:14 -!- impomatic has left.
23:37:23 <shachaf> Bike: is this you: http://bike.tumblr.com/
23:37:26 <Fiora> I had to force the type to XHTML
23:37:32 <kmc> <!DOCTYPE html> is HTML5
23:37:41 <shachaf> Fiora: You should change your username to xn--fioraterna-h6a
23:37:41 <Bike> shachaf: http://bicyclidine.tumblr.com/
23:38:03 <Fiora> .... o_O
23:38:04 <shachaf> Fiora: XHTML is dead!
23:38:06 <Fiora> my code: <head>
23:38:12 <Fiora> actually displayed on the page:
23:38:12 <Fiora> <head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# blog: http://ogp.me/ns/blog#">
23:38:25 <Fiora> the validator complains "prefix" doesn't exist o_O
23:38:26 <Lumpio-> I want my XHTML 2.0 .__.
23:38:26 <kmc> yikes
23:38:29 <Fiora> "open graph protocol"?
23:38:38 <kmc> in HTML5 you are allowed to have custom attributes, I believe
23:38:40 <Bike> I'm guessing some social graph thing?
23:38:40 <Lumpio-> It probably doesn't. I don't think that's part of HTML
23:38:58 <shachaf> Fiora: It doesn't complain about it if you set it to HTML5.
23:39:12 <Lumpio-> I'm pretty sure the only custom attributes it allows it data-* attributes
23:39:16 <shachaf> Oh, that's because it comes across an unrecoverable error.
23:39:34 <Fiora> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> how is > a stray tag o_O
23:39:48 -!- sploknee has quit (Ping timeout: 248 seconds).
23:39:54 <Lumpio-> Wait are you doing HMTL or XHTML now
23:40:03 <Lumpio-> xmlns and friends is XHTML, <!DOCTYPE html> is HTML
23:40:13 <shachaf> HMTL is the best tarkup language.
23:40:16 <Fiora> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
23:40:59 -!- sploknee has joined.
23:43:47 <shachaf> copumpkin: So you're still doing Scala?
23:44:07 <shachaf> Inescapable.
23:44:14 <copumpkin> :)
23:44:21 <copumpkin> not the end of the world
23:44:26 <copumpkin> I prefer haskell, but oh well
23:44:34 <copumpkin> I'll corrupt everyone eventually
2013-01-16
00:01:27 <kmc> yessss
00:01:45 <kmc> i think being picky about programming languages is a bad place to use your being-picky-about-a-job points
00:01:48 <kmc> except for PHP
00:02:08 <copumpkin> I love the job so far, and don't hate scala :P
00:02:21 <copumpkin> but yeah, we can all agree on PHP
00:02:35 <copumpkin> although I wrote a fair bit of it in high school
00:03:11 <shachaf> I wrote some PHP once.
00:03:19 <copumpkin> shachaf: HOW COULD YOU
00:03:31 <shachaf> copumpkin: Well I didn't want to make a liar out of you!
00:03:59 -!- sebbu2 has joined.
00:04:00 -!- sebbu2 has quit (Changing host).
00:04:00 -!- sebbu2 has joined.
00:04:41 <kmc> PHP: not even once
00:05:04 <Bike> well, even the PHP developers agree that PHP is kind of terrible, so it works out right
00:05:30 <kmc> i too have written some PHP :/
00:05:48 -!- sebbu has quit (Ping timeout: 276 seconds).
00:05:55 <copumpkin> Bike: well, doesn't the guy actually just hate programming?
00:06:00 <copumpkin> and is quite open about it
00:06:06 <Bike> yeah
00:06:11 <kmc> PHP has its apologists though
00:06:28 <Bike> luckily i have surgically removed my ability to directly acknowledge the existence of That Man or anything he's said
00:06:36 <copumpkin> oh good
00:07:10 <shachaf> y'all hate PHP too much imo
00:07:11 <shachaf> i love it
00:07:13 <shachaf> it is so easy
00:07:15 -!- Phantom_Hoover has joined.
00:07:53 <kmc> shachafffffffffffffff
00:08:04 <kmc> nooooooo
00:08:10 <copumpkin> I need some popovers
00:08:13 <copumpkin> and/or a steak
00:08:14 <shachaf> kmc: :'(
00:08:25 <shachaf> how do i stop doing it
00:08:28 <shachaf> it's just so...
00:08:36 <Bike> trivial?
00:08:38 <kmc> wait for it
00:08:39 <copumpkin> facile?
00:08:41 <shachaf> Exactly!
00:08:49 <copumpkin> (in italian)
00:08:58 <Bike> "facile" is in english too...
00:09:04 <copumpkin> I know, but it means something else
00:09:07 <copumpkin> although the meanings are related
00:09:20 -!- sploknee has quit (Ping timeout: 255 seconds).
00:09:22 <Bike> I thought you could (sort of obscurely) use it to mean the same in English though.
00:09:50 <copumpkin> yeah, it still means easy, but it has a lot of baggage in that meaning :)
00:10:19 <Bike> "(now rare) Amiable, flexible, easy to get along with. [from 16th c.]" cool am i "retro" now
00:10:35 <Bike> "Easy, now especially in a disparaging sense; contemptibly easy. [from 15th c.] " even older!
00:10:40 <shachaf> Bike: yes, you are retro. don't you love being retro?
00:12:38 <olsner> facile seems similar to genteel
00:13:52 <olsner> btw, the H in PHP is pronounced uː
00:14:25 <ais523> the files I'm working on at the moment are technically PHP files
00:14:51 <ais523> but I'm treating them as HTML files that support server-side commments, together with not messing with the existing logic
00:15:18 <shachaf> I bet there are some weird edge cases in the PHP comment parser.
00:16:05 -!- epicmonkey has quit (Ping timeout: 255 seconds).
00:16:07 <olsner> I wonder if you could write "comments" in deflate streams, then just save it as html.gz and get the comments stripped by the receiver
00:19:55 <kmc> haha
00:21:40 <olsner> comments seem like a remarkably stupid thing to put in a compression format though
00:23:13 <Sgeo> Hum. Smalltalk might not have macros, but how often do macros actually need to parse code? And I bet that there is introspection for looking inside a block at runtime if needed
00:23:58 <Sgeo> Although, there's still the issue of wanting to expand into creation of multiple methods, which is ... something that might not work well with IDEs
00:24:25 <kmc> olsner: so does quines and yet they mostly support them by accident
00:24:46 <Bike> i thought smalltalk was conceptually removed enough from source that macros wouldn't make much sense anyway. guess not
00:24:47 <kmc> http://steike.com/code/useless/zip-file-quine/
00:25:16 <kmc> great for putting enterprise email virus scanners into an infinite loop
00:25:17 <olsner> ah, but .zip supports comments
00:25:38 <olsner> e.g. for putting an extracting executable at the beginning of the file
00:25:54 <Bike> I should get one of those zips that expand to a trillion gigabytes of garbage and never accidentally open it anyway
00:25:58 <shachaf> imo the world would be better without drums
00:26:03 <Bike> wrong
00:26:19 <olsner> there are gzip/deflate quines too, of course
00:26:26 <shachaf> Bike: have you considered the possibility that you're the wrong one
00:26:37 <Bike> Yes. It was a wrong possibility.
00:26:58 <kmc> shachaf is wrong in re: drums
00:27:17 <shachaf> wow Bike and kmc are wrong??
00:27:28 <Bike> imo no
00:27:45 <shachaf> good point but imo yes
00:27:51 <shachaf>
00:28:58 <kmc> dongs
00:30:03 <olsner> shachaf: http://en.wikipedia.org/wiki/Drum_memory ??
00:30:22 <shachaf> olsner: drum memory can stay
00:30:30 <shachaf> but the other kind can beat it!!
00:31:34 <olsner> no, you can't beat a drum without any drums
00:32:27 <olsner> fwiw, drums can't beat drums at all due to no hands
00:34:20 -!- Phantom_Hoover has quit (Remote host closed the connection).
00:41:11 -!- oerjan has joined.
00:48:34 <oerjan> @tell HackEgo `addquote <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
00:48:34 <lambdabot> Consider it noted.
00:48:51 * oerjan wonders if lambdabot will mess up the formatting
00:49:20 <ais523> quintopia: there /is/ a tag for that, I just forget what it is offhand
00:49:49 <shachaf> oerjan: Can you make HackEgo @messages?
00:49:52 <shachaf> `echo @messages
00:49:59 <shachaf> Er... Right.
00:50:11 <shachaf> @tell oerjan `addquote hi
00:50:11 <lambdabot> Consider it noted.
00:50:26 <shachaf> answerjan!
00:50:56 <oerjan> shachaf: yes, although you need a trick to get around HackEgo's anti-botloop protection
00:50:56 <lambdabot> oerjan: You have 1 new message. '/msg lambdabot @messages' to read it.
00:51:01 <oerjan> @messages
00:51:01 <lambdabot> shachaf said 50s ago: `addquote hi
00:51:13 <oerjan> ...that doesn't look promising.
00:51:21 <shachaf> HackEgoerjan
00:51:48 <kmc> anti-bootlop
00:51:55 <kmc> fungot: bootlop
00:51:56 <fungot> kmc: it's so difficult to port to scheme is when there is define?
00:52:09 -!- TeruFSX has joined.
00:52:09 <kmc> fungot: bøøtløp
00:52:10 <fungot> kmc: it was a typo
00:52:14 <kmc> fair enough
00:52:17 <ion> IRC RFC already has an anti-botloop protection, a.k.a. NOTICE.
00:52:45 <ais523> yeah but mIRC breaks that
00:52:51 <ais523> by going crazy upon channel notices
00:52:53 <oerjan> ion: which doesn't work because NOTICE's are so annoyingly looking that in-channel bots don't use them.
00:52:56 <Bike> how can you possibly break notices
00:52:57 <kmc> mIRC: the Internet Explorer of IRC clients?!?
00:53:01 <ais523> kmc: definitely
00:53:08 <ais523> Bike: by treating them as really super important
00:53:09 <kmc> MySQL is the mIRC of databases
00:53:12 <shachaf> How do I NOTICE?
00:53:16 <shachaf> <CTCP>LIKE this?<CTCP>
00:53:17 <ion> oerjan: You forgot “in a small number of clients”.
00:53:25 <shachaf> <CTCP>I am a bot<CTCP>
00:53:31 <ais523> shachaf: those are CTCP replies
00:53:37 <ais523> an actual notice looks like this
00:53:37 <Bike> hi
00:53:45 <kmc> posting in this high quality thread
00:53:45 <shachaf> hi
00:53:47 <ais523> try removing the control characters
00:53:55 <shachaf> i am a bot
00:54:06 <kmc> EC{E{CE{{EC{E{{CE{{CE{ FRASH PRUGIN {E[C{E[CE[CE[CE[
00:54:13 <kmc> shachaf: bot is easy
00:54:16 <Bike> actually looks pleasingly robotic on my end
00:54:27 <shachaf> <CTCP>OH no<CTCP>
00:54:29 <ion> This message has been triggered by shachaf’s notice, thereby violating the RFC.
00:54:34 <ais523> [Notice] -Bike to #esoteric- hi
00:54:38 <kmc> we're all, just, like, bots, man
00:54:40 <ais523> that's how it looks in Konversation
00:54:49 <shachaf> ais523: What, no colours?
00:54:51 <myndzi> <CTCP>PING 0<CTCP>
00:54:54 <myndzi> :P
00:54:57 <ais523> I'd prefer it as just "-Bike-", but I understand why it distinguishes between channel and server notices
00:54:59 <myndzi> best flood ever.
00:55:13 <ais523> shachaf: notices have a customizable color, I use dark yellow
00:55:21 <myndzi> nobody expects the channel ctcpreply
00:55:32 <oerjan> ais523: notices look annoyingly prominent in irssi too.
00:55:33 <kmc> it's environment diagrams day in zombie 6.001!!!!
00:55:54 <shachaf> [ctcp(#esoteric)]
00:55:56 <Bike> with the boxes and dots and arrows and shit?
00:56:07 <kmc>
00:56:08 <kmc> yes
00:56:25 <Bike> that reminds me, somebody asked in ##c if lexical scope was actually implemented
00:56:51 <Bike> they just didn't believe int a; for(;;){int a; ...} would work right, it was weird
00:57:17 <shachaf> Does it really count as lexical scope in that context?
00:57:22 <shachaf> How would dynamic scope behave?
00:57:31 <ais523> Bike: implemented by what? C isn't a compiler
00:57:42 <kmc> i like compiler it's so easy
00:57:44 <kmc> DAMN YOU SHACHAF
00:57:48 <shachaf> kmc.......................
00:57:55 <kmc> i'm got the virus now
00:58:00 <ion> ais523: GCC, the Glasgow C Compiler.
00:58:15 <kmc> Gołąbki C Compiler
00:58:45 <Bike> ais523: they didn't even think it was in the standard
00:59:00 <ais523> perhaps they're used to JS
00:59:04 <kmc> Classic C Compiler Program
00:59:07 <ais523> btw, does lexical scope work correctly in PHP?
00:59:21 <kmc> ais523: i'm going to say "no" without considering all of the words in that question
00:59:35 <kmc> i call it
00:59:37 <kmc> lazy evaluation
01:00:11 <ais523> kmc: the function worksInPHP is not strict in its argument?
01:00:35 <oerjan> incidentally the logs don't show notices.
01:00:57 <oerjan> (codu logs)
01:01:39 <Bike> shachaf: C where int a = 4; void foo(void) { printf("%d\n",a); } foo(); makes sense sounds pretty exciting!
01:01:55 <ais523> oerjan: what about the raw logs?
01:01:59 <oerjan> the tunes logs do.
01:02:05 <oerjan> ais523: not the raw logs either.
01:02:15 <kmc> i wonder how zzo38's client displays notices
01:02:16 <shachaf> Bike: Since when does C support nested function definitions?
01:02:20 <ais523> @eval C where int a = 4
01:02:31 <shachaf> @help eval
01:02:31 <lambdabot> eval. Do nothing (perversely)
01:02:31 <ais523> it /looked/ like valid Haskell
01:02:36 <ais523> oh, hmm
01:02:45 <oerjan> presumably it may be in the all-channels-mushed-together file which everything else is extracted from
01:02:48 <ais523> why have a no-op command called "eval"?
01:02:57 <ais523> ^def eval ul ()!
01:02:58 <fungot> Defined.
01:02:58 <kmc> because lambdabot is a big practical joke
01:03:06 <ais523> ^eval now I can do this in fungot too
01:03:16 <Bike> shachaf: "whatever, man"
01:03:16 <Bike> This place has Tunes logs too?
01:03:27 <ais523> Bike: yes, they've existed way longer than the codu logs
01:03:29 <ais523> clog is Tunes' logbot
01:03:34 <ais523> hi clog
01:03:37 <shachaf> hi clog
01:03:44 <shachaf> /ctcp clog hi
01:03:45 <ais523> there also used to be another logbot cmeme, but it hasn't been here for a while
01:04:08 <shachaf> haskell/12.12.25:21:19:51 <beaky> games are so complex to make :(
01:04:09 <Bike> was it actually affiliated with the "tunes project" or i don't even know
01:04:12 <shachaf> I guess games aren't easy.
01:04:43 <ais523> Bike: the logbot is; I don't think the channel is
01:04:45 <shachaf> <beaky> btw, why do lenses pack both the getter and setter together? <beaky> ye <beaky> yeah <beaky> is it for composition or something? <beaky> ah <beaky> lenses make life easy
01:05:07 <kmc> sudden clarity beaky
01:05:27 <kmc> beaky would be a good name for a cuttlefish
01:05:47 <Bike> ais523: can you just ask the tunes whoever to log your channel, then?
01:06:07 <ais523> Bike: I don't think so; I guess they just thought the channel was interesting
01:06:18 <Bike> http://scienceblogs.com/notrocketscience/wp-content/blogs.dir/474/files/2012/04/i-7ed1055d2591673620f0d2017dcb3513-Beak.jpg beaky's true form?
01:06:19 <ais523> also, there's a chance that worldbreaking programming ideas would happen here first
01:06:25 <ais523> even if there's a lot of chaff to filter through
01:06:43 <kmc> chaff and flares
01:07:02 <oerjan> Bike: you _can_ just ask glogbot, however.
01:07:08 <shachaf> haskell/12.12.22:02:18:09 <beaky> what is the most powerful feature of haskell
01:07:08 <shachaf> haskell/12.12.22:02:18:12 <beaky> that no other languages have?
01:07:08 <shachaf> haskell/12.12.22:02:18:29 <beaky> lisps' power is macros. perl's power is regexes. C's power is pointers...
01:07:16 <Bike> http://tunes.org/~nef/logs/ oh, it's actually almost an exclusive club
01:07:18 <kmc> no other language has regexes
01:07:44 <kmc> why don't they just make one language with all the features HMMMMMMMMM??
01:07:53 <kmc> idiohs
01:08:43 <shachaf> <beaky> what is the difference between parallel and concurrent? <beaky> so parallel programs are like a battery of guns <beaky> or is that concurrent programs? <beaky> ah <beaky> so parallelism is like firing all the guns in a battleship
01:08:47 <kmc> i want a pet cuttlefish but taking care of it is "not easy"
01:08:52 <Bike> kmc: but they're like, right there in the syntax, man.
01:08:52 <Bike> also, shachaf, these are like so totally way old.
01:08:52 <Bike> http://tunes.org/~nef/logs/slate/13.01.15
01:09:05 <kmc> Bike: they are also in the syntax in javascript
01:09:06 <kmc> for some reason
01:09:55 <Bike> could you even get an aquarium big enough?
01:10:11 * ais523 tries to remember what a cuttlefish is
01:10:21 <kmc> yeah there are some small ones
01:10:35 <kmc> ais523: it's like an octopus or a squid but weirder
01:10:36 <Bike> ais523: the ones with active camo.
01:10:46 <kmc> yeah they can change color and change how iridescent they are
01:10:58 <Bike> They're also pretty smart.
01:11:37 <Bike> http://www.youtube.com/watch?v=7ujRgSRYE9A This is about the size I imagine cuttlefish as being, though. I don't think it would be very comfortable in a home tank.
01:12:03 <kmc> yeah maybe
01:12:07 <kmc> i have only seen baby cuttlefish in person
01:12:09 <kmc> sooooo cute
01:12:47 <Bike> Maybe there are smaller ones, I don't know. Maybe the seawaterness is more relevant.
01:13:03 <kmc> this is what i read http://www.tonmo.com/cephcare/cuttlefishcare.php
01:13:14 <Bike> saltwater animals are way harder to keep in captivity, right?
01:13:24 <kmc> think so, yeah
01:13:56 <kmc> 'This little cuttlefish, originally from Indonesia, is fully grown at about 5 cm (2") mantle length'
01:14:04 <kmc> so i guess they do vary quite a bit
01:14:19 <Bike> Oh ok, so there's like an established basis for this
01:14:29 <kmc> then they talk about another type that gets up to 45cm
01:14:45 <Bike> damn, whole forums for taking care of cephalopods? I like this place
01:14:53 <shachaf> <beaky> so monads are monoids with superpowers
01:15:01 <kmc> 'They eat a lot of food. An individual that is half grown will eat two 5cm (2") wide crabs per day and more on top of that. 12mm long babies can and will eat up to five 12mm (1/2") long shrimps each day.'
01:15:16 <Bike> Damn.
01:15:34 <kmc> you have to feed them live crustaceans
01:15:39 <kmc> or at least it is better if you do
01:16:11 <kmc> a friend of mine had a snake and when they couldn't feed it live mice, they would just microwave the dead mouse for a bit so it would 'look' live in IR
01:16:22 <kmc> the snake was old and feeble and blind :/
01:16:58 <Bike> aw geez :(
01:17:40 <kmc> 'They can spit water out the top of their tank by using their siphon. Worth considering where you keep all your associated electrical equipment. '
01:18:39 <kmc> 'If you keep several together you'll obviously need an even bigger tank. They will fight over food and occasionally spook each other; it is quite common to see bite marks and two cuttlefish normally end a minor dispute by spraying ink everywhere! (Note this can also include the wall behind your tank!!!) '
01:18:59 <shachaf> haskell/12.12.22:01:09:30 <beaky> All programming languages were born to solve a problem. C was invented to port the UNIX operating system. Perl was designed as an awk killer to efficiently process text. Javascript was designed to implement interactive webpages. What was Haskell born to do?
01:19:04 <shachaf> Enough beaky.
01:20:13 <kmc> that one is... a fair question
01:20:14 <Bike> to port it
01:20:32 <Bike> I thought Haskell was born to make academics stop making up languages for two minutes?
01:20:32 <kmc> Haskell was born to unify research into lazy functional programming, that was happening in a variety of languages
01:20:35 <kmc> yeah
01:21:16 <kmc> back later, it's boxes & arrows time
01:21:24 <Bike> Of course in those terms Perl was designed to make scripting nicer for Wall and C was designed to build Spacewar
01:22:14 <shachaf> kmc: Boxes and arrows?
01:22:30 <Bike> 16:55 < kmc> it's environment diagrams day in zombie 6.001!!!!
01:22:31 <shachaf> Oh, Zombie 6.001.
01:22:56 <shachaf> Like http://www-mtl.mit.edu/~boning/ST96/rec16/more-env.html ?
01:23:02 <shachaf> i love environment diagrams
01:23:21 <Bike> wow, that's quite a diagram.
01:24:11 <shachaf> imo 28 color glossy photos with circles and arrows and a paragraph on the back of each one
01:25:10 <oerjan> @tell Gregor i think people may have forgot to tell you that HackEgo is down.
01:25:10 <lambdabot> Consider it noted.
01:28:56 <shachaf> Gregor: hi
01:29:01 <shachaf> HackEgo: DOWN
01:30:01 <oerjan> <Gregor> Sgeo: But once you've built something in the normal environment, extracting it and putting it into another image is somewhere between magic and time travel in terms of possibility. <-- so you are saying feather is the solution to smalltalk's problems?
01:31:01 -!- hagb4rd has quit (Ping timeout: 248 seconds).
01:32:30 <Gregor> Oy vey, WHY is HackEgo going down.
01:32:31 <lambdabot> Gregor: You have 1 new message. '/msg lambdabot @messages' to read it.
01:32:33 <Gregor> 4rlz
01:32:40 <Gregor> I blame elliott.
01:33:18 <lambdabot> i blame oerjan
01:33:50 <oerjan> but but i didn't think it would have such a big effect!
01:33:53 -!- HackEgo has joined.
01:34:23 -!- monqy has joined.
02:03:37 -!- FreeFull has quit.
02:05:27 <shachaf> @nixon
02:05:27 <lambdabot> You won't have Nixon to kick around anymore, because, gentlemen, this is my last press conference.
02:08:11 -!- WeThePeople has quit (Quit: Leaving).
02:09:27 <shachaf> There was a poem that said: "in 1492 jesus sailed the ocean blue"
02:09:34 <shachaf> I can't find it. What was it called?
02:09:52 -!- WeThePeople has joined.
02:10:01 <shachaf> `welcome WeThePeople
02:10:06 <HackEgo> WeThePeople: 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.)
02:10:06 <lambdabot> HackEgo: You have 3 new messages. '/msg lambdabot @messages' to read them.
02:10:10 <WeThePeople> i just rejoined
02:10:13 <shachaf> `echo @messages
02:10:14 <HackEgo> ​@messages
02:10:18 <shachaf> Hrm.
02:10:23 <shachaf> oerjan: How do you do it?
02:10:26 <WeThePeople> echo
02:10:33 <shachaf> How do you doerjan?
02:13:06 <oerjan> `echo lambdabot: @messages
02:13:07 <HackEgo> lambdabot: @messages
02:13:07 <lambdabot> shubshub asked 9m 7d 16h 53m 4s ago: hi
02:13:07 <lambdabot> nortti asked 9m 7d 10h 17m 45s ago: `date
02:13:07 <lambdabot> oerjan said 1h 24m 33s ago: `addquote <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
02:13:16 <oerjan> `addquote <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
02:13:19 <HackEgo> 918) <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
02:13:25 <oerjan> oops
02:13:28 <oerjan> `revert
02:13:30 <shachaf> oh no
02:13:31 <HackEgo> Done.
02:13:31 <shachaf> oerjan
02:13:35 <shachaf> `? quote
02:13:37 <HackEgo> Quotes are just elements of the quantum dilapidated bogosphere. See qdb.
02:13:37 <oerjan> `addquote <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
02:13:39 <shachaf> `? qdb
02:13:41 <HackEgo> 918) <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
02:13:42 <HackEgo> qdb is used like: `quote; `quote regexp; `quote id; `addquote ...; `delquote id; `pastequotes regexp; `pastenquotes [n]; see also qdbformat
02:13:45 <shachaf> `? qdbformat
02:13:47 <HackEgo> qdbformat is: <nick> message; * nick action; two spaces between messages; all elisions marked with [...] other than irrelevant intervening messages; for messages separated by elision, one space on each side, not two
02:14:03 <oerjan> shachaf: the double space got precisely over the line wrap, so it disappeared when i cut and pasted it
02:14:39 <oerjan> actually it's possible i never put it in...
02:14:53 <oerjan> hm no i did
02:15:31 * oerjan checks the logs
02:16:21 <shachaf> i love the qdb rules
02:16:23 <shachaf> they are so easy
02:16:46 <oerjan> elliott: logs confirm it: lambdabot @tell actually removes double spacing in what you send :P
02:17:15 <shachaf> @tell oerjan <shachaf> i love the qdb rules <shachaf> they are so easy
02:17:16 <lambdabot> Consider it noted.
02:17:54 <oerjan> @messages
02:17:54 <lambdabot> shachaf said 38s ago: <shachaf> i love the qdb rules <shachaf> they are so easy
02:18:03 <shachaf> lambdabot.................................................
02:18:12 <shachaf> @show hello there
02:18:12 <lambdabot> "hello there"
02:18:18 <shachaf> i h8 u
02:19:28 <shachaf> @remember beaky <beaky> i love monoids <beaky> they are so easy
02:19:28 <lambdabot> I will remember.
02:19:29 <shachaf> @quote beaky
02:19:29 <lambdabot> beaky says: <beaky> i love monoids <beaky> they are so easy
02:19:34 <shachaf> @forget beaky <beaky> i love monoids <beaky> they are so easy
02:19:34 <lambdabot> Done.
02:19:48 <shachaf> @quote shachaf
02:19:49 <lambdabot> shachaf says: GADT = Gratuitously Abstract Data Type
02:19:52 <shachaf> Huh?
02:19:55 <shachaf> Did I even say that?
02:20:48 <oerjan> @quote elliott i said
02:20:48 <lambdabot> No quotes match. Just what do you think you're doing Dave?
02:20:54 <Bike> "Furthermore I've always believed that Ubuntu was an NSA front from its very inception."
02:20:58 <shachaf> @quote elliott i.said
02:20:59 <lambdabot> No quotes match. I am sorry.
02:21:04 <oerjan> @quote elliott.*i said
02:21:04 <lambdabot> No quotes for this person. Just what do you think you're doing Dave?
02:21:28 <oerjan> SOME SCUM HAS BEEN REMOVING QUOTES
02:21:42 <Bike> @quote elli.*said
02:21:43 <lambdabot> No quotes match. I can't hear you -- I'm using the scrambler.
02:21:45 <shachaf> oerjan: Or maybe lambdabot crashed.
02:21:52 <shachaf> Bike, oerjan: that's not how @quote works......
02:22:05 <Bike> i was only following examplejan.
02:22:07 <shachaf> If @quote gets two arguments, the first is always treated as the name of the quotee.
02:24:17 <oerjan> shachaf: INCONCEIVABLE
02:24:25 <oerjan> O KAY
02:24:41 <oerjan> @quote elliott i.didn't
02:24:41 <lambdabot> No quotes match. My mind is going. I can feel it.
02:24:45 <oerjan> @quote elliott
02:24:46 <lambdabot> elliott says: |\/|/-\|-|-|=|\||} is my preferred mappend operator
02:25:52 <shachaf> |/\||-|()/-\ |}\/|}|=
02:25:57 <oerjan> today's sheldon is highly relevant to all this http://www.sheldoncomics.com/archive/130115.html
02:26:52 <Bike> i'm not sure what the intended point of that is. once again i am bad at jokes
02:27:24 <shachaf> imo i love jokes
02:27:27 <oerjan> i don't think it has a punchline
02:28:03 <Bike> like is the thing on the left supposed to be humorously anal? the thing on the right humorously bohemian? i can't tell, i can't
02:28:23 <shachaf> Left? Right?
02:28:27 <shachaf> What?
02:28:50 <Bike> the duck and the bemoustachioed thing.
02:29:21 <oerjan> bemoustachioed thing is known as "grampa", usually
02:30:01 <Bike> yes, this "grampa". what is the true nature of the "grampa"?
02:31:23 <oerjan> well he is not good with technical stuff. bit old and set in his ways.
02:32:01 <oerjan> arthur otoh is a rather geeky duck
02:34:42 <oerjan> also very narcissistic.
02:35:41 <oerjan> i think yesterday's strip shows that part of arthur better.
02:36:45 <Bike> ooh, slacktivism joke
02:42:12 <oerjan> sadly, the strip has less of its wacky adventures and more of its "bitch about what annoys the author today" these days.
02:42:57 <oerjan> i suspect it's not alone in this. /s
02:57:16 <kmc> shachaf: should I go to the Stripe drinkup in Cambridgema?
02:57:46 <kmc> <shachaf> imo 28 color glossy photos with circles and arrows and a paragraph on the back of each one
02:57:48 <kmc> yes this
02:57:49 <kmc> that is environment diagrams
02:59:52 <Sgeo> `list
02:59:53 <HackEgo> Taneb atriq Ngevd Fiora nortti alot
02:59:56 <Bike> kmc: https://www.youtube.com/watch?v=6o1fw9jtRNc
03:00:15 <shachaf> kmc: Well, do you like drinkingup?
03:00:41 <shachaf> And do you like Stripe people, I guess? I don't know.
03:01:16 <kmc> oh i would have to miss zombie 6.001 lecture
03:01:40 <shachaf> Zombie 6.001 sounds more interesting to me than Stripe.
03:01:51 <shachaf> alt. than drinkingup
03:05:06 <shachaf> kmc: You should arrange for a Zombie 6.001 to happen in Palo Alto!
03:05:17 <shachaf> make it a "global phenomenon??"
03:06:04 -!- DH____ has joined.
03:06:10 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:16:28 <kmc> mmm yes
03:25:21 -!- azaq23 has quit (Ping timeout: 276 seconds).
03:29:05 -!- Bike has quit (Ping timeout: 248 seconds).
03:30:32 -!- Bike has joined.
03:45:10 -!- azaq23 has joined.
03:45:21 -!- azaq23 has quit (Max SendQ exceeded).
03:45:23 -!- sebbu has joined.
03:45:23 -!- sebbu has quit (Changing host).
03:45:23 -!- sebbu has joined.
03:45:48 -!- azaq23 has joined.
03:46:45 -!- sebbu2 has quit (Ping timeout: 260 seconds).
04:23:52 <oerjan> (12)S(*a(~:)~*^~):((1)S)~*~((~aS:^):^(2)S:*)~*:(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
04:23:58 <oerjan> ^ul (12)S(*a(~:)~*^~):((1)S)~*~((~aS:^):^(2)S:*)~*:(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
04:23:59 <fungot> 12((1)S*a(~:)~*^~)()((1)S*a(~:)~*^~)((~aS:^):^(2)S:**a(~:)~*^~) ...out of stack!
04:36:17 <oerjan> ^ul ((io)S(t)~^( )S~:)((e)S(l)~^~:)(S)~^(:SS)~^(*a((((S)~^)~a*^)~a*^~:)~*^~)(:**a((((:SS)~^)~a*^)~a*^~:)~*^~):(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
04:36:17 <fungot> el ...out of stack!
04:36:47 <oerjan> ^ul ((io)S(t)~^( )S~:)((e)S(l)~^~:):(S)~^(:SS)~^(*a((((S)~^)~a*^)~a*^~:)~*^~)(:**a((((:SS)~^)~a*^)~a*^~:)~*^~):(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
04:36:48 <fungot> eliott elliot eliott eliott elliot elliott eliot elliot eliott elliot elliot eliott eliott elliot eliott eliot elliot elliott eliott elliot eliott eliott elliot elliot eliott eliot elliott eliott elliot eliott eliott elliot elliott eliot elliot eliott eliott elliot elliot eliott elliot elliott eliot elliot elliott eliott e ...too much output!
05:19:02 -!- TeruFSX has quit (Ping timeout: 256 seconds).
05:45:35 -!- rodgort has quit (Ping timeout: 260 seconds).
05:47:58 -!- rodgort has joined.
05:49:33 -!- hagb4rd has joined.
06:23:12 -!- DH____ has quit (Read error: Connection reset by peer).
06:23:18 -!- DHeadshot has joined.
06:29:50 <oerjan> ^def elikoski ul ((io)S(t)~^( )S~:)((e)S(l)~^~:):(S)~^(:SS)~^(*a((((S)~^)~a*^)~a*^~:)~*^~)(:**a((((:SS)~^)~a*^)~a*^~:)~*^~):(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
06:29:50 <fungot> Defined.
06:29:55 <oerjan> ^elikoski
06:29:56 <fungot> eliott elliot eliott eliott elliot elliott eliot elliot eliott elliot elliot eliott eliott elliot eliott eliot elliot elliott eliott elliot eliott eliott elliot elliot eliott eliot elliott eliott elliot eliott eliott elliot elliott eliot elliot eliott eliott elliot elliot eliott elliot elliott eliot elliot elliott eliott e ...too much output!
06:31:24 <ais523> 12 21 12 12 21 22 11 21 12 21 21 12 12 21 12 11 21 22 12 21 12 12 21 21 12 11 22 12 21 12 12 21 22 11 21 12 12 21 21 12 21 22 11 21 22 12
06:31:38 <Bike> look-and-say
06:31:43 <oerjan> no.
06:31:49 <ais523> it doesn't look like look-and-say
06:31:57 <oerjan> (12)S(*a(~:)~*^~):((1)S)~*~((2)S:*)~*:(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
06:32:02 <oerjan> ^ul (12)S(*a(~:)~*^~):((1)S)~*~((2)S:*)~*:(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
06:32:03 <fungot> 122112122122112112212112122112112122122112122121121122122112122122112112122121122122112122122112112212112122122112112122112112212112112212211212212112212212112112212211212212112112212112122112112122121122122112122122112112122112112212212112122112112212112112212212112122112112122122112122121121122122121122122112122122112112 ...too much output!
06:32:06 <Bike> it's not
06:32:12 <Bike> i just like look and say
06:32:20 <oerjan> oh in that case
06:32:40 <ais523> the pattern is far from obvious
06:32:54 <ais523> so I think oerjan fulfils the requirement of a PRNG that's sufficiently good to fool humans
06:32:54 <Bike> is this some q-series shit
06:33:04 <Bike> oh that
06:33:05 -!- copumpkin has quit (Ping timeout: 252 seconds).
06:33:37 -!- copumpkin has joined.
06:33:41 <ais523> Underload can be made to be readable
06:33:42 <oerjan> erm it _is_ already on the underload page, i just modified it to work with elliott's name
06:33:42 <ais523> buy that code isn't
06:33:44 <ais523> *but
06:34:00 <ais523> I didn't look there because looking there was too obvious :)
06:34:04 <fizzie> ais523: I don't know; I think I'm human, and I'm deeply suspicious of the fact there are no runs longer than two.
06:34:05 <myndzi> ha, i didn't even notice the difference
06:34:13 <ais523> fizzie: yeah, good point
06:34:19 <myndzi> (elliot / eliott etc)
06:34:24 <oerjan> ^ul ((::**)~^)((((:(((((((((((_)(9))(8))(7))(6))(5))(4))(3))(2))(1))(0)(!^))~*^^S!)(:a(~^)*~(()(~(~(:a~*):^))(a))~*^^)):^(()~)~**~^(:)~((a(~^)*~**)~a)~a(**~:((:)~(*)**)~a*~(^))**a(~*^^^!!^)***(~)~a(~a*^:)**a(:)**~^!!!a(~^)*~**)~a((, )S:^)**^):^
06:34:26 <fungot> 3, 13, 1113, 3113, 132113, 1113122113, 311311222113, 13211321322113, 1113122113121113222113, 31131122211311123113322113, 132113213221133112132123222113, 11131221131211132221232112111312111213322113, 31131122211311123113321112131221123113111231121123222113, 132113213221133112132123123112111311222112 ...out of time!
06:34:32 <oerjan> Bike: yw
06:34:39 <Bike> thanks
06:34:39 <ais523> Kolakoski sequence, apparently
06:34:46 <myndzi> i did this 'iq test' thing once with some interesting patterns in it
06:34:48 <shachaf> hi myndzi \o/
06:34:49 <myndzi> they were pretty hard
06:34:52 <shachaf> :-(
06:34:54 <myndzi> hi, also hard drive crash D:
06:34:59 <shachaf> Oh.
06:35:00 <myndzi> i lost my work-in-progress!
06:35:01 <fizzie> The Kokakolakoski sequence.
06:35:05 <myndzi> plan to fix it at some point
06:35:12 <myndzi> it was so much better too ;\
06:35:16 <shachaf> That reminds me, I should have, like, back ups and stuff.
06:35:16 <ais523> huh, apparently it's the second sequence in OEIS
06:35:25 <ais523> out of all the sequences that could be second, why that one?
06:35:27 * ais523 checks the first
06:35:33 -!- md_5 has quit (Ping timeout: 272 seconds).
06:35:34 <myndzi> i finally got a backup program going
06:35:38 <ais523> "number of groups of order n"
06:35:43 <myndzi> hmm actually, the script might have been on z:
06:36:00 <myndzi> http://www.allthetests.com/quiz18/quiz/1139060031/Very-Difficult-IQ-Test
06:36:02 <Bike> ais523: that's a fun sequence
06:36:03 <myndzi> ^ that's the one
06:36:10 <myndzi> in case anyone wants to have a whack at it
06:36:23 <ais523> Bike: it's strange how small the numbers are
06:36:50 <ais523> when there's only one group of a particular order, it's the cyclic group, right?
06:36:51 <Bike> iirc they get pretty bizarre a few dozen (hundred?) in
06:36:54 <Bike> yeah
06:37:02 <oerjan> ais523: for prime numbers there's only one, of course
06:37:05 <Bike> what with shit like the monster gruop and all
06:37:11 <oerjan> for powers of 2 there are ... a lot.
06:37:25 <Bike> i think i have a paper by conway on it somewhere, but i dunno what it's called
06:37:49 <oerjan> or so i hear. apparently the overwhelming majority of finite groups have power of 2 order
06:39:36 <Bike> ah, yeah, stuff like that 267 there
06:40:02 <Bike> "Counting groups: gnus, moas and other exotica." is probably the paper i was thinking of, gnu being the function in question
06:40:21 <oerjan> in fact i suspect the number will be 1 for precisely the primes and 1
06:41:12 -!- md_5 has joined.
06:41:22 <Bike> oerjan: 6?
06:41:36 <oerjan> oh wait i'm wrong, i see
06:41:49 <ais523> there's clearly only one degenerate group
06:41:54 <Bike> http://oeis.org/A000001/graph?png=1 wow, what
06:41:54 <oerjan> but 6 is not a counterexample
06:42:06 <ais523> just like there's only one degenerate semiring
06:42:07 <Bike> oh, shit, i got it backwards, sorry.
06:42:28 <ais523> (it has 0=1, and 0+0 = 0×0 = 0, and no elements but 0)
06:42:45 <ais523> I guess that's a full ring, actually
06:43:00 <oerjan> "a(pq) = 1 if gcd(p,q-1) = 1, 2 if gcd(p,q-1) = p. (p < q)"
06:43:00 <ais523> it has 0-0 = 0 and 0÷0 = 0 too
06:43:01 <Bike> 35 on the list
06:43:12 <shachaf> i love online integer sequences
06:43:18 <ais523> (I think you're allowed to divide by zero in rings, right? Or are you?)
06:43:19 <Bike> oh, 15 earlier.
06:43:49 <oerjan> 15 fits that rule yes
06:45:10 <ais523> yeah, for groups of order xy, you have the cyclic group, and the group of pairs (a,b) where a is from the cyclic group of order x, and b is from the cyclic group of order y
06:45:20 <ais523> so you have to have at least 2 for composite numbers
06:47:45 <oerjan> <Bike> "Counting groups: gnus, moas and other exotica." [...] <-- sounds like a popular math title, but conway has serious work in the field, some of the sporadic simple groups are named after him
06:48:30 <Bike> oerjan: uh? it's the name of a paper, it's not pop math
06:49:04 <oerjan> ...he names his serious papers like that?
06:49:13 <oerjan> well if anyone did it would have to be him.
06:49:31 <Bike> what's wrong with the name?
06:49:38 <Bike> gnu and moa are both acronyms iirc
06:49:49 <oerjan> THAT DOES NOT REALLY HELP
06:50:10 <Bike> oh, hey, i do have a pdf of it
06:50:18 <Bike> Group NUmber
06:50:33 <Bike> Minimal Order Attaining [a given group number]
06:50:57 <oerjan> ais523: no you are not allowed to divide by 0 in rings.
06:51:13 <Bike> also says: gnu(2048) > 1774274116992170. good to know!
06:51:23 <ais523> oerjan: hmm, that makes things a bit easier, then
06:51:31 <shachaf> The g-nicest work of g-nature in the zoo.
06:51:35 <ais523> well, the degenerate ring doesn't really care, it can divide by 0 just fine
06:51:41 <ais523> it just can't divide by anything else ;)
06:51:59 <oerjan> you're not really guaranteed to divide at all, mind you.
06:52:01 <shachaf> kmc: Did you know Mono gets Unicode even wronger than .NET?
06:52:05 <shachaf> Past UTF-16, that is.
06:52:05 <kmc> :(
06:52:08 <kmc> what does it do
06:52:18 <shachaf> https://github.com/mono/mono/blob/master/mcs/class/corlib/System/Char.cs#L406
06:52:27 <shachaf> Note that C# has a "char" type which is 16 bits.
06:52:44 <kmc> sigh
06:52:47 <shachaf> Every char function has a version that takes a char and a version that takes a string and an offset.
06:52:56 <shachaf> Apparently .NET gets this right, at least, so Mono is just not compliant.
06:54:15 <oerjan> ais523: no you don't have to have at least two for composite numbers, we found 15 is a counterexample. the thing is, if m and n are relatively prime, then your group of pairs is _isomorphic_ to the cyclic group.
06:54:29 <ais523> oerjan: oh right
06:54:38 <ais523> I was thinking it couldn't be, but my proof didn't work out
06:54:41 <ais523> yeah, obviously it is
06:56:12 <Bike> the paper cites a "more scholarly" book, called Enumeration of Finite Groups
06:57:06 <Bike> hm, looks like a cool read actually, maybe i should pretend to know cohomology so i can read it
06:57:35 <shachaf> cohomology is so easy Bike
06:57:36 <shachaf> i love it
06:57:59 <Bike> what is cohomology and how can i love it as much as you do
06:59:23 <oerjan> ais523: also any algebraic structure defined entirely by operations and equalities between them can be degenerate. fields are not among those because they have the rule that division only needs to exist when not by 0, and moreover they require 0 /= 1 explicitly just to be sure.
06:59:57 <ais523> how boring
07:00:04 <oerjan> semigroups, monoids, groups, rings all are defined solely by operations and equalities.
07:00:51 <oerjan> ais523: however http://en.wikipedia.org/wiki/Field_with_one_element
07:00:58 -!- monqy has quit (Quit: hello).
07:01:35 <Bike> "This object is denoted F_1, or, in a French–English pun, F_un." shachaf, is this your secret
07:01:37 * oerjan nearly knows cohomology *MWAHAHAHA*
07:01:46 <Bike> what is cohomology? is it fun
07:02:02 <oerjan> (actually used _homology_ in a paper.)
07:02:05 <ais523> I think you can have a category with /no/ elements, can't you?
07:02:16 <oerjan> *objects
07:02:16 <ais523> although many sorts of structure, you can't have on such a category
07:02:23 <ais523> oerjan: no objects /and/ no arrows ;)
07:02:29 <shachaf> oerjan: You write papers?
07:02:36 <oerjan> um you cannot have arrows without objects :P
07:02:51 <oerjan> (unless you go for an entirely object-free formulation)
07:03:10 <oerjan> shachaf: i did, way back
07:03:19 <shachaf> is it good
07:04:47 <oerjan> shachaf: this one http://journals.impan.pl/cgi-bin/doi?fm177-1-2
07:05:23 <shachaf> oerjan: Should I pay $10 for that?
07:05:47 <oerjan> doubtful :)
07:10:14 <oklopol> i just know homotopy :(
07:10:28 <Bike> what about cohomotopy?
07:10:40 <shachaf> I once read the first 3 pages of a topology book.
07:11:01 <shachaf> I learned what open and closed sets were!
07:11:07 <oklopol> i don't know anything about cohomotopy
07:11:24 <Bike> do you know if it exists? i'm kind of curious now
07:11:36 <Bike> oh it does
07:11:42 <oklopol> open sets of a topology T are the sets in T.
07:11:44 <Bike> or not really but whatever
07:11:44 <oklopol> much to learn
07:11:52 <shachaf> oklopol: Right.
07:11:54 <oklopol> i don't know what it would mean really
07:11:58 <oklopol> cohomotopy, that is
07:12:01 <shachaf> I once went to a talk about homotopy type theory.
07:12:13 <Bike> "In mathematics, particularly algebraic topology, cohomotopy sets are particular contravariant functors from the category of pointed topological spaces and point-preserving continuous maps to the category of sets and functions"
07:12:15 <oklopol> just like i don't know what cohomeomorphism means
07:12:57 <oklopol> we have a paper about... applied homotopy type theory or something
07:13:09 <oklopol> but i don't really know much about that stuff
07:13:50 <oklopol> also i don't see how what Bike says is related to homotopy :/
07:14:03 <Bike> I guaranatee that I see such even less.
07:14:37 <oklopol> well i know the definitions of the words used
07:14:48 <oklopol> so i'm just too stupid
07:14:49 <Bike> See, there you go.
07:15:50 <oklopol> wonder how important the "particular" is
07:16:22 <oklopol> i'm on a topology course which promises to emphasize homotopy stuff so maybe i'll know in half a year
07:16:25 <Bike> is it? i thought it just meant cohomotopy sets are mostly used by algebraic topology people
07:16:41 <oklopol> the other particular
07:16:42 <oklopol> particular contravariant functors
07:16:49 <Bike> oh durr
07:17:12 <oklopol> that's probably where the actual important stuff is, this is just the type
07:28:15 -!- WeThePeople has quit (Quit: Leaving).
07:49:59 -!- hagb4rd has quit (Ping timeout: 256 seconds).
07:55:21 -!- azaq23 has quit (Quit: Leaving.).
08:10:07 -!- oerjan has quit (Quit: leaving).
08:14:40 <Sgeo> Well, that's nice
08:14:49 <Sgeo> Helped someone with a problem they were having in Factor
08:15:09 <Sgeo> Turns out they needed to use a library that defined a method
08:15:31 <Sgeo> Which... seems unintuitive that the system isn't smart enough to look for the definition and suggest the vocab in question
08:17:59 -!- epicmonkey has joined.
08:35:59 -!- sebbu has quit (Read error: Connection reset by peer).
08:36:26 -!- sebbu has joined.
08:38:49 <elliott> "By the way, you heard of the guy who applied to the monad police? They said they already had a unit, but they could be joined if he wanted."
08:39:53 <Bike> hey elliott, just wanted to say you were right about poppavic even though you didn't actually say anything. so good job there.
08:40:07 <Sgeo> `list
08:40:10 <elliott> Bike: hahaha
08:40:10 <HackEgo> Taneb atriq Ngevd Fiora nortti alot
08:42:41 <Bike> who is alot
08:43:12 <shachaf> hi Bike
08:43:18 <shachaf> why are yoa awake
08:43:51 <Bike> Yoa?
08:44:24 <shachaf> yoa = Bike
08:45:20 <Bike> Oh. I forget.
08:45:36 <Bike> I think I was reading earlier but right now I'm just kind of looking at the air. (It's nice today.)
08:46:17 <shachaf> #esoteric ≠ the air
08:46:27 <shachaf> Whom were you reading?
08:46:53 <ais523> wow, that use of "whom" sounds wrong even though it's technically correct
08:46:58 <ais523> I think my brain dislikes it at the start of a sentence
08:47:33 <Bike> are you preying on my sleepless brain by trying to make me decide whether to assume you were assuming that question makes sense for whatever it was i was reading?
08:48:18 <shachaf> I don't understand your question.
08:48:21 <shachaf> But sure.
08:48:24 <shachaf> Whom, or what.
08:48:34 <Bike> charles c sims, apparently.
08:49:09 <Bike> using the "if I click enough links I will know things" strategy of autodidacticism
08:52:15 <Bike> why?
08:53:28 -!- DHeadshot has quit (Ping timeout: 245 seconds).
08:54:47 -!- DHeadshot has joined.
09:05:02 -!- dessos has joined.
09:05:35 <c00kiemon5ter> PoppaVic is Forther btw
09:05:56 <Bike> I don't know who that is either. am i cursed?
09:07:04 <c00kiemon5ter> which ?
09:07:14 <Bike> forther
09:07:32 <c00kiemon5ter> ah :P
09:07:59 <c00kiemon5ter> PoppaVic is a Forther btw
09:08:29 <Bike> oh. so he's in ##c out of contempt, or what?
09:08:48 <c00kiemon5ter> dunno, but he's active on #forth too
09:09:31 <Bike> ah.
09:19:58 -!- ais523 has quit.
09:25:10 -!- Bike has quit (Quit: well, ok).
09:25:55 -!- DHeadshot has quit (Read error: Connection reset by peer).
09:38:11 <Sgeo> Here's a thought: Selectors as objects that accept value:
09:38:53 <Sgeo> So #foobar would be similar to [:s | s foobar ]
09:38:56 <Sgeo> For example
09:39:14 <Sgeo> Hmm, may be better to do something like #foobar asBlock instead
09:39:50 <Sgeo> Oh.... uh
09:40:39 <Sgeo> {1. 2. 3.} collect: #asString
09:40:43 <Sgeo> That works just fine in Pharo
09:43:17 <Sgeo> Doesn't work with keyword or binary selectors I think
09:43:28 -!- carado has joined.
09:44:12 <Sgeo> `welcome carado
09:44:14 <HackEgo> carado: 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.)
09:51:17 -!- Nisstyre has quit (Ping timeout: 248 seconds).
10:03:52 -!- Nisstyre has joined.
10:09:18 -!- epicmonkey has quit (Ping timeout: 245 seconds).
10:23:51 <c00kiemon5ter> hey, can someone send a NOTICE ?
10:24:19 -!- omomomom has joined.
10:25:32 -!- omomomom has quit (Quit: omomomom).
10:26:52 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
10:27:06 -!- c00kiemon5ter has joined.
10:29:28 -!- c00kiemon5ter has quit (Client Quit).
10:58:12 -!- c00kiemon5ter has joined.
11:01:13 -!- sebbu2 has joined.
11:01:30 -!- sebbu2 has quit (Changing host).
11:01:30 -!- sebbu2 has joined.
11:02:36 -!- sebbu has quit (Ping timeout: 255 seconds).
11:17:16 -!- epicmonkey has joined.
11:17:25 -!- Phantom_Hoover has joined.
11:46:30 -!- Phantom_Hoover has quit (Read error: Operation timed out).
11:55:45 -!- sebbu2 has changed nick to sebbu.
12:08:43 -!- ogrom has joined.
12:08:54 -!- ogrom has quit (Client Quit).
12:13:54 -!- Phantom_Hoover has joined.
12:53:13 -!- Nisstyre has quit (Ping timeout: 252 seconds).
13:07:42 -!- Nisstyre has joined.
13:29:48 -!- impomatic has joined.
14:10:37 -!- boily has joined.
14:23:56 -!- carado has quit (Ping timeout: 246 seconds).
14:25:44 <Phantom_Hoover> `quote hugs
14:25:46 <HackEgo> No output.
14:25:50 <Phantom_Hoover> `quote hug
14:25:52 <HackEgo> 241) <nddrylliog> back to legal tender, that expression really makes me daydream. Like, there'd be black-market tender. Out-of-town hug shops where people exchange tenderness you've NEVER SEEN BEFORE. \ 346) [after a long string of Lymia getting lambdabot to spit out huge, meaningless type signatures] <Lymia> I need to learn more Haskell... <CakeP
14:27:13 -!- oerjan has joined.
14:30:09 <elliott> oerjan: BEWARE.
14:32:26 <oerjan> EEK
14:32:48 <fizzie> No, that's being frightened, not wary.
14:32:54 <oerjan> oh.
14:34:48 <oerjan> 00:07:10: <shachaf> y'all hate PHP too much imo
14:34:48 <oerjan> 00:07:11: <shachaf> i love it
14:34:48 <oerjan> 00:07:13: <shachaf> it is so easy
14:34:54 <oerjan> YOU HAVE GONE TOO FAR NOW
14:35:16 <coppro> the best sex is hard to et
14:35:17 <coppro> *get
14:37:24 <oerjan> <copumpkin> facile?
14:37:33 <oerjan> E' Così Facile
14:44:01 <elliott> oerjan: shachaf is just an aim hecker.
14:45:25 -!- WeThePeople has joined.
14:45:39 <oerjan> ^elikoski
14:45:40 <fungot> eliott elliot eliott eliott elliot elliott eliot elliot eliott elliot elliot eliott eliott elliot eliott eliot elliot elliott eliott elliot eliott eliott elliot elliot eliott eliot elliott eliott elliot eliott eliott elliot elliott eliot elliot eliott eliott elliot elliot eliott elliot elliott eliot elliot elliott eliott e ...too much output!
14:46:02 <oerjan> unless that was what i should beware about
14:46:30 <elliott> waht
14:47:20 <oerjan> i note that all relevant google hits for "aim hecker" is this channel.
14:47:27 <oerjan> `log aim hecker (
14:47:29 <HackEgo> grep: missing )
14:47:35 <oerjan> `log aim hecker [(]
14:47:49 <elliott> [(]?
14:48:02 <HackEgo> 2012-04-14.txt:05:41:15: <kmc> aim hecker (n): when ur dronk and u pee so bad all over the toilet that ppl make fun of u
14:48:15 <elliott> right
14:48:39 <elliott> oerjan: you will have to read a very long log to find out.
14:48:45 <oerjan> OKAY
14:48:59 <Sgeo> Fun fact, in Pharo, #foobar can be used almost but not quite like a function of one argument
14:49:09 <Sgeo> {1. 2. 3.} collect: #asString is valid
14:49:21 <oerjan> although i suspect/half recall it's a misspelling of "AIM hacker"
14:49:35 <elliott> it is
14:50:37 <elliott> 05:44:36: <zzo38> I don't want you to put anything down my pants either (whether it is scorpions or not)
14:50:40 <elliott> zzo wisdom from the past
15:00:19 -!- FreeFull has joined.
15:00:25 <fizzie> ^save
15:00:25 <fungot> OK.
15:00:36 <fizzie> (I see important things had been added.)
15:00:52 <Sgeo> Some Smalltalkers are idiots.
15:01:34 <oerjan> fizzie: thanks :P
15:13:28 -!- boily has quit (Quit: Poulet!).
15:13:45 <elliott> Sgeo: thanks
15:14:12 -!- boily has joined.
15:15:04 -!- sirdancealot has quit (Ping timeout: 240 seconds).
15:25:02 -!- copumpkin has quit (Ping timeout: 256 seconds).
15:25:32 -!- copumpkin has joined.
15:47:27 <Sgeo> "Replace the current anti-bot feature with an arbitrary question that only a human can answer."
15:47:31 <Sgeo> http://www.reddit.com/r/ideasfortheadmins/comments/16neyr/changing_the_antibot_feature_used_to_protect/
15:47:35 * Sgeo facepalms
15:49:06 <oerjan> hey don't be so hard on the guy, it cannot be easy to have just awoken from a 10-year coma.
15:51:36 <oerjan> his attempts to explain what kind of question that should be only makes it worse :P
15:52:09 -!- 92AAB0P69 has joined.
15:53:17 <oerjan> 92AAB0P69: why, you look positively alphanumeric today!
15:58:32 <boily> 92AAB0P69: P?
16:00:00 -!- 92AAB0P69 has quit (Ping timeout: 260 seconds).
16:29:36 -!- Nisstyre-laptop has joined.
16:38:15 -!- Vorpal has joined.
16:38:22 -!- carado has joined.
16:43:06 -!- epicmonkey has quit (Ping timeout: 252 seconds).
16:50:45 -!- TeruFSX has joined.
16:52:23 -!- copumpkin has quit (Ping timeout: 252 seconds).
16:52:55 -!- copumpkin has joined.
16:56:20 <Sgeo> Maybe IDEs should be as easy to modify as languages
16:56:28 <Sgeo> Write a language extension, the IDE somehow changes to match
16:56:43 <Sgeo> I have no idea how that could possibly work
16:56:43 <coppro> Sgeo: glwt
16:58:50 <Vorpal> Suggestions for a lightweight MTA for local mail only? Basically needs to handle stuff from cron scripts. Nothing else.
16:59:32 <Phantom_Hoover> Sgeo, you are turning into peter molydeux
16:59:44 <Vorpal> <Sgeo> Maybe IDEs should be as easy to modify as languages <-- emacs?
17:00:16 * Sgeo has no idea who peter molydeux is
17:00:35 <Vorpal> Phantom_Hoover, the real or the fake one?
17:01:05 <Phantom_Hoover> Sgeo, https://twitter.com/PeterMolydeux
17:01:49 <Sgeo> "Game where the only enemy is you. You're going to jump off a cliff. Exit your body as your soul and talk your body into not jumping."
17:02:00 <Sgeo> Isn't Planeside: Eternal Torment a bit self-fighting?
17:02:22 <Vorpal> Sgeo, ...
17:02:44 <Phantom_Hoover> Sgeo you have outdone yourself
17:03:00 <Sgeo> I don't want to say more because I think spoilers
17:03:13 <Vorpal> did you mean "Planescape: Torment" maybe? And no, it isn't really like that. In fact it is not at all like that.
17:03:48 <elliott> "Professional" "tip": There isn't a real Peter Molydeux.
17:03:58 <Vorpal> :D
17:04:11 <elliott> (The real person is called "Molyneux".)
17:04:16 <elliott> (Not that there's a real Peter Molyneux either.)
17:04:40 <Sgeo> V inthryl erpnyy gung gurer'f nccneragyl n cneg jurer lbh qrongr... fbzr cneg bs lbhefrys? Pna pbaivapr lbhe... zbegnyvgl, V guvax? gb qb fbzrguvat?
17:04:47 <Phantom_Hoover> uh
17:05:27 <elliott> v ogdfg grjegnrgfg r'fregre
17:05:52 <Sgeo> Fperj lbh ryyvbgg
17:06:10 <elliott> dfgkldfjg
17:06:23 <Vorpal> ^rot13 ryyvbgg
17:06:24 <fungot> elliott
17:06:26 <Vorpal> ah
17:06:33 <Vorpal> ^rot13 V inthryl erpnyy gung gurer'f nccneragyl n cneg jurer lbh qrongr... fbzr cneg bs lbhefrys? Pna pbaivapr lbhe... zbegnyvgl, V guvax? gb qb fbzrguvat?
17:06:34 <fungot> I vaguely recall that there's apparently a part where you debate... some part of yourself? Can convince your... mortality, I think? to do something?
17:06:47 <Vorpal> right
17:07:04 <Vorpal> ^rot13 Fperj lbh ryyvbgg
17:07:04 <fungot> Screw you elliott
17:07:16 <Vorpal> ^rot13 v ogdfg grjegnrgfg r'fregre
17:07:16 <fungot> i btqst tewrtaetst e'serter
17:07:21 <Vorpal> elliott, heh
17:13:09 -!- oerjan has quit (Quit: eek, spoilers!).
17:19:58 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
17:20:15 -!- c00kiemon5ter has joined.
17:20:48 -!- c00kiemon5ter has quit (Client Quit).
17:22:17 <tswett> "Definition: a singular line rho is linear if the Riemann hypothesis holds."
17:23:28 -!- Bike_ has joined.
17:29:36 -!- Bike_ has changed nick to Bike.
17:30:26 -!- c00kiemon5ter has joined.
17:54:35 -!- epicmonkey has joined.
18:06:43 -!- Nisstyre-laptop has quit (Ping timeout: 252 seconds).
18:17:25 -!- Nisstyre-laptop has joined.
18:28:42 <kmc> Sgeo: oh eclipse has something like that
18:29:36 <kmc> http://www.eclipse.org/Xtext/
18:30:14 <Sgeo> o.O
18:31:10 <kmc> makes it easy to implement custom JVM-based languages with full Eclipse tool support
18:37:34 -!- augur has quit (Remote host closed the connection).
18:47:50 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
18:47:55 * FreeFull doesn't see the point of IDEs
18:55:46 <kmc> code is more than text; it's structured machine-readable information
18:56:21 <kmc> your editor should be aware of that information to help you edit, by autocompleting names, displaying types, displaying compiler errors, etc
18:56:34 <Sgeo> Autocompletion in Smalltalk kind of sucks
18:56:36 <kmc> these are helpful things
18:56:38 -!- Taneb has joined.
18:57:22 <kmc> the people who disparage IDEs often have Vim or Emacs configured to do basically the same kinds of things
18:58:02 <kmc> FreeFull: have you seen the Agda integration for Emacs? It can do really cool things like "tell me the type of the expression I would need to put where my cursor is"
18:58:06 <Bike> does emacs (with appropriate modes) not consitute an IDE somehow?
18:58:22 <kmc> in fact you can have multiple of thees "holes" and still typecheck your code around them
18:58:24 <Bike> people seem to sometimes act like it doesn't
18:58:28 <kmc> Bike: i think it does essentially
18:59:02 <Bike> "haha fools i don't use an IDE, I just have thirty .el files"
19:00:50 <kmc> it's just more Real Hackers us vs. them nonsense
19:00:57 <Sgeo> It's an IDE that seems more confusing to me than Smalltalk's IDE
19:01:10 <FreeFull> I just use vim with few plugins
19:01:20 <FreeFull> I don't even have that haskell integration plugin
19:01:36 <kmc> FreeFull: you can also write a function's type signature, and then ask it to automatically populate a pattern-matching case for each constructor of the argument type
19:01:39 <FreeFull> I just run ghci alongside
19:02:25 <kmc> like if I write "f :: Maybe [Int]" i can get it to write "f Nothing = ...; f (Just []) = ...; f (Just (x:xs)) = ..." with a few keystrokes
19:02:32 <kmc> or rather the equivalent in Agda syntax
19:02:55 <Bike> Sgeo: it's old and crufty, probably much more so than any popular smalltalk system
19:02:56 <FreeFull> kmc: Would that work for a function like odd [] = []; odd x:[] = x:[]; odd x:_:xs = x:odd xs;
19:03:15 <kmc> i think so
19:03:28 <FreeFull> Woops, add brackets
19:03:29 <kmc> it would give you [] and (x:xs) to start with, and then you have to say that you want to expand xs again
19:03:29 <Bike> Sgeo: when i tried squeak i thought it was very confusing, but i bet if i kept at it i'd be able to figure it out as much as i've figured out emacs.
19:03:46 <kmc> anyway I also don't use IDEs or fancy editor modes, but I wouldn't say I don't see the point of them
19:04:06 <FreeFull> I just don't see how it would actually help me
19:04:07 <kmc> it's more like I don't find the benefits compelling enough to override my essential laziness
19:04:16 <Sgeo> Bike, I think Pharo may be less confusing than Squeak
19:04:22 <kmc> well a simple example, isn't it helpful to have your editor jump automatically to the point of a compiler error
19:04:43 <Bike> Sgeo: does pharo look less like an aliased 90s toy
19:04:56 <Sgeo> Bike, it looks nothing like an aliased 90s toy
19:05:00 <Bike> cool
19:05:04 <Sgeo> It still looks nonnative though
19:05:07 <Bike> maybe i'll try it sometime
19:05:19 <Bike> nonnative? i'm not exactly expecting eclipse here
19:05:38 <Sgeo> http://www.pharo-project.org/about/screenshots
19:06:56 <Bike> oh yeah, that looks way better
19:07:21 * Bike shallow
19:07:30 <Sgeo> There's a theming thing actually
19:08:00 <Sgeo> Blue Pharo; Orange Pharo; Pharo; Standard Squeak; Vistary; W2K; Watery; Watery 2
19:08:32 <Bike> does it do the thing where you click a window and buttons come up on the borders? that was really weird for me
19:08:44 -!- Nisstyre-laptop has quit (Quit: Leaving).
19:08:55 <Sgeo> It does not
19:09:08 <Sgeo> I think there's supposed to be a key to press at the same time to get that, not sure
19:10:51 <Sgeo> Hmm, can't figure it out
19:11:20 <Bike> eh,i assume they have tutorials or something anyhow
19:11:32 <FreeFull> kmc: Assuming that spot is where the actual problem is
19:11:48 <Sgeo> Alt-Shift-Middle mouse
19:11:59 <FreeFull> Sometimes the compiler doesn't catch on that something is wrong until it's a bit further down
19:11:59 <Bike> i don't have a middle mouse D:
19:12:02 <kmc> sure
19:12:06 <kmc> but sometimes it does
19:12:12 <Sgeo> alt-shift-left+right
19:12:13 <FreeFull> Bike: XD
19:12:14 <Sgeo> Also works
19:12:18 <kmc> i mean when you see an error message, don't you manually go to that line in most cases, anyway?
19:12:35 <kmc> having a keypress in the editor to jump there isn't going to slow you down
19:13:25 <Sgeo> Uh
19:13:34 <Sgeo> I think morphs don't quite work as I was expecting them to
19:13:47 <Sgeo> I managed to rotate the title bar of the welcome thing
19:13:47 <Vorpal> <FreeFull> Sometimes the compiler doesn't catch on that something is wrong until it's a bit further down <-- if you are dealing with C, then clang is usually quite good at finding the right spot
19:14:12 <kmc> you can't argue that integration is useless by pointing out that it's not perfect and can't read your mind
19:17:17 -!- augur has joined.
19:17:50 <FreeFull> Does the integration still provide you with a repl?
19:18:28 <FreeFull> I often find myself writing the function I need in ghci before copying it over to my editor and doing indentation and stuff
19:18:45 <Bike> most emacs modes have repls
19:18:54 <Bike> if the language is reasonable for that, i mean
19:19:03 -!- ais523 has joined.
19:19:09 <FreeFull> I did see C repls before
19:19:14 <FreeFull> Not integrated ones though
19:19:21 <kmc> sometimes i use GDB as a C repl
19:19:22 * Sgeo wonders pros/cons of Smalltalk Workspaces vs REPLs
19:19:32 <Bike> yeah, i'm sure you could get a c repl too, but you'd probably have to install more than vanilla c-mode to get one.
19:20:21 <Bike> FreeFull: also, using emacs my usual "workflow" is writing things in the editor, and then using IDE functions to send it interactively to the language implementation. i could do as you say, but this way is more natural for me.
19:20:26 <Vorpal> kmc, that is a very crippled one though
19:20:39 <Bike> and then while i'm writing in the editor i can test small things out in the repl and so on
19:21:05 <Bike> Sgeo: presumably pros include being able to inspect objects and shit all over the place, and cons include not being super easy to understand?
19:22:05 <Sgeo> REPLs don't really preclude Smalltalk-style inspecting, I think. I'm thinking more of writing code on multiple lines without it executing until told
19:22:19 <Bike> what kind of repl doesn't let you do that
19:22:23 <Sgeo> Bike, (btw, by Workspace, I mean a specific kind of interaction within the Smalltalk environment)
19:22:31 <kmc> software that lets you shit all over the place
19:22:47 <Bike> Sgeo: yes, i'm guessing at what that specific interaction is from my minimal experience with smalltalk.
19:23:18 <Bike> in my ide the inspector is a separate thing from the repl, though you can get to one from the other. the repl is just, well, read-eval-print.
19:23:29 <FreeFull> Bike: "Ok, I just wrote this function, let's feed it a couple different parameters to see how well it works"
19:23:40 <Bike> FreeFull: yeah, all the time
19:24:40 <Sgeo> Cons of workspace: Editing previous text by backtracking rather than just pressing up arrow
19:24:50 <FreeFull> I think that if you find youself needing to inspect everything at multiple levels rather than just reading the code and getting it, something might be too complex somewhere
19:25:13 <Bike> i don't personally use the inspector much, but i can see why someone would want it.
19:25:36 <kmc> i built my house with only a hammer, if you need power tools to build a house then your house is too fancy
19:26:19 <Bike> that just reminds me of the unix=nightmare power drill analogy D:
19:26:34 <kmc> a powerful gun that shoots forwards and backwards at the same time
19:26:52 <Bike> a recoilless rifle?
19:26:55 <FreeFull> kmc: Maybe if the goal was to build the smallest, simplest house that had full functionality and was easy to keep up
19:27:14 <kmc> 'full functionality' is a tricky one FreeFull
19:27:34 <Bike> if reading blogs has taught me anything it's that programmers have no fucking clue what the best way to write software is
19:27:52 <kmc> yes
19:28:11 <kmc> but we all think we do
19:28:20 <Bike> so i don't much see the point in begrudging someone else's methods
19:28:57 <Bike> i mean i hate using eclipse, but if someone uses it all the time and writes cool programs then more power to 'em
19:28:57 <kmc> we have totally untested unscientific theories that just happen to confirm our prejudices
19:29:18 <Bike> is there even ay good reasearch on ide design?
19:29:21 <FreeFull> kmc: Modularity helps, as long as it doesn't mean building lots of framework code
19:29:35 <kmc> FreeFull: it's not about absolute can and can't either; some tools allow you to work faster or with fewer mistakes
19:29:36 <Bike> maybe there's more of that in smalltalk-world
19:29:46 <kmc> you can always *get by* without good tools
19:29:55 <kmc> you can build the world's most popular social network using PHP and chewing gum
19:30:16 <FreeFull> kmc: Pure functional programming allows me to work with fewer mistakes. I don't know if it's faster or not though, I spend more time thinking
19:30:58 <FreeFull> kmc: They had to build a custom PHP compiler AFAIK to deal with scaling concerns
19:31:00 <kmc> you can fly a rocketship to the moon using 2,800 individual dual NOR gate ICs
19:31:04 <FreeFull> I don't know what they use now
19:31:11 <Bike> fewer mistakes than what? do you have a real basis of comparison? have you done lots of programming in java or what have you?
19:31:46 <Sgeo> 'New ProcessSchedulers should not be created since
19:31:46 <Sgeo> the integrity of the system depends on a unique scheduler'
19:31:46 <FreeFull> Bike: Than C
19:31:48 <Sgeo> MUAHAHHA
19:31:56 <FreeFull> I'm never touching Java
19:32:07 <kmc> FreeFull: C is an extremely low level language
19:32:25 <kmc> it's not like pure functional languages are the only high level languages
19:32:31 <FreeFull> kmc: I've written assembly too
19:32:38 <kmc> is that relevant?
19:32:41 -!- sebbu has quit (Ping timeout: 256 seconds).
19:32:45 <FreeFull> Well, it's even lower :)
19:32:50 <kmc> so, no
19:32:54 <FreeFull> I just like having the compiler shout at me
19:33:04 <Bike> it's ok if you do
19:33:12 <Bike> just treat it as a preference more than as an iron objective law
19:33:59 <FreeFull> I also like not being given the chance to make a lot of mistakes unless I explicitly try to do something special
19:34:46 <Bike> i personally like programming in dynamic(ally typed) systems, but i'd be a fool to say haskell is pointless or whatever
19:35:14 <kmc> FreeFull: I kind of agree with your specific points, but your mode of argument is not intellectually sound
19:35:15 <FreeFull> Dynamic systems do allow you to just get the job done and over with
19:35:20 <Sgeo> It's easy to (deliberately) segfault Pharo
19:35:43 <kmc> if you go to #haskell you will find many people eager to engage in this particular circlejerk
19:35:52 <FreeFull> I segfaulted haskell programs before =P. I don't think anything is segfault proof if you're trying
19:36:13 <Bike> you could program in a system with no segmentation hth
19:36:24 <kmc> yeah my AVR programs never segfault!
19:36:24 <Sgeo> There are probably easier segfaults than the one I just did, which involved deleting a method first
19:36:25 <kmc> take that
19:36:25 <ais523> yeah, can't segfault in DOS
19:36:29 <FreeFull> Unless you trap SIGSEGV
19:36:48 <ais523> err, 16-bit DOS
19:36:49 -!- sebbu has joined.
19:36:51 <ais523> 32-bit DOS can segfault
19:36:55 <kmc> FreeFull: even then, a segfault has occurred
19:37:06 <FreeFull> Well, I guess if you have no memory protection
19:37:19 <FreeFull> You just overwrite memory, and it might do something bad, it might not
19:37:28 <kmc> also 'segfault' is a bad name on x86 because the faults almost always come from paging, not segmentation
19:37:39 <Bike> yeah that too but i know shit all about paging so
19:37:46 <Sgeo> What happens if I add an instance variable to ProtoObject
19:37:50 <kmc> likewise SIGFPE 'Floating point exception' is almost never floating point related
19:37:57 <Bike> maybe i should try one of them fancy one-memory-address-space or capability-based or whatever systems
19:37:58 -!- monqy has joined.
19:37:59 <Bike> kmc: really?
19:38:11 <kmc> you get it for integer divide by zero, and at least one other integer error that I'll see if anyone can come up with :)
19:38:12 <FreeFull> kmc: Doesn't integer division by 0 generate a SIGFPE
19:38:30 <FreeFull> Of course floating point division will just give you a NaN
19:38:32 <Sgeo> It complains that ProtoObject inherits from ProtoObject
19:38:33 <Bike> oh, right
19:38:35 <FreeFull> Or Inf
19:38:40 <Sgeo> I ... guess I can't change the definition so easily?
19:39:00 <Bike> Of course floating point division will just give you a NaN <-- no, you can set it up to trap
19:39:14 <FreeFull> Bike: Well, in a default setting then
19:39:37 <Bike> isn't whether NaNs arising is default imp-defined
19:39:50 <Bike> imp. of ieee floats i mean
19:41:37 <Sgeo> Oh dear god there is a debate in the middle of this piece of documentation
19:41:41 <Sgeo> In the Pharo system
19:41:53 <Bike> nice, i love that (i hate that)
19:42:41 <FreeFull> Is it like the haskell.org debate pages, but less organised?
19:43:23 <Sgeo> Lemme pastebin it
19:44:03 <Sgeo> It's like a Wiki debate
19:44:31 <Sgeo> https://gist.github.com/359a07f93add3c865b3f
19:44:42 <Sgeo> Hmm, maybe it isn't actually a debate, it looked a little like one though
19:44:48 <Sgeo> "Can you give me an example that demonstrates the usefulness of this
19:44:48 <Sgeo> feature?"
19:45:33 <Bike> What's ProtoObject for?
19:46:10 <Sgeo> Things where you don't really want a full Object with all of its hugeness.
19:46:11 <FreeFull> Maybe it could be rephrased
19:46:24 <Sgeo> Say, if you want to make something that acts as a proxy for another object
19:46:42 <Sgeo> Passing messages onto that other object
19:46:44 <Bike> Oh, makes sense. It does seem like Object hasa lot.
19:47:02 <Bike> «one *can* use fractions or floats as indices» well then
19:47:03 -!- c00kiemon5ter has joined.
19:47:54 <Sgeo> {1. 2. 3.} at: 1.7
19:47:57 <Sgeo> That gives me 1
19:48:06 <Bike> 1-indexed arrays too?
19:48:08 <Sgeo> yes
19:48:30 <Bike> need an APLtalk environment
19:49:53 <Bike> "the integers are simply a subset of the reals", what a nice thought.
19:50:43 <Taneb> That's... mathematically true, and probably stupid in a programming context
19:51:27 <Bike> It's problematic. E.g. it's a lot harder to implement factorial on reals than on (positive) integers, and having it on reals isn't as useful.
19:51:44 <FreeFull> Haskell doesn't seem to have a power function that takes a ratio as the index
19:51:49 <kmc> in JavaScript the integers are a subset of the floats
19:51:59 <Bike> I thought in javascript you didn't have integers?
19:52:28 <FreeFull> Javascript has floats that sometimes act as integers
19:52:34 <Bike> well, actually I have no idea how you'd implement factorial on reals. floats, maybe
19:52:46 <FreeFull> So you can still do boolean operations and stuff
19:52:59 <Bike> wait, what do booleans have to do with anything.
19:53:04 <Sgeo> Isn't that what that function does? Gamma or Zeta? The one in that theorem
19:53:10 <Bike> gamma function, yes.
19:53:11 <Sgeo> Erm, not theorem, conjectur
19:53:18 <FreeFull> Bike: 19:51:49 < kmc> in JavaScript the integers are a subset of the floats
19:53:20 <Bike> but that's a definition, not an implementation, you know?
19:53:58 <Bike> And then when you start saying "well the reals are just a subset of the complexes" and trying to do that in programs you get all /sorts/ of cool problems.
19:54:05 <Bike> FreeFull: I still don't get it.
19:54:33 <FreeFull> Bike: You're doing bitwise OR on two floating point numbers
19:54:45 <Bike> Wow, that sounds like an incredibly bad idea!
19:54:50 <FreeFull> I guess I meant bitwise and not boolean
19:54:59 <Bike> Yes, that makes more sense, though.
19:55:32 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
19:55:52 <Bike> Sgeo: curious,, what conjecture were you thinking of? gamma shows up all over the place.
19:56:15 <kmc> so does anyone know / want to guess about the other integer operation that can cause SIGFPE, besides divide by zero?
19:56:28 <Bike> overflow maybe?
19:56:34 <Sgeo> Riemann, I think? The one about whether or not all the non-trivial zeros are on a certain line
19:56:44 <kmc> Bike: what kind?
19:56:47 <Bike> that's the riemann-zeta conjecture, yeah
19:56:55 <Bike> kmc: integer. (not that i'd expect most implementations to do that)
19:57:13 <kmc> you mean adding to the biggest integer or something?
19:57:16 <Bike> yeah
19:57:26 <kmc> yeah an implementation could raise SIGFPE, since it's undefined behavior
19:57:29 <kmc> but it's not common afaik
19:57:37 <kmc> i meant a case that is easy to demonstrate on x86 GNU/Linux
19:57:41 <kmc> with gcc
19:57:47 <Bike> good enough for meeeee
19:58:02 <Bike> Sgeo: https://upload.wikimedia.org/math/3/d/e/3deec1fb1bc7407484d64c735615b2f5.png (when 0 < R(s) < 1)
20:01:50 <fizzie> http://sprunge.us/UJOc that doesn't exactly sound like the best thing.
20:02:43 <kmc> yikes :(
20:03:12 <boily> fizzie: ooooh... I have a morbid fascination towards failing hardware. Each piece crumbles apart in its own unique way.
20:04:13 <Taneb> boily, my laptop's wifi thingy has a range of about 3 meters and the hinge can be used as a bladed weapon
20:04:26 <Taneb> After I accidentally sat on it
20:05:00 <boily> I am impervious to slicing damage. It was experimentaly proven.
20:05:33 -!- Sgeo_ has joined.
20:06:00 <fizzie> boily: In that case, http://sprunge.us/HTHU shows it dramatically falling off the RAID1 set.
20:06:32 -!- c00kiemon5ter has joined.
20:06:33 -!- Sgeo has quit (Read error: Connection reset by peer).
20:06:47 <fizzie> (This is in a really super-crummy ZyXEL two-disk NAS box that I'd like to get rid of in any case.)
20:08:42 <Sgeo_> F-Script does something... odd
20:08:46 <Sgeo_> Reminds me a little of J
20:08:50 <Sgeo_> http://pmougin.wordpress.com/2009/11/17/beyond-blocks/
20:10:20 <kmc> Bike et al: the answer is, dividing the smallest int (e.g. -2**31) by -1
20:11:11 <kmc> because the result is not representable
20:11:15 <Sgeo_> I have no idea how any of that works
20:11:30 <kmc> operations like addition and negation don't care, but I guess they decided that since division can fault anyway, it should fault in this case
20:15:08 <shachaf> Oh, beaky is back.
20:15:14 <shachaf> 11:50 <beaky> in C++ I love to overload operators
20:16:48 <kmc> @ShitBeakySays
20:16:48 <lambdabot> Unknown command, try @list
20:18:18 <shachaf> kmc: Should I learn about analysis?
20:20:58 <Bike> kmc: oh nice
20:21:23 <shachaf> kmc: Also: How does GHC compile to ARM? Is it only via LLVM like someone said?
20:22:13 <Sgeo_> Why do I keep hearing bad things about Morphic?
20:22:16 <Sgeo_> Is Morphic bad?
20:22:32 <Bike> "higher order messaging (HOM)" i think there should be a class somewhere on when not to use initialisms
20:22:37 <Bike> Sgeo_: iirc it's "controversial"
20:22:44 <Sgeo_> I remember one suggestion that it works out better in Self
20:22:45 <olsner> Sgeo_: maybe you just have the wrong friends, I haven't heard anything bad about Morphic
20:22:58 <olsner> (what is morphic?)
20:23:00 <kmc> shachaf: i am not up to date on this
20:23:03 -!- Nisstyre-laptop has joined.
20:23:12 <kmc> i think there is no native codegen
20:23:18 <kmc> you can probably still use the unregisterized C backend
20:23:27 <Bike> olsner: it's a UI thing for smalltalk.
20:23:38 <olsner> ok, sounds good
20:23:55 <Sgeo_> ... a tutorial on how to write a browser ... http://pharobooks.gforge.inria.fr/PharoByExampleTwo-Eng/latest/Glamour.pdf
20:24:12 <shachaf> OK, that still exists?
20:27:30 <kmc> i think so
20:27:45 <kmc> i'm not exactly up to date
20:27:52 -!- Nisstyre-laptop has quit (Quit: Leaving).
20:28:15 <kmc> but GHC supported a ton of architectures through unregisterized C backend
20:28:16 <kmc> like all of Debian
20:28:26 <kmc> and I believe it's not trivial to bring up a new architecture with LLVM
20:30:25 <kmc> i think it's not a ton of work to keep the unreg'd C backend around, given that it's not expected to be fast
20:34:01 -!- zzo38 has joined.
20:34:04 -!- Taneb has quit (Quit: Leaving).
20:37:14 -!- Taneb has joined.
20:40:44 <Sgeo_> You know what could be convenient in a Smalltalk IDE? Some conventions for specifying protocols that objects can follow, and a way to, for any object, automatically create stub methods by those names
20:40:55 <Sgeo_> Hmm, Visual Studio does that with interfaces, doesn't it?
20:41:02 -!- ais523_ has joined.
20:41:09 -!- ais523 has quit (Disconnected by services).
20:41:11 -!- ais523_ has changed nick to ais523.
20:41:17 <shachaf> i love it when my ide generates code
20:41:35 <kmc> are you beaky
20:42:11 <Sgeo_> shachaf, when the code is expected to change, it does make more sense than a macro, I think
20:43:21 <kmc> it's true that writing the method signatures in every implementation of an interface constitutes code duplication
20:43:28 <kmc> but it doesn't bug me the way code duplication generally does
20:43:33 <kmc> i think because leaving those implicit would be worse
20:47:03 <Sgeo_> Also, if I ever get around to writing complete bindings for an AW-like thing, generating methods automatically with a bit of code that actually writes to the image, rather than acting macro-like, would be more convenient
20:47:12 <Sgeo_> Because many of the methods would be the same but some would be subtly different
20:47:33 <Sgeo_> And the different ones would tend to be different in different ways
20:51:27 -!- Taneb has quit (Quit: Leaving).
20:54:09 -!- Taneb has joined.
21:07:32 -!- Vorpal has quit (Ping timeout: 255 seconds).
21:14:40 -!- Taneb has quit (Remote host closed the connection).
21:22:39 -!- sirdancealot7 has joined.
21:22:48 -!- asiekierka has quit (Excess Flood).
21:24:46 -!- asiekierka has joined.
21:27:28 -!- Taneb has joined.
21:29:37 -!- Taneb has quit (Remote host closed the connection).
21:30:47 -!- Taneb has joined.
21:31:17 -!- carado has quit (Ping timeout: 246 seconds).
21:40:51 <FreeFull> Huh
21:41:19 <FreeFull> You can actually do import qualified something as X import qualified somethingelse as X
21:41:24 <FreeFull> With X being the same thing
21:41:59 <shachaf> u love qualified imports
21:42:08 <shachaf> Hmm, I meant "i".
21:42:31 <FreeFull> Fixing some older code
21:42:40 <FreeFull> To work with newer Haskell
21:42:54 <olsner> I guess it's the same principle that allows you to import several modules unqualified
21:43:43 <Taneb> Causing a confusion in #ubuntu-steam
21:44:04 <FreeFull> Hmm, the program wants me to install cabal-dev, but cabal says that will downgrade two things which would break other things
21:44:07 <fizzie> shachaf: What sort of an adjective would best describe the qualified imports you love, what do you think?
21:44:09 <FreeFull> Taneb: How?
21:44:14 <FreeFull> By not running ubuntu?
21:44:18 <Taneb> By asking for help with a driver problem
21:44:21 <olsner> fizzie: "qualified"?
21:44:32 <shachaf> fizzie: What olsner said.
21:44:39 <shachaf> (Whew. That was easy.)
21:45:18 <olsner> (sorry for giving away the answer)
21:46:48 <Sgeo_> o.O at Taneb
21:47:12 <Sgeo_> O.o O.O
21:47:22 <Taneb> Sgeo_, I tried to upgrade graphics card driver and now my computer thinks my screen is 640x800
21:47:36 <Sgeo_> Taneb, I agree with laughingman
21:47:40 <olsner> 640x800? that's not a valid screen size
21:47:54 <Taneb> 800x600
21:48:00 <fizzie> I ran a CRT at 666x666.
21:48:15 <fizzie> But it did nothing especially evil or devilish. :/
21:48:22 <Taneb> Sgeo_, I'm going to bed soon
21:48:32 <Taneb> If someone could fix this while I sleep that would be brilliant
21:52:46 <Sgeo_> lol
21:52:49 <Sgeo_> "Objects are very
21:52:49 <Sgeo_> much like characters in a story1
21:52:49 <Sgeo_> ."
21:52:55 <Sgeo_> "1
21:52:56 <Sgeo_> Indeed, one object system refers to them as actors."
21:54:48 <zzo38> Is it allowed in a C code for a macro to call a function style macro with ( but omitting the ) in the definition of the first macro?
21:55:24 <kmc> FreeFull: yeah, that's a pretty nice feature
21:55:41 <kmc> Haskell's module system is very simplistic, but it's nicely thought out and orthogonal
21:59:17 <zzo38> Can __LINE__ be used with # and ## in macros?
21:59:42 <fizzie> For the latter question, the answer is yes, I believe.
21:59:53 <fizzie> (At least it is somewhat commonly done.)
22:02:17 * Sgeo_ wishes Smalltalk had anything resembing a module system
22:04:39 <fizzie> Following C11 6.10.3.4p1, I think the former question also gets a positive answer. (Macro rescanning is done "along with all subsequent preprocessing tokens of the source file", and certainly #define foo(x) #x \n #define bar foo( \n bar baz) seems to work and result in the string literal "baz" as the preprocessing phase output.
22:06:44 <zzo38> I think __LINE__ is sometimes used with # I have seen, but is it used with ## as well?
22:07:02 <fizzie> I've seen it used with ##.
22:07:28 <zzo38> OK
22:07:31 <fizzie> To make a not-really-working gensym-ish thing, to avoid duplicate identifiers.
22:07:42 <fizzie> (As long as all the macro invocations are on different lines.)
22:08:43 <fizzie> GCC has (as an extension) a macro called __COUNTER__ for that; it expands to an integer constant with the value that is one larger than the value it expanded to last time during the same translation unit.
22:09:01 <fizzie> And I think MSVC has it too. (It might even derive from there.)
22:09:23 <zzo38> Yes but using __COUNTER__ might not work for some purposes
22:10:10 <FreeFull> What would be the use of __COUNTER__
22:10:29 -!- WeThePeople has quit (Quit: Leaving).
22:10:30 <fizzie> FreeFull: "a convenient means to generate unique identifiers", to quote the GCC manual.
22:11:37 -!- Jafet has quit (Ping timeout: 272 seconds).
22:12:04 <Bike> Is there a programming system that decouples compilation and object file creation enough that e.g. having it output pexe instead of elf would be anything less than an exercise in implementation-undefined pain?
22:14:45 <Bike> or well, two executable formats both for linux, would make more sense.
22:15:06 <c00kiemon5ter> http://www.youtube.com/watch?v=b0EF0VTs9Dc -- Monads and Gonads Google Talk -- upload 2 minutes ago
22:15:40 <Bike> "19:00 is method chaining. I find it hard to believe that monads are simply objects/closures."
22:15:53 <c00kiemon5ter> err, s/2 minutes/about 2 hours/
22:17:57 <olsner> does monad rhyme with gonad, or is it a short 'o' in monad?
22:18:35 <Bike> they rhyme in my dialect
22:19:20 <ais523> I use a long 'o'
22:19:30 <olsner> moonad?
22:21:59 <ais523> moenad
22:22:33 <olsner> hmm, I guess moenad is the same as moanad
22:22:50 <shachaf> moerjan
22:22:54 <shachaf> helloerjan
22:23:08 <shachaf> oerjan: Logreading is bad for you.
22:24:43 <olsner> the møønads
22:25:56 <shachaf> mønqy
22:26:26 <olsner> <mønqy> hei
22:29:51 <olsner> do you sometimes watch video in fullscreen, and then think that switching to full screen again will make the picture fill up the area outside the screen too?
22:30:52 -!- boily has quit (Quit: Poulet!).
22:37:50 -!- sebbu has quit (Ping timeout: 260 seconds).
22:38:24 <Sgeo_> o.O at Taneb's situation
22:39:08 <Taneb> o.O indeed
22:43:48 -!- WeThePeople has joined.
23:15:02 <Phantom_Hoover> what is Taneb's situation
23:15:27 -!- sebbu has joined.
23:15:27 -!- sebbu has quit (Changing host).
23:15:27 -!- sebbu has joined.
23:16:29 <Sgeo_> Phantom_Hoover, bootleg graphics card
23:16:43 * Sgeo_ has not heard of asymmetric multimethods before now
23:19:02 <Bike> what's that?
23:22:43 <Sgeo_> Unlike symmetric multimethods, there's still a distinguished position
23:23:30 <Sgeo_> But can specialize on the other arguments, similarly to overloading but not static
23:23:44 <Sgeo_> http://www.laputan.org/reflection/Foote-Johnson-Noble-ECOOP-2005.html
23:25:39 <Bike> what's distinguished about the position?
23:26:20 * Sgeo_ isn't quite sure, other than that that position does name an object that will receive DNE if there's no valid implementation
23:26:29 <Sgeo_> (At least in what this author is doing)
23:27:15 <Bike> dne = ?
23:27:53 <Sgeo_> That's not the name of it, is it. DN something
23:28:41 <Sgeo_> DNU. doesNotUnderstand
23:29:06 <Bike> oh.
23:33:15 -!- sebbu has quit (Ping timeout: 260 seconds).
23:33:39 <FreeFull> DNU, DNU's not Useful
23:49:07 <shachaf> Sgeo_: oh, i love multimethods
23:53:22 <elliott> `pastelogs shachaf.*(i love|they are)
23:53:36 <shachaf> elliott..............
23:54:04 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.17386
23:54:16 <shachaf> Hmm. Am I overdoing it?
23:54:35 <Bike> there are levels of irony here that are far, far beyond my understanding
23:55:13 <monqy> shachaf: that's what we've been saying yes
23:55:51 <shachaf> it's pretty easy to overdo it
23:56:08 <shachaf> I'll try to keep it to "special occasions".
23:56:20 <Bike> "2011-11-20.txt:08:29:00: <elliott> shachaf: I love those." hm, so this is all elliott's falt originally
23:56:24 <Bike> fault
23:56:38 -!- sebbu has joined.
23:56:38 -!- sebbu has quit (Changing host).
23:56:38 -!- sebbu has joined.
23:59:45 -!- WeThePeople has quit (Quit: Leaving).
2013-01-17
00:00:21 <Sgeo_> I love the overuse of the love meme
00:01:36 -!- sebbu has quit (Ping timeout: 256 seconds).
00:03:41 <monqy> sgeo......no........
00:04:43 <shachaf> Sgeo_: Don't do it.
00:13:41 <Sgeo_> I love ellipses
00:14:01 <shachaf> SGEO_.
00:14:14 <shachaf> would you smoke around someone who's trying to quit smoking?
00:14:24 <shachaf> would you say hi to monqy?
00:15:01 -!- Jafet has joined.
00:15:31 <shachaf> Fiora: Are you studying to be a language lawyer?
00:15:39 <Fiora> ummmm I'm just curious really!
00:15:45 <Fiora> there's so much I don't know about C
00:16:21 <shachaf> Did you know: The standard allows argc==0, *argv==NULL?
00:16:40 <Jafet> You must be reading the wrong standard then, shachaf.
00:16:51 <shachaf> Jafet: I was reading C89 and C99.
00:16:59 <shachaf> Which one should I be reading?
00:17:09 <Bike> c99 is so last millenium
00:17:13 <shachaf> K&R doesn't allow that.
00:17:18 <Jafet> The one that makes your program work.
00:17:19 <shachaf> But who pays attention to K&R?
00:17:33 <Fiora> argc == 0? XD
00:17:46 <Fiora> is argv[0] equal to program name a system convention, or C convention?
00:17:58 <Bike> i would guess posix, that seems like it'd be out of scope of C
00:18:32 <shachaf> Fiora: Try it out!
00:18:38 <shachaf> You can segfault quite a lot of programs in /usr/bin/ with it.
00:19:03 <Fiora> sa
00:19:04 <Fiora> *XD
00:19:08 <Jafet> I wonder if you can pass envp = 0.
00:20:06 <shachaf> I think the best you can do is *envp = 0
00:21:05 <shachaf> Lots of programs will just use envp[0] as argv[0] on Linux.
00:27:50 -!- sebbu has joined.
00:28:01 <shachaf> Fiora: Exercise: Make up a case where a program not checking for argc==0 can lead to a security vulnerability.
00:28:16 <Fiora> does execve on real systems allow argc=0?
00:28:17 <shachaf> (I couldn't come up with a realistic one. Segfaults are easy but not useful.)
00:28:21 <shachaf> Yep!
00:28:24 <shachaf> At least on Linux.
00:28:34 <shachaf> Hence the segfaults I mentioned earlier.
00:29:10 <shachaf> Even on some suid binaries.
00:29:51 <Fiora> if you set up a signal handler, does it get overwritten when you execve?
00:30:07 <shachaf> I would generally hope so.
00:30:23 <Fiora> Yeah, it would be a little insane if it didn't
00:31:21 <shachaf> it would be so easy
00:32:18 <Bike> man execve mentions signal handlers (or rather "dispositions", I haven't really used signals) are reset. doesn't mention posixness or nuthin
00:57:49 <zzo38> Macro parameters cannot have line numbers in GNU C so I instead used various things to make it work; this involves redefining macros that are already defined and using mismatched parentheses. (This is for a puzzle game called "Brains&Flags")
00:59:05 <shachaf> zzo38: What's the game?
01:02:37 -!- epicmonkey has quit (Ping timeout: 272 seconds).
01:04:49 <zzo38> Is isn't written enough yet that you can look at it!
01:05:28 <zzo38> But it sort of resembles a cross between Hero Hearts and Magic: the Gathering, although there are also some things like chess and so on.
01:08:02 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:12:12 -!- azaq23 has joined.
01:50:44 -!- TeruFSX2 has joined.
01:52:23 -!- TeruFSX has quit (Ping timeout: 252 seconds).
01:54:28 -!- TeruFSX has joined.
01:58:00 -!- TeruFSX2 has quit (Ping timeout: 276 seconds).
01:59:17 -!- TeruFSX has quit (Ping timeout: 248 seconds).
02:03:39 -!- TeruFSX has joined.
02:05:58 -!- augur has quit (Remote host closed the connection).
02:08:21 -!- TeruFSX has quit (Ping timeout: 248 seconds).
02:09:13 -!- impomatic has quit (Ping timeout: 264 seconds).
02:14:14 -!- TeruFSX has joined.
02:24:59 <tswett> `echo wett: ahoy
02:25:01 <HackEgo> wett: ahoy
02:29:06 -!- SirCmpwn has quit (Quit: ZNC - http://znc.in).
02:34:05 -!- monqy has quit (Quit: hello).
02:35:00 -!- SirCmpwn has joined.
02:36:33 -!- FreeFull has quit (Ping timeout: 240 seconds).
02:38:31 -!- FreeFull has joined.
02:40:11 -!- zzo38 has quit (Remote host closed the connection).
02:41:40 -!- TeruFSX has quit (Ping timeout: 248 seconds).
02:42:25 -!- FreeFull has quit (Read error: Connection reset by peer).
02:43:00 -!- DHeadshot has joined.
02:43:28 -!- FreeFull has joined.
02:44:12 -!- TeruFSX has joined.
02:55:05 -!- FreeFull has quit (Ping timeout: 252 seconds).
02:56:57 -!- FreeFull has joined.
03:00:05 <Sgeo_> There is a piece of code in Pharo that starts
03:00:06 <Sgeo_> false ifTrue:
03:01:11 <Sgeo_> false ifTrue: [self flag: #nominallyUnsent:] "So that this method itself will appear to be sent"
03:02:01 <shachaf> can clojure do that?
03:04:58 <Sgeo_> Have an actual reason to do (if false ...)?
03:04:59 -!- augur has joined.
03:05:14 <Bike> I don't really understand the reason.
03:06:03 <Sgeo_> I think it's so that the IDE thinks that there exists a piece of code that sends nominallyUnsent:
03:06:47 -!- WeThePeople has joined.
03:08:03 -!- FreeFull has quit (Ping timeout: 240 seconds).
03:14:34 -!- Sgeo_ has quit (Read error: Connection reset by peer).
03:14:57 -!- Sgeo has joined.
03:15:05 -!- FreeFull has joined.
03:21:18 -!- oerjan has joined.
03:28:09 -!- FreeFull has quit (Ping timeout: 255 seconds).
03:29:27 * Sgeo wonders if Squeak looks any less horrible these days
03:30:13 <Sgeo> ih. Theme still sucks but it's less... horrible, I guess? http://static.squeak.org/screenshots/world_color.png
03:30:40 -!- Bike_ has joined.
03:30:41 -!- FreeFull has joined.
03:30:56 <olsner> Sgeo: looks like Java
03:32:32 -!- Bike has quit (Disconnected by services).
03:32:34 -!- Bike_ has changed nick to Bike.
03:39:55 <oerjan> <FreeFull> Haskell doesn't seem to have a power function that takes a ratio as the index
03:40:16 <oerjan> > 2 ** (1/3) -- what's wrong with this?
03:40:17 <lambdabot> 1.2599210498948732
03:40:29 <Bike> the "index"?
03:41:41 <kmc> shachaf: if a program does something like while (--argc) { ... }
03:41:49 <kmc> then for argc == 0, the loop will execute many times
03:41:51 <oerjan> what's wrong is FreeFull isn't actually here
03:41:55 <shachaf> kmc: Yes.
03:41:59 <shachaf> This is pretty common.
03:42:12 <kmc> also it will eventually signed-integer-underflow which is UB
03:43:56 <Bike> least you can mostly fix it by moving two characters.
03:44:38 <shachaf> UB is sufficient to be bad but not sufficient to be exploitable.
03:45:21 <Sgeo> `list
03:45:21 <HackEgo> Taneb atriq Ngevd Fiora nortti alot
03:45:44 <kmc> char *buf[256]; int main(int argc, char *argv[]) { if (argc > 256) abort(); while (--argc) buf[argc] = *(argv++); }
03:46:25 <shachaf> That's a bit too convoluted for my taste.
03:47:02 <kmc> it doesn't seem that convoluted and could probably be made less convoluted and longer
03:47:27 <kmc> what do you usually get on x86 GNU/Linux when you read past the end of argv?
03:47:34 <kmc> you get a NULL pointer and then envp entries, yeah?
03:49:09 -!- FreeFull has quit (Ping timeout: 248 seconds).
03:49:25 <shachaf> Yes.
03:49:33 <oerjan> > minBound `div` (-1) :: Int
03:49:34 <lambdabot> *Exception: arithmetic overflow
03:50:53 <oerjan> > minBound `div` 0 :: Int
03:50:54 <lambdabot> *Exception: divide by zero
03:50:55 -!- FreeFull has joined.
03:51:08 <oerjan> FreeFull: FOCUS
03:51:20 <Bike> FreeFull! You have four seconds to explain what the "index" of an exponentiation is!
03:51:30 <Bike> TOO LATE
03:52:46 <oerjan> i expect it means the exponent, since that is the one where you cannot use a ratio with all the haskell operators
03:52:46 <kmc> and there are plenty of cases where an attacker partially controls the environment of a setuid binary, aren't there
03:53:22 <shachaf> Sure.
03:59:08 <kmc> also the long loop itself could be a security vulnerability, a DoS
03:59:21 <kmc> if a setuid program has higher rlimits than you do, or acquires a privileged lock or something
03:59:42 <shachaf> I suppose.
03:59:55 <kmc> ooc, what do you find convoluted about my example?
04:01:34 <shachaf> Mostly that I looked at the argument parsing of a bunch of programs and didn't see anything that looked much like that.
04:01:49 <shachaf> But it's probably less convoluted than I thought.
04:02:00 <shachaf> Oh, there are some programs that do malloc() based on argc.
04:02:19 <shachaf> That could be promising, if they then try to copy into a buffer.
04:03:37 <shachaf> For example Dalvik does this.
04:04:05 <shachaf> https://github.com/android/platform_dalvik/blob/master/dalvikvm/Main.cpp#L154
04:07:17 <shachaf> In this case it's probably also not exploitable.
04:10:59 -!- FreeFull has quit (Ping timeout: 246 seconds).
04:11:34 <Sgeo> "Java stopped working with 32-bit browsers, and Chrome never became 64-bit. Which is kind of terrible in itself."
04:11:37 <Sgeo> What's this about?
04:12:27 <shachaf> How should I know? You pasted it.
04:12:45 <Sgeo> Is that person actually being accurate, or delusional?
04:12:55 <Sgeo> (About no more Java for 32-bit browsers)
04:13:06 -!- FreeFull has joined.
04:18:07 -!- FreeFull_ has joined.
04:19:03 -!- FreeFull has quit (Ping timeout: 276 seconds).
04:23:07 -!- FreeFull has joined.
04:24:12 -!- FreeFull_ has quit (Ping timeout: 264 seconds).
04:28:31 <kmc> ah yeah, they do essentially malloc(sizeof(foo) * (argc-1))
04:28:45 <kmc> which will be a classic malloc size overflow if argc==0
04:28:54 <kmc> shachaf: you should write a level based on argc==0 and submit it to IO!
04:29:21 -!- ais523 has quit.
04:30:16 <shachaf> kmc: I'd submit one to your CTF!
04:30:27 <shachaf> Weren't you going to make one?
04:30:55 <kmc> i was going to do a different thing
04:31:03 <shachaf> Oh, the cryptography thing?
04:32:34 <kmc> no
04:32:39 <kmc> the devious code contest
04:32:48 <shachaf> Oh, that too.
04:33:11 <shachaf> Hmm, there's actually a lot of overlap between CTF levels and underhanded code contest submissions.
04:33:51 <kmc> i was never planning to run a CTF by meself
04:36:13 -!- FreeFull_ has joined.
04:37:45 -!- azaq23 has quit (Quit: Leaving.).
04:38:55 -!- FreeFull has quit (Ping timeout: 276 seconds).
04:44:20 -!- FreeFull_ has quit (Ping timeout: 248 seconds).
04:46:41 -!- FreeFull has joined.
05:08:58 <kmc> 200 000 000 × 0.01% = goatse
05:12:43 -!- TeruFSX has quit (Ping timeout: 276 seconds).
05:14:53 -!- FreeFull has quit (Ping timeout: 252 seconds).
05:17:34 -!- FreeFull has joined.
05:22:37 -!- azaq23 has joined.
05:40:49 -!- FreeFull has quit (Ping timeout: 252 seconds).
05:43:42 -!- FreeFull has joined.
05:50:13 -!- FreeFull has quit.
06:19:14 -!- copumpkin has quit (Ping timeout: 256 seconds).
06:19:45 -!- copumpkin has joined.
06:23:04 -!- ogrom has joined.
06:29:56 -!- DHeadshot has quit (Read error: Connection reset by peer).
06:30:02 -!- DH____ has joined.
06:41:34 -!- Taneb has quit (Quit: Leaving).
06:42:34 -!- epicmonkey has joined.
06:49:17 <Deewiant> http://andrew-hoyer.com/experiments/entropy/
06:53:53 -!- copumpkin has quit (Ping timeout: 252 seconds).
06:54:23 -!- copumpkin has joined.
07:04:21 -!- carado has joined.
07:04:28 <oerjan> that site has so high entropy it doesn't load
07:04:44 <Bike> it's pretty, in a web 3.0 way, which is more than most esolangs get
07:08:47 -!- carado has quit (Ping timeout: 246 seconds).
07:16:43 <Deewiant> Loads just fine for me
07:20:33 -!- WeThePeople has quit (Quit: Leaving).
07:25:52 <oklopol> seems you could easily keep bits using Techniques.
07:31:48 -!- epicmonkey has quit (Ping timeout: 248 seconds).
07:33:28 -!- azaq23 has quit (Quit: Leaving.).
07:34:43 <fizzie> There was a TV program about "glitch art" I happened to glance at a while ago.
07:34:55 <fizzie> It registered quite high on the old pretentiometer.
07:55:22 -!- augur has quit (Read error: Connection reset by peer).
07:55:50 -!- augur has joined.
07:59:56 -!- Bike has quit (Quit: sleep).
08:38:54 -!- epicmonkey has joined.
08:47:00 -!- sebbu has quit (Ping timeout: 248 seconds).
08:50:41 <shachaf> 1F46B MAN AND WOMAN HOLDING HANDS
08:50:42 <shachaf> x (restroom - 1F6BB)
09:03:19 -!- carado has joined.
10:08:28 -!- ogrom has quit (Ping timeout: 276 seconds).
10:08:33 -!- oerjan has quit (Quit: leaving).
10:10:50 -!- ogrom has joined.
10:13:10 -!- Phantom_Hoover has joined.
10:15:49 -!- md_5 has changed nick to md_5|away.
10:18:13 -!- ogrom has quit (Ping timeout: 276 seconds).
10:24:28 -!- ogrom has joined.
11:09:56 -!- DH____ has quit (Read error: Connection reset by peer).
11:10:18 -!- DHeadshot has joined.
11:13:41 <myndzi> lol. i saw this spacechem solution for an easy level that took like 100k cycles
11:13:56 <myndzi> and i thought of a better way to do it, plus found a level i could implement it on
11:14:11 <myndzi> the cycle counter changed to say +INF before the first molecule was 1/3 of the way to the output
11:14:13 <myndzi> :O
11:14:28 <myndzi> i'm gonna let it run overnight and see if it keeps an actual count
11:42:28 -!- DHeadshot has quit (Read error: Connection reset by peer).
11:42:38 -!- DHeadshot has joined.
11:43:18 <Sgeo> `list
11:43:22 <HackEgo> Taneb atriq Ngevd Fiora nortti alot
11:43:40 <Sgeo> (from a few hours ago)
12:02:14 -!- DHeadshot has quit (Read error: Connection reset by peer).
12:13:20 <Sgeo> I should really go back to sleep
13:07:52 -!- ogrom has quit (Ping timeout: 276 seconds).
13:15:55 -!- boily has joined.
13:34:09 <Sgeo> I wish Smalltalk was more like Snit
14:35:07 <quintopia> i wish my stomach was more like full
14:52:02 <Sgeo> <gokr> So Maru is the minimal parts that you need in order to "bootstrap" a VM for a language (what you like) at runtime.
14:52:02 <Sgeo> <gokr> So if you read his "js implementation" it starts by defining some low level semantics (at runtime) - then add a bit on those - then suddenly it starts running "js" so to speak.
14:52:02 <Sgeo> <gokr> So Maru defines the js runtime dynamically when it starts.
14:52:02 <Sgeo> <gokr> This means that the "VM" is purely dynamic and can reconfigure itself during runtime for different languages.
14:58:35 * Sgeo goes to read http://www.dynamic-languages-symposium.org/dls-06/program/media/IanPiumarta_2006_OpenExtensibleDynamicProgrammingSystems_Dls.pdf
14:58:35 -!- augur_ has joined.
15:03:10 -!- Fiora_ has joined.
15:03:32 -!- atehwa_ has joined.
15:06:12 <Sgeo> I have no idea what's going on
15:07:10 -!- comex` has joined.
15:07:48 -!- carado has quit (*.net *.split).
15:07:48 -!- augur has quit (*.net *.split).
15:07:48 -!- Fiora has quit (*.net *.split).
15:07:48 -!- atehwa has quit (*.net *.split).
15:07:50 -!- comex has quit (*.net *.split).
15:10:55 -!- carado has joined.
15:11:25 -!- carado has quit (*.net *.split).
15:12:32 -!- carado has joined.
15:27:48 <ion> http://yle.fi/uutiset/finnish_silence_can_be_golden_says_american_expert/6454371
15:28:34 <quintopia> finnish snow can be golden too
15:31:08 <Lumpio-> ebin
15:49:48 -!- Nisstyre has quit (Quit: Leaving).
15:50:55 <boily> Lumpio-: ebin?
15:51:07 -!- impomatic has joined.
15:51:07 <Lumpio-> 5/5
15:56:06 -!- ogrom has joined.
16:01:03 <fizzie> Do not eat the yellow snow.
16:01:44 <Lumpio-> spödre sparderer
16:03:44 <fizzie> "The sauna is also a place where Finns do not normally engage in a lot of conversation --" I don't really know if that has been my experience. Though it does say "normally".
16:14:23 -!- Taneb has joined.
16:14:37 <Taneb> Sgeo: my situation got worse
16:15:03 <Taneb> Hang on
16:15:04 -!- Taneb has quit (Client Quit).
16:16:00 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
16:16:29 -!- Taneb has joined.
16:34:15 -!- Phantom_Hoover has joined.
16:34:34 <Taneb> Phantom_Hoover: help
16:34:39 <Phantom_Hoover> ho3
16:34:42 <Phantom_Hoover> *how
16:34:50 <Taneb> Rescue my computer
16:34:57 <Taneb> From the clutches of something
16:34:57 <Phantom_Hoover> what is the matter upon for guidance for which to me you turn
16:35:18 <Taneb> After last night's graphics card kerfuffle, I now cannot seem to launch a GUI
16:35:23 <Phantom_Hoover> you maybe should ask elliott about that
16:35:39 <Phantom_Hoover> he is after all closer and can free it with less commuting
16:37:10 <Phantom_Hoover> what card etc.
16:38:04 <Taneb> Some form of nVidia, turns out not what I thought
16:40:37 <Taneb> Ubuntu 12.04, 304 experimental drivers
16:41:46 <Phantom_Hoover> i should point out right now that i know nothing about this
16:43:22 <Taneb> Hence why I've also asked in #nvidia
16:46:26 <Taneb> ...and recieved no response so far
16:48:33 <boily> Taneb: I've had multiple problems with various bêta nVidia drivers in the past. I don't know how easy it is to downgrade them on ubuntu, but that usually did the trick on my old machine.
16:48:41 <elliott> bêta
16:48:56 <Taneb> boily: the problem is ridiculous already
16:49:03 <Taneb> Basically, I had a bootleg graphics card
16:49:06 <boily> elliott: my French's slipping again :p
16:49:07 <Taneb> Well, I still have it
16:49:22 <boily> Taneb: bootleg card? that's possible?
16:49:26 <Taneb> Yeah
16:49:32 <Taneb> I bought it from a dodgy chinese website
16:49:44 <Taneb> It's a few models older than it pretends to be
16:50:23 <Taneb> So I decided to switch to the 310 driver
16:50:35 <Taneb> But that doesn't support what the card actually is
16:50:58 <Taneb> So, after confusing everyone in #ubuntu-steam and #nvidia, I downgraded to 304
16:50:59 <boily> Taneb: there's this reply here that says 12.04 doesn't support legacy drivers, if that's relevant: http://askubuntu.com/questions/148688/getting-unity-3d-working-on-legacy-nvidia-card
16:51:09 <Taneb> Huh
16:51:15 <Taneb> It worked before, I'm sure
16:51:17 <boily> (reply meaning the second one)
16:51:39 <Taneb> And also I have no idea how to open links from irssi
16:52:31 <c00kiemon5ter> I use nouveau drivers for my nvidia
16:53:24 <boily> in summary, it says the old 173 and 96 branches aren't supported on 12.04, and that you have to build them manually.
16:53:46 <Taneb> Yeah, I'm trying to use the 304 branch
16:54:57 -!- ais523 has joined.
17:01:34 <Taneb> Futuerjan: I saw your edits on the Fueue article
17:01:35 <Taneb> :)
17:08:45 -!- sirdancealot7 has quit (Read error: Connection reset by peer).
17:11:12 -!- Bike has joined.
17:12:37 <Taneb> I'm getting increasingly tempted to upgrade to 12.10 to see what happens
17:13:11 <ais523> Taneb: I'm using Ubuntu 12.10, I like it
17:13:22 <ais523> there are some annoying bugs, though
17:13:57 <Taneb> ais523: more annoying than not having a GUI?
17:17:44 <ais523> Taneb: no
17:17:53 <ais523> do you not have a GUI on your current OS?
17:19:15 <Taneb> Graphics card issues
17:19:20 <Taneb> I have no idea what's going on
17:26:11 -!- sebbu has joined.
17:28:06 <c00kiemon5ter> did you try to remove the drivers and reinstall the "stable/supported" ones provided by ubuntu (or a ppa) ?
17:28:34 <Taneb> Multiple times
17:28:37 <Taneb> Gonna try again
17:29:07 -!- epicmonkey has quit (Ping timeout: 248 seconds).
17:30:16 -!- Vorpal has joined.
17:30:35 <c00kiemon5ter> I would remove the new drivers, purge any remaining files of them, reinstall the kernel and install the drivers provided by ubuntu/ppa
17:35:03 -!- sebbu has quit (Ping timeout: 272 seconds).
17:39:57 -!- FreeFull has joined.
17:45:54 -!- sebbu has joined.
17:52:49 -!- FreeFull_ has joined.
17:55:26 -!- FreeFull has quit (Ping timeout: 256 seconds).
18:00:55 -!- deneb has joined.
18:03:03 -!- Taneb has quit (Quit: leaving).
18:03:06 -!- FreeFull has joined.
18:05:09 -!- FreeFull_ has quit (Ping timeout: 248 seconds).
18:08:33 -!- deneb has left.
18:16:18 <quintopia> maru was mentioned in #squeak
18:25:31 -!- atehwa_ has changed nick to atehwa.
18:41:04 * tswett vi NFU_typed_forcibly.v
18:43:37 -!- epicmonkey has joined.
18:50:51 -!- Deewiant has quit (Read error: Operation timed out).
18:51:09 -!- Deewiant has joined.
19:11:09 -!- FreeFull has quit (Ping timeout: 252 seconds).
19:11:57 -!- Taneb has joined.
19:13:36 <Taneb> Phantom_Hoover, you'll be relieved to know that my computer is working again!
19:13:46 <Taneb> c00kiemon5ter, thanks
19:14:00 <Phantom_Hoover> well that's a relief
19:36:40 <Taneb> Today, for some reason, me and some friends were talking about how Insane Clown Posse seem to only have one song
19:38:21 <Taneb> Then it turns out we were all thinking of different songs
19:44:27 -!- TeruFSX has joined.
19:48:22 <oklopol> oh you mean the song where they rap some bullshift on a background of nothing of interest
19:49:45 <kmc> bull<<
19:50:09 <kmc> fizzie: 'pretentiometer' is a great word, thanks
19:50:14 <oklopol> so my job is to write articles about things called subshifts
19:50:26 <oklopol> guess how many times i've almost written that subshit
19:50:35 <oklopol> *almost left that in as
19:51:21 <oklopol> also a guy who used to work at the uni before me (who has the same name as me) - presumably accidentally - left it as subshit in his phd.
19:51:39 <oklopol> somewhere like page 50 so no one will ever know but anyway
19:51:43 <Taneb> There's more than one oklopol?
19:52:05 <oklopol> no i'm referring to the pseudonym i go by in real life
19:52:25 <Taneb> Oh that one
19:52:33 <Taneb> I think I picked a pretty cool one of those
19:52:44 <oklopol> nathan?
19:52:54 <Taneb> Nathan van Doorn
19:52:57 <oklopol> oh right
19:53:00 <Taneb> I sound like a supervillain
19:53:02 <oklopol> yes that's pretty damn awesome
19:53:12 <Taneb> And it literally means "He gave from the house of Thor"
19:53:29 <oklopol> wanna switch names
19:53:48 <oklopol> my name means some forest shit
19:53:50 <Taneb> What's your name
19:54:26 <Sgeo> `list
19:54:28 <Sgeo> TUMBLR update
19:54:29 <HackEgo> Taneb atriq Ngevd Fiora nortti alot
19:54:36 <Sgeo> (No new comic)
19:54:58 <Taneb> Hehe, I'm half the list
19:55:07 <oklopol> ville salo
19:55:09 <oklopol> ville means nothing
19:55:31 <Fiora_> http://www.mspaintadventures.com/storyfiles/hs2/05739.gif
19:56:10 <Taneb> That's what I imagine shachaf doing whenever I post Homestuck in another channel
19:56:15 <Fiora_> XD
19:56:45 <shachaf> Taneb................................
19:57:01 <Sgeo> Maybe I should get the ~u hoodie. Sometimes I scare myself with how much I can imagine being that character
19:57:29 <oklopol> so i put some lemon in my milk
19:57:34 <oklopol> for no apparent reason
19:57:38 <oklopol> it was horrible
19:57:39 <oklopol> o_O
19:57:44 <kmc> curdled?
19:57:56 <oklopol> yes
19:58:26 <Fiora_> Sgeo: calliope?
19:58:38 <Sgeo> Fiora_, the other cherub
19:58:42 <Sgeo> (Trying to avoid spoilers)
19:58:48 <Fiora_> the other one is scaryyy
19:58:51 <Fiora_> and creepy
19:58:56 <Fiora_> you don't seem very creepy
19:59:16 <Sgeo> I feel like a creep sometimes
19:59:24 <Sgeo> I think I have creeped people out in the past
19:59:40 <Taneb> I creep people out all the time
20:00:10 <Taneb> Might be because I'm 6 foot tall and quite quiet on my feet
20:00:37 <Fiora_> I don't know, competing with the other cherub sounds a little difficult
20:00:38 -!- dessos has changed nick to who.
20:00:54 -!- who has changed nick to dessos.
20:01:14 <Fiora_> Sgeo: yes actually you are such a creep. you are stalking me with homestuck updates. you creep
20:01:34 <Taneb> Little does he know...
20:01:44 -!- ogrom has quit (Quit: Left).
20:05:24 <shachaf> i love updates
20:05:26 <shachaf> they are so easy
20:05:34 <shachaf> (oopse)
20:06:12 <Taneb> Theory: shachaf actually reads Homestuck but he doesn't want anyone to know because he cosplays Nepeta and is embarrassed
20:06:15 <Sgeo> shachaf, you should start evoling stuff
20:06:37 <Bike> i like this theory
20:09:17 <Fiora_> I like it too
20:09:25 <Fiora_> bike can be meulin
20:09:41 <Bike> good excuse to learn ASL.
20:10:13 <Bike> and grow my hair out, i guess
20:10:54 <Fiora_> your fluffyhair probably would actually look like that grown out too
20:14:27 <shachaf> :33 < don't be prepawsterous, Taneb. your theory n33ds work
20:16:00 <Taneb> I was thinking the other day about categories
20:16:11 <shachaf> categories: so easy??
20:16:12 <Taneb> And how they're not much like gory cats
20:16:18 <Taneb> Even though they sound sort of similar
20:18:11 <Fiora_> :33 < you sound almeowst purrfect shachaf! his theory is purrfectly fitting.
20:18:29 <Fiora_> :33 < you catpun to make a wonderfurl nepeta too
20:18:40 <Bike> ^rot13 catpuns
20:18:41 <fungot> pngchaf
20:18:59 <Bike> hmmmmmmmmmmmmmmmmmmmmmmmm
20:19:10 <Fiora_> ....
20:19:35 <shachaf> ^rot13 gifchaf
20:19:36 <fungot> tvspuns
20:19:58 <Taneb> ^rot13 jpegchaf
20:19:58 <fungot> wcrtpuns
20:20:56 <shachaf> i love fitting theories
20:20:58 <shachaf> it is so easy
20:22:14 <Fiora_> :33 < meowbe you should make it a habit!
20:23:03 <shachaf> imo Fiora_ is a much better candidate for this
20:23:21 <shachaf> Fiora_: You grew an _. You should have it removed before it's too late.
20:23:28 <Taneb> I haven't seen conclusive proof that Fiora_ and shachaf aren't the same person
20:23:29 <Fiora_> oh no.
20:23:32 <Fiora_> you're right :<
20:23:33 -!- Fiora_ has changed nick to Fiora.
20:23:42 <elliott> Fiora___________________
20:23:44 <Fiora> fixedies
20:24:02 <shachaf> `welcome Fiora_
20:24:04 <HackEgo> Fiora_: 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.)
20:24:36 <Bike> have we ever seen fiora and shachaf in the same roo- oh, we have.
20:25:17 <shachaf> We have?
20:25:27 <Fiora> Taneb: maybe shachaf has DID?
20:27:25 <boily> maybe Fiora is the Canadian counterpart to shachaf?
20:27:39 <shachaf> Fiora is Canadian?
20:27:47 <shachaf> Fiora: I thought you were from New Zealand..
20:27:49 <shachaf> s/.$?/
20:27:51 <shachaf> Ugh.
20:27:57 <Fiora> ... I'm from southern california...
20:27:59 <shachaf> That should be s/.$//
20:28:03 <boily> close enough.
20:28:14 <elliott> southern canadafornia
20:28:18 <elliott> southern canadafiora
20:28:29 <shachaf> i was in southern california once
20:28:31 <shachaf> twice
20:28:33 <shachaf> three times?? qed
20:28:45 <shachaf> In fact I was there just a few months ago.
20:28:47 <Fiora> difference 1 between here and canada: it doesn't get cold
20:29:02 <shachaf> @localweather Fiora
20:29:02 <lambdabot> Unknown command, try @list
20:29:23 <Fiora> it's 25C right now
20:29:30 <shachaf> It's 10°C here. :-(
20:29:30 <Fiora> (this is a lot warmer than it's been lately, actually, so this is a little unusual)
20:29:33 <elliott> C++
20:29:35 <elliott> now it's 26C
20:29:43 <boily> -13°C here.
20:29:52 <elliott> it's uh
20:29:55 <Fiora> usually it's ~10-15C
20:29:56 <shachaf> Poor boily.
20:30:05 <elliott> -1 C here apparently
20:30:06 <shachaf> Are you in Finland?
20:30:12 <elliott> (I googled "weather in hexham")
20:30:38 <boily> shachaf: minimum -22 tonight, going to hit around -26 next thursday.
20:30:44 <Bike> oh, it's actually above freezing here, weird.
20:30:57 <Fiora> http://en.wikipedia.org/wiki/Wikipedia:Lamest_edit_wars#The_weather_in_London
20:31:00 <Bike> elliott: http://www.thefuckingweather.com/?where=hexham&unit=c
20:32:45 <Bike> http://en.wikipedia.org/w/index.php?title=Special%3ALog&type=delete&user=&page=The+weather+in+London&year=&month=-1 oh wow, it's beautiful.
20:32:53 <elliott> Bike: apparently "I CAN'T FIND THAT SHIT"
20:33:01 <elliott> nor can most mortals
20:33:02 <shachaf> Fiora++ for being American and using °C, by the way.
20:33:05 <shachaf> Bike++ too?
20:33:19 <Bike> Peer pressure, man.
20:33:24 <Fiora> F is weird
20:33:36 <Fiora> I pretty much always use metric
20:33:37 <Bike> Usually I'd use Rankine, but the fucking weather doesn't support it.
20:34:00 <Fiora> though it's frustrating sometimes since like 80% of the time it goes like this
20:34:08 <shachaf> K and R are convenient because you don't have to type °?!?!
20:34:13 <Fiora> "fiora how tall are you 156cm *person puts 156cm into wolfram alpha to convert to feet*"
20:34:28 <Bike> gonna be honest, i have no head for cm.
20:34:41 <shachaf> For me it goes
20:34:43 -!- dessos has left.
20:34:54 <Taneb> I thought Fiora was French
20:35:06 <Taneb> What is going on
20:35:16 <shachaf> "shachaf how tall are you uh i have no idea let me look at my identification card thing????? oh it's in feet"
20:35:17 <Bike> wow, fiora. where aren't you from?
20:35:21 <Bike> hexham?
20:35:30 -!- DHeadshot has joined.
20:35:46 <elliott> Fiora is probably just from Helsinki.
20:35:52 <elliott> Bike: do you actually use rankine
20:35:56 <shachaf> `? helsinki
20:35:58 <HackEgo> helsinki? ¯\(°_o)/¯
20:36:01 <shachaf> What!
20:36:06 <shachaf> oerjan: Fix this immediately.
20:36:18 <Bike> elliott: no, i use rømerjan.
20:36:31 <elliott> `? finland
20:36:32 <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.
20:36:37 <Fiora> why do people think I'm from all these weird places @_@
20:36:40 <shachaf> `? Helsinki
20:36:40 <HackEgo> Helsinki? ¯\(°_o)/¯
20:36:45 <boily> `? Canada
20:36:46 <HackEgo> Canada? ¯\(°_o)/¯
20:36:49 <kmc> shachaf: @tqbf says "If you’re interesting in ~30 crypto breaking exercises, mail sean@matasano.com and he’ll get you started (he’s more responsive than me)"
20:36:49 <boily> beuh...
20:36:53 <Bike> `? the US
20:36:54 <HackEgo> The US is the country opposed to the THEM.
20:37:00 <kmc> i don't really understand if this is just open to anyone or what
20:37:03 <elliott> Fiora: It's hard to remember someone's true location when they're from somewhere weird like Kiribati.
20:37:12 <Fiora> @google Kiribati
20:37:12 <Bike> haha
20:37:13 <lambdabot> http://en.wikipedia.org/wiki/Kiribati
20:37:13 <lambdabot> Title: Kiribati - Wikipedia, the free encyclopedia
20:37:15 <Phantom_Hoover> is fiora from kiribati?
20:37:16 <elliott> What's it like in Kiribati???
20:37:20 <shachaf> kmc: Did you?
20:37:22 <Fiora> o_O
20:37:24 <Phantom_Hoover> yeah it sounds nice
20:37:34 <shachaf> kmc: I think it's probably open to anyone.
20:37:42 <Bike> well, in a few years kiribati's probably gonna sink, so you'd better take advantage of being in kiribati as much as possible
20:37:58 <Taneb> I thought Kiribati was in Finland
20:38:09 <Phantom_Hoover> ok this isn't funny any more, everyone knows Fiora is really from ullapool
20:38:21 <kmc> have not emailed yet
20:38:22 <elliott> Fiora: If you sink I won't be able to attend your funeral because Kiribati is really far away, sorry.
20:38:36 <Phantom_Hoover> elliott, also because the funeral will be underwater
20:38:50 <kmc> i just noticed it
20:38:51 <elliott> Phantom_Hoover: that's kind of a positive in my book
20:38:52 <Phantom_Hoover> 'tis the true highland way
20:38:57 <elliott> don't YOU want an underwater funeral
20:39:02 <Bike> «The name Kiribati is the local pronunciation of "Gilberts", derived from the main island chain, the Gilbert Islands, who in turn were named after the British explorer Thomas Gilbert» ok, that's... kind of amazing
20:39:12 <Phantom_Hoover> aye, 'tis the true highland way
20:39:57 <elliott> I need to remember a more nowhere island sometime, Kiribati has a few too many people I think.
20:40:06 <elliott> The problem is they all have ridiculous names.
20:40:14 <Bike> Palau?
20:40:26 <Taneb> South Georgia?
20:40:33 <elliott> Canada?
20:40:41 <kmc> 'I went to look for a PHP example but stopped when I found rand() used as a stream cipher in a popular framework.'
20:40:43 <Phantom_Hoover> the pitcairn islands?
20:40:45 <elliott> I hear Fiora lives there
20:40:59 <Phantom_Hoover> henderson island
20:41:04 <boily> réunion?
20:41:14 <elliott> Hmm, what was that barely-existing island I knew the name of once.
20:41:43 <Bike> Remember how you were going to be from Antarctica? http://en.wikipedia.org/wiki/Bellingshausen_Station
20:42:12 <Bike> http://en.wikipedia.org/wiki/File:Antarctica,_pollution,_environment,_Russia,_Bellingshausen_4.JPG great scenery imo
20:42:21 <elliott> Bike: That church is pretty good.
20:42:23 <shachaf> kmc: You should do it and tell me how it goes!
20:42:50 <Bike> oh, or Mestersvig, for the other side of the world.
20:43:09 <Phantom_Hoover> agh, what's that city in russia called
20:43:13 <kmc> yeah maybe i will
20:43:15 <Phantom_Hoover> the one that's a complete shithole
20:43:24 <Taneb> Vladivostok?
20:43:28 <Taneb> Mirnansk?
20:43:36 <kmc> Shitholegrad
20:43:38 <Phantom_Hoover> no
20:43:43 <Bike> "As of the 2000 census, Point of Rocks had a total population of three" i love these articles.
20:43:43 <Taneb> Moscow?
20:44:24 <elliott> guys does wikipedia have like a globe
20:44:24 <Phantom_Hoover> Norilsk!
20:44:25 <kmc> Kompletskaya Shitholegrad
20:44:27 <elliott> where you can click countries
20:44:28 <Phantom_Hoover> That's the one.
20:44:31 <elliott> oh I guess I'll just go to google maps
20:44:37 <elliott> and try and zoom in on fuck all
20:44:38 <kmc> there's wikimapia
20:44:47 <Bike> http://en.wikipedia.org/wiki/List_of_places_with_fewer_than_ten_residents
20:45:09 <olsner> Phantom_Hoover: yes, that's the one
20:45:14 <Phantom_Hoover> hey kiribati is on that list
20:45:24 <elliott> http://en.wikipedia.org/wiki/Wikipedia:Articles_for_deletion/List_of_places_with_fewer_than_ten_residents
20:45:26 <boily> embarras. he he he :D
20:45:27 <elliott> oh no
20:45:28 <elliott> it's threatened
20:45:35 <Bike> no!!!
20:46:06 <Bike> Phantom_Hoover: I like the idea of a place called "Several of the Line Islands".
20:46:21 <Phantom_Hoover> man
20:46:23 <Taneb> I live in several of the line islands
20:46:26 <ais523> that article needs deletion, really
20:46:28 <Phantom_Hoover> each time i read about norilsk
20:46:34 <elliott> ais523: I think *you* need deletion.
20:46:35 <Phantom_Hoover> the happier i am that i'm not from norilsk
20:46:38 <ais523> elliott: no you don't
20:46:38 -!- KingOfKarlsruhe has joined.
20:47:09 <elliott> Bike: by the way, you're now on my list of people to track down and drag along with me to Antarctica some day.
20:47:21 <Phantom_Hoover> who else is on that list
20:47:43 <elliott> Phantom_Hoover: you, for one.
20:47:48 <Bike> elliott: cool. did you know for shipping they have to use piers made of ice
20:48:10 <Phantom_Hoover> Bike will be the expert on antarctica
20:48:54 <elliott> okay so
20:48:58 <elliott> i went to wikimapia per Bike
20:49:03 -!- Frooxius_ has joined.
20:49:05 <elliott> and found a tiny little nowhere that looked like it might be it
20:49:07 <elliott> zoomed in
20:49:12 <elliott> thought aw yeah this looks remote maybe it's it
20:49:15 <elliott> turns out it's hawaii
20:49:18 <elliott> i am not very good at this
20:50:10 <Bike> Phantom_Hoover: re norilsk, it could be a lot worse: http://en.wikipedia.org/wiki/File:Military_Vehicle,_Lorino.jpg
20:50:17 <Bike> (caption: "Transport in Lorino")
20:50:21 <shachaf> elliott: i love hawaii
20:51:03 -!- Frooxius has quit (Ping timeout: 260 seconds).
20:51:29 <Phantom_Hoover> elliott, easter island
20:51:45 <elliott> Phantom_Hoover: Easter Island is cool but no it was more remote
20:51:51 <elliott> it was called like some three letter thing
20:51:52 <Phantom_Hoover> tristan de cunha
20:52:20 <Bike> http://en.wikipedia.org/wiki/File:Anadyr_harbour3.jpg hm, looks pretty nice considering where it is
20:52:35 <elliott> by the way someone should give me lots of money so i can go to all these places
20:52:38 <elliott> Phantom_Hoover: no like
20:52:38 <elliott> literally three letters
20:52:55 <shachaf> elliott: You would go to Hawaii?
20:52:56 <Phantom_Hoover> hmm
20:52:58 <Phantom_Hoover> aaa?
20:53:00 <Phantom_Hoover> aab?
20:53:00 <Taneb> Guam?
20:53:01 <Phantom_Hoover> aac?
20:53:14 <Bike> guam isn't nowhere, it just has more airplanes than people is all.
20:53:25 <elliott> shachaf: :(
20:53:30 <elliott> (But sure.)
20:53:42 <boily> I should visit île dorval some time, it's not so far away.
20:53:48 <shachaf> elliott: but that's like america.................
20:53:58 <Bike> btw were you aware that US territories have the worst flags in the world
20:54:01 <elliott> The problem with tiny remote islands is that they're tiny and remote so it's hard to find them.
20:54:02 <Taneb> > let as = ['a'..'z'] in liftA3 (,,) as as as & map (toListOf each)
20:54:03 <shachaf> Other than, you know, geographically.
20:54:04 <lambdabot> Not in scope: `each'
20:54:09 <shachaf> > replicateM 3 ['a'..'z']
20:54:10 <elliott> fuck
20:54:10 <lambdabot> ["aaa","aab","aac","aad","aae","aaf","aag","aah","aai","aaj","aak","aal","a...
20:54:12 <elliott> I just zoomed in on hawaii again
20:54:33 <Phantom_Hoover> elliott, there was that one the essex crew landed on-- wait that was henderson island
20:54:36 <shachaf> Taneb..
20:54:40 <Bike> http://en.wikipedia.org/wiki/File:Flag_of_the_Northern_Mariana_Islands.svg i mean what is this
20:54:43 <Phantom_Hoover> but come on
20:54:56 <Taneb> shachaf, why be rational when you can be amazing
20:55:05 <elliott> okay I found kiritimati
20:55:06 <shachaf> Taneb: STOP TRYING TO GET LENS INTO EVERYTHING
20:55:11 <shachaf> Bike: You should use lens!
20:55:11 <Taneb> NEVER
20:55:17 <Phantom_Hoover> its only significant features are birds and dead people
20:55:26 <Bike> shachaf: i'm getting mixed messages here
20:55:43 <elliott> it was like
20:55:45 <shachaf> Bike: The first thing to ask yourself is: "Am I Taneb?"
20:55:46 <elliott> bap island or something
20:55:55 <Taneb> `? Taneb
20:55:57 <HackEgo> Taneb is not elliott, no matter who you ask. He also isn't a rabbi although he has pretended in the past.
20:55:58 <Phantom_Hoover> (i assume everyone has heard the story of the essex because it is amazing)
20:55:59 <Bike> shachaf: I'm no philosopher.
20:56:00 <shachaf> The second thing: "Am I Ngevd?" Then "Am I atriq?" and all the rest.
20:56:06 <Taneb> Bike, are you elliott or a Rabbi?
20:56:14 <shachaf> `? elliott
20:56:16 <Taneb> Or both
20:56:18 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?
20:56:24 <Bike> When I asked how one became elliott he said he hoped he'd never know.
20:56:32 <Phantom_Hoover> `? Bike
20:56:34 <HackEgo> Bike ? ¯\(°_o)/¯
20:56:40 <elliott> found savai'i which I was previously unaware of the existence of
20:56:40 <Phantom_Hoover> `? Fiora
20:56:41 <HackEgo> Fiora ? ¯\(°_o)/¯
20:56:47 <Fiora> ??
20:56:48 <Phantom_Hoover> UNACCEPTABLE
20:56:52 <Bike> So I don't know, since I'm not as smart as elliott, unless I am elliott, in which case I am as smart as elliott but don't know that because I don't know that I am elliott.
20:56:52 <Fiora> what does everyone want with me ;-;
20:56:56 <elliott> Phantom_Hoover: story of the essex?
20:57:09 <Phantom_Hoover> elliott, it was this whale boat which was literally in real life sunk by a whale
20:57:10 <elliott> Fiora: your true location, clearly
20:57:19 <elliott> Phantom_Hoover: okay that is pretty good
20:57:27 <shachaf> `learn Fiora just wants to be left alone.
20:57:30 <HackEgo> I knew that.
20:57:30 <Phantom_Hoover> and then the crew sailed across the pacific and ate each other
20:57:38 <Bike> Ok, I was confusing Halifax and Elliott. I mean Essex.
20:58:01 <Bike> Halifax being the town that blew up. Not a whale ship thing guy.
20:58:07 <elliott> savai'i looks pretty nice
20:58:13 <elliott> not the island I was thinking of though
20:58:35 <Bike> "For the mythical original homeland of the Polynesian peoples (sometimes referred to as Savai'i), see Hawaiki"
20:58:36 <shachaf> elliott: Wait, I missed the beginning of this.
20:58:38 <elliott> Phantom_Hoover: Is it just me or is it really fucking weird to see water that isn't sort of murky greenbluegrey?
20:58:59 <shachaf> Which island are you looking for?
20:59:00 <Bike> elliott: Just default to hy-brazil and give up
20:59:09 <boily> `? boily
20:59:11 <HackEgo> boily may be French or something. We are not sure about the rest.
20:59:13 <elliott> shachaf: That island.
20:59:22 <Phantom_Hoover> elliott, it's just you
20:59:24 <elliott> Hmm, maybe it was a two-letter island?
20:59:35 <boily> `learn boily is Canadian or something. We are not sure about Canada's existence.
20:59:39 <HackEgo> I knew that.
20:59:48 <elliott> http://en.wikipedia.org/wiki/List_of_short_place_names
20:59:54 -!- Sgeo_ has joined.
21:00:09 <Bike> Maybe we should use Wikivoyage to figure out which uninhabited pile of rocks elliott wants to set up on.
21:00:30 <elliott> Bike: It's habited!!!!!!!!!!!
21:00:32 <Bike> Wow, that's more "Å"s than I've ever seen in my life.....
21:00:52 -!- Sgeo has quit (Ping timeout: 248 seconds).
21:01:17 <Bike> «The once-nameless river, known as the "shortest river in the world"[4][5][6][7] was listed in the Guinness World Records as the world's shortest river at 440 feet (130 m). » this is stupid.
21:01:21 <elliott> God dammit, I've forgotten which ocean is which.
21:01:23 <elliott> Geography is terrible.
21:01:30 <Bike> You already have Mill Ends, Oregon. You can stop.
21:01:40 -!- boily has quit (Quit: Poulet!).
21:01:43 <shachaf> elliott: the pacific ocean is the good one, hth
21:02:36 <Taneb> elliott, the atlantic is the one you're near
21:02:44 <Bike> The pacific ocean is half the world and surrounded by fire. The atlantic ocean is less cool than its giant underwater moutain range. The arctic ocean is cold. The indian ocean is full of typhoons and non-eurocentric shipping.
21:02:56 <Bike> Also the divisions don't make any sense any way so fuck 'em, they're all just fucking water.
21:03:17 <shachaf> Bike: new proposal:
21:03:21 <shachaf> rename all oceans to "the ocean"
21:03:42 <shachaf> i love the ocean
21:03:43 <olsner> too late, they are already the ocean
21:03:44 <Bike> Aye.
21:03:46 <shachaf> it is so easy
21:03:59 <kmc> once in a bookstore i saw a book about the oscillatory modes of the world's ocean
21:04:12 <shachaf> olsner: what's the swedish word for ocean
21:04:26 <elliott> aha
21:04:29 <elliott> I think it might have been Yap
21:04:32 <Bike> "IJ, a double lake in the Netherlands (the digraph IJ is sometimes considered a single letter in Dutch, so this could also be seen as a one-letter name)"
21:04:33 <olsner> it's 'ocean'
21:04:37 <shachaf> oerjan: what's the norwegian word for ocean
21:04:58 <elliott> oh that's in the Federated States of Micronesia
21:05:00 <elliott> maybe not obscure enough
21:05:05 <olsner> (or 'hav')
21:05:11 <Bike> elliott: Oh, this is the place with Rai stones? Not nearly obscure enough.
21:05:17 <oklopol> you don't have your own word for it?
21:05:36 <shachaf> oklopol: what's the finnish word for ocean
21:05:42 <oklopol> we have valtameri, which means power sea.
21:05:45 <elliott> Bike: well, the problem is that there is too much stuff in the world.
21:06:01 <elliott> Bike: Please help me find a tiny barely-inhabited island with a vaguely memorable name to replace it.
21:06:02 <shachaf> oklopol: That's a good prefix.
21:06:08 <shachaf> Do you prepend it to other things?
21:06:14 <oklopol> not really.
21:06:16 <Bike> IMO just hole up at Disappointment Island and shoot at passing whalers
21:06:31 <oklopol> mainstream = valtavirta
21:06:35 <oklopol> maybe it's for liquids.
21:07:06 <shachaf> ^rot13 cat
21:07:06 <fungot> png
21:07:16 <shachaf> good point
21:07:20 <elliott> "In 2004, charges were laid against seven men living on Pitcairn and six living abroad. After extensive trials the men were convicted, some with multiple counts of sexual attacks of children.[15] On 25 October 2004, six men were convicted, including Steve Christian, the island's mayor at the time.[16][17][18] After the six men lost their final appeal, the British government set up a prison on the island at Bob's Valley.[19][20] The men began serving
21:07:27 <elliott> I like how they had to build a prison for the purpose.
21:07:43 <olsner> shachaf: and yet all the cats are gifs?
21:07:59 <elliott> Bike: "These islands are dry, and not especially conducive to human habitation."
21:08:17 <elliott> Oh, I guess you meant the singular one.
21:08:30 <Bike> The one in the subantarctic, yeah.
21:08:37 <Bike> "easier"
21:08:59 <elliott> Hmm, Auckland Island looks pretty.
21:09:27 <Bike> "Inacessible Islands", straightforward naming there
21:10:19 <Bike> oh, Deception Island is the one I was thinking of.
21:10:36 <Bike> The deception is that it's in the Antarctic, so you think it'd be cold. It is cold, but also volcanoes will kill you.
21:11:04 <Bike> http://en.wikipedia.org/wiki/File:Ile_de_la_Deception.svg more importantly, seems like a great place to hide your evil lair.
21:14:50 <Gregor> Bike: They'll rename them once they find a way to access them.
21:15:52 <ion> ಠ_ಠ http://www.popsci.com/diy/article/2013-01/rewire-your-file-transfer-routine
21:16:54 <Gregor> Don't most modern ethernet cards do on-the-fly crossover anyway?
21:17:30 <kmc> yes
21:17:43 <kmc> i think most cards from the past 8 years or so
21:17:44 <ion> Even if the reader’s card doesn’t, why buy a new straight Ethernet cable and then modify it to be crossover?
21:17:51 <kmc> it might even be required by the GigE spec
21:18:22 <olsner> "Automatic MDI/MDI-X Configuration is specified as an optional feature in the 1000BASE-T standard"
21:18:26 <kmc> 'When moving terabytes of data from one computer to another, cut out the external drive... by cutting up an Ethernet cable.'
21:18:34 <kmc> or plugging them into the same switch?
21:19:13 <kmc> i did use direct GigE with jumbo frames when I had to move 5 TB between servers
21:19:14 <olsner> I guess this tutorial is for the kind of people who simply move the internet cable between computers
21:19:24 <kmc> i also configured rsync to use rsh instead of ssh :X
21:21:25 <Sgeo_> o.O did you need to specify using jumbo frames?
21:21:35 <Sgeo_> How much overhead would not using jumbo frames have introduced?
21:23:22 <kmc> i didn't measure it
21:28:38 <elliott> Bike: did you know there's like a billion countries
21:28:44 <elliott> well 206 but same thing
21:28:48 <Sgeo_> Maybe it could be calculated?
21:29:00 <kmc> depends who you ask elliott
21:29:03 <Sgeo_> How big would the jumbo frames have been?
21:29:12 <Sgeo_> How big are regular frames
21:29:13 <kmc> Sgeo_: the overhead is going to depend on a lot of factors
21:29:16 <Sgeo_> Oh
21:29:29 <Bike> elliott: Apparently most of them aren't in Europe either. Who knew
21:29:47 <kmc> the concern is not so much the number of bytes on the wire as the overhead at OS, driver, and firmware level of having more frames
21:29:48 <elliott> kmc: I asked Bike
21:30:00 <kmc> it will depend a lot on the driver
21:30:04 <Sgeo_> Ah, ok
21:30:14 <Sgeo_> So the concern is speed, not amount of data?
21:30:21 <kmc> i don't understand that question
21:30:40 <kmc> the throughput is higher with jumbo frames because each additional frame takes some time to process at various layers
21:30:48 <Bike> There's an organization set up for areas that want to become independent countries. Couple American Native tribes in it iirc
21:31:25 <kmc> it affects higher levels too
21:31:30 -!- Nisstyre has joined.
21:31:37 <kmc> either IP is going to fragment to fit the MTU, or TCP is going to send smaller packets, which need acking each
21:33:21 <Bike> huh, i had no idea assyrian nationalism existed
21:34:07 <elliott> http://en.wikipedia.org/wiki/File:Deception-Tourists.jpg
21:34:10 <elliott> deception tourists
21:34:43 <Bike> good photo
21:34:47 <Sgeo_> Active volcano?
21:34:56 <Bike> yeah, it's wiped out research stations a few times
21:35:34 <Sgeo_> That seems like not the place to go into water
21:35:41 <Sgeo_> There's a trick
21:35:52 <Sgeo_> That's some pit other than the obvious one, I assume?
21:36:29 <Bike> what are you talking about
21:36:48 <Bike> it's just a volcanic bath
21:37:27 <Bike> "an Inner Mongolian secessionist movement. The party was started in 1997 in Princeton, New Jersey" ouch
21:45:34 <Taneb> Sounds like a lame party
21:58:43 <elliott> (diff | hist) . . Esolang talk:Community portal‎; 20:56 . . (+518)‎ . . ‎Star651 (Talk | contribs | block)‎ (→‎Maybe esoteric programming is an adult/mature-content subject ... ?: new section) [rollback]
21:58:50 <elliott> I wonder what this is about.
22:02:40 <Sgeo_> He thinks the word "fuck" is R-rated
22:02:44 <Sgeo_> s/he/e/
22:03:27 <Taneb> This is the same guy who sent PH hatemail for his Tumblr
22:05:00 -!- Snowyowl has joined.
22:06:13 <Phantom_Hoover> unfortunately he didn't swear whilst doing so
22:07:36 <Taneb> Goodnight, guys
22:07:38 -!- Taneb has quit (Quit: Leaving).
22:08:07 <Phantom_Hoover> how does he go to bed at 10
22:08:11 <Phantom_Hoover> it's not natural, i swear
22:10:02 -!- carado has quit (Ping timeout: 246 seconds).
22:10:23 <elliott> Snowyowl: on a scale of 0 to 15 how snowy are you
22:11:17 <Phantom_Hoover> 5
22:11:44 <shachaf> > 5/15
22:11:45 <lambdabot> 0.3333333333333333
22:11:51 <shachaf> that's not very snowy............................
22:12:51 <shachaf> Oh, Star651?
22:12:59 <shachaf> I'm a big fan of Star651.
22:15:25 <Snowyowl> ... oh, someone asked me a question
22:15:52 <Snowyowl> 3.999999952, but that might be a floating-point error.
22:16:12 -!- derkus has joined.
22:22:21 <shachaf> i love floating point errors
22:22:23 <shachaf> NO SHACHAF NO
22:23:26 <Snowyowl> they are only an unfortunate consequence of our lack of infinite-memory computers
22:24:40 <Snowyowl> once I perfect my design for an aleph-null megabyte RAM, such errors will be in the past
22:26:01 <Bike> you want to represent real numbers with only aleph-null memory?
22:26:23 <Fiora> computable reeeals
22:26:24 <Snowyowl> yes
22:26:41 <Snowyowl> aleph-null bits have aleph-one possible states
22:27:06 <Bike> fair enough
22:28:22 <Bike> i won't be using it until we have beth-three ecc ram though
22:30:05 <Snowyowl> wonder what you could do with that
22:30:17 <Snowyowl> functions of functions of reals?
22:30:18 <shachaf> > (pi :: CReal) == (pi :: CReal)
22:30:19 <lambdabot> True
22:30:25 <shachaf> lambdabot: MAGICIAN??
22:30:54 <Bike> I plan to use it for my new startup, which will provide a Facebook-like API to real numbers and their dogs.
22:32:02 <Snowyowl> mind you, this is also assuming infinite clock speed
22:32:30 <Fiora> social networks of real numbers
22:32:32 <Fiora> it's web 4.0
22:32:49 <Fiora> PI: relationship with 'e': "it's complicated"
22:32:49 <Bike> Unfortunately we can't verify that it's exactly 4.0 yet, but we're working on it.
22:32:50 <Snowyowl> web 3.999999...
22:33:15 -!- sebbu2 has joined.
22:33:15 -!- sebbu2 has quit (Changing host).
22:33:15 -!- sebbu2 has joined.
22:33:51 <Snowyowl> 220 and 284 are now friends
22:34:22 -!- sebbu has quit (Disconnected by services).
22:34:24 -!- sebbu2 has changed nick to sebbu.
22:37:48 <Snowyowl> yall are just quiet cause you're still verifying 4.0 == 3.999999...
22:40:12 <myndzi> is this some variant of 0.999999999... = 1?
22:40:19 <myndzi> 'cause you know how that turns out on the internet right?
22:41:01 <Bike> i'm pretty sure we all know basic math, myndzi.
22:41:17 <shachaf> myndzi: NUH UH 0.99999999... = 2
22:41:19 <Snowyowl> myndzi: somebody drives it off-topic by mentioning an aeroplane on a treadmill
22:42:06 -!- Vorpal has quit (Ping timeout: 276 seconds).
22:42:08 <Bike> could an airplane on a treadmill going at .999...c through a black hole endorse lens?
22:42:09 <elliott> Fiora: You missed a dumb complex number joke. :(
22:42:31 <Snowyowl> lens?
22:42:36 <elliott> myndzi: Um, you forgot the 7 at the end of 0.99999999...7!!!
22:43:54 <Snowyowl> elliott: 0.999999...7 + 0.000000...2 = 0.999999..., but 0.999999...7 + 0.000000...3 = 1. QED
22:44:25 <fizzie> But does 0.999...5 round up to 0.999...10 or down to 0.999...0?
22:44:32 <elliott> fizzie: It's random.
22:44:34 <Snowyowl> my logic is consistent, although it ears no relation to any actual maths
22:44:39 <Jafet> > 0.99999999999999999999999999999999999999999999999999999999999999999999999999999999999 == 1
22:44:40 <lambdabot> True
22:44:49 <Jafet> > 0.99999999999999999999999999999999999999999999999999999999999999999999999999999999999 == (1 :: CReal)
22:44:50 <lambdabot> True
22:44:51 <Snowyowl> well that settles that
22:45:00 <myndzi> haha.
22:45:12 <Snowyowl> 0.9999999999999999999999999999999999999999 === 1
22:45:33 <Snowyowl> ... what language does lambdabot use again?
22:45:53 <Bike> typed befunge
22:45:55 <Jafet> > iterate f x
22:45:56 <lambdabot> [x,f x,f (f x),f (f (f x)),f (f (f (f x))),f (f (f (f (f x)))),f (f (f (f (...
22:46:09 <Bike> aka caleskell
22:46:18 <Snowyowl> I see.
22:46:26 <Jafet> caleskell isn't two-dimensional, sorry
22:46:35 <Snowyowl> wait no i don't
22:46:39 <shachaf> i love befunge
22:46:42 <shachaf> it is so easy
22:46:44 <Snowyowl> iterate x^2
22:46:45 <elliott> no shachaf
22:46:52 <Bike> Snowyowl: the "> " is important.
22:46:53 <shachaf> elliott: i tried.......
22:46:59 <Jafet> (Lambda cube languages are three-dimensional...?)
22:47:03 <Snowyowl> didn't see that there
22:47:04 <shachaf> befunge is like monoids
22:47:13 <Snowyowl> ... shit, you were serious?
22:47:30 <elliott> (lambdabot uses Haskell)
22:47:31 <Bike> "no"
22:47:59 <Snowyowl> (Oh, okay.)
22:48:21 <shachaf> FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE
22:48:55 <Snowyowl> iterate reverse "desserts"
22:49:08 <Snowyowl> > iterate reverse "desserts"
22:49:09 <lambdabot> ["desserts","stressed","desserts","stressed","desserts","stressed","dessert...
22:49:35 <Snowyowl> w00t i am a l33t Haskellx0r
22:49:42 <Bike> hackskeller
22:49:53 <Jafet> Wonder what befunge is like on the hyperbolic plane
22:49:59 <ion> > permutations "desserts"
22:50:00 <lambdabot> ["desserts","edsserts","sedserts","esdserts","sdeserts","dseserts","ssedert...
22:51:50 <Snowyowl> sort "maltos"
22:51:56 <Snowyowl> >sort "maltos"
22:52:04 <Bike> you also need the space.
22:52:18 <Snowyowl> okay I'll go find a real Haskell interpreter and stop flooding the chat
22:52:42 <Bike> just get ghci
22:54:51 <elliott> Snowyowl: the space is important too
22:54:56 <Phantom_Hoover> Jafet, hard to define
22:55:02 <Jafet> Not in scope: `real Haskell'
22:55:05 <elliott> Snowyowl: (get the Haskell Platform, if you're serious)
22:55:06 <kmc> Snowyowl: you can private message lambdabot
22:55:15 <Jafet> befunge on penrose tilings
22:55:20 <Bike> Isn't there "befunge but on R^2" somewhere, I swear I saw it
22:55:33 <Bike> you just angled control around. seems like that'd be easy to generalize
22:55:43 <Phantom_Hoover> Bike, how would that work
22:55:55 <kmc> most ever befungiest funge you befunger funge
22:56:01 <Phantom_Hoover> to do it properly you'd obviously have to process an uncountable number of instructions
22:56:05 <Snowyowl> if you only allowed movement in horizontal or vertical directions, it might be interesting
22:56:23 <Bike> Phantom_Hoover: the only control things are at specified points. it's like bouncing a laser around.
22:56:29 <Phantom_Hoover> oh
22:56:37 <kmc> `quote <shachaf> FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE
22:56:37 <shachaf> befunge: easy?
22:56:38 <Bike> kinda boring maybe
22:56:39 <HackEgo> No output.
22:56:40 <Phantom_Hoover> man that would be cool though
22:56:48 <Snowyowl> befunge on Q^2
22:57:01 <Snowyowl> because fractions that's why
22:57:10 <Bike> well yeah the practical implementation would be on Q² or whatever you call computables ² but that's "boring"
22:57:28 <Phantom_Hoover> also probably turing-complete
22:57:43 <Bike> obviously we need superturing power.
22:57:47 <shachaf> `? qdb
22:57:49 <HackEgo> qdb is used like: `quote; `quote regexp; `quote id; `addquote ...; `delquote id; `pastequotes regexp; `pastenquotes [n]; see also qdbformat
22:57:55 <Bike> anyway what's the blackboard bold for computable reals
22:57:56 <Snowyowl> befunge on ordinals^2
22:58:18 <Snowyowl> no, wait: surreals^2, because fuck well-ordering
22:58:31 <Phantom_Hoover> Bike, we need... SuperTuring!
22:58:33 <Bike> is ordinals^2 even a sensible anything
22:58:58 <Phantom_Hoover> http://codu.org/tmp/superturing.ogg
22:59:18 <Bike> Did you just... have that already, or...
22:59:26 <Phantom_Hoover> yes
22:59:29 -!- oerjan has joined.
22:59:50 <Bike> this is a pretty cruddy soundfont
22:59:56 <shachaf> welcoerjan
22:59:59 <Snowyowl> what is it
23:00:01 <shachaf> `welcoerjan
23:00:02 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcoerjan: not found
23:00:02 <Phantom_Hoover> sadly Sgeo_'s diagonalfish thing is down so his karaoke may be lost to the world
23:00:06 <oerjan> shachaf: "hav"
23:00:11 <elliott> kmc: it's "addquote"
23:00:13 <ion> Wat superturing generated programmatically?
23:00:24 <Phantom_Hoover> and talk esme baby is lost to history
23:00:26 <ion> Was even.
23:00:35 <Phantom_Hoover> the musical corpus of #esoteric has crumbled
23:00:55 -!- Snowyowl has quit (Quit: Page closed).
23:02:01 <Fiora> interesting
23:02:08 <Fiora> e^pi is transcendental, pi^pi hasn't been proven to be
23:02:22 <Bike> proving things transcendental is kind of a bitch, isn't it?
23:02:32 <shachaf> i love proving things transcendental
23:02:37 <oerjan> e^pi is transcendental?
23:02:38 <Fiora> the e^pi proof is so elegant though
23:02:46 <kmc> elliott: o
23:02:49 <kmc> `addquote <shachaf> FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE
23:02:53 <HackEgo> 919) <shachaf> FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE
23:03:06 <Fiora> e^pi = (e^(i*pi))^(-i) = (-1)^(-i)
23:03:20 <oerjan> oh hm
23:03:21 <ion> > [exp pi, pi ** pi] :: [CReal]
23:03:22 <Fiora> since -i is algebraic but not rational, e^pi is transcendental
23:03:23 <lambdabot> [23.1406926327792690057290863679485473802661,36.462159607207911770990826022...
23:04:04 <oerjan> right, -i is still not rational
23:04:12 <Bike> I like the bit about how one of e*pi and e+pi is transcendental, or however it went.
23:04:57 <oerjan> Bike: that works. at least one, probably both, cannot prove either.
23:05:07 <Phantom_Hoover> is it the euler-mascheroni constant that hasn't even been proven irrational?
23:05:16 <Bike> Yes.
23:05:37 <Bike> oerjan: Cannot prove or just haven't proven?
23:05:45 <oerjan> haven't proven
23:05:55 <Bike> right just checking
23:06:12 <elliott> euler-maceroni
23:06:38 <elliott> number γ has not been proved algebraic or transcendental. In fact, it is not even known whether γ is irrational. Continued fraction analysis reveals that if γ is rational, its denominator must be greater than 10^242080.[4]
23:06:42 <elliott> *The
23:06:42 <elliott> thats a big number
23:07:14 <elliott> "The continued fraction has *at least* 470,000 terms"
23:07:31 <Sgeo_> Phantom_Hoover, I could try to retrieve it and put everything on dropbox
23:07:44 <Bike> it's a "barely rational" number, if it's rational :P
23:07:51 <elliott> Sgeo_: do you have talk esme baby
23:07:55 <Phantom_Hoover> Sgeo_, do it
23:08:00 <Sgeo_> elliott, no, but I have my karaoke
23:08:03 <Sgeo_> Somewhere
23:08:05 <elliott> good enough
23:08:06 <oerjan> Bike: an interesting question whether it could be provable that it is unprovable, though.
23:08:20 <Phantom_Hoover> what if i need to torture someone discreetly
23:08:30 <Phantom_Hoover> i am presently at a loss
23:09:04 <Bike> oerjan: has anything relating to both transcendence and computability been worked on?
23:09:13 <oerjan> Bike: i don't know
23:09:25 <Bike> "The non-computable numbers are a strict subset of the transcendental numbers" well there's something
23:09:29 <Bike> not that e+pi is noncomputable
23:09:47 <Bike> also sort of obvious but whatever
23:10:08 <Bike> "It is conjectured that all infinite continued fractions with bounded terms that are not eventually periodic are transcendental" oooooh
23:10:53 <Bike> ugh of course i don't have access to the paper. damn you free market
23:12:00 <Phantom_Hoover> link?
23:12:31 <Bike> http://dx.doi.org/10.1007%2FBF02588048
23:13:18 <Phantom_Hoover> nope
23:13:38 <Phantom_Hoover> paywalled for me too
23:14:52 <elliott> Bike: i literally just googled the title
23:14:54 <elliott> and a pdf is the second result
23:14:57 <elliott> step up yr game
23:15:19 <Bike> well maybe i wanted it /legitimately/ you damn piriahahahaha
23:15:45 <elliott> lol
23:16:07 <Phantom_Hoover> i'm not sure but were you about to say 'piranha' there
23:17:17 <Bike> hm so the two papers i have open are this thing on complex fractions, and something about buddhism vs cartesian dualist neuroscience. ...i wonder if buddhist mathematicians ever came up with continued fractions...
23:17:41 <Jafet> Google communism
23:23:29 <oerjan> Phantom_Hoover: he probably meant "pariah" hth
23:23:39 -!- variable has joined.
23:24:08 <Bike> pirahã, of course.
23:24:40 <shachaf> pirah̃a
23:25:39 <elliott> pîranha
23:25:41 <oerjan> "499 The Aryabhatiya contains the solution of indeterminate equations using continued fractions" may have been a hindu though
23:26:00 <elliott> pïränḧä
23:26:09 <elliott> I like how that ḧ renders in a different font for me.
23:26:25 <Bike> «The Aryabhatiya begins with an introduction called the "Dasagitika" or "Ten Giti Stanzas." This begins by paying tribute to Brahman, the "Cosmic spirit" in Hinduism.»
23:26:46 <Bike> http://en.wikipedia.org/wiki/%C4%80ryabha%E1%B9%AD%C4%ABya#Significant_verses amazing
23:28:10 <elliott> Bike: lol
23:38:54 -!- augur_ has quit (Remote host closed the connection).
23:52:32 <oerjan> @tell Taneb <Taneb> Futuerjan: I saw your edits on the Fueue article <-- HOW CAN YOU DO THAT WITHOUT A GUI?
23:52:32 <lambdabot> Consider it noted.
23:53:48 <oerjan> without being zzo38 or something
23:56:08 <oerjan> ok he got that fixed
23:57:34 <oerjan> <oklopol> guess how many times i've almost written that subshit <-- ARE YOU SURE YOU ARE SUBCONSCIOUSLY SATISFIED WITH YOUR CURRENT JOB
2013-01-18
00:26:04 <oerjan> `addquote <Bike> Usually I'd use Rankine, but the fucking weather doesn't support it.
00:26:08 <HackEgo> 920) <Bike> Usually I'd use Rankine, but the fucking weather doesn't support it.
00:26:32 <Sgeo_> I cannot live without list comprehensions
00:26:43 <oerjan> sure you can!
00:26:50 <oerjan> just use do-notation instead!
00:27:37 <oerjan> > do x <- [1..10]; y <- [1..10]; return (x*y)
00:27:38 <lambdabot> [1,2,3,4,5,6,7,8,9,10,2,4,6,8,10,12,14,16,18,20,3,6,9,12,15,18,21,24,27,30,...
00:28:11 * Sgeo_ is struggling with Smalltalk
00:28:12 <oerjan> > join.liftM2(*)$[1..10]
00:28:14 <lambdabot> Couldn't match type `[]' with `(->) [a0]'
00:28:17 <oerjan> eep
00:29:10 <oerjan> > join`id`liftM2(*)$[1..10]
00:29:12 <lambdabot> [1,2,3,4,5,6,7,8,9,10,2,4,6,8,10,12,14,16,18,20,3,6,9,12,15,18,21,24,27,30,...
00:29:27 <Sgeo_> <gokr> #((1 2 3) #(4 5 6)) reduce: [:x :y |
00:29:27 <Sgeo_> <gokr> x gather: [:a |
00:29:28 <Sgeo_> <gokr> y collect: [:b | a + b]]]
00:29:34 <Sgeo_> I have no idea what's going on in that
00:30:09 <oerjan> oh wait
00:30:18 <oerjan> > liftM2(*)`join`[1..10]
00:30:20 <lambdabot> [1,2,3,4,5,6,7,8,9,10,2,4,6,8,10,12,14,16,18,20,3,6,9,12,15,18,21,24,27,30,...
00:33:10 <oerjan> `? helsinki
00:33:11 <HackEgo> helsinki? ¯\(°_o)/¯
00:33:53 <oerjan> `learn Helsinki is the capital of Finland. Its main suburb is Hexham in Northumberland.
00:33:56 <HackEgo> I knew that.
00:34:33 <oerjan> <shachaf> oerjan: Fix this immediately. <-- OKAY
00:35:07 <Bike> that wasn't very immediate
00:35:18 <oerjan> it was immediate on logreading
00:35:23 <Bike> ah
00:35:57 <oerjan> `sed -i 's/ in/,/' wisdom/helsinki
00:35:58 <HackEgo> Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]... \ \ -n, --quiet, --silent \ suppress automatic printing of pattern space \ -e script, --expression=script \ add the script to the commands to be executed \ -f script-file, --file=script-file \ add the contents of script-
00:36:02 <oerjan> `run sed -i 's/ in/,/' wisdom/helsinki
00:36:05 <HackEgo> No output.
00:36:09 <Bike> Sgeo_: I'm more confused on what #((1 2 3) #(4 5 6)) is. An array of a list and an array would just be too easy.
00:36:10 <oerjan> `? helsinki
00:36:12 <HackEgo> Helsinki is the capital of Finland. Its main suburb is Hexham, Northumberland.
00:36:17 <oerjan> oh hm
00:36:21 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.89 [Firefox 18.0/20130104151925]).
00:36:26 <oerjan> `run sed -i 's/ / /' wisdom/helsinki
00:36:29 <HackEgo> No output.
00:36:33 <oerjan> `? helsinki
00:36:34 <HackEgo> Helsinki is the capital of Finland. Its main suburb is Hexham, Northumberland.
00:37:02 <Sgeo_> Bike, I'm guessing just a redundant #
00:37:07 <Phantom_Hoover> `? hexham
00:37:08 <HackEgo> Hexham is a European town. There are nine people in Hexham, and at least two of them are in this channel. Taneb looks after the ham.
00:37:23 <Sgeo_> Both with and without the inner # ends up printing #(#(1 2 3) #(4 5 6))
00:37:36 -!- comex` has changed nick to comex.
00:38:01 <Phantom_Hoover> `learn Bike is from Luxembourg.
00:38:04 <HackEgo> I knew that.
00:38:40 <Phantom_Hoover> `learn Fiora is from some island somewhere.
00:38:44 <HackEgo> I knew that.
00:39:04 <oerjan> Phantom_Hoover: i feel these lack a certain something.
00:39:13 <Phantom_Hoover> i'm too tired for something
00:39:18 <oerjan> and it's not just truth
00:39:27 <c00kiemon5ter> beaky is on C :D
00:39:31 <Bike> `learn Fiora is from some island somewhere. She just doesn't want to be bothered, as she works out her domination plan as immortal queen of the dragons.
00:39:34 <HackEgo> I knew that.
00:39:46 <oerjan> `run sed -i 's/ / /' wisdom/fiora
00:39:49 <HackEgo> No output.
00:39:56 <Bike> Thanerjan.
00:40:04 <Phantom_Hoover> *Thoerjan.
00:40:26 <oerjan> Phantom_Hoover: DON'T SPEAK LIKE THAT ABOUT YOUR THANE
00:40:27 <Bike> `run sed -i 's/Than/Tho/' wisdom/bike
00:40:27 <c00kiemon5ter> heh http://sprunge.us/TLTi
00:40:28 <HackEgo> No output.
00:40:40 <Bike> c00kiemon5ter: holy shit XD
00:40:55 <c00kiemon5ter> who is collecting the beaky quotes ? :P
00:41:05 <Phantom_Hoover> c00kiemon5ter, idiot or troll?
00:41:14 <Bike> c00kiemon5ter: actually i know a guy was doing wacky things with llvm bitcode to get partial evaluation in compiled C, it was cool
00:41:20 <Phantom_Hoover> (Don't do that in front of kmc btw or he'll say you're trolling by proxy)
00:41:45 <Bike> possibly need scare quotes for "partial evaluation" but whatevs
00:41:52 <oerjan> soon Beaky will be emulating STG by hand
00:42:41 <c00kiemon5ter> .. earlier: http://sprunge.us/OaUL
00:43:19 <Bike> "imo goto is like the lambda of imperative programming" Holy shit. He's reverse-Steele!
00:43:51 <oerjan> sheesh everyone knows it's tail recursion which is goto.
00:44:16 <Fiora> what areyou people doing <_>
00:44:41 <oerjan> Fiora: stalking, i think
00:45:10 <oerjan> climbing the Beaky-stalk
00:45:23 <tswett> Well, C doesn't have garbage collection...
00:45:36 <Bike> it does with boehm!!!
00:45:42 * elliott has this half-suspicion that beaky is cheater or something.
00:45:46 <c00kiemon5ter> boehmmmm
00:45:50 <oerjan> elliott: hm....
00:45:51 <Fiora> :<
00:45:52 <c00kiemon5ter> it is bad
00:45:58 <Bike> yeah so i've heard
00:46:04 <elliott> oerjan: well he's not cheater
00:46:12 <elliott> unless cheater is proxying through UAE
00:46:17 <elliott> also maybe not a he.
00:46:20 <oerjan> beaky is or something, okay
00:46:38 <tswett> Sgeo_: hey, I discovered that my thing won't work unless I add some stuff to circumvent my solution to that one problem.
00:46:51 <oerjan> Fiora: are you secretly beaky
00:47:33 <Phantom_Hoover> aha!
00:47:36 <Phantom_Hoover> Fiora is from the uae!
00:47:45 <Sgeo_> What proble, and why do you need to circumvent your solution, is your solution bad?
00:48:07 <Fiora> ._.
00:48:16 <tswett> Well, the problem is that NFU is not cartesian closed: there is no function ((a -> b) * a) -> b.
00:48:28 <c00kiemon5ter> is Fiora a terrorist ?
00:48:30 <Phantom_Hoover> maybe... maybe Fiora is from everywhere
00:48:36 <Phantom_Hoover> maybe we are all Fiora
00:48:44 -!- augur has joined.
00:48:50 <tswett> My solution is to let Si a be the set of one-element subsets of a; then we can circumvent this non-cartesian-closure by having a function ((a -> b) * Si a) -> Si b, instead.
00:48:55 * c00kiemon5ter would be Fiora if Fiora had cookies
00:49:07 <Phantom_Hoover> tswett, stop logicing up our channel!
00:49:20 <tswett> Phantom_Hoover: but I'm talking about a relatively esoteric set theory!
00:49:33 <Phantom_Hoover> IS IT TURING COMPLETE
00:49:34 * Sgeo_ has no idea what tswett is doing
00:49:52 <Phantom_Hoover> yes i was a little bemused by that
00:49:54 * Sgeo_ needs food
00:50:08 <tswett> Uh... well, it's equiconsistent with ZFC.
00:50:09 <Fiora> ummm cookies? I like cookies
00:50:12 <Fiora> are they chcoolate
00:50:21 <Phantom_Hoover> Fiora, no
00:50:22 <Sgeo_> Pasta. With Parmesan cheese.
00:50:27 <Phantom_Hoover> yes
00:50:32 <tswett> Sgeo_: and tomato sauce?
00:50:33 <Phantom_Hoover> that is the sort of cookies that they are
00:50:33 <elliott> Fiora: You americans call all biscuits cookies right?
00:50:42 <Sgeo_> tswett, no
00:50:44 <Phantom_Hoover> elliott, and they call scones biscuits!
00:50:53 <Sgeo_> I only use ketchup when there's no cheese
00:50:55 <tswett> So *that's* what the Brits call biscuits.
00:51:01 <tswett> So... what do they call scones?
00:51:02 <elliott> Phantom_Hoover: Americans are weird.
00:51:09 <Sgeo_> What's a scone? I've heard of them
00:51:12 <elliott> tswett: What do you call scones???
00:51:17 <Phantom_Hoover> Sgeo_, it's like a biscuit
00:51:24 <tswett> elliott: as far as I know, American scones are the same thing as British scones.
00:51:41 <Phantom_Hoover> it's a little cakey thing but harder and not as sweet
00:51:47 <Sgeo_> The first I've been exposed to the word "scone" was in Dilbert
00:51:50 <elliott> Americans don't even have, like, digestives do they?
00:51:54 <elliott> How do they live?
00:52:04 <Sgeo_> Where Dilbert gives a guy a styrofoam cup and claims it's a scone
00:52:26 <tswett> My only exposure to digestive biscuits is an episode of Arthur in which the titular character discovers a tin of them buried in his back yard.
00:52:33 <c00kiemon5ter> ((cookies -> omnomnom) => happines true)
00:52:39 <tswett> He decides they probably have something to do with Reader's Digest.
00:52:48 <oerjan> <c00kiemon5ter> is Fiora a terrorist ? <-- not everyone from the uae is a terrorist, c00kiemon5ter. some are filthy rich oil billionaires or their slaves.
00:52:52 -!- TeruFSX2 has joined.
00:53:05 <tswett> Aha:
00:53:11 <tswett> "Round-shaped British scones can resemble North American biscuits in appearance, but scones rely on cold butter for their delicate, flaky texture, while biscuits are more often made with animal fat or vegetable shortening and are crumbly rather than flaky."
00:54:00 <tswett> Of course, butter is animal fat... right?
00:54:03 <elliott> tswett: they do, in fact.
00:54:13 <elliott> btw you guys should have digestives they are really quite nice despite appearances
00:54:17 <tswett> Does "animal fat" mean something other than "fat that comes from an animal"?
00:54:22 <Sgeo_> http://dilbert.com/strips/comic/1994-05-06/
00:54:24 <elliott> Phantom_Hoover: what do you think of chocolate digestives
00:54:29 <oerjan> <tswett> Uh... well, it's equiconsistent with ZFC. <-- completely equi-?
00:54:36 <Phantom_Hoover> elliott, INFERIOR
00:54:49 <Sgeo_> The other mention of scones in Dilbert that I haven't seen until now http://dilbert.com/strips/comic/2004-01-28/
00:54:59 <tswett> oerjan: I think so? ZFC is consistent if and only if NFU is consistent, if I remember correctly.
00:55:12 <elliott> Phantom_Hoover: I think they are pretty good sometimes
00:55:17 <elliott> Phantom_Hoover: maybe you have had the milk chocolate kind
00:55:20 <elliott> that kind is not very good
00:55:31 <Phantom_Hoover> no
00:55:38 <Phantom_Hoover> biscuit minimalism is the only way
00:55:40 <tswett> British biscuits sound like crappy cookies.
00:55:57 <Phantom_Hoover> tswett, can you dunk cookies answer no
00:55:59 <Phantom_Hoover> qed
00:56:07 <tswett> Therefore, Oreos are biscuits?
00:56:18 <Phantom_Hoover> no
00:56:19 <tswett> I must consult oreo.co.uk.
00:56:20 -!- TeruFSX has quit (Ping timeout: 260 seconds).
00:56:21 <Phantom_Hoover> that doesn't count
00:56:40 <tswett> Wow, they are.
00:56:49 <tswett> British Oreos are biscuits.
00:56:56 <tswett> And they have telly ads.
00:57:37 <oerjan> tswett: it doesn't count as animal fat if the animal survives the procedure, thus butter isn't.
00:57:46 <tswett> oerjan: I see.
01:01:14 <Sgeo_> GRRRR I HATE THIS APARTMENT
01:01:33 <Sgeo_> STUPID FLY/BUG/WHATEVER DECIDED TO DIE IN MY POT OF BOILING WATER RIGHT BEFORE I WENT TO PUT SOME PASTA IN
01:02:01 <Phantom_Hoover> oh no
01:02:06 <Phantom_Hoover> otoh
01:02:10 <Phantom_Hoover> you could use some protein
01:02:15 <elliott> oreos aren't very good
01:02:32 <elliott> i mean it's not that they're bad
01:02:37 <elliott> but they say the biscuity parts are chocolate
01:02:40 <elliott> they plainly ain't
01:02:48 <Sgeo_> I poured out the water and started again
01:02:49 <elliott> they don't taste of chocolate it just tastes of... black
01:02:54 <Sgeo_> I'm very annoyed because I'm hungry
01:03:11 <Phantom_Hoover> Sgeo_, uh don't you boil it in a kettle and then pour it onto the pasta
01:03:25 <Phantom_Hoover> or is that thing about americans not having kettles actually true??
01:03:26 -!- epicmonkey has quit (Ping timeout: 272 seconds).
01:03:37 <Sgeo_> I think I've seen a kettle onc
01:03:38 <Sgeo_> once
01:03:42 -!- augur has quit (Remote host closed the connection).
01:03:47 <elliott> how do you make tea exactly
01:03:57 * Sgeo_ doesn't make tea
01:04:05 <Phantom_Hoover> what if you want to boil water
01:04:08 <Phantom_Hoover> e.g. to make pasta
01:04:10 <elliott> do you like boil it in a pan and use that
01:04:21 <Sgeo_> Phantom_Hoover, put it in the pot, turn stove on, wait 15 minutes
01:04:42 <Sgeo_> (there is probably some wasted time but don't care)
01:04:49 <Phantom_Hoover> :O
01:05:27 <elliott> ok how do you make like
01:05:28 <elliott> coffee
01:05:35 <elliott> you weird americans
01:05:37 <elliott> & your weird american bvgs
01:05:45 <Phantom_Hoover> they have machines
01:05:53 <elliott> wow abbreviating beverages as "bvgs" feels at least 120% punk
01:05:58 <elliott> bvgs bvgs bvgs
01:06:35 <Phantom_Hoover> observe process of coddled american trying to make coffee without assistance from mechanical nanny: http://www.shamusyoung.com/twentysidedtale/?p=2056
01:07:04 <Sgeo_> elliott, I assume other Americans do have kettles, btw
01:07:22 <Sgeo_> Do not assume that I am a typical American
01:07:51 <Fiora> Sgeo_: update
01:07:55 <Fiora> `list
01:07:56 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
01:08:00 <Sgeo_> Fiora, awesome
01:08:14 <Phantom_Hoover> Sgeo_, oooh ooh ooh
01:08:22 <Phantom_Hoover> do you say 'pahsta' instead of 'pasta'
01:08:39 <Sgeo_> What's the difference pronounciation-wise?
01:08:45 <Phantom_Hoover> uh
01:08:55 <Sgeo_> ah as in open mouth say ahh?
01:08:59 <Phantom_Hoover> construct in your head the Standard American British Person
01:09:03 <Phantom_Hoover> have him say 'parsta'
01:09:58 <oerjan> tswett: i don't read http://en.wikipedia.org/wiki/New_Foundations as implying NFU is as strong as ZFC. "to our usual base theory, NFU + Infinity + Choice. This base theory, known consistent, has the same strength as TST + Infinity, or Zermelo set theory with Separation restricted to bounded formulas (Mac Lane set theory)."
01:11:12 <kmc> queen of the dragons eh
01:11:25 <Phantom_Hoover> scroll down, kmc
01:11:44 <elliott> kmc: do you have a kettle
01:11:59 <kmc> 'Disgruntled Williamsburg Resident Arrested After Making 403 Phony 911 Calls About Hipsters' not the onion
01:12:06 <kmc> elliott: yes why
01:12:11 <elliott> kmc: i'm surver
01:12:12 <elliott> ying
01:12:13 <kmc> just a stove one, not an electric one
01:12:13 <elliott> aemrcians
01:12:16 <elliott> oh
01:12:17 <elliott> that doesn't count
01:12:25 <elliott> you're all so fucking weird
01:12:27 <elliott> HOW DO YOU MAKE TEA
01:12:30 <kmc> at work we have a fancy japanese hot water heater than plays a tune when it's done
01:12:43 <kmc> we make tea by boiling water on the stove
01:12:50 <elliott> that's so much fuss though
01:14:14 <Phantom_Hoover> kmc, how does that work
01:14:17 <Phantom_Hoover> doesn't the kettle melt
01:15:29 <Sgeo_> I think I might not know what a kettle is
01:15:41 <Sgeo_> I though they're things that go on a stove that hold water and whistle when water is boiling
01:15:53 -!- monqy has joined.
01:16:11 <elliott> yes that is one kind of kettle
01:16:21 <Phantom_Hoover> Sgeo_, electric ones are made of plastic
01:16:24 <elliott> there is also the kind you plug in and they contain water and have a little poury thing and you press them and the water gets hot
01:16:24 <Phantom_Hoover> for obvious reasons
01:16:32 <Sgeo_> Ah
01:16:44 <elliott> http://tesco.scene7.com/is/image/tesco/778-6535_PI_TPS1508478?wid=170&hei=170&$Offers$ like this
01:16:56 <Sgeo_> $Offers$
01:17:45 <monqy> my lecrci keetle has multiple materials
01:17:50 <monqy> some are metal??
01:17:52 <Sgeo_> 17000x17000 is apparently an illegal image size
01:18:13 <kmc> Phantom_Hoover: it's metal
01:18:22 <kmc> yeah it's the whistly kind
01:18:25 <elliott> monqy: lecrci kettle
01:18:43 <Phantom_Hoover> monqy, ok but the base at least is always plastic
01:18:53 <kmc> does tesco put horse meat in their kettles
01:19:11 <monqy> base is plasticy-looking
01:19:25 <elliott> kmc: yes
01:19:36 <kmc> if you want one cup of tea you can also boil water in the microwave and then put a tea bag in
01:19:41 <kmc> watch out for superheated water
01:19:50 <c00kiemon5ter> here is a nice kettle: http://www.youtube.com/watch?v=iBw618geqyI
01:20:06 <elliott> kmc: by watch out for you mean aim for
01:20:31 <kmc> i mean the thing where it's above boiling point but doesn't boil due to being in an ultra smooth container
01:20:36 <kmc> then it explodues when you put your spoon in
01:20:42 <oerjan> elliott: but then the water aims for YOU!
01:20:52 <oerjan> it's true, superheating water makes it russian
01:20:58 <monqy> hey are we talking about tea
01:20:58 <Phantom_Hoover> c00kiemon5ter, what the shit
01:21:20 <c00kiemon5ter> :D
01:22:36 <elliott> kmc: yes but exploding tea is a good thing???
01:23:07 <Phantom_Hoover> elliott, but it explodes before it becomes tea
01:23:37 <kmc> c00kiemon5ter: hahaha nice
01:23:52 <kmc> also the submerged pulsejet part looks like a bong
01:24:09 <oerjan> c00kiemon5ter: wtf
01:25:16 -!- oerjan has set topic: New Topic Foundation with Urelements | http://codu.org/logs/_esoteric/.
01:25:53 <kmc> überelements
01:26:07 <oerjan> the topic was nearly 10 days old, it smelled
01:27:58 <elliott> Phantom_Hoover: you make it into a tea cleverly befor eit explode sometimhow
01:28:26 <Phantom_Hoover> elliott, horrible, horrible solution:
01:28:38 <Phantom_Hoover> brew the tea cold, remove teabag, microwave
01:28:55 <elliott> Phantom_Hoover: perfect
01:28:56 <monqy> why are u using tea bags
01:29:04 <elliott> monqy: pshawwwwwwwwwwwwww tea snob pshawwwwwwwwwwwwwwww
01:29:09 <monqy> :(
01:29:10 <elliott> pshawwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
01:29:13 <elliott> pshawwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
01:29:38 <elliott> monqy: for a start its not even allowed for americans to be tea snobs to brits
01:29:42 <elliott> thats the opposite of how its meant to be
01:29:50 <elliott> for an end pshawwwwwwwwwwwwwwwwwww
01:30:36 -!- augur has joined.
01:30:43 <elliott> monqy: i forget did i mention pshawwww yet
01:30:45 <monqy> pffff most teas arent even british
01:30:56 <elliott> Phantom_Hoover: look what he's saying
01:31:16 <Phantom_Hoover> thats like saying, most wines, arent french...............
01:31:20 <elliott> monqy: the important thing isnt who
01:31:31 <elliott> its who oppressed and generally made life miserable for the people who
01:31:42 <elliott> we are really good at that
01:32:07 <elliott> scottish not so much
01:32:08 <elliott> sorry Phantom_Hoover
01:32:14 <elliott> you don't have our work ethic
01:32:25 <elliott> but you're not american so it's okay
01:33:07 <oerjan> `addquote <elliott> okay so <elliott> i went to wikimapia per Bike <elliott> and found a tiny little nowhere that looked like it might be it <elliott> zoomed in <elliott> thought aw yeah this looks remote maybe it's it <elliott> turns out it's hawaii <elliott> i am not very good at this
01:33:10 <HackEgo> 921) <elliott> okay so <elliott> i went to wikimapia per Bike <elliott> and found a tiny little nowhere that looked like it might be it <elliott> zoomed in <elliott> thought aw yeah this looks remote maybe it's it <elliott> turns out it's hawaii <elliott> i am not very good at this
01:33:53 <elliott> monqy: also are you saying you drink american teas
01:33:57 <elliott> pshawww pshawww ww w w ww
01:33:57 <monqy> no
01:34:27 <monqy> i like lots of teas!!!! have you tried chinese & japanese teas
01:34:34 <Phantom_Hoover> thats like drinking american wine
01:34:42 <Phantom_Hoover> anyway
01:34:49 <elliott> monqy you literally cant hear how hard im pshawing right now
01:34:54 <elliott> but its definitely too loud to do anything but pshaw
01:34:59 <Phantom_Hoover> you don't have the soul of a tea-drinker
01:35:04 <kmc> tea for dong
01:35:09 <Phantom_Hoover> probably you don't even have milk with it
01:35:21 <monqy> youre right i dont have milk with it
01:35:25 <Phantom_Hoover> see
01:35:37 <Phantom_Hoover> i bet you have like a little ritual
01:35:45 <Phantom_Hoover> where you pray to the tea first or sth
01:35:50 <Phantom_Hoover> or at least use special gloves
01:36:04 <monqy> no i just use my normal hands
01:36:16 <oerjan> elliott: is it loud enough to hear over that jettle thing?
01:36:20 <Phantom_Hoover> well that's not the point!
01:36:33 <monqy> whats the point.....
01:36:41 <Phantom_Hoover> stop drinking tea
01:36:44 <monqy> no
01:36:47 <Phantom_Hoover> you're doing it wrong
01:36:55 <monqy> no...............
01:38:15 <c00kiemon5ter> if you dont stop, elliott will fly there with his jettle to teach you a lesson
01:38:23 <c00kiemon5ter> a lesson on how to have tea
01:40:07 * c00kiemon5ter time to dream cookies 0.0
01:40:42 <oerjan> `addquote <shachaf> Taneb: STOP TRYING TO GET LENS INTO EVERYTHING <shachaf> Bike: You should use lens! <Taneb> NEVER <Bike> shachaf: i'm getting mixed messages here
01:40:46 <HackEgo> 922) <shachaf> Taneb: STOP TRYING TO GET LENS INTO EVERYTHING <shachaf> Bike: You should use lens! <Taneb> NEVER <Bike> shachaf: i'm getting mixed messages here
01:40:58 <elliott> um is that spacing really correct
01:41:02 <oerjan> oops
01:41:06 <ais523> the second space is wider than the first
01:41:24 <oerjan> `run sed -i '922s/ / /g' quotes
01:41:29 <HackEgo> No output.
01:41:31 <oerjan> `quote 922
01:41:33 <HackEgo> 922) <shachaf> Taneb: STOP TRYING TO GET LENS INTO EVERYTHING <shachaf> Bike: You should use lens! <Taneb> NEVER <Bike> shachaf: i'm getting mixed messages here
01:42:14 <oerjan> ais523: apparently vim puts two spaces after ! when autojoining lines
01:42:30 <ais523> oerjan: Emacs does that too, it's annoying
01:42:40 <ais523> unless you just learn to live with double spaces at the end of a sentence
01:50:24 <oerjan> `run echo "The pacific ocean is half the world and surrounded by fire. The atlantic ocean is less cool than its giant underwater moutain range. The arctic ocean is cold. The indian ocean is full of typhoons and non-eurocentric shipping." >wisdom/oceans
01:50:27 <HackEgo> No output.
01:50:29 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:50:31 <oerjan> oh hm
01:50:57 <oerjan> `run sed -i 's/ / /g' wisdom/oceans
01:51:01 <HackEgo> No output.
01:51:21 <oerjan> Bike: i thought your wisdom fit better as wisdom than as a quote. hth.
01:57:10 <Sgeo_> Maybe I don't hate OO as much as I thought I did
01:57:38 <Bike> it h indeed
01:57:38 <monqy> what does that mean
01:57:40 <monqy> what does oo mean
01:57:42 <Sgeo_> In functional language channels, I tend to find myself asking hypotheticals that are easily resolved in an OO world
01:57:45 <Sgeo_> object-oriented
01:57:51 <Bike> Sgeo_: i'm sorry, haven't you been fucking with squeak for the last two... whenever after Racket was
01:57:53 <monqy> what does object-oriented mean
01:58:01 <Bike> encapsulation!
01:58:07 <Bike> wait add more exclamation marks
01:58:50 <Sgeo_> Bike, I'm fucking around with Smalltalk because of the IDE and resumable exceptions, not because I suddenly decided to immerse myself in pure OOness
01:58:53 <elliott> Bike: are you new to sgeo
01:59:24 <Bike> Sgeo_: anyway have you implemented Smalltalk-80 as a Racket language yet?
02:00:34 <Sgeo_> I don't really see a point in doing so. Implementing Racket in a Smalltalk environment makes more sense to me
02:01:08 <Sgeo_> I really like the Racket language and Smalltalk environment. Smalltalk-80 as a Racket language would be Smalltalk language and Racket environment.
02:01:19 <shachaf> x/last shachaf
02:01:22 <shachaf> Er.
02:02:04 <kmc> s/ha/cha/f
02:02:38 <shachaf> helloegan
02:03:35 <kmc> hallogen
02:09:19 <oerjan> hallogens, the gases that speak to you
02:10:27 * Sgeo_ remembers when he started playing NetHack for the first time
02:10:33 <Sgeo_> Did something, got Hallu in the status thing
02:10:49 <Sgeo_> I thought it meant Hallelujah, I'm no longer hungry and I was hungry before
02:11:27 <shachaf> Halleloerjan!
02:11:29 <oerjan> > (pi :: CReal) == (pi :: CReal) + 10^^(-100)
02:11:30 <lambdabot> True
02:11:38 <oerjan> I CLAIM FOUL
02:11:41 <Bike> Hallu is the best status effect in that game
02:11:43 <shachaf> oerjan: It only checks 40 decimal digits.
02:12:00 <oerjan> FOUL, I SAY
02:12:08 <shachaf> Take it up with augustss.
02:12:35 <oerjan> he'll just use argument from authority (him)
02:13:16 -!- Bike_ has joined.
02:13:30 <shachaf> i love arguments from authority
02:13:40 <shachaf> Oops!
02:13:47 <oerjan> shachaf: you're a jew aren't you? i don't think you're supposed to be worshipping me like that.
02:14:21 <Bike_> why does it only take forty digits...
02:14:37 <shachaf> I CAN WORSHIP WHOMEVER I WANT
02:14:42 <shachaf> ais523: (How does that look?)
02:14:53 <ais523> err, ?
02:14:55 <shachaf> Bike_: People like their programs to terminate or something bizarre like that.
02:14:58 <shachaf> ais523: That "whom".
02:15:08 <Bike_> why are you trying to equate reals if you want to terminate
02:15:27 <shachaf> Bike_: They're computable reals. So you want to be able to COMPUTE equality????
02:15:32 <shachaf> use logic plz
02:15:46 -!- Bike has quit (Disconnected by services).
02:15:48 -!- Bike_ has changed nick to Bike.
02:15:51 <oerjan> > (pi :: CReal) - (pi :: CReal) + 10^^(-100)
02:15:52 <lambdabot> 0.0
02:16:00 <ais523> shachaf: yeah, that's OK
02:16:04 <oerjan> > (pi :: CReal) - (pi :: CReal)
02:16:05 <shachaf> oerjan: show uses the same 40 digits.
02:16:05 <lambdabot> 0.0
02:16:06 <Bike> so they're just fancy floats
02:16:12 <Bike> oh, guess not if it's just show
02:16:17 <shachaf> Bike: No, you can get them to whatever precision you want.
02:16:18 <Bike> "cool"
02:16:29 <shachaf> It's just that show/(==)/etc. take 40 digits.
02:16:36 <Bike> is there "equality up to n digits" standard too or
02:16:44 <oerjan> shachaf: i'm just wondering how it can even calculate the digits.
02:16:47 <oerjan> > (pi :: CReal) - (pi :: CReal) + 1
02:16:48 <lambdabot> 1.0
02:17:01 <oerjan> i guess it has to round at some point
02:17:09 <shachaf> > showCReal 100 pi
02:17:11 <lambdabot> "3.141592653589793238462643383279502884197169399375105820974944592307816406...
02:17:46 <shachaf> > let sh = showCReal 100 in sh pi == sh (pi + 10^^(-100))
02:17:47 <lambdabot> False
02:17:53 <shachaf> > let sh = showCReal 40 in sh pi == sh (pi + 10^^(-100))
02:17:55 <lambdabot> True
02:17:57 <shachaf>
02:18:13 <Bike> perl-style numeral comparison, i can dig it
02:18:23 <Bike> also this reminds me of when i tried implementing cont frac arithmetic. that was dumb
02:19:00 <kmc> 'A cleaning woman stole an empty commuter train in a suburb of Stockholm and crashed it into a house, injuring herself'
02:20:00 <elliott> kmc: i
02:20:02 <shachaf> was the house built on train tracks
02:20:16 <ais523> it probably derailed
02:20:19 <shachaf> bad place to build a house imo
02:20:54 <shachaf> hi elliott
02:21:05 <tswett> oerjan: lemme look at the NFU home page again.
02:21:26 <shachaf> Hmm, Google is doing some serious Googlebottage of my website.
02:21:48 <Bike> NFU has a home page?
02:21:55 <kmc> can't stand it, i know you planned it
02:21:58 <tswett> Bike: yep. http://math.boisestate.edu/~holmes/holmes/nf.html, by M. Randall Holmes.
02:22:06 <tswett> Holmes states that NFU "is consistent".
02:22:09 -!- oerjan has set topic: New Topic Foundation with Urelements | FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE | http://codu.org/logs/_esoteric/.
02:22:09 <shachaf> How did it even get these URLs?
02:22:40 <Bike> tswett: that's quite an assertion
02:22:47 <tswett> Indeed.
02:22:48 <oerjan> tswett: that just means it's not stronger than ZFC
02:23:04 <tswett> oerjan: so it does.
02:23:33 <Bike> wait, where's it say that on the page
02:23:44 <Bike> i see "NF is not known to be consistent"
02:23:46 <tswett> "NFU: New Foundations with urelements. This system is consistent, consistent with Choice, and does not prove Infinity but is consistent with it ( Jensen, 1969)."
02:23:49 <Bike> oh, wait, nfu
02:23:52 <Bike> right
02:24:09 <tswett> Yeah. NF seems like more of a curiosity.
02:24:16 <kmc> but it's so nice
02:24:40 <tswett> I think NFU is significantly nicer.
02:25:08 <tswett> NFU is pretty much NF, without the assertion that all objects are sets, and with the assertion that given variables x and y, the ordered pair (x, y) has the same type as x and y.
02:26:02 <tswett> The result is a "consistent" theory that has a few nice properties that NF doesn't have.
02:26:27 <tswett> Like, the type of a function is one higher, rather than three higher, than its elements.
02:26:36 <shachaf> i prefer inconsistent systems
02:26:41 <shachaf> they are so easy
02:26:46 <tswett> Inconsistent systems have their uses.
02:27:24 <Bike> why is consistent in scare quotes
02:27:44 <kmc> shachaf…
02:27:44 <tswett> "Consistent" here just means "consistent if (but not necessarily only if) ZFC is consistent", I think.
02:27:54 <tswett> Sometimes, you want to be able to have an infinitely long proof, or a circular proof, or a proof that leaves some things out.
02:27:56 <Bike> Oh, ok.
02:28:10 <shachaf> @where falso
02:28:10 <lambdabot> I know nothing about falso.
02:28:17 <shachaf> @where+ falso http://www.inutile.ens.fr/estatis/falso/
02:28:17 <lambdabot> Done.
02:28:43 <Bike> "Falso is an axiomatic system developed by Estatis Inc." shachaf what is this
02:29:03 <Bike> oh it's a joke, ok
02:30:07 <Bike> "Proportion of true statements
02:30:16 <Bike> ZFC 50%, Falso 99.9%
02:32:47 <tswett> "The above proofs and mathematical ideas are a trade secret and a trademark of Estatis Inc. and have also been copyrighted and patented."
02:32:54 <tswett> Patented trade secrets. The best kind of trade secrets.
02:33:41 <shachaf> now that's what i call "so easy"
02:33:51 <Bike> yes. yes, i love falso.
02:34:01 <kmc> tswett: it fits the theme of inconsistency!
02:44:45 -!- david_werecat has joined.
02:51:31 <shachaf> `welcome david_werecat
02:51:33 <HackEgo> david_werecat: 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.)
02:52:09 <david_werecat> Hello
03:19:37 <elliott> Bike: rip list of places with fewer than ten residents
03:19:46 <Bike> what it's gone already?
03:19:48 <elliott> yes
03:19:51 <elliott> murdered
03:20:08 <shachaf> elliott.......is this your fault...........
03:20:13 <elliott> no
03:20:26 <Bike> nooooooo
03:21:23 <shachaf> Bike: You should boycott Wikipedia.
03:22:00 <Bike> I uh, I have four articles open already.
03:30:09 -!- augur has quit (Remote host closed the connection).
03:35:44 <quintopia> hi david_werecat
04:09:12 -!- augur has joined.
04:47:26 * oerjan attacks the troll on our wiki head on for once.
04:48:10 <oerjan> which thinking about it may not be wise.
04:48:30 <elliott> not sure "troll" is quite right :P
04:48:46 <oerjan> OKAY
05:07:14 <kmc> http://defragger.info/
05:08:35 <Bike> man, i loved watching that thing
05:16:06 <kmc> now does anyone have skifree in browser
05:16:31 <kmc> of course I mean a cycle-accurate simulation of a 386 running the original skifree binary
05:16:32 <Bike> my favorite is that chiptunes site that works like an amiga
05:16:45 <kmc> have you seen http://www.visual6502.org/JSSim/
05:17:16 <Bike> is that the one that has a visual representation of it running?
05:19:43 <kmc> yes
05:19:59 <kmc> derived from an actual micrograph of a 6502 die
05:20:27 <Bike> yeah i heard about that hwne it came out, i think it crashed my browser
05:20:55 <kmc> great
05:21:05 <shachaf> How do I learn things about computers and audio? I know nothing at all.
05:21:17 <kmc> there's also http://bellard.org/jslinux/ of course
05:21:27 <kmc> i kind of feel like there should be a list of Fabrice Bellard facts
05:21:28 <Bike> that one, shockingly, does actually run
05:21:57 <Bike> shachaf: what specifically are you interested in? like, synth, the linux audio programming hellscape, compression formats?
05:22:01 <kmc> a la chuck norris / oleg / whatever
05:22:04 <kmc> maybe it's all played out though
05:22:39 <kmc> shachaf: it is fun to write small C programs that generate audio waveforms as (say) 16 bit unsigned integers on stdout, and then pipe them into 'play' with appropriate flags
05:22:53 <kmc> generate or filter, i should say
05:23:08 <kmc> of course sox/play can already generate lots of things itself
05:23:47 <shachaf> I'm currently writing Haskell programs that generates various byte patterns and piping into aplay.
05:23:51 <kmc> that is fun too
05:23:56 <shachaf> It is indeed fun, but I have no idea what I'm doing.
05:24:41 <shachaf> I don't know anything about audio waveforms.
05:24:58 <shachaf> I suppose I should read about that.
05:25:09 <kmc> mm
05:25:27 <kmc> well sure there is plenty to read about
05:25:43 <kmc> but more or less any function that's periodic in an audio frequency will generate some interesting sound
05:26:09 <kmc> sine waves, square waves, triangles, sawtooths are classic examples
05:26:25 <kmc> and you can combine them however -- addition, multiplication
05:26:34 <kmc> multiply some noise by a sine wave etc.
05:26:46 <kmc> more than most programming toys it lends itself to immediate experimentation
05:26:52 <Bike> and if you add waves at different frequencies you can get harmonies!
05:27:04 <kmc> FM synthesis is cool
05:28:13 <Bike> some day i will synthesize strings and it will not sound horrible
05:28:15 <Bike> some day
05:29:00 <kmc> if you implement FM synth with a couple of knobs, and an ADSR envelope, then you are much of the way toward classic DOS game music (OPL3 / AdLib)
05:29:21 <kmc> i've had a lot of fun playing around with Adlib Tracker II
05:29:38 <kmc> the UI is not great but you can find tutorials on youtube
05:30:05 <kmc> shachaf you should get really good at Adlib Tracker and then we can make a 4k demo for DOS
05:33:54 <kmc> for one of the adlib emulators they decapped an actual OPL3 chip to read out its lookup tables for more accurate emulation
05:36:08 <shachaf> These byte pattern sound a lot like old computer games.
05:40:58 <kmc> which?
05:41:28 <shachaf> None in particular.
05:42:33 <kmc> k
06:00:46 <shachaf> k
06:33:34 -!- augur has quit (Remote host closed the connection).
06:34:00 -!- copumpkin has quit (Ping timeout: 252 seconds).
06:34:57 -!- copumpkin has joined.
06:45:06 <fizzie> Bluhhh it's -19 °C (-2 °F) out there. That's stupid.
06:45:27 <Deewiant> No it's not, it's a temperature.
06:45:30 <shachaf> You should move to Australia?
06:45:45 <fizzie> But I've heard there it's poisonous everything instead.
06:45:55 <fizzie> Every place is stupid in its own way, I understand.
06:46:08 <shachaf> I heard California is the place to be.
06:46:11 <shachaf> Fiora: Right?
06:46:32 <Bike> I thought Fiora was Belgian.
06:46:51 <fizzie> But I've heard you need to have flour in your head there, that doesn't sound fun.
06:46:52 <shachaf> Bike: Since Fiora is the same person as you, you ought to know.
06:47:09 <shachaf> `pastelogs fizzie.*flour
06:47:21 <fizzie> Yes, yes, I've said that before.
06:47:33 <shachaf> I was wondering if it was you!
06:47:41 <Bike> `? bike
06:47:47 <shachaf> `? Bike
06:47:54 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.10962
06:47:54 <Bike> gosh.
06:47:55 <HackEgo> Bike is from Luxembourg.
06:47:55 <HackEgo> Bike is from Luxembourg.
06:48:01 <shachaf> `? bIkE
06:48:03 <HackEgo> Bike is from Luxembourg.
06:48:06 <shachaf> oh.
06:48:09 <Bike> Ok, guess she's from Luxembourg then.
06:48:14 <Bike> But maybe she could be, uh, wherever I am now.
06:48:23 <Bike> The Maldives maybe. I hear they're nice.
06:51:06 <shachaf> `? Fiora
06:51:07 <HackEgo> Fiora is from some island somewhere. She just doesn't want to be bothered, as she works out her domination plan as immortal queen of the dragons.
06:51:26 <shachaf> `? shachaf
06:51:27 <HackEgo> shachaf sprø som selleri
06:51:36 <Bike> Is that French?
06:51:41 <Bike> `pastequotes Bike
06:51:45 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.32089
06:51:54 <shachaf> French with ø?
06:52:22 <Deewiant> Frøncais
06:52:42 <shachaf> Bike: !!!!!!!
06:52:46 <shachaf> I didn't know about ^O
06:52:49 <shachaf> O
06:52:54 <shachaf> O changes everything!
06:53:01 <Bike> What, remove formatting?
06:53:13 <Bike> also: hackego needs to learn about content types.
06:53:23 <shachaf> You mean codu.org does?
06:54:16 <Bike> I'm sure codu is just the peripheral manifestation of HackEgo.
07:03:20 -!- DHeadshot has quit (Read error: Connection reset by peer).
07:03:25 -!- DH____ has joined.
07:03:55 <shachaf> `quote
07:03:56 <HackEgo> 624) <Vorpal> elliott: well how will you represent "The dog jumped over the lazy dog" then?
07:04:01 <shachaf> @quote Bike
07:04:01 <lambdabot> sieni says: python, like php, is just training wheels without the bike
07:04:25 <Bike> Kind of a bad quote.
07:04:53 <shachaf> I agree.
07:05:03 <shachaf> @quote
07:05:03 <lambdabot> sorear says: (after someone complains of ghc using much memory) Only 500M? encode for lists is strict, I would have expected around 80GB usage...
07:05:12 <shachaf> @quote
07:05:12 <lambdabot> hgolden says: pioneers are the ones with arrows in their backs. at least ours will be categorical arrows.
07:05:22 <shachaf> what's with all these quotes
07:05:22 <shachaf> @quote
07:05:22 <lambdabot> robertmassaioli says: I hereby name (>=>) as "fish" and (<=<) as "back-fish", swim fishy swim, compose those Monads.
07:05:26 <shachaf> @quote
07:05:26 <lambdabot> vagif says: Sometimes i wish haskell would force me to do other good things in my life. Like for example start doing yoga or aikido again :)
07:05:52 <Bike> These quotes are from other lambdabottic channels, I assume?
07:05:58 <shachaf> @quote
07:05:58 <lambdabot> remember says: the 5th of november
07:06:04 <shachaf> Mostly #haskell
07:06:06 <shachaf> @quote
07:06:06 <lambdabot> therp says: and minion pro comes with acrobat reader. I never thought that I would find this proprietary thing useful for anything than blocking my cpu
07:06:23 <Bike> These are boring.
07:06:27 <Bike> Need more bikes imo
07:06:29 <shachaf> Where are the good quotes?
07:06:30 <shachaf> @quote bike
07:06:30 <lambdabot> sieni says: python, like php, is just training wheels without the bike
07:06:34 <shachaf> @quote bicycle
07:06:34 <lambdabot> No quotes match. Where did you learn to type?
07:06:37 <shachaf> @quote unicycle
07:06:37 <lambdabot> jjuggle says: I was riding around town and this cop on patrol on a bike rode up next to me and said, "There's always a show off." I offered to teach him to ride and help set up a unicycle patrol
07:06:37 <lambdabot> squad, but he declined.
07:06:46 <Bike> Ok, that's not bad.
07:06:48 <shachaf> @quote unicycle
07:06:48 <lambdabot> dons says: xerox: what analogy or metaphor did you use? monad-as-garbage-bin? monad-as-refrigerator? monads-as-unicycle?
07:06:55 <shachaf> @quote unicycle
07:06:55 <lambdabot> Cale says: The real reason for the installed size of GHC being so large is that in the background it secretly downloads a video of SPJ riding a unicycle.
07:07:04 <shachaf> @quote unicycle
07:07:04 <lambdabot> Cale says: The real reason for the installed size of GHC being so large is that in the background it secretly downloads a video of SPJ riding a unicycle.
07:07:04 <Bike> ...why are there so many unicycle quotes?
07:07:07 <Bike> I may have a competitor here.
07:07:12 <shachaf> Bike: Unicycles are very popular in #haskell.
07:07:18 <Bike> Why so?
07:07:32 <shachaf> Maybe because shapr (who started the channel) is a fan of them?
07:07:34 <shachaf> @quote mmorrow unicycle
07:07:34 <lambdabot> mmorrow says: in langs with dependent types, you can just map numbers directly to types instead of having to ride a unicycle along a tightrope while battling an unruly gang of monkey with knives
07:07:37 <shachaf> @quote gwern unicycle
07:07:37 <lambdabot> gwern says: I sometimes think of writing Haskell fanfiction where I ship dons and SPJ. "'Dr. Simon...' Don trailed off - 'call me Simon', Simon said, standing erect on his unicycle"
07:07:47 <shachaf> Also I guess SPJ rides them?
07:07:50 <shachaf> Going by these quotes.
07:07:58 <Bike> "rides" if you know what i mean
07:08:24 <monqy> @quote love
07:08:24 <lambdabot> twb says: But, I love my job. It's like being in a rock band. i.e. no pay, but fun.
07:08:40 <shachaf> `quote love
07:08:41 <HackEgo> 73) <Slereah> I can do everything a Turing machine can do, except love \ 134) <alise> I love logic, especially the part where it makes no sense. \ 137) <fungot> Sgeo: hahaah, and i love when they announced it i dare u to press alt f4 and your house ( acts 16:31 your bible) \ 172) <elliott> Vorpal loves the sodomy. <Vorpal> elliott, sure why not \
07:09:02 <shachaf> fungot: do you love monoids?
07:09:04 <fungot> shachaf: indeed you do. ;p cannabis and fnord are left to right
07:09:13 <shachaf> fungot: do i love monoids?
07:09:14 <Bike> big fan of Either it seems
07:09:14 <fungot> shachaf: i don't suggest adding palette support and different color space can be on lots of srfis to provide different, incompatible features to do some of those pics taken out at daytime are underexposed, i guess
07:09:25 <shachaf> ^style
07:09:26 <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
07:09:26 <Bike> color spaces in srfi. the horror...
07:09:48 <shachaf> monqy: do you love anything
07:09:56 <monqy> no
07:09:58 <shachaf> (things like monoids or other things)
07:10:05 <shachaf> monqy: what!not even monoids
07:10:15 <shachaf> they are so easy :(
07:10:18 <monqy> :(
07:10:30 <Bike> What's a comonoid?
07:10:31 <shachaf> i love them though :D
07:10:42 <shachaf> Bike: Apparently comonoids are boring in Hask.
07:10:51 <Bike> Sucks.
07:12:07 <shachaf> `quonqy
07:12:08 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: quonqy: not found
07:12:09 <shachaf> :(
07:12:14 <shachaf> > :t monqy
07:12:16 <lambdabot> <hint>:1:1: parse error on input `:'
07:12:17 <shachaf> :(
07:12:35 <Bike> > (:t) monqy
07:12:35 <lambdabot> Not in scope: `monqy'
07:12:59 <Bike> @let (:t) = id
07:12:59 <lambdabot> Parse error in pattern: : t
07:13:08 <Bike> hooookay
07:13:08 <shachaf> Bike........
07:13:18 <Bike> Some things are important, shachaf.
07:13:33 <shachaf> Bike: You would do it by letting t = a list
07:13:38 <shachaf> But it won't work.
07:14:27 <Bike> > (:t)
07:14:28 <lambdabot> Couldn't match expected type `[a0]'
07:14:28 <lambdabot> with actual type `Debug.Si...
07:14:38 <Bike> > (\:t)
07:14:39 <lambdabot> Not in scope: `\:'
07:14:39 <lambdabot> Perhaps you meant one of these:
07:14:39 <lambdabot> `\\' (imported from ...
07:14:46 <shachaf> \ :
07:14:52 <Bike> How am I supposd to have colons in identifiers! What an outrage.
07:15:14 <shachaf> \: :\
07:15:19 <shachaf> You can have colons in identifiers.
07:15:25 <shachaf> ":" is magic, though.
07:15:34 <shachaf> (And :t isn't an identifier.)
07:15:41 <Bike> Why not? It should be.
07:16:26 <shachaf> Try #agda
07:16:43 <Bike> Can I learn Calegda?
07:17:06 <shachaf>
07:17:32 <Bike> I don't speak Korean, sorry.
07:19:06 <shachaf> Bike: Agda lets you name identifiers almost anything!
07:19:25 <monqy> agda identifier naming is cute
07:21:11 -!- SirCmpwn has changed nick to SirCmpmn.
07:21:15 -!- SirCmpmn has changed nick to SirCmpwn.
07:34:33 <fizzie> Oh no. :/ Every day I come to work, that dick is more and more tilted.
07:34:49 <fizzie> https://dl.dropbox.com/u/113389132/Misc/20130110-crop.jpg -> https://dl.dropbox.com/u/113389132/Misc/20130118-crop.jpg that's like eight days.
07:35:14 <fizzie> (It's about man-high, in case the scale isn't quite obvious.)
07:37:52 <Deewiant> One of yours?
07:38:38 <fizzie> No, I just walk past it in the mornings these days.
07:38:40 -!- md_5|away has changed nick to md_5.
07:38:51 <fizzie> (It's approximately next to Ossinlampi there.)
07:41:42 <shachaf> kmc: I tried something -- did you get any Twitter notification?
08:07:50 -!- ogrom has joined.
08:18:41 -!- TeruFSX2 has quit (Ping timeout: 248 seconds).
08:54:02 -!- epicmonkey has joined.
09:03:38 -!- atehwa has quit (Read error: Connection reset by peer).
09:05:06 -!- atehwa has joined.
09:08:01 -!- epicmonkey has quit (Ping timeout: 240 seconds).
09:24:13 -!- carado has joined.
09:25:33 -!- Bike has quit (Quit: leaving).
09:28:41 -!- carado has quit (Ping timeout: 246 seconds).
09:42:31 -!- augur has joined.
10:10:30 -!- epicmonkey has joined.
10:20:05 -!- fizzie has quit (Quit: Coyote finally caught me).
10:20:32 -!- fizzie has joined.
10:53:52 -!- ogrom has quit (Quit: Left).
11:03:41 -!- monqy has quit (Quit: hello).
11:29:10 -!- david_werecat has quit (Ping timeout: 272 seconds).
11:46:19 <ion> https://twitter.com/search/realtime?q=%22armstrong%22+%22the+moon%22
11:46:36 -!- oerjan has quit (Quit: leaving).
12:05:17 -!- syncLock has joined.
12:05:27 <syncLock> Hi
12:05:42 -!- syncLock has quit (Read error: Connection reset by peer).
12:08:30 -!- Phantom_Hoover has joined.
12:11:18 -!- monqy has joined.
12:17:17 -!- monqy has quit (Quit: hello).
12:19:12 <c00kiemon5ter> `welcome synLock
12:19:16 <HackEgo> synLock: 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.)
12:23:09 -!- WeThePeople has joined.
12:28:45 <Sgeo_> shachaf, OOTS update
12:53:59 -!- WeThePeople has quit (Quit: Leaving).
13:06:35 -!- ais523 has quit.
13:15:28 -!- boily has joined.
13:28:44 <Sgeo_> Ok, I am hungry. I should eat.
13:42:41 <Phantom_Hoover> Sgeo_ begins to understand the needs of his new human form
13:43:04 <Phantom_Hoover> perhaps he shall encounter some hilarious mixup whilst attempting to purchase food with human money
13:43:59 <Phantom_Hoover> maybe he will learn of this human thing called `love'
13:46:32 <c00kiemon5ter> https://www.facebook.com/photo.php?fbid=10152413599715277 ~ 100 likes per sec
13:47:48 <Phantom_Hoover> they both look stupid enough that it might even be true
13:54:02 <fizzie> Heh, that was amusing. Today at work https://dl.dropbox.com/u/113389132/Misc/20130118-cola1.jpg "hmm, what are those papers" https://dl.dropbox.com/u/113389132/Misc/20130118-cola2.jpg
13:58:15 <Sgeo_> !!!
13:58:25 <Sgeo_> Any carbonated beverage?
13:59:04 <fizzie> I didn't stop to read the paper in question, but it's probably in the Internet.
14:00:01 <fizzie> Drinking 2 or more colas per day was associated with increased risk of chronic kidney disease (adjusted odds ratio = 2.3; 95% confidence interval = 1.4-3.7). Results were the same for regular colas (2.1; 1.3-3.4) and artificially sweetened colas (2.1; 0.7-2.5). Noncola carbonated beverages were not associated with chronic kidney disease (0.94; 0.4-2.2)."
14:00:36 <fizzie> (From the "Results" section I cleverly cut away.)
14:01:04 -!- oonbotti has joined.
14:01:28 <Sgeo_> What's a "cola"?
14:02:26 <fizzie> Oh, I'm sure they define it in the text.
14:04:21 <fizzie> It seems like it's just the word they used in the interviews the thing is based on.
14:06:45 <Sgeo_> That seems like a bad idea
14:08:47 <fizzie> Or possibly there was an explicit list. It's slightly hard to say.
14:09:01 <fizzie> (The interviews were done in 1982-1983.)
14:36:55 -!- david_werecat has joined.
14:37:31 -!- Nisstyre-laptop has joined.
14:39:22 -!- davidwerecat has joined.
14:41:47 -!- boink666 has joined.
14:42:01 -!- david_werecat has quit (Ping timeout: 240 seconds).
14:44:56 -!- davidwerecat has quit (Ping timeout: 256 seconds).
14:46:04 <impomatic> Whoops. I drink 2 litres of Cola a day :-(
14:48:27 <fizzie> DEAD MAN WALKING
14:50:44 <Fiora> lots of things seem to hate kidneys
14:50:59 <Fiora> http://en.wikipedia.org/wiki/Nurses%27_Health_Study showed a 50% increase in the most common form of kidney cancer from regularly taking nsaids
14:51:56 <c00kiemon5ter> cookies mean no harm! studies be crazy!
14:53:48 <impomatic> At the rate of likes, Petter Kverneng should be getting laid in approx 62 minutes!
14:54:18 -!- sirdancealot has joined.
14:56:00 -!- lifthrasiir has quit (Ping timeout: 240 seconds).
14:56:17 -!- lifthrasiir has joined.
14:58:55 -!- tswett has quit (*.net *.split).
14:59:23 -!- lifthrasiir has quit (Client Quit).
14:59:30 -!- tswett has joined.
15:09:23 <Sgeo_> I commented on a Dilbert strip
15:09:30 <Sgeo_> The comment appears not to be present
15:11:33 <Sgeo_> impomatic, I think it got another hundred thousand between when you said that and just now
15:11:48 <Sgeo_> (Or when I checked after you said that and just now, to be more exact)
15:27:16 -!- Nisstyre-laptop has quit (Remote host closed the connection).
15:53:42 -!- TeruFSX2 has joined.
16:07:57 <kmc> Fiora: o_O
16:10:59 <Phantom_Hoover> jesus christ how is it this snowy in the midlans
16:11:02 <Phantom_Hoover> *midlands
16:32:07 <kmc> Fiora: do you know how often they mean by "regularly"?
16:33:15 <elliott> q
16:34:07 <Sgeo_> 1,101,114 people like this.
16:41:55 <c00kiemon5ter> :P
16:45:41 <Sgeo_> Is this a horribly unprofessional picture?
16:45:41 <Sgeo_> http://m.c.lnkd.licdn.com/media/p/1/000/1ef/023/1a57a0b.jpg
16:47:07 -!- aloril has quit (Ping timeout: 260 seconds).
16:47:13 <c00kiemon5ter> who cares ?
16:48:12 <Sgeo_> That's my LinkedIn profile picture, I don't know if it's bad
16:49:26 <kmc> it's a fine picture
16:49:33 <kmc> i would adjust the color levels though
16:49:43 <c00kiemon5ter> well, I have a happy cookie for a pic, so it is definately "better" if the people searching judge by the profile pic or its quality
16:51:47 * Sgeo_ doesn't really know anything about color levels
16:52:07 <Sgeo_> Except I used an EXIF viewer on it to make sure my location wasn't in it, and it said something about random color levels
16:53:44 <kmc> you can load it in Gimp and play with the levels and curves dialogs
16:53:52 <kmc> there's an 'auto' button that usually does an ok job
16:55:41 <Sgeo_> I think the next thing I want to do is rewrite my resume in LyX
17:01:50 -!- boink666 has quit (Ping timeout: 255 seconds).
17:02:04 <kmc> mine is written in LaTeX and based on http://www.mcnabbs.org/andrew/linux/latexres/
17:02:26 <elliott> mine is non-existent but it's written in @
17:02:30 <elliott> do i win
17:02:35 -!- carado has joined.
17:02:39 <kmc> yes
17:03:14 -!- aloril has joined.
17:04:35 <Jafet> You should put that on your résumé.
17:07:35 -!- TeruFSX2 has quit (Ping timeout: 252 seconds).
17:10:19 -!- TeruFSX2 has joined.
17:11:36 <kmc> elliott's resume is just the single character '@' sized to fill a sheet of A4 paper
17:11:52 <elliott> hahahaha
17:12:08 -!- oerjan has joined.
17:12:17 <kmc> see also http://i.huffpost.com/gen/683049/thumbs/o-NIC-CAGE-JOB-APPLICATION-570.jpg?12
17:15:10 -!- AnotherTest has joined.
17:16:23 -!- FreeFull has joined.
17:20:22 <oerjan> you know, if our current topic were an accurate representation of our community's way of working, i suspect the languages on the wiki would be quite a bit more interesting.
17:21:29 <oerjan> <Sgeo_> shachaf, OOTS update <-- ooh
17:22:17 <Sgeo_> `run echo "echo shachaf oerjan" > bin/olist
17:22:21 <HackEgo> No output.
17:22:25 <oerjan> thanks!
17:22:31 <Sgeo_> `run chmod a+x bin/olist
17:22:34 <HackEgo> No output.
17:22:34 <Sgeo_> `olist
17:22:35 <HackEgo> shachaf oerjan
17:22:38 <Sgeo_> :)
17:22:43 <Sgeo_> yw
17:25:09 <Jafet> RSS shunning syndrome, one of the worst ailments known to webcomic fans
17:31:14 <oerjan> Jafet: i actually had OOTS on rss once, but something was so buggy it kept giving me old comics as new
17:31:49 <Jafet> The old strips were the better ones, anyway.
17:32:02 <oerjan> that may be
17:35:15 <Sgeo_> oerjan, the Twitter feed I maintain bugged out like that once
17:35:34 <oerjan> <Phantom_Hoover> they both look stupid enough that it might even be true <-- name looks norwegian too
17:35:36 <Sgeo_> Because I was using an old service. That service stopped working, so I added one, but never removed permissions from the old one
17:40:46 -!- FreeFull_ has joined.
17:41:45 <oerjan> <Sgeo_> That's my LinkedIn profile picture, I don't know if it's bad <-- now i know what you look like *MWAHAHAHA* also that picture should give you some excellent offers, provided you are looking for a career in crime
17:42:19 <oerjan> try smiling next time hth
17:43:25 -!- FreeFull has quit (Ping timeout: 252 seconds).
17:43:38 <oerjan> (it takes skill _not_ to look like a criminal in photobox pictures.)
17:44:31 <Sgeo_> photobox?
17:44:41 <kmc> i hear that crime pays
17:45:24 <oerjan> it looks like it's taken in one of those cheap airport of whereever boxes with curtains
17:46:05 * Sgeo_ used a mirror, his phone, and an image editor with a cropping tool
17:47:04 <oerjan> right, probably even worse.
17:47:40 <oerjan> i recall i once had an id photo that i was quite satisfied with. but i got it after visiting a professional photographer shop.
17:48:27 <Gregor> He was wearing a caulander on his head.
17:48:55 <coppro> grraaargh
17:49:00 <coppro> fuck S3
17:49:02 <coppro> (the group)
17:49:36 <oerjan> what's to complain about it, it's even solvable!
17:49:51 <oerjan> when you get to S5 you can start complaining
17:50:00 -!- FreeFull_ has changed nick to FreeFull.
17:51:01 <coppro> oerjan: I've got a graph. I need to show it's a Cayley graph. I think it's over S_3^2
17:51:16 <oerjan> OKAY
17:51:24 * oerjan doesn't remember cayley graphs.
17:52:28 <coppro> oerjan: let G be a group and let C be a sub*set* of the group that is closed under inverse and doesn't contain the identity
17:53:12 <coppro> Define X(G,C) to be the graph where V(X(G,C)) = G and where a ~ b iff ab^{-1} \in C
17:54:02 <coppro> I know that in this case, |G| = 36 and |C| = 15
17:54:04 <coppro> wheee
17:56:12 <oerjan> hm i guess you don't have the colors described in the wikipedia article
17:57:37 <oerjan> 36 vertices and each vertex has 15 adjacent edges?
17:58:52 <oerjan> that's going to be a messy diagram
18:01:18 <oerjan> Gregor: wiktionary helpfully asks "Did you mean: colander"
18:01:34 <oerjan> which seems to fit, i guess
18:03:37 <Gregor> OK, so I can't spell AND you don't know the joke X-D
18:04:38 <coppro> oerjan: yeah, we aren't working with colors
18:04:44 <coppro> oerjan: so yeah, it's messy
18:05:48 <oerjan> 15+1 = 4*4, is it possible that it's taken by using 3 generators + the identity from each factor group?
18:06:04 <oerjan> (and then dropping the identity of the whole)
18:06:29 <coppro> possible, but please don't help
18:06:31 <coppro> I'm just ranting
18:06:38 <oerjan> it's noted on wp that the cayley group of a product is a product of the graphs
18:06:50 <oerjan> *a cayley graph
18:07:18 <oerjan> WELL EXCUUUUUUSE ME
18:10:03 <Gregor> (Princess)
18:13:31 <oerjan> i would have added that but coppro makes a pretty shitty princess
18:15:44 <Gregor> *shittty
18:25:00 -!- epicmonkey has quit (Read error: Operation timed out).
18:25:49 -!- asiekierka has quit (Quit: ZNC - http://znc.sourceforge.net).
18:27:45 -!- asiekierka has joined.
18:28:27 -!- lifthrasiir has joined.
18:32:52 <coppro> oerjan: yes, please stop helping, this is homework
18:35:16 -!- TeruFSX2 has quit (Ping timeout: 256 seconds).
18:36:19 <elliott> oerjan: i want to know the answer. please tell me.
18:37:00 <olsner> oerjan: I want coppro to fail his homework after cheating. please tell him.
18:44:45 <oerjan> elliott: i don't actually know the answer, as he hasn't provided the actual graph...
18:45:19 <elliott> technicalities.
18:49:24 <kmc> we don't have A4 paper here in America
18:49:43 <kmc> we have something that is basically the same but slightly different for no reason
18:49:46 <kmc> of course
18:52:02 <fizzie> I just tried to print a quick LibreOffice document today. It had defaulted to Letter, and then I got to fiddle with really unintuitive printer menus to tell it to go ahead and put it on A4 instead.
18:52:19 <fizzie> It was the 2013 equivalent of PC LOAD LETTER.
18:52:28 <oklopol> is this non sequitur friday?
18:52:39 <boily> oklopol: not yet, I have my orange shirt on.
18:53:19 <fizzie> I assume this was still in the context of the hour-and-a-half-ago comment that involved A4 paper.
18:53:24 * oerjan imagines boily highlighting on "non sequitur"
18:54:01 <oklopol> rather imagine me actually highlighting on *non sequiturs*.
18:54:42 <oklopol> because i like being imagined
18:55:10 -!- Bike has joined.
18:55:17 <oerjan> sorry, your ai-complete technology is unimaginable
18:55:24 <Sgeo_> trust me trust me trust me yeah!
18:55:43 <oerjan> O ... KAY
18:56:10 <Sgeo_> http://www.youtube.com/watch?v=EdvWBgyfKLg
18:56:21 * Sgeo_ has that song in his head
18:58:07 -!- Snowyowl has joined.
19:03:59 -!- monqy has joined.
19:12:26 <Sgeo_> monqy hi monqy
19:12:32 <Sgeo_> hi monqy hi
19:13:08 <olsner> #esoteric is like 50% hi monqy, 50% homestuck updates
19:13:08 <oonbotti> Nothing here
19:13:30 <monqy> hi sgeo
19:13:43 <Snowyowl> wait, is there a homestuck update?
19:14:55 <coppro> +1
19:16:24 <Snowyowl> last night someone asked me whether the Cartesian product ordinals*ordinals was a thing
19:16:35 <Snowyowl> well it's a collection
19:16:37 <Snowyowl> just fyi
19:16:55 -!- TeruFSX2 has joined.
19:17:27 <Bike> a collection of what
19:18:02 <coppro> Bike: good question
19:18:14 <Snowyowl> a collection of ordered pairs of ordinals
19:18:26 <oerjan> if the ordinals are a class in the NGB sense, then so is their cartesian product.
19:18:33 <Snowyowl> but good question, that's how you maths
19:18:53 <oerjan> *NBG
19:19:07 <Bike> so do ordinals form a class? or just a "collection", whatever that is
19:19:16 <oerjan> (and by if, i mean they do)
19:19:25 <Bike> well then.
19:19:28 <Snowyowl> ... uh, s/collection/class
19:19:38 <Snowyowl> i'll just go hide in a corner now
19:20:34 <oerjan> basically since the pair of two ordinals is a set, you can make the class of all of them
19:20:52 <Bike> right
19:27:02 -!- epicmonkey has joined.
19:29:58 <Sgeo_> How do code browsers work in prototype-based OO environments?
19:31:36 <Sgeo_> "Self worlds can be built from scratch from the sources - see below for download instructions. "
19:31:37 <Sgeo_> o.O
19:33:43 -!- FreeFull_ has joined.
19:36:46 -!- FreeFull has quit (Ping timeout: 256 seconds).
19:39:24 -!- oerjan has quit (Quit: Good night).
19:42:55 * Sgeo_ wonders if web browsers count as browsers in the Smalltalk sense at all
19:43:43 <Bike> maybe if HTTP had more messages than GET and PUT
19:43:56 <olsner> did smalltalk and the web ever exist at the same time?
19:43:57 <Lumpio-> There's POST PATCH and DELETE too.
19:44:07 <Lumpio-> Er, POST HEAD and DELETE
19:44:11 <Lumpio-> I think PATCH is nonstandard maybe
19:44:25 <Sgeo_> olsner, Smalltalk didn't exist. There wasn't an EMP that wiped all Smalltalk images and now Smalltalk is dead forever, or anything
19:44:34 <Sgeo_> ....*Smalltalk didn't stop existing
19:44:39 <elliott> yes there was
19:44:51 <fizzie> There's OPTIONS and CONNECT, too.
19:45:27 <fizzie> (And I suppose POST is in fact more common than PUT.)
19:46:00 <olsner> I think get, head and post are the only ones used in practice
19:46:23 <fizzie> CONNECT is used when you want to use a proxy for HTTPS stuff.
19:46:34 <fizzie> The sort of proxy that doesn't man-in-the-middle you, anyway.
19:47:07 <fizzie> (The PATCH method -- RFC5789 -- seems to be at PROPOSED STANDARD status at the moment.)
19:47:55 <fizzie> WebDAV adds quite a few methods too, but maybe that doesn't quite count as HTTP any more.
19:48:17 <fizzie> Though the official name *is* "HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)".
19:48:53 <olsner> does http allow arbitrary methods? or do you make an extended http when you make up a method?
19:49:09 <fizzie> GET, POST and HEAD are the only pre-1.1 ones, so it sort of makes sense they're also the only ones that get used.
19:49:12 <Lumpio-> Nope, the standard doesn't allow extra methods.
19:49:30 <Lumpio-> Yeah and apparently some browsers (or perhaps mostly proxies) have trouble understanding anything besides HEAD/GET/POST
19:49:47 <fizzie> "The set of common methods for HTTP/1.1 is defined below. Although this set can be expanded, additional methods cannot be assumed to share the same semantics for separately extended clients and servers."
19:49:50 <Lumpio-> So pretty much every "hey we're RESTful yo" kinda thing actually uses POST for everything and a field to specify the "actual" method.
20:03:32 -!- FreeFull_ has quit (Ping timeout: 255 seconds).
20:05:16 -!- FreeFull has joined.
20:08:42 -!- TodPunk has quit (Ping timeout: 252 seconds).
20:10:20 -!- FreeFull_ has joined.
20:12:13 -!- FreeFull has quit (Ping timeout: 245 seconds).
20:12:16 <Fiora> kmc: http://www.bloomberg.com/news/2011-09-12/commonly-used-pain-pills-increase-kidney-cancer-risk-in-study.html
20:12:54 <Fiora> bleh, it doen't have a link to the study :<
20:13:09 * Fiora keeps using ibuprofen anywas >.>;
20:13:40 <Lumpio-> Everything that "increases cancer risk" ends up in the news
20:13:54 <Lumpio-> Even if it's only when you get 50kg of it every day or it only increases it by 0.00000002% or whatever
20:14:09 <Fiora> that was from the Nurse's Study though, which is rather a big deal
20:14:15 <kmc> yeah
20:14:22 <Fiora> (51% increase in risk, N=125000 over 20 years)
20:14:25 <kmc> that's too bad
20:14:39 <kmc> i take ibuprofen when I have a headache which is... not that often?
20:14:44 <kmc> but maybe i should try harder not to
20:14:45 <Fiora> Yeah, basically the same here
20:14:47 <kmc> i thought it was super safe :(
20:15:08 <Fiora> Tylenol always worries me though because of its liver toxicity
20:15:12 <kmc> yes
20:15:19 <Fiora> I wonder if they found any link there, or if it's only if you take too much
20:15:41 <kmc> how does that compound with alcohol i wonder
20:16:41 <Fiora> wikipedia says chronic alcohol abuse increases the risk of tylenol (probably since it means less liver cells so easier to reach a toxic dose?)
20:17:59 <Fiora> I really wish wikipedia had the p-values for some of the results from that study though
20:18:03 -!- monqy has quit (Quit: hello).
20:18:57 <kmc> i don't trust p-values
20:19:11 <kmc> 20 people do a study, 19 people get no result and don't publish, one person gets an awesome significant p=0.05 result!!
20:19:52 <Bike> is this a sarcastic xkcd joke, i'm confused
20:20:10 <kmc> no it's just a thing that happens
20:20:42 <kmc> i guess once xkcd makes a strip about any existing phenomenon or item of culture it becomes forever 'an xkcd reference'
20:21:05 <Bike> i'm just trying to correlate the possibly sarcastic multiple exclamation marks with your use of goatkcd
20:21:05 <Snowyowl> people are trying to convince scientists to publish negative results.
20:21:12 <kmc> indeed
20:21:22 <Snowyowl> sounds boring to read though
20:21:28 <kmc> some of the negative results journals are interesting reading actually
20:21:34 <Snowyowl> rly?
20:21:36 <Bike> like you meant "haha, people who say they don't trust p-values don't know anything about stats and are just parroting xkcd"
20:21:46 <kmc> a lot of them are like "this seemed promising but we ran out of funding before we could finish"
20:21:56 <kmc> Bike: sorry 4 the confusn
20:22:02 <Bike> http://www.plosmedicine.org/article/info%3Adoi%2F10.1371%2Fjournal.pmed.0020124 also
20:22:08 <kmc> also it's just fun to see what people think of trying
20:22:20 <Fiora> kmc: I meant more that, it's such a huge study that it'd be cool to know which conclusions are reliable
20:22:29 <Fiora> like, I could totally believe them finding conclusions with p=0.001
20:22:36 <kmc> http://www.jnrbm.com/
20:22:37 <Fiora> since most studies have 100 times lower
20:22:39 <Fiora> *lower N
20:22:41 <kmc> yeah
20:22:47 -!- Bike has quit (Quit: Lost terminal).
20:22:49 <kmc> that's kind of artifical though
20:23:08 <kmc> if you pick any two things in the world, there is probably *some* correlation and if you pump the sample size high enough, you can get any p value you want
20:23:16 <elliott> I just don't take painkillers
20:23:17 <Fiora> that "most published research findings are false" is awesome though
20:23:31 <elliott> it seems to work out okay because I can never tell if they are working or not anyway
20:23:42 <kmc> "Could titanium oxide coating from a sol--gel process make stone baskets more resistant to laser radiation at 2.1 mum?"
20:23:43 -!- Bike has joined.
20:23:45 <kmc> "no"
20:24:23 <Fiora> ibuprofen is like, the only NSAID that works well for me >_<
20:24:41 <elliott> kmc: correlation between bathtub manufacturing and dying in space
20:24:54 <Bike> wonder if i should look up studies on the effectiveness of the antidepressants i'm on
20:24:57 <Snowyowl> You're right. The actual result probably won't affect my life too much, but it's interesting to see what they did, how they did it, and why they got the results they did.
20:24:58 <Bike> probably would not cheer me
20:25:12 <Snowyowl> elliott: torture the data and it will admit to anything
20:25:40 <kmc> just use a log log plot
20:26:04 <olsner> why torture the data? just torture the subjects and they'll give you any data you want
20:26:08 <Fiora> the side-effects of SSRIs don't seem so bad at least
20:26:25 <kmc> they're really bad for some people
20:26:34 <Bike> you mean besides the increase in suicidal ideation or
20:26:41 <kmc> also once you're on them it's hell to get off
20:27:00 <Bike> fucking three pages of warnings about how i'm going to die, man.
20:27:03 <Fiora> I thought the increase in suicidal ideation was immediate after starting them, because it gave people more motivation? XD
20:27:11 <Fiora> *immediately
20:27:16 <kmc> yeah that's what i've heard too
20:27:18 <Bike> motivation isn't ideation, but there's that too yes
20:27:43 <olsner> something like, it increases motivation before it starts treating depression?
20:27:47 <Fiora> I dunno, I ran out of mine a while ago and really didn't feel like going to ask for more
20:28:05 <kmc> did you have awful withdrawal symptoms?
20:28:07 <Bike> olsner: in part.
20:28:22 <Fiora> I followed the same regime as for starting (cut dose in half, then to zero after a week)
20:28:27 -!- Phantom__Hoover has joined.
20:28:27 <Fiora> I didn't notice anything
20:29:02 <Fiora> I was kind of frustrated that they conflicted with tryptans
20:29:15 <Fiora> "tryptans are totally safe! except if you're taking SSRIs. then they'll kill you."
20:29:31 <Phantom__Hoover> <Fiora> Tylenol always worries me though because of its liver toxicity
20:30:02 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
20:30:13 <olsner> err, according to wikipedia, tryptan is an essential amino acid?
20:30:14 <Fiora> erm. triptan.
20:30:15 <Phantom__Hoover> I'm pretty sure it's safe in reasonable doses?
20:30:17 <Fiora> not tryptan. they are not the same thing.
20:30:19 <Fiora> damnit biology
20:30:49 <Fiora> Phantom__Hoover: yeah, it's just like, it has a relatively low gap between toxic and effectivenes.s I forgot what the word was for (toxic dose) / (effective dose)
20:31:02 <Fiora> the max dose per day is around ~4g, the toxic dose is around... 10g
20:31:11 -!- AnotherTest has quit (Quit: Leaving.).
20:31:36 <Phantom__Hoover> Yeah, you need to be very aware of how much you've taken.
20:31:52 <kmc> there are a lot of physicians who think tylenol should not be available over the counter
20:31:58 <Fiora> huh. interesting
20:32:29 <Fiora> they feel it's that dangerous relative to the others?
20:32:44 <elliott> paracetamol (AMERICAN TRANSLATION: TYLENOL) scares me
20:32:45 <kmc> yeah for this reason
20:32:57 <kmc> the toxic dose is not much higher than the effective dose
20:32:59 <Bike> probably the incredibly wide use is a factor
20:33:04 <kmc> it's easy to kill yourself accidentally or deliberately
20:33:25 <Fiora> I remember reading that it's really dangerous suicide-wise because it's easy to take a whole bunch and not die immediately, and feel fine
20:33:29 <Fiora> but 3 days later your liver fails
20:33:31 <olsner> having used as the default pain killer forever, I am not the least scared of paracetamol
20:33:43 <olsner> hmm, accidentally a paracetamol there
20:33:45 <fizzie> Oh, is paracetamol the same thing as tylenol? I had no idea.
20:33:47 <elliott> Fiora: iirc by the time you feel anything it is already too late and you are going to die no matter what, or something
20:33:51 <Phantom__Hoover> I'm not scared of it probably because my parents have been giving it to me since forever and they're doctors?
20:33:53 <Fiora> a close friend of mine actually tried to kill herself with tylenol a few years ago
20:34:01 <Fiora> she probably survived because she managed to puke it all up
20:34:04 <elliott> Fiora: "acetaminophen"
20:34:04 <Sgeo_> Tylenol scares me, but Aspirin is probably more dangerous for me since I'd need to force myself to eat
20:34:09 -!- azaq23 has joined.
20:34:17 -!- azaq23 has quit (Max SendQ exceeded).
20:34:27 <Sgeo_> As far as I know my liver is in good working order, and I am careful with how much Tylenol I take
20:34:36 <kmc> fizzie: yeah, it's also called APAP
20:34:39 <Phantom__Hoover> (My mother was actually in a transplant ward with a woman who lost her leg and liver from an accidental overdose.)
20:35:10 <Fiora> I remember also that like surgeons tell people to take tylenol instead of NSAIDs during recovery I think, because it isn't a blood thinner
20:35:13 <Fiora> while aspirin/ibuprofen are
20:35:19 <fizzie> There's a brand in Finland too, but it's also known as paracetamol. I keep forgetting it.
20:35:23 <fizzie> Panadol, right.
20:35:57 <fizzie> That sure has a long list of countries in http://en.wikipedia.org/wiki/List_of_paracetamol_brand_names next to it.
20:36:03 <Phantom__Hoover> I'm told that paracetamol is also more effective against headaches whilst ibuprofen is better for muscle pain.
20:36:42 <Phantom__Hoover> fizzie, "Neo-Kiddielets"
20:37:01 <Phantom__Hoover> And "Biogesic-Kiddielets"
20:37:40 <Sgeo_> Ireland has a lot of brands for paracetamol
20:38:06 <elliott> I love eating biogesic kiddielets to make me feel better.
20:38:10 <elliott> Biogesic adults just aren't as tasty :(
20:38:26 <Phantom__Hoover> Calpol! I remember Calpol!
20:38:31 <Phantom__Hoover> It tasted dangerously nice.
20:38:32 <Bike> «Paracetamol hepatotoxicity is, by far, the most common cause of acute liver failure in both the United States and the United Kingdom» huh
20:38:41 <Phantom__Hoover> Bike, note the 'acute'.
20:38:52 <elliott> Phantom__Hoover: dude...
20:38:53 <Phantom__Hoover> Alchohol-induced liver failure doesn't count.
20:38:55 <elliott> Calpol tastes disgusting.
20:38:59 <Phantom__Hoover> elliott, ...
20:39:00 <Bike> gonna be honest, I don't know what "acute" means in this context.
20:39:10 <elliott> Bike: well ugly liver failure is far worse
20:39:11 <Phantom__Hoover> Bike, acute is basically "bam your liver's dead"
20:39:25 <Bike> oh good
20:39:29 <elliott> Phantom__Hoover: Look OK the only decent-tasting paracetamol is that banana-flavoured stuff I had when I was a kid.
20:39:31 <Fiora> yeah, it's like "not chronic damage"
20:39:44 <Fiora> since alcohol is probably not going to destroy your liver in one go
20:39:49 <elliott> (let me tell you about how I can't swallow pills and therefore have to deal with the fact that all liquid medicine is the worst thing :( )
20:40:02 <Bike> you can't swallow pills?
20:40:04 <olsner> how can you be unable to swallow pills?
20:40:13 <elliott> I have no idea, I just literally can't
20:40:16 <Phantom__Hoover> do they get stuck in your throat or something
20:40:19 <Phantom__Hoover> that's the worst
20:40:19 <Bike> that sucks
20:40:19 <elliott> it might well be psychological
20:40:37 <olsner> just stick the pills in food and chug it down?
20:40:39 <elliott> like I can have the pill in my mouth and everything but I just cannot make the actual movements required to get it down
20:40:44 <fizzie> Ibuprofen is our to-go pain medicine, by the way, just to add one more point of data. (But I know of people who go with paracetamol.)
20:41:00 <Bike> i keep dry swallowing my pills even though i suspect that exacerbates one of the side effects
20:41:04 <Fiora> I've found that drinking milk instead of water works relaly well
20:41:09 <elliott> olsner: doesn't work (which points to it being psychological I guess)
20:41:09 <Fiora> in that I often can't even tell the pill is there
20:41:17 <fizzie> Fiora: That's because your mouth-eye then can't see it.
20:41:21 <Fiora> XD
20:41:27 <fizzie> (I may have not studied much of biology.)
20:41:29 <olsner> elliott: you can swollow food then?
20:41:32 <elliott> so THAT'S what the dangly thing is
20:41:34 <elliott> olsner: yes...
20:41:46 <Bike> "no, i can't swallow food"
20:41:49 <Bike> is that what you expected
20:41:54 <olsner> Bike: yes
20:42:02 <elliott> well gregor can't smell
20:42:03 <fizzie> elliott: What about stones? (Isn't that how digestion works? As mentioned, still pretty hazy on this...)
20:42:04 <elliott> same thing right
20:42:07 <Phantom__Hoover> elliott, what if it was some sort of schroedinger's pill arrangement
20:42:08 <elliott> #esoteric: full a weirdos
20:42:17 <Bike> my mouth is actually sewn shut, i have to get all my nutrition through IV tubing
20:42:28 <Fiora> the worst thing are those pills that don't have a proper casing and just tasty super nasty
20:42:28 <olsner> elliott: you should team up! you smell the food and then gregor can eat it
20:42:29 <Phantom__Hoover> i'm a hoover :(
20:42:33 <Phantom__Hoover> i don't have a mouth
20:42:39 <Bike> Fiora: welcome to my world
20:42:41 <elliott> IV food tubes are... sure something
20:42:51 <kmc> one pill makes you larger, and one pill makes you small
20:43:18 <elliott> there is portable IV food tube stuff and it is the most cumbersome looking thing in the universe
20:43:28 <Bike> "The diameter of a feeding tube is measured in French units (each French unit equals 0.33 millimeters)" what on earth
20:43:29 <fizzie> And the ones that mother gives you, they do nothing at all.
20:43:38 <Phantom__Hoover> elliott, sounds like Sgeo_'s kind of thing
20:43:41 <fizzie> Or is that "don't do"?
20:43:43 <elliott> but guys the worst thing about pills
20:43:44 <fizzie> It's something like that.
20:43:45 <Bike> "A catheter of 1 French has a diameter of ⅓ mm" I... but...
20:43:46 <elliott> is that you take one
20:43:49 <elliott> and suddenly you escape the matrix
20:43:52 <olsner> "don't do anything at all" iirc
20:43:52 <elliott> and you're plugged into this fucking thing
20:44:02 <Gregor> <olsner> elliott: you should team up! you smell the food and then gregor can eat it // worst superhero duo ever
20:44:03 <fizzie> olsner: That sounds more correct, yes.
20:44:06 <elliott> and then you have to go fight a bunch of dudes to save the world
20:44:22 <elliott> and your life gets turned into a 1999 scifi film
20:44:24 <Bike> what the fuck is the point of this!
20:44:26 <elliott> never again
20:44:26 <Phantom__Hoover> do you get to shoot elrond and stark too
20:44:50 <elliott> Phantom__Hoover: do you hoover up food
20:44:56 <Phantom__Hoover> eew no
20:45:28 <kmc> fizzie: i think it's "don't do anything at all"
20:45:30 <olsner> just remember that elrond is not priscilla, because priscilla is (iirc) the bus
20:45:50 <fizzie> kmc: olsner just SCOOPED you few lines up, but yes.
20:45:54 <kmc> ok
20:45:57 <kmc> i've been scooped
20:46:02 <kmc> scooped like poop
20:46:17 <fizzie> Is getting scooped up better than getting hoovered?
20:46:21 <fizzie> In general, I mean.
20:46:33 <olsner> I think so, yes
20:46:56 <olsner> depending somewhat on the carefulness of the scooping
20:54:42 <FreeFull_> What would a language that would be higher-level than, say, haskell, look like?
20:55:14 <Snowyowl> you write English sentences and it executes them
20:55:44 <elliott> FreeFull_: ask kmc
20:56:08 <Bike> "higher-level" meaning what
20:56:09 <shachaf> Ada.
20:56:22 <shachaf> It's used by the US air force -- you can't get higher-level than that, right?
20:56:34 <Phantom__Hoover> nasa!
20:56:49 <shachaf> I guess that's true.
20:56:51 <Bike> nasa uses java. what now
20:57:02 <shachaf> Well then.
20:57:07 <shachaf> I guess it's Java.
20:57:13 <kmc> the software on voyager
20:57:17 <kmc> that should be the highest right?
20:57:20 * shachaf installed GNAT yesterday for some reason.
20:57:23 <Phantom__Hoover> technically
20:57:37 <shachaf> Does "high" mean "far from the earth"?
20:57:44 <Bike> and the software on voyager is some godforsaken nightmare assembly, from what i remember of the apollo computers
20:57:45 <kmc> programming in English would be terrible, have you tried giving precise instructions to a *person* in English?
20:57:47 <Bike> lesson learned: shit sucks
20:58:12 <kmc> domains that need precision (like law) develop their own unusual dialects of English that resemble programming languages a lot more
20:58:14 <shachaf> Ada is a weird language.
20:58:15 <olsner> for the other meaning of "high", I guess English could actually work
20:58:28 <shachaf> Sgeo_: You should make Ada the new Clojure.
20:58:38 <kmc> ^^^^^ this
20:58:55 <FreeFull_> Haskell on a shelf
20:58:57 <FreeFull_> Haskell with weed
20:59:04 <FreeFull_> Haskell in a rocket
20:59:16 <olsner> haskell in hats
20:59:16 <Bike> ada's typing is actually kinda neat
20:59:26 <Sgeo_> What's the thing that was apparently debugged and fixed on a REPL while in space?
20:59:50 <elliott> shachaf: cobol was the new clojure for a while
20:59:52 <elliott> that was an interesting time
20:59:54 <Bike> deep space explorer or something, and that's not really an accurate story, they used a sim
21:00:05 <FreeFull_> Looking at Ada right now
21:00:15 <elliott> i hope you realise fizzie was joking
21:00:20 <FreeFull_> And looks good, other than looking a bit imperative
21:00:30 <Bike> hahaha
21:00:51 <Bike> Sgeo_: yeah, you're thinking of DS1's Remote Agent.
21:02:04 <FreeFull_> lambdabot doesn't have System.Cmd imported, does it
21:02:32 <FreeFull_> > system "echo test"
21:02:34 <lambdabot> Not in scope: `system'
21:02:50 <kmc> Sgeo_: one of the Mars rovers froze up due to a basic priority inversion deadlock and they had to fix it via the VxWorks serial console, with mars lag
21:03:04 <FreeFull_> kmc: ouch
21:03:14 <elliott> kind of crazy to think they, like, use vxworks
21:03:14 <elliott> in space
21:03:17 <kmc> yeah
21:03:21 <kmc> "not as crazy as using linux"
21:03:23 <fizzie> There's also Linux in space.
21:03:27 <elliott> that's, like, a human OS
21:03:45 <elliott> i admit i would not trust linux in space
21:03:48 <elliott> no way
21:03:52 <FreeFull_> For anything that has that amount of lag, you want to be able to do whatever you want locally first to see if it works
21:03:56 <olsner> human OS as in "just as unreliable as humans"?
21:03:58 <elliott> especially not if humans are involved
21:04:01 <elliott> not that there ever are these days
21:04:08 <elliott> olsner: no as in humans wrote it :P
21:04:18 <FreeFull_> elliott: What OS would you put in space?
21:04:21 <Bike> on the ISS they use lenovo thinkpads
21:04:25 <olsner> it's really quite silly and pointless to put humans in space
21:04:31 <Bike> probably with windows?
21:04:34 <kmc> elliott: mars rover 0wned due to accidentally included driver for printer from 1983
21:04:39 <elliott> haha
21:04:45 <Bike> that would be pretty sweet
21:04:55 <kmc> mars rover 0wned through video4linux1 firmware 32-bit compatibility layer
21:04:58 <elliott> 4chan hacks mars rover, it starts printing out obscenities through its printer
21:05:01 <elliott> while moving
21:05:09 <kmc> mars rover draws giant goatse on surface of mars
21:05:11 <Bike> "shit why did we even put CUPS on this thing?"
21:05:12 <elliott> trail of paper dicks spread throughout mars
21:05:25 <Bike> "i dunno, fedora is hard okay"
21:05:29 <kmc> aliens arrive believing it to be a mating display
21:05:31 <fizzie> You reminded me of a thing.
21:05:37 <elliott> i like the idea of the mars rover having a printer sort of by accident
21:05:37 <shachaf> Bike: imo so easy
21:05:46 <elliott> "well the computer came with it when we bought it from Gateway"
21:05:46 <olsner> aliens mating with 4chan? awesome
21:05:53 <Snowyowl> 4chan makes first contact
21:06:00 <Snowyowl> we come in peace tits or gtfo
21:06:18 <Bike> shachaf: end result: nasa ends up having a distribution choice flamewar with Beaky
21:06:32 <kmc> oh does beaky have opinions about linux distros?!?!?
21:06:33 <kmc> tell me more
21:06:39 <FreeFull_> Nasa puts Arch on the mars rover. The system then proceeds to break after an update and never work again
21:06:58 <Bike> see just like that. i am the linux whisperer.
21:07:02 <kmc> nasa puts Gentoo on mars rover, batteries run down while recompiling openoffice
21:07:29 <fizzie> http://isometric.sixsided.org/strips/the_future_of_advertising/ this is what you went and reminded me of.
21:07:35 <FreeFull_> NASA puts its own linux distro on the rover. Stallman demands source code.
21:08:02 <elliott> fizzie: i like how the images inexplicably don't show
21:08:14 <olsner> mars missions are perfect for source-based distros though, gives you plenty of time to compile the base system before you get there
21:08:16 <Bike> holy shit talking cubes
21:08:20 <fizzie> It worked for me. But the site is the mess.
21:08:30 <FreeFull_> funny how the gnu ada compiler is called gnat
21:08:40 <kmc> fizzie: haha
21:08:42 <elliott> are you using "chromium"
21:08:46 <FreeFull_> olsner: You could cross-compile
21:08:49 <fizzie> elliott: I am using that.
21:08:51 <kmc> i think i will send http://isometric.sixsided.org/data/strips/the_future_of_advertising/7.gif to a friend with no context
21:08:52 <Bike> i'm using "chromium" and it worked
21:09:01 <elliott> it's just white for me
21:09:01 <elliott> help
21:09:04 <FreeFull_> Even sending the binaries over would take a lot of time though
21:09:10 <olsner> FreeFull_: it's also written in ada and requires gnat to build, iirc
21:09:18 <elliott> sav eme!!!!
21:09:26 <elliott> um
21:09:30 <elliott> looking at the DOM in the html inspector
21:09:35 <elliott> it thinks it's just composed of <br>s in divs
21:09:37 <FreeFull_> olsner: All languages should be written in C
21:09:37 <elliott> with no image tags
21:09:44 <kmc> maybe they have CSS background images
21:09:48 <elliott> what is the UP
21:09:51 <elliott> <div class='panel'>
21:09:51 <elliott> <img id="panel-1" src="/data/strips/the_future_of_advertising/1.gif" >
21:09:51 <elliott> <br />
21:09:52 <elliott> </div>
21:10:11 <elliott> Chromium 24.0.1312.52
21:10:12 <elliott> you two?
21:10:13 <olsner> FreeFull_: the delivery system would string along a PC to cross-compile the OS for the rover on the way over?
21:10:22 <FreeFull_> That future of advertising page appears completely blank to me with firefox 18
21:10:24 <FreeFull_> Just a scrollbar
21:10:39 <elliott> FreeFull_: Is there a "More" at the bottom
21:10:40 <Snowyowl> I'm seeing the word "more" at the bottom but that's it
21:10:40 <FreeFull_> olsner: That sounds expensive
21:10:44 <FreeFull_> elliott: no
21:10:45 <Snowyowl> also firefox
21:10:46 <FreeFull_> Oh
21:10:47 <FreeFull_> Yes
21:10:50 -!- TeruFSX2 has quit (Ping timeout: 256 seconds).
21:10:51 <elliott> hm
21:10:54 <elliott> maybe the jquery is fucking it up
21:10:59 <elliott> Bike: fizzie: do you two have js disabled
21:11:01 <FreeFull_> Clicking it takes me to another page that is all black
21:11:02 <fizzie> kmc: I had http://isometric.sixsided.org/data/strips/only_when_youre_ready/21.gif printed with a dot matrix printer on tractor feed paper as a wall decoration back when.
21:11:08 <fizzie> elliott: I do not have js disabled.
21:11:10 <Bike> elliott: no
21:11:19 <elliott> heeeelp
21:11:24 <kmc> do you have jesus disabled
21:11:28 <elliott> hm
21:11:31 <FreeFull_> kmc: Yes
21:11:32 <elliott> disabling js now shows images
21:11:35 <elliott> but they're all a "broken image" icon
21:11:37 <FreeFull_> I didn't know that could cause issues
21:11:40 <fizzie> The site: it's a mess.
21:12:02 <fizzie> It used to have some sort of malware javascript infestation at some point too. ("You're welcome" if it still has one on some pages.)
21:12:18 <elliott> i dont understand
21:12:21 <elliott> how can such simple html be fucked up
21:12:46 <Snowyowl> why doesn't disabling javascript help?
21:13:07 <FreeFull_> elliott: Screwed up css and javascript?
21:13:17 <FreeFull_> Disabling javascript didn't fix anything for me, although it should have
21:13:40 <Snowyowl> seems like it should be screwed up css, but I can't find anything in there either
21:13:46 <Bike> okay this comic is like seven jpegs in sequence, how can it not be rendering, what the heck
21:13:48 <FreeFull_> I'll try with midori
21:14:09 <Sgeo_> Time to watch some DS9
21:14:15 <fizzie> kmc: It looked like https://dl.dropbox.com/u/113389132/Misc/20130118-juliste1.jpg this.
21:14:28 <shachaf> did you read "The Man Who Sold the Moon"
21:14:35 <kmc> nice
21:14:39 <Sgeo_> And then I need to force myself to work on resume
21:15:33 <FreeFull_> The website works in midori
21:15:38 <FreeFull_> I still don't see how it doesn't in firefox
21:15:45 <FreeFull_> The firefox web console doesn't give any errors
21:15:47 <fizzie> FreeFull_: It's: a mess.
21:15:52 <elliott> Bike: i hav eno idea
21:15:58 <Snowyowl> it works in chrome
21:16:02 <elliott> it makes N O S E N S E
21:16:09 <Snowyowl> wait now it doesn't
21:16:17 <fizzie> Snowyowl: It's some kind of a heisensite.
21:16:17 <elliott> what have i unleashed
21:16:22 <Snowyowl> ... it vanished while I was tabbed out
21:17:35 <Bike> http://isometric.sixsided.org/data/strips/the_future_of_advertising/16.gif k
21:18:38 <FreeFull_> It works in links2
21:25:15 <Sgeo_> Why is Self dead?
21:26:04 <shachaf> Sgeo_: Just use Ada.
21:26:09 -!- boily has quit (Quit: Poulet!).
21:26:37 <olsner> we used to have our introduction to imperative programming in ada
21:29:26 <Sgeo_> Instead of resumeing I am watching videos of Brogue
21:29:48 <Sgeo_> No I'm not
21:29:50 <Sgeo_> I'm bored.
21:30:16 <Bike> here, read: http://www.history.ac.uk/reviews/review/903
21:37:06 <Sgeo_> "Thanks. I am not trying to be an asshole, but the way I see it is if a company doesn't bother responding to me when it is a private matter, they don't deserve the opportunity to try and respond to me because it became a public matter."
21:37:09 <Sgeo_> --a reddit comment
21:37:30 -!- Nisstyre has quit (Quit: Leaving).
21:38:57 <kmc> shachaf: I started learning about how OCB works internally!
21:39:20 <kmc> there are a few thing that look strange to me
21:39:25 <kmc> but i only know enough crypto to be dangerous
21:39:27 <kmc> they are probably fine
21:39:35 <shachaf> What are the things?
21:39:55 <Bike> OCB?
21:40:02 <kmc> a block cipher mode, ocb
21:40:04 <kmc> err
21:40:07 <kmc> http://www.cs.ucdavis.edu/~rogaway/ocb/ocb-faq.htm
21:40:39 <kmc> shachaf: well for example, the integrity tag is computed (essentially) by simply xoring all the plaintext blocks and then encrypting that
21:40:55 -!- FreeFull_ has changed nick to FreeFull.
21:41:11 -!- Snowyowl has quit (Quit: Snowyowl).
21:41:55 <FreeFull> kmc: That does sound rather weird
21:41:59 <shachaf> So if you add an all-zero block you get the same tag?
21:42:22 <kmc> no, because the number of blocks will change
21:42:43 <kmc> but what if you transpose two blocks?
21:42:47 <shachaf> OK, if you swap two blocks you get the same tag?
21:42:49 <shachaf> Right.
21:43:05 <kmc> i don't know, i should try it
21:45:22 <kmc> but if you swap two blocks in the ciphertext, the tag will be wrong because the two plaintexts will come out completely wrong
21:45:51 <shachaf> Sure.
21:46:21 <kmc> oh and an attacker can't use this to discover if one message is a transposition of another
21:46:25 <kmc> because the nonce will be different
21:46:47 <kmc> still vaguely sketchy
21:47:04 <shachaf> Oops, I completely forgot about http://crypto.stanford.edu/RealWorldCrypto/program.php :-(
21:47:20 <shachaf> Apparently it was last week.
21:49:06 <shachaf> I think at the time I heard about it I thought I wouldn't be in CA that week.
21:51:35 -!- jdiez has left.
21:58:27 -!- derkus has changed nick to dessos.
21:58:40 <kmc> apparently shitake mushroom mycelium can be encouraged to fruit by beating the crap out of it with sticks
21:58:50 <kmc> this was discovered when some monk got pissed off that his mushrooms weren't growing
22:00:27 <Phantom__Hoover> i thought monks were meant to be serene and at one with the universe
22:00:46 <kmc> and priests are supposed to be celibate
22:02:09 -!- monqy has joined.
22:04:29 -!- FreeFull has quit (Read error: Operation timed out).
22:04:46 -!- FreeFull has joined.
22:04:46 -!- FreeFull has quit (Client Quit).
22:11:40 -!- monqy has quit (Quit: hello).
22:12:52 -!- heroux has quit (Ping timeout: 256 seconds).
22:14:29 -!- heroux has joined.
22:17:23 -!- NihilistDandy has joined.
22:19:05 <Sgeo_> o.O DCSS keeps advancing
22:19:08 <Sgeo_> There's now 0.11
22:24:10 <elliott> yes sgeo
22:24:13 <elliott> software gets released
22:24:54 <Sgeo_> Unless it's NetHack past 3.4.3
22:26:18 -!- FreeFull has joined.
22:26:36 <FreeFull> If I have a binding in ghci, how do I get rid of it?
22:27:05 <FreeFull> I accidentally declared overlapping instances and had to restart ghci to get rid of them
22:29:04 <Sgeo_> That's it. Fuck Kopete.
22:29:17 <kmc> FreeFull: try #haskell
22:29:37 <FreeFull> I then read that :r will get rid of all bindings (which wouldn't have been useful)
22:29:41 <FreeFull> Ok
22:43:52 -!- WeThePeople has joined.
22:44:21 -!- ogrom has joined.
22:44:30 -!- augur has quit (Remote host closed the connection).
22:44:47 <Sgeo_> `list
22:44:48 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/bin/list: Permission denied \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/bin/list: cannot execute: Permission denied
22:45:00 <Sgeo_> `run chmod a+x bin/list
22:45:03 <HackEgo> No output.
22:45:05 <Sgeo_> `list
22:45:06 <HackEgo> ​/hackenv/bin/list: line 1: Taneb: command not found
22:45:14 <Sgeo_> `echo bin/list
22:45:16 <HackEgo> bin/list
22:45:22 <Sgeo_> `cat bin/list
22:45:24 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot shachaf
22:45:31 <Sgeo_> wat
22:46:13 <Bike> so just put in "echo"
22:47:55 <Sgeo_> Something to do with sed?
22:48:39 <Sgeo_> `run sed -i s/Taneb/echo Taneb/ bin/list
22:48:41 <HackEgo> sed: -e expression #1, char 12: unterminated `s' command
22:48:43 <kmc> #!/bin/cat
22:48:46 <Sgeo_> `run sed -i s/Taneb/echo/ Taneb/ bin/list
22:48:49 <HackEgo> sed: can't read Taneb/: No such file or directory
22:48:57 <shachaf> Sgeo_ why am i on the regular list
22:49:00 <Bike> kmc: haha, does that actually work?
22:49:00 <Sgeo_> `run sed -i "s/Taneb/echo/ Taneb/" bin/list
22:49:01 <HackEgo> sed: -e expression #1, char 15: unknown option to `s'
22:49:06 <Sgeo_> shachaf, I haveno idea
22:49:09 <shachaf> take me off!!
22:49:17 <Sgeo_> Take off yourself
22:49:22 <Bike> `run sed -i s/shachaf// bin/list
22:49:26 <HackEgo> No output.
22:49:28 <shachaf> Thike
22:49:37 <Sgeo_> `run sed -i "s/Taneb/echo Taneb/" bin/list
22:49:38 <HackEgo> No output.
22:49:44 <kmc> Bike: sure, easiest language to write a quine in
22:49:44 <Sgeo_> `cat bin/list
22:49:45 <HackEgo> echo atriq Ngevd Fiora nortti Sgeo alot
22:49:54 <Bike> kmc: cool beans
22:49:58 <Sgeo_> Why is Taneb not on there
22:50:23 <Bike> what we need is irc-based vi.
22:50:31 <shachaf> `mkdir quines
22:50:31 <Sgeo_> I tried to /nick echo but echo is online
22:50:32 <HackEgo> No output.
22:50:44 <Sgeo_> Whoever echo is, e's on the list
22:50:53 <shachaf> `run touch quines/ruby
22:50:56 <HackEgo> No output.
22:50:59 <shachaf> `run touch quines/python quines/perl
22:50:59 <kmc> editors like ed made more sense when I realized they were originally used off-line
22:51:03 <HackEgo> No output.
22:51:09 <Sgeo_> off-line?
22:51:09 -!- WeThePeople has quit (Quit: Leaving).
22:51:10 <shachaf> `run touch quines/cat
22:51:12 <FreeFull> "a square is a quadrilateral in the category of rectangles"
22:51:13 <HackEgo> No output.
22:51:27 <Bike> Sgeo_: imagine using it over irc
22:51:42 * Sgeo_ doesn't really know what ed was like
22:51:48 <FreeFull> `run chmod +x quines/cat
22:51:50 <HackEgo> No output.
22:52:01 <Bike> "was", he says
22:52:14 <shachaf> No, don't +x
22:52:20 <shachaf> `ruby quines/ruby
22:52:21 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ruby: not found
22:52:26 <shachaf> Pft.
22:52:28 <Bike> "When first invoked, ed is in command mode. In this mode commands are read from the standard input and executed to manipulate the contents of the editor buffer."
22:52:29 <kmc> like you would get a printout of compiler errors and prepare by hand an editor script to fix them
22:52:31 <Fiora> I think hussie is going to have it a running gag that fefeta never talks on-screen
22:52:40 <Sgeo_> `run sed -i "s/echo/echo\ Taneb/" bin/list
22:52:40 -!- Arc_Koen has joined.
22:52:43 <HackEgo> No output.
22:52:47 <Sgeo_> `cat bin/list
22:52:48 <HackEgo> echo Taneb atriq Ngevd Fiora nortti Sgeo alot
22:52:49 <kmc> that way you aren't using insanely expensive computer time to fix your dumb mistakes
22:53:00 <Sgeo_> Ah
22:53:05 <Bike> thank god we have Eclipse now
22:54:15 <FreeFull> Java is the replacement for COBOL
22:54:30 <Bike> ¬_¬
22:54:32 <kmc> Java is a COBOL in the category of FreeFull
22:54:52 <Bike> I can never decide what's more annoying, people hating on Java for bad reasons, or ava.
22:54:55 <Bike> *Java
22:55:11 <FreeFull> Bike: Java is insanely better than COBOL
22:55:28 <Bike> Have you ever used COBOL?
22:55:43 <FreeFull> No, only saw some
22:55:54 <FreeFull> Would you say Java is worse than COBOL then?
22:56:08 -!- carado has quit (Ping timeout: 246 seconds).
22:56:16 <Bike> No, just that putting things on a scalar scale of "good", and judging things based on hearsay, is kinda silly.
22:56:53 <FreeFull> Bike: Tell me what the main application of COBOL was, and then what the main application of Java is
22:57:51 <Bike> Programs for large businesses?
22:57:58 <kmc> Bike: surely you're not suggesting i should know something about a programming language before i hate on it
22:58:17 <kmc> "programs for large businesses" is impossibly vague
22:58:22 <Bike> yes, it is.
22:59:34 <FreeFull> kmc: But once I know a language I can't hate it unless it actually is horrible
22:59:42 <kmc> well then
23:00:34 <kmc> i don't like this thing where all software is either awesome magic pony rainbows, or unusable garbage
23:00:40 <kmc> in fact most software is solidly okay
23:00:51 -!- TeruFSX2 has joined.
23:01:06 <FreeFull> Most software is buggy if you look close enough, but people learn to walk around the bugs
23:01:17 <FreeFull> But it's ok because humans are buggy too
23:01:31 <Bike> How are humans buggy?
23:01:51 <Bike> kmc: also as a diehard snobol4 programmer that is exacty what i'm saying!!!
23:02:23 <FreeFull> Bike: Have you ever seen an optical illusion? Or irrational decisions?
23:02:37 <Bike> are those bugs?
23:02:46 <Bike> also i will be very impressed if you have a good definition of "rational" for this
23:02:53 <FreeFull> Well optical illusions can be considered features
23:02:54 <elliott> kmc: no all software is in fact unusable rubbish
23:02:56 <elliott> SORRY
23:03:02 <FreeFull> But irrational decisions can lead to all sorts of problems
23:03:31 <shachaf> elliott: what about @
23:03:43 <FreeFull> Bike: Ones that benefit the person more than the other choice, and where the person has all the information needed to make the choice and the capability to process it adequately
23:03:44 <Phantom__Hoover> FreeFull, how can you have a bug in something that wasn't even designed with a purpose
23:04:51 <elliott> shachaf: not really software
23:05:07 <Sgeo_> FreeFull, "benefit" might not be the best approach. "Works towards the goal that the person has in mind" might be better
23:05:31 <Bike> FreeFull: example of this?S
23:05:34 <Sgeo_> If someone wants to benefit someone else at their own expense, it's not irrational to choose the thing that will most accomplish that goal
23:05:50 <FreeFull> Sgeo_: Assuming the person has a goal above "don't get hurt, stay alive, be comfortable"
23:06:02 <Bike> also yeah, "benefit the person" isn't exactly in the human design doc.
23:06:37 <FreeFull> Sgeo_: What if the benefit is feeling better
23:06:51 <elliott> this discussion is stupid btw
23:06:54 <elliott> or rather
23:07:02 <elliott> it will rapidly approach maximum stupidity if allowed to continue
23:07:03 <Bike> oh yeah well you're stupid
23:07:12 <elliott> well nobody even knows what they're arguing about
23:07:18 <elliott> as in
23:07:31 <elliott> I don't see any evidence that anyone even agrees over what the disagreement is
23:08:37 <Bike> mostly i think "humans are irrational" is something thrown around by people who've seen some intro game theory and don't work on psychology or sociology much, and it bugs me a bit, which is why i'm writing this silly message instead of, what else was i doing, reading probably
23:08:55 <Sgeo_> FreeFull, you could construct a scenario where someone's goal may not involve any benefit including feeling better. There's an example I read: You're a mother, aliens come, they state that either your child will be tortured but you will be made to believe they have a happy life, or your child will have a happy life and you will be made to be tortured
23:09:13 <Bike> ok wow forget it yeah
23:09:16 <Sgeo_> Any personal "benefit" of choosing the second over the first is purely temporary
23:09:26 <Sgeo_> Erm, "you will be made to believe that they are being tortured"
23:09:33 <Sgeo_> Not "you will be made to be tortured"
23:10:25 <elliott> Bike: remember when you said I was stupid instead of nodding your head at my wisdom
23:10:34 <shachaf> Sgeo_: thx 4 "the update"
23:10:42 <Bike> stupid wisdom
23:10:57 <shachaf> By the way the funny thing is that I run an OotS RSS feed.
23:11:02 <Sgeo_> eep am I being called the center of the stupidity of this discussion?
23:11:08 <Sgeo_> shachaf, OOTS has an RSS feed
23:11:11 <Sgeo_> from giantitip
23:11:15 <shachaf> I know.
23:11:21 <shachaf> Not one that shows the pictures, though.
23:11:25 <shachaf> You have to click on the link.
23:11:26 <Sgeo_> Ah
23:11:35 <shachaf> I also run an SMBC RSS feed that shows the votey.
23:11:39 <shachaf> (I don't use either of them.)
23:18:22 <Sgeo_> Maybe I should just do what kmc did and write resume via LaTeX
23:18:26 <Sgeo_> Likely to be less broken
23:18:39 <Sgeo_> But I'd need to learn how to LaTeX
23:19:13 <Bike> You're applying for grad school, right? You'd need to learn that anyway.
23:20:01 <copumpkin> so it looks like Aaron Swartz was a big fan of Ray Dalio's
23:20:18 <elliott> whoa, copumpkin talking in #esoteric
23:20:20 <elliott> is it christmas
23:20:25 <copumpkin> why not!
23:20:27 <Bike> who's Ray Dalio?
23:20:32 <copumpkin> Bike: very rich guy
23:20:38 <kmc> Sgeo_: you can just copy that template (or one of a few others) and make content changes
23:20:42 <Sgeo_> Bike, I think I'm not going to work on grad school
23:20:47 <kmc> you don't really need to understand LaTeX deeply
23:20:47 <Sgeo_> kmc, I lost the link
23:20:57 <kmc> i used http://www.mcnabbs.org/andrew/linux/latexres/
23:21:03 <Sgeo_> ty
23:21:04 <kmc> but if you google "latex resume" you will find a few others
23:21:06 <kmc> pick one that you like :)
23:22:14 <copumpkin> this whole series seems kinda inspired by him: http://www.aaronsw.com/weblog/rawnerve
23:22:23 <copumpkin> and several of the articles cite him directly
23:23:12 <elliott> kmc: resume describing your experience manufacturing latex
23:23:41 <elliott> kmc: the twist is, it's printed on latex!
23:23:44 <kmc> at Vandelay Industries?
23:24:26 -!- dessos has left.
23:26:47 -!- FreeFull has quit (Read error: Operation timed out).
23:27:12 -!- FreeFull has joined.
23:27:28 <Sgeo_> Ok, I think I can get the hang of this
23:27:55 -!- Phantom__Hoover has quit (Ping timeout: 260 seconds).
23:31:08 -!- Phantom__Hoover has joined.
23:31:45 -!- FreeFull_ has joined.
23:31:50 -!- FreeFull_ has left.
23:32:54 <shachaf> hi copumpkin
23:32:59 <shachaf> `welcome copumpkin
23:33:00 <HackEgo> copumpkin: 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.)
23:34:25 -!- FreeFull has quit (Ping timeout: 248 seconds).
23:37:00 <Sgeo_> kmc, ooh, there's a line for proficient and a line for familiar
23:37:13 <Sgeo_> Does this mean I get to list every language I've ever tried as something I'm "familiar" with?
23:37:31 <copumpkin> shachaf: thanks!
23:37:56 <elliott> no the police will arrest you
23:38:24 <Bike> oh god yes do that
23:38:44 -!- epicmonkey has quit (Ping timeout: 248 seconds).
23:42:47 <Sgeo_> http://distrowatch.com/table.php?distribution=freespire
23:42:52 <Sgeo_> "Last Update: Tuesday 14 August 2012 04:36 GMT"
23:43:10 <Sgeo_> ....why does it still need to be updated. Has it changed from being dead to still being dead?
23:43:46 -!- monqy has joined.
23:43:51 <kmc> http://fiberandfumes.tumblr.com/post/38178202379/text-mode-this-letter-was-sent-to-a-russian
23:45:58 <Sgeo_> Proficient: Python, C#, LSL; Familiar: Javascript, Haskell, Clojure, Ruby, Java, Tcl, Smalltalk
23:46:04 <Sgeo_> I'm sure there's more to go in the familiar column
23:46:12 <Sgeo_> Factor seems a bit silly to add
23:47:26 <Bike> no, do it
23:47:47 <Sgeo_> Factor, Racket (formerly PLT Scheme
23:47:49 <Sgeo_> )
23:48:04 <Bike> The Artist Formerly Known As Lisp
23:48:37 <Sgeo_> I don't know if I really count as proficient with C# :/
23:48:49 <Bike> it's a resume, the entire point is arrogance
23:51:17 <shachaf> Hmm, I should probably do the résumé thing.
23:51:32 <copumpkin> shachaf: pfft
23:51:36 <olsner> shachaf: don't do it! they'll give you a job!
23:51:36 <copumpkin> why would you do that!
23:51:57 <copumpkin> there's a big trade-off with resumes
23:52:16 <copumpkin> whether to write résumé, and risk people thinking you're pretentious, or to write resume and risk people thinking you're uneducated
23:52:27 <elliott> rêsumê
23:52:51 <shachaf> copumpkin: What do I write if I want people to think I'm crazy?
23:53:07 <copumpkin> Curriculum mortis
23:53:13 <olsner> rësumë
23:53:30 <shachaf> I don't like "resume" because I always read it as "resume" instead of "resume".
23:53:36 <quintopia> shachaf: anything promoting extreme instrumental rationality
23:53:42 <olsner> I call it CV, no latin, no funny letters, nothing
23:53:55 <copumpkin> olsner: they have slightly different connotations, in the US at least
23:54:35 -!- Nisstyre-laptop has joined.
23:55:10 <olsner> hmm, what's the difference?
23:55:24 <Bike> CVs are usually academic?
23:55:28 <copumpkin> yeah, and more detailed
23:55:41 <copumpkin> will often have a list of all papers, talks, P.C. memberships, etc.
23:57:16 <Sgeo_> I'm sure I forgot some languages that I could list
23:57:23 <Sgeo_> Not going to list Scala, I barely remember a thing
23:57:33 <elliott> you forgot LSL
23:57:35 <elliott> oh
23:57:38 <elliott> never mind
23:58:07 <monqy> 15:46:12 <Sgeo_> Factor seems a bit silly to add
23:58:09 <monqy> yet lsl isn't
23:58:22 <shachaf> Is LSL like LTL?
23:58:29 <shachaf> LTL is "pretty cool i hear"
23:58:37 <monqy> yes but instead of being linear temporal logic it's linden scripting language
23:58:38 <Sgeo_> LSL could, in theory, land me a job. I think
23:58:44 <olsner> coppro: sounds like it's a US vs british thing even, where the british "CV" seems to be what I'd call CV/résumé
23:58:47 -!- NihilistDandy has quit (Quit: Textual IRC Client: www.textualapp.com).
23:59:03 <olsner> coppro: *copumpkin
23:59:15 <Sgeo_> I guess I'm kind of familiar with PHP
23:59:17 <Sgeo_> :(
23:59:28 <monqy> u know u want the php jobs
23:59:30 <shachaf> i love php
23:59:32 <shachaf> it is so easy
23:59:33 <copumpkin> olsner: yeah, I think so
23:59:40 <monqy> shachaf...
23:59:53 <shachaf> monqy: SORRY I WENT FOR A LONG TIME WITHOUT IT
2013-01-19
00:00:09 <shachaf> "i was getting "withdrawal""
00:00:19 <monqy> i saw you saying it earlier today!!! or maybe late last night depending on how you look at it
00:00:30 <monqy> a few hours "a long time"
00:00:45 <shachaf> last night = forever ago
00:00:48 <Bike> Sgeo_: you realize that makes you better for hiring than anything else.
00:01:11 -!- sirdancealot has quit (Ping timeout: 252 seconds).
00:01:14 <Sgeo_> All PHP familiarity I have comes from having taken one class...
00:01:23 <Sgeo_> Well, I guess not _all_
00:01:32 <Sgeo_> Also used it in Senior Project a little
00:01:33 <olsner> you have had classes in php? :S
00:01:35 <Sgeo_> Actually, very little
00:01:49 <Sgeo_> Most of the coding I did was Javascript
00:02:05 <olsner> (are you the one studying at the farming university?)
00:02:53 <Sgeo_> It's at a place called Farmingdale.
00:03:05 <Sgeo_> The university used to be about farming but now it isn't.
00:03:20 <olsner> Right.
00:05:00 -!- Phantom__Hoover has quit (Ping timeout: 240 seconds).
00:05:25 -!- Phantom__Hoover has joined.
00:12:08 -!- TodPunk has joined.
00:12:25 <Fiora> huh. pouring a liquid into a light cup on a low-friction counter causes the liquid to slosh back and forth, which causes the cup to jump back and forth along the counter for a few seconds until the liquid settles
00:12:29 <Fiora> I'm easily amused
00:12:47 <olsner> indeed
00:13:05 <Sgeo_> I used to be amused by the glowing door when I hover over it in MS Allegiance
00:13:10 <Sgeo_> I may be more easily amused than Fiora
00:13:40 <olsner> the moving cup can be amusing for a short time (liquids should have no power over solid matter!), but will not amuse for long
00:14:23 <elliott> Fiora: how low-friction are we talking here
00:15:31 <Fiora> um. it's just a plastic counter finish, I'm not sure
00:15:42 <Fiora> but the kind of thing you can slide your hand along and it feels really super smooth
00:16:43 <Bike> http://vixra.org/ hey, this site is still around!
00:16:53 <olsner> i.e. it's not quite as low-friction as pitch is viscous
00:17:13 -!- Phantom__Hoover has quit (Ping timeout: 245 seconds).
00:18:35 -!- Phantom__Hoover has joined.
00:18:35 <elliott> Bike: this is the quack arxiv right
00:19:00 <shachaf> quarxiv
00:19:04 <Bike> yeah
00:19:08 <Bike> «he Fifth Function of University: “Neutrosophic e-Function” of Communication-Collaboration-Integration of University in the Information Age»
00:20:17 <shachaf> I thought arxiv was the quack arxiv.
00:21:36 <Bike> ohhhhh snap
00:22:19 -!- TodPunk has quit (Quit: This is me, signing off. Probably rebooting or something.).
00:22:31 <shachaf> "Abstract: Young stars like the Sun are hollow. An illustration is provided."
00:22:33 * shachaf looks
00:22:41 <shachaf> http://vixra.org/pdf/1301.0109v1.pdf
00:22:49 <shachaf> As promised!
00:24:02 <Bike> Iron Plasma
00:27:41 -!- TodPunk has joined.
00:30:10 -!- augur has joined.
00:34:02 -!- ogrom has quit (Quit: Left).
00:37:42 <Sgeo_> kmc, quick question: Is whitespace outside of commands relevant at all?
00:49:02 <olsner> depends on the language (HTH)
00:50:34 <Jafet> Weisslebensraum
00:51:56 <kmc> Sgeo_: in latex?
00:52:04 <Sgeo_> kmc, yes
00:52:55 * Sgeo_ was almost about to wonder if there's a Try Ruby until I remembered that's where the trend came from
00:52:55 <kmc> well having whitespace is different from not having any
00:53:15 <kmc> and two newlines in a row (i.e. blank line) starts a new paragraph
00:53:38 <kmc> and some environments can redefine things so that whitespace matters
00:53:40 <kmc> e.g. verbatim
00:53:48 <kmc> but mostly whitespace does not matter
00:54:02 <Sgeo_> Ok, thank you
00:54:06 <kmc> :)
00:54:27 <shachaf> see? whitespace is not so hard
00:54:32 <shachaf> i'm a big fan of it in fact
00:55:35 <kmc> subtle
00:55:39 -!- Arc_Koen has quit (Quit: Arc_Koen).
00:55:42 -!- impomatic has left.
01:02:42 <kmc> Fiora: yeah, coupled oscillators are fun
01:03:40 <kmc> though maybe this is not one
01:04:46 <kmc> what if you attach the cup to some springs too
01:12:13 <Fiora> oh dear
01:21:36 <Sgeo_> My resume is already running 2 pages
01:21:37 <Sgeo_> :/
01:22:46 <Jafet> Fiora: http://www.youtube.com/watch?v=JWToUATLGzs
01:27:12 <Bike> jafet: http://www.youtube.com/watch?v=QCp7bL-AWvw#t=1m35s
01:28:57 -!- zzo38 has joined.
01:31:38 <Phantom__Hoover> Jafet, is that a coupled oscillator thing?
01:32:41 <Jafet> Probably not
01:33:04 <Jafet> Poem symphonique for 100 metronomes and a fancy sweeping machine thing
01:33:51 <Sgeo_> I can't make it fin
01:33:51 <Sgeo_> fit
01:34:13 <Phantom__Hoover> It... looks like a coupled oscillator thing.
01:34:39 <Sgeo_> Maybe I should comment out the extra stuff?
01:34:41 <Fiora> Jafet: wooow
01:35:06 <Fiora> that is so cool
01:35:24 <Phantom__Hoover> bah
01:35:30 <Phantom__Hoover> it's differential equations
01:35:45 <Bike> is it ever not?
01:36:43 <Jafet> Yo momma so big, she needed two exponential substitutions
01:36:44 <Phantom__Hoover> when it's not terrible, yes
01:36:59 <Bike> harsh
01:38:02 <kmc> yeah those metronomes are the best
01:39:01 <Sgeo_> How do I make this fit on one page https://dl-web.dropbox.com/get/Public/resume-censored.pdf?w=AADIvu8kdZ7VAVENqHkmKRekbKWh07MscyyuspAin5TmhQ
01:41:04 <kmc> 403
01:41:15 <kmc> do i need to sign into dropbox
01:41:20 <Sgeo_> http://dl.dropbox.com/u/16240872/resume-censored.pdf
01:41:30 <Sgeo_> No, I just copied the wrong link
01:42:09 <kmc> make e.g. "PSOX \n Developer: 2007-2008" into one line
01:42:39 <kmc> also your Skills section is about 5 lines and could shrink to two
01:42:47 <kmc> with fewer headings and such
01:42:56 <kmc> people know that Linux is an Operating System and not a Computer Language
01:43:28 <Phantom__Hoover> Sgeo_, put `list on resume
01:43:40 <Phantom__Hoover> shows community spirit & technical aptitude
01:43:43 <kmc> and you could condense the three bulletpoints under Education onto one line
01:47:54 <Sgeo_> hmm
01:48:53 <Bike> Phantom__Hoover: "experience using off-line editing systems in for rapid debugging in real-world applications"
01:49:05 <Bike> *-in
01:50:05 <Sgeo_> Does successfully guessing that \\ is related to newline count for anything/
01:50:51 <Bike> yes, it makes you a "pattern-oriented problem solver"
01:51:07 <Bike> also why did you escape the backslash
01:51:19 <Sgeo_> Because that was in the template
01:51:21 <Sgeo_> I just deleted it
01:56:23 <Sgeo_> I got it to all fit!
01:56:47 <Sgeo_> Thank you kmc
01:56:59 <kmc> patern-oriented object programming system or POOPS
01:57:06 <kmc> you're welcome Sgeo_
02:00:09 <Sgeo_> I also shrunk the font
02:04:07 <zzo38> I have read that Spartan FPGA has multiple clock signals, and that Amber runs as 40 MHz, and that in Virtex it runs twice as fast (but it also says they have changed it so now only Spartan is supported). Can it be made other things that can work faster than these speeds? What is the maximum speed?
02:05:34 <zzo38> What changes need to be made to run on different FPGA?
02:10:15 <Sgeo_> Crud how do I unapply for a job on LinkedIn
02:10:31 <Sgeo_> I just noticed that the one I sent a resume to is in San Francisco
02:10:43 <Bike> what's wrong with sanfran, eh
02:10:52 <Sgeo_> Having to move
02:11:00 <Bike> it's an adventure!
02:12:17 <Sgeo_> It seems awesome though.
02:12:18 <Sgeo_> "Exceptional coding skills. Mastery of several major programming languages (i.e., Ruby, Python, Java, etc) and experience with different programming paradigms. Exposure to functional programming is a must, as is understanding when it's not the right answer to a problem"
02:12:33 <Sgeo_> "Ability to rapidly learn new systems and languages as needed. You know what is meant by "C-like" and "ML-like" languages."
02:13:02 <Bike> turns out to be implementing standard ML in php
02:13:36 <kmc> SF is a pretty cool city
02:13:47 <Sgeo_> I don't think I have the experience they want
02:14:16 <kmc> Sgeo_: you should still interview
02:14:20 <kmc> free trip to SF
02:14:30 <kmc> practice interviewing
02:14:45 <Sgeo_> I should learn how to write cover letters
02:14:51 <Sgeo_> I didn't write a cover letter for this one
02:14:54 <Sgeo_> Just attached resume and sent
02:16:24 <kmc> i don't know any secret to it
02:16:41 <kmc> just say why you're interested in the job and highlight any particularly relevant skills or experience
02:16:59 <Sgeo_> A bit too late to do that for this one though :(
02:17:11 <kmc> remember the purpose of resume / cover letter is not to get you the job, just to get you the interview
02:17:24 <kmc> or usually just a phone call
02:18:11 <copumpkin> or a giant check to disappear and never be heard from again
02:18:15 <copumpkin> err
02:18:23 -!- Phantom__Hoover has quit (Remote host closed the connection).
02:24:05 -!- DH____ has quit (Read error: Connection reset by peer).
02:24:19 -!- DHeadshot has joined.
02:26:58 <kmc> http://www.forbes.com/sites/quora/2011/10/27/whats-the-easiest-way-to-get-a-novelty-check-5x2-or-similar-across-the-country/
02:32:19 <copumpkin> that's some useful knowledge right there
02:34:09 <Sgeo_> !
02:34:12 <Sgeo_> I forgot a period
02:34:14 <copumpkin> http://www.reddit.com/r/Blacksmith/comments/16t49n/damascus_steel_theories/c7z6ih9
02:40:07 -!- augur has quit (Remote host closed the connection).
02:41:23 <Bike> Sgeo_: you're dooooomed
02:41:38 <Sgeo_> Probably lack of cover letter was worse
02:45:23 <shachaf> imo move to san francisco
02:46:45 <copumpkin> why not NYC?
02:49:22 <c00kiemon5ter> come to Greece
02:52:01 <Bike> http://media.photobucket.com/image/recent/zebdeming/Bladesmithing/IMAG0110.jpg <-- well, that puts thiings in perspective
03:03:14 -!- hagb4rd has joined.
03:03:43 <hagb4rd> brothers and sisters of the pale forest
03:03:53 <hagb4rd> children of night!
03:04:07 <hagb4rd> who among you will run with the hunt?
03:04:20 <Bike> is this a sex thing?
03:05:07 <hagb4rd> yes dionysos and his legion
03:05:19 <hagb4rd> and i carry the flag
03:06:24 <hagb4rd> now night arrives with its purpuour legions
03:06:32 <hagb4rd> retire now to your tents
03:06:37 <hagb4rd> and to your dreams
03:06:53 <hagb4rd> `cause tomorrow
03:06:54 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: cause: not found
03:07:08 <hagb4rd> i`ll enter the town of my birth
03:07:16 <hagb4rd> i want to be ready
03:08:10 <hagb4rd> speak up! droogies..
03:08:19 <hagb4rd> speak up
03:08:42 <elliott> hi
03:08:48 <hagb4rd> hi elliott
03:09:12 <hagb4rd> it's good to have you here..
03:09:16 <elliott> me too
03:15:44 <Jafet> It's a fungot thing
03:15:45 <fungot> Jafet: so i never found the effort to configure? newbie here!! put this on!! i'm walking in my sleep, but nothing terrible either.
03:23:37 <Sgeo_> ^style
03:23:38 <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
03:23:46 <Sgeo_> ^style irc
03:23:47 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
03:24:17 -!- hagb4rd has quit (Ping timeout: 248 seconds).
03:26:48 <Jafet> ^style wp
03:26:48 <fungot> Selected style: wp (1/256th of all Wikipedia "Talk:" namespace pages)
03:27:00 <Jafet> fungot: is this a sex thing
03:27:01 <fungot> Jafet: isn't fnord " fnord style= " color: fnord 16:12, 22 may 2008 ( utc
03:27:51 <Sgeo_> Wait, which 1/1256th?
03:27:55 <Sgeo_> ...1/1256
03:28:00 <Sgeo_> I can't type it
03:28:05 <Sgeo_> I cannot type the fraction
03:28:07 <Sgeo_> 1/256
03:28:10 <Sgeo_> I had to backspace
03:28:15 -!- TeruFSX2 has quit (Ping timeout: 260 seconds).
03:28:34 <Sgeo_> 1/256
03:28:35 <Sgeo_> yay
03:28:43 <Bike> The sexiest 1/256th imo
03:42:29 <zzo38> I like some of the GNU extensions in C and some of the C99 stuff; however I have my own idea also for some extensions, such as additional preprocessor commands, struct/union types with parameters and if blocks and static members, operator overloading (but different and more limited than C++), etc
03:43:10 <zzo38> Such as, you can overload unary ! but not binary && and || and the result type of ! must be int and the value should be 0 or 1 only
03:43:43 <zzo38> Comparison overloading is == and < only, both sides being the same type, and the result being boolean (like above)
03:46:11 <zzo38> You also cannot overload [] and assignment operators and . and -> and , but can overload unary * for both reading and writing.
03:46:24 <zzo38> (But the type has to be the same reading and writing)
03:49:15 <Sgeo_> It occurs to me that using a generator could be almost as simple as list comprehensions
03:49:22 <Sgeo_> Wait what no
03:49:35 <c00kiemon5ter> I do not like overloading operators
03:49:46 <zzo38> Overloading [] is not used, because instead if you write x[y] it acts same like *(x+y)
03:49:55 <c00kiemon5ter> some of this sounds like rust
03:50:36 <zzo38> Does it? Maybe.
03:51:44 <c00kiemon5ter> there is also this http://www.c2lang.org/
03:52:28 <zzo38> For example you might write struct abc(a,const int b) { a data[b]; if(__builtin_types_compatible_p(a,char)) { int x; int y; int z; } };
03:54:04 -!- oerjan has joined.
03:54:23 <zzo38> Still, mine is not C2, it is mostly compatible with C instead so it can be used as extension, it can be called "High-C", and does not have all of the high-level features, only a few but no extra runtime stuff.
03:54:34 <Bike> is that supposed to be like a generic?
03:55:39 <zzo38> Is what supposed to be like a generic? What is a generic?
03:55:57 <Bike> Your code fragment. Like generics in C++.
03:58:05 <zzo38> Well, yes it is kind of
03:58:14 <zzo38> Not exactly the same, but there are some similarities
03:58:38 <Bike> I mean, just in that you have a type variable (and an integer parameter for that matter).
03:59:01 <Bike> Not sure I entirely understand how the conditional works. I assume that's compile time, but it's pretty different from usual declarations...
03:59:19 <zzo38> Yes, compile time conditional
04:01:26 <Bike> I mean, the having declarations in a block like that.
04:03:20 <zzo38> Yes it is different from plain C
04:03:33 <zzo38> __builtin_types_compatible_p is also different from plain C, it is a GNU extension.
04:03:44 <Bike> Right. The syntax just seems a bit confusing to me.
04:07:35 <zzo38> But it is based on C89 with some GNU extensions and some C99 stuff, rather than being based on C99 or C11.
04:08:24 <zzo38> Some things may be similar to C++ but will have a different meaning in C, such as a structure with no members is size zero in C (instead of one which it is in C++, I think?).
04:09:09 <shachaf> jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
04:09:12 <shachaf> ...Ahem.
04:09:36 <shachaf> Bike's fault.
04:09:52 <zzo38> (If all the members are static, then it is also zero size.)
04:10:37 -!- monqy_ has joined.
04:11:08 -!- monqy has quit (Disconnected by services).
04:11:13 -!- monqy_ has changed nick to monqy.
04:18:59 <shachaf> all hail monqy
04:19:22 <monqy> hi shachaf
04:20:01 <shachaf> hellonqy
04:22:11 <Sgeo_> I should eat soon
04:22:13 <Sgeo_> And then sleep
04:22:16 <Sgeo_> And then wake up
04:22:25 <Sgeo_> And then apply the suggestions that my friend gave me about my resume
04:22:53 <zzo38> Some C99 stuff is also available as GNU extensions. Some C99 stuff (including some which is GNU extensions), I think shouldn't belong so they should be removed (although a compiler still might support it as extensions).
04:27:13 <Bike> shachaf: bault?
04:27:33 <shachaf> @quote blame.shachaf
04:27:33 <lambdabot> cmccann says: some people blame themselves, some people blame the language, but the people who really know what they're doing blame shachaf.
04:38:50 <zzo38> And then it should allow, when using typeof and sizeof, you can use . and a member name after the type to mean the type of that member, and using * prefix for type pointed to. Should also be allow, static members of struct/union can be accessed by the value, or by using the type and . and the member.
04:40:14 <zzo38> Even with existing GNU extension you can do like: typedef struct kk { int a[0]; } kk; and then later if you have a variable kk k; to make typeof(*k.a) I think you can then make something like that if it is useful to you. It can be done with sizeof too
04:59:50 -!- Bike has quit (Ping timeout: 252 seconds).
05:01:30 -!- derkus_ has joined.
05:01:45 -!- Bike has joined.
05:01:49 -!- derkus_ has changed nick to derkus.
05:02:06 <zzo38> How would you think about these kind of extensions?
05:14:48 <oerjan> ^ul *
05:14:49 <fungot> ...out of stack!
05:15:27 <oerjan> ^ul b
05:15:28 <fungot> ...bad insn!
05:23:16 <kmc> http://www.theregister.co.uk/2013/01/16/las_vegas_phones/ "Phones lost and stolen in Las Vegas are mistakenly telling their owners they're at the house of one Wayne Dobson, who's getting pretty angry at the late night demands and visits from the police."
05:24:06 <Bike> "victims refused to believe the technology could be faulty"
05:24:14 <kmc> yeah
05:24:19 <kmc> who ever heard of computers having bugs
05:26:43 <monqy> shachaf
05:29:32 <shachaf> monqy :(
05:29:52 <monqy> yes....
06:11:59 -!- Bike has quit (Ping timeout: 240 seconds).
06:17:34 -!- Bike has joined.
06:18:56 -!- Bike has quit (Client Quit).
06:38:15 <Jafet> They're not computers, kmc, they're phones
06:38:21 <kmc> right
06:39:10 -!- Bike has joined.
06:39:23 <kmc> 'Kramer buys the wrong kind of bath salts, has a bad bath, tries to return them. Elaine's coworkers mock her for using her phone as a phone.'
06:40:22 <Bike> "I've been Google bombed, Jerry! My Google… it's ruined."
06:46:28 <kmc> i don't know if there is any actual show taking a seinfeld approach to human interaction in the internet age
06:46:39 <kmc> seems like fertile territory
07:00:05 -!- augur has joined.
07:40:42 <augur> http://decovo.wordpress.com
07:41:06 -!- ogrom has joined.
07:59:31 -!- carado has joined.
08:01:30 -!- carado has quit (Remote host closed the connection).
08:01:49 -!- asiekierka has quit (Excess Flood).
08:01:58 -!- carado has joined.
08:03:38 -!- augur has quit (Remote host closed the connection).
08:03:43 -!- asiekierka has joined.
08:34:56 -!- epicmonkey has joined.
08:45:53 -!- sirdancealot has joined.
08:47:59 -!- monqy has quit (Quit: hello).
08:56:44 -!- carado has quit (Ping timeout: 246 seconds).
09:00:55 -!- ogrom has quit (Quit: Left).
09:18:29 -!- Bike has quit (Quit: dunno!).
09:18:57 <elliott> oerjan: hello.
09:19:19 <oerjan> g'day
09:19:45 <elliott> oerjan: please name my language
09:19:52 <oerjan> Eric
09:20:41 <oerjan> short for "elliott's really interesting calculus"
09:23:20 -!- copumpkin has quit (Ping timeout: 272 seconds).
09:23:58 -!- copumpkin has joined.
09:24:45 <Jafet> Expressive language for international cultures
09:30:46 <elliott> oerjan: okay. now name it again
09:32:13 <oerjan> flaco, for formal language administrating categorical objects
09:32:59 <oerjan> or perhaps flawless computing
09:33:12 <elliott> getting closer
09:33:14 <elliott> another try??
09:35:32 <oerjan> moss, for massively objective security system
09:37:38 <oerjan> functional immutable nominal dependent urelement system
09:38:49 <oerjan> theorem expressions seamlessly computing objects
09:40:15 <zzo38> elliott: What is your language?
09:40:58 <elliott> oerjan: how about something that acronyms to oerjan
09:41:01 <elliott> zzo38: great!
09:42:19 <oerjan> ominously effective random jostling approximating numbers
09:42:48 <elliott> okay. perfect.
09:42:53 <oerjan> yay!
10:13:28 -!- asiekierka has quit (Excess Flood).
10:16:43 -!- asiekierka has joined.
10:20:50 -!- oerjan has quit (Quit: leaving).
10:33:57 -!- jesusiniesta has joined.
11:06:27 -!- Phantom_Hoover has joined.
11:14:39 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
11:16:11 -!- Phantom_Hoover has joined.
11:48:42 -!- Vorpal has joined.
12:01:13 -!- asiekierka has quit (Excess Flood).
12:02:52 -!- jesusiniesta has changed nick to Jkurei.
12:04:44 -!- asiekierka has joined.
12:17:30 -!- Jkurei has quit (Quit: Leaving).
12:23:41 -!- sebbu has quit (Ping timeout: 252 seconds).
12:35:14 -!- sebbu has joined.
12:35:14 -!- sebbu has quit (Changing host).
12:35:14 -!- sebbu has joined.
12:39:12 <olsner> elliott: have you made a language?
12:40:16 -!- asiekierka has quit (Quit: ZNC - http://znc.sourceforge.net).
12:43:16 <elliott> olsner: maybe.
12:43:59 -!- Nisstyre-laptop has quit (Read error: Operation timed out).
13:22:39 -!- Arc_Koen has joined.
13:24:47 -!- copumpkin has quit (Ping timeout: 252 seconds).
13:25:18 -!- copumpkin has joined.
14:06:39 <Sgeo_> "Interviews are occurring early next week, so if are a Python/JavaScript Engineer apply now!"
14:25:03 -!- augur has joined.
14:47:12 <mroman> I just recently divided Python by JavaScript.
14:53:26 <c00kiemon5ter> was there a remainder ?
14:55:47 <Sgeo_> I need food
14:55:53 <Sgeo_> I fell asleep instead of eating dinner
14:56:07 <Sgeo_> Had computer on mute so never heard alarm that was supposed to wake me after 30 minute nap
14:56:11 <Sgeo_> So now making dinner for breakfast
15:01:06 -!- epicmonkey has quit (Remote host closed the connection).
15:01:29 -!- epicmonkey has joined.
15:03:37 <Sgeo_> http://hypirion.com/swearjure (yes shachaf, this is Clojure related)
15:09:28 <olsner> > 0/0
15:09:29 <lambdabot> NaN
15:10:14 <mroman> c00kiemon5ter: Well, it raised a GPF.
15:13:30 -!- TeruFSX2 has joined.
15:21:53 <mroman> Well, never be lazy documenting stuff.
15:22:34 <mroman> "RA: Defined as sapd2.0./av!!". I have no idea what I did there.
15:32:30 <elliott> Collapsing kinds and types Blurring the distinction between
15:32:30 <elliott> types and kinds is convenient, but is it wise? It is well known that
15:32:30 <elliott> type systems that include the Γ ty
15:32:30 <elliott> :
15:32:30 <elliott> rule are inconsistent
15:32:32 <elliott> logics [Girard 1972]. Does that cause trouble here?
15:32:35 <elliott> The answer is no because FC, even without these extensions,
15:32:37 <elliott> is already inconsistent.
15:33:19 <elliott> "Some fear that the world may end if we do this. However, this is okay, because the world has already ended."
15:41:04 <Vorpal> heh
15:42:46 <elliott> Hmm, I'm going to regret this file being called ~/tmp/thesis.pdf.
15:42:55 <elliott> Maybe I should move it to ~/file so it's more descriptive.
15:44:37 <Sgeo_> So ell?iott?s aren't just involved with Haskell. There's an Eliot involved with Smalltalk
15:45:57 <olsner> you know, they're all the same elliott
15:47:09 <olsner> "they"
15:47:43 <fizzie> fungot: Has the world already ended?
15:47:44 <fungot> fizzie: which have come from this mor region. user:scott moorescott moore 13:58, 13 oct 2004 ( utc))
15:48:18 <c00kiemon5ter> ^style irc
15:48:18 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
15:48:27 <c00kiemon5ter> fungot: what's elliott up to this time ?
15:48:27 <fungot> c00kiemon5ter: the wiki page
15:48:32 <c00kiemon5ter> aha
15:49:11 <olsner> fizzie: how old are those irc logs?
15:49:18 <fizzie> He's up the Wiki page.
15:49:22 <fizzie> olsner: Kinda old.
15:50:02 <fizzie> I don't exactly know
15:50:54 <fizzie> File timestamps say "Aug 28 2008" but I don't know if that's true.
15:51:08 <c00kiemon5ter> fungot: is it true?
15:51:09 <fungot> c00kiemon5ter: it took me a sec to actually read
15:51:26 <fizzie> fungot: But what was the answer?
15:51:27 <fungot> fizzie: japan has had a plt bias, but my second thought ( after " that sucks") was that one page further, and also
15:53:01 <olsner> fungot: how old are you?
15:53:01 <fungot> olsner: does tcl have live objects?'
15:54:43 <fizzie> fungot: That some kind of an euphemism?
15:54:44 <fungot> fizzie: oklopol is really smiling! what's the target audience for that? or do you have
15:55:00 <elliott> Wow, rare for it to give a name of an #esotericer.
15:55:31 <olsner> everyone should be able to appreciate the smiling oklo
16:39:26 -!- epicmonkey has quit (Ping timeout: 252 seconds).
16:46:58 <elliott> @tell oerjan could you tell me about the thing where you can infer rank-2 types. also can you remind me to keep reading thesis.pdf? you're the best
16:46:58 <lambdabot> Consider it noted.
16:54:07 -!- Bike has joined.
16:59:05 -!- Bike has quit (Ping timeout: 260 seconds).
17:00:21 -!- Bike has joined.
17:12:08 -!- oerjan has joined.
17:22:25 <oerjan> @messages
17:22:25 <lambdabot> elliott said 35m 27s ago: could you tell me about the thing where you can infer rank-2 types. also can you remind me to keep reading thesis.pdf? you're the best
17:22:29 <oerjan> elliott: WAT
17:25:33 <oerjan> i have vaguely heard about the first thing. please keep reading the latter.
17:25:58 <oerjan> hth
17:27:00 * oerjan wonders if it isn't against the spirit of comments on a postcard to link to tvtropes pages that actually exist
17:28:37 <oerjan> oh wait it doesn't. never mind.
17:28:53 <oerjan> i think it may have existed at one time.
17:33:27 <oerjan> <fizzie> File timestamps say "Aug 28 2008" but I don't know if that's true. <-- time for a regeneration?
17:37:41 <Vorpal> hm, I wonder what -march=native will do when using distcc... Probably bad stuff
17:48:31 <fizzie> oerjan: But then it wouldn't be the same again. :/
17:49:09 <oerjan> are you saying the channel has deteriorated.
17:52:14 -!- Taneb has joined.
17:52:46 <olsner> Vorpal: doesn't distcc already require every system in the cluster to be exactly the same?
17:52:58 <Taneb> Man, I really suck at everything
17:52:59 <lambdabot> Taneb: You have 1 new message. '/msg lambdabot @messages' to read it.
17:55:15 <Taneb> oerjan, magic
17:56:14 <oerjan> marvelous
17:56:19 <Taneb> Also, seeing how much computer trouble I've had recently I shouldn't have tried to upgrade to Ubuntu 12.10
17:56:59 <Deewiant> olsner: It does not
17:57:05 <Taneb> It now doesn't boot
17:57:07 <Vorpal> olsner, no
17:57:09 <Deewiant> "distcc does not require all machines to share a filesystem, have synchronized clocks, or to have the same libraries or header files installed. They can even have different processors or operating systems, if cross-compilers are installed."
17:57:18 <Vorpal> oerjan, I'm using a cross compiler on one machine atm for example
17:57:36 <oerjan> I DON'T CARE NANANANANA I CAN'T HEAR YOU
17:57:42 <Vorpal> what
17:57:54 <Vorpal> I just offload work from my Raspberry Pi using distcc
17:58:04 <Vorpal> so I set up distcc on my desktop to use a cross compiler
17:58:04 <Deewiant> Vorpal: olsnēr != oerjān
17:58:06 <Vorpal> oh
17:58:12 <Vorpal> I meant olsner ^
17:58:55 <Vorpal> Deewiant, the issue is o<tab> and "most recent to speak matches first"
17:59:16 <olsner> tip: read your message before pressing enter
17:59:24 <Deewiant> No, the issue is that people blindly tab-complete without reading the result
17:59:58 <Vorpal> hey, it works most of the time
18:07:01 <zzo38> There is program "dragonegg" to use LLVM with the GCC parsers, to compile Ada and Fortran and so on. But what if you want to use LLVM parsers and optimizers and have it compile using GCC, such as to support many targets which LLVM does not support (such as MMIX, ARMv2, etc)?
18:07:15 <Deewiant> Then you're out of luck.
18:11:11 <olsner> you might be able to get something working by having llvm output C code
18:12:57 <zzo38> They refused to add supports for those targets to LLVM, that is why I need GCC.
18:14:08 <fizzie> How rude of them.
18:24:00 -!- carado has joined.
18:24:04 -!- carado has quit (Read error: Connection reset by peer).
18:31:02 <oerjan> Taneb: my underload to fueue conversion worked on all the programs i tested :) (after upping the C interpreter's buffer size to 10000.)
18:33:00 <oerjan> morse-thue (slightly changed to avoid lone S) and kolakoski in particular.
18:33:17 <oerjan> oh and the decimal fibonacci.
18:35:23 -!- FreeFull has joined.
18:36:58 <Taneb> I saw :)
18:48:47 <Taneb> I wonder how my interpreter will handle it...
18:52:20 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
18:54:19 -!- AnotherTest has joined.
18:54:24 <AnotherTest> Hello
18:55:31 -!- Vorpal has joined.
18:57:06 -!- copumpkin has changed nick to sublime5448_.
18:57:56 -!- sublime5448_ has changed nick to copumpkin.
19:02:39 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
19:02:57 -!- ogrom has joined.
19:03:32 -!- Vorpal has joined.
19:07:08 -!- Taneb has quit (Ping timeout: 245 seconds).
19:07:39 -!- sirdancealot has quit (Ping timeout: 252 seconds).
19:07:53 -!- copumpkin has changed nick to randomguy123.
19:08:00 -!- Vorpal has quit (Client Quit).
19:08:06 -!- randomguy123 has changed nick to copumpkin.
19:08:38 -!- epicmonkey has joined.
19:11:32 -!- Vorpal has joined.
19:30:29 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
19:42:26 -!- Phantom_Hoover has joined.
19:55:14 -!- monqy has joined.
20:10:32 -!- AnotherTest has quit (Quit: Leaving.).
20:32:12 <fizzie> That's somewhat weird; snes9x has lost gamepad support. It works in the configuration dialogs, but not in the actual thing.
20:38:22 -!- ogrom has quit (Quit: Left).
20:39:28 -!- oerjan has quit (Quit: leaving).
20:42:29 -!- epicmonkey has quit (Ping timeout: 248 seconds).
21:03:05 <kmc> https://sites.google.com/site/sophieinnorthkorea/
21:06:06 -!- Phantom__Hoover has joined.
21:06:23 -!- Phantom_Hoover has quit (Quit: Leaving).
21:07:27 <copumpkin> fun stuff, but the page is structured kinda weirdly
21:07:42 <kmc> yeah
21:08:57 * Sgeo_ wonders if Self is better than Smalltalk
21:09:48 <Bike> figure out if emacs is better than vi while you're at it
21:14:06 <Phantom__Hoover> kmc, this mostly seems to be complaining about the cold?
21:14:26 <copumpkin> I wouldn't say that
21:14:34 <copumpkin> there's a lot of good stuff in that
21:14:38 <copumpkin> if you can get over the structure
21:14:53 <kmc> the structure is ok in this case because it's a number of mostly unrelated anecdotes
21:15:03 <FreeFull> fizzie: What version?
21:16:49 <Sgeo_> There are a lot of Ruby/Smalltalk flamewars on the Wiki
21:18:57 <Phantom__Hoover> kmc, oh christ that bit about the library
21:21:33 <Sgeo_> "in which they described a system called Us where objects were subjective rather than objective. "
21:22:03 <Bike> "they"?
21:22:10 <Sgeo_> Randall B Smith and David Ungar
21:22:17 <Sgeo_> http://blog.selflanguage.org/2011/09/08/self-us-and-perspectives-on-objects-2/
21:24:45 <Bike> hm, that's kinda neat, think i'd rather use a non-objecty system though
21:28:08 <fizzie> FreeFull: "Snes9x version: 1.53, GTK+ port version: 82"
21:28:23 <fizzie> FreeFull: Though it used to work, and I don't *think* I had updated it.
21:30:13 <fizzie> In quasi-related news, out of curiosity I plugged in a "DualShock 3" controller (with an USB-OTG cable) to this completely stock device, and it highlighted a thing on the screen and let me use the arrow keys and buttons to navigate around. Weird.
21:31:26 <Sgeo_> Bike, I think you would not be a fan of the current Self implementation
21:31:29 <Sgeo_> It looks ugly
21:31:35 <Sgeo_> Although, I guess, not Squeak ugly
21:33:02 <Bike> despite my silliness, visual appearance honestly isn't a high priority of mine.
21:49:43 <c00kiemon5ter> there was youtube "documentary"-like about NK
21:53:15 <c00kiemon5ter> http://www.youtube.com/watch?v=24R8JObNNQ4 <- 3 parts
21:53:21 <fizzie> Aw, (unlike comments to the contrary) it doesn't quite do the automagical Bluetoothing of the controller too. :/
21:53:26 <c00kiemon5ter> http://www.youtube.com/watch?v=awQDLoOnkdI + 7 parts
22:01:21 -!- Taneb has joined.
22:05:03 <Taneb> I seriously suck at upgrading things on computers
22:05:17 <c00kiemon5ter> lol Taneb
22:05:32 <Taneb> Yeah, my computer won't boot now
22:05:48 <c00kiemon5ter> ahaha :D what did you do ?
22:05:48 <Taneb> My laptop won't either, for completely separate reasons
22:06:00 <Taneb> Tried to upgrade to Ubuntu 12.10 from 12.04
22:06:24 <fizzie> Taneb: Extrapolating from your recent status reports, I'd say soon your house will fall down or something like that.
22:06:52 <Taneb> fizzie, that's not completely out of the question.
22:07:16 <Taneb> Don't tempt fate
22:08:42 <Taneb> In other news, I got a letter from the computer science department of Loughborough University that says they're going to give me an offer
22:08:58 <Taneb> (a university offer thing)
22:09:59 <Taneb> So, it's not all doom and gloom
22:10:07 <Bike> for grad?
22:12:03 <Taneb> Undergrad
22:12:06 <Taneb> I'm just 18
22:12:29 <Taneb> Wait
22:12:33 <Taneb> Which one's "grad"
22:12:43 <Bike> The one after undergrad.
22:12:44 <Taneb> I know which ones "undergrad" and "postgrad" are
22:12:50 <Taneb> Okay
22:12:55 <Taneb> Yeah, just undergrad
22:13:32 <Taneb> If they said they wanted me to do grad there I'd probably avoid it because they've got me mixed up with someone who's actually competent
22:13:45 <Bike> harsh bro
22:15:17 <Taneb> Who's the person who's rendered two computers unusable in the past week, one of them twice?
22:15:27 <Taneb> By accident??
22:15:43 <Bike> grad work in CS has very little to do with actual computers as i understand
22:15:45 <Bike> let alone Ubuntu
22:16:08 <Bike> it's like how the better you get at math, the less likely you are to remember your multiplication tables
22:16:31 <Taneb> The other week, I touched a computer and it crashed
22:16:49 <Taneb> I had never seen the computer before
22:16:56 <Taneb> I think I'm cursed or something
22:17:00 <monqy> depends on what you mean by cs, what you mean by actual computers
22:17:03 <Bike> Maybe it was just shy.
22:17:29 <monqy> theres stuff like architecture that's kind of like actual computers??
22:18:01 <Bike> monqy: like computers that are actually going to be used by muggles like myself by the time you finish your thesis?
22:18:24 <Taneb> Anyway, everything I touch crumbles to dust
22:18:40 <Bike> i mean you could Actually Build a computer out of pipes and crabs but I wouldn't call it an "actual computer" in this why am I thinking about this so much fuck fuck fuck
22:19:06 <Bike> Taneb: same went for ozymandias and he still got to build hugeass statues of himself.
22:20:07 <Taneb> Hmm
22:20:12 <Taneb> That sounds like a life plan
22:20:23 <fizzie> I think the terms involving "grad" are a bit weird.
22:20:51 <Bike> they're very weird.
22:21:13 <monqy> you've got your phd students and you've got your whatever else
22:21:17 -!- tromp has joined.
22:21:18 <fizzie> We didn't use to have a "bachelor's degree" equivalent here, it was all just five-year master's stuff, so "post-grad" tended to mean someone doing a doctoral degree.
22:21:39 -!- EgoBot has quit (Remote host closed the connection).
22:21:50 -!- EgoBot has joined.
22:21:53 -!- fungot has quit (Ping timeout: 252 seconds).
22:22:25 <Bike> fizzie: Did most people get postsecondary education?
22:22:32 -!- myndzi has quit (Ping timeout: 245 seconds).
22:23:00 <olsner> tertiary education?
22:23:01 <fizzie> Bike: Well, I mean... there were other tertiary education choices, but the university degrees didn't have the halfway options.
22:23:07 -!- shachaf has quit (Ping timeout: 276 seconds).
22:23:22 <Bike> What were the other choices? And were they common?
22:23:23 -!- shachaf has joined.
22:23:52 -!- myndzi has joined.
22:24:38 <Sgeo_> `list
22:24:43 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
22:25:36 <Taneb> Sgeo_: on a related subject, I've actually got one of my IRL friends to read Homestuck
22:26:00 <Sgeo_> Taneb, awesome
22:26:16 <Sgeo_> I've been trying to get most of my RL friends to read Homestuck. My gf read up to the start of Act 5
22:27:36 <Taneb> Did the trolls put her off?
22:28:58 -!- fizzie has quit (Ping timeout: 276 seconds).
22:30:23 -!- fizzie has joined.
22:30:41 <Taneb> In other other other news, I'm going to be in an adaptation of Hamlet
22:31:17 <Taneb> Playing Polonius and the Ghost
22:32:36 <kmc> <Bike> grad work in CS has very little to do with actual computers as i understand
22:32:39 <kmc> it really depends
22:32:47 <kmc> lots of things get lumped under "CS"
22:32:57 <Bike> well yeah
22:33:31 <Bike> but i think there's more wacky experimental stuff than there is people working on version control or something?
22:33:59 <shachaf> Plenty of wacky experimental things have to do with actual computers.
22:34:11 <kmc> and there's plenty of esoteric theory in version control, haven't you heard of darcs ;)
22:34:13 <shachaf> (Also there are plenty of wacky experimental version control things.)
22:34:14 <Taneb> Like those people trying to make a computer out of water
22:34:35 <Bike> we've done that a few times, or do you mean a good one
22:34:39 <kmc> i keep hearing about MVCC
22:34:52 <kmc> http://en.wikipedia.org/wiki/MONIAC_Computer
22:34:57 <Bike> MONIAC is actually pretty cool lookin'
22:35:01 <Bike> and also what i was thinking of yes
22:37:02 <Sgeo_> Dropbox doesn't version binaries :(
22:38:11 <Taneb> http://en.wikipedia.org/wiki/Fluidics was what I was thinking of
22:38:58 <Bike> billiard ball computers continue to be the best analogy
22:40:02 -!- Dude2 has joined.
22:46:48 -!- Dude2 has quit.
22:52:09 <zzo38> I have now recorded the most recent Dungeons&Dragons.
22:54:11 <kmc> perfectly frictionless reversible energy-neutral billiard ball computers
22:54:46 <Bike> i actually prefer the ones based on crab swarming, but we don't always get what we want.
22:56:37 <kmc> crab swarming?
22:57:34 <Taneb> Oooh, I saw that
22:57:47 <fizzie> What is WRONG with this gamepad. :/
22:58:01 <Taneb> Soldier crabs can be used as a computer
22:58:18 <Taneb> And bathroom tiles are turing-complete, which I find hilarious for some reason
22:58:29 <Sgeo_> ....what
22:58:59 <Taneb> ...I probably ought to figure out how to fix my computer
22:59:51 -!- Dude2 has joined.
22:59:52 <Taneb> Sgeo_: I've rendered two computers useless in the past week, one of them twice
23:00:00 <Taneb> I really suck at everything
23:00:46 <Sgeo_> How are bathroom tiles turing-complete?
23:01:04 <Taneb> Wang Tiles
23:01:09 <monqy> what does it mean for bathroom tiles to be turing-complete
23:01:10 <Taneb> It's to do with repeating patterns
23:01:12 <fizzie> Hmmkay, the gamepad problem was apparently because gamepad 2 had the same buttons configured, and that took precedence or something.
23:01:31 <Taneb> monqy: you can't predict whether some kinds of patterns repeat
23:02:09 <Sgeo_> "But in 1966, Robert Berger proved that no such algorithm existed, by showing how to translate any Turing machine into a set of Wang tiles that tiles the plane if and only if the Turing machine does not halt."
23:03:55 <Taneb> Told you so
23:04:28 <kmc> you have a set of possible tiles, and each tile has rules for which other tiles can appear adjacent on each of the sides
23:05:02 <monqy> that's doesn't mean bathroom tiles are "turing complete" (what would that even mean???)
23:05:05 <kmc> for any turing machine and input to that turing machine, you can construct such a set of tiles such that there's an infinite tiling of the plane iff the turing machine doesn't halt
23:05:30 <kmc> it's a pretty easy reduction
23:05:36 <monqy> something about colorless green ideas & sleeping furiously
23:06:12 <Taneb> monqy: bathroom tiles are Turing complete for some interpretations of bathroom tiles and Turing-completeness
23:06:22 <monqy> .....sure
23:06:34 <shachaf> hi monqy
23:06:37 <monqy> hi shachaf
23:06:54 <kmc> you have a tile type for each 3-tuple whose elements are drawn from (tape characters `union` head states)
23:07:57 <monqy> `welcome Dude2
23:07:58 <HackEgo> Dude2: 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.)
23:08:41 <Dude2> hello
23:08:52 <kmc> the horizontal rules enforce that each row looks like ABC BCD CDE DEF etc., so you can read it across as a single turing machine state ABCDEF (where each of these letters could be a tape character or a head state, indicating the head is over the next tape character)
23:09:14 <kmc> and the vertical rules just implement the behavior of a turing machine
23:09:16 <kmc> AND NOW YOU KNOW
23:10:34 <kmc> http://en.wikipedia.org/wiki/Post_correspondence_problem is another fun, slightly similar undecidable decision problem
23:10:49 <shachaf> the horizontal rules are remarkably simple
23:10:55 <shachaf> not sure if i love the vertical rules as much
23:11:06 <kmc> is this crypto-beaky again
23:11:26 <shachaf> maybe
23:11:57 <kmc> well
23:12:03 <kmc> i can go into more detail about the vertical rules if you like
23:12:42 <shachaf> It was just crypto-beaky. :-(
23:13:35 <kmc> yeah
23:13:53 <kmc> j'accuse
23:15:40 <Sgeo_> Bike, are you the Bike or Bikes on cmubash.org
23:16:20 <Sgeo_> ...I don't know if there is a Bike in that community
23:16:27 <Sgeo_> Just a lot of talk about bikes.
23:16:57 <kmc> i've got a bike, you can ride it if you like, it's got a basket, a bell that rings, and things to make it look good!
23:17:37 -!- Dude2 has left.
23:17:51 <shachaf> I guess Dude2 didn't feel welcome enough.
23:17:59 <Taneb> And Peter Cushing lives in Whitstable
23:18:14 <kmc> i got a CTCP TIME from him (?) though
23:18:19 <monqy> me too
23:19:29 <shachaf> i didnt:'(
23:20:05 <Sgeo_> o.O I'm on cmubash
23:20:11 <Sgeo_> I don't know how this makes me feel
23:20:16 <monqy> did you say a funny thing
23:21:01 <Sgeo_> No but someone else said something that's kind of sort of not really funny in response to what I said
23:21:41 <monqy> sort of not really funny
23:21:49 <monqy> does that mean it's also sort of really funny
23:24:13 -!- Taneb has quit (Ping timeout: 245 seconds).
23:26:19 <Sgeo_> http://cmubash.org/?3862
23:26:56 <kmc> that tiles thing was on a problem set in theory of computation class
23:26:58 <kmc> good times
23:27:16 <kmc> we also had to show that 3-coloring graphs is NP-complete but they gave us a SAT gadget for that so it wasn't too hard
23:27:22 <fizzie> I didn't either. :/
23:27:56 -!- Chat2226 has joined.
23:27:56 -!- Chat2226 has quit (Client Quit).
23:29:42 -!- augur has quit (Remote host closed the connection).
23:30:08 <Sgeo_> Maybe if I start getting into Smalltalk I should just accept that it's likely to be rather imperative
23:30:10 -!- augur has joined.
23:34:28 -!- augur has quit (Ping timeout: 240 seconds).
23:41:53 -!- atrapado has joined.
23:56:01 -!- Arc_Koen has quit (Quit: Arc_Koen).
2013-01-20
00:04:43 -!- atrapado has quit (Ping timeout: 245 seconds).
00:19:39 <Vorpal> I just realised why I utterly detest when people write "u" instead of "you" and similar stuff. It doesn't work in my brain since i read the letter "u" as it is pronounced in Swedish, and the word "you" as it is pronounced in English. So it ends up "sounding" like they are stupid (think Discworld troll speech but much worse).
00:22:13 <c00kiemon5ter> y u no like u ?
00:23:08 <Vorpal> indeed when I read that you sound *really* stupid
00:29:19 <FreeFull> Vorpal: So you read it as oo?
00:29:27 <fizzie> I think "u mad" is the traditional reply to this?
00:30:19 <Vorpal> FreeFull, is that "oo" in English or Swedish?
00:30:27 <FreeFull> Vorpal: English
00:30:43 <Vorpal> FreeFull, that has a different quality than the Swedish letter "u" though
00:30:49 <Vorpal> similar yes, but not quite
00:30:54 -!- augur has joined.
00:31:12 <FreeFull> Vorpal: Is it similar to the polish u then?
00:31:23 <Vorpal> I don't speak polish
00:31:26 <Vorpal> I have no idea
00:31:32 <c00kiemon5ter> seems like Sweedish is incompatible with English.
00:31:51 <c00kiemon5ter> s/ee/e/ :S
00:32:05 <Vorpal> c00kiemon5ter, different phonemes yes
00:32:16 <Vorpal> anyway wasn't FreeFull Swedish? Or was it FireFly?
00:32:24 <FreeFull> I'm Polish
00:32:27 <Vorpal> ah okay
00:32:33 <FreeFull> I have no idea what FireFly is
00:32:42 <Vorpal> FreeFull, a person in this channel
00:32:44 <shachaf> `? sweden
00:32:50 <HackEgo> Sweden is the suburb capital of Norway. It's where all the Nobel prizes are announced, except the Math Prize.
00:32:51 <FreeFull> `? firefly
00:32:52 <HackEgo> firefly? ¯\(°_o)/¯
00:32:56 <shachaf> `? poland
00:32:58 <HackEgo> poland? ¯\(°_o)/¯
00:33:03 <shachaf> `? norway
00:33:04 <HackEgo> Norway is the suburb capital of Sweden. It's where the Nobel Peace Prize is announced.
00:33:11 <Vorpal> `? Great Brittan
00:33:12 <HackEgo> Great Brittan? ¯\(°_o)/¯
00:33:13 <FreeFull> I know my nickserv account is older than his =P
00:33:18 <shachaf> `? britain
00:33:19 <FreeFull> `? `?
00:33:19 <HackEgo> britain? ¯\(°_o)/¯
00:33:19 <HackEgo> See `? for further details.
00:33:25 <FreeFull> `? `? `?
00:33:25 <Vorpal> `? England
00:33:26 <c00kiemon5ter> fungot: where are you from ?
00:33:26 <HackEgo> ​`? `?? ¯\(°_o)/¯
00:33:27 <HackEgo> England is [EXPUNGED].
00:33:39 <FreeFull> `? æẻøđ→æøł→n“ß
00:33:39 <Vorpal> `? Scotland
00:33:40 <HackEgo> ​æẻøđ→æøł→n“ß? ¯\(°_o)/¯
00:33:41 <HackEgo> Scotland is a country in northern Britain. It is known for having no true inhabitants. The official religion is hatheism. Phantom_Hoover looks after the FREEDOM.
00:33:57 <shachaf> `? california
00:33:59 <HackEgo> california? ¯\(°_o)/¯
00:34:07 <shachaf> `? united states
00:34:08 <HackEgo> See America.
00:34:10 <shachaf> `? america
00:34:11 <HackEgo> This wisdom entry had to be removed due to a DMCA takedown notice.
00:34:19 <c00kiemon5ter> no fungot -> no fun -> no got
00:34:21 <Vorpal> Phantom__Hoover, do you want Scotland to leave the UK btw? I seem to remember some party wanting to have a vote about that
00:34:25 <FreeFull> `? ``?
00:34:26 <HackEgo> ​``?? ¯\(°_o)/¯
00:35:00 <shachaf> oerjan: I demand a wisdom entry for California.
00:35:17 <shachaf> `? denmark
00:35:18 <HackEgo> denmark? ¯\(°_o)/¯
00:35:22 <Vorpal> shachaf, they had too many drugs to write one
00:35:32 <shachaf> `? irc
00:35:33 <HackEgo> irc? ¯\(°_o)/¯
00:35:37 <shachaf> Useless.
00:35:44 <FreeFull> `? a
00:35:45 <HackEgo> a? ¯\(°_o)/¯
00:35:51 <Gregor> `learn California is pronounced "Caliphate-ornery-I-A"
00:35:51 <Vorpal> `? shachaf
00:35:54 <HackEgo> I knew that.
00:35:56 <HackEgo> shachaf sprø som selleri
00:36:03 <olsner> `learn irc is useless.
00:36:07 <HackEgo> I knew that.
00:36:11 <Vorpal> what is "sprø"?
00:36:19 <Vorpal> same as the Swedish spröd?
00:36:30 <olsner> probably more like crispy
00:36:39 <olsner> you know, like selleri is
00:36:41 <FreeFull> `learn `learn is `learn
00:36:45 <HackEgo> I knew that.
00:37:05 <Vorpal> olsner, hm google translate suggests it means "crazy"
00:37:10 <Gregor> Is "selleri" celery?
00:37:17 <shachaf> `? selleri
00:37:17 <Vorpal> Gregor, I would assume so
00:37:18 <HackEgo> selleri? ¯\(°_o)/¯
00:37:19 <Gregor> Because I wouldn't call celery crispy. Although I'm not sure why.
00:37:21 <shachaf> I guess we'll never know.
00:37:29 * shachaf is not a fan of celery.
00:38:25 <Vorpal> google translate translates "sprø" to "crazy" but "sprø som selleri" to "spröd som selleri" which means "crisp as celery", and it fails translating it directly to English
00:38:31 <Vorpal> "SPRO as celery"
00:38:34 <Vorpal> yeah, right
00:38:45 <Vorpal> I don't trust google translate on this one
00:39:00 <Vorpal> shachaf, oh?
00:39:03 <Gregor> Holy eff!
00:39:04 <Vorpal> I think it is kind of "meh"
00:39:05 <Gregor> It IS crisp!
00:39:10 <Gregor> But it's not crispy!
00:39:11 <Gregor> WHAT IS THIS
00:39:13 <Gregor> HOW IS THIS POSSIBLE
00:39:19 <Vorpal> Gregor, what
00:39:24 <FreeFull> Hmm, crisp insanity
00:39:36 <Gregor> Celery is crisp but not crispy.
00:40:00 <Vorpal> Gregor, do those words mean different things?
00:40:15 <Vorpal> because then it is an error in my translation from Swedish
00:40:18 <FreeFull> I don't know, celery is pretty crispy
00:40:23 <Vorpal> it should end up as "crispy"
00:40:27 <fizzie> It is celery.
00:40:32 <FreeFull> Maybe not as crispy as other stuff
00:40:57 <Vorpal> FreeFull, what about compared to crisps?
00:41:14 <FreeFull> Well, can you get crispier than crisps? Yes, but not easily
00:41:15 <fizzie> Curiously enough, it's also "selleri" in Finnish.
00:41:17 <olsner> there's also the rooty bulby kind of celery, I think that's neither crisp nor crispy
00:41:30 <FreeFull> It's seler in Polush
00:41:39 <FreeFull> also in Polish
00:41:40 * c00kiemon5ter was pretty close, thinking of another word that starts with c
00:42:22 <Vorpal> fizzie, and in Swedish
00:42:51 <fizzie> Vorpal: That was the "also" bit.
00:43:17 <fizzie> Whereas en:cellar is fi:kellari. (I guess that's sv:källare?)
00:43:21 <Vorpal> fizzie, oh I thought it was "Norwegian also Finnish"
00:43:29 <Gregor> <Vorpal> Gregor, do those words mean different things? // Apparently they do to me!
00:43:32 <Vorpal> fizzie, quite so
00:43:32 <fizzie> I don't know if it's Norwegian.
00:43:46 <Vorpal> fizzie, well it was a Norwegian phrase we started with
00:43:59 <Vorpal> Gregor, well you are the native speaker, I assume you are correct
00:44:13 <Gregor> There's no such thing as "correct"
00:44:18 <Gregor> Everyone has their own interpretation of language.
00:45:27 <Vorpal> Gregor, by that token I can claim that "ashjawlkj seajfl wask gka" is a valid and very philosophical phrase in my interpretation of English. Pretty useless for communicating with anyone else though
00:45:57 <shachaf> Oh boy.
00:46:05 <shachaf> It's one of those discussions.
00:46:20 <Vorpal> shachaf, what?
00:46:30 <monqy> "those discussions" are cute
00:47:13 <olsner> some of them are cute, others are just about celery
00:47:26 * shachaf sentences Vorpal: Transportation for life! And then to be fined forty pound.
00:47:40 <Vorpal> olsner, speaking of philosophical :D
00:47:51 <Vorpal> well at least it sounded kind of deep
00:47:56 <shachaf> transportation for life is a pretty cool sentence imo
00:48:00 <shachaf> is it free
00:48:06 <shachaf> do you get to ride on trains
00:48:14 <Vorpal> shachaf, depends on what sort of transportation
00:48:22 <olsner> Vorpal: nothing deep about it, really
00:48:30 <shachaf> Vorpal: All it says is "transportation".
00:48:32 <Vorpal> olsner, true
00:48:37 <shachaf> The Jury all cheered, though the Judge said he feared
00:48:37 <shachaf> That the phrase was not legally sound.
00:48:41 <Vorpal> shachaf, I mean, I wouldn't mind a free Tesla car.
00:49:15 <shachaf> Most people prefer their cars to be subservient.
00:49:16 <olsner> Vorpal: *this* is deep: FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE
00:49:37 <Vorpal> olsner, no that is just a parody of time cube
00:50:06 <Vorpal> nice parody sure, but not very deep
00:50:20 <shachaf> The time cube is so deep that even parodies of it are below average.
00:51:13 -!- augur has quit (Remote host closed the connection).
00:55:54 -!- augur has joined.
01:07:13 -!- copumpkin has quit (Ping timeout: 248 seconds).
01:07:14 <Phantom__Hoover> <Vorpal> Phantom__Hoover, do you want Scotland to leave the UK btw? I seem to remember some party wanting to have a vote about that
01:07:28 <Phantom__Hoover> It is probably more convenient for me if it doesn't, so no.
01:07:34 <Vorpal> ah
01:07:53 -!- copumpkin has joined.
01:08:24 <Vorpal> Phantom__Hoover, no true Scotsman would ever say that! (please read this in a highland dialect)
01:11:44 <Bike> Sgeo_: the fuck is cmubash
01:12:00 <Sgeo_> Bike, presumable a qdb for #cslounge
01:12:15 <Bike> well probably not unless someone is stalking me
01:13:46 * Fiora looks up cmubash
01:13:49 <Fiora> http://cmubash.org/?3911 okay this is actually hilarious
01:14:20 <Bike> Sgeo_: http://cmubash.org/?3887 here this one is me
01:15:32 <Fiora> I though CMU was carnegie mellon?
01:15:34 <Fiora> or something
01:16:03 <monqy> Carnegie Mellon Quote Database CMUQDB
01:16:07 <Sgeo_> "A CAPTCHA is a program that can generate and grade tests that it itself cannot pass. So it's like a lot of professors."
01:16:29 <Sgeo_> Fiora, yes
01:17:14 <Fiora> < kjones> i would argue that the dividing line between childhood and adulthood is knowing that you can have ice cream literally whenever you want, but not doing it
01:17:19 <Fiora> this is actually 100% accurate
01:17:27 <Bike> i have not yet passed that line.
01:19:44 <Fiora> >All I know about your personal lives is based on the distribution of bikes.
01:20:39 <Sgeo_> Bike, they totally love you
01:21:07 <Bike> if they loved me why would they use me as an out-of-band spying mechanism
01:21:07 <Sgeo_> Phantom__Hoover, there is some awesome context for that
01:21:08 <Bike> !!!!!
01:21:19 <Phantom__Hoover> hello
01:21:48 <Phantom__Hoover> why am i
01:21:49 <Phantom__Hoover> relevant
01:22:11 <Sgeo_> http://pastie.org/5731384
01:22:11 <Bike> what is love?
01:23:46 <Phantom__Hoover> Sgeo_, beautiful
01:23:58 <Fiora> I did a few more calculations, and... he was right. If the sun were made of gerbils their body heat would kill us.
01:24:04 <Fiora> this qdb is wonderful
01:24:34 <Phantom__Hoover> the sun is surprisingly cool i think
01:25:51 <Fiora> Professor Sieg: This proof of the irrationality of root two was so guarded by the Pythagoreans that a member who disclosed the secret was drowned in the sea.
01:25:55 <Fiora> Girl in class: That's pretty harsh treatment for radicals.
01:27:11 <Bike> that's not the version of that anecdote I heard...
01:27:24 <Bike> also how many materials are denser than hydrogen but not dense enough to kill us when in sun form
01:33:14 <Fiora> hydrogen has that weird property that it takes about 5 billion years on average for any given nucleus to react
01:34:02 <Bike> thank goodness there's so much of it.
01:34:11 <Fiora> Quinn: So essentially you started without something that doesn't involve relativity and is non-physical, then applied that result to something which does involve relativity. So you assumed something, and its contradiction. If you do that you can prove anything.
01:34:15 <Fiora> kcleary: Well, I just solved some equations. Can't a boy dream?
01:34:18 <Fiora> Quinn: [pointing to his floor] This is the Physics department. If you want to solve equations the math department is that way, and you can go to Philosophy for dreaming.
01:34:21 <Fiora> kcleary: Well, now I'm insulted
01:34:23 <Fiora> Quinn: And for that you can go to the art department.
01:34:45 <Fiora> Michelle Hicks (33-104 TA): Can anyone tell me what the first law of thermodynamics is?
01:34:48 <Fiora> msarnoff: You do not talk about thermodynamics!
01:34:49 <Fiora> this place sounds wonderful
01:35:06 <Bike> mocking philosophy and art is so dorky, though
01:35:14 <Fiora> that's true :/
01:35:37 <monqy> good luck finding something in there that isn't so dorky
01:35:53 <Fiora> <Grimnir> $ cat "can of food"
01:35:54 <Fiora> <Grimnir> cat: cannot open can of food
01:36:05 <Bike> well you know, irritatingly dorky, rather than just a pun.
01:36:20 <Bike> Fiora: "Don't know how to make love. Stop."
01:37:00 <Sgeo_> Story of my...
01:37:02 * Sgeo_ shuts up
01:37:51 <monqy> hi sgeo
01:37:52 <Bike> sgeo, are you a makefile? be honest.
01:38:26 <fizzie> "If I had a ( for every $ [target of mocking] spent, what would I have?" "Too many (s." (Also from one of those shell humour lists. Very few of these are ever applicable to any shells I have installed.)
01:39:04 <Fiora> * evilwombat <2.9999999999 floats
01:39:06 <Fiora> that's for you Bike
01:39:27 <Bike> isn't it more likely to be 2.999999996
01:39:38 <Fiora> ...... you are the pedantist
01:39:41 <Fiora> *pedandest
01:39:57 <fizzie> Pedentist.
01:42:42 <fizzie> [03:42:20] <fizzie> ,cc printf("%.25f %.12f", nextafter(3,0), nextafterf(3,0))
01:42:42 <fizzie> [03:42:22] <candide> fizzie: 2.9999999999999995559107901 2.999999761581
01:43:02 <fizzie> Those are some of the likeliest values, arguably.
01:43:28 <fizzie> (Rounded a bit.)
01:43:33 <Bike> i didn't even know those were functions :/
01:45:41 <fizzie> [03:45:28] <fizzie> ,cc float f = 3.0; --*(int*)&f; printf("%.12f", f); /* the *manly* way */
01:45:44 <fizzie> [03:45:30] <candide> fizzie: 2.999999761581
01:47:23 <monqy> that's a bit too manly for me
01:48:17 <Bike> why did i think the exponent was in the least significant part of the word...
01:50:21 <fizzie> It's (allegedly) specifically designed for ++ and -- to do the right thing even (IIRC) across the subnormal-to-normalized border, as long as you don't change sign.
01:50:24 <fizzie> [03:48:57] <fizzie> ,cc float f = 0; --*(int*)&f; printf("%.12f %.12f", f, nextafterf(0,-1));
01:50:27 <fizzie> [03:48:59] <candide> fizzie: -nan -0.000000000000
01:50:37 <fizzie> That's not quite so successful though.
01:50:53 <Bike> ouch
01:51:17 <Fiora> I love the things you can do with float like that
01:51:36 <fizzie> It's also interesting that the next float after 0 to the negative direction is the -0.
01:51:51 <Bike> is that surprising?
01:52:13 <shachaf> i love/hate floating points
01:52:19 <fizzie> Well, the description does say "number less than x"
01:53:24 <Bike> "The nextafter() function computes the next representable double-precision floating-point value following x in the direction of y. Thus, if y is less than x, nextafter() returns the largest representable floating-point number less than x."
01:53:31 <Bike> the second sentence seems like kind of a mistake.
01:53:33 <Phantom__Hoover> Floating points are a very... engineer thing to design.
01:53:47 <Fiora> now I'm remembering all that stuff by the crazy float guy
01:54:00 <Bike> I wish there were more non-loony alternatives so I could compare them.
01:54:02 <shachaf> i love levitation
01:54:08 <fizzie> -0 is not less than 0, so...
01:54:26 <shachaf> It is also not greater.
01:54:26 <fizzie> Arguably it is "next", though.
01:54:41 <Bike> yeah, the first sentence seems better to me
01:55:10 <shachaf> Floating points have so many great properties.
01:55:13 <shachaf> How can they be so terrible?
01:55:29 <Fiora> maybe you could treat 0 as an infinitesimal value just above 0?
01:55:33 <Fiora> and -0 just below zero?
01:55:35 <Phantom__Hoover> Fiora, crazy float guy?
01:55:41 <Bike> Kahan
01:55:57 <fizzie> Bike: The standard doesn't say anything about "less than", so perhaps it's just a manpage author mistake.
01:55:58 <Bike> check out his faculty page, it's amazing
01:56:09 <Bike> fizzie: seems reasonable.
01:56:13 <Fiora> he invented x87, and is one of those people that cares only about a single topic in the world, redirects every conversation to that topic, and can ramble about nothing else
01:56:27 <Fiora> he is practically loony, it's kind of hilarious
01:57:05 <Bike> shachaf: Does floating point have badness that isn't attributable to people using it for things it should be used for (e.g. currency)? i mean, it's so complicated that people miss out on subtleties and make bad code, but
01:57:24 <Bike> Fiora: I thought "floats are actually ranges [around their nominal value]" was a standard mathematical interpretation.
01:57:30 <fizzie> Fiora: Must make e.g. discussions re where to go for lunch quite annoying.
01:57:35 <Fiora> *snerk*
01:57:52 <Phantom__Hoover> Bike, well there's the basic fact that it's generally taught as "the way to represent non-integer numbers".
01:57:53 <Fiora> "Hmm, I'd go to Subway, but their software might have floating point bugs, resulting in incorrect mixes of ingredients."
01:57:56 <Bike> "No, we have to have lunch at /noon/. Binary doesn't work so well with 11:00."
01:58:04 <Fiora> PFFF
01:58:18 <Bike> Phantom__Hoover: yes, which sucks, but that's directly the fault of floating point.
01:58:25 <Bike> *not directly
01:58:58 <Fiora> I'm not sure fixed point would be better
01:59:02 <Phantom__Hoover> Where do you draw the line between floating point and common use and understanding of floating point?
01:59:12 <shachaf> Computable reals are the future.
01:59:27 <Bike> imo continued fractions 4 lyfe
01:59:41 <Phantom__Hoover> surreals man
01:59:47 <Phantom__Hoover> fuck sets
02:00:03 <shachaf> surreals are "pretty cool imo"
02:00:08 <Bike> i don't think surreals are really computer ready...
02:00:17 <Phantom__Hoover> fuck computers
02:00:21 <Phantom__Hoover> fuck constructivism
02:00:24 <shachaf> but yesterday someone linked to http://types2004.lri.fr/SLIDES/mamane.pdf
02:00:25 <Bike> all them infinite sets for fractions 'n' shi
02:00:30 <Bike> And what's that?
02:00:50 <Bike> or was it irrationals you needed infinite sets for...
02:00:52 <shachaf> Bike: You don't need infinite sets for fractions, do you?
02:01:08 <shachaf> Or maybe you do in general.
02:01:12 <Bike> For ones like 1/3, I thought.
02:01:15 <Bike> It's been a while.
02:01:28 <shachaf> Right, that sounds reasonable.
02:01:38 <shachaf> But is 1/3 even rational?
02:01:42 <shachaf> > 1/3
02:01:43 <lambdabot> 0.3333333333333333
02:01:47 <shachaf> imo no
02:01:53 <Bike> ¬_¬
02:02:22 <shachaf> ¬ニ¬
02:02:57 <shachaf> I wonder whether my eyes are getting worse.
02:03:02 <shachaf> Also, there should be a ban on drums.
02:03:13 <shachaf> Especially playing music that involves drums in public places.
02:03:18 <Phantom__Hoover> shachaf you're rambling again
02:03:33 <shachaf> hi Phantom__Hoover
02:03:58 <shachaf> Seriously, people are playing drummy music and I was going to concentrate on something but I'm really unable to.
02:04:03 <Phantom__Hoover> this is what i'd expect from oerjan or fizzie or someone else old
02:04:14 <shachaf> Phantom__Hoover: I'm old. :-(
02:04:49 <Phantom__Hoover> or cpressey
02:04:52 <Phantom__Hoover> he was proper old
02:05:01 <shachaf> But the Judge said he never had summed up before;
02:05:01 <shachaf> So the Snark undertook it instead,
02:05:01 <shachaf> And summed it so well that it came to far more
02:05:01 <shachaf> Than the Witnesses ever had said!
02:07:21 <shachaf> monqy: do you like drums
02:07:34 <monqy> what sorta drums
02:07:59 <shachaf> not eardrums
02:08:15 <shachaf> or storage drums??
02:08:27 <shachaf> the other kind
02:09:02 <monqy> that's still pretty vague
02:09:14 <shachaf> the kind that go boom boom boom boom
02:09:28 <monqy> what is a drum, how is a drum used
02:09:35 <shachaf> beats me
02:12:54 -!- sirdancealot has joined.
02:23:54 <Phantom__Hoover> badum-tsh
02:24:20 -!- Nisstyre-laptop has joined.
02:24:56 <monqy> but cymbals are not drums??????? we're not talking about those.
02:25:13 <Bike> they're still part of a drumset, which is a set of drums.
02:25:19 <shachaf> monqy: but wait what if i meant cymbals
02:25:27 <shachaf> monqy: did we ever narrow down what it was that i "really meant"??
02:25:32 <monqy> oh right
02:25:37 <monqy> Q: did you mean cymbals
02:25:43 <monqy> A: no you said boom boom boom boom
02:25:48 <monqy> cymbals do not go boom
02:25:58 <shachaf> O. Now I see
02:27:16 <Jafet> {snare, bass, tom, tom, unsafeCoerce hat, timpani, oil}
02:27:23 <Jafet> Wait that's not a set
02:27:51 <Jafet> monqy: nitroglycerin cymbals
02:28:19 <monqy> never seen one of those :o! do they have good sound
02:28:46 <Jafet> They're used in the overture of 2012
02:29:32 <Bike> 2012 overture? did russia get invaded again?
02:31:52 <Jafet> The russians now compose with tactical nuclear warheads
02:32:18 <Jafet> I wonder what a nuclear warhead sounds like
02:32:54 <Bike> you mean an explosion?
02:33:25 <Jafet> A nooh-ku-leer explosion
02:34:24 <Bike> mostly it sounds like a thousand trains going by, and then 700 mph winds and cars flying by and buildings falling, and then people screaming and crying. mostly the same as conventional bombing
02:36:31 <Jafet> You're talking about the environmental effects on the sound of an explosion
02:36:50 <Jafet> But what if you used warheads in the studio?
02:36:56 <Jafet> The concert hall?
02:37:12 <Bike> you wouldn't hear anything because you'd be vaporized?
02:37:29 <Jafet> Ok, so we need better equipment
02:38:01 <Bike> at any reasonable range it'd destroy your eardrums, so there's that too
02:38:30 <monqy> how about an unreasonable range
02:38:44 <shachaf> monqy........
02:38:46 <shachaf> don't be unreasonable
02:39:24 <Sgeo_> `list
02:39:26 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
02:40:17 <Jafet> Bike: no one in a studio has intact eardrums anyway
02:40:38 <Jafet> That's why CDs are mixed at 0dB
02:40:41 <Jafet> Now You Know
02:40:53 <Bike> you work in weird studios.
02:41:19 <Jafet> You're just jealous that you can't use tactical nuclear warheads
02:44:12 <Phantom__Hoover> <Bike> mostly it sounds like a thousand trains going by, and then 700 mph winds and cars flying by and buildings falling, and then people screaming and crying. mostly the same as conventional bombing
02:44:13 <Phantom__Hoover> uh
02:44:21 <Phantom__Hoover> is there going to be much screaming and/or crying
02:45:03 <Bike> If you're far enough away to be alive? Sure.
02:45:05 <Jafet> Only the sissy japanese ever did that in response to a nuclear bombing
02:46:04 <shachaf> Fiora: You're too nice for ##c.
02:46:13 <shachaf> Have you considered insulting people a bit, to fit in?
02:46:16 <Phantom__Hoover> i uh
02:46:25 <Phantom__Hoover> am apparently banned from ##c
02:46:29 -!- Phantom__Hoover has changed nick to Phantom_Hoover.
02:46:45 <Phantom_Hoover> ...but only as Phantom_Hoover
02:47:17 <Bike> what's shakin' in ##c
02:47:48 <Fiora> shachaf: I'm sorry :<
02:47:59 <Fiora> I try to spot when nobody else is helping someone
02:49:35 <Bike> nope, still boring
02:49:43 <Fiora> but it's really just a bunch of language lawyers being douchenozzles
02:49:57 <Fiora> (freenode etc)
02:50:06 <Jafet> shachaf: only Zhivago does that, you moron
02:50:25 <Fiora> did you just hear that
02:50:27 <Fiora> I INSULTED SOMEONE
02:50:31 <Fiora> do I fit in now
02:50:34 <Bike> whoa, man
02:50:42 <shachaf> Where?
02:50:46 <shachaf> Oh.
02:50:50 <Jafet> I should try to use "douchenozzles"
02:50:53 <shachaf> You can't insult someone behind their back...
02:51:03 <Fiora> douchewaffle is I think my favorite
02:51:17 <shachaf> Fiora: Insult them to their face, you coward!
02:51:25 <Fiora> I'm sorry, I'm a coward :<
02:51:30 <shachaf> No, not yourself.
02:51:36 <shachaf> You could use a lot of practice at this.
02:51:41 <Bike> admirable effort though
02:51:57 <shachaf> Yes, that counts for something. Keep at it.
02:52:00 <Fiora> I'm sorry, my attempts to show dislike towards people turn into passive aggression usually ~_~
02:52:16 <shachaf> Anyway, nothing wrong with language lawyerism.
02:52:38 <Gregor> "douchewaffle" makes me read "douchewaffe", "waffe" as in "luftwaffe"
02:52:48 <shachaf> I got 0x$0.20 for language lawyering!
02:52:59 <Bike> it's kind of irritating when someone asks a question ill-conceived with the standard and they get an earful about standards before someone says "but here's how you do it anyway"
02:53:04 <Fiora> the douchwaffe, is that like, a squadron consisting entirely of MRAs or something?
02:53:23 <Fiora> Bike: in this case I think it's worse because the standards mistake was in the /assignment/, it isn't even their fault that the assignment was overly simplifying or anything
02:53:27 <shachaf> Bike: I can't tell which part you think is irritating.
02:53:34 <Fiora> but now they get to suffer as people go into a dumb language lawyer argument over something they didn't even do...
02:53:53 <Fiora> oh. "douchecanoe" is nice too
02:54:08 * shachaf senses a common theme here.
02:54:29 <shachaf> Fiora: To be fair, this person doesn't seem to have read all of the assignment.
02:54:56 <Fiora> I guess, but that never justifies being mean and confusing to people trying to learn things ._.
02:55:17 <shachaf> Do you see me being mean and confusing?
02:55:20 <shachaf> I only do that in #haskell!
02:55:22 <Fiora> I-I didn't mean you >_<
02:55:23 <Fiora> pfff
02:55:45 <shachaf> #haskell tries to hard to be friendly.
02:55:48 <shachaf> Someone has to balance it out.
02:55:53 <shachaf> (Well, that's Jafet's job.)
02:59:25 -!- Sgeo_ has quit (Remote host closed the connection).
03:02:30 -!- Sgeo has joined.
03:07:41 <Bike> shachaf: the answers are more annoying than the questions, because the answerer should know better.
03:07:51 -!- copumpkin has quit (Ping timeout: 252 seconds).
03:08:07 <shachaf> Which answers?
03:08:22 -!- copumpkin has joined.
03:08:27 <zzo38> The answer to life, the universe, and everything.
03:08:28 <Bike> The unhelpful, pedantic standards ones.
03:08:52 <shachaf> In ##c?
03:09:12 <Bike> anywhere.
03:09:29 <Bike> I mean, explain the standard, sure, but try to help with the actual problem too.
03:10:41 <shachaf> Sometimes someone is so confused that there is no hope to give a direct answer to their question. They have to change their mindset.
03:11:10 <shachaf> Maybe this happens in #haskell more than ##c.
03:11:58 <Bike> that happens too, but there are still bad ways to respond to it.
03:12:33 <shachaf> There are.
03:14:07 <Bike> Like... if someone asks "Do I need to #include functions before I use them?" helpful answers might include "#include just pastes the file named right into the present file" (even though that's not completely true and doesn't cover translation units or anything) or "no, but you need to declare functions before you use them, and #include'd files often have these declarations in them"
03:14:32 <Bike> And not, I dunno, "You can't use preprocessor directives on function pointers"
03:15:38 <shachaf> Bike: Pft, functions aren't the same thing as function pointers.
03:15:44 <shachaf> get your pedantry right!!
03:17:45 <Bike> well there's that too, sometimes when people are pedantic they seem to interpret the "not even wrong" statement in a weird way like that («obviously they meant recursively calling the preprocessor on the constructed string «#include WXYZ» where WXYZ is the bytes of *nextfloatf»)
03:18:04 <Bike> maybe i just complain too much
03:18:26 <shachaf> i love complaining
03:18:51 <Bike> no
03:18:54 <Fiora> you don't complain too much really ~_~
03:19:11 <shachaf> Complain more!
03:20:37 <Bike> no i think i'm just going to pipe /dev/mem to pacat until my brain melts
03:21:00 <Fiora> I mean I pretty much agree, it's like
03:21:09 <Fiora> the people in these channels don't seem interested in a) learning things or b) helping people
03:21:28 <Fiora> but just rather the satisfaction of comin up with the snarkiest, most irrelevant responses possible that don't help people
03:21:49 <Fiora> like "hah! look! I found a C standard error in your question to nitpick on so I don't have to actually answer you!"
03:21:56 <Fiora> and thus their brain fills with dopamine
03:24:06 <Bike> I guess it's the part about actually answering that bugs me. "Do I have to #include functions" includes a whole lot of conceptual errors but there's still a reasonable question in there.
03:24:27 <Bike> also dopamine is overrated imo
03:26:10 <Fiora> like how with the recent question they latched onto OMG INT ISNT 4 BYTES
03:29:04 <shachaf> I suspect you're describing people who aren't me, so talking about how I don't do all those things would be pointless.
03:29:19 <Bike> well. yes.
03:29:44 <shachaf> But it seems like you're probably misrepresenting those people.
03:29:46 <Bike> you're the one who wanted complaining. if you want complaints about you you should have specified that! (this is a free complaint about you. if you want more please explicitly request them. thanks)
03:30:14 <shachaf> Or maybe it's just me assuming that people aren't awful for some reason.
03:31:00 <Bike> i think it's more that they don't know how to effectively answer questions than that they're awful
03:31:37 <shachaf> Part of it might be that when you've been in a channel for a long time, you tend to keep seeing the same questions from new people.
03:31:44 -!- TeruFSX2 has quit (Ping timeout: 252 seconds).
03:31:48 <shachaf> And you get annoyed because you've answered that question hundreds of times, why can't they learn!
03:32:05 <monqy> universally accepted ##c norm to non-answer questions
03:32:15 <monqy> perpetuation of the natural way & also a joke
03:32:17 <Bike> Yeah, it is annoying, that's for sure.
03:33:06 <shachaf> Also people might just be in a bad mood because of drums playing in the background or something.
03:36:59 <Phantom_Hoover> you seem to be very annoyed by these drums shachaf
03:37:36 <Bike> yeah, where the hell do you live that this is a problem, it sounds sucky
03:37:43 <Bike> do you live in a metronome factory?
03:37:55 <shachaf> Metronomes are not as bad as drums.
03:38:10 <Bike> Yes but metronomes might attract drummers.
03:39:53 <monqy> like moths to a candle????
03:40:14 <shachaf> like crazy people to #esoteric????
03:40:35 <Bike> Yes except metronomes aren't usually on fire, and when they are it's usually not intentional, except when it is.
03:40:41 <Bike> Like for disposal maybe.
03:40:51 <monqy> cremation
03:40:56 <shachaf> Bike: Did you play Zork Zero?
03:41:10 <shachaf> or monqy/Fiora/Sgeo/Phantom_Hoover
03:41:15 <Phantom_Hoover> no
03:41:20 <shachaf> or zzo38
03:41:21 <Phantom_Hoover> nor did i play zork anything
03:41:26 <monqy> i've played a bit of some zork maybe including zero years and years ago
03:41:29 <monqy> so i forget everything about it
03:41:31 <Sgeo> Haven't heard of Zork Zero. Have heard of Zork, never played it
03:41:33 <Bike> What monqy said.
03:41:36 <shachaf> Zork Zero is very different from the other Zorks.
03:41:39 <Phantom_Hoover> i think the only text-based thing i've played is the h2g2 game
03:41:46 <Phantom_Hoover> and galatea
03:42:20 <Bike> i played Shade. I think that's the only IF i've finished.
03:42:31 <shachaf> what about "enlightenment"
03:42:38 <shachaf> good one imo
03:42:50 <shachaf> kind of tricky
03:42:56 <shachaf> pretty short -- only one room
03:43:32 <Bike> just like shade whoa man
03:44:17 <shachaf> http://jayisgames.com/games/enlightenment/
03:44:26 <shachaf> "wow thats a lot of advertisements/??'"
03:44:48 <Bike> Oh I did play another one! That one where you wake up at like 9 AM and you're late to work.
03:45:05 <shachaf> Bike: wait is that called "real life"
03:45:19 <shachaf> that's not text based
03:45:21 <Bike> Only if you're a murderer.
03:45:23 <Bike> Are you a murderer?
03:45:32 <shachaf> maybe :'(
03:45:38 <Bike> 'Comments or Questions about Enlightenment?' also
03:46:26 <shachaf> remember inform 6?
03:46:29 <shachaf> better than inform 7 imo
03:49:25 <Jafet> http://www.ifwiki.org/index.php/Aisle
03:49:34 <kmc> hm so with this thing it would take only like $500k to take over the bitcoin network: http://www.butterflylabs.com/
03:49:41 <kmc> and you could probably DIY for less than $500k
03:49:53 <Sgeo> "Do you know Keegan McAllister on Twitter?"
03:49:59 <Sgeo> Uh, yes, that's why I followed him
03:50:03 <kmc> :3
03:50:15 <Fiora> DIY for less? it'd probably be hard to DIY a silicon chip...
03:50:17 <Sgeo> (Actually, my other Twitter account got that email)
03:50:24 <Sgeo> So it makes sense
03:50:25 <shachaf> kmc: Did you get a Twitter notification mentioning me?
03:50:40 <kmc> Fiora: by DIY i mean do your own design and then send it off to a commodity foundry
03:50:46 <Fiora> for under $500k? @_@
03:51:28 <kmc> maybe not
03:52:23 -!- Phantom_Hoover has quit (Remote host closed the connection).
03:52:35 -!- copumpkin has quit (Ping timeout: 248 seconds).
03:52:44 <Fiora> I wonder what process they're using
03:53:13 -!- copumpkin has joined.
03:53:24 <Bike> I don't get how to finish Enlightenment.
03:53:44 <kmc> you can do a 'structured ASIC' for much less than $500k fixed cost, but the result might have a poor price:performance
03:54:06 <Jafet> What does "take over" mean
03:54:10 <Fiora> "structured ASIC"?
03:54:16 <kmc> Jafet: control which transactions are allowed
03:54:23 <Fiora> oooh, I see
03:55:04 <kmc> yeah it's like an FPGA where the configuration is a custom metal layer in between standard semiconductor layers
03:55:11 <kmc> or something along those lines
03:55:15 <kmc> so a non-FP GA
03:55:55 <kmc> finding some sources saying $500k fixed cost is feasible for a 0.2 μm or bigger process
03:56:04 <Fiora> 0.2 um is huuge
03:56:53 <Fiora> like... this thing claims 60 gh/s, while the best fpgas before did only like 100mh/s or 200mh/s
03:56:57 <Fiora> so that's nearly 1000 times faster
03:57:18 <Fiora> but I don't think asics arenormally 1000 times faster especially if they're on a way worse process..
03:57:24 <Fiora> but I might be wrong
03:58:15 <kmc> i don't know much about how process affects speed
03:58:19 <Jafet> 1000 FPGAs do 60 GH/s
03:58:30 <Jafet> The cycle speed is irrelevant
03:58:31 <kmc> SHA-256 core should not take up much area or require signals to go very far
04:00:10 <Jafet> About 90% area of an FPGA chip is interconnect
04:00:58 <Fiora> "2.8 tb/s total serial bandwidth" @_@
04:01:02 <Fiora> fpgas are insane nowadays
04:01:39 <kmc> seems like you could fabricate a bunch of small independent bitcoin cores, using cheap fab capacity on a not-cutting-edge process
04:01:51 <kmc> maybe on questionable wafers (who cares if one of your cores doesn't work?)
04:02:31 <Fiora> I'm guessing big ASICs probably work the same way? I mean they're massively parallel so they could probably disable a "core" in some way or another
04:02:49 <Jafet> Your CPU manufacturer already works this way
04:02:52 <Fiora> yeah
04:02:55 -!- ogrom has joined.
04:03:19 <kmc> right but the size of die which is all-or-nothing for a Core processor is much higher than for a bitcoin processor
04:03:24 <shachaf> oerjan: Thanks for that --} trick, by the way. I use it all the time now.
04:03:31 <kmc> i mean if half the cache is bad then they sell it as a celeron or whatever
04:03:49 <Fiora> I don't think the defect rates are that high nowadays?
04:03:50 <kmc> but in general if you destroy 50% of the wafer then the product is 0% usable
04:04:04 <Fiora> last I heard they were hardware-disabling chunks of a lot of chips because they didn't have enough celerons
04:04:07 <Fiora> for demand
04:04:13 <kmc> whereas with a bunch of independent tiny SHA-256 cores, it might be almost 50% usable
04:04:16 <Fiora> because their defect rates were too good XD
04:04:17 <kmc> haha
04:04:25 <kmc> yeah you can always laser them out
04:04:33 <kmc> the 486-SX was a 486-DX with the FPU lasered out
04:04:39 <Fiora> and then there was that thing where Intel was selling software upgrades for their CPUs
04:04:43 <kmc> and the add-on FPU chip was just a 486-DX with the not-FPU lasered out >_<
04:05:00 <Fiora> http://www.anandtech.com/show/4621/intel-to-offer-cpu-upgrades-via-software-for-selected-models I wonder if they actually did this?
04:07:32 <kmc> heh yeah
04:07:37 <kmc> i never heard about it happening
04:08:13 <Fiora> the link seems to be dead >_<
04:08:49 -!- augur has quit (Remote host closed the connection).
04:14:50 <Jafet> shachaf: //*/
04:15:15 <shachaf> Jafet: That's a whole extra character.
04:15:49 -!- FreeFull has quit (Ping timeout: 248 seconds).
04:15:50 <Jafet> That's C for you
04:16:55 -!- Bike has quit (Ping timeout: 260 seconds).
04:18:11 -!- FreeFull has joined.
04:18:47 -!- Bike has joined.
04:32:03 -!- Bike has quit (Ping timeout: 248 seconds).
04:34:12 -!- Bike has joined.
04:45:01 -!- copumpkin has quit (Ping timeout: 252 seconds).
04:45:41 -!- copumpkin has joined.
04:46:00 -!- pikhq has joined.
04:46:51 <kmc> shachaf: what's the "--} trick"?
04:47:10 * pikhq waves
04:47:38 <shachaf> kmc: Putting a --} somewhere so you can comment out all the code to that point with {-
04:47:46 * Jafet stabs kmc --{-
04:48:40 <kmc> oh i see
04:49:14 <kmc> huh, right, --} is not an operator, even though things like --+ are
04:49:40 <shachaf> kmc: If it was, I think you could still -- -}
04:49:49 <Bike> :t (--})
04:49:50 <lambdabot> parse error (possibly incorrect indentation)
04:50:04 <Bike> ...incorrect indentation?
04:50:07 <shachaf> "fix ur indentation Bike......"
04:50:25 <shachaf> Bike: Indentation in Haskell translates to {} and ; and ()
04:50:31 -!- augur has joined.
04:50:31 <Jafet> :t {- -}
04:50:32 <lambdabot> <no location info>: not an expression: `'
04:50:34 <shachaf> So GHC tends to treat unmatched parentheses and such as indentation errors.
04:50:34 <Bike> what really
04:50:46 <Bike> whoa man.
04:50:58 -!- copumpkin has quit (Ping timeout: 245 seconds).
04:51:04 <shachaf> There's a simple rule to translate layout Haskell to non-layout Haskell.
04:51:25 -!- FreeFull has quit (Read error: Operation timed out).
04:51:29 -!- copumpkin has joined.
04:52:02 -!- FreeFull has joined.
04:55:45 <kmc> there is one unfortunate case that makes it not simple
04:55:47 <kmc> but basically
04:55:59 <Bike> wait tell me the unfortunate case first, i love those
04:56:24 <kmc> 'A close brace is also inserted whenever the syntactic category containing the layout list ends; that is, if an illegal lexeme is encountered at a point where a close brace would be legal, a close brace is inserted. '
04:56:40 <Bike> exciting.
04:56:57 <kmc> by 'illegal lexeme' they mean a parse error
04:57:01 <Bike> right
04:57:09 <kmc> so the de-layout-ifier needs feedback from the parser :/
04:57:19 <kmc> but i think you can mostly do without
04:57:25 <kmc> what are the cases where this rule is invoked?
04:58:57 <kmc> otherwise the rules are pretty simple. You remember the column of the first token after 'do' 'let' 'case', or 'in'. any line starting in the same column is prefixed with an implicit ';' and any line starting left of there is prefixed with a '}' to match the implicit '{' after that keyword
04:59:49 <kmc> shachaf: in what case does it translate to ()?
05:01:06 <Jafet> > let f = \x -> x in f ()
05:01:07 <lambdabot> ()
05:01:34 <kmc> ah right
05:01:41 <kmc> that invokes the 'parse error' rule
05:04:25 <Jafet> > let _ * _ = () in a * b * c
05:04:27 <lambdabot> ()
05:05:03 <Jafet> > let {} in () == () == True
05:05:04 <lambdabot> Precedence parsing error
05:05:04 <lambdabot> cannot mix `GHC.Classes.==' [infix 4] and `GH...
05:05:38 <Jafet> So in haskell98, (() == () == True) is an error, but (let {} in () == () == True) is legal
05:05:47 <Jafet> "Thankfully ghc doesn't implement it"
05:06:13 <kmc> the latter parses as (let {} in () == ()) == True ?
05:06:51 <Jafet> http://www.haskell.org/ghc/docs/latest/html/users_guide/bugs-and-infelicities.html#infelicities-syntax
05:07:04 <Bike> "infelicities". wow.
05:10:32 <Jafet> "It's a bug, but not in our software"
05:10:56 <shachaf> Except the people who write GHC and the people who write the report are the same people.
05:11:15 <shachaf> Admittedly this particular issue is not present in Haskell 2010.
05:11:31 <Jafet> That depends on your philosophical view, doesn't it
05:12:05 <shachaf> can you cross the same ghc developer twice
05:12:58 <shachaf> kmc: Did you see SPJ's technique for responding to feature requests?
05:13:00 <shachaf> http://hackage.haskell.org/trac/ghc/ticket/7496
05:13:05 <Sgeo> I can almost smell the future pasta
05:13:35 <shachaf> i love pasta
05:13:41 <shachaf> OOPS:'(
05:14:09 <kmc> which?
05:22:37 <shachaf> monqy: :·)
05:24:36 <shachaf> "your true nose??"
05:25:24 <monqy> wow how'd you find it
05:25:35 -!- FreeFull has quit (Ping timeout: 255 seconds).
05:25:58 <shachaf> well i looked at ⿐
05:26:23 <Bike> a good radical
05:26:59 -!- Jafet has quit (Quit: Leaving.).
05:27:00 <zzo38> What programming language(s) have registers named by letters A to Z, where the uppercase and lowercase indicate the same registers but modifies the command which uses them depending on the case?
05:27:25 <zzo38> PNG chunks use uppercase/lowercase letters to indicate bitfield of chunk name, but that isn't quite it.
05:27:55 -!- FreeFull has joined.
05:30:02 <kmc> radical radish
05:31:05 <zzo38> I mean such as using lowercase to load the value from the register and uppercase to store the value to the register, or using lowercase for negative numbers and uppercase for positive numbers, or whatever.
05:31:51 -!- sivoais has quit (Read error: Connection reset by peer).
05:53:33 -!- oerjan has joined.
05:54:45 <Sgeo> Am I a language hipster? I think I'm a language hipster.
05:54:47 <Sgeo> :(
05:54:56 -!- oerjan has quit (Client Quit).
05:55:25 <Sgeo> Then again, I'm worse with games. If someone asks me what games I like, I literally start out disclaiming that it's unlikely they've heard of them. (Creatures comes to mind)
05:55:32 <Sgeo> Although I do like Portal and Portal 2, and those are popular
05:55:47 <shachaf> Somehow I've heard of Creatures.
05:56:00 <monqy> was it because of sgeo
05:56:09 <shachaf> yes :·(
05:56:16 <shachaf> oops am i using monqy's nose
05:56:26 <monqy> its ok i dont need a nose
05:56:41 <shachaf> :∘)
05:56:42 <Sgeo> then how do you make a certain overused joke?
05:56:56 <shachaf> Sgeo: have you considered being a language tomator??
05:57:07 -!- oerjan has joined.
05:57:12 <shachaf> :∙(
05:57:20 <Sgeo> I have no idea what a tomator is
05:57:42 <oerjan> i say tomator, you say tomatah
05:58:29 <monqy> Sgeo: who makes what certain overused joke
05:58:32 <monqy> :☃)
05:59:22 <Sgeo> Was referring to "My dog has no nose! How does it smell? Terrible!"
05:59:27 <monqy> ah
06:00:37 <shachaf> :√(
06:00:54 <shachaf> :∝)
06:01:05 <shachaf> :¬|
06:02:06 <shachaf> Sgeo: how about: impossible creatures
06:02:10 <shachaf> is that the same as creatures
06:02:23 <Sgeo> No. Haven't heard of Impossible Creatures
06:02:40 <oerjan> @tell Taneb <Taneb> Who's the person who's rendered two computers unusable in the past week, one of them twice? <-- maybe you can be the wolfgang pauli of CS!
06:02:41 <lambdabot> Consider it noted.
06:03:08 <Sgeo> http://www.youtube.com/watch?v=qShEYneiYRI
06:03:17 <Sgeo> (note: Not listening to the audio right now)
06:03:44 <Sgeo> ...but the person fails at spelling
06:04:18 <Sgeo> I think e's 14, based on comments
06:04:28 -!- TeruFSX2 has joined.
06:04:32 <shachaf> ageist
06:09:49 -!- ogrom has quit (Read error: Connection reset by peer).
06:18:58 -!- FreeFull has quit (Ping timeout: 244 seconds).
06:20:12 * oerjan detects a fungot failure
06:20:32 * shachaf detects a funpuns failure
06:20:56 -!- FreeFull has joined.
06:26:00 -!- FreeFull_ has joined.
06:26:48 <Sgeo> Smalltalk and Common Lisp keep wrongly tricking me into thinking that a language needs good support for certain reflective features (such as resumable exceptions) to have good debugger support (such as resuming from an exception in the debugger)
06:27:26 <Bike> you don't need any reflective features to do anything Am I Right
06:27:43 <shachaf> i love reflection
06:27:44 <shachaf> it is so easy
06:27:47 <monqy> shachaf
06:27:58 <shachaf> monqy: it just slipped out
06:28:03 <shachaf> i tried to stop it..
06:28:03 -!- FreeFull has quit (Ping timeout: 245 seconds).
06:28:28 <Sgeo> Maybe reflective was the wrong word
06:28:29 <shachaf> monqy: are you the fun police!!
06:28:39 <monqy> i'm the beaky police.........
06:28:53 <Sgeo> <monqy> i'm the beaky
06:29:00 <monqy> hi
06:29:00 <monqy> ???
06:29:09 <Bike> ^rot13 funpolice
06:29:15 <Bike> hey. HEY
06:29:21 <Sgeo> no springs!
06:29:24 <Sgeo> erm, no fungot!
06:29:35 <shachaf> :·····(
06:29:47 <kmc> why the long face
06:30:05 <monqy> sgeo what's the joke with your misquote of me..
06:30:28 <Sgeo> Does it technically count as a misquote or just an out of context quote?
06:30:34 <Bike> yeah sgeo what's the joke········
06:30:48 <oerjan> fizzie: fungot failure found
06:30:51 <Sgeo> Bike, with "no springs!" or with me deciding that taking monqy out of context was funny
06:30:55 <Sgeo> ?
06:31:00 <shachaf> hi································································································································
06:31:05 <monqy> Sgeo: both please
06:31:37 <Sgeo> MST3k reference for the springs thing: http://www.youtube.com/watch?v=XJD0GTwLkVM
06:32:08 <Sgeo> And as for me thinking taking monqy out of context would be funny, I thought taking monqy out of context would be funny.
06:32:08 <Bike> oh i thought it was the rot13 of "fungot"
06:32:11 <Sgeo> I guess it wasn't
06:32:37 <oerjan> kmc: that tiling turing machine you describe in the logs, doesn't that require that a starting tile is present? whenever i think about how to encode a TM as tile it seems easy except for enforcing that you are not just tiling with a neverending tape without a machine head in it
06:32:43 <Sgeo> > length "fungot" == length "springs"
06:32:44 <lambdabot> False
06:32:58 <Bike> eh close enough
06:33:03 <oerjan> unless you enforce that a particular tile must be used somewhere
06:33:18 <oerjan> *as tiles
06:33:57 <Bike> imo ghost ship
06:34:04 <shachaf> imo helloerjan
06:34:48 <oerjan> hachaf
06:37:17 <oerjan> but the wang tile article on wikipedia doesn't seem to imply this is necessary.
06:37:26 <kmc> oerjan: yeah i don't remember this detail
06:37:37 <kmc> i think the varient on our problem set let you specify a seed tile
06:38:08 <oerjan> yeah then it is easy
06:40:06 <oerjan> hm the page has a reference to jarkko kari, i think that's oklopol's advisor
06:44:42 <oerjan> i think i tried to get oklopol to explain this stuff once. or maybe he tried to explain it and i wasn't listening. in any case i still don't know how a seedless version works.
06:53:24 <oerjan> `? california
06:53:29 <HackEgo> California is pronounced "Caliphate-ornery-I-A"
06:53:47 <Bike> `? oregon
06:53:49 <HackEgo> oregon? ¯\(°_o)/¯
06:54:08 <Bike> `cat wisdom/california
06:54:09 <HackEgo> California is pronounced "Caliphate-ornery-I-A"
06:55:29 <oerjan> `learn Oregon is the home of Oregano. Gregor used to take care of the color scheme, but then he left.
06:55:32 <HackEgo> I knew that.
06:57:04 -!- Jafet has joined.
06:59:42 -!- FreeFull_ has quit (Ping timeout: 252 seconds).
07:01:43 -!- FreeFull has joined.
07:08:45 <quintopia> so jigsaw puzzles are turing complete eh. not particularly surprising i guess
07:09:47 <Jafet> Only infinite ones
07:09:57 <kmc> hm i would also be interested to know how the seedless version works
07:09:58 <Jafet> I tried to buy one of those but they cost a lot
07:10:43 <kmc> maybe each tile also has a number saying how many steps left/right to the head
07:10:53 <kmc> and you have an infinite number of tile types but it's still r.e.
07:11:26 <kmc> i don't remember exactly what the wang tiles problem statement is
07:11:58 <Jafet> "Tesselation is a dick"
07:12:53 <kmc> quintopia: hmm but how do you encode allowing adjacency of a specific arbitrary subset of other pieces using the conventional notion of "jigsaw puzzle"
07:13:03 <Jafet> Actually, Wang's proof was wrong
07:13:29 <Jafet> Should have been called Berger tiles or something
07:13:39 <kmc> iirc this stuff comes up in practice with DNA / RNA computing
07:13:49 <Bike> bla bla Stigler
07:14:06 <kmc> and maybe the computing part isn't too interesting, but you can attach your nucleic acids chains to other molecules and thereby get them to self-assemble
07:14:06 <zzo38> Everything in mathematics is named after different people; I read this in some book.
07:14:14 <kmc> everything in mathematics is named after gauss
07:15:01 <kmc> my knowledge of this DNA self assembly thing is at "walked by a poster in a CS building six years ago" level
07:15:03 <oerjan> <Phantom__Hoover> this is what i'd expect from oerjan or fizzie or someone else old <-- I'M ALL WITH SHACHAF ON THE DRUM THING
07:15:05 <zzo38> I mean, different people than what some people think it should be.
07:15:16 <zzo38> However, if they are all same then it is difficult. So, they have to make it different.
07:15:34 <kmc> zzo38: in Holland the Curry-Howard Isomorphism is the Curry-Howard-de Bruijn Isomorphism
07:16:24 <zzo38> kmc: OK
07:16:46 <Bike> de bruijn has indices anyway
07:16:48 <Jafet> I wonder how long the DNA analogues take to self-assemble
07:17:03 <kmc> there is also a Curry–Howard–Lambek correspondence
07:17:04 <Jafet> They probably don't assemble correctly and can't backtrack
07:17:29 <kmc> which is a three-way correspondence between logic, types, and cartesian closed caterogies
07:17:36 <kmc> categories too
07:17:38 <kmc> cat orgies
07:17:50 <oerjan> kmc: given that there are a finite number of tile types, i am pretty sure you could not encode distance from the head in any meaningful way.
07:18:15 <kmc> oerjan: yeah, i didn't know if we were talking about a problem with a finite tile set or just a computable or even r.e. tile set
07:18:28 -!- sirdancealot has quit (Ping timeout: 240 seconds).
07:18:32 <oerjan> clearly finite, otherwise it would be trivial.
07:18:40 <kmc> yeah?
07:20:03 <oerjan> http://en.wikipedia.org/wiki/Domino_problem and http://en.wikipedia.org/wiki/Wang_tiles clearly say finite.
07:20:29 <kmc> mm right you could just have the whole state in one tile
07:20:58 <Jafet> The equivalence proof is probably similar to that for postcard systems
07:21:08 <oerjan> if it wasn't finite, all you needed to do was to encode (m,n) as part of the tile and throw out all at (0,0) that weren't your original seed tile
07:21:53 <oerjan> to reduce to the seeded version
07:24:49 <oerjan> <kmc> quintopia: hmm but how do you encode allowing adjacency of a specific arbitrary subset of other pieces using the conventional notion of "jigsaw puzzle" <-- i don't think it's too hard to recode color + intended NESW direction as a geometric pattern on the sides so that only N+S with matching colors can fit together, etc.
07:27:25 -!- TeruFSX2 has quit (Quit: Leaving).
07:28:50 -!- FreeFull has quit (Ping timeout: 260 seconds).
07:29:36 <kmc> hmm right with wang tilings there is only one allowed color, not a set
07:29:45 <kmc> but you can reduce a set to single colors easily
07:30:26 <Jafet> http://en.wikipedia.org/wiki/Post_correspondence_problem#Proof_sketch_of_undecidability
07:30:28 -!- FreeFull has joined.
07:32:19 -!- sirdancealot has joined.
07:34:19 <kmc> that's another fun problem but i'm not sure how much light it sheds on the wang tilings proof at the level of specificity we're talking
07:35:29 -!- FreeFull_ has joined.
07:35:45 <kmc> the PCP decision problem is a global property of the configuration of dominoes
07:36:16 <kmc> the wang tile problem is a local property of every pair of adjacent tiles
07:36:25 -!- FreeFull has quit (Read error: Operation timed out).
07:40:08 <Jafet> The proof construction only encodes every sequence of three state transitions
07:40:16 -!- FreeFull_ has quit (Ping timeout: 252 seconds).
07:40:17 <Jafet> That's pretty local
07:40:30 <kmc> i'm not talking about the proof construction
07:40:30 -!- FreeFull has joined.
07:40:30 <Jafet> Or actually one state transition
07:40:31 <oerjan> i think if you did the PCP with a two-sided _infinite_ string, it would have a similar problem.
07:40:50 <kmc> i'm talking about the decision problem itself
07:40:56 <kmc> ignoring anything to do with turing machines
07:41:24 <kmc> the definition of the post correspondence problem
07:41:49 <kmc> can you stick together tiles such that the top string and the bottom string match?
07:42:01 <kmc> the top string and the bottom string are properties of the whole configuration
07:42:15 <kmc> they can get arbitrarily far out of sync and then come together at the end
07:42:28 <kmc> you can't just look at a neighborhood of 2 or n dominoes and say whether they could appear together or not
07:44:41 <kmc> this is unusually ontopic especially for me
07:44:48 <Jafet> The second dimension could be considered as the global constraint
07:44:55 <kmc> ah for the days when designing an esolang and proving it TC would get you a PhD
07:45:25 <Jafet> I think it could still get you a PhD
07:45:32 <Jafet> It just has to be more interesting than a brainfuck derivative
07:45:56 <kmc> well the first documented brainfuck-like language arose this way
07:46:13 <Jafet> Bohm: "yo dawg"
07:46:30 <kmc> got to sleep, 'night all
07:57:39 <oerjan> <shachaf> oerjan: Thanks for that --} trick, by the way. I use it all the time now. <-- yay
07:57:56 <oerjan> maybe i should use it myself some time.
07:58:10 <coppro> darn it I keep mixing up oerjan and oklopol :(
07:58:50 <oerjan> it is so e*hit by falling anvil*
08:00:10 <oklopol> yeah it's very easy to show tiling is undecidable with a seed tile, but otherwise things are complicated by the fact that if you're going to actually draw runs of a turing machine, you have to have a seed tile in every large enough pattern or there is a configuration without it
08:00:38 <oklopol> in particular things like "<kmc> maybe each tile also has a number saying how many steps left/right to the head" cannot be made to work
08:02:09 <shachaf> helloerjan
08:02:18 <oklopol> but the three basic techniques of making an aperiodic tiling can be easily turned into undecidability proofs
08:03:18 <oklopol> 1) robinson tilings, small set of tiles that, by a simple induction, just happen to draw nested, bigger and bigger, rectangles. you run a turing machine in every rectangle.
08:06:07 <oklopol> 2) self-similar tilesets. make a tile set that, just kinda in a brute force way, draws a periodic base tiling, on top of which, in each repeated pattern, a zone containing a turing maching and wires that connect it to its neighbors
08:06:53 <oklopol> now, the program this turing machine runs simulates a tiling like itself, with a larger computation zone (which simulates a tiling like itself with a larger computation zone, which...).
08:07:14 <oklopol> so you can imagine that's a bit hard to set up, but it's pretty neat.
08:08:58 <oerjan> ouch
08:09:13 <zzo38> I have added multiple selection questions into Internet Quiz Engine.
08:09:34 <oklopol> 3) Beatty sequences (my supervisor's technique :P), which is the only technique that isn't in any sense self-similar (although it relies on an undecidable property of turing machines whose proof is really hard).
08:09:54 <oklopol> (and which is kinda "self-similar", because it's really really recursive)
08:12:15 <oklopol> 3 is the only one whose proof doesn't require a horribly long case analysis which is omitted in all expositions that are under 30 pages.
08:13:51 <oklopol> the paper that does 2 just basically says what i said, plus they explain why a turing machine has time to set up this recursion.
08:14:10 <oerjan> ok
08:14:11 <oerjan> -->
08:15:27 <zzo38> Now I can circle item #014 on my comparison chart.
08:15:52 <oklopol> the original proof of 1 is like 50 pages, but it can be done in a less painful way
08:16:23 <zzo38> I also corrected a few other mistakes in the program, such as one mistake in the logic for doing time limits.
08:16:26 <oklopol> it's perhaps the easiest to check completely, in the sense that 3 requires you to check an old result on turing machines which everyone is afraid of
08:16:50 <zzo38> Why is everyone afraid of?
08:17:19 <Bike> because god is here
08:19:34 <oklopol> because it's a program written in 1966.
08:19:51 <oklopol> in the ancient programming language called the turing machine.
08:21:07 <oklopol> http://www.jstor.org/discover/10.2307/2269811?uid=3737976&uid=2&uid=4&sid=21101682430267
08:22:11 <Bike> a CS paper on JSTOR, now that is old
08:29:55 <kmc> oklopol: wow
08:35:53 <oklopol> PCP is also something that's studied a lot in our university
08:36:01 -!- zzo38 has quit (Remote host closed the connection).
08:36:28 <oklopol> http://en.wikipedia.org/wiki/Post_correspondence_problem halava and hirvensalo are from here, salomaa is too but he's a bit old now.
08:36:57 <oerjan> <shachaf> Bike: Indentation in Haskell translates to {} and ; and () <-- no () actually
08:37:27 <oklopol> so you can imagine it was hard to keep the lecture that short
08:37:50 <shachaf> oerjan: Right.
08:38:05 <shachaf> I mentioned () because GHC gives indentation errors on unmatched (
08:38:12 <shachaf> But it's not actually part of the layout.
08:38:57 <oklopol> the PCP undecidability proof is much easier than the tiling thing
08:39:24 <oklopol> tilings in general have the problem that it's fun to come up with tilings with some properties, but they are roughly as hard to verify as they are to come up with.
08:39:28 * oerjan recalls how PCP can be encoded in the ambiguity problem of CF grammars
08:39:45 <oklopol> well you can just directly draw a sequence of turing machine configurations on the top row
08:39:48 <oklopol> separated by #
08:40:04 <oerjan> > (3
08:40:05 <lambdabot> <hint>:1:3: parse error (possibly incorrect indentation)
08:40:16 <oklopol> you have the row under it actually contain the bottoms of tiles which are currently writing the next configuration on the top row
08:40:22 <oklopol> so you can compare two rows locally
08:40:28 <oklopol> erm
08:40:30 <oklopol> two configurations
08:40:44 <oerjan> shachaf: i don't think ghc is trying to be too clever about understanding where indentation makes sense
08:41:10 <shachaf> Sure.
08:41:47 <oklopol> so, anyway i have two colleagues which are, independently, constructing more and more complicated tile sets solving more and more complicated problems, which are harder and harder to explain. i try to stay away from that stuff.
08:42:09 <oklopol> i mean both are constructing a single tiling, which they still haven't published.
08:42:28 <oerjan> a mathematical black hole? :)
08:42:31 <oklopol> yes
08:43:20 <oklopol> although we are publishing a paper with some tiling constructions now, but they are just fun little geometric things, so there's a chance someone reads them.
08:44:25 <oerjan> > do [1]; [2] in "hi"
08:44:26 <lambdabot> <hint>:1:13: parse error on input `in'
08:45:00 <oklopol> there's a result that the if S is a countable Pi^0_1 set with cantor-bendixson rank \lambda, then there's a tile set with countably many tilings whose cantro-bendixson ran is \lambda+12. we do \lambda+5 so it's revolutionary.
08:45:08 <oklopol> *cantor
08:45:17 <oerjan> OKAY
08:45:30 * oerjan sidles away carefully
08:46:13 <oklopol> plus we do some other things
08:46:54 <oklopol> cantor-bendixson ranks are awesome really
08:47:38 <oklopol> did i mention that in the conference proceedings of automata 2012, we wrote that as cantor-bendixon throughout
08:47:57 <oerjan> <kmc> otherwise the rules are pretty simple. You remember the column of the first token after 'do' 'let' 'case', or 'in'. [...] <-- of, not case, at least before they introduced lambdacase
08:47:59 <oklopol> very professional
08:48:06 <oklopol> okay now i'm done
08:48:30 <oklopol> i'll go do some game programming now.
08:48:39 <oerjan> nice
08:48:55 <oklopol> ya
08:51:36 <kmc> er yeah
08:51:37 <kmc> thanks
08:51:49 <Bike> you are bad at sleeping
08:52:04 <kmc> oklopol: that stuff about aperiodic tilings is very interesting, thanks for explaining in some more detail & pointing the way to find more info
08:52:13 <kmc> yeah
08:52:32 <kmc> a variety of factors have conspired to keep me awake
08:52:38 <oklopol> no prob. it's one of my favorite topic in the world. laso i'm bad at leaving.
08:52:39 <oklopol> also
08:53:02 <oklopol> topics
08:53:11 <shachaf> kmc: was it drums
08:53:18 <kmc> no
08:53:28 <kmc> you really hate drums
08:53:31 <kmc> "drums did 9/11"
08:53:51 -!- Nisstyre-laptop has quit (Quit: Leaving).
08:53:57 <shachaf> far away from the boom boom boom of the drummer / it was midsummer / what a bummer / clementine
08:54:02 <monqy> drums are ok in moderation. when used with restraint. when supervised by an adult
08:54:25 <monqy> irresponsible adults do not count
08:54:46 <kmc> maybe there should be background checks and a waiting period to buy drums
08:55:00 <monqy> this is a good idea
08:55:01 <shachaf> drums don't keep people awake. people keep people awake
08:55:36 <monqy> this reminds me of the time i was trying to get to sleep but people kept firing fireworks. I was in ohio not california. I don't have that problem here.
08:55:45 <monqy> now that's nasty!!!
08:56:02 <shachaf> btw my rhyme is like the one from that one song by cole porter
08:56:06 <shachaf> which is really by tom lehrer
08:56:13 <shachaf> just in case you didn't notice
08:56:20 * oerjan googled it
08:56:57 <kmc> ah yeah in summer 2011 my neighbors spent the entire month of june setting off fireworks
08:57:12 <shachaf> monqy: what were you doing in ohio??
08:57:17 <kmc> i was afraid that for july 4 they would blow up my entire house with a fuel air bomb or something
08:57:38 <monqy> shachaf: non-immediate family
08:57:56 <shachaf> i was in ohio once but just at an airport
08:58:37 <kmc> one of the factors is that the circuit breakr for my room keeps tripping and i have to get up and reset it
08:58:56 <kmc> there is not much load on this circuit at all, and nothing has changed recently
08:59:19 <kmc> although partially I must take my housemate's word for that; perhaps he's started clandestine marijuana cultivation in his room
08:59:26 <kmc> seems unlikely tho
08:59:33 <kmc> i think it is a bad arc fault detector
09:02:17 -!- sirdancealot has quit (Ping timeout: 252 seconds).
09:03:47 -!- epicmonkey has joined.
09:05:36 <shachaf> Uh oh, your housemate might be engaging in interstate commerce?
09:06:21 <kmc> yeah, that's trouble
09:08:33 <kmc> good goatkcd today
09:11:53 -!- Bike has quit (Quit: imo).
09:15:42 -!- sirdancealot has joined.
09:36:02 <kmc> actually this is kind of an unusual xkcd
09:36:39 <kmc> usually the drawing is the joke and the text underneath is an unfunny explanation of the joke
09:36:42 <kmc> this time it's the other way around
09:36:58 -!- ineiros has quit (Remote host closed the connection).
09:37:17 -!- ineiros has joined.
09:40:33 -!- impomatic has quit (Ping timeout: 245 seconds).
09:44:00 <kmc> going to try again to sleep
09:45:18 <shachaf> Who's going to reset the circuit breaker without you?
09:46:37 -!- fungot has joined.
09:49:37 <shachaf> thanks monqy
09:49:50 <monqy> ok??
09:54:14 -!- sirdancealot has quit (Ping timeout: 252 seconds).
09:54:31 -!- ineiros has quit (Remote host closed the connection).
09:54:38 -!- ineiros has joined.
10:07:55 -!- sirdancealot has joined.
10:09:18 <Jafet> Hm
10:09:31 <Jafet> Since when did xkcd have only one alt text
10:09:43 <Jafet> "Damn sellouts"
10:09:52 <Jafet> (oglaf still has two)
10:10:38 <shachaf> qwantz.com has three
10:10:42 <shachaf> Not that I read qwantz.com
10:11:15 <olsner> how do you see the second alt text? hover a second mouse over the image?
10:13:20 <nortti> hover 2 mouses over the image?
10:13:50 <shachaf> olsner: I'm not sure whether you're a cheap plastic imitation of oerjan or of oklopol.
10:16:00 <olsner> shachaf: one of my alt texts has the answer
10:17:26 <shachaf> And the other one has the other answer?
10:18:17 <olsner> the other ones have the other answers, yes... in fact, they all have different answers
10:21:35 <FreeFull> olsner: What you get when you hover the mouse over the image is the title text, not the alt text
10:21:35 <FreeFull> alt text is what displays if the image doesn't load
10:21:36 <FreeFull> To read the alt text on oglaf, you have to either read it quickly before the comic loads, or look at the source
10:23:35 <fizzie> Or, you know, use a browser that doesn't display images.
10:42:47 -!- Taneb has joined.
10:56:25 <Taneb> Hmm
10:56:25 <lambdabot> Taneb: You have 1 new message. '/msg lambdabot @messages' to read it.
11:09:29 -!- oonbotti has quit (Ping timeout: 255 seconds).
11:10:49 <FreeFull> http://gergo.erdi.hu/blog/2013-01-19-a_brainfuck_cpu_in_fpga/
11:11:23 <FreeFull> fizzie: Why would a browser that doesn't display images load the image?
11:13:47 <elliott> um...
11:14:13 <monqy> FreeFull: pretty sure the point is that it doesn't display images, so you can see their alt texts
11:15:29 <FreeFull> monqy: You still want to see the comics though
11:15:41 <monqy> no you don't
11:15:43 <monqy> why would you
11:16:46 <Vorpal> speaking of alt texts. I can't read them on the phone (at least not in chrome for android), which makes reading xkcd from the phone totally pointless
11:16:57 <oerjan> i hear you don't want to see oglaf. at least not while at work.
11:21:13 -!- monqy has quit (Quit: hello).
11:24:16 -!- ineiros has quit (Ping timeout: 252 seconds).
11:25:15 -!- ineiros has joined.
11:31:08 -!- Phantom_Hoover has joined.
11:31:33 -!- ineiros has quit (Ping timeout: 248 seconds).
11:31:47 -!- ineiros has joined.
11:32:20 -!- sirdancealot has quit (Ping timeout: 248 seconds).
11:33:59 -!- sirdancealot has joined.
11:50:21 -!- oonbotti has joined.
12:01:48 -!- aloril has quit (Ping timeout: 245 seconds).
12:05:08 -!- Yamakazi has joined.
12:06:01 <Yamakazi> ii
12:06:31 -!- Yamakazi has left.
12:14:31 -!- aloril has joined.
12:16:21 -!- DHeadshot has quit (Read error: Connection reset by peer).
12:19:27 -!- md_5 has quit (Ping timeout: 240 seconds).
12:25:55 -!- md_5 has joined.
12:28:12 -!- oerjan has quit (Quit: leaving).
12:37:59 -!- Arc_Koen has joined.
12:51:32 -!- epicmonkey has quit (Ping timeout: 255 seconds).
12:58:22 <Vorpal> Huh, why do I have a sit0 interface stuck in "UP" state with the addresses ::192.168.1.40/96 and ::127.0.0.1/96. ifconfig sit0 down does nothing...
12:58:25 <Vorpal> how strange
13:01:48 <Vorpal> # ip link delete sit0
13:01:48 <Vorpal> RTNETLINK answers: Operation not supported
13:02:00 <Vorpal> well that explains why it didn't work, no idea why it didn't work though
13:02:28 <Taneb> <Vorpal> well that explains why it didn't work, no idea why it didn't work though
13:02:34 <Taneb> Think about what you just said
13:03:12 -!- Taneb has changed nick to Taneb|Away.
13:04:52 <Vorpal> Taneb|Away, okay "no idea why it isn't supported though"
13:04:59 <Vorpal> that is a better way to express that
13:20:20 -!- Taneb|Away has changed nick to Taneb.
13:24:27 -!- oonbotti has quit (Ping timeout: 240 seconds).
13:30:34 -!- oonbotti has joined.
13:35:09 -!- ais523 has joined.
13:36:14 <ais523> lambdabot: messages?
13:36:18 <ais523> apparently not
13:36:46 <Taneb> Oh no
13:36:53 <Taneb> @tell ais523 That totally sucks!
13:36:54 <lambdabot> Consider it noted.
13:37:32 -!- copumpkin has quit (Ping timeout: 252 seconds).
13:37:37 <elliott> ais523: hi
13:38:09 -!- copumpkin has joined.
13:38:38 <c00kiemon5ter> if you give tmux to bind S it binds 's', but if you give it S-<some-key> it binds 'Shift' <.<
13:41:15 <ais523> elliott: hi
13:41:15 <lambdabot> ais523: You have 1 new message. '/msg lambdabot @messages' to read it.
13:41:19 <ais523> @clear-messages
13:41:19 <lambdabot> Messages cleared.
13:58:59 -!- copumpkin has quit (Ping timeout: 252 seconds).
13:59:30 -!- copumpkin has joined.
14:03:21 -!- FreeFull has quit (Remote host closed the connection).
14:06:42 -!- FreeFull has joined.
14:14:00 <Vorpal> c00kiemon5ter, ouch
14:34:02 <Taneb> Well, I think I've found someone who had the same problem as I do
14:40:00 <Deewiant> c00kiemon5ter: So bind S-s?
14:43:18 <Vorpal> Deewiant, what if you want a lower case s specifically?
14:43:31 <Deewiant> Vorpal: Then just s?
14:44:01 <Vorpal> Deewiant, lowercase s and a 8 at the same time, s-8?
14:44:12 <Vorpal> wouldn't that not work according to c00kiemon5ter ?
14:44:34 <Deewiant> I don't think you can bind chords in any case...
14:44:58 <Vorpal> ah okay
14:46:51 <c00kiemon5ter> there is no distinction between lowercase and uppercase
14:46:58 <c00kiemon5ter> C-a is the same as C-A
14:47:59 <Deewiant> In :list-keys I have some different bindings for lower and upper case: D, L, and U are different from d, l, and u
14:48:25 <c00kiemon5ter> doesn't seem to work like that here
14:49:26 <c00kiemon5ter> oh, it does!
14:55:05 <Vorpal> what is tmux btw?
14:55:13 <FreeFull> c00kiemon5ter: C-A would be with shift
14:55:13 <Vorpal> like screen?
14:55:20 <Deewiant> Vorpal: Yes.
14:55:30 <Vorpal> how do they differ?
14:55:53 <Deewiant> $ screen
14:55:54 <Deewiant> $TERM too long - sorry.
14:55:56 <Deewiant> tmux doesn't do that
14:56:24 <FreeFull> tmux supports unicode above the BMP
14:56:34 <FreeFull> tmux is less bloated
14:56:47 <FreeFull> tmux supports horizontal splitting without any patches
14:56:57 <c00kiemon5ter> tmux is also MIT licensed iirc
14:57:05 <Deewiant> BSD
14:57:41 <c00kiemon5ter> BSD right, it is mainly developed by the OpenBSD people
14:58:09 <FreeFull> http://sourceforge.net/p/tmux/tmux-code/ci/master/tree/FAQ Read the first question
14:58:14 <FreeFull> And the answer of course
15:01:51 <elliott> Deewiant: Hah, what's your $TERM?
15:02:04 <Deewiant> elliott: rxvt-unicode-256color
15:02:18 <Deewiant> elliott: Doesn't fit in the char[20] of older screens
15:02:25 <Deewiant> elliott: It was fixed by making it char[40] IIRC
15:03:30 <Deewiant> Seems to be char[128] in tmux
15:03:38 <c00kiemon5ter> the one thing screen does that I would like in tmux is re-painting the terminal according to the new size
15:04:07 <c00kiemon5ter> ie if you resize a terminal running screen, which had a wrapped line, then the line unfolds
15:04:19 <c00kiemon5ter> on tmux the line be as it was
15:04:46 <c00kiemon5ter> if you shrink the terminal with tmux, the line will be hidden,
15:04:52 <c00kiemon5ter> with screen the line will wrap
15:09:16 <c00kiemon5ter> bbl
15:11:25 <nortti> "Bravo! You have just written Forth in Brainfuck written in Forth."
15:33:06 <Vorpal> annoying that you can't use ping when testing a -m owner --uid style iptables rule
16:16:43 -!- Taneb has quit (Ping timeout: 245 seconds).
16:19:46 <Sgeo> I should learn Coq
16:20:04 <Sgeo> If I can get over my prejudices of "I only want to learn languages that I can write general purpose programs in!"
16:20:24 <ais523> Sgeo: general purpose programs are actually quite hard to write, and not very useful when you do
16:20:27 <Phantom_Hoover> you can write general purpose programs in coq!!!
16:20:31 <ais523> programs that do something in particular tend to be more useful
16:20:37 <ais523> and often you can find a language to fit them
16:21:02 <Sgeo> ais523, do implementations of computer languages count as general purpose programs?
16:21:42 <elliott> there are some general purpose prorgams written in coq
16:21:45 <elliott> for instance a C compiler
16:22:00 <elliott> http://compcert.inria.fr/
16:22:05 <ais523> Sgeo: yeah, that struck me as the most obvious way to write a general purpose program
16:27:36 <Sgeo> What sort of languages get used in life-or-death situations like medical equipment?
16:27:39 <Sgeo> Statically typed?
16:28:38 <kmc> Sgeo: http://www.foo.be/docs/tpj/issues/vol2_1/tpj0201-0004.html
16:28:43 <quintopia> rigorously tested ones, i hope
16:28:44 <ais523> Sgeo: random win32 stuff written in C++, that can't be updated ever because only one version of it was certified
16:28:49 <ais523> it's scary
16:29:16 <kmc> yeah lab equipment (NMR machine etc) is often infested with malware because they can't upgrade the Windows XP instal
16:29:27 -!- TeruFSX has joined.
16:29:32 <kmc> the network admins just firewall it off as best they can
16:29:37 <ais523> kmc: XP? 2000 is more common, or 3.1
16:29:39 <Sgeo> kmc, seen it, I assume it's not real based on the comment about "April, toward the beginning of the month."
16:29:44 <kmc> got to go
16:29:49 <Sgeo> bye
16:30:24 <elliott> Sgeo: http://en.wikipedia.org/wiki/Therac-25
16:34:29 <Phantom_Hoover> Have I mentioned the Berkely accelerator radiotherapy thing lately?
16:58:56 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
17:13:27 -!- Phantom_Hoover has joined.
17:25:37 <Sgeo> What's the canonical thing to do in an imperative language like Smalltalk for the use cases that list comprehensions have? Nested loops with the innermost one writing to an object stream?
17:27:11 -!- FreeFull has quit (Ping timeout: 252 seconds).
17:30:07 -!- Phantom_Hoover has quit (Ping timeout: 244 seconds).
17:30:49 <olsner> use a different language?
17:31:52 -!- Phantom_Hoover has joined.
17:32:39 <Sgeo> There's an implementation of amb for Smalltalk, I guess that could be used
17:39:19 -!- sivoais has joined.
17:52:40 -!- Nisstyre-laptop has joined.
18:01:06 -!- epicmonkey has joined.
18:13:36 -!- oerjan has joined.
18:13:38 -!- TeruFSX has quit (Ping timeout: 252 seconds).
18:21:36 -!- asiekierka has joined.
18:27:24 -!- Bike has joined.
18:27:24 <Bike> 2identify 14cki
18:27:25 <lambdabot> Bike: You have 1 new message. '/msg lambdabot @messages' to read it.
18:27:41 <oerjan> _someone_ needs to change their password hth
18:27:53 <Bike> heh, fuck.
18:28:25 -!- Bike has quit (Disconnected by services).
18:28:29 <elliott> hth
18:28:56 <elliott> @tell bike sorry i couldn't stop myself
18:28:56 <lambdabot> Consider it noted.
18:29:12 <oerjan> elliott: it is so easy
18:29:22 <elliott> oerjan: :(
18:29:22 * oerjan runs like the wind
18:29:36 -!- Bike has joined.
18:30:17 <Bike> thanks for that.
18:30:17 <lambdabot> Bike: You have 2 new messages. '/msg lambdabot @messages' to read them.
18:30:39 <elliott> np any time
18:31:59 <oerjan> elliott is np-complete
18:40:50 -!- Bike has quit (Quit: testin).
18:41:07 -!- Bike has joined.
18:41:55 -!- derkus has left.
18:57:05 <Vorpal> anyway "14cki" is such a terribly short password anyway.
18:57:59 <Bike> i'm not exactly concerned about IRC security.
18:59:02 <elliott> have you changed it now
18:59:11 <Vorpal> what the hell, if I su to another user I can't run screen -r since the pts of my terminal is not readable by that user
18:59:13 <elliott> oh you have
18:59:17 <Vorpal> that is kind of stupid
18:59:17 <elliott> i tried to ghost you immediately after that line
18:59:19 <Vorpal> -_-
18:59:21 <elliott> would have been pretty good imo
18:59:47 <Vorpal> hm how do I deal with this...
19:00:14 <Bike> i mean i have no reputation or anything, the only thing i need a password for is for protecting the sanctity of bikes, and avoiding being disconnected by services by Bastards Like You
19:02:08 <elliott> "the sanctity of bikes"
19:02:26 <Bike> Some things in life are important.
19:02:49 <Vorpal> heh, I connected a computer to a public IP and forgot to turn off logging of rejections in iptables. Pretty spammy result even with the rate limiting that is going on
19:05:31 <elliott> @ping
19:05:31 <lambdabot> pong
19:10:51 -!- FreeFull has joined.
19:12:46 <Vorpal> elliott, ping
19:13:21 <elliott> hello
19:13:29 <Vorpal> elliott, have you any experience with either nfs or cifs (samba)? If so, is either of them significantly better/faster/less work/...?
19:13:39 <Vorpal> going to be between two linux boxes so...
19:14:11 <oerjan> <elliott> they are all crap
19:14:30 <Vorpal> probably we should use something from plan9 instead indeed but...
19:15:12 <elliott> Vorpal: no experience
19:15:16 <Vorpal> oh well
19:16:09 <Sgeo> Do IDEs have a negative impact on ability to metaprogram?
19:16:26 <Sgeo> doesNotUnderstand is often discouraged in Smalltalk I think because it negatively impacts tooling?
19:17:09 -!- impomatic has joined.
19:17:13 <FreeFull> I can't say, never used an IDE much
19:17:20 <Bike> maybe you could ask a Ruby person
19:17:29 <olsner> IIUC, most people like it better when they're understood
19:17:30 <FreeFull> I think last time I've used an IDE was when I was looking at writing GBA code
19:17:37 <Bike> they apparently use those methods that get called when there's no method, a lot
19:17:39 <FreeFull> Which was years ago
19:19:23 -!- FreeFull has quit (Read error: Operation timed out).
19:23:57 -!- FreeFull has joined.
19:25:54 -!- Taneb has joined.
19:27:58 <Taneb> Well, this situation sucks mildly less
19:30:17 <Vorpal> Taneb, hm?
19:30:37 <Vorpal> Taneb, also are you connected as root, or did you just set the name to that
19:32:14 <Taneb> @ping
19:32:14 <lambdabot> pong
19:32:14 -!- Taneb has quit (Quit: leaving).
19:34:52 -!- Taneb has joined.
19:35:13 <Taneb> I've managed to boot to a start-up disk thing
19:35:17 <Taneb> And connect to the internet
19:35:24 <Taneb> I can live like this, for a short while
19:36:16 <Phantom_Hoover> Taneb what have you done
19:37:01 <Vorpal> Taneb, what is going on?
19:37:28 <Taneb> I should never be allowed admin access on a computer
19:37:45 <Taneb> Tried to upgrade Ubuntu
19:37:49 <Taneb> Now I can't boot
19:38:38 <Taneb> It sort of hangs
19:39:25 <Phantom_Hoover> this is your punishment for using ubuntu taneb
19:39:49 <Taneb> Is Arch any better?
19:39:52 <Taneb> Because Arch hates me
19:39:53 <Taneb> to
19:39:53 <Taneb> o
19:39:54 <Phantom_Hoover> although i guess there was that time arch managed to break the kernel startup sequence or something
19:40:48 <Taneb> Gentoo also hates me
19:41:03 <Taneb> Haiku's alright about me but hates my wifi adapter
19:41:09 -!- FreeFull has quit (Ping timeout: 248 seconds).
19:43:05 -!- FreeFull has joined.
19:45:14 <Taneb> Unfortunately, on this setup, I can't mess with my computer without leaving IRC
19:52:57 <Vorpal> <Taneb> Is Arch any better? <-- try debian?
19:53:15 <Vorpal> Taneb, anyway, wont boot in what way
19:53:17 <Vorpal> any errors?
19:53:22 <Vorpal> at what point does it fail?
19:53:41 <Vorpal> grub? kernel? finding root file system? in user space?
19:53:42 <Taneb> I can't recall off the top of my head, and I'd have to leave and come back to tell you
19:53:50 <Taneb> After grub
19:53:55 <Taneb> Before user space
19:54:04 <Vorpal> Taneb, did it find the root file system?
19:54:26 <Taneb> I can, on Grub, say "Advanced options => root terminal"
19:54:27 <Vorpal> if it didn't you probably need to ajust the kernel command line in the grub config
19:54:36 <Taneb> But that ends up read only
19:54:46 <Taneb> But I can see all my files
19:54:51 <Vorpal> Taneb, you can remount / by doing mount -o rw,remount /
19:54:58 <Vorpal> if that is linux
19:55:04 <Taneb> Yeah
19:55:08 <Vorpal> rather than something grub specific
19:55:38 <Taneb> Right, I'll try that in a moment
19:55:53 <Vorpal> Taneb, anyway have you turned off boot splash image and such, they tend to hide vital info
19:56:00 <Vorpal> I never use that stuff thus
19:56:45 <Taneb> I'll try that suggestion then I'll film the boot process and borrow someone else's computer and upload it to youtube and link you
19:57:02 -!- Taneb has quit (Quit: SAVING THE WORLD).
19:57:06 <Vorpal> Taneb, well, I can look at that tomorrow evening at the earliest
19:57:15 <Vorpal> @tell Taneb, well, I can look at that tomorrow evening at the earliest. Going to sleep shortly.
19:57:16 <lambdabot> Consider it noted.
19:57:32 <Vorpal> wait
19:57:48 <Vorpal> that I told "Tanb," right?
19:57:49 <Vorpal> -_-
19:58:19 <Vorpal> @tell Taneb Well, I can look at that tomorrow evening at the earliest. Going to sleep shortly. Leave me a message with lambdabot. By the time you read this, I will be disconnected from my bouncer.
19:58:19 <lambdabot> Consider it noted.
19:59:59 -!- FreeFull has quit (Quit: rebooting).
20:03:49 -!- FreeFull has joined.
20:11:41 <elliott> "He also confirmed that Mega had one million users on day one and said that “we cannot be stopped.” They’re re-enacting the arrest now – helicopters are everywhere. They just reenacted the arrest from last year. Currently a lot of dubstep, explosions and more."
20:14:28 <Sgeo> I just want my files that existed only on MegaUpload and my still yet to be recovered HD back
20:16:14 <Vorpal> elliott, what is this about helicopters? Megaupload fan fiction?
20:16:27 <elliott> http://thenextweb.com/insider/2013/01/20/kim-dotcom-officially-launches-the-new-mega-at-an-insane-press-event/
20:16:50 <Vorpal> wow that is one fat person on the screen
20:16:55 <elliott> Sgeo: I confidently predict that will never help.
20:16:56 <elliott> .
20:16:58 <elliott> Sgeo: I confidently predict that will never happen.
20:17:33 <Sgeo> I could in theory recover the HD
20:17:56 <Vorpal> elliott, auto correct on a mobile device? Or what happened there?
20:19:16 -!- FreeFull has quit (Ping timeout: 248 seconds).
20:26:09 <elliott> I typed the wrong word.
20:27:41 -!- atrapado has joined.
20:31:46 <elliott> "Megaupload would pay certain customers to upload their files but Dotcom explains that there were limitations to ensure that the rewards program was not used for piracy. He explains that users were not rewarded for files that were more than 100 MBs: “have you ever downloaded a movie larger…they don’t exist.”"
20:32:06 <Bike> wat
20:33:01 <elliott> Bike: Dubstep and explosions, man.
20:36:42 -!- Taneb has joined.
20:38:18 <Taneb> Right, does "microcode: failed to load file amd-ucode/microcode_amd.bin" mean much to anyone
20:38:18 <lambdabot> Taneb: You have 1 new message. '/msg lambdabot @messages' to read it.
20:39:20 <elliott> nice
20:39:27 <Bike> that's a hell of an error
20:39:28 <Vorpal> This sucks, xorg won't do keycodes > 255, which my keyboard generates for some of the extra fancy keys (it is a MS Natural ergonomic keyboard).
20:39:47 <Vorpal> oh well, guess I can't use that group of buttons then
20:39:48 <Taneb> Or "kvm: disabled by bios"
20:40:06 <Phantom_Hoover> Taneb, I think your bootleg chinese GPU may have booted its last leg.
20:40:09 <Vorpal> <Taneb> Right, does "microcode: failed to load file amd-ucode/microcode_amd.bin" mean much to anyone <-- well
20:40:13 <Vorpal> it shouldn't be fatal
20:40:22 <Vorpal> and it definitely shouldn't be from the kernel itself
20:40:26 <Vorpal> maybe from the init ram fs
20:40:57 <Vorpal> <Taneb> Or "kvm: disabled by bios" <-- unlikely to fatal except to hardware virtualization
20:41:22 <Vorpal> I *think* the microcode is for the CPU, but if such it shouldn't be fatal
20:41:32 <Vorpal> if it is for the GPU.. hm not sure
20:41:58 <Vorpal> Taneb, do you have an AMD CPU (check /proc/cpuinfo) and/or an AMD GPU (check lspci)
20:42:28 <Taneb> I'm pretty sure the CPU is AMD
20:42:59 <Taneb> There's also "sp5100_tco: mmio address 0xfec000f0 already in use"
20:43:27 <Vorpal> google suggests "CONFIG_SP5100_TCO: AMD/ATI SP5100 TCO Timer/Watchdog"
20:43:36 <Vorpal> really?
20:43:42 <Vorpal> you have a watchdog?
20:44:06 <Taneb> I... don't think so
20:44:15 <Vorpal> well hm
20:44:24 <Vorpal> Taneb, what is the last message before the crash?
20:44:28 <Vorpal> or hang
20:44:58 <Taneb> The kvm disabled by bios one
20:45:22 <Vorpal> huh
20:45:22 <Taneb> Then there's just a blinking cursor in the top-left of a black screen
20:45:28 <Vorpal> how very strange
20:45:41 <Taneb> It restarts on C+A+D and powers down on the power button
20:45:49 <Vorpal> Taneb, does it accept any other input?
20:45:59 <Taneb> Not as far as I am aware
20:46:15 <Taneb> By which I mean "probably not, I've tried a whole bunch"
20:46:22 <Vorpal> Taneb, and it stayed like that for how long? Maybe you just need to wait a couple of seconds?
20:46:48 <Vorpal> or I guess you did that already?
20:46:49 <Taneb> 3 minutes until I stopped filming
20:46:51 <Vorpal> well
20:46:52 <Taneb> Then about 10 after that
20:46:56 <Vorpal> then it is definitely broken
20:47:06 <Vorpal> I was thinking more like 5-10 seconds or such
20:47:36 <Vorpal> Taneb, yeah, copy your files from the disk to an external hdd or whatever, then reinstall. Or restore from your last backup
20:47:46 <Taneb> That bad?
20:47:50 <Taneb> Dang
20:47:55 <Vorpal> Taneb, eh, it is PROBABLY fixable
20:48:02 <Vorpal> but I have no clue how
20:48:11 <Taneb> Heh, thanks anyway
20:48:14 <Vorpal> Taneb, you could try #ubuntu or the ubuntu forums
20:48:17 <Vorpal> I guess
20:48:53 <Taneb> Okay
20:48:54 -!- zzo38 has joined.
20:49:11 <Vorpal> Taneb, the way I see it, it might not be worth spending days debugging when you could just reinstall it and restore your backed up package list. At least if you have fast internet to download it all again
20:49:44 <Taneb> Decent internet, but the only computer I can really get to it from is my family computer from 2006 running XP
20:49:46 <Vorpal> and your /home/whatever could just be copied across as is (make sure to fix the uid/gid though)
20:50:06 <Vorpal> Taneb, surely you have direct internet access from the broken computer?
20:50:08 -!- epicmonkey has quit (Ping timeout: 245 seconds).
20:50:09 <Vorpal> wifi or something
20:50:23 <Taneb> Oh yeah
20:50:25 <Vorpal> is there a household without wifi anywhere
20:50:28 <Taneb> That's what I'm using right now
20:50:33 <Taneb> Forgot about that
20:50:34 <Vorpal> Taneb, wifi can be quite fast
20:50:41 <Vorpal> faster than my ADSL at least
20:50:44 <Taneb> Yeah, I know
20:50:48 <Vorpal> won't match up to fibre of course
20:52:15 <Taneb> If anyone tries to work out what kind of a person I am from the videos on my camera, they'll have no idea
20:52:25 <Vorpal> oh?
20:53:11 <Taneb> Video of three people, none of whom are me, two of whom are in Homestuck hoodies, the third in an angry birds hat, fighting over some glasses
20:53:26 <Vorpal> okay
20:53:27 <Taneb> Video of someone who is not me getting ready to sledge, then sledging down a hill
20:53:32 <Vorpal> that is a bit weird
20:53:36 <Taneb> Video of someone's computer failing to boot up
20:53:41 <Vorpal> heh
20:53:43 <Taneb> And that's it
20:54:11 <Vorpal> Taneb, well it tells me the person was, or knew someone who was, a linux user
20:54:23 <Vorpal> also is probably into geeky stuff
20:54:25 <zzo38> Only three videos? Yes, then I suppose they won't figure out a lot.
20:54:30 <Vorpal> given the homestuck stuff
20:54:37 <Phantom_Hoover> or possibly is some sort of stalky homestuck voyeur
20:54:40 <Taneb> zzo38: I got the camera for Christmas
20:54:42 <Vorpal> yeah that is about it
20:54:52 <Vorpal> Phantom_Hoover, or that yes
20:54:59 <Taneb> Phantom_Hoover: seeing as all the people in that video were female, that's looking worryingly likely
20:54:59 <Phantom_Hoover> also damn you and your sledding
20:55:09 <Phantom_Hoover> do you know how many hills there are in the midlands
20:55:22 <Taneb> I'd imagine at least one
20:55:34 <Taneb> But I don't really know the midlands
20:56:57 <Phantom_Hoover> there are none
20:56:57 <Phantom_Hoover> at
20:56:58 <Phantom_Hoover> all
20:57:15 <Phantom_Hoover> we tried making our own hill out of snow but it just wasn't the same
20:57:22 <Vorpal> Phantom_Hoover, I live in one of the flatter regions of Sweden too
20:57:50 <Vorpal> doesn't vary more than maybe 5-10 meters around here
20:57:54 <Vorpal> and quite slowly
20:58:22 <Vorpal> I know one place where you can sledge near here. But that is about it
20:58:25 <Taneb> ...Hexham's built on a hill
20:58:42 <Phantom_Hoover> edinburgh is built on at least 7
20:58:49 <Phantom_Hoover> except nobody can agree on which 7
20:58:54 <Taneb> Somewhat like Rome in that respect
20:59:21 <Taneb> Which is built on the famous seven hills of Rome, plus a few more
21:04:38 -!- epicmonkey has joined.
21:06:47 -!- copumpkin has quit.
21:07:24 -!- copumpkin has joined.
21:12:22 <Taneb>
21:12:26 -!- Taneb has quit (Quit: leaving).
21:12:59 <elliott>
21:17:05 <Sgeo> o.O Assembler code in Smalltalk
21:31:24 <Fiora> Bike: just, gosh, the whole cmubash site
21:31:29 <Fiora> "Your mom is so fat, she sat on a binary tree and turned it into a linked list in constant time!"
21:31:49 <Bike> -_____-
21:32:01 <Fiora> I feel terrible for laughing
21:32:11 <ion> heh
21:38:13 <kmc> https://pbs.twimg.com/media/BBESuMICYAAvNn9.jpg:large
21:38:49 <Bike> what in the hell
21:40:46 <ion> kmc: Seems legit.
21:41:27 <kmc> is there some punchy term for "things that look like graphs but are actually totally meaningless decoration"?
21:42:05 <Bike> "bullshit"?
21:42:08 <Fiora> http://benfry.com/wp/wp-content/uploads/2009/02/piratesarecool4.gif I'm reminded of that
21:42:11 <fizzie> I've heard a word for that.
21:42:19 <fizzie> But I can't recall what it was.
21:42:34 <kmc> Fiora: that graph is a lot more legit
21:43:03 <kmc> it has actual labeled axes measuring things that could plausibly be quantified
21:43:32 <kmc> though i don't believe that there were only 17 pirates in year 2000
21:43:37 -!- monqy has joined.
21:43:46 <Sgeo> Quantity of the users?
21:44:01 <Bike> kmc: uh it says "approxiate" right there hello
21:44:02 <ion> http://lesantint.com/leng/rmx_advantages.html
21:44:22 <fizzie> The only word that comes to mind right now is "chartjunk", but that's a different thing. (It's the visual cruft in a chart that doesn't contribute anything.)
21:44:28 <ion> http://lesantint.com/leng/energy_source.html
21:44:51 <Sgeo> What is "deciphering"?
21:45:02 <kmc> oh my god these are great
21:45:04 <Sgeo> Deciphering when you have legitimate access?
21:45:10 <Bike> fuck it's a bmp
21:45:30 <Sgeo> In which case, I don't think you want slow systems unless it's a password hash
21:45:37 <Sgeo> Especially as slow as it seems to be trying to imply
21:45:49 <kmc> "The deciphering is conducted with the help of SUPER COMPUTERS"
21:46:05 <Bike> Work of a prototype of the generator is described by absolutely new class of mathematical functions developed by us in the course of studying of physical vacuum. Our workings out allow to create generators of energy of any capacity:... мcW, uW, W, kW, MW, GW, TW...
21:46:14 <Sgeo> Or do they mean illegitimately, in which case they don't describe by what mechanism (brute forcing, or what?)
21:46:46 <Bike> sgeo. this is garbage. don't even try.
21:46:51 <fizzie> See how many K's RMX has compared to banks?
21:47:14 <Bike> what the hell is мcW supposed to be anyway
21:47:28 <Bike> is uW supposed to be µW? there are just so many questions
21:47:36 <Sgeo> Oh, it
21:47:42 <Sgeo> It's "Absolute cryptographic protection"
21:47:45 <fizzie> Bike: Millicentiwatts?
21:47:54 <Bike> the little M is cyrillic.
21:48:03 <Sgeo> Didn't know anything other than one-time pads were absolute
21:48:09 <fizzie> Yes, but it's still a small m.
21:48:17 <Sgeo> And if they are using one-time pads, how is anything representing a time to break in not "infinity"?
21:48:24 <Fiora> http://lesantint.com/images/energy_eng.JPG
21:48:42 <Bike> vakuum
21:48:49 <shachaf> "This circuit was performed by Tesla in 1933. The source of electrical power was developed and Tesla installed it into the car the internal combustion engine of which was eliminated and replaced by с и заменен на asynchronous motor. Tesla drove this car for two weeks."
21:48:56 <shachaf> why is it always Tesla
21:48:57 <fizzie> Sgeo: Well, I mean, "THE PECULIARITY OF ABSOLUTE RMX SYSTEM CONISISTS IN THE FACT THAT IT CAN BE DECIPHERED NEVER AND BY NOBODY AT ANY LEVEL OF DEVELOPMENT OF A SCIENCE AND COMPUTER FACILITIES !!!"
21:49:07 <fizzie> That does sound pretty absolute.
21:49:13 <Bike> shachaf: maybe because tesla was about as crazy as this, only also competent.
21:49:44 <kmc> "RMX is fully protects any computer network. It is impossible to consider the data from a network as direct connection or attack of hackers even by means of the super-computer. Absolute protection (hardware - program execution)."
21:50:49 <kmc> Fiora: o_O
21:50:55 <kmc> collapsing the false vacuum for fun and profit
21:51:21 <fizzie> Battle Programmer Shirase doesn't even *need* the super computer, though. I've seen this in a video.
21:51:32 <Fiora> There's something really amusing about "diagrams" that don't actually explain anything at all
21:51:56 <Bike> they help explain how out of it the creator is, at least.
21:53:01 <Sgeo> "Atomic spaying of any thickness."
21:53:24 <Sgeo> (from http://lesantint.com/leng/ )
21:53:39 <Sgeo> I assume they meant spraying
21:54:25 <kmc> hahaha
21:54:34 <kmc> you don't want those atoms breeding!
21:54:38 <ion> hah
21:56:03 <fizzie> Responsible people spay their atoms to prevent unwanted molecules.
21:56:13 <kmc> unwanted fission
21:56:31 <fizzie> It is pretty bad if you have lots of unwanted fission going on in your house.
21:56:33 <kmc> http://lesantint.com/images/rmx8.JPG
21:57:01 <Bike> Wow, I recognize that stock photo.
21:57:03 <ion> http://lesantint.com/leng/transmutation.html a.k.a. alchemy?
21:57:18 <Bike> never seen anyone actually use it, rather than just finding it on shutterstock and laughing
21:57:20 <kmc> "FULL ABSOLUTE PROTECTION OF MICROCHIPS IMPLANTED INTO THE HUMAN !!!"
21:57:22 <fizzie> Bike: I was just about to ask whether you people thought they had posed for that picture themselves.
21:57:31 <kmc> well you can actually transmute elements
21:57:42 <kmc> "Necessity of inplantation of microchips every day is more and more obvious."
21:57:54 <kmc> http://lesantint.com/leng/rmx_application.html
21:58:01 <Bike> fizzie: nah "bad guy doing computer hacks holy shit" is common enough to make it lucrative as stock
21:58:11 <Bike> they just made it about as cheesy as possible for some reason
21:58:27 <fizzie> Maybe there's a niche for that, too.
21:58:35 <kmc> jokey articles about hackers, sure
21:58:54 <Bike> mostly i'm surprised that there's no watermark on it
21:59:00 <Bike> guess they actually paid?
21:59:38 <Bike> "THE PECULIARITY OF ABSOLUTE RMX SYSTEM CONISISTS IN THE FACT THAT IT CAN BE DECIPHERED NEVER AND BY NOBODY AT ANY LEVEL OF DEVELOPMENT OF A SCIENCE AND COMPUTER FACILITIES !!!" my god
21:59:39 <kmc> http://lesantint.com/images/signalizaciya.JPG
21:59:44 <kmc> Cod-Grabber would be the worst superhero
22:00:06 <kmc> more of a basic occupation than a superpower
22:01:22 <Bike> what is a cod
22:01:24 <Bike> like the fish?
22:01:26 <Bike> or the video game?
22:01:42 <kmc> i was thinking fish
22:02:06 <Bike> fish are kind of hard to grab, admittedly
22:02:29 <kmc> Bike: they probably torrented the image or photoshopped out the watermark
22:03:08 <Bike> are there really torrents of that? sad.
22:05:05 <kmc> probably
22:08:24 <Fiora> torrenting a cod?
22:08:29 <Fiora> I guess cods are often found in torrents
22:08:53 <Bike> I only have so many underscores to put between hyphens, Fiora.
22:09:03 <Fiora> :P
22:23:02 <Phantom_Hoover> Fiora, er, aren't cod saltwater fish
22:24:12 <Fiora> um um stop ruining horrifically awful jokes with logic
22:25:20 <elliott> thats literally what this channel is for Fiora
22:25:42 <Fiora> (I don't actually want people to stop that)
22:25:45 <Fiora> (because it's actually wonderful)_
22:25:50 <Phantom_Hoover> then you make awful jokes about the logic and the cycle continues
22:26:37 <oerjan> reductio ad absurdum
22:27:49 <kmc> "Makerbot chief exec Bre Pettis says the [MakerBot] printer could be used in space"
22:28:04 <kmc> also "It's my hope that if an apocalypse happens people will be ready with Makerbots, building the things they can't buy in stores."
22:28:17 <kmc> a kind of hilarious mental image of Bre trying to make plastic trinkets on generator power while armed bandits steal all his food and water and fuel and computers
22:29:43 <elliott> imo an "apocalypse" where you still have 3d printers doesn't really count
22:30:00 <kmc> get back to me when you can 3D print a working shotgun and some penicillin
22:30:23 <ion> I have seen the perfect presentation. I can die now in peace. http://lesantint.com/data/rmx_prezentation.ppt (Be sure to view it in something that can display the transitions and the animations and play the sounds.)
22:30:50 <kmc> yeah and get UFO MALWARE? no thanks
22:31:10 <kmc> russian UFO malware from the secret research base at Tunguska
22:32:01 -!- augur has quit (Remote host closed the connection).
22:33:24 <kmc> elliott: if say a virus wiped out 99% of humans, governments and civilization would collapse, but individual people would still have access to advanced tech on a local scale
22:33:41 <kmc> however it might not do much good
22:34:10 <kmc> i think certain of the "maker" skills would be useful, but not so much 3D printing
22:34:20 <Phantom_Hoover> depopulation viruses are so 80s kmc
22:34:23 <Phantom_Hoover> now we have zombies
22:34:38 <elliott> idk, tech relies on a lot of infrastructure
22:34:40 <monqy> zombie viruses???????
22:34:47 <elliott> I tend to assume everything will just explode
22:34:47 -!- oerjan has quit (Quit: let me just collapse for a while).
22:34:52 <kmc> elliott: well 3D printers do and that's part of my claim
22:35:09 <kmc> but e.g. the ability to maintain basic internal combustion engines would be very useful
22:35:41 <Phantom_Hoover> you're not going to be short on spare parts though are you
22:35:43 <elliott> fair enough
22:35:50 <kmc> basic electronics skill to establish perimeter security for your base
22:35:50 <kmc> etc
22:36:28 <kmc> but i think the most useful skills are not part of the standard 'maker' palette
22:37:22 <kmc> medicine, agriculture, negotiation, management of small organizations in tense circumstances
22:37:44 <kmc> i shudder to think how noisebridge style government would work in an apocalypse.
22:38:28 -!- epicmonkey has quit (Ping timeout: 245 seconds).
22:41:16 <kmc> obviously there is a fantasy here that 3D printers are saving the world rather than just being toys for rich people
22:41:50 <kmc> they may well eventually save the world but Bre is massively overstating the usefulness of the thing that they've made now because, well, he's a shameless self-promoter and has a business to run
22:55:34 -!- sivoais has quit (Quit: leaving).
22:56:09 -!- sivoais has joined.
22:56:49 -!- TeruFSX has joined.
23:05:51 <Sgeo> On dice.com would I put 7 years of experience with Python even if I haven't used Python contiguously in those 7 years?
23:05:58 <Sgeo> How is experience counted?
23:06:42 <Sgeo> (Could probably put 9 but even though I've read about Python in 2003 that doesn't mean I've used it)
23:09:20 <Phantom_Hoover> i think nobody is going to do an experience audit on you
23:10:45 <Jafet> I don't think 9 years of experience in python means anything different to a year thereof
23:11:42 <Jafet> "I have experience with Seven of Nine"
23:11:57 <monqy> measurement of experience in years is silly anyway
23:12:23 <Sgeo> But it's what dice.com asks for, so
23:12:39 <Phantom_Hoover> It's a decent rule of thumb.
23:13:41 <kmc> these measures exist entirely to allow people who know nothing about Python to sort your résumé into the trash or not
23:13:50 <kmc> so you should pick the biggest number that is vaguley defensible
23:14:17 <kmc> once you get an actual interview they will try to assess your actual knowledge, not nitpick your choice of buzzwords and numbers on your resume
23:14:46 <kmc> you should only put a buzzword on if you are willing to talk about that thing in an interview
23:15:03 <kmc> but they are not going to be like "He said PROFICIENT in Python but he was only MODERATELY PROFICIENT! DOUBLE-FAIL!!"
23:16:07 <kmc> the part of your resume that is actually likely to come up in an interview is past experience (be it jobs, other projects, classes)
23:19:40 <kmc> your resume is an advertisement you write about yourself
23:19:50 <kmc> its purpose is to get you a phone call
23:20:01 <kmc> it's not the be-all end-all character sheet that defines whether you get the job
23:20:22 <Jafet> Isn't that because the past experience part of the résumé is where all the lies go
23:20:32 <kmc> i don't know
23:20:41 <kmc> people also lie about skills
23:21:01 <kmc> we had people come in who claimed to be 10+ years experienced C++ programmers who could not code fibonacci
23:21:13 <kmc> but it's not like we would have accepted those people if they had not lied
23:21:22 <shachaf> kmc: Clearly not enough IRC experience.
23:21:23 <kmc> lying just wasted some of their time and some of ours
23:21:30 <kmc> and maybe got them a free trip to $CITY so good for them
23:23:19 -!- atrapado has quit (Quit: Abandonando).
23:24:29 <kmc> also I think finding jobs through dice.com etc. is not the preferred way
23:24:37 <kmc> it's much better to find jobs through your personal network if you can
23:25:13 <c00kiemon5ter> remember the kettle guy ? :D http://www.youtube.com/watch?v=HpbKGvjqsxM
23:25:27 <elliott> 23:15:03 <kmc> but they are not going to be like "He said PROFICIENT in Python but he was only MODERATELY PROFICIENT! DOUBLE-FAIL!!"
23:25:34 <elliott> kmc: imo this would be better
23:26:01 <kmc> how do you mean
23:26:06 <elliott> kmc: well it would be funnier
23:26:08 <elliott> so there's that
23:26:14 <kmc> it's not like "proficient" and "moderately proficient" mean anything objectively
23:26:26 <elliott> yes but it would be funnier
23:26:31 <kmc> yeah there's that
23:26:31 <elliott> not sure you are on my wavelength here
23:26:50 <kmc> i'm synced to the wavelength of your RMX human implant chip
23:28:20 <Fiora> moderately proficient python man, can write a bug-free fizzbuzz in a single bound
23:29:11 <shachaf> is the bound [1..100]
23:29:25 <Fiora> pfff
23:30:35 <Phantom_Hoover> does proficient python man not need any bounds at all
23:30:55 <Jafet> I hope not. That would imply more than one way to do it.
23:32:12 <Fiora> "faster than an overclocked prescott, more powerful than a tesla, and able to leap tall process stacks in a single bound"
23:33:11 <Phantom_Hoover> tesla is magnetism, not power!!!
23:33:18 <Phantom_Hoover> why not use the good scottish watt!
23:36:26 * Fiora meant the GPU, but
23:37:59 <Sgeo> TopatoBlog! Sweet Bro and Hella Jeff Hardcover PRESS RELEASE http://goo.gl/fb/GWr8i
23:38:21 <monqy> hi
23:38:32 <Phantom_Hoover> why don't you use `list
23:38:35 <Sgeo> `list
23:38:42 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
23:38:42 <Sgeo> (not an update)
23:39:30 <Sgeo> http://media.tumblr.com/e975165f063347c452b9cc8810c54397/tumblr_inline_mgy6lvfbyu1qj5t81.jpg
23:41:04 <Fiora> .... Pffff
23:41:43 -!- Jafet has left.
23:41:48 -!- Jafet has joined.
23:42:07 -!- pikhq has quit (Ping timeout: 244 seconds).
23:42:09 -!- pikhq_ has joined.
2013-01-21
00:07:55 <Sgeo> How worried should I be that it's easy to crash Smalltalk VMs from within themselves?
00:09:06 <monqy> Very Concerned
00:09:21 <Jafet> Write a strongly worded letter
00:09:33 <Jafet> Also, that sounds better than SCADA
00:09:49 <Sgeo> I actually crashed Pharo by accident
00:10:00 <monqy> woops!!!
00:10:05 <Sgeo> The fact that it could be done by accident is far more alarming than being able to crash it on purpose
00:10:17 <Sgeo> Although I guess what I did was dumb
00:10:33 <Sgeo> I gave the debugger thing the go-ahead to add a new instance variable to Dictionary
00:12:28 <copumpkin> kmc: what was that north korean link you gave yesterday?
00:12:46 <elliott> copumpkin: https://sites.google.com/site/sophieinnorthkorea/
00:12:47 <elliott> i'm kmc btw
00:12:48 <copumpkin> I can't find it in my history now for some reason
00:12:49 <copumpkin> thanks!
00:12:52 <copumpkin> (kmc)
00:12:53 <elliott> (i'm not actually kmc btw)
00:13:14 <Jafet> Keegan McElliott
00:20:14 <shachaf> kmc gave that link?
00:20:17 <shachaf> I thought copumpkin did.
00:35:18 <Sgeo> `list
00:35:18 <Sgeo> http://www.mspaintadventures.com/scraps2/sbahj_pressrelease.jpg
00:35:19 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
00:38:24 <Sgeo> elliott, ^ I'm sure you consider this to be the best thing ever
00:39:01 <monqy> i can confirm that elliott considers this.
00:40:09 <shachaf> :∗)
00:40:48 <Sgeo> :o)
00:40:57 <Sgeo> honk
00:41:28 <shachaf> :ⓞ)
00:41:51 <shachaf> :Ⓞ)
00:41:54 <shachaf> help
00:42:07 <shachaf> :O)
00:42:50 <Sgeo> Is that the Opera symbol?
00:43:08 <shachaf> Opera
00:43:37 <Sgeo> In the font my IRC client uses, it's like an O with the right and left thick, Opera-like
00:43:45 <Fiora> Sgeo:
00:43:52 <Fiora> <Fiora> http://en.wikipedia.org/wiki/A_Sunday_Afternoon_on_the_Island_of_La_Grande_Jatte http://www.topatoco.com/graphics/00000001/mspa-sbahj-hardcover-pic4.jpg
00:43:55 <Fiora> <Fiora> .... is this actulaly a parody of that?
00:43:57 <Fiora> <buttercupistiny> yep
00:44:00 <Fiora> <ponicalica> I wonder if there's some grand sweeping point that can be made about looking at pointilist artwork through a computer that uses pixels
00:44:46 <Bike> Wait, why is the second one not pointilist.
00:45:51 <Fiora> I don't know, it's sbahj, come up with any one of 5000 excuses?
00:46:09 <Bike> why five thousand
00:46:14 <Fiora> random big number
00:46:33 <Bike> these things have significance.
00:46:42 <Sgeo> http://www.youtube.com/watch?feature=player_embedded&v=aE1JOPS1Uko#!
00:47:02 <Bike> You may as well tell Origen that 666 is random and big!!!
00:48:03 -!- pikhq has joined.
00:48:04 -!- pikhq_ has quit (Ping timeout: 248 seconds).
00:48:58 -!- augur has joined.
01:14:51 -!- Phantom_Hoover has quit (Quit: Leaving).
01:20:37 -!- Arc_Koen has quit (Quit: The struct held his beloved integer in his strong, protecting arms, his eyes like sapphire orbs staring into her own. "W-will you... Will you union me?").
01:28:05 -!- zzo38 has quit (Remote host closed the connection).
01:37:14 <Sgeo> "One of the great leaps in OO is to be able to answer the question "How does this work?" with "I don't care""
01:37:18 <Sgeo> :/
01:37:32 <Sgeo> I mean, maybe if you're leaping to OO from Assembly...
01:37:52 <olsner> sounds more like abstraction than anything related to OO
01:37:59 <Sgeo> Also, not ... caring is icky. Not needing to know in order to do some task is really the principle
01:38:02 <Bike> are you seriously reading pro-OO things? that's, like, so 90s, man.
01:38:21 <shachaf> Bike: Shh, this is Sgeo's channel.
01:38:23 <Sgeo> olsner, yes, 100% agree
01:38:48 <Sgeo> Bike, I don't think it's meant as advocacy
01:38:54 <Sgeo> It's in Pharo by Example
01:39:18 <Sgeo> And says about how newcomers to Smalltalk seem to want to know how every little detail works before doing something like Transcript show: 'Hello world'
01:39:22 -!- augur has quit (Remote host closed the connection).
01:39:51 <olsner> like in Haskell where people only want to know what monads are
01:41:36 <olsner> i.e. maybe that's just the smalltalk burrito
01:42:05 <olsner> and of course, something something something lenses
01:43:02 <ais523> Sgeo: that's because in Smalltalk, something like I/O doesn't fit into the language's view of things very well at all
01:43:13 <ais523> in Smalltalk, as in Feather, in order to do I/O, you must first create the universe
01:44:24 <Sgeo> ais523, it seems quite capable of I/O... GUI is a form of I/O
01:44:36 <ais523> Sgeo: yeah exactly
01:44:42 <ais523> where does the GUI come from?
01:44:57 <ais523> it's written in Smalltalk, clearly
01:45:03 <ais523> and how does the GUI do its I/O?
01:45:12 <ais523> if you think about the issue for too long, you end up inventing Feather
01:45:20 <Sgeo> Ultimately it comes down to VM primitives I guess
01:45:32 <ais523> yeah
01:45:39 <ais523> this is the sort of thing that confuses and upsets an ais523
01:45:43 <ais523> it doesn't really fit with the rest of the language
01:45:46 <Bike> couldn't you just have a "system" object that you can send messages to
01:46:05 <Bike> since the point is you don't have to care about the actual implementation of any object, yeah?
01:46:29 <ais523> Bike: but it has to come from somewhere, and if you have a decent debugger, you can find out
01:46:36 <Sgeo> Classes in Smalltalk aren't actually black boxes.
01:46:39 <ais523> and Smalltalk cares about its decent debuggers and everything
01:46:46 <kmc> yeah proponents of OOP like to take credit for the idea of abstract data types or abstraction in general
01:46:49 <ais523> Smalltalk's as least as monkeypatchable as Ruby
01:46:50 <Sgeo> Well, I guess you could make a fake class that fakes out the browser
01:47:05 <ais523> Sgeo: or just do "true become: false" or something silly like that
01:47:12 <ais523> (at least Squeak freezes if you do that)
01:47:15 <Bike> well i haven't used smalltalk, but i thought the big idea was basically encapsulation, from Kay's talks
01:47:27 <Sgeo> Making a fake class shouldn't freeze anything, though?
01:47:37 <ais523> Sgeo: that wasn't my point
01:47:43 <Sgeo> oh
01:47:49 <ais523> you can just preëmptively assume that the actual point was incoherent
01:48:02 <ais523> because we're talking about me and Smalltalk
01:48:12 <Bike> ais is this a dialetheism thing
01:48:20 <Bike> are you a truther
01:48:21 <tswett> Hm. A programming language called Default.
01:48:34 <Sgeo> Bike, yes, but classes have messages that when you send them, reveal stuff like the instance variables they define and the methods they define
01:48:38 <ais523> Bike: no, it's because annoyance at Smalltalk is what caused me to end up inventing Feather
01:48:39 <tswett> Every language component has some default behavior, but you can cause interesting stuff to happen by overriding this default behavior.
01:48:52 <elliott> Bike: wow this is like the second time in my life I've sen the word dialetheism
01:48:56 <ais523> you can define Feather as "Smalltalk done right" if you want to confuse people into wondering why that would involve time travel stuff and all that
01:49:12 <ais523> tswett: Java?
01:49:14 <Bike> Sgeo: couldn't you have "system" say it has no instance variables and then tell the truth about methods...
01:49:18 <Bike> elliott: it's a good word imo
01:49:24 <tswett> ais523: hm.
01:49:30 <Sgeo> Bike, what are you suggesting is the truth?
01:49:54 <Bike> Sgeo: that it has methods for interacting with the underlying system (if there is one), like print to terminal or xlib or whatever
01:50:06 <Sgeo> In Squeak/Pharo at least a method can say it's implemented by a VM primitive by containing <text in angle brackets>
01:50:08 <ais523> I guess to make it an esolang, the only sensible esolangisation is "the only way to accomplish anything is by redefining the default behaviour of everything"
01:50:18 <ais523> but that still doesn't lead to an obvious language
01:50:29 <Bike> Sgeo: the end of the metacircular braid, as it were
01:50:30 <ais523> and is ill-defined and potentially far-reaching enough that probably only cpressey could create it
01:50:33 <ais523> and he's probably busy
01:50:45 * Sgeo wants to hear more about Smalltalk and how Feather fixes it
01:50:55 <ais523> Sgeo: that'd mean talking about Feather
01:51:03 <Bike> what do smalltalk methods even respond to?
01:51:11 <Sgeo> Bike, hm?
01:51:20 <Bike> you said "a method can say"
01:51:29 <Sgeo> Erm, bad phrasing on my part
01:51:30 <Bike> so i'm wondering what information there is about methods, if any
01:51:34 <ais523> Bike: their caller, I think
01:51:47 <ais523> they have a call stack, just like functions in other languages
01:51:47 <Sgeo> As in, the source of a method would cotain <foo>
01:51:49 <Bike> really i thought objects just took arbitrary messages, there don't even have to be "methods"?
01:51:52 <Bike> so you can Ruby all this shit
01:52:06 <ais523> Sgeo: anyway, the problem with Smalltalk is that you have to have a heavyweight OS-like thing to get anywhere with it
01:52:24 <ais523> because of all the everything defined in terms of everything else and needing a really expansive environment to do things
01:52:41 <ais523> like having class objects for regular objects, and ability to method browse, and so on
01:52:51 <ais523> and the result of /that/, is that Smalltalk programs aren't portable
01:52:53 <ais523> following me so far?
01:53:09 <Sgeo> Portable from heavyweight Smalltalk OS to heavyweight Smalltalk OS?
01:53:17 <Sgeo> That's how they're not portable, I mean
01:53:19 <Sgeo> ?
01:53:28 <Bike> i can't say i understood why every class object had its own metaclass object
01:53:29 <ais523> Sgeo: yeah
01:53:41 <ais523> basically, the common way to distribute a Smalltalk program is just to bundle the entire VM image
01:53:48 <ais523> because you can't do it any other way
01:55:33 <ais523> now, to solve this problem, you need to do two things: a) allow the language to be entirely written in itself, going back forever (solves the portability problem), and b) allow the VM state to be recreated from scratch by running a sequence of instructions (basically, libraries, followed by the program)
01:56:01 <Bike> oh this is a good time to ask that thing i asked before. are there any systems for code interoperability that work well (or at least tolerably) besides ELF with SOs and p.e. DLLs?
01:56:15 <ais523> I don't think a) is solvable, while remaining computable, but you can fake it using retroactive changes
01:56:29 <ais523> the main reason behind retroactive changes, though, was to get around the need to have separate classes and objects
01:56:40 <ais523> in Smalltalk, you can alter a class in order to change all objects spawned from it
01:57:06 <Sgeo> Self has no distinct classes, so...?
01:57:17 <ais523> in Feather, you create objects by cloning+modification, and if you retroactively change the parent object, that changes all its decendants, so it comes to the same thing
01:57:27 <Fiora> Bike: Java and class files?
01:57:45 <Fiora> or I guess I should say, JVM and class files
01:57:46 <Bike> oh, maybe. i don't know much about that
01:57:52 <Fiora> since you can compile almost anything to JVM bytecode
01:57:54 <Bike> i'm sort of wondering if there's any theory or anything
01:58:14 <ais523> you know, I should put this monologue on the wiki
01:58:24 <ais523> it's a good way to explain that a) Feather is real, and b) give a glimpse of the consequences
01:58:41 <Bike> since i usually code in CL and it's largely the same situation as ais was complaining about (besides distributing source)
01:58:58 <Fiora> I'm guessing .NET CLR is similar
01:59:08 <Bike> ais523: why do you have a "thing" about talking about feather anyway, it seems a lot more interesting than "lol, time travel"
01:59:17 <ais523> Bike: it is
01:59:21 <Sgeo> <Sgeo> Someone in another channel is talking about fixing Smalltalk with time travel.
01:59:22 <Sgeo> <saijanai_> in fact, VPRI is already working on that google: VPRI worlds
01:59:23 <ais523> my problem's that it drives me mad
01:59:25 <Fiora> @wikipedia Common Language Infrastructure
01:59:25 <lambdabot> Unknown command, try @list
01:59:30 <Fiora> oh, there isn't a wiki one :<
01:59:32 <Bike> i know what CLI is
01:59:34 <ais523> like, it feels like it /should/ work
01:59:40 <ais523> just I can't make it do so
01:59:48 <Bike> ais523: isn't that common for ideas
02:00:41 <ais523> Bike: not really, I haven't come across anything quite this bad
02:00:48 <Bike> sucks
02:00:49 <ais523> my record for things like that is around 2-3 weeks, and that was part of my job
02:00:52 <ais523> Feather, it was months at least
02:01:10 <Bike> Fiora: i guess i was wondering about questions like, how do you distribute a module as an object when you have to worry about garbage collection? can you just link something libc-ish? stuff like that
02:01:30 <Fiora> isn't that the runtime's job?
02:01:45 <Bike> well what is "the runtime"
02:01:55 <Bike> libc?
02:02:18 <Fiora> C doesn't really have one?
02:02:19 <Fiora> but like, java does
02:02:37 -!- augur has joined.
02:02:45 <Bike> that's the sort of question i'm wondering about i guess
02:02:52 <Bike> and i'm not sure you can say "C has one" or "Java has one" even
02:02:59 <Bike> the runtime system is more like the OS as a whole in C's case
02:03:04 <shachaf> Whether C "has a runtime" depends on what you compile it to.
02:03:15 <Bike> yeah
02:03:51 <Bike> and you could say the same for java-the-language, probably
02:03:58 <shachaf> Surely.
02:03:59 <ais523> "'C' is a recursive acronym. It stands for 'C'."
02:04:02 <ais523> Bike: yeah, gcj exists
02:04:10 <ais523> admittedly, it mostly exists to be a counterexample
02:04:11 <Bike> that's java to native?
02:04:21 <shachaf> That doesn't mean it doesn't have a runtime.
02:04:32 <shachaf> GHC certainly does.
02:04:37 <Bike> It does?
02:04:38 <ais523> Bike: yes
02:04:51 <Bike> I don't know much about GHC, I know it compiles to .o's though?
02:04:51 <ais523> err, yes gcj is java to native
02:05:13 <ais523> normally I disambiguate with the nickping, but it doesn't work in this context
02:05:28 <Bike> i understood anyway
02:05:49 <shachaf> Bike: GHC typically compiles Haskell to x86 machine code in .o files, yes.
02:05:58 <Bike> So what's the runtime?
02:06:05 <shachaf> These are then linked to the GHC RTS, which is a 50,000 line C and C-- library.
02:06:06 -!- Frooxius_ has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204]).
02:06:13 <shachaf> It does garbage collection and such.
02:06:18 -!- Frooxius has joined.
02:06:18 <shachaf> (There's a lot of "such".)
02:06:27 <Bike> mm, so like libc so then libhaskell, i suppose
02:06:38 * ais523 wonders about the existence of job posts requiring "C/C-- experience"
02:06:44 <shachaf> Sort of.
02:06:58 <Bike> Please, elaborate on "sort of", don't let me continue in delusion
02:07:16 <shachaf> I think maybe these are meaningless discussions now.
02:07:29 <shachaf> No GHC-generated code will function without the runtime.
02:07:57 <ais523> whereas C code can function without libc
02:08:02 <ais523> it's more like libgcc, I guess
02:08:10 <ais523> or crt0
02:08:22 <ais523> (just a lot larger than either of those, which are intentionally small for obvious reasons)
02:08:56 <shachaf> I would probably say that GCC C has an RTS too, though it does less than GHC's RTS.
02:09:03 <ais523> (libgcc is used to implement language features that the target doesn't have, such as multiplication on platforms where multiplication doesn't exist; crt0 is used to set up the runtime)
02:09:03 <shachaf> But I think it's a bit of a meaningless discussion.
02:09:20 <ais523> normally, when you do printf or the like, you're calling out to libc
02:09:20 <kmc> yes, a primitive-looking thing like + in GCC can compile to a function call into crt0.a
02:09:24 <ais523> but in theory, you could write your own
02:09:29 <kmc> oh yes ais523 just said that
02:09:42 <ais523> kmc: libgcc's been split from crt0 at least since I worked on gcc-bf
02:09:53 <kmc> "runtime library" is different from "virtual machine" although it might be hard to draw a perfectly sharp line as well
02:09:55 <shachaf> kmc: How did your libc-free network server go?
02:09:58 <kmc> shachaf: it works
02:10:06 <Bike> hah, osdev as a twenty-line crt0 implementation
02:10:10 <shachaf> I seem to remember it had some big secret associated with it or something.
02:10:16 <kmc> no
02:10:21 <shachaf> No?
02:10:22 <ais523> things I discovered doing that: libgcc does not like being called recursively in order to emulate a 64-bit multiply in terms of 32-bit multiplies in terms of 16-bit multiplies in terms of 8-bit multiplies
02:10:22 <shachaf> OK.
02:10:49 <ais523> other things I discovered doing that: yes, you /can/ run a Perl script halfway through compiling gcc in order to alter its generated Makefiles
02:10:50 <Bike> uh.
02:11:16 <kmc> the state of a GHC-compiled program can be understood as a state of a virtual machine (STG machine) but the code running is ahead-of-time native-compiled code
02:11:35 <kmc> some of the operations on that virtual machine are implemented as inline compiled code, others are calls into the runtime library
02:12:09 <shachaf> Do you know what "spineless" means, by the way?
02:12:11 <shachaf> Maybe I asked that before.
02:12:13 <kmc> shachaf: not precisely
02:12:14 <ais523> gcc-bf's build system is amazing, in the elliott sense of amazing
02:12:34 <kmc> C++ is a better example of a typically native-compiled language with typically a big runtime library
02:12:48 <shachaf> Or Objective C, maybe.
02:12:54 <coppro> http://open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3514.pdf hasthe best title
02:12:57 <shachaf> Objective C is kind of bizarre.
02:13:07 <kmc> remember that 'new' is a keyword in C++; whatever allocator that invokes has a more special status than the ordinary library function malloc()
02:13:24 <kmc> maybe that's a bad example because ::operator new is an ordinary function, albeit a strangly named one
02:13:59 -!- saijanai_ has joined.
02:14:02 <ais523> btw, is it theoretically possible to implement malloc in terms of new?
02:14:18 <ais523> my guess is that it'll come down to a technicality either way
02:14:36 <saijanai_> hey all someone was talking about implementing time travel in smalltalk?
02:14:41 <Sgeo> saijanai_, there are logs, that would probably be better than asking ais523 to repeat his monologue
02:14:50 <Bike> oh. that's why.
02:14:53 <Sgeo> And it's not an implementation in Smalltalk, it would be a different language.
02:14:55 <ais523> err, oh dear
02:15:06 <Bike> sorry ais.
02:15:26 <ais523> saijanai_: it's probably for the best to avoid the subject
02:15:40 <Sgeo> My fault
02:15:43 <ais523> I was working on something that vaguely resembled that but not really a while ago
02:15:49 <ais523> and have since mostly abandoned it
02:16:18 <ais523> but I added an explanation to http://esolangs.org/wiki/Feather in order to have something to link people to
02:16:23 <saijanai_> ah, ais523 have you ever heard of VPRI and worlds?
02:16:27 <ais523> no
02:16:42 <saijanai_> http://www.vpri.org/pdf/tr2011001_final_worlds.pdf
02:17:09 <ais523> it probably wouldn't be particularly appropriate to what I'm doing
02:17:35 <saijanai_> it was first created to allow Ometa to do some really powerful lookahead parsing, and then reconcevied a universal kind of undo with extras
02:17:53 <ais523> that doesn't seem quite as far-reaching as what I was doing
02:17:56 <ais523> also, it seems a lot saner
02:18:20 <saijanai_> A programming language that supports worlds must provide some way for program- mers to:
02:18:21 <saijanai_> – refer to the current world, – sprout a new world from an existing world, – commit a world’s changes to its parent world, and – execute code in a particular world.
02:18:37 <ais523> yeah, it actually seems like more or less the opposite of what I'm doing
02:18:47 <ais523> the hard problem is to be able to make a change to the parent and cause that to change what happened in the children
02:19:09 <ais523> which is a problem that's already been solved (continuations), so it wouldn't seem like this would be so difficult
02:19:10 <ais523> turns out, it is
02:19:20 <saijanai_> well, that's inherent in the committing changes to the parent
02:19:52 <saijanai_> if you don't want children to change, you'd need to clone the parent and change that instead, if I understand things
02:20:38 <ais523> I don't think you really understand the problem; but that's good, because not only does /nobody/ really understand the problem, it's also not a particularly fruitful one to work on
02:20:46 -!- augur has quit (Remote host closed the connection).
02:20:55 <Bike> welcome to #esoteric?
02:21:03 <Sgeo> `welcome saijanai_
02:21:05 <HackEgo> saijanai_: 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.)
02:21:33 <shachaf> the international hub for clojure and esoteric programming language design and deployment!
02:22:06 <monqy> clojure/factor/racket/smalltalk(?????????????????????)
02:22:08 <Bike> you know, we actually are talking about an esolang partly inspired by deployment issues
02:23:21 <saijanai_> ais523 there's actually a multii-player virtual reality game that implements time travel. I can look up the name if youi want
02:23:42 <Bike> i don't think time travel is really the core issue
02:24:01 <Sgeo> My fault for saying the words time travel
02:24:46 * Sgeo is curious about that game... unless it's that RTS one that changes come in waves or something
02:24:49 <saijanai_> http://www.achrongame.com/site/  
02:25:13 <Bike> you don't like achron, sgeo?
02:25:37 <Sgeo> It costs money. And also it's not the model of time travel that _really_ holds my interest
02:26:03 <Sgeo> (immutable single timeline)
02:26:23 <saijanai_> sgeo are you familiar with croquet/openqwak or cobalt
02:26:25 <saijanai_> ?
02:26:34 <Bike> aren't those super dead?
02:26:45 <Sgeo> saijanai_, I've had some interest, but haven't really played around
02:26:47 <saijanai_> hopefully not
02:27:02 <saijanai_> in suspension for a while
02:27:14 <Sgeo> Does OpenQwak or OpenCobalt have some sort of entry world to hang out with others?
02:27:19 <Sgeo> That would be nice
02:27:21 <saijanai_> but there's stuff you can do with teatime you still can't do with any other system?
02:27:22 <Bike> http://www.opencroquet.org/ yeeeeeaaaaaah
02:27:38 <Sgeo> And a sandbox where multiple people can build stuff and script stuff together
02:27:42 <Sgeo> teatime?
02:27:52 <ais523> saijanai_: I'm aware of Achron
02:27:58 <Sgeo> Bike, I think OpenCroquet is the foundation on which OpenCobalt is built
02:28:06 <saijanai_> David Reed's first stab at distributed p2p serving
02:28:06 <ais523> its time travel model is quite different from Feather's, and somewhat arbitrary in order to make the gameplay work
02:28:25 <Bike> aren't there a few papers on achron?
02:28:44 <Bike> i read at some point a bit about how the main guy wanted to use the time travel stuff for reversible computing and well anything more practical than an RTS
02:29:02 <saijanai_> Bike, that is where worlds would come in
02:29:37 <saijanai_> worlds + teatime would be very interesting
02:30:03 <coppro> also the list on page 7 is awesome
02:30:17 -!- ais523 has left ("""").
02:30:34 <Sgeo> :(
02:30:41 <saijanai_> coppro list? page 7?
02:31:04 <elliott> qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:31:12 <Bike> r?
02:31:14 <elliott> q
02:31:18 <Bike> oh
02:31:32 <coppro> http://open-std.org/JTC1/SC22/WG21/docs/papers/2013/n3514.pdf
02:35:16 <ion> qqqqqqq: qqqqq qq?
02:35:29 <monqy> yes
02:35:56 <shachaf> :∩)
02:36:19 <monqy> yes
02:37:27 <ion> yes
02:38:19 <shachaf> :≟)
02:38:26 <monqy> no
02:38:28 <shachaf> no?
02:38:31 <monqy> yes
02:38:37 <shachaf> :⊡)
02:39:19 <ion> yes
02:39:42 <shachaf> :⏎)
02:41:02 <ion> ?- exists(shachaf).
02:41:02 <lambdabot> Maybe you meant: . ? @ v
02:43:15 -!- sivoais has quit (Ping timeout: 252 seconds).
02:55:08 -!- copumpkin has quit (Ping timeout: 252 seconds).
02:55:39 -!- copumpkin has joined.
02:59:04 -!- DHeadshot has joined.
03:00:20 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:00:26 -!- DH____ has joined.
03:12:37 <Sgeo> Is Morphic supposed to be "easy"?
03:12:53 <coppro> morphic?
03:14:13 <Bike> Sgeo: are you trying to knock shachaf off the wagon?
03:21:28 -!- DH____ has quit (Read error: Connection reset by peer).
03:25:31 -!- sebbu has quit (Ping timeout: 256 seconds).
03:32:44 * Sgeo gets a little spooked out by the method finder thingy
03:33:15 <monqy> is it spooky
03:34:21 <shachaf> am i spooky
03:34:33 <Sgeo> Typing 'eureka' . 'EUREKA' into it finds methods that do that
03:34:43 <Sgeo> It found asUppercase
03:35:52 <shachaf> What if you search for 1+0 records in 1+0 records out 512 bytes (512 B) copied, 3.1335e-05 s, 16.3 MB/s
03:36:22 <Sgeo> Hmm, I don't know if it only works when the first argument is the receiver of the method or not
03:36:27 -!- sivoais has joined.
03:36:46 <Sgeo> But even then, how could it know to avoid certain side-effecting methods?
03:37:37 -!- Bike has quit (Ping timeout: 248 seconds).
03:37:57 <Sgeo> Oh, there's a list of allowed methods
03:37:58 <Sgeo> o.O
03:39:21 -!- Bike has joined.
03:41:37 -!- ais523 has joined.
03:43:12 -!- Nisstyre-laptop has quit (Quit: Leaving).
03:43:45 <Sgeo> wb
04:04:57 -!- infnikiller64 has joined.
04:04:59 <infnikiller64> hi
04:05:49 -!- infnikiller64 has quit (Client Quit).
04:07:47 <monqy> hi
04:42:45 -!- hogeyui has quit (Ping timeout: 276 seconds).
04:46:03 -!- hogeyui has joined.
04:51:31 -!- ogrom has joined.
05:23:11 -!- odul has joined.
05:24:14 -!- odul has left ("wIRC").
05:24:21 <ais523> monqy: was that a hi of response, or a hi of disapproval?
05:24:23 <ais523> either works in context
05:28:53 <monqy> i forget
05:29:11 <monqy> both??? who knows
05:30:28 <shachaf> monqy: was it all three
05:31:18 -!- sebbu has joined.
05:32:02 <Sgeo> Possibly also none of the above.
05:45:00 -!- zzo38 has joined.
05:59:09 -!- augur has joined.
06:10:16 <Sgeo> `list
06:10:17 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
06:20:22 -!- Deewiant has quit (Remote host closed the connection).
06:32:43 -!- Deewiant has joined.
07:13:17 -!- oonbotti has quit (Ping timeout: 252 seconds).
07:38:14 -!- oerjan has joined.
07:41:35 -!- TeruFSX has quit (Ping timeout: 244 seconds).
08:17:32 <oerjan> `addquote <ais523> in Smalltalk, as in Feather, in order to do I/O, you must first create the universe <Sgeo> ais523, it seems quite capable of I/O... GUI is a form of I/O <ais523> Sgeo: yeah exactly <ais523> where does the GUI come from? <ais523> it's written in Smalltalk, clearly <ais523> and how does the GUI do its I/O? <ais523> if you think about the issue for too long, you end up inventing Feather
08:17:39 <HackEgo> 923) <ais523> in Smalltalk, as in Feather, in order to do I/O, you must first create the universe <Sgeo> ais523, it seems quite capable of I/O... GUI is a form of I/O <ais523> Sgeo: yeah exactly <ais523> where does the GUI come from? <ais523> it's written in Smalltalk, clearly <ais523> and how does the GUI do its I/O? <ais523> if you think ab
08:17:48 <ais523> oerjan: it got cut off
08:18:02 <oerjan> `run quote 923 | rev
08:18:03 <HackEgo> rehtaeF gnitnevni pu dne uoy ,gnol oot rof eussi eht tuoba kniht uoy fi >325sia< ?O/I sti od IUG eht seod woh dna >325sia< ylraelc ,klatllamS ni nettirw s'ti >325sia< ?morf emoc IUG eht seod erehw >325sia< yltcaxe haey :oegS >325sia< O/I fo mrof a si IUG ...O/I fo elbapac etiuq smees ti ,325sia >oegS< esrevinu eht etaerc tsrif tsum uoy ,O/I o
08:18:24 <oerjan> only on output. didn't we already ask Gregor to fix that.
08:18:51 <oerjan> and even pinpoint the exact point in the code to change
08:19:20 <oerjan> (where it says "350")
08:19:56 -!- ais523 has quit.
08:22:33 <oerjan> `addquote <ais523> you can define Feather as "Smalltalk done right" if you want to confuse people into wondering why that would involve time travel stuff and all that
08:22:36 <HackEgo> 924) <ais523> you can define Feather as "Smalltalk done right" if you want to confuse people into wondering why that would involve time travel stuff and all that
08:25:25 <fizzie> Tuoba kniht uoy fi.
08:28:46 <oerjan> clearly that must be estonian.
08:29:53 <fizzie> The esoteric order of the knights of tuba.
08:30:00 <shachaf> helloerjan
08:30:19 <shachaf> enjoying "the logs??"
08:30:35 -!- epicmonkey has joined.
08:31:11 <oerjan> MAYBE
08:52:53 -!- epicmonkey has quit (Ping timeout: 244 seconds).
08:54:50 -!- Bike has quit (Ping timeout: 260 seconds).
09:16:59 -!- ais523 has joined.
09:23:33 -!- monqy has quit (Ping timeout: 248 seconds).
09:36:28 -!- sivoais_ has joined.
10:03:18 -!- epicmonkey has joined.
10:06:24 <oerjan> `pastelogs fueue.*
10:06:27 <oerjan> ff
10:06:39 <oerjan> `pastelogs fueue.*eof
10:06:53 <fizzie> Fueueof.
10:07:00 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.29434
10:07:07 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.424
10:07:35 <fizzie> Hey, the "fueueof" made it to the output. Funky.
10:09:29 <ais523> those numbers are widely varying
10:09:33 <ais523> does it just pick a random number?
10:09:42 <ais523> or is there some pattern that's just not obvious from two examples?
10:10:26 -!- monqy has joined.
10:10:39 -!- FreeFull has joined.
10:11:11 <oerjan> yes it's random
10:11:40 <oerjan> it seems http://codu.org/logs/_esoteric/2012-08-29.txt has the fueue eof discussion
10:12:14 <FreeFull> What you can do is have the compiler forcibly terminate the program on EOF no matter what
10:14:45 <oerjan> FreeFull: that disallows many programs from being written
10:15:16 -!- Phantom_Hoover has joined.
10:15:16 <oerjan> e.g. reversing the input is impossible
10:15:58 <fizzie> ais523: It's bash $RANDOM.
10:16:41 <fizzie> `run ls paste | wc -l
10:16:42 <HackEgo> 506
10:16:48 <oerjan> so the fueue eof situation is a mess. the C interpreter returns some negative number (usually -1 but not portably), the ocaml interpreter just throws an uncatched exception, and Taneb has not linked to his own interpreter so i don't know what it does.
10:18:43 <fizzie> `run echo 5k $(ls paste | wc -l) 32768/100*n | dc
10:18:44 <HackEgo> 1.54400
10:18:55 <fizzie> It's already 1.5% full.
10:18:55 <oerjan> ok http://hpaste.org/73921 is probably from Taneb's so it also throws an exception.
10:19:12 <fizzie> (Not that bin/paste tries to avoid existing pastes or anything.)
10:19:42 <oerjan> and in any case i have no way of distinguishing -1 from 0 while also distinguishing different positive characters.
10:20:07 <fizzie> oerjan: You can just rule out files that ever end, aren't those pretty rare anyway?
10:20:18 * oerjan swats fizzie -----###
10:23:09 <ais523> fizzie: this seems like a good way to do paste expiry, really
10:23:14 <ais523> they expire after a random length of time
10:23:55 -!- monqy has quit (Ping timeout: 256 seconds).
10:26:28 -!- asiekierka has quit (Excess Flood).
10:32:39 -!- asiekierka has joined.
10:50:21 <ais523> oerjan: hmm, I want to put that in an esolang spec, now
10:50:37 <ais523> "reading past end of file does something random and poorly-defined, possibly crashing the program"
10:50:46 <oerjan> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
10:50:50 <oerjan> you evil man
10:51:26 <ais523> me? evil?
10:51:39 <fizzie> Well, "ais523" backwards *is* "evil".
10:51:45 <oerjan> indeed.
10:51:58 <ais523> btw, reading past EOF in INTERCAL causes an unrecoverable fatal error, and there's no way to determine where it is unless you read past it
10:52:12 <ais523> this strikes me as not entirely optimal in terms of I/O capabilities
10:57:05 <ais523> (the obvious fix to this problem, of course, is the CLC-INTERCAL method, whereby you can simultaneously read and not read from the file, and then simultaneously check and not check whether an error was thrown
10:57:23 <ais523> (you need to hedge in the second case, because checking to see if there's been an error throws an error if there wasn't one, obviously)
10:57:26 <ais523> )
11:00:45 -!- ogrom has quit (Ping timeout: 256 seconds).
11:03:07 <oerjan> I SENSE THIS FIX HAS PROBLEMS
11:17:36 <FreeFull> ais523: How about have it crash only half the time
11:30:59 -!- ais523 has quit (Ping timeout: 244 seconds).
11:32:01 -!- asiekierka has quit (Excess Flood).
11:36:09 -!- asiekierka has joined.
11:47:53 -!- zzo38 has quit (Remote host closed the connection).
12:16:45 -!- oerjan has quit (Quit: leaving).
12:23:48 -!- oonbotti has joined.
12:31:36 -!- ais523 has joined.
12:52:44 -!- Arc_Koen has joined.
13:31:26 -!- Taneb has joined.
13:32:06 -!- FreeFull_ has joined.
13:32:11 -!- FreeFull has quit (Read error: Connection reset by peer).
13:43:59 -!- FreeFull_ has changed nick to FreeFull.
13:48:15 -!- Taneb has quit (Quit: Page closed).
14:03:53 -!- ais523 has quit (Ping timeout: 245 seconds).
14:15:23 -!- variable has quit (Ping timeout: 246 seconds).
14:19:35 -!- epicmonkey has quit (Remote host closed the connection).
14:19:46 -!- epicmonkey has joined.
14:32:11 -!- TeruFSX has joined.
14:39:18 -!- boily has joined.
14:46:40 -!- boily has quit (Quit: Poulet!).
14:48:57 -!- boily has joined.
15:36:20 -!- Rajni has joined.
15:37:08 -!- Rajni has left.
15:48:54 <Gregor> <oerjan> only on output. didn't we already ask Gregor to fix that. // "fix" doesn't mean anything. I have to have SOME cutoff, and I don't know which is best.
15:55:51 <elliott> Gregor: well you could just limit it to 512 and let the server cut it off
15:55:53 <elliott> does that work?
15:56:39 <Gregor> I seem to recall setting a limit for a reason X-D
15:56:48 <Gregor> Though perhaps it's just that the server gets mad if you go waaaaaaaay over.
15:57:40 <elliott> Gregor: also because otherwise infinite output will hang you
15:58:31 <Gregor> Naw, my reader has a limit of 1024 or something thereabouts.
16:11:27 <quintopia> 1024 doesnt say waaaaaaaay over
16:15:05 <c00kiemon5ter> IRC messages are always lines of characters terminated with a CR-LF
16:15:05 <c00kiemon5ter> (Carriage Return - Line Feed) pair, and these messages SHALL NOT
16:15:05 <c00kiemon5ter> exceed 512 characters in length, counting all characters including
16:15:05 <c00kiemon5ter> the trailing CR-LF. Thus, there are 510 characters maximum allowed
16:15:05 <c00kiemon5ter> for the command and its parameters. There is no provision for
16:15:07 <c00kiemon5ter> continuation of message lines.
16:18:22 <c00kiemon5ter> so 510 - strlen("PRIVMSG :") = 501 chars for the actual message, as defined by the rfc
16:21:24 -!- sivoais has quit (Quit: leaving).
16:22:53 -!- sivoais_ has quit (Quit: leaving).
16:23:48 -!- sivoais has joined.
16:24:44 <c00kiemon5ter> `welcome sivoais
16:24:46 <HackEgo> sivoais: 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.)
16:26:44 <Sgeo> "October 27, 2009: A South Korean pig farmer, who was wanted for assault, cut a hole in the DMZ fence and defected to North Korea.[16]"
16:27:11 <Sgeo> Hard to imagine someone defecting to North Korea
16:27:12 <c00kiemon5ter> wut
16:27:20 * Sgeo is reading http://en.wikipedia.org/wiki/Korean_Demilitarized_Zone
16:29:13 <Sgeo> "The Axe Murder Incident in August 1976 involved the attempted trimming of a poplar tree which resulted in two deaths (CPT Arthur Bonifas and 1LT Mark Barrett) and Operation Paul Bunyan."
17:14:38 -!- ogrom has joined.
17:23:28 -!- FreeFull has quit (Read error: Operation timed out).
17:24:39 <Sgeo> ....
17:24:47 <Sgeo> String>>translate doesn't actually do anything, wtf
17:25:02 <Sgeo> It uses NaturalLanguageTranslator class>>translate:
17:25:08 <Sgeo> And that just returns its argument
17:25:24 <c00kiemon5ter> maybe not implemented yet, just a stub
17:25:36 <Sgeo> "A NaturalLanguageTranslator is a dummy translator.
17:25:36 <Sgeo> The localization framework is found in the gettext package."
17:25:50 <Sgeo> So, is this gettext package supposed to modify String>>translate?
17:25:54 <Sgeo> That's kind of creepy
17:38:10 -!- variable has joined.
18:00:17 -!- Bike has joined.
18:01:20 -!- augur has quit (Remote host closed the connection).
18:27:06 -!- sirdancealot has quit (Ping timeout: 252 seconds).
18:32:23 <kmc> http://geekfeminism.org/2013/01/21/re-post-hiring-based-on-hobbies-effective-or-exclusive/
18:33:32 <Bike> amateur robotics impractical, heheh
18:34:19 <kmc> "I’ve seen other people imply that there’s something even morally suspect about somebody working an engineering job just for the money... Of course, that’s classist. It’s easier to feel like you’re motivated by the sheer love of your work if you don’t really need the money."
18:36:21 -!- augur has joined.
18:40:35 -!- augur has quit (Read error: Connection reset by peer).
18:40:38 -!- augur_ has joined.
18:45:28 <Phantom_Hoover> kmc, i like how that's a re-run of an article from 2 months ago
18:48:06 <kmc> it is
18:48:14 <c00kiemon5ter> “Is requiring Open Source experience sexist?”
18:48:22 <c00kiemon5ter> wut
18:48:24 <kmc> i hadn't seen it 2 months ago because i was not subscribed yet
18:48:59 <Sgeo> Do I count as having open-source experience for having pushed minor patches into stuff
18:49:05 <Sgeo> (And one of those patches was broken)
18:49:08 <Bike> c00kiemon5ter: you could read the article
18:49:56 <Bike> Sgeo: for your resume? seriously just be as positive and reaching as you can
18:50:20 <Sgeo> I'm done editing resume I think
18:50:21 <Sgeo> Or well, at least for now
18:50:29 <Sgeo> Maybe I'll try to tweak it more later on
18:51:19 -!- sivoais has quit (Ping timeout: 252 seconds).
18:52:44 -!- epicmonkey has quit (Ping timeout: 244 seconds).
18:54:37 -!- sirdancealot has joined.
18:55:33 -!- sebbu has quit (Ping timeout: 245 seconds).
18:59:32 <kmc> c00kiemon5ter: let me guess, you're smart and educated, therefore the idea that your behavior might be unintentionally sexist is absurd
19:00:53 <Phantom_Hoover> can we not do this please
19:01:02 <kmc> probably
19:01:06 <Phantom_Hoover> because i well end up annoyed with everyone involved, myself included
19:01:14 <Phantom_Hoover> *will
19:01:59 <elliott> I'm kind of bored so I'd actually like to keep going
19:02:07 <elliott> will sit on kmc's side of the stadium and munch some popcorn
19:02:56 <Bike> i feel like i should make some comparison like "[haskell thing that seems weird on the surface but isn't really]" nonhaskeller: "wut", but i can't think of anything. woe
19:03:09 <elliott> Bike, Bike
19:03:11 <elliott> you're trying too hard
19:03:19 <elliott> :(
19:03:21 <Bike> i'm a tryhard :(
19:03:25 <elliott> aye
19:03:26 <elliott> me too
19:03:46 * Bike sadly pedals off on his non-fixie
19:03:58 <Bike> (can you picture a bike riding a bike)
19:04:07 <elliott> thats hard
19:04:16 <kmc> well i've seen lots of those double height hipster bikes
19:04:17 <Phantom_Hoover> with some difficulty, yes
19:04:26 <elliott> kmc: what
19:04:42 <Bike> truly, hipster bike technology is lightyears ahead of ours
19:04:52 <Bike> http://farm3.staticflickr.com/2602/3913184301_0346b553bd_z.jpg Uh.
19:05:01 -!- Arc_Koen has quit (Quit: The struct held his beloved integer in his strong, protecting arms, his eyes like sapphire orbs staring into her own. "W-will you... Will you union me?").
19:05:04 <kmc> Bike: except for gears or freewheeling :3
19:05:08 <Bike> I don't... I don't really understand what this is
19:05:20 <kmc> a super tall bike
19:05:26 <kmc> probably made by welding together a few bike frames
19:05:28 <Bike> http://bikehugger.com/images/blog/double_decker.jpg is this a joke
19:05:32 <kmc> i see them around cambridge sometimes
19:05:45 <elliott> Bike: that just makes me think of a penny farthing
19:05:46 <kmc> it's exciting to see someone mount one, they have to hold onto a sign pole or something
19:05:48 <Bike> what's it for? more cargo capacity?
19:05:49 <Bike> elliott: same
19:06:06 <kmc> they also come perilously close to the trolleybus wires
19:06:08 <elliott> also who invented penny farthings
19:06:09 <elliott> and why
19:06:21 <Bike> at the food bank people with no cars sometimes have a lot of trouble loading their food on, maybe they could use double deckers
19:06:22 <kmc> elliott: it was before gears
19:06:24 <kmc> on bikes
19:06:29 <elliott> Bike: i like how that latter one looks like a cube
19:06:31 <elliott> the middle bit
19:06:40 <Bike> whoa, it does
19:06:45 <Bike> optical bike
19:06:48 <kmc> elliott: so the driving wheel needed to be really huge
19:06:49 <elliott> tesseract bike please
19:06:58 <elliott> kmc: ok but they look so stupid
19:07:00 <kmc> yes
19:07:05 <Phantom_Hoover> an actual cube bike
19:07:08 <kmc> you know what else looks stupid? everything from that era
19:07:13 <Bike> apparently penny farthings were also called "man slicers"
19:07:13 <Phantom_Hoover> wheels on two adjacent corners
19:07:24 <Bike> i feel like this should be an obscure but amusing gay slang, nowadays
19:07:33 <kmc> what about this guy http://upload.wikimedia.org/wikipedia/commons/0/0e/Harvey_Cable_Car.jpg
19:07:38 <kmc> Bike: haha
19:08:02 <Bike> i like the people on the ground
19:08:05 <Bike> "is this dude serious"
19:08:07 -!- sebbu has joined.
19:08:24 <kmc> yeah
19:08:27 <kmc> they're probably his investors
19:08:34 <kmc> might be making side bets on whether he dies, to hedge
19:08:58 <kmc> this was the first rapid transit in manhattan
19:09:01 <kmc> fsvo "rapid transit"
19:09:15 <Bike> "above walking speed transit"
19:09:26 <Bike> http://en.wikipedia.org/wiki/File:Velocipede_Michaux-1.jpg apparently the bikes before penny farthings didn't look idiotic, elliott
19:09:40 <Bike> other than having wooden wheels...
19:09:46 <Phantom_Hoover> http://en.wikipedia.org/wiki/Michaux-Perreaux_steam_velocipede
19:09:58 <Bike> yeah i don't even know what the fuck is with that
19:10:06 <olsner> hmm, read that as a steam centipede
19:10:08 <Phantom_Hoover> steampunk!!!
19:10:26 <Bike> http://en.wikipedia.org/wiki/File:Daimler_Reitwagen.JPG now this, this looks steampunk
19:10:34 <Bike> the irony being it's an ICE not steam i guess
19:11:16 <elliott> Bike: i like how it looks like it has a dead bird for a seat
19:11:21 <c00kiemon5ter> kmc, no, I am very open to re-thinking and critisizing every thing I do and say, and every thing that presents itself as the "default" or "normal" or "right" or whatnot
19:11:31 <Phantom_Hoover> oh christ, here we go
19:11:34 <c00kiemon5ter> :D
19:11:44 <Bike> hey, hey, don't be dissing a conversation before it starts
19:11:47 <Phantom_Hoover> why are you both waiting 10 minutes between replies
19:11:53 <olsner> (which btw is not a mechanical steam-driven centipede, but a deadly poisonous centipede that can also burn you with steam)
19:11:55 <Bike> is what i should have said ten minutes ago but i was distracted by my brethern
19:11:58 <Bike> bretheren
19:12:02 <c00kiemon5ter> I was reading :P both those articles
19:12:04 <elliott> Bike: the term is "bikes"
19:12:06 <olsner> *poisonous steam
19:12:09 <Bike> bikeren??
19:12:11 <Phantom_Hoover> Bike, well i suppose we have been having some vaguely intelligent debates these days
19:12:12 <elliott> hm I could buy bretheren as an arcane plural for bik
19:12:13 <elliott> e
19:12:21 <Bike> pff
19:12:32 <Phantom_Hoover> the idiot well has dried up, it seems
19:12:37 <kmc> bicycleaux
19:12:45 <kmc> the jerk store called, they're out of you
19:12:59 <Bike> don't worry, i'm sure we can get people saying dumb things about something
19:13:03 <Bike> what do you all think about engels
19:13:05 <Phantom_Hoover> elliott, the plural of bike is bake
19:13:11 <Phantom_Hoover> or is that the past tense
19:13:20 <kmc> Bike: i liked communism before it was cool
19:13:24 <Bike> no, a bake is a baby bike
19:13:42 <Bike> the plural of "bike" is "bike", but you pronounce it "beekay"
19:13:43 <Phantom_Hoover> i don't think they exist
19:13:56 <kmc> the past The plural of surgeon general is surgeons general. The past tense of surgeons general is surgeonsed general.
19:14:01 <kmc> whoopsie
19:14:05 <kmc> "not drunk"
19:14:24 <Phantom_Hoover> isn't it still america afternood
19:14:28 <Phantom_Hoover> *n
19:14:33 <Phantom_Hoover> "not in a freezing room"
19:14:39 <Bike> man remember when quoting (the first) portal didn't drive all good people into an irritated rage
19:14:42 <Bike> those were good times
19:14:44 <kmc> haha
19:14:49 <kmc> maybe it's back
19:15:17 <Bike> i didn't really have the same thing happen with portal 2, other than watching the sphere compilation videos a few times. maybe... i've grown up........
19:15:27 <elliott> i hear the cake is a lie (i've never finished portal 1 :( )
19:15:36 <elliott> (my computer broke the day after I got like half-way through ti)
19:15:37 <elliott> *it
19:16:00 <Phantom_Hoover> what about the lesser-known portal references
19:16:03 <Phantom_Hoover> are there any of those
19:16:14 <Bike> you could quote the cake recipe
19:16:58 <c00kiemon5ter> soo, I do not think that when you are hiring for engineering, giving extra credit/linking to someone that is interested and contributes to FOSS is a bad thing. I find it reasonable, as the way I see it, is sort of an extra in the candidate's experience. However, "removing points" because he has no such contribution or interest is silly.
19:17:26 <Bike> back in high school a guy printed out the entire script of portal 1 and was reading it out during a field trip. it's possible i'm mentally scarred
19:17:37 <kmc> c00kiemon5ter: i'm not sure that's logically consistent
19:17:48 <kmc> what's the important difference between "adding points" and "not removing points"
19:17:54 <Fiora> I think adding points for X is equivalent to... right
19:18:12 <Phantom_Hoover> no it's not
19:18:19 <Phantom_Hoover> uh
19:18:21 <Phantom_Hoover> wait right it is
19:18:22 <Bike> hm, i should remember this the next time i'm foolish enough to get into an argument about affirmative action
19:18:27 <elliott> Phantom_Hoover: good job
19:18:37 <c00kiemon5ter> no it is not inconsistent
19:18:39 <Phantom_Hoover> maybe im on the wrong degree course
19:18:55 <elliott> Phantom_Hoover: should have gone with computer science : )
19:19:01 <c00kiemon5ter> you are hiring a software engineer and you ask him what his interests are
19:19:07 <Bike> "him"
19:19:11 <kmc> always "him" eh
19:19:15 <c00kiemon5ter> ..
19:19:19 <Phantom_Hoover> c00kiemon5ter, given the subject of discussion probably don't use gendered pronouns
19:19:30 <c00kiemon5ter> I do not know what to use
19:19:34 <kmc> "them" is fine
19:19:36 <c00kiemon5ter> what is the right word in English
19:19:39 <c00kiemon5ter> :)
19:19:40 <Bike> singular they is what all the cool kids use, but anyway, not that important
19:19:57 <Fiora> "them", "him or her", or just "her" if you're really lazy and/or writing an RPG rules book :P
19:19:58 <kmc> for the record I'm not saying we need to ignore OSS experience (nor am I saying I agree with everything in that article)
19:20:08 <c00kiemon5ter> so, you are hiring a software engineer and you ask them what their interests are
19:20:17 <kmc> just you need to be aware of the social context of who can and can't contribute to OSS. it's not a meritocracy.
19:20:39 <kmc> so maybe we should rely on it a bit less
19:20:51 <kmc> i think acting like you're not a good programmer unless you eat and breathe and shit programming 24/7 is stupid
19:20:54 <elliott> use spivak so you can pretend you're playing agora nomic
19:20:59 <kmc> not just stupid on social justice grounds, stupid in general
19:21:05 <kmc> it makes our entire field look silly and immature
19:21:15 <kmc> like we can't handle the idea of having a job, doing that job well, and then getting paid for that job
19:21:29 <Bike> elliott: do they actually use spivak? I didn't think anyone actually did besides some MOOs... wait.
19:21:29 <Phantom_Hoover> kmc, i think this is similar to the brogrammer thing
19:21:38 <kmc> of course certain companies like Google want to perpetuate this state of affairs because it lets them maintain a tighter grip on their employees and their all-consuming infatuation with The Company
19:21:39 <elliott> Bike: yes
19:21:53 <elliott> Bike: in fact agora is a descendent of nomicworld which was played on a mud
19:21:55 <Phantom_Hoover> programming just hasn't developed consistent standards of professionalism
19:21:58 <Bike> elliott: fucking knew it
19:22:00 <elliott> perhaps that is why it uses spivak though I hear it used singular they originally
19:22:26 <Fiora> kmc: I feel like it's one thing to contribute to open source, another to /get your patches accepted/, yet another to be someone major
19:22:30 <Phantom_Hoover> don't use spivak
19:22:35 <Bike> kmc: now i want to find something comparing google to 19th century company towns `-`
19:22:36 <Phantom_Hoover> it makes you sound like you're a cockney
19:22:51 <c00kiemon5ter> kmc, right, I agree on that
19:22:55 <Fiora> the former is easy enough, the middle might depend on things totally out of your control, the latter requires a huge dedication and destruction of free time
19:23:03 <elliott> Phantom_Hoover: which kind
19:23:27 <Phantom_Hoover> the... one which makes you sound like a cockney
19:23:31 <Fiora> so like "here's my github, here's 20 hours of open source work I did" isn't too unreasonable I guess?
19:23:47 <Phantom_Hoover> for 'e's a jolly good fellow, etc.
19:24:04 <Phantom_Hoover> http://en.wikipedia.org/wiki/Spivak_pronoun
19:24:17 <Phantom_Hoover> i love how happy all those examples are
19:25:11 <kmc> Phantom_Hoover: no standard of professionalism, and quite a few people who see the idea of professionalism or human decency as some kind of terrible oppression
19:26:15 <Fiora> Phantom_Hoover: the one I've heard a little bit at least is 'ze', 'hir', etc
19:26:29 <Fiora> which seems to be reasonably common among the genderqueer crowd
19:27:07 <kmc> startup culture is a backlash against big company bureacracy, the way that nerd culture is a backlash against people who picked on us in middle school
19:27:36 <kmc> and so much as nerds are compelled to dislike sports, startup hackers are compelled to dislike professionalism, 'policy' of any form, etc.
19:27:44 <Phantom_Hoover> Fiora, essentially the same problem; 'hir' just scans as 'her' for me.
19:28:34 <Fiora> huh. I never noticed that but I guess it might make sense given the whole "Brains ignore the middle letters" thing
19:28:42 <Phantom_Hoover> No, it's phonetic.
19:28:54 <elliott> hqr
19:28:58 <elliott> q pronounced as q
19:29:15 <Fiora> "hir" is pronounced as "heer" I think
19:29:27 <Bike> we don't ignore the middle letters, they have to be the same but the order doesn't matter, if you're thinking of that old "cambridge" chain mail
19:29:34 <Fiora> oh
19:29:47 <Fiora> I guess it's supposed to be a cross between "his" and "her"
19:30:21 -!- oerjan has joined.
19:30:26 <elliott> don't trust chain mail. it won't protect you from halberds
19:30:31 <Phantom_Hoover> I guess that might make sense, but 'hihr' is pretty awkward to pronounce.
19:30:34 <Bike> i mostly just use singular they because most people understand it without explanation, and dealing with prescriptivists will happen whenever
19:30:34 <elliott> literally looked up what chain mail was bad against on wikipedia for that
19:30:38 <elliott> you fuckers
19:30:41 <elliott> i do so much for you
19:30:41 <kmc> Fog Creek Software is unusually explicit about the fact that their corporate culture is "the opposite of Microsoft in 1994"
19:30:47 <Bike> i admire your commitment to that dumb joke, elliott
19:30:59 <elliott> Bike: just as i admire your commitment to being dumb all the time!!
19:31:00 <kmc> elliott: get thee to a ren faire
19:31:01 <Bike> kmc: hypothesis: all these people have read too much Dilbert
19:31:05 <Bike> elliott: :( :( :(
19:31:06 <kmc> Bike: haha yes
19:31:15 <kmc> i loved Dilbert when I was like 10 years old
19:31:31 <kmc> now it seems really dumb
19:31:58 <Bike> http://www.youtube.com/watch?v=l8AUPSfgk18 etc
19:31:59 <kmc> of course nobody doubts that horrible big company jobs exist, much as nobody doubts that nerds get picked on in middle school
19:32:16 <kmc> the question is, once you escape that, are you going to build a backlash or are you going to build something thoughtful and positive
19:34:19 <elliott> i think i'd like to sit around complaining on irc like kmc OH BURNNN
19:34:21 <elliott> j/k i like you
19:34:26 <elliott> but i have this quota see..
19:34:41 <kmc> yup
19:34:52 <elliott> kmc understands
19:35:03 <kmc> well i'm not at work so suck it
19:36:27 -!- AnotherTest has joined.
19:47:43 <kmc> Bike: wow that video is... what
19:48:00 <elliott> what is it
19:48:01 <elliott> oh
19:48:06 <elliott> dilbert 2
19:48:30 <elliott> kmc: have you then also not seen dilbert 3: http://www.youtube.com/watch?v=BEgtYOJ_qeM
19:48:33 <elliott> (nsfw in all kinds of ways)
19:48:58 <kmc> i guess i had better see it
19:49:18 <elliott> oh that's some reupload. http://www.youtube.com/watch?v=N7bwbl6UHU8
19:49:24 <elliott> high quality dilbert 3 direct download today
19:52:35 -!- augur_ has quit (Remote host closed the connection).
19:52:38 <kmc> is it real and fast?
19:55:41 <Bike> cboyardee is one of the guys behind https://s3.amazonaws.com/ksr/assets/000/284/786/d315644299e4c76a2cf3d282b9aa444f_large.gif?1354207645, so
19:55:42 -!- copumpkin has quit.
19:56:43 <elliott> kmc: no it's fake
19:56:45 <elliott> 100% authentic fake
19:56:59 -!- copumpkin has joined.
19:57:26 <Bike> also apparently the dilbert series was turned in as an actual art project at an actual school
19:57:45 <kmc> http://www.smbc-comics.com/comics/20130120.gif
20:00:04 -!- epicmonkey has joined.
20:01:43 <ion> When you link them like that the bonus image is missing.
20:02:25 <Fiora> bonus imgae?
20:02:27 <Fiora> *image
20:02:33 <Bike> yeah but biology hates math jokes are dumb
20:02:36 <Bike> Fiora: http://www.smbc-comics.com/comics/20130120after.gif
20:02:43 <Fiora> .... wow. I only just -- wow I've totally missed those all this time
20:02:50 <Bike> yeah i had the same reaction
20:03:14 <Bike> i think you're supposed to be donating to get them or something
20:03:44 <ion> Err, that doesn’t have anything to do with donations.
20:03:48 <Phantom_Hoover> ion, ads.
20:03:58 <Phantom_Hoover> it doesn't appear on the rss feed for that reason
20:04:10 <Bike> well i don't know how to get to the bonus images without manually changing the url, so
20:04:18 <ion> bike: Hover on the red button.
20:04:52 <Bike> ion: whoa.
20:06:46 <Phantom_Hoover> Fiora, http://www.irregularwebcomic.net/669.html
20:06:50 <elliott> did you know xkcd has title text (this one doesn't work because who reads xkcd any more :/)
20:07:05 <Bike> does goatkcd have title text
20:07:24 <Bike> also why can't i find any irregular webcomic strip funny? am i ill?
20:07:36 <Fiora> Phantom_Hoover: oh gosh
20:07:42 <Phantom_Hoover> you do not read iwc for the funny
20:07:45 <Phantom_Hoover> you read it for the dmm
20:07:52 <elliott> iwc is funny but it's not in the you're actually laughing way
20:08:22 <elliott> it's more like spending time with someone who is a funny person except instead of spending time with them you're reading their webcomic on the internet and are actually sad and alone
20:08:38 <elliott> based on a true story
20:08:40 <Bike> oh
20:09:02 <Phantom_Hoover> have i mentioned that my initials are the same as dmm's
20:09:05 <Phantom_Hoover> i kept it a secret
20:09:06 <Phantom_Hoover> for so long
20:09:21 <Phantom_Hoover> every time he was mentioned i yearned to reveal this interesting fact about myself
20:09:26 <Phantom_Hoover> but i had to maintain the facade
20:09:30 <Sgeo> Phantom_Hoover, dmm? Is that the same as reading it for the educational value?
20:09:32 <elliott> Phantom_Hoover: what is your middle name
20:09:36 <Bike> what the fuck is dmm
20:09:44 <elliott> david morgan-mar......
20:09:58 <Phantom_Hoover> Sgeo, no
20:10:06 <Phantom_Hoover> it's everything
20:10:12 <elliott> (he made irregular webcomic (and a bunch of esolangs))
20:10:20 <elliott> also um
20:10:24 <elliott> mezzacotta and stuff
20:11:07 <Sgeo> o.O
20:11:10 <Sgeo> What esolangs?
20:11:15 <Bike> oh right he made ook
20:11:17 <Bike> and piet I think?
20:11:25 <Bike> "a good brainfuck derivative"
20:11:35 <elliott> bit chef haifu
20:11:36 <elliott> hq9++
20:11:38 <elliott> petrovich
20:11:40 <elliott> whenever
20:11:41 <elliott> zombie
20:11:47 <elliott> this list quoted from that shitty wiki
20:11:53 <elliott> + the ones Bike mentionde
20:12:57 <Phantom_Hoover> Sgeo
20:12:59 <Phantom_Hoover> did you
20:13:00 <Phantom_Hoover> not know
20:13:01 <Phantom_Hoover> that dmm
20:13:04 <Phantom_Hoover> made esolangs
20:13:14 <Sgeo> Indeed, I did not know that.
20:13:14 <Bike> why are we talking like that
20:13:22 <Phantom_Hoover> to express astonishment
20:13:49 <Sgeo> Have you watched Puella Magi Madoka Magica?
20:13:52 <Sgeo> If not.
20:13:53 <Sgeo> why.
20:13:54 <Sgeo> haven't
20:13:54 <Sgeo> you
20:14:45 <Phantom_Hoover> the point is not that you haven't read iwc
20:15:12 <Phantom_Hoover> the point is that you knew of dmm but didn't realise he also did esolangs
20:15:23 -!- zzo38 has joined.
20:15:28 <Sgeo> Vaguely
20:15:36 <Sgeo> Maybe "knew of" is a bit too extreme
20:15:45 <Sgeo> Wait, is he the dangermouse person?
20:15:46 <Bike> did you know puell magi madoka magica also did esolangs
20:16:08 <Phantom_Hoover> why the fuck is there latin in that name
20:16:22 <Phantom_Hoover> is it roman anime or something
20:16:23 <zzo38> Someone said the same people who made GHC to write the report? I thought GHC is made by the Glasgow university, and the report is made by the Microsoft research department.
20:16:30 <Fiora> "puella magi" is how they translated "mahou shoujo"
20:16:41 <Bike> Phantom_Hoover: have yo useen the bathhouse anime
20:16:48 <Fiora> they were trying to keep the rather, erm. dark pun present in the original
20:16:52 -!- AnotherTest has quit (Quit: Leaving.).
20:16:53 <Bike> good anime imo
20:17:04 <Phantom_Hoover> Fiora, by... translating it into Latin.
20:17:16 <Fiora> it's not quite a translation
20:17:35 <Fiora> but hey, it's a retelling of faust, so close enough, right?
20:17:45 <olsner> `quote welsh
20:17:46 <Phantom_Hoover> What's the pun?
20:17:46 <HackEgo> 821) <Gregor> !rot13 Fluttershy Rainbow Dash Rarity Applejack Twilight Sparkle Pinkie Pie <EgoBot> Syhggreful Envaobj Qnfu Enevgl Nccyrwnpx Gjvyvtug Fcnexyr Cvaxvr Cvr <olsner> oh, they're all named after rot13'd welsh words
20:17:55 <Fiora> *PFFFF*
20:18:31 <Bike> Syhggreful is my kind of name
20:18:32 <Phantom_Hoover> ha ha, the welsh
20:18:36 <olsner> (just wanted to check what some of the pony names were)
20:20:09 <Fiora> Phantom_Hoover: mega spoilers in Japanese, "mahou shoujo" kanji-puns to be similar to the word for "witch", which is what all magical girls are doomed to become. "puella magi" iirc has the same effect, while "magical girl" doesn't
20:20:15 <Fiora> They're all called magical-girls in-story in the translation though.
20:20:45 <Phantom_Hoover> uh
20:20:51 <Phantom_Hoover> OK
20:21:17 <Fiora> at least that's what I think it is. I don't really know much about the translation, I only watched the fansubs
20:21:30 <Fiora> well, and the blu-ray I suppose <.<
20:21:31 <Phantom_Hoover> are you sure this translator was entirely aware of how puns work
20:22:02 <Fiora> I suppose it's less puns and more of urobochi's love for foreshadowing
20:22:33 <Bike> i thought "mahou shoujo" was just the usual term for magical girls
20:22:40 <Bike> since they're all a ripoff of Bewitched or something
20:22:55 <Fiora> Yeah, "mahou shoujo" is the standard term
20:23:03 <Fiora> dating back 30-40+ years
20:23:22 <Gregor> You know you've really broken your compiler when: hashTable.ts(151,12): public function return type has or is using private type 'bool'
20:24:09 <elliott> Gregor: nice
20:24:23 <Fiora> oh, um, Bike, I saw this challenge thing someone posted on ##c and decided to do it
20:24:28 <Fiora> http://pastebin.com/jrS5ntrQ
20:25:08 -!- md_5 has quit (Ping timeout: 245 seconds).
20:25:18 <Bike> does that include the sign bit
20:25:25 <elliott> @tell ais523 you made [[Feather]] less funny, is there anything we can do about that?
20:25:25 <lambdabot> Consider it noted.
20:26:00 <Fiora> I think it includes the sign bit
20:26:25 <Fiora> 17-24 is my attempt at an implementation to test against
20:26:30 <Fiora> (the problem didn't have it)
20:26:57 <Fiora> doing it in less than half the required ops was satisfying though
20:27:49 -!- md_5 has joined.
20:27:58 <olsner> your version is like three times as long
20:28:09 <Fiora> howManyBits isn't a valid solution though >.>
20:28:14 <Fiora> you have to do it without loops, ifs, etc
20:28:22 <Bike> no loop, though
20:28:23 <Bike> yeah
20:28:29 <Fiora> I just wrote it to test against
20:28:47 <Bike> but does it generalize to ints of any length??
20:28:57 <Fiora> I don't think that's possible in C XD
20:28:57 <elliott> Fiora: btw the logs don't show colours so you may want to stick to rot13 if you consider logreaders people (but who would)
20:29:14 <Fiora> um.... ?
20:29:21 <Bike> for your spoilers
20:29:23 <Fiora> oh.
20:29:37 <Fiora> sorry. used to using the ctrl-c color thing
20:29:38 <Bike> just think of pooerjan, he'll never be able to watch pool meduka
20:29:46 <Fiora> everyone has already seen madoka magica though
20:30:19 <Fiora> (actually they haven't and I was really shocked when a couple people I know not only hadn't seen it, but somehow had completely avoided spoilers even though all their friends were fans, I don't even know how that's actually possible)
20:30:36 <Bike> heavy use of rot13 i bet
20:31:02 <Bike> also, i'm thinking "poørjan" would be better.
20:31:10 <olsner> pøørjan
20:35:08 -!- md_5 has quit (Ping timeout: 245 seconds).
20:37:49 -!- md_5 has joined.
20:38:35 <Fiora> huh,I googled the problem and the original disallows constants outside of the range of 0-0xff
20:38:42 <Fiora> that only took 5 ops to work aruond <.<
20:38:51 <Fiora> int neg1 = ~0; and everything magics
20:39:02 <kmc> zzo38: the main GHC developers have been at MSR for a while
20:40:06 <elliott> kmc: rip simon marlow :(
20:40:11 <Bike> how closely are operators like ~ defined? is ~0 definitely going to be int_min
20:40:24 -!- augur has joined.
20:40:30 <kmc> that would assume a 2s complement representation yeah?
20:40:35 <kmc> C doesn't assume that
20:40:35 <Bike> yeah
20:40:41 <Fiora> int32_t is required to be 2s complement accordnig to language lawyers in ##c
20:40:48 <kmc> oh really
20:40:55 <Fiora> and the problem specifies that you can assume 2s complement 32-bit int
20:40:58 <Bike> psh, what are the people on signed magnitude machines going to do!
20:40:58 <zzo38> kmc: OK, but why are they called Glasgow then, if they are really Microsoft Research?
20:41:05 <kmc> does it still have undefined overflow
20:41:08 <Fiora> int32_t is basically like. if the define exists you can assume it acts like you expect
20:41:12 <Fiora> I'm not sure @_@
20:41:15 <Bike> because "microsoft research haskell compiler" would scare everyone off
20:41:16 <kmc> zzo38: because the project originated there 20+ years ago
20:41:17 <elliott> GMSHC doesn't have the same ring to it
20:41:32 <zzo38> kmc: OK.
20:41:39 <kmc> and they did not want to rename it
20:41:44 <Phantom_Hoover> scares me less than anything with glasgow in the name
20:42:09 <Bike> glasgow hugs compiler
20:42:11 <Bike> i'd buy it
20:42:27 <Gregor> I thought it was officially the "Glorious" Haskell Compiler now.
20:42:47 <Bike> just make it a recursive acronym and be done with it
20:42:50 <elliott> Gregor: it's the Glorious Glasgow Haskell Compilation System
20:42:57 <Bike> pff
20:43:05 <elliott> $ ghc --version
20:43:05 <elliott> The Glorious Glasgow Haskell Compilation System, version 7.6.1
20:43:10 <Gregor> lul
20:43:24 -!- augur has quit (Remote host closed the connection).
20:43:40 <oerjan> <Fiora> everyone has already seen madoka magica though <-- i think the first time i became aware of that name was some time last week when the newspaper had a feature on cosplayers.
20:44:34 -!- monqy has joined.
20:44:39 <olsner> Hideous Hexham Haskell
20:45:39 <olsner> monqy: have you thought about how many times you have to say bye before you've matched all your "hi"s?
20:45:46 <oerjan> <Bike> how closely are operators like ~ defined? is ~0 definitely going to be int_min <-- um it's usually -1 isn't it.
20:45:47 <Fiora> "newspaper feature on cosplayers" oh dears
20:46:02 <monqy> olsner: no......
20:46:52 <olsner> monqy: consider it the next time you say hi
20:46:52 <Bike> oerjan: ok turns out i'm bad at math
20:48:15 <oerjan> shocking
20:48:36 <olsner> Gregor: are you in the brony documentary?
20:48:47 <Gregor> Why would I be?
20:48:57 <elliott> `addquote <olsner> Gregor: are you in the brony documentary
20:48:59 <elliott> ooops
20:49:00 <HackEgo> 925) <olsner> Gregor: are you in the brony documentary
20:49:01 <elliott> `addquote <olsner> Gregor: are you in the brony documentary?
20:49:04 <HackEgo> 926) <olsner> Gregor: are you in the brony documentary?
20:49:05 <elliott> `delquote 925
20:49:09 <HackEgo> ​*poof* <olsner> Gregor: are you in the brony documentary
20:49:17 <olsner> Gregor: it has people with hats in it
20:49:31 <monqy> what sort of hats are we talking here
20:49:32 <Gregor> OH OF COURSE X-D
20:49:37 <Gregor> olsner: I'm nopony.
20:50:01 -!- md_5 has quit (Ping timeout: 244 seconds).
20:50:32 <olsner> nah, but I thought you were a brony for some reason
20:50:35 -!- FreeFull has joined.
20:51:14 <oerjan> Gregor is brony. i have seen proof.
20:51:26 <Gregor> I'm not denying that.
20:51:42 <Gregor> But that doesn't make me worth being in the documentary, I'm nobody.
20:51:50 -!- md_5 has joined.
20:51:52 -!- Snowyowl has joined.
20:52:03 <Gregor> I don't think they meticulously combed the entire fanbase.
20:52:13 <oerjan> bronies are so weird that Gregor doesn't even stand out
20:52:14 <olsner> how careless of them
20:52:23 <Bike> there should be a documentary on brony bfjousters imo
20:52:28 <Gregor> lul
20:52:38 <Snowyowl> bfjousters?
20:52:45 <olsner> brousters?
20:52:52 <myndzi> punky brouster?
20:52:58 <Bike> i don't know how to link to wiki pages, just look up "bfjoust", Snowyowl
20:53:00 <Snowyowl> if this is some sort of My Little Pony / Brainfuck crossover, I want in
20:53:08 <oerjan> !bfjoust horrible [>+]
20:53:08 <elliott> let's say... yes
20:53:16 <Bike> yeah that's a definite yes
20:53:20 <EgoBot> ​Score for oerjan_horrible: 0.0
20:53:23 <Gregor> oerjan: Even by horrible standards, that's pretty horrible.
20:53:34 <myndzi> !bfjoust horribler <
20:53:35 <FreeFull> A brainfuck pony would be madness]
20:53:37 <EgoBot> ​Score for myndzi_horribler: 0.0
20:53:52 <oerjan> myndzi: i was trying to be more creatively horrible than that
20:53:58 <myndzi> http://codu.org/eso/bfjoust/report.txt
20:54:01 <myndzi> hehe :PY
20:54:02 <elliott> well that horrible one isn't so bad is it
20:54:05 <elliott> well i guess it is
20:54:08 <Gregor> !bfjoust horriblest (-)*120[-]
20:54:09 <myndzi> dat hill
20:54:09 <elliott> but it could theoretically win i think
20:54:11 <EgoBot> ​Score for Gregor_horriblest: 8.4
20:54:11 <myndzi> 50 of em?
20:54:13 <Gregor> lul
20:54:18 <myndzi> fair enough
20:54:59 <myndzi> muahahah slowrush still surviving, but that's probably only because the hill is too big
20:55:00 <myndzi> :P
20:55:11 <myndzi> doesn't do too well these days though
20:55:39 <Gregor> Poor FFSPG is all the way down at #12 :(
20:55:52 <Gregor> I remember when it was king of the hill.
20:56:16 <myndzi> i confess i never believed the game would get this far
20:56:41 <myndzi> though in part that was due to the interpreter limits
20:56:55 <myndzi> and i didn't think anyone would actually take the time to write huge like xbox programs
20:57:25 -!- md_5 has quit (Ping timeout: 252 seconds).
21:01:22 <Snowyowl> that looks like a hell of a game
21:01:54 -!- augur has joined.
21:02:58 <Gregor> Ohhey
21:03:00 <Gregor> `welcome Snowyowl
21:03:02 <HackEgo> Snowyowl: 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:03:03 <Gregor> `welcome md_5
21:03:04 <HackEgo> md_5: 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:03:18 <myndzi> more like `goodbye md_5
21:03:18 <myndzi> :P
21:04:12 <Snowyowl> question to any bfjoust gurus in here: what happens if the bf program terminates?
21:04:23 <myndzi> it just sits there
21:04:28 <Snowyowl> does the bot just stop doing anything for the rest of the game?
21:04:38 <myndzi> !bfjoust lol .
21:04:41 <EgoBot> ​Score for myndzi_lol: 4.6
21:04:43 <myndzi> i don't even remember if . is valid
21:04:49 <myndzi> haha.
21:04:59 <Snowyowl> 4.6? Is that out of 10 or 100?
21:05:09 <myndzi> it's based on some algorithm i don't remember
21:05:12 <myndzi> it means it won a couple games
21:05:21 <myndzi> probably programs that skip the first decoy
21:05:29 <Snowyowl> so it did nothing and still beat someone
21:05:31 <myndzi> which means they skipped over the flag and ran off the end
21:05:34 <fizzie> The maximum is 100, though.
21:05:36 <Snowyowl> O_o
21:05:51 <myndzi> i actually am happy that i got to contribute to the development of this game :)
21:05:55 <myndzi> i always felt like i missed out on corewars
21:06:08 <fizzie> "Points" is just raw duel points from -84 to 84, but "score" is more complicated: http://codu.org/eso/bfjoust/SCORES
21:06:25 <myndzi> 4.6 is really low anyway
21:06:30 <myndzi> look at the hill
21:06:48 <myndzi> top score tends to approach 60
21:07:15 <myndzi> the bottom one still on the hill is 16.95
21:07:19 <myndzi> not including the last one submitted
21:07:47 <myndzi> i don't even want to bother figuring out what the top programs are doing anymore
21:07:48 <myndzi> lol
21:08:04 <fizzie> Some of them have descriptions.
21:08:15 <myndzi> yeah, i just looked up the strategy page on the wiki
21:10:12 <myndzi> wtf internet why do i keep getting disconnected
21:10:38 -!- Taneb has joined.
21:10:46 <myndzi> it's the same bounce on the other networks
21:16:35 <Snowyowl> !bfjoust preconceived_notions (>)*10[-][-.]
21:16:38 <EgoBot> ​Score for Snowyowl_preconceived_notions: 4.9
21:16:56 <Snowyowl> woo, 0.3 better than doing nothing
21:17:12 <myndzi> hehe
21:17:20 <myndzi> i miss the beginnings when the warriors were simple :(
21:17:28 <oerjan> `addquote <Bike> back in high school a guy printed out the entire script of portal 1 and was reading it out during a field trip. it's possible i'm mentally scarred
21:17:31 <HackEgo> 926) <Bike> back in high school a guy printed out the entire script of portal 1 and was reading it out during a field trip. it's possible i'm mentally scarred
21:17:40 <Phantom_Hoover> Bike, oh christ
21:17:44 <Phantom_Hoover> what sort of person was he
21:17:54 <myndzi> btw whoever designed the visualization for the javascript interpreter did an excellent job
21:17:56 <elliott> kind of person who would do quote 926
21:17:59 <elliott> gregor
21:18:08 <Bike> oerjan are you that guy i know???
21:18:10 <Snowyowl> there's a javascript interpreter?
21:18:29 <myndzi> http://codu.org/eso/bfjoust/egojsout/
21:18:33 <myndzi> and debugger :o
21:18:54 <oerjan> Bike: doubtful, do you know many norwegians who haven't been outside the country for a decade?
21:19:07 <Bike> hmmmmm no
21:19:14 <FreeFull> What is the purpose of bfjoust?
21:19:18 <kmc> game
21:19:49 <FreeFull> How do you play it
21:19:59 <oerjan> it came out of agora nomic. your question is thus meaningless.
21:20:04 <myndzi> purpose is to capture the flag
21:20:04 <myndzi> :P
21:20:10 <myndzi> rather
21:20:18 <Bike> it's basically like Team Fortress 2
21:20:19 <myndzi> you want the opponent's flag position to equal 0 for a full cycle
21:20:37 <myndzi> each cell is a byte value initialized to 0; flags initialize to 128
21:21:00 <myndzi> the tape length used to be random, but now results are calculated for every tape length
21:21:03 <FreeFull> !bfjoust cheesegrater [+[-]+]
21:21:08 <EgoBot> ​Score for FreeFull_cheesegrater: 9.1
21:21:09 <myndzi> 10-30 or something? i forget
21:21:11 <FreeFull> !bfjoust cheesegrater +[+[-]+]
21:21:15 <EgoBot> ​Score for FreeFull_cheesegrater: 8.3
21:21:21 <FreeFull> Dammit
21:21:28 <FreeFull> Changing it decreased my score =P
21:21:39 <myndzi> it actually runs twice for every tape length
21:21:43 <myndzi> once as written for both programs
21:21:48 <myndzi> and one with + and - swapped for one program
21:21:49 <Taneb> Bike: BF Joust is a hat simulator?
21:21:59 <oerjan> !bfjoust prehistoric_notions (>)*10([-]>]*-1
21:22:02 <EgoBot> ​Score for oerjan_prehistoric_notions: 0.0
21:22:03 <myndzi> this is to eliminate the necessity/possibility of biasing programs with + or -
21:22:12 <myndzi> failto)
21:22:24 <Snowyowl> i like my program that wins every single time as long as the tape length is exactly 11
21:22:32 <FreeFull> !bfjoust cheesegrater +[-]-[+]
21:22:37 <myndzi> lol
21:22:37 <EgoBot> ​Score for FreeFull_cheesegrater: 8.3
21:22:48 <myndzi> most programs assume that it's safe to move 11
21:22:54 <myndzi> since if they're wrong they only give up one loss
21:22:54 <oerjan> oops
21:22:59 <oerjan> !bfjoust prehistoric_notions (>)*10([-]>)*-1
21:23:02 <EgoBot> ​Score for oerjan_prehistoric_notions: 17.0
21:23:06 <myndzi> and programs that don't modify the tape before their flag aren't that effective
21:23:19 <boily> !bfjoust hovercraft (>)*9[[-]>]
21:23:21 <myndzi> so it's a fair bet that you can skip the first modification you find up to 11 or so
21:23:22 <EgoBot> ​Score for boily_hovercraft: 4.0
21:23:37 <boily> !bfjoust hovercraft (>)*9[[-.]>]
21:23:40 <EgoBot> ​Score for boily_hovercraft: 4.0
21:23:51 <FreeFull> Wait, I forgot to make mine move =P
21:23:57 <FreeFull> What are the numbers
21:24:03 <myndzi> points(?)
21:24:08 <fizzie> Not points, score!
21:24:12 <FreeFull> I mean in boily's code
21:24:13 <fizzie> [23:06:08] <fizzie> "Points" is just raw duel points from -84 to 84, but "score" is more complicated: http://codu.org/eso/bfjoust/SCORES
21:24:15 <FreeFull> And oerjan's
21:24:17 <myndzi> scuse me
21:24:19 <myndzi> yeah, score :P
21:24:30 <fizzie> (xxx)*N is just "repeat N times".
21:24:50 -!- Sgeo has quit (Ping timeout: 246 seconds).
21:25:00 <myndzi> somebody should set up a clean hill so these guys can have some fun
21:25:01 <myndzi> :P
21:25:12 <Snowyowl> freefull: I can't believe your program always commits suicide in 260 moves and it still beats mine sometimes
21:25:17 <fizzie> And (aa{bb}cc)%3 is aa aa aa bb cc cc cc.
21:25:18 <FreeFull> Snowyowl: :D
21:25:38 <FreeFull> !bfjoust >+[-]
21:25:39 <EgoBot> ​Use: !bfjoust <program name> <program> . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/
21:25:45 <FreeFull> !bfjoust floppity >+[-]
21:25:49 <EgoBot> ​Score for FreeFull_floppity: 3.6
21:25:59 <fizzie> There's also [shameless plug] more stats at http://zem.fi/egostats/ but it doesn't update live, so it's a few weeks old.
21:25:59 <FreeFull> !bfjoust floppity >+[-]>-[+]
21:26:02 <EgoBot> ​Score for FreeFull_floppity: 3.6
21:26:17 <myndzi> ooh, the plots are interesting!
21:26:20 <Bike> with the proper marketing bfjoust could be the next Call of Duty
21:27:10 <myndzi> 'sieve' and 'kettle'?
21:27:21 <fizzie> Those are the two polarities.
21:27:30 <FreeFull> So you lose as soon as your cell is zero, or do you lose if you cell is zero and your program isn't running at that point?
21:27:37 <myndzi> which is which?
21:27:42 <fizzie> One is the straight one, other is where the other program has all its +s flipped to -ses and vice versa.
21:27:46 <fizzie> I always forget.
21:27:48 <myndzi> i mean, i figured that's what it would be
21:27:49 <myndzi> haha
21:28:00 <myndzi> they need better names then :P
21:28:07 <myndzi> really cool though
21:28:12 <fizzie> I even forget the terms, I had to look them up when writing those descriptions.
21:28:13 <FreeFull> Sieve is obviously reality prime
21:28:21 <FreeFull> And kettle is space
21:28:28 <fizzie> "The polarity where both programs run on their original polarity is sometimes known as "sieve", and the exchanged polarity as "kettle"."
21:28:43 <myndzi> whoever came up with that needs a beating
21:28:44 <myndzi> :P
21:29:01 <fizzie> I'd like to blame elliott, but I'm not certain it's his fault.
21:29:41 <Gregor> I strongly suspect that it is.
21:29:58 <fizzie> [2009-05-27 22:31:26] <ehird> ais523: Polarities: sieve, kettle.
21:30:03 <fizzie> (First hit from grep.)
21:30:09 <myndzi> haha.
21:30:18 <myndzi> jesus that's a long time ago
21:30:24 <boily> `? ehird
21:30:25 <oerjan> FreeFull: you lose if your cell is zero two rounds in a row
21:30:26 <HackEgo> ehird? ¯\(°_o)/¯
21:30:45 <oerjan> ehird = elliott
21:31:14 <Snowyowl> !bfjoust booooooring (>)*9((+*128.)>)*21
21:31:17 <EgoBot> ​Score for Snowyowl_booooooring: 0.0
21:31:33 <Snowyowl> that's not right
21:31:53 <Snowyowl> where did I screw up
21:32:12 <oerjan> Snowyowl: i'm not sure the parentheses before * are optional even with a single command
21:32:14 <Snowyowl> this is all quite addictive
21:32:16 <Taneb> `learn ehird is the person who Taneb definitely isn't.
21:32:33 <fizzie> oerjan: They're not optional, no.
21:32:36 <HackEgo> I knew that.
21:32:51 <Snowyowl> oh, right - parenthesis in the wrong place
21:32:58 <Snowyowl> (>)*9((+)*128.>)*21
21:33:20 <Snowyowl> !bfjoust really_boring (>)*9((+*128.)>)*21
21:33:24 <EgoBot> ​Score for Snowyowl_really_boring: 0.0
21:33:33 <Snowyowl> goddamnit
21:33:38 <fizzie> It keeps happening.
21:33:46 <Gregor> Snowyowl: You have a syntax error.
21:33:48 -!- copumpkin has quit.
21:33:57 <Gregor> *n can only come after a )
21:34:00 <Snowyowl> !bfjoust warned_you_bro (>)*9((+)*128.>)*21
21:34:03 <EgoBot> ​Score for Snowyowl_warned_you_bro: 3.8
21:34:03 -!- sebbu has quit (Read error: Connection reset by peer).
21:34:22 <Snowyowl> 3.8? I'll stick to my infinite chain of no-ops.
21:34:29 -!- sebbu has joined.
21:34:29 -!- sebbu has quit (Changing host).
21:34:29 -!- sebbu has joined.
21:34:55 <oerjan> !bfjoust preposterous_notions (>)*10([-]>.)*-1
21:34:57 <EgoBot> ​Score for oerjan_preposterous_notions: 13.4
21:35:06 <oerjan> hm that became worse
21:35:10 <Snowyowl> by which I mean myndzi's infinite chain of no-ops
21:35:22 <myndzi> ?
21:35:23 -!- copumpkin has joined.
21:35:25 <Snowyowl> wait, *-1 makes it repeat forever
21:35:28 <Snowyowl> ?
21:35:35 <myndzi> no
21:35:39 <oerjan> essentially yes
21:35:42 <myndzi> probably makes it repeat 4294967296 times
21:35:53 <boily> !bfjoust ventilateur (>)*9([-{([+{[-]}])%8}])%4
21:35:56 <EgoBot> ​Score for boily_ventilateur: 4.4
21:35:56 <Gregor> IIRC, *-1 is just a number so large that it's infinite for all practical purposes.
21:36:02 <oerjan> i think it's something like 10000
21:36:03 <Snowyowl> good enough, the game only lasts 10,000 turns
21:36:51 -!- ogrom has quit (Quit: Left).
21:37:27 <oerjan> !bfjoust preposterous_notions ((>)*4+>)*2([-]>)*-1
21:37:29 <EgoBot> ​Score for oerjan_preposterous_notions: 15.9
21:38:15 <oerjan> hm it's actually pushing my other one down :(
21:38:34 <oerjan> !bfjoust preposterous_notions <
21:38:38 <EgoBot> ​Score for oerjan_preposterous_notions: 0.0
21:38:45 <fizzie> It's exactly the number of turns, if I recall correctly.
21:38:50 <fizzie> Though I think that was 100k and not 10k.
21:39:06 <myndzi> oh, it's special-cased?
21:39:14 <myndzi> seemed like the kind of thing someone just tried and happened to work
21:39:23 <myndzi> that is, -1 interpreted as an unsigned int
21:39:25 <fizzie> That might have been the origin of it.
21:39:54 <Gregor> That was definitely not the origin, since the original interpreter canonicalized.
21:40:00 <oerjan> in the original, ()* was expanded during parsing.
21:40:10 <fizzie> Oh, right.
21:40:17 <fizzie> Well, it is special-cased currently.
21:40:26 <fizzie> (if (c < 0) c = MAXCYCLES;)
21:40:36 <fizzie> (Apparently any negative number is okay.)
21:41:31 <Snowyowl> does *0 just mean "lol I put code in for no reason"
21:43:04 <Gregor> Snowyowl: Or, alternately, comment.
21:43:59 <oerjan> !bfjoust preposterous_notions (>)*10([-][+]>)*-1
21:44:02 <EgoBot> ​Score for oerjan_preposterous_notions: 13.4
21:44:43 <myndzi> any of you guys ever messed around with editing apk files?
21:45:10 <myndzi> i evolved myself a keyboard layout that i want to try on my phone, but i can't seem to edit it into swiftkey quite properly
21:46:19 <myndzi> (swiftkey because it is awesome, and it'd be kind of pointless to hack a layout into a soft keyboard i didn't want to use)
21:46:20 <oerjan> !bfjoust preposterous_notions (>)*10([-{.}]>)%-1
21:46:23 <EgoBot> ​Score for oerjan_preposterous_notions: 3.9
21:46:33 <myndzi> it seems fairly easy, each layout is a separate xml file
21:46:50 <myndzi> but just changing the values caused it to force close every time i click a submenu
21:47:36 <fizzie> Checksum trouble?
21:47:50 <oerjan> !bfjoust preposterous_notions (>)*10([-{.}]>+)%-1
21:47:52 <EgoBot> ​Score for oerjan_preposterous_notions: 1.1
21:47:53 <myndzi> no
21:47:56 <myndzi> it installs and launches
21:47:58 <oerjan> XD
21:48:29 <myndzi> and if it was a built-in-to-the-program checksum kinda thing, which i doubt, it wouldn't force close i think
21:55:59 <myndzi> hm, looks like SK is actually active on twitter, maybe i'll ask them
21:56:13 <myndzi> except that twitter seems to be down and i can't log in
21:56:14 <myndzi> lol
21:56:25 <myndzi> well, twitter *login* seems to be down
22:00:45 -!- Sgeo has joined.
22:00:59 <Sgeo> Is 45k/year decent for someone with my experience?
22:01:05 <Sgeo> I flat out have no idea
22:01:39 <Phantom_Hoover> That's like 30,000?
22:01:55 <Phantom_Hoover> I know that's roughly the average wage in the UK but living costs etc.
22:02:18 <Sgeo> I'm still happy that I got a call from a potential employer
22:02:25 <Bike> http://thecontributor.com/sites/default/files/styles/large/public/images/20131401143736.jpg here let's consult the wall street journal
22:02:28 <Bike> and congrats.
22:02:37 <Sgeo> They want me to add some stuff to my resume that I didn't mention on the resume
22:03:54 <Phantom_Hoover> Bike, so is the joke here that they have a zero too many.
22:04:11 <Lumpio-> Wait, all those people are making six figures in a year
22:04:17 <Lumpio-> Isn't that a bit, excessive?
22:04:24 <Bike> the joke here is that fuck the wsj
22:04:37 <Lumpio-> ¬u¬
22:04:45 <Bike> (but uh i have no idea how reasonable $45k is sorry)
22:05:35 <FreeFull> !bfjoust simple +
22:05:38 <EgoBot> ​Score for FreeFull_simple: 3.6
22:06:16 <elliott> @ping
22:06:16 <lambdabot> pong
22:13:30 -!- Taneb has quit.
22:15:46 <Sgeo> Not sure where I'm going to fit the term "jQuery" on my resume
22:15:52 <Sgeo> It isn't exactly a programming language
22:16:00 <kmc> drop the categories
22:16:05 <olsner> why would you want to have that on your resume?
22:16:22 <kmc> because it's massively useful and widely used?
22:16:23 <Bike> Sgeo: "proficient in the following technologies"
22:16:30 <kmc> don't even put aheading on it
22:16:38 <Bike> or that
22:16:50 <elliott> == things what i done be good at ==
22:16:52 <Sgeo> olsner, because employer asked me to
22:16:54 <kmc> for the 100th time: your resume is an advertisement, it's not a pedantically organized character sheet
22:17:20 <kmc> its sole purpose is to make you look good enough to get a phone call
22:17:27 <Sgeo> I got the phone call though.
22:17:30 <kmc> oh
22:17:34 <Bike> to get more phone calls, then
22:17:37 <kmc> then why are you still adjusting your resume?
22:17:45 <Sgeo> They told me to add things to it
22:17:47 <kmc> what
22:17:48 <kmc> why
22:18:00 <Sgeo> "I know you stated you had experience working with JavaScript and jQuery so I would need you to add these two skill sets within your resume. I also need you to add your C# experience within your resume, along with sending me your github account and blog info as well."
22:18:14 <kmc> that doesn't make any sense to me
22:18:22 <kmc> is it a big company or small?
22:18:27 <olsner> I guess they're about to sell you to someone else
22:18:29 <Sgeo> I tgather small
22:18:31 <Sgeo> *gather
22:18:35 <elliott> this employer sounds a bit dubious
22:18:42 <Sgeo> The person is a "Recruiting Manager"
22:18:48 <kmc> it sounds like a third party recruiter may be involved and those people are basically the devil
22:18:50 <elliott> of course i would know with my EXTENSIVE EXPERIENCE IN PROGRAMMING-RELATED EMPLOYMENT
22:19:05 <olsner> elliott: are you old enough to legally be employed yet?
22:19:11 <elliott> um I guess so
22:19:33 <Bike> sgeo, if you get eaten by an HR manager, can I have your stuff
22:19:34 <Sgeo> kmc, well, I gather that it's for a specific position, of {possibly full-time or possibly contractor}
22:20:25 <Sgeo> ...I think it is a third party thing
22:20:44 <Sgeo> Company of the person: http://www.momentumrs.com/ Company of the potential place of employment: http://www.jefferies.com/
22:21:10 <elliott> Momentum Resource Solutions is a leading provider of Technology, Financial and Human Resource staffing and consulting services and solutions. Momentum's clients operate in many sectors including Financial Services, Pharmaceutical, Insurance, Legal, Telecommunications and Technology.
22:21:11 <olsner> hint: they don't have the same address
22:21:15 <elliott> kill me now
22:21:17 <Bike> wow that looks boring
22:21:22 <elliott> We provide professional services in the following areas:
22:21:22 <elliott> Staff Augmentation
22:21:22 <elliott> Technology
22:21:22 <elliott> Accounting
22:21:22 <elliott> AuditingRecruiting
22:21:23 <Bike> money is money, i guess
22:21:25 <elliott> Compliance
22:21:27 <elliott> Brokerage Operations
22:21:29 <elliott> Human ResourcesProject Management
22:21:31 <Bike> elliott no
22:21:32 <elliott> Outsourcing
22:21:34 <elliott> Antispam Exchange
22:21:37 <elliott> Managed Services
22:21:40 <Bike> nooooo we've lost him!
22:21:41 <olsner> "Compliance" sounds ominous
22:21:55 <zzo38> I think the four alignments for creature kind entry in Icosahedral RPG shall be: U (unaligned), S (stereotype), A (always), and X (don't care). S is most common for intelligent beings, and U for normal animals.
22:21:55 * oerjan is about to do some antispam exchange if this continues
22:22:20 <elliott> oerjan: i think you'll find that f u
22:22:37 <boily> anitspam exchange?
22:22:52 <Sgeo> help maybe talking about this in a publically logged channel is a bad idea
22:22:53 <Bike> exchanging spam with antispam, then harvesting the resulting annihilation energy
22:23:07 <elliott> Sgeo: its ok
22:23:11 <elliott> Sgeo: they won't google for "sgeo"
22:23:14 -!- md_5 has joined.
22:23:16 <elliott> unless you put "sgeo" on your resume???
22:23:30 <Sgeo> elliott, I am planning on linking to my GitHub and Tumblr, both of which mention Sgeo
22:23:48 <Bike> tumblrs as employment thing... that's pretty ominous
22:23:58 <elliott> have you considered: starting accounts under your own name
22:24:01 <Sgeo> It's a form of blog, they ask if I have a technical blog and I do
22:24:22 <Bike> i have got to remember to never get employed in this business
22:24:35 <Sgeo> I didn't tell them it was a tumblr yet
22:24:45 <Sgeo> Is there something wrong with using tumblr as a blog?
22:24:50 <olsner> heh, I read "form of blog" as farming blog
22:24:56 <Bike> ha, no, i'm just thinking of my own tumblr
22:24:57 -!- Snowyowl has quit (Quit: Page closed).
22:25:34 <elliott> olsner: sgeos farmville days are behind him
22:25:48 <kmc> Sgeo: recruiters are the devil, you're lucky that they even asked you to modify your resume rather than modifying it themselves
22:25:52 <kmc> probably because you used latex
22:25:56 <Bike> haha.
22:26:02 <kmc> i'm not even joking :(
22:26:10 <kmc> so how did you contact the company?
22:26:11 <elliott> is kmc the devil
22:26:13 <kmc> through dice.com or something
22:26:15 <Bike> i know, i just find true things amusing
22:26:27 <elliott> Bike: did you know... 4 + 9 = 13
22:26:28 <Sgeo> kmc, honestly I don't even remember
22:26:28 <kmc> it would be better to email jobs@wherever.com if this seems viable
22:26:41 <olsner> they can just print/tippex/scribble/scan
22:27:01 <Bike> elliott: psh only in one base
22:27:02 <kmc> like I've heard of people getting rejected because they "lied on their resume" when these lies were added by recruiters
22:27:10 <kmc> the recruiter's incentives are not aligned with anyone else's
22:27:17 <elliott> Sgeo: how... did you forget in the space of not very long
22:27:29 <Bike> ok, i want to hear about this, why the hell would a recruiter /modify/ your resume?
22:27:50 <kmc> to increase the chance that you get the job and they get their bounty
22:27:56 <Sgeo> kmc, I misspoke on the phone interview
22:27:57 <Sgeo> :(
22:28:01 <kmc> they have no incentive to find a good fit or an employee who won't get fired after 2 months
22:28:03 <Bike> oh, bounties
22:28:21 <Bike> capitalism's a hell of a drug
22:28:22 <Sgeo> kmc, I said that everything except Evolution was on my own initiative, but forgot about Circe which also was someone else's project
22:28:22 <kmc> if they think you have no chance getting in with a legit resume, there's no cost to them to add lies
22:28:46 <kmc> also they are sometimes gaming the system set up by clueless buzzword-searching HR departments
22:29:06 <kmc> they add some value in that they are better at gaming this system than naive, hand-wringing, pedantic correctness obsessed programmers ;)
22:29:09 <Sgeo> Well, arguably, they are helping me improve my resyme
22:29:12 <kmc> yeah maybe
22:29:19 <kmc> or maybe they're trying to kill you and shit on your corpse
22:29:24 <kmc> you can never tell
22:29:24 <Bike> adding jquery seems pretty reasonable
22:29:26 <kmc> yes it does
22:29:29 <elliott> kmc: well the cost is that it might be illegal(?) right
22:29:32 <elliott> but I doubt that's a very big cost
22:29:36 <Sgeo> And listing my Senior Project too
22:29:42 <elliott> since breaking laws is pretty safe!
22:29:50 <kmc> elliott: is it illegaly?
22:29:56 <Sgeo> What's not so reasonable is asking me to mention Javascript when I already mentioned Javascript
22:29:57 <elliott> well that's what the (?) is for
22:30:00 <elliott> it should be at least
22:30:01 <kmc> yeah i don't know
22:30:15 <elliott> seems like it would fall under the crime of LYING
22:30:19 <elliott> !!!!!11
22:32:34 <Bike> Sgeo: like, they said, "add javascript" and you already have javascript?
22:33:25 <olsner> they must think it's good to have javascript listen twice
22:33:34 <Sgeo> Well, in my industry related activities I didn't exactly list when I did Javascript stuff
22:33:36 <olsner> I wonder if my resume lists javascript
22:34:00 -!- boily has quit (Quit: Poulet!).
22:34:10 <olsner> I might have done almost as much vbscript as javascript, should I list that?
22:35:12 <elliott> olsner: list mod_rewrite thue imo
22:37:46 <olsner> vbscript probably belongs in the list of things I don't remember if I know/knew, but have vague recollections I might have known, along with REXX
22:39:50 -!- oerjan has quit (Remote host closed the connection).
22:39:59 -!- oerjan has joined.
22:40:44 <olsner> elliott: good idea
22:40:46 * oerjan hopes this is not one of those disconnections that plagued much of last year
22:41:39 <olsner> last year was plagued by time travelling disconnections from this year?
22:42:09 <pikhq> Secretely, oerjan is John Titor.
22:44:20 -!- Nisstyre has joined.
22:44:47 <oerjan> *+kind of
22:47:40 <zzo38> Can any computer game you can set the friendly AI mode to, try to make you to lose?
22:50:08 -!- copumpkin has quit (Ping timeout: 245 seconds).
22:50:46 -!- copumpkin has joined.
23:21:48 -!- md_5 has quit (Ping timeout: 245 seconds).
23:25:22 -!- Arc_Koen has joined.
23:28:58 -!- TeruFSX has quit (Ping timeout: 256 seconds).
23:31:24 -!- copumpkin has quit (Ping timeout: 252 seconds).
23:31:55 -!- copumpkin has joined.
23:38:22 -!- md_5 has joined.
23:39:52 -!- augur has quit (Remote host closed the connection).
23:44:45 <kmc> which here bot has 'seen'
23:44:56 <elliott> afaik none
23:44:58 <elliott> well
23:45:02 <elliott> you can use HackEgo
23:45:05 <elliott> by doing e.g. `pastelogs
23:45:12 <elliott> could add a `seen directly I guess
23:45:38 <kmc> hm i have total logs anyway
23:47:22 <oerjan> totalitarian logs
23:47:36 <elliott> `cat bin/pastelogs
23:47:37 <HackEgo> ​#!/bin/sh \ cd /var/irclogs/_esoteric \ \ pasterandom() { \ if [ "$1" -gt 150 ]; then \ echo "No." \ exit \ fi \ for i in $(seq "$1"); do \ file=$(shuf -en 1 ????-??-??.txt) \ echo "$file:$(shuf -n 1 $file)" \ done | paste \ } \ \ if [ "$1" ]; then \ if expr "$1" + 0 >/dev/null 2>&1; then \
23:48:04 <elliott> `tail /var/irclogs/_esoteric/2013-01-01.txt
23:48:05 <HackEgo> 23:44:47: <shachaf> monqy: no!! it's about uh clojure \ 23:45:02: <monqy> are you confusing me for sgeo. i don't know clojure........ \ 23:45:34: <shachaf> do you know lens......... \ 23:45:39: <monqy> : ) \ 23:45:54: <shachaf> : ) \ 23:46:01: <ion> : ) \ 23:47:45: <shachaf> ion knows lens. \ 23:48:27: <shachaf> (If I start a line with a space it
23:48:23 <ion> k
23:48:46 <elliott> `run echo "#!/bin/sh" >bin/seen; echo 'grep "^..:..:..: <$1>" /var/irclogs/_esoteric/????-??-??.txt | tail -n 1' >>bin/seen; chmod +x bin/seen
23:48:48 <HackEgo> No output.
23:48:52 <elliott> `seen ion
23:48:56 <HackEgo> ​/var/irclogs/_esoteric/2013-01-21.txt:23:48:23: <ion> k
23:49:07 <ion> `seen HackEgo
23:49:11 <HackEgo> ​/var/irclogs/_esoteric/2013-01-21.txt:23:48:56: <HackEgo> ​/var/irclogs/_esoteric/2013-01-21.txt:23:48:23: <ion> k
23:49:17 <ion> `seen HackEgo
23:49:20 <HackEgo> ​/var/irclogs/_esoteric/2013-01-21.txt:23:49:11: <HackEgo> ​/var/irclogs/_esoteric/2013-01-21.txt:23:48:56: <HackEgo> ​/var/irclogs/_esoteric/2013-01-21.txt:23:48:23: <ion> k
23:49:41 <oerjan> `log hm
23:49:47 <HackEgo> 2012-07-29.txt:12:43:43: <Vorpal> fizzie, hm there is /dev/binder opened as fd 3, and there were a lot of ioctls done on that
23:49:51 <elliott> `run echo "#!/bin/sh" >bin/seen; echo 'cd /var/irclogs/_esoteric' >>/bin/seen; echo 'grep "^..:..:..: <$1>" ????-??-??.txt | tail -n 1' >>bin/seen; chmod +x bin/seen
23:49:54 <HackEgo> bash: /bin/seen: Read-only file system
23:49:59 <elliott> Gregor: help
23:51:05 -!- sebbu has quit (Ping timeout: 256 seconds).
23:51:26 <olsner> read-only file system!?
23:51:34 <oerjan> elliott: (echo ...; echo ...) >bin/seen is shorter
23:51:49 <ion> printf '%s\n' ... ... >bin/seen is shorter
23:51:52 <elliott> oerjan: you're shorter
23:51:57 <elliott> `run echo "#!/bin/sh" >bin/seen; echo 'cd /var/irclogs/_esoteric' >>/bin/seen; echo 'grep "^..:..:..: <$1>" ????-??-??.txt | tail -n 1' >>bin/seen; chmod +x bin/seen
23:51:59 <HackEgo> bash: /bin/seen: Read-only file system
23:52:08 -!- sebbu has joined.
23:52:08 -!- sebbu has quit (Changing host).
23:52:08 -!- sebbu has joined.
23:52:22 <oerjan> `run pwd
23:52:23 <HackEgo> ​/hackenv
23:52:28 <elliott> oh
23:52:29 <elliott> lol
23:52:30 <elliott> "/bin/seen:
23:52:31 <elliott> "
23:52:37 <elliott> `run echo "#!/bin/sh" >bin/seen; echo 'cd /var/irclogs/_esoteric' >>bin/seen; echo 'grep "^..:..:..: <$1>" ????-??-??.txt | tail -n 1' >>bin/seen; chmod +x bin/seen
23:52:41 <HackEgo> No output.
23:52:46 <elliott> `seen elliott
23:52:52 <HackEgo> 2013-01-21.txt:23:52:46: <elliott> `seen elliott
23:53:07 <elliott> kmc: hth
23:53:10 <elliott> `seen lament
23:53:13 <HackEgo> 2012-07-18.txt:18:17:18: <lament> NOOOOOOOOOOOOOOOOOOOOOOO
23:53:21 <olsner> lament indeed
23:53:29 <elliott> `seen oerjan_
23:53:32 <HackEgo> 2012-12-03.txt:21:43:21: <oerjan_> boo
23:53:38 <olsner> `seen elliott_
23:53:38 <ion> `seen .*
23:53:42 <HackEgo> 2012-10-08.txt:11:31:58: <elliott_> pikhq_: Hey, is Nvidia or ATI better supported by Linux this month?
23:53:45 <Gregor> elliott: Dude, you can't write to /bin X_X
23:54:02 <elliott> Gregor: yes yes
23:54:04 <elliott> hm I should optimis ethis
23:54:09 <HackEgo> No output.
23:54:11 <elliott> it could use fgrep
23:54:14 <elliott> and search in reverse order
23:54:22 <Bike> o
23:54:23 <elliott> `seen mtve
23:54:26 <HackEgo> 2011-05-05.txt:11:38:06: <mtve> other examples needed badly
23:54:34 <oerjan> ...i like allowing regexps
23:54:37 <olsner> `seen renslo
23:54:41 <HackEgo> No output.
23:54:46 <elliott> oerjan: ok you make it search in reverse order then
23:54:53 <olsner> good, my evil twin has not been here
23:54:54 -!- sivoais has joined.
23:55:04 <oerjan> NOOOOOOOOOOOOOOOOOOOOOOO
23:55:49 <ion> `run printf '%s\n' '#!/bin/sh' "find /var/irclogs/_esoteric -mindepth 1 -maxdepth 1 -type f -name '
23:55:50 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `"' \ bash: -c: line 1: syntax error: unexpected end of file
23:55:52 <ion> whoops
23:57:55 <oerjan> `run printf '%s\n' what is this
23:57:56 <HackEgo> what \ is \ this
23:58:03 <ion> `run printf '%s\n' '#!/bin/sh' "find /var/irclogs/_esoteric -mindepth 1 -maxdepth 1 -type f -name '????-??-??.txt' | sort -r | xargs -d'\n' -r grep '^..:..:..: <"'$1'">' -- | tail -n 1" >bin/seen; chmod 755 bin/seen; cat bin/seen
23:58:05 <HackEgo> ​#!/bin/sh \ find /var/irclogs/_esoteric -mindepth 1 -maxdepth 1 -type f -name '????-??-??.txt' | sort -r | xargs -d'\n' -r grep '^..:..:..: <$1>' -- | tail -n 1
23:58:52 <ion> `run printf '%s\n' '#!/bin/sh' "find /var/irclogs/_esoteric -mindepth 1 -maxdepth 1 -type f -name '????-??-??.txt' | sort -r | xargs -d'\n' -r grep \"^..:..:..: <"'$1'">\" -- | tail -n 1" >bin/seen; chmod 755 bin/seen; cat bin/seen
23:58:55 <HackEgo> ​#!/bin/sh \ find /var/irclogs/_esoteric -mindepth 1 -maxdepth 1 -type f -name '????-??-??.txt' | sort -r | xargs -d'\n' -r grep "^..:..:..: <$1>" -- | tail -n 1
23:59:01 <ion> `seen elliott
23:59:09 <HackEgo> ​/var/irclogs/_esoteric/2009-07-27.txt:00:11:06: <elliott> 112 days since use, excellent
23:59:25 <ion> d’oh
23:59:45 <Bike> `seen bike
23:59:49 <HackEgo> No output.
23:59:57 <Bike> :< i am the invisible man
2013-01-22
00:00:07 <ion> `run printf '%s\n' '#!/bin/sh' "find /var/irclogs/_esoteric -mindepth 1 -maxdepth 1 -type f -name '????-??-??.txt' | sort -r | xargs -d'\n' -r tac -- | grep \"^..:..:..: <"'$1'">\" | head -n 1" >bin/seen; chmod 755 bin/seen; cat bin/seen
00:00:10 <HackEgo> ​#!/bin/sh \ find /var/irclogs/_esoteric -mindepth 1 -maxdepth 1 -type f -name '????-??-??.txt' | sort -r | xargs -d'\n' -r tac -- | grep "^..:..:..: <$1>" | head -n 1
00:00:15 <ion> `seen elliott
00:00:18 <HackEgo> 23:54:46: <elliott> oerjan: ok you make it search in reverse order then \ xargs: tac: terminated by signal 13
00:00:28 <oerjan> hm we definitely want it to be case insensitive
00:00:52 <oerjan> HackEgo: how tacky
00:01:35 <ion> Someone else figure the SIGPIPE thing out. :-P
00:01:49 <elliott> `cat bin/log
00:01:49 <HackEgo> ​#!/bin/sh \ cd /var/irclogs/_esoteric \ if [ "$1" ]; then \ grep -P -i -- "$1" ????-??-??.txt | shuf -n 1 \ else \ file=$(shuf -en 1 ????-??-??.txt) \ echo "$file:$(shuf -n 1 $file)" \ fi
00:02:01 <elliott> `run sed -is 's/grep/grep -P -i/' bin/seen
00:02:04 <HackEgo> No output.
00:02:09 <elliott> `cat bin/seen
00:02:10 <HackEgo> ​#!/bin/sh \ find /var/irclogs/_esoteric -mindepth 1 -maxdepth 1 -type f -name '????-??-??.txt' | sort -r | xargs -d'\n' -r tac -- | grep -P -i "^..:..:..: <$1>" | head -n 1
00:02:52 <elliott> ion: that is probably not really any faster btw
00:02:56 <elliott> since it has to list all the kajillion files
00:03:05 <elliott> which takes a noticeable amount of time locally
00:03:25 <ion> `run time find /var/irclogs/_esoteric -mindepth 1 -maxdepth 1 -type f -name '????-??-??.txt' | sort -r >/dev/null
00:03:27 <HackEgo> ​ \ real0m1.196s \ user0m0.560s \ sys0m1.080s
00:04:02 <ion> `run time sh -c 'find /var/irclogs/_esoteric -mindepth 1 -maxdepth 1 -type f -name '????-??-??.txt' | sort -r >/dev/null'
00:04:04 <HackEgo> ​ \ real0m0.930s \ user0m0.620s \ sys0m0.650s
00:04:33 <ion> '''' error, but i think time might not work here.
00:04:35 <ion> `run time true
00:04:36 <HackEgo> ​ \ real0m0.001s \ user0m0.000s \ sys0m0.000s
00:04:44 <ion> `run bash -c 'time true'
00:04:45 <HackEgo> ​ \ real0m0.001s \ user0m0.000s \ sys0m0.000s
00:04:50 <ion> `run sh -c 'time true'
00:04:51 <HackEgo> sh: time: not found
00:04:55 <oerjan> `run cd /var/irclogs/_esoteric; ls ????-??-??.txt
00:04:57 <HackEgo> 2003-01-18.txt \ 2003-01-19.txt \ 2003-01-20.txt \ 2003-01-21.txt \ 2003-01-22.txt \ 2003-01-23.txt \ 2003-01-24.txt \ 2003-01-25.txt \ 2003-01-26.txt \ 2003-01-27.txt \ 2003-01-28.txt \ 2003-01-29.txt \ 2003-01-30.txt \ 2003-01-31.txt \ 2003-02-01.txt \ 2003-02-02.txt \ 2003-02-03.txt \ 2003-02-04.txt \ 2003-02-05.txt \ 2003-02-06.txt \ 2003-02-07
00:05:12 <oerjan> `run cd /var/irclogs/_esoteric; ls ????-??-??.txt | tac
00:05:14 <HackEgo> 2013-01-22.txt \ 2013-01-21.txt \ 2013-01-20.txt \ 2013-01-19.txt \ 2013-01-18.txt \ 2013-01-17.txt \ 2013-01-16.txt \ 2013-01-15.txt \ 2013-01-14.txt \ 2013-01-13.txt \ 2013-01-12.txt \ 2013-01-11.txt \ 2013-01-10.txt \ 2013-01-09.txt \ 2013-01-08.txt \ 2013-01-07.txt \ 2013-01-06.txt \ 2013-01-05.txt \ 2013-01-04.txt \ 2013-01-03.txt \ 2013-01-02
00:05:33 <elliott> you can make ls sort reversed
00:05:39 <oerjan> oh
00:06:08 <elliott> `run cd /var/irclogs/_esoteric; ls -r
00:06:09 <HackEgo> stalker.php \ latest.txt \ index.php \ 2013-01-22.txt \ 2013-01-22-raw.txt \ 2013-01-21.txt \ 2013-01-21-raw.txt \ 2013-01-20.txt \ 2013-01-20-raw.txt \ 2013-01-19.txt \ 2013-01-19-raw.txt \ 2013-01-18.txt \ 2013-01-18-raw.txt \ 2013-01-17.txt \ 2013-01-17-raw.txt \ 2013-01-16.txt \ 2013-01-16-raw.txt \ 2013-01-15.txt \ 2013-01-15-raw.txt \ 2013-01
00:06:19 <ion> stalker.php?
00:06:21 <elliott> `run cd /var/irclogs/_esoteric; ls -r | grep '????-??-??\.txt'
00:06:23 <HackEgo> No output.
00:06:30 <Bike> ion: probably what runs stalker mode?
00:06:34 <elliott> `run cd /var/irclogs/_esoteric; ls -r | grep '....-..-..\.txt' | head -n 1
00:06:36 <HackEgo> 2013-01-22.txt
00:07:39 <elliott> `run echo "#!/bin/sh" >bin/seen; echo 'cd /var/irclogs/_esoteric' >>bin/seen; echo 'for file in $(ls -r | grep "....-..-..\.txt"); do grep -P -i "^..:..:..: <$1>" $file; done | tail -n 1' >>bin/seen; chmod +x bin/seen
00:07:42 <oerjan> `run cd /var/irclogs/_esoteric; ls -r ????-??-??.txt
00:07:43 <HackEgo> No output.
00:07:44 <HackEgo> 2013-01-22.txt \ 2013-01-21.txt \ 2013-01-20.txt \ 2013-01-19.txt \ 2013-01-18.txt \ 2013-01-17.txt \ 2013-01-16.txt \ 2013-01-15.txt \ 2013-01-14.txt \ 2013-01-13.txt \ 2013-01-12.txt \ 2013-01-11.txt \ 2013-01-10.txt \ 2013-01-09.txt \ 2013-01-08.txt \ 2013-01-07.txt \ 2013-01-06.txt \ 2013-01-05.txt \ 2013-01-04.txt \ 2013-01-03.txt \ 2013-01-02
00:07:45 <elliott> `seen elliott
00:07:53 <elliott> oerjan: that does the ls in the shell, though
00:07:57 <elliott> so you're not saving anything
00:08:05 <elliott> er
00:08:10 <elliott> `run echo "#!/bin/sh" >bin/seen; echo 'cd /var/irclogs/_esoteric' >>bin/seen; echo 'for file in $(ls -r | grep "....-..-..\.txt"); do grep -P -i "^..:..:..: <$1>" $file; done | head -n 1' >>bin/seen; chmod +x bin/seen
00:08:27 <oerjan> hm...
00:08:48 <HackEgo> No output.
00:08:49 <HackEgo> No output.
00:09:06 <Bike> `seen bike
00:09:37 <HackEgo> 00:06:30: <Bike> ion: probably what runs stalker mode?
00:09:44 <elliott> `seen elliott
00:09:46 <oerjan> ouch
00:09:52 <elliott> why is this slower.
00:09:58 <elliott> oh hm
00:10:15 <HackEgo> 00:01:49: <elliott> `cat bin/log
00:10:29 <elliott> what.
00:10:34 <Bike> gee
00:10:46 <Bike> presumably for `seen me it ought to return `seen me
00:10:47 <oerjan> elliott: you're not doing each file backwards
00:10:54 <elliott> `run echo "#!/bin/sh" >bin/seen; echo 'cd /var/irclogs/_esoteric' >>bin/seen; echo 'ls -r | grep "....-..-..\.txt" | while read file; do grep -P -i "^..:..:..: <$1>" $file | tail -n 1; done | head -n 1' >>bin/seen; chmod +x bin/seen
00:10:55 <Bike> oooooh
00:10:58 <HackEgo> No output.
00:10:58 <elliott> oerjan: right.
00:11:01 <elliott> `seen elliott
00:11:17 <elliott> well this isn't very good
00:11:27 <Bike> grep -P is apparently PCRE mode, i'm lost
00:11:31 <HackEgo> 00:11:01: <elliott> `seen elliott
00:11:40 <Bike> "success!"
00:11:48 <myndzi> i can write regex but i can never seem to use regex grep
00:11:53 <c00kiemon5ter> what is going on here ?
00:11:53 <myndzi> it's kind of annoying
00:11:59 <Bike> c00kiemon5ter: "engineering"
00:12:40 <elliott> does anyone wnat to optimise this code
00:13:03 -!- epicmonkey has quit (Ping timeout: 245 seconds).
00:13:55 <oerjan> `run sed -i 's/-P/-H -P/' bin/seen
00:13:58 <HackEgo> No output.
00:14:03 <oerjan> `seen elliott
00:14:16 <kmc> "perl" "compatible" "regular" expressions
00:14:19 <myndzi> speaking of "engineering", any of you play spacechem?
00:14:25 <elliott> kmc: not very expressive either
00:14:28 <oerjan> that's quite awful...
00:14:34 <HackEgo> 2013-01-22.txt:00:12:40: <elliott> does anyone wnat to optimise this code
00:14:36 <Bike> i feel likei should complain about grep's regex implementation too
00:14:38 <Bike> "oh well"
00:14:38 <elliott> oerjan: I like how the original version was by far the fastest
00:14:46 <elliott> Bike: please go ahead
00:14:56 <Bike> no we already covered that, pike bla bla bla
00:15:05 <Bike> bla
00:15:26 <olsner> pike?
00:15:31 <Bike> is there a good way to profile shell scripts
00:15:46 <elliott> I hope not
00:15:46 <Bike> olsner: rob, rc2 and shit
00:15:59 <olsner> ah, not pike the programming language then
00:16:10 <Bike> or whatever that implementation is called
00:16:56 -!- augur has joined.
00:17:08 <olsner> (http://pike.lysator.liu.se/)
00:18:14 <kmc> http://swtch.com/~rsc/regexp/regexp1.html this maybe?
00:18:28 <Bike> well that's the paper
00:18:49 <Bike> but last time it was mentioned somebody (probably elliott, why must you mock me) mentioned a regex implementation based on it
00:18:55 <kmc> google's RE2?
00:18:59 <Bike> yeah that one.
00:19:06 <kmc> yeah it's pretty good
00:19:10 <kmc> i wrote incomplete Haskell bindings
00:19:18 <kmc> a friend used RE2 to make http://livegrep.com
00:27:42 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do grep -i "^..:..:..: <c00kiemon5ter>" "$file" | tail -n 1; done | head -n 1
00:28:13 <HackEgo> 00:27:42: <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do grep -i "^..:..:..: <c00kiemon5ter>" "$file" | tail -n 1; done | head -n 1
00:37:32 <Sgeo> I can imagine some ways to write really horrific Smalltalk code
00:37:44 <Bike> smalltalk golf
00:37:50 <kmc> you could enter it into my devious code contest
00:37:52 <kmc> if i ever run that
00:38:00 <saijanai_> you can write bytecode, ,put it in a byte array, and evaluate it
00:38:17 <olsner> that's not devious, that's obvious
00:38:18 <Sgeo> There are objects that respond to value to mean something other than execution or cached or whatever:
00:38:21 <Bike> calling out to assembly is so boring though!
00:38:28 <kmc> i did that in haskell once
00:38:41 <kmc> with native machine code
00:38:43 <Bike> now, if you could treat an object as a byte array and evaluate it
00:38:47 <Bike> then we're talkin
00:38:54 <Sgeo> (2 > 1) ifTrue: 'a' -> 'b' ifFalse: 'b' -> 'a'
00:39:15 <saijanai_> Bike at the metaprogramming level, you can do lots of oddities.
00:39:16 <Sgeo> The result of that is 'b'
00:39:17 <Bike> what's -> do
00:39:24 <Sgeo> Makes an association
00:39:34 <saijanai_> its the association operator
00:39:35 <Sgeo> 'a' -> 'b' is an Association with key 'a' and value 'b'
00:39:41 <Bike> oh
00:39:48 <Bike> so why doesn't it return however you notate {a,b}
00:39:49 <elliott> is it just a tuple
00:39:52 <saijanai_> a := 'a' -> 'b'. creates an association
00:40:05 <elliott> sounds like a tuple
00:40:07 <Bike> if it's just an operator precedence thing than that's also boring
00:40:15 <saijanai_> it is an object of class Association
00:40:18 <Sgeo> elliott, well, it's Smalltalk, don't expect plain tuples
00:40:31 <elliott> sounds like a plain tuple with the name Association
00:40:31 <Sgeo> In particular, its parts are accessed with key and ... value
00:40:32 <Bike> why couldn't you have plain tuples in smalltalk
00:40:42 <saijanai_> Bike everythign is an object
00:40:45 <Bike> right
00:40:54 <Bike> so you have a Tuple object that responds to member0: or w/e
00:41:05 -!- oerjan has quit (Quit: Good night).
00:41:07 <Bike> or well how you already do arrays probably
00:41:08 <Sgeo> There are arrays
00:41:08 <saijanai_> so you COULD create a method #asTuple for association
00:41:21 <Sgeo> {'a'. 'b'} at: 1
00:41:22 <Sgeo> Is 'a'
00:41:38 <Sgeo> But it's nice to store and document the meaning of the container
00:41:41 <Bike> anyway, explain your "deviousness", sgeo.
00:41:48 <elliott> Bike: are you as bored as me
00:41:59 <Bike> yes, yes i am.
00:42:00 <Sgeo> 'a' -> 'b' is an object, that responds to the value message
00:42:09 <Bike> smalltalk is way more interesting than... some tv show i'm not really paying attention to
00:42:21 <Sgeo> ifTrue:ifFalse: sends value to whichever argument is the correct one
00:42:28 <Bike> saijanai_: metaprogramming reminds me, what kind of messages do blocks respond to?
00:42:33 <Sgeo> Normally, the value message is sent to a block to execute it
00:42:54 <Sgeo> But in this case, the value message is being sent to an Association
00:42:59 <elliott> Bike: what's the tv show
00:43:04 <saijanai_> #value, #value:, #value:value: etc
00:43:25 <Bike> elliott: something about squids that doesn't have nearly enough biology
00:43:48 <saijanai_> crocasquiduana?
00:43:58 <elliott> Bike: biology just gets in the way of squids really
00:44:05 -!- copumpkin has quit (Ping timeout: 248 seconds).
00:44:08 <saijanai_> a new scyfy horror movie
00:44:25 <Bike> nope squid biology is awesome sorry
00:44:37 <Bike> i would watch a textbook on cephalopodology in tv show form
00:44:41 -!- copumpkin has joined.
00:45:02 <elliott> ok but only if it's not a documentary
00:45:08 <elliott> romantic comedy series about squid biology
00:45:09 <saijanai_> pitch it to the History or Discovery channels but you need to have aliens
00:45:14 <Bike> yeah, that'd be good.
00:45:15 <Sgeo> | assoc |
00:45:15 <Sgeo> assoc := Association new.
00:45:15 <Sgeo> assoc ifNotNilDo: assoc.
00:45:33 <Bike> what, smalltalk has nil?
00:45:33 <Sgeo> What does assoc look like now?
00:45:54 <saijanai_> nil is one of the 6 predefined words of Smalltalk
00:46:22 <Bike> what's it for? doesn't really seem like a language that needs a null pointer
00:46:25 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vs="^..:..:..: <c00kiemon5ter>" '$0 ~ s{x=$0} END{if(!x) exit 1; print x}' "$file" && break; done
00:46:27 <HackEgo> 00:46:25: <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vs="^..:..:..: <c00kiemon5ter>" '$0 ~ s{x=$0} END{if(!x) exit 1; print x}' "$file" && break; done
00:46:45 <Sgeo> I'd blame this on the use of the same selector (method name) to mean different things to different classes
00:46:52 <saijanai_> its the recipient of #ifTrue:
00:47:09 <Bike> oh, so just the false value?
00:47:14 <Sgeo> Where with generic methods, each method presumably has one intended meaning, with this style of OO, the same method name can be used to mean utterly different things in different contexts
00:47:22 <saijanai_> excuxe, the #ifNil: message
00:47:24 <Sgeo> Bike, false is the false value
00:47:31 <Bike> so... what's nil for
00:47:39 <monqy> nil value
00:47:40 <saijanai_> it is the default object type for any undefined variable name
00:47:55 <Bike> blurgh.
00:47:55 <saijanai_> so you automatically catch undefined variables
00:47:58 <c00kiemon5ter> `run printf '%s\n' '#!/bin/sh' 'ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vs="^..:..:..: <$1>" '$0 ~ s{x=$0} END{if(!x) exit 1; print x}' "$file" && break; done' >bin/seen
00:47:59 <HackEgo> bash: -c: line 0: syntax error near unexpected token `(' \ bash: -c: line 0: `printf '%s\n' '#!/bin/sh' 'ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vs="^..:..:..: <$1>" '$0 ~ s{x=$0} END{if(!x) exit 1; print x}' "$file" && break; done' >bin/seen'
00:48:18 <c00kiemon5ter> <.<
00:48:43 <c00kiemon5ter> `run echo '#!/bin/sh' >bin/seen; echo 'ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vs="^..:..:..: <$1>" '$0 ~ s{x=$0} END{if(!x) exit 1; print x}' "$file" && break; done' >>bin/seen
00:48:44 <HackEgo> bash: -c: line 0: syntax error near unexpected token `(' \ bash: -c: line 0: `echo '#!/bin/sh' >bin/seen; echo 'ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vs="^..:..:..: <$1>" '$0 ~ s{x=$0} END{if(!x) exit 1; print x}' "$file" && break; done' >>bin/seen'
00:48:52 <Sgeo> I think this is an argument for having first class methods
00:49:01 <Sgeo> Something more like CLOS than like Smalltalk
00:49:09 <c00kiemon5ter> ah :P
00:49:33 <saijanai_> sgeo I'm not familiar with how CLOS does things
00:49:37 <Bike> i think i asked this before, but, i thought you didn't have to have a notion of methods, just objects responding however they want to messages. which would be methods in most situations but not necessarily.
00:50:09 <Bike> I'm not sure what CLOS has to do with anything.
00:50:22 <Sgeo> saijanai_, you create generic functions, and then can separately define implementations if, say, argument 1 is some class or a subclass
00:50:33 <saijanai_> a message in smalltalk is a bunch of variables on the stack followed by the method name
00:50:47 <Sgeo> Bike, just noting a different between CLOS and Smalltalk
00:50:50 <Sgeo> Besides the obvious
00:50:59 <Bike> "a difference"? they're totally different
00:51:33 <c00kiemon5ter> `run curl -s http://sprunge.us/bCUe >bin/seen
00:51:38 <HackEgo> No output.
00:51:48 <c00kiemon5ter> `cat bin/seen
00:51:49 <HackEgo> cat: bin/seen : No such file or directory
00:51:51 <saijanai_> Sgeo I imagine StrongTalk allows something like that, but StrongTalk never became real popular, even by Smalltalk standards
00:52:47 <c00kiemon5ter> `ls bin
00:52:48 <HackEgo> ​? \ @ \ WELCOME \ addquote \ allquotes \ anonlog \ botsnack \ calc \ define \ delquote \ emoclew \ etymology \ forget \ fortune \ frink \ google \ hatesgeo \ interp \ joustreport \ jousturl \ json \ karma \ karma- \ karma+ \ learn \ list \ lists \ log \ logurl \ lua \ luac \ luarocks \ luarocks-admin \ macro \ makelist \ maketext \
00:52:49 -!- augur_ has joined.
00:52:51 -!- augur has quit (Ping timeout: 244 seconds).
00:53:23 <c00kiemon5ter> `ls bin | tac
00:53:24 <HackEgo> ls: cannot access bin | tac: No such file or directory
00:53:25 <Bike> I thought strongtalk was a smalltalk with strong typing? CLOS isn't really an efficiency thing, it's just a way of object-system-ing that's different from smalltalk
00:53:42 <Sgeo> Bike, here's what I'm getting at.
00:53:53 <c00kiemon5ter> `run ls bin | tac
00:53:54 <HackEgo> zalgoerjan \ zalgo \ wtf \ words \ word \ wl \ WELCOME \ WeLcOmE \ welcome \ url \ units \ translatetoerjan \ translateto \ translatefromto \ translate \ toutf8 \ tell \ tclkit \ show \ seens \ seen \ searchlog \ runce \ runc \ run \ rot13 \ roll \ rng \ relcome \ randomanonlog \ quotes \ quote \ quørjan \ quoerjan \ quachaf \ qc \ prefixes \ ping
00:53:59 <Sgeo> With CLOS, each generic function is a concrete value, a thing, that's intended to have one sort of functionality.
00:54:10 <Bike> sure.
00:54:10 <c00kiemon5ter> `run cat bin/seen
00:54:11 <HackEgo> ​<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>ERROR: The requested URL could not be retrieved</title> <style type="text/css"><!-- %l body :lang(fa) { direction: rtl; font-size: 100%; font-family: Tahoma, Roya, sa
00:54:16 <Sgeo> With a method call, there is no "This is the #value method, here's what it means"
00:54:21 <c00kiemon5ter> argh
00:54:28 <kmc> Bike: NOVA has some episodes about cephlapods
00:54:30 <Bike> right, because smalltalk is object-centric instead of function-centric.
00:54:33 <kmc> i think the cuttlefish one is free online
00:54:40 <Bike> fuck yes cuttlefish
00:54:46 <Bike> oh i should find that jellyfish video
00:54:47 <Sgeo> Thus, different classes use it to mean different things. BlockClosure>>value means something totally different from Association>>value
00:54:54 <saijanai_> Bike, yeah. So if STrongTalk has some kind of anonymous function,, like squeak's completions, then it could have some kind of typed blocks. Whether it does or not...
00:55:18 <c00kiemon5ter> `run wget http://sprunge.us/bCUe -O bin/seen
00:55:18 -!- zzo38 has quit (Remote host closed the connection).
00:55:21 <HackEgo> ​--2013-01-22 00:55:20-- http://sprunge.us/bCUe \ Connecting to 127.0.0.1:3128... failed: Connection refused.
00:55:29 <c00kiemon5ter> oh
00:55:31 <kmc> 'completions'?
00:55:54 <saijanai_> standalone anonymous methods
00:55:56 <Bike> if i had to implement CLOS in a Smalltalk environment (why) I'd have gfs just have a "call" method (assuming there's some kind of introspection to see if a given object is of a given class)
00:56:18 <Sgeo> I'm writing a blog post about this
00:56:20 <Bike> or well, whatever messages blocks have, i guess.
00:56:22 <kmc> first class functions are such a good idea that people keep inventing them over and over with different names
00:56:26 <Bike> http://www.youtube.com/watch?v=3HzFiQFFQYw Also, jellyfish.
00:56:35 <saijanai_> a := [:i| ^(i + i)].
00:56:39 <Bike> I thought Smalltalk had first class functions anyway, with blocks.
00:56:40 <kmc> everyone knows lambdas are academic nonsense, but these Ruby blocks are really webscale!
00:56:46 <Bike> ¬_¬
00:56:51 <saijanai_> a value: 2.
00:56:54 <Bike> clearly what we need is more vaus
00:56:59 <kmc> yesss
00:57:05 <Sgeo> It's hard to write pointfree Smalltalk code
00:57:06 <kmc> vau the ultimate
00:57:08 <saijanai_> blocks now allow recursion by referring to a reference outside the block
00:57:09 <Bike> smalltalk with vau calculus, let's get on it
00:57:19 <Bike> saijanai_: closures?
00:57:25 <Sgeo> Whereas in Factor, everything's pointfree by default
00:57:33 <Bike> oh that reminds me that i have no fucking clue how scope works in smalltalk still
00:57:34 <saijanai_> ah, closures, not completiions, sorry
00:57:36 <Sgeo> Bike, yes (although I don't know whether that's dialect specific)
00:57:55 <saijanai_> Bike there's no scope except that defined by the specific workspace you're using
00:58:07 <Bike> i have no idea what that means, yay.
00:58:17 <kmc> http://i.imgur.com/Ar2lNLy.png
00:58:25 <saijanai_> the inspector pane has a predefined variable named self that is implicit
00:58:37 <Bike> perhaps i should mention that my smalltalk experience consists of listening to kay at oopsla, and scanning through a smalltalk-80 manual one time
00:58:43 <Sgeo> Well, you could always do the lambda thing for new scopes, although that sucks
00:59:07 <Sgeo> [:a | "now a is in scope lexically here but not out there" ] value: 5
00:59:11 <Bike> someday i will figure out why most languages don't have "let" and just let you declarate everywhere instead
00:59:27 <Sgeo> Bike, Smalltalk methods are supposed to be small
00:59:38 <saijanai_> Bike:
00:59:51 <Sgeo> If Smalltalk had macros *grr it doesn't* would be easy to transform into a block with value:
00:59:52 <saijanai_> http://www.youtube.com/watch?v=Es7RyllOS-M&list=SP6601A198DF14788D
00:59:52 <saijanai_> squeak from teh very start
00:59:56 <Sgeo> Typical transform of let into lambda
01:00:23 <Bike> saijanai_: last time i tried i think my man issue was it not working with my weird screen resolution.
01:00:27 <Bike> main*
01:00:49 <Bike> also, youtube videos about programming give me hives,but whatever.
01:01:07 <c00kiemon5ter> `run printf '%s\n' '#!/bin/sh' 'ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vs="^..:..:..: <$1>" '\''$0 ~ s{x=$0} END{if(!x) exit 1; print x}'\'' "$file" && break; done' >bin/seen
01:01:10 <HackEgo> No output.
01:01:12 <saijanai_> mine are sorta like pair-programming tutorials. Done in the style of Salman Khan
01:01:17 <c00kiemon5ter> `run cat bin/seen
01:01:18 <HackEgo> ​#!/bin/sh \ ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vs="^..:..:..: <$1>" '$0 ~ s{x=$0} END{if(!x) exit 1; print x}' "$file" && break; done
01:01:29 <kmc> awk rockstars itt
01:01:34 <c00kiemon5ter> `seen c00kiemon5ter
01:01:36 <Bike> saijanai_: google tells me that's an actor
01:01:36 <HackEgo> 01:01:34: <c00kiemon5ter> `seen c00kiemon5ter
01:01:40 <c00kiemon5ter> yay
01:01:46 <saijanai_> khan academy
01:01:54 <Bike> Oh.
01:02:02 <kmc> khaaaaaaaaaaan!
01:02:38 <saijanai_> he gets $1 million grants to do youtube videos
01:02:38 <kmc> Bike: there are cool cephalopod videos on youtube as well
01:02:42 <kmc> mimic octopus is great
01:02:51 <kmc> it pretends to be a snake or a pointy fish or a rock
01:02:57 <Bike> octopuses running on the plains are my favorite
01:03:05 <kmc> also http://fuckyeahcuttlefish.tumblr.com/
01:03:24 <Phantom_Hoover> i have a feeling one of my lecturers is trying to go down the khan route
01:03:31 <Phantom_Hoover> it's not working out that well
01:03:36 <Sgeo> saijanai_ is totally going to get bored of this place next time my language switches
01:03:44 <kmc> also http://fyeahcuttlefish.tumblr.com/
01:03:52 <kmc> too fantastic for one tumbler
01:04:09 <kmc> i really really really want a cuttlefish aquarium but I would probably kill them almost instantly
01:04:46 <Bike> keeping aquariums is a lot of work, anyhow
01:04:55 <kmc> yeah
01:04:58 <Phantom_Hoover> http://en.wikipedia.org/wiki/File:Camouflage.jpg
01:04:59 <Phantom_Hoover> awwwww
01:05:00 <Bike> even for things less exotic than cephalopods
01:05:03 <kmc> especially large saltwater creatures that eat several live crabs per day
01:05:14 <Phantom_Hoover> i like how a baby cuttlefish is still cute despite being a scaled-down normal cuttlefish
01:05:19 <kmc> and can shoot water and ink all over the place
01:05:22 <Bike> a mantis shrimp would be cool but i should probably stick to dissecting them
01:05:29 <kmc> Phantom_Hoover: uh small things are always cuter
01:05:37 <kmc> the boston aquarium has baby cuttlefish and they are the best
01:05:45 <Bike> kmc: that thing about rocketing backwards and exposing their bones in that thing you linked was creepy :(
01:05:52 <kmc> gaah
01:06:17 <saijanai_> sgeo yeah, I only heard about this channel because you mentioned it anyway
01:06:32 <Bike> you could be the next me! but without the stunning sense of fashion
01:09:21 <olsner> time to watch some cuttlefish eating crabs
01:10:44 <elliott> kmc: i like how "tumbler" no longer looks like a word
01:10:47 <elliott> is this the price of web 2.0
01:11:12 <Bike> twittr. facebok
01:11:17 <kmc> facebok choy
01:11:30 <kmc> what price damnation now
01:13:11 -!- kmc has set topic: FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE | Necessity of inplantation of microchips every day is more and more obvious. | http://codu.org/logs/_esoteric/.
01:14:00 <Bike> that's kind of weird if you think about it. don't conspiracy nuts usually oppose chipping?
01:15:03 <kmc> i don't know if these are conspiracy nuts exactly
01:15:17 <kmc> so many kinds of crazy
01:15:36 <Sgeo> who are these/
01:15:40 <Sgeo> The RMX people, or someone else?
01:15:41 <kmc> they don't claim that the government has UFO technology. they claim to have UFO technology themselves
01:15:45 <kmc> yes those
01:16:05 <kmc> one of the applications of RMX is unbreakable crypto for "FULL ABSOLUTE PROTECTION OF MICROCHIPS IMPLANTED INTO THE HUMAN !!!"
01:16:20 <Bike> so they /are/ the shadow government! except incompetent.
01:17:00 <kmc> yeah they haven't even been able to figure out time travel or teleportation yet
01:17:14 <kmc> that's like a first term project at UFO tech school
01:18:06 <olsner> but they don't claim to have gone to ufo tech school though, do they?
01:18:11 <kmc> i'm not actually sure that they have much to say about UFO technology other than that every page has the <title> "UFO TECHNOLOGY"
01:18:12 <olsner> so they just have the ufo tech itself, without the skills to use it properly
01:18:41 <olsner> (time travel is trivial once you know which button makes it go)
01:21:48 <Phantom_Hoover> RMX
01:21:49 <Phantom_Hoover> ?
01:22:34 <elliott> really maximal xtremeness
01:22:37 <Bike> the goofy site we were linking incessantly yesterday
01:24:03 -!- Arc_Koen has quit (Quit: The struct held his beloved integer in his strong, protecting arms, his eyes like sapphire orbs staring into her own. "W-will you... Will you union me?").
01:24:47 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:26:43 <Sgeo> Probably easier to implement CReals in Smalltalk than in other languages
01:26:58 <Sgeo> I should go read a Haskell implementation and implement it.... somewhere
01:27:22 <Bike> er, why
01:27:35 <Sgeo> Because it would be interesting and useful?
01:28:01 <Bike> no, i mean, why would it be easier in smalltalk
01:28:20 <Sgeo> Probably easier to fit a new kind of number into the number hierarchy
01:28:46 <Bike> can you make it work so that 4 + <your creal> works, and not just <your creal> + 4?
01:28:51 <monqy> Sgeo: imo read a haskell implementation and implement haskell
01:28:51 <Sgeo> saijanai_, any special considerations when dealing with things that might not terminate when sent = ?
01:28:55 <monqy> Sgeo: then just use haskell creals
01:29:38 <Sgeo> Bike, probably. I assume there's some system in place in case 4 + <blah> has an error
01:30:36 <Sgeo> Yeah, 4 + <foo> can end up sending a message to <foo> if it's not an Integer
01:31:16 <Sgeo> oh wait what the message is called adaptToInteger:andSend:
01:31:22 <Sgeo> hrm
01:34:16 <Sgeo> "Modern functional programming languages such as ML and Haskell have followed Smalltalk's lead"
01:34:42 <Sgeo> [about "collection-based programming"]
01:35:03 <Bike> paradigm-based programming
01:38:52 <Sgeo> This is a terminally stupid idea:
01:39:11 <Sgeo> (2 > 1) ifTrue: someValueDontKnowWhatItIs ifFalse: someOtherValue
01:39:52 <Sgeo> saijanai_, is there a way to seach Pharo for any uses of ifTrue:ifFalse: etc. that look like that?
01:39:56 <Sgeo> Not using a block?
01:41:45 <saijanai_> Sgeo there's a menu choice in squeak that searches for methods, but it causes an error in every version I have used. There's specific methods that do that kind of thing, but I don't remember what they are
01:42:25 <saijanai_> it causes an error in *pharo* when you use the menu. It works fine in squeak, the last time i checked
01:42:58 <saijanai_> btw, what is a creal?
01:43:08 <Bike> computable real.
01:43:27 <Bike> a way of representing (a countable subset of) real numbers in computers. that's not floats.
01:44:07 <Sgeo> You can describe pi exactly by giving an algorithm, and a CReal would store that algorithm
01:44:12 <saijanai_> never heard of it. IT should be easy to implement methods for such a thing, but to make it a first class citizen like 1.207, you would have to change the parser
01:44:23 <shachaf> You can also describe pi exactly by saying "pi".
01:44:45 <Sgeo> saijanai_, I don't think changing the parser would be too useful here
01:45:14 <saijanai_> why not? all of smalltalk is built around the parser. There's no predefined syntax that can't be changed
01:45:27 <saijanai_> though some things would break if you changed things too much, obviously
01:45:34 <shachaf> Sgeo: You should represent CReals as constructive Dedekind cuts.
01:45:43 <shachaf> That's the only true way to construct the reals.
01:45:58 <Bike> imo cauchy
01:46:08 <Bike> saijanai_: how would you add syntax for another kind of number literal?
01:46:18 <saijanai_> parse for that literal
01:46:22 <Sgeo> saijanai_, there's no really obvious way to write down a creal like pi other than some sort of constructor that takes a block
01:46:40 <Sgeo> There's no reason for it to be easier than a message send
01:46:47 <Sgeo> Although I am curious about this parser modification
01:47:11 <saijanai_> for example, an arbitrary floating point number that uses the libgmp library could be autodefined by fp := 1.2765r
01:47:13 <Sgeo> I wonder what will break if I delete Object>>value
01:47:33 <Sgeo> saijanai_, these things aren't floating-point. Conceptually, they're infinite precision
01:47:35 <saijanai_> which would create a special object that knows how to call the external libs instead of the regular libs
01:47:40 <Bike> so where's the libgmp hook up?
01:47:55 <saijanai_> Bike at the method level
01:48:11 <Bike> i mean, i want to know how you'd do the modification, so that 1.2765r is read in as a gmp float instead of a regular float
01:48:17 <saijanai_> an object of tiype Libgmp would use its own #+ messages
01:49:02 <saijanai_> Bike, you would change the parser to look for an otherwise valid number that ends with r
01:49:11 <Bike> yes, but what are the particulars.
01:49:18 <saijanai_> I've never edited the parser
01:49:40 <saijanai_> you can add scientific notation to the end of a number and automatically create floats, for example
01:50:17 <saijanai_> one of the OpenGL interface libraries adds the trinary operator x@y@z to a point3
01:50:32 <saijanai_> Point3D class
01:50:39 <Sgeo> saijanai_, are you sure that's a parser modification?
01:50:42 <saijanai_> normally only x@y is defined
01:50:51 <Sgeo> Sounds like it might just be a modification to Point to accept a @ message
01:51:39 <saijanai_> Sgeo, pretty sure as Point3D is a different class, and trhing to add any trinary operator to a regular smalltalk class causes errors
01:51:51 <Sgeo> But... it wouldn't be a true trinary operator
01:52:03 <Sgeo> Does it actually act like a trinary operator?
01:52:12 <saijanai_> x@y@z is the syntax
01:52:12 <Sgeo> What happens if I do 1 @ 2 + 3 @ 4?
01:52:38 <saijanai_> I don't know the operator precidence for @ vs + I think they are the same
01:52:58 <saijanai_> so is + defined for Point objects?
01:53:36 <Sgeo> Probably not. By normal precedence rules, + would get sent to a Point object. But if there are now magical ternary operators, they might mess up precedence somehow
01:54:09 <saijanai_> sgeo, only in the image that has the OpenGL interface lib installed
01:54:26 <Sgeo> Why would someone make a parser change when they could just change Point? Especially in the Smalltalk culture of "Oh I love monkey-patching"
01:54:30 <saijanai_> monticello allows a class to monkey-patch the IDE when something is installed
01:54:39 <saijanai_> the IDE uses a specific parser
01:54:52 <Bike> why would someone make a parser change <-- like we've ever needed a good reason to fuck with parsing
01:54:53 <Sgeo> Where's the image?
01:55:27 <Sgeo> Yes but I gather that the point3d thing is serious business, not just fun
01:55:42 <saijanai_> the lisp librray and Ometa both change the IDE's parser so that the class specific version is used when editing objects of a specific class or subclass
01:56:23 <Sgeo> saijanai_, fair enough. But I still don't see why any significant changes of that nature are needed for 1@2@3
01:56:24 <saijanai_> so you can write lisp methods when you work with the Lisp class, and you can embed arbitrary languages into an Ometa method
01:56:41 <saijanai_> what does 1@2@3 do in normal smalltalk?
01:57:06 <Sgeo> First, @ would get sent to 1 with argument 2, creating a Point
01:57:12 <saijanai_> a := 1@2. 1 receives the @message with 2 as a parameter, creating a point
01:57:21 <saijanai_> now send @3 to that point
01:57:22 <Sgeo> Then, the created Point object receives a message @ with argument 3
01:57:39 <Sgeo> So, all that's needed for Point3D is to change Point to respond to that message with a Point3D
01:58:28 <saijanai_> I think that unary methods work differently. you don't need ':' with a unary method, so you have to define the method @@ to be sent as a message
01:58:50 <Sgeo> @ is being used here as a binary message
01:58:58 <Sgeo> You do know what those are, right?
01:59:00 <saijanai_> well yes
01:59:52 <saijanai_> I don't know that chaing the parser was needed, but it was (I believe) done because a normal smalltalk doesn't accept a message defined as @@
02:00:10 <Sgeo> But we don't need a message @@
02:00:10 <saijanai_> and that is how it is defined for Point3D
02:00:28 <saijanai_> as I said, I don't know if it was needed, but @@ is defined for Point3D
02:00:41 <saijanai_> checking
02:02:08 -!- derkus has joined.
02:06:53 <saijanai_> I may be wrong there
02:06:58 <saijanai_> @ aNumber
02:06:58 <saijanai_> ^Vector3 x: x y: y z: aNumber
02:07:21 <saijanai_> ah, wait, no it only takes a single @
02:10:43 <Sgeo> Non-terminating =. Bad idea?
02:11:30 <Bike> only if you're a wuss!
02:11:54 -!- sebbu has quit (Read error: Connection reset by peer).
02:12:17 -!- sebbu has joined.
02:12:17 -!- sebbu has quit (Changing host).
02:12:17 -!- sebbu has joined.
02:24:33 -!- DHeadshot has joined.
02:25:49 <DHeadshot> Hi
02:26:01 <shachaf> `welcome DHeadshot
02:26:02 <HackEgo> DHeadshot: 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.)
02:26:47 <DHeadshot> I was just saying hi - I'm not new: check the logs.
02:27:27 <shachaf> `WELCOME DHEADSHOT
02:27:28 <HackEgo> DHEADSHOT: 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.)
02:29:17 <saijanai_> sgeo i apparently misremembered things completely
02:29:33 <saijanai_> point responds to @ by creating a Vector3
02:30:11 <DHeadshot> There was a programming language on minicomputers made by Honeywell in the 1960s called BACK. I can find no information about it online except that it exists. Anyone know anything of it?
02:30:58 <saijanai_> I believe tehere is a version that responds to @ @ but I don't know how it is implemented. adding another @ to the method name for Point causes a syntax error
02:31:15 <saijanai_> which is why I suspected that it was using a different parser
02:32:38 -!- monqy has quit (Ping timeout: 245 seconds).
02:33:20 <Bike> DHeadshot: no, but checked the usual places? softwarepreservation, hopl?
02:37:44 <saijanai_> sgeo further googling shows a discusion of pt := 1@2@3. In dolphin smalltalk, but not squeak
02:37:52 <saijanai_> more than likely I jiust got confused
02:38:23 -!- copumpkin has quit (Ping timeout: 252 seconds).
02:39:01 -!- copumpkin has joined.
02:40:50 -!- DHeadshot has quit (Read error: Connection reset by peer).
02:40:56 -!- DH____ has joined.
02:42:09 <DH____> Seems none of those go back that far...
02:43:57 -!- DH____ has changed nick to DHeadshot.
02:46:06 -!- monqy has joined.
02:47:00 <shachaf> monqy: lens 3.8 is out btw
02:47:24 <monqy> should i go stable or stay on HEAD
02:47:35 <monqy> what if there are new innovations!!!lens innovations
02:47:36 <kmc> git checkout origin/yolo
02:55:50 -!- DHeadshot has quit (Read error: Connection reset by peer).
02:55:56 -!- DH____ has joined.
02:59:53 -!- DH____ has changed nick to DHeadshot.
03:10:29 <kmc> shachaf: AMD64 Linux has "syscall; ret" at a fixed address (in the legacy vsyscall page)
03:10:47 <shachaf> kmc: Yep, we've talked about that before in here, I think.
03:10:48 <kmc> does this make ROP significantly easier or is there some reason why it's not that useful
03:10:51 <kmc> i think so too
03:11:45 <shachaf> It seems like it might.
03:11:54 <shachaf> Though you probably need a bunch of other gadgets to make it useful.
03:11:56 <kmc> yeah
03:12:01 <kmc> you need to get useful values into registers
03:12:22 <shachaf> But I guess most code doesn't have a syscall instruction at a known address.
03:12:24 <kmc> i assume grsec disables it
03:12:29 <kmc> well, it depends
03:12:35 <kmc> if you have exe ASLR then yes
03:12:39 <kmc> but that's still pretty uncommon
03:12:51 <shachaf> This page isn't even used for anything, is it?
03:13:01 <kmc> I guess .so ASLR is good enough for a typical dynamically linked programa
03:13:10 <kmc> shachaf: legacy ABI compat only
03:13:27 <shachaf> Right.
03:13:28 <kmc> this came up again because somebody asked why clock_gettime isn't in vsyscall.h even though it's a vsyscall
03:13:30 -!- EgoBot has quit (Read error: Connection reset by peer).
03:13:33 <kmc> i think that is the header for this legacy mechanism
03:13:45 <kmc> linux's "never ever break userspace binaries" policy is... not the best for security
03:14:01 -!- EgoBot has joined.
03:14:01 <shachaf> I think the Windows approach is probably better for that.
03:14:10 <shachaf> Putting all the compatibility cruft in userspace libraries.
03:14:19 <kmc> yes
03:14:33 <kmc> smaller and less crufty kernel attack surface
03:15:08 <kmc> maybe linux should just not map that page and emulate it via the page fault handler
03:15:28 -!- zzo38 has joined.
03:15:28 <kmc> then people will google "why did my old program get 5000000x slower in Linux 3.12"
03:16:46 <shachaf> On the other Windows still does things like font rendering in the kernel.
03:16:59 <kmc> or it could map it on first use, but do some sanity checks first (not sure what exactly)
03:17:19 <Bike> Is there a format for fonts that allows arbitrary code execution yet
03:17:28 <kmc> Bike: you mean on purpose? ;)
03:17:34 <kmc> i want NaCl fonts
03:17:35 <Bike> yeah
03:17:47 <Bike> actually hell, we have TeX. does METAFONT?
03:19:28 <shachaf> TrueType fonts have little programs in them, right?
03:24:12 <shachaf> TrueType is JITted in Windows?
03:25:59 <zzo38> METAFONT does not have abitrary code execution; the input file allows arbitrary calculation but not file output or native code execution. The output is GF and TFM, which has enough commands for graphics and ligature/kern and a few other things.
03:30:55 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:31:01 -!- DH____ has joined.
03:34:13 -!- sivoais_ has joined.
03:37:58 <shachaf> hi monqy
03:39:52 <monqy> hi shachaf
03:40:17 <shachaf> is that a hi of disapproval :'(
03:40:28 <monqy> could be
03:40:50 <shachaf> monqy: don´t you hi of disapproval me¡¡
03:43:13 -!- DH____ has quit (Read error: Connection reset by peer).
03:45:18 -!- sivoais has quit (Quit: leaving).
03:46:36 -!- sivoais_ has quit (Quit: leaving).
03:47:03 -!- sivoais has joined.
04:12:10 -!- Bike has quit (Ping timeout: 260 seconds).
04:13:44 -!- Bike has joined.
04:49:22 -!- azaq23 has joined.
05:02:02 <kmc> Remove the stone of shame! Attach the stone of triumph!
05:02:10 <coppro> :D
05:02:36 <zzo38> I don't have either.
05:04:58 * quintopia hands zzo38 the stone of shame
05:05:27 <Sgeo> Smalltalk invented MVC and then abandoned it
05:05:33 <Sgeo> I don't... quite get it
05:05:38 <quintopia> did it?
05:05:54 <quintopia> the examples they give for code projects still use it
05:05:56 <Sgeo> "Morphic allows merging Model and View in a single Morphic object that besides being a model, it also knows about user interaction. The controller is no longer needed."
05:06:11 <quintopia> ah well
05:06:14 <Sgeo> Uh, I don't think I feel totally comfortable with that coupling
05:06:21 <Sgeo> quintopia, what examples where?
05:06:35 <quintopia> like the laser game
05:07:04 <Sgeo> I thought that was Morphic
05:07:22 <quintopia> it uses some morphs
05:07:24 <quintopia> but
05:07:32 <quintopia> it separates the model and the view for sure
05:08:51 <Sgeo> "This is simpler, but won't allow for different views on the same model. If this is desired, model and view can be separated; making a non-morphic object for the model, and a morph for the view."
05:09:01 * Sgeo should learn to not stop reading at the first sentence.
05:10:23 <Sgeo> "The event propagation mechanism is available for communicating the view and the model in the same fashion as in MVC."
05:11:31 <Sgeo> Will Morphic be the UI toolkit that I feel comfortable writing UIs in???
05:11:35 <Sgeo> Will I ever find one?
05:11:37 <Sgeo> Who knows!
05:11:39 <Sgeo> Hahhahahah
05:11:56 <Sgeo> Like I could possibly settle down with a language long enough hahahah
05:12:12 <shachaf> If you ever find one, I'm sure we'll all hear about it.
05:12:14 <quintopia> drag and drop wysiwyg is the one true ui building system!
05:14:50 <Sgeo> "This makes Morphic the ideal environment to experiment, learn and write new styles in user interfaces, breaking away from what commercial programming tools allows us to do. Morphic is the future of user interfaces. "
05:15:17 <Sgeo> I... don't see people rushing to adapt Morphic. Probably because its philosophy seems rather anti "looking native"
05:16:04 <monqy> Why Morphic is Way Cool
05:16:04 <monqy> Last updated at 10:24 pm UTC on 13 December 2006
05:16:04 <monqy> A short essay by Jim Benson March, April 2000
05:16:08 <kmc> people don't care about native widgets anymore
05:16:13 <kmc> does google have native widgets? does facebook?
05:16:35 <shachaf> Pretty native.
05:17:20 <kmc> i don't think i have a single 'native widget' open on my screen right now
05:17:22 <Sgeo> I was going to say that I think people would object to non-native ... whatever those buttons are at the top of the window, but Chrome...
05:17:45 <kmc> i have terminals, and i have chrome with its custom widgets, rendering pages with heavily styled if not fully custom widgets
05:18:03 <kmc> and i don't have those top buttons either
05:18:27 <monqy> whats a native widget hah hah hah
05:18:58 <kmc> it's funny because there was so much hand-wringing over whether Java apps could have native widgets
05:19:02 <kmc> and people just don't care at all today
05:19:13 <kmc> i think it's because the Java widgets were uglier than the native ones, whereas major websites have prettier widgets
05:19:30 <kmc> whenever i see a GTK widget now it's like a blast from the past
05:20:29 <quintopia> i have one smalltalk app on my computer and one on my phone
05:20:39 <kmc> which?
05:20:43 <quintopia> it doesnt use morphic afaict
05:20:51 <quintopia> DrGeo
05:26:41 <zzo38> The program won't be compatible with all computers if you use native widgets.
05:28:34 <zzo38> But if the program is not meant for all computers then you might use native widgets it is reasonable.
05:30:35 <zzo38> Such as, if it is Windows, then it will work on Windows, and if it is UNIX, then it will work on UNIX, and so on, but if you use SDL then it will be compatible with most computers.
05:30:43 <quintopia> zzo38: could you hand the stone of shame to shachaf please
05:31:24 <shachaf> what did i do
05:31:27 <shachaf> help !
05:31:59 <zzo38> OK
05:33:27 <Sgeo> "At the time of this writing (4/2000), Wired Fabrik is in development, and Wireless Fabrik still does not exist. In the next several months, expect sustained development in this project.
05:33:28 <Sgeo> "
05:36:14 <Sgeo> Maybe I should read the laser game tutorial
05:36:24 -!- sivoais has quit (Ping timeout: 240 seconds).
05:45:13 <Sgeo> <purr> <micahjohnston> somebody should get a large corpus of english text in IPA and markov-chain it to a text-to-speech
05:47:10 <Sgeo> squeak_etoys
05:55:31 -!- sivoais has joined.
06:06:46 -!- sivoais has changed nick to sivoais_.
06:07:51 <Sgeo> If anonymous functions are essential to really be considered functional programming, why not anonymous classes for class-based OO..... wait, Java does that *shudder*
06:08:37 <shachaf> what is the true meaning of functional programming
06:09:57 <shachaf> Sgeo is visited by the ghosts of functional programming past, functional programming present, and functional programming yet to come
06:12:38 <zzo38> Now the document of Internet Quiz Engine mentions the limits, and a few other things that I forgot to mention before.
06:14:12 -!- Zerker has joined.
06:16:14 <kmc> well you can do what Java does with a lot less syntax
06:16:42 <shachaf> but ew java does it, it can't be good !
06:16:52 <kmc> "You can do what Java does with a lot less syntax" -- Alan Perlis
06:17:01 <kmc> if java didn't jump off a cliff would you jump off a cliff
06:17:17 <kmc> gotta sleep, selfish replicators are trying to eat me
06:17:18 <kmc> ttyl
06:17:29 <shachaf> Selfish replicators?
06:17:40 <kmc> virus
06:18:19 <shachaf> Ah.
06:18:24 <shachaf> Most replicators are selfish.
06:19:56 <zzo38> "This game is bad because Hitler played it." (quotation from some computer game; it is untrue)
06:20:22 <shachaf> zzo38: The game is bad for a different reason?
06:20:54 <zzo38> Actually I don't think it is bad, but some people do, it is a matter of your opinion.
06:21:11 <zzo38> What I mean is that Hitler did not play it.
06:22:05 -!- Nisstyre has quit (Ping timeout: 246 seconds).
06:23:21 <quintopia> zzo38: but hitler breathed and used toilet paper. you should reconsider your life.
06:24:11 <shachaf> I thought zzo38 was a bot.
06:38:05 -!- Nisstyre has joined.
06:43:14 -!- Zerker has quit (Remote host closed the connection).
06:47:43 <zzo38> Is there the simple C library to store a read/write file-system in one file?
06:49:04 <shachaf> There is sqlite, not that that's really a filesystem.
06:49:54 <zzo38> I don't even need name of files, just numbers (although some numbers might be skipped).
06:53:50 <zzo38> I do know of sqlite but I don't think that is what I need.
06:54:11 <shachaf> Well, it'll let you map numbers to blobs.
06:54:14 <shachaf> What else do you need?
06:55:28 <zzo38> I intend that it is not too slow, that you can add and delete files and affect their length, seek files like you can with actual files, without wasting space, etc. Maybe sqlite might do but it might also do various things which I don't need and to ruin something due to that, but maybe not, I don't know.
06:55:43 <zzo38> I have used sqlite before, so I know it can use for some things.
06:57:48 <zzo38> I know you can map numbers to blobs, but can you use fseek and that stuff with it? And, even if you can't, will it save space without having to move too many things around, if you delete stuff or append stuff or whatever?
06:58:04 <shachaf> Probably not.
06:58:23 <zzo38> That is why I wanted something else.
06:59:54 <zzo38> I tried to write one but it doesn't work; I would have to try again, if there isn't the other one.
07:01:51 -!- asiekierka has quit (Excess Flood).
07:04:40 -!- asiekierka has joined.
07:06:55 <zzo38> What I tried to do is this: There is the global header, which specifies the four byte maker ID, the block size, the first free block address, and the last free block address. Each block has the local header indicating the file type, file number, and either the next block number or the size of how much of this block is used; free blocks store the previous and next free block address.
07:06:57 <zzo38> However, it doesn't work.
07:08:21 <shachaf> I bet you could take a FUSE thing and reuse it.
07:09:06 <zzo38> But I want it to be not only on Linux.
07:09:22 <shachaf> You can take the code from some FUSE filesystem, I mean.
07:09:32 <shachaf> It would have all the operations you want.
07:09:36 <zzo38> O, OK. Do you know what ones?
07:09:45 <shachaf> Nope.
07:13:36 <fizzie> There are probably quite a few custom such things, and I'm sure some have been librarized, but I don't know any names offhand. (Admittedly the number of read-only filesystem-in-a-file libs is probably much larger.)
07:14:31 -!- sivoais has joined.
07:18:22 <zzo38> fizzie: Is there something like what I was trying to make, but in a way that actually works, instead of doesn't work? (It doesn't have to be exactly like that; that just means what I tried, but, it doesn't work, so it should be different)
07:21:00 <fizzie> There are several small FAT libraries which let you plug in your own code to handle the storage side (designed for embedded stuff), but those probably assume that the size of the filesystem as a whole is fixed, and anyway I suppose there's no real reason to be FAT-compatible in this case.
07:23:16 <shachaf> `welcome sivoais
07:23:20 <HackEgo> sivoais: 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:23:21 <zzo38> It won't work, because, what I intend to use, is not FAT and is not fixed either.
07:25:18 <zzo38> C has no command to shorten a file, but that is OK if the free space in the file can be reused, and a separate program can be used to shorten the file (possibly including, defragmenting and then writing the output to a new file which might be shorter)
07:30:17 <zzo38> Is there no such program?
07:31:09 <fizzie> I will be somewhat surprised if there truly isn't, but it's not such an easy thing to search for.
07:31:12 <zzo38> I tried to write one but I think I did something wrong. Maybe I have to be more careful to figure out, and then make it. Do you know to do better?
07:38:30 <fizzie> What you described sounded reasonably reasonable. Possibly you might want to do tail-packing to save some space, but that does complicate things. (One alternative would perhaps be to use a userspace library for some "real filesystem" that's resize-friendly, and then resize the underlying file when it's getting too close to full or overly empty. But it does sound a bit clunky.)
07:42:08 <zzo38> But C doesn't have a command to resize the file; however, in what I am using, simply reusing the free space in the file is good enough (the file won't likely get much smaller, and if it does, you can use a separate program to transfer it to a new file, is OK). What does tail-packing mean?
07:43:08 <shachaf> Putting the end of a file into a block that also stores other files.
07:43:27 <fizzie> Typically, a block that stores ends of other files, since other blocks are of course full.
07:43:31 <zzo38> Yes it does complicate things.
07:43:52 <zzo38> It is why I didn't do that.
07:45:23 <shachaf> I was going to implement it once. But then it ended up being complicated and not worth that much, so I didn't.
07:48:51 <fizzie> Anyhow, you *can* resize most filesystems (so you could grow the file every now and then; a real filesystem would of course be able to reuse free space in the file; and the defragment/compact step could indeed be a separate operation), though it could be that it's a "heavier" operation than you'd like, involving reasonably much rewriting/copying. (Also, I don't know how good userspace ...
07:48:58 <fizzie> ... libraries there are for different filesystems.)
08:00:51 -!- FreeFull has quit.
08:06:34 * impomatic is entering Al's programming contest http://azspcs.net/Contest/Factorials
08:10:46 -!- epicmonkey has joined.
08:11:57 -!- zzo38 has quit (Remote host closed the connection).
08:29:24 -!- epicmonkey has quit (Ping timeout: 256 seconds).
09:04:12 -!- Bike has quit (Quit: leaving).
09:06:38 -!- oerjan has joined.
09:20:10 <oerjan> <c00kiemon5ter> `run wget http://sprunge.us/bCUe -O bin/seen <-- use `fetch it's more primitive but doesn't hit the sandboxing bugs + restrictions
09:20:15 <shachaf> helloerjan
09:20:23 <oerjan> hachaf
09:20:36 <oerjan> @tell c00kiemon5ter <c00kiemon5ter> `run wget http://sprunge.us/bCUe -O bin/seen <-- use `fetch it's more primitive but doesn't hit the sandboxing bugs + restrictions
09:20:36 <lambdabot> Consider it noted.
09:21:03 <shachaf> happy to see your back
09:21:07 <shachaf> http://www.molvania.com/molvania/images/zlads_backnew2.gif
09:24:13 -!- azaq23 has quit (Quit: Leaving.).
09:39:49 <oerjan> `seen c00kiemon5ter
09:40:21 <HackEgo> No output.
09:40:30 <oerjan> `cat bin/seen
09:40:31 <HackEgo> ​#!/bin/sh \ ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vs="^..:..:..: <$1>" '$0 ~ s{x=$0} END{if(!x) exit 1; print x}' "$file" && break; done
09:40:36 <oerjan> `seen c00kiemon5ter
09:40:49 <monqy> did someone break `seen....
09:41:08 <HackEgo> No output.
09:42:28 <oerjan> c00kiemon5ter tried to fix it. it hasn't been changed again since last time that worked...
09:42:45 <oerjan> s/fix/optimise/
09:43:36 <oerjan> `seen oerjan
09:43:38 <HackEgo> 09:43:36: <oerjan> `seen oerjan
09:43:44 <oerjan> `seen monqy
09:44:15 <HackEgo> No output.
09:44:28 <oerjan> `seen Bike
09:44:30 <HackEgo> 03:17:47: <Bike> actually hell, we have TeX. does METAFONT?
09:44:36 -!- epicmonkey has joined.
09:45:22 <oerjan> `seen monqy
09:45:53 <HackEgo> No output.
09:46:04 <oerjan> `seen HackEgo
09:46:12 -!- Taneb has joined.
09:46:34 <HackEgo> No output.
09:46:40 <oerjan> `seen Bike
09:46:42 <HackEgo> 03:17:47: <Bike> actually hell, we have TeX. does METAFONT?
09:47:21 <oerjan> @tell c00kiemon5ter your `seen is unreliable in an incomprehensible yet repeatable way...
09:47:22 <lambdabot> Consider it noted.
09:48:26 <Taneb> `seen oerjan
09:48:28 <HackEgo> 09:47:21: <oerjan> @tell c00kiemon5ter your `seen is unreliable in an incomprehensible yet repeatable way...
09:48:50 <oerjan> `seen Taneb
09:49:21 <HackEgo> No output.
09:49:24 <oerjan> @tell c00kiemon5ter Also it doesn't include the filename/date
09:49:24 <lambdabot> Consider it noted.
09:49:37 <oerjan> oh wait...
09:49:41 <oerjan> `seen Taneb
09:49:43 <HackEgo> 09:48:26: <Taneb> `seen oerjan
09:50:09 <oerjan> @tell c00kiemon5ter oh wait it's the darn nick tab completion trap again
09:50:09 <lambdabot> Consider it noted.
09:50:56 <oerjan> `seen c00kiemon5ter
09:50:58 <HackEgo> 01:01:40: <c00kiemon5ter> yay
09:51:02 -!- zzo38 has joined.
09:51:39 <oerjan> `seen oerjan
09:52:10 <HackEgo> No output.
09:53:34 <fizzie> What's the trap? Does it add a space?
09:54:02 <oerjan> yes
09:54:07 <fizzie> In that case.
09:54:18 <Deewiant> `run sed -i 's/vs/vf="$(basename "$file")" -vs/;s/print /print f,/' bin/seen
09:54:18 <fizzie> `run sed -i -e 's/$1/${1% }/' bin/seen # special cases are just fine
09:54:22 <HackEgo> No output.
09:54:24 <HackEgo> No output.
09:54:44 <fizzie> Concurrent editing for the win.
09:54:48 <fizzie> `cat bin/seen
09:54:49 <HackEgo> ​#!/bin/sh \ ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file")" -vs="^..:..:..: <${1% }>" '$0 ~ s{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
09:55:10 <Deewiant> `seen c00kiemon5ter
09:55:12 <HackEgo> 2013-01-22.txt 01:01:40: <c00kiemon5ter> yay
09:55:21 <fizzie> `run seen 'oerjan ' # only does single spaces
09:55:23 <HackEgo> 2013-01-22.txt 09:54:02: <oerjan> yes
09:55:27 <oerjan> `seen oerjan
09:55:29 <HackEgo> 2013-01-22.txt 09:55:27: <oerjan> `seen oerjan
09:55:31 <oerjan> `seen oerjan
09:55:34 <HackEgo> 2013-01-22.txt 09:55:31: <oerjan> `seen oerjan
09:55:38 <fizzie> Deewiant: Perhaps you should get rid of the .txt bit too.
09:55:39 <oerjan> yay
09:55:49 <oerjan> @tell c00kiemon5ter Deewiant and fizzie fixed it :)
09:55:49 <lambdabot> Consider it noted.
09:56:23 <Deewiant> `run sed -i 's/")"/" .txt)"/ bin/seen
09:56:24 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `'' \ bash: -c: line 1: syntax error: unexpected end of file
09:56:30 <Deewiant> `run sed -i 's/")"/" .txt)"/' bin/seen
09:56:33 <HackEgo> No output.
09:56:51 <Deewiant> `seen oerjan
09:56:54 <HackEgo> 2013-01-22 09:55:49: <oerjan> @tell c00kiemon5ter Deewiant and fizzie fixed it :)
09:57:04 <oerjan> what did that do
09:57:08 <oerjan> `cat bin/seen
09:57:10 <HackEgo> ​#!/bin/sh \ ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vs="^..:..:..: <${1% }>" '$0 ~ s{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
09:57:21 <fizzie> basename is fancy.
09:58:09 <oerjan> `seen oklo.*
09:58:12 <HackEgo> 2013-01-20 08:53:02: <oklopol> topics
09:59:03 <Taneb> `seen [Taneb|atriq|Ngevd]
09:59:29 <Taneb> That won't work at all, will it
09:59:31 <HackEgo> 2012-05-24 03:59:50: <a> hi
09:59:43 <Taneb> `seen Ngevd
09:59:48 <HackEgo> 2012-12-23 01:03:33: <Ngevd> Goodnight!
09:59:51 <zzo38> Maybe you need () instead of []
10:00:02 <Taneb> `seen (Taneb|atriq|Ngevd)
10:00:05 <HackEgo> 2013-01-22 10:00:02: <Taneb> `seen (Taneb|atriq|Ngevd)
10:00:13 <Taneb> Sweet
10:00:17 <zzo38> But I don't know if it will work at all
10:00:18 <Taneb> `seen Fungot
10:00:44 <oerjan> oops
10:00:48 <HackEgo> No output.
10:01:00 <Taneb> `seen fungot
10:01:00 <fungot> Taneb: but for some reason i bookmarked it, just push the name and the module definitions, not just " bug: bad procedure", which simply does a goto
10:01:02 <HackEgo> 2013-01-22 10:01:00: <fungot> Taneb: but for some reason i bookmarked it, just push the name and the module definitions, not just " bug: bad procedure", which simply does a goto
10:03:42 <Taneb> `seen edwardk
10:04:04 <HackEgo> 2012-07-24 16:03:20: <edwardk> and we also don't have coexponentials
10:07:50 <oerjan> `run sed -i 's/-v/-v IGNORECASE=1 -v/' bin/seen
10:07:52 <HackEgo> No output.
10:08:03 <oerjan> `seen Fungot
10:08:17 <oerjan> `revert
10:08:34 <oerjan> ARGH
10:08:39 <oerjan> `echo hi
10:09:04 <fizzie> I think there should be an "if not in the last 30 or so files, just say 'not lately'" enhancement too.
10:09:06 <HackEgo> No output.
10:09:09 <HackEgo> Done.
10:09:10 <HackEgo> hi
10:09:52 <oerjan> fizzie: dammit why were you editing in private
10:10:00 <oerjan> `cat bin/seen
10:10:01 <HackEgo> ​#!/bin/sh \ ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vs="^..:..:..: <${1% }>" '$0 ~ s{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
10:10:16 <oerjan> also hm
10:10:22 <fizzie> I haven't been editing anything.
10:10:25 <oerjan> `run sed -i 's/-v/-vIGNORECASE=1 -v/' bin/seen
10:10:27 <fizzie> (Just running things.)
10:10:29 <HackEgo> No output.
10:10:34 <oerjan> `seen Fungot
10:10:39 <fizzie> Anyway, it's not GNU awk, it doesn't know about IGNORECASE.
10:10:45 <oerjan> wat
10:10:48 <fizzie> (As far as I can tell.)
10:11:05 <HackEgo> No output.
10:11:33 <fizzie> It's mawk.
10:11:50 <fizzie> `run awk -W version
10:11:51 <HackEgo> compiled limits: \ max NF 32767 \ sprintf buffer 2040 \ mawk 1.3.3 Nov 1996, Copyright (C) Michael D. Brennan
10:12:14 <fizzie> "Let's mawk like it's 1996", like the song goes.
10:12:22 <oerjan> `cat bin/seen
10:12:23 <HackEgo> ​#!/bin/sh \ ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vIGNORECASE=1 -vf="$(basename "$file" .txt)" -vs="^..:..:..: <${1% }>" '$0 ~ s{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
10:12:24 <fizzie> (And there's no "gawk", before you ask.)
10:12:34 <oerjan> `revert
10:12:37 <HackEgo> Done.
10:12:39 <oerjan> `cat bin/seen
10:12:40 <HackEgo> ​#!/bin/sh \ ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vs="^..:..:..: <${1% }>" '$0 ~ s{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
10:13:10 <fizzie> "tolower($0) ~ ..." works, but needs the regex be lowercase too, and that's approximately where I was in my running-in-private experiments.
10:13:21 <oerjan> *SIGH*
10:13:32 -!- Phantom_Hoover has joined.
10:13:37 * oerjan is too annoyed to continue without messing things up more
10:15:47 <oerjan> i could never be a real programmer, i have no patience with faulty tools :(
10:18:06 -!- Taneb has quit (Quit: Page closed).
10:18:18 <oerjan> that is, tools that are not an intrinsic part of the problem i am trying to solve.
10:19:39 <oerjan> my yak shaving recursion stack has only room for a couple of items.
10:23:49 <fizzie> `run seen2 'FUNgot '
10:23:51 <HackEgo> 2013-01-22 10:01:00: <fungot> Taneb: but for some reason i bookmarked it, just push the name and the module definitions, not just " bug: bad procedure", which simply does a goto
10:24:13 <fizzie> `seen2 someone_totally_crazy
10:24:15 <HackEgo> not lately
10:24:23 <fizzie> Well, that's not entirely correct, but still.
10:26:58 <fizzie> (Full disclosure: I just went and used an actual programming language.)
10:27:57 <fizzie> `run mv bin/seen2 bin/seen # meh, good enough
10:28:00 <HackEgo> No output.
10:28:10 <shachaf> What's seen2?
10:28:34 <fizzie> The case-insensitive reimplementation of seen. Well, it *was* that.
10:31:51 <monqy> `cat bin/seen2
10:31:52 <HackEgo> cat: bin/seen2: No such file or directory
10:31:55 <monqy> `cat bin/seen
10:31:56 <HackEgo> ​#! /usr/bin/env perl \ $n=shift @ARGV; $n=~s/ *$//; @f=split /\s+/, `ls -r /var/irclogs/_esoteric/????-??-??.txt | head -n 30`; for $f (@f) { open F,"<$f"; @l=grep(/^..:..:..: <$n>/i,<F>); close F; if (@l) { $b=$f; $b=~s#.*/(.*?).txt#$1#; print "$b $l[-1]"; exit 1; } } print "not lately";
10:32:02 <monqy> very actual
10:32:16 <shachaf> hellonqy
10:32:21 <shachaf> `seen monqy2
10:32:24 <monqy> hichaf
10:32:24 <HackEgo> not lately
10:33:55 <oerjan> `seen monqy
10:33:57 <HackEgo> 2013-01-22 10:32:24: <monqy> hichaf
10:35:56 <fizzie> I had the messy tolower-based mawk thing almost working, and then wanted to add that "for failing matches, look at up to 30 files and then give up noisily", and it got too nasty. (Though maybe the "No output." reply would've been sufficient.)
10:40:49 <c00kiemon5ter> o/
10:40:50 <lambdabot> c00kiemon5ter: You have 5 new messages. '/msg lambdabot @messages' to read them.
10:40:58 <c00kiemon5ter> @messages
10:40:58 <lambdabot> oerjan said 1h 20m 23s ago: <c00kiemon5ter> `run wget http://sprunge.us/bCUe -O bin/seen <-- use `fetch it's more primitive but doesn't hit the sandboxing bugs + restrictions
10:40:58 <lambdabot> oerjan said 53m 37s ago: your `seen is unreliable in an incomprehensible yet repeatable way...
10:40:58 <lambdabot> oerjan said 51m 35s ago: Also it doesn't include the filename/date
10:40:58 <lambdabot> oerjan said 50m 49s ago: oh wait it's the darn nick tab completion trap again
10:40:58 <lambdabot> oerjan said 45m 9s ago: Deewiant and fizzie fixed it :)
10:41:44 <c00kiemon5ter> nice, what was the mistake ? .. scrolling up
10:42:27 <oerjan> c00kiemon5ter: strictly speaking it's not something you think about before you see it happen
10:44:26 <oerjan> when you tab-complete a nick, normally my client and probably others add a space. HackEgo's basic command parser doesn't strip that and that sometimes makes commands look like they have freak heisenbugs
10:45:30 <oerjan> had to fix that in `welcome, for example
10:45:36 <oerjan> `cat bin/welcome
10:45:37 <HackEgo> ​#!/usr/bin/perl -w \ if (defined($_=shift)) { s/ *$//; s/ +/ @ /g; exec "bin/@", $_ . " ? welcome"; } else { exec "bin/?", "welcome"; }
10:45:59 <shachaf> `welcoerjan
10:46:00 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcoerjan: not found
10:46:49 <oerjan> shachaf: i saw in the logs that HackEgo's command list is so long you don't see all of it even if you print it _both_ forwards and backwards
10:47:03 <c00kiemon5ter> yeah :)
10:47:35 <oerjan> let's just say a disturbingly large fraction of them match *rjan*
10:47:48 <shachaf> `ls bin/*rjan*
10:47:49 <HackEgo> ls: cannot access bin/*rjan*: No such file or directory
10:47:55 <shachaf> `run ls bin/*rjan*
10:47:56 <HackEgo> bin/quoerjan \ bin/quørjan \ bin/translatetoerjan \ bin/zalgoerjan
10:48:06 <shachaf> Hmm, not nearly enough.
10:48:13 <oerjan> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
10:48:27 <c00kiemon5ter> you ended up with a perl version ? it's awful !
10:48:58 <oerjan> i too tend to end up with perl when shell has driven me sufficiently crazy
10:49:15 <c00kiemon5ter> haha ;)
10:49:32 <shachaf> `trnslatetoerjan i love words that end with o. they are so easy to ørjanize
10:49:33 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: trnslatetoerjan: not found
10:49:39 <shachaf> `translatetoerjan i love words that end with o. they are so easy to ørjanize
10:49:43 <HackEgo> Traceback (most recent call last): \ File "/hackenv/bin/json", line 5, in <module> \ print eval(sys.argv[1]).encode('utf-8') \ File "<string>", line 1, in <module> \ TypeError: 'NoneType' object is not subscriptable
10:50:14 <fizzie> http://sprunge.us/DTZf <- best gawk feature.
10:50:27 <zzo38> What is a category called for any two objects if there is no morphism X to Y then there is no morphism Y to X?
10:50:28 <oerjan> shachaf: i am not sure the api translate* used even exists at google any more
10:50:30 <fizzie> (Also I don't think we would've ended with a Perl version, had IGNORECASE worked.)
10:50:33 <zzo38> Sorry, I wrote it wrong.
10:50:41 <zzo38> What is a category called for any two objects if there is no morphism X to Y then there is at least one morphism Y to X?
10:51:16 <c00kiemon5ter> lol fizzie
10:53:06 <oerjan> zzo38: is this to hold for every pair of two objects?
10:53:15 <zzo38> oerjan: Yes.
10:53:31 <oerjan> if so i think the skeleton category is a total order, but i don't know if that has a more specific name
10:53:33 <fizzie> `run sed -i -e 's#shuf#shuf | sed s/oe/ø/g#' bin/quørjan # department of redundancy removal department (it was identical to quoerjan)
10:53:36 <HackEgo> No output.
10:53:51 <fizzie> `quørjan
10:53:52 <HackEgo> 20) IN AN ALTERNATE UNIVERSE: <ørjan> In an alternate universe, I would say "In an alternate universe, ehird has taste" \ 95) <ørjan> insufficient time dilation. try running faster. \ 461) <ais523> ørjan: I'm not imaginative enough to write truly great slash fiction \ 514) <ørjan> theorem prover yada yada halting problem. \ 377) <ørjan> as i
10:54:23 <oerjan> darn, that almost made the command interesting
10:55:19 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -v -vs="^..:..:..: <HackEgo>" '$0 ~ s{x=$0} END{if(!x) exit 1; print FILENAME,x}' "$file" && break; done
10:55:50 <HackEgo> awk: improper assignment: -v -vs=^..:..:..: <HackEgo> \ awk: improper assignment: -v -vs=^..:..:..: <HackEgo> \ awk: improper assignment: -v -vs=^..:..:..: <HackEgo> \ awk: improper assignment: -v -vs=^..:..:..: <HackEgo> \ awk: improper assignment: -v -vs=^..:..:..: <HackEgo> \ awk: improper assignment: -v -vs=^..:..:..: <HackEgo> \ awk: improper
10:55:51 <oerjan> hm wait it wouldn't be skeleton category, you need to identify morphisms too
10:55:58 <fizzie> `run quørjan | sed -e 's/ørjan/REDACTED/g' | grep ø
10:55:59 <HackEgo> 109) <REDACTED> alise: mainly it's the fact it blows so hard i cannot avoid hitting the walls of the thing, which completely gøs against my basic public toilet hygiene principles \ 636) * REDACTED concludes that unsafeCørce has no effect on strictness \ 874) <pikhq> Conext coyou'll cotell come cothat coyou cocan't coprefix cøverything cowith co"
10:56:21 <fizzie> Heh, unsafeCørce and cøverything. And gøs.
10:56:23 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vs="^..:..:..: <HackEgo>" '$0 ~ s{x=$0} END{if(!x) exit 1; print FILENAME,x}' "$file" && break; done
10:56:26 <HackEgo> ​/var/irclogs/_esoteric/2013-01-22.txt 10:55:59: <HackEgo> 109) <REDACTED> alise: mainly it's the fact it blows so hard i cannot avoid hitting the walls of the thing, which completely gøs against my basic public toilet hygiene principles \ 636) * REDACTED concludes that unsafeCørce has no effect on strictness \ 874) <pikhq> Conext coyou'll cote
10:57:36 <fizzie> If you're doing the filename-adding, Deewiant already made a version with -vf=$(basename $file .txt) that did that part pretty well.
10:58:41 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="<zzo38>" '$2 == n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
10:58:44 <HackEgo> 2013-01-22 10:53:15: <zzo38> oerjan: Yes.
10:59:16 <oerjan> `quote 874
10:59:18 <HackEgo> 874) <pikhq> Conext coyou'll cotell come cothat coyou cocan't coprefix coeverything cowith co"co". <oerjan> pikhq: coof urse conot!
10:59:48 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="<oeRjaN>" 'tolower($2) == tolower(n){x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
10:59:51 <HackEgo> 2013-01-22 10:59:16: <oerjan> `quote 874
11:00:21 -!- oerjan has quit (Quit: ARGH a chainsaw).
11:01:18 <fizzie> It was seen as desirable for regexps to be supported for the nick.
11:01:27 <c00kiemon5ter> ah
11:12:05 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="< (oeRja.*|fiz*ie) >" 'BEGIN{gsub(/^[[:space:]]+|[[:space:]]+$/, "", n)} tolower($2) ~ tolower(n){x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
11:12:36 <HackEgo> No output.
11:13:03 <c00kiemon5ter> ah, ofcourse :D
11:13:44 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn=" (oeRja.*|fiz*ie) " 'BEGIN{gsub(/^[[:space:]]+|[[:space:]]+$/, "", n); n=sprintf("<%s>",n);} tolower($2) ~ tolower(n){x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
11:14:15 <HackEgo> No output.
11:14:28 -!- zzo38 has quit (Remote host closed the connection).
11:17:56 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="c00kiemon5ter" 'BEGIN{gsub(/^[[:space:]]+|[[:space:]]+$/, "", n); n=sprintf("<%s>",tolower(n));} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
11:17:58 <HackEgo> 2013-01-22 11:17:56: <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="c00kiemon5ter" 'BEGIN{gsub(/^[[:space:]]+|[[:space:]]+$/, "", n); n=sprintf("<%s>",tolower(n));} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
11:18:12 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="c00kiem.*" 'BEGIN{gsub(/^[[:space:]]+|[[:space:]]+$/, "", n); n=sprintf("<%s>",tolower(n));} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
11:18:14 <HackEgo> 2013-01-22 11:18:12: <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="c00kiem.*" 'BEGIN{gsub(/^[[:space:]]+|[[:space:]]+$/, "", n); n=sprintf("<%s>",tolower(n));} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
11:19:01 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="(oer|fiz).*" 'BEGIN{gsub(/^[[:space:]]+|[[:space:]]+$/, "", n); n=sprintf("<%s>",tolower(n));} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
11:19:03 <HackEgo> 2013-01-22 11:01:18: <fizzie> It was seen as desirable for regexps to be supported for the nick.
11:19:25 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn=" (oer|fiz).* " 'BEGIN{gsub(/^[[:space:]]+|[[:space:]]+$/, "", n); n=sprintf("<%s>",tolower(n));} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
11:19:56 <HackEgo> No output.
11:20:34 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="(oer|fiz).* " 'BEGIN{gsub(/^[[:space:]]+|[[:space:]]+$/, "", n); n=sprintf("<%s>",tolower(n));} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
11:21:05 <HackEgo> No output.
11:22:27 <c00kiemon5ter> <.<
11:23:48 <c00kiemon5ter> `run awk -vn=" (oer|fiz).* " 'BEGIN{gsub(/^[[:space:]]+|[[:space:]]+$/, "", n); n=sprintf("<%s>",tolower(n)); print n}'
11:23:59 <HackEgo> ​< (oer|fiz).* >
11:24:42 <c00kiemon5ter> that does not look right
11:25:03 <c00kiemon5ter> `run awk -vn=" (oer|fiz).* " 'BEGIN{gsub(/(^[[:space:]]+|[[:space:]]+$)/, "", n); n=sprintf("<%s>",tolower(n)); print n}'
11:25:04 <HackEgo> ​< (oer|fiz).* >
11:25:11 <c00kiemon5ter> `run awk -vn=" (oer|fiz).* " 'BEGIN{gsub(/(^[[:space:]]+)|([[:space:]]+$)/, "", n); n=sprintf("<%s>",tolower(n)); print n}'
11:25:12 <HackEgo> ​< (oer|fiz).* >
11:26:33 <c00kiemon5ter> `run awk -vn=" (oer|fiz).* " 'BEGIN{gsub(/^[[:space:]]+|[[:space:]]+$/, "", n); print n}'
11:26:34 <HackEgo> ​ (oer|fiz).*
11:27:07 <c00kiemon5ter> `run awk -vn=" (oer|fiz).* " 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); print ":"n":"}'
11:27:21 <HackEgo> ​:(oer|fiz).*:
11:27:27 <c00kiemon5ter> `run awk -vn=" (oer|fiz).* " 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); print ":"n":"}'
11:27:28 <HackEgo> ​:(oer|fiz).*:
11:27:44 <c00kiemon5ter> it doesn't know [[:space:]] ?!
11:28:07 <c00kiemon5ter> `run awk --version | head -n1
11:28:08 <HackEgo> awk: not an option: --version
11:28:20 <fizzie> It's mawk, as mentioned before.
11:28:24 <fizzie> `run awk -W version
11:28:25 <HackEgo> compiled limits: \ max NF 32767 \ sprintf buffer 2040 \ mawk 1.3.3 Nov 1996, Copyright (C) Michael D. Brennan
11:28:29 <c00kiemon5ter> aha
11:28:36 <fizzie> That's why it doesn't do IGNORECASE either.
11:28:48 <shachaf> does m stand for Michael D. Brennan
11:29:15 <fizzie> shachaf: Oh, I'm sure Michael "big M" D. Brennan isn't *that* ostentatious.
11:29:26 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn=" (oer|fiz).* " 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); n=sprintf("<%s>",tolower(n));} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && break; done
11:29:28 <HackEgo> 2013-01-22 11:29:15: <fizzie> shachaf: Oh, I'm sure Michael "big M" D. Brennan isn't *that* ostentatious.
11:30:17 <c00kiemon5ter> and you get a lowercase ERE :D
11:30:33 <fizzie> `seen somebody_who_was_never_here
11:30:36 <HackEgo> not lately
11:30:39 <fizzie> Don't forget that particular feature.
11:31:41 <fizzie> (Though arguably it's a misfeature and you'd want to get the 2003-era results if such exist.)
11:32:45 <c00kiemon5ter> I dont think I can do that from within mawk
11:33:00 <c00kiemon5ter> will probably have to have a var
11:34:26 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn=" M(oer|fiz).* " 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); n=sprintf("<%s>",tolower(n));} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; printf 'no match for: %s\n' "$1"
11:34:57 <HackEgo> No output.
11:42:19 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="MISSING" 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); n=sprintf("<%s>",tolower(n))} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "got no match"
11:42:50 <HackEgo> No output.
11:42:54 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/2013-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="MISSING" 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); n=sprintf("<%s>",tolower(n))} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "got no match"
11:42:59 <HackEgo> got no match
11:43:10 <c00kiemon5ter> it is timing out ?
11:43:29 <c00kiemon5ter> `run time (ls -r /var/irclogs/_esoteric/????-??-??.txt | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="MISSING" 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); n=sprintf("<%s>",tolower(n))} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "got no match")
11:43:59 <HackEgo> No output.
11:46:12 <c00kiemon5ter> aha, so the perl version only checks a number of files
11:46:43 -!- KingOfKarlsruhe has joined.
11:47:01 <c00kiemon5ter> `run time (ls -r /var/irclogs/_esoteric/????-??-??.txt | head -n30 | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="MISSING" 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); n=sprintf("<%s>",tolower(n))} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "got no match")
11:47:09 <HackEgo> ​ \ real0m6.911s \ user0m1.160s \ sys0m6.360s \ got no match
11:47:15 <c00kiemon5ter> `run time (ls -r /var/irclogs/_esoteric/????-??-??.txt | head -n30 | while read -r file; do awk -vf="$(basename "$file" .txt)" -vn="MISSING" 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); n=sprintf("<%s>",tolower(n))} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "got no match")
11:47:23 <HackEgo> ​ \ real0m6.499s \ user0m0.740s \ sys0m6.150s \ got no match
11:47:46 <c00kiemon5ter> `run time seen MISSING
11:47:49 <HackEgo> not lately \ real0m1.764s \ user0m1.930s \ sys0m0.350s
11:47:58 <c00kiemon5ter> :D
11:55:57 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while [ "$((i+=1))" -ne 30 ] && read -r file; do awk -vf="$(basename "$file" .txt)" -vn="MISSING" 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); n=sprintf("<%s>",tolower(n))} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "got no match"
11:56:05 <HackEgo> got no match
11:56:12 <c00kiemon5ter> `run ls -r /var/irclogs/_esoteric/????-??-??.txt | while [ "$((i+=1))" -ne 3 ] && read -r file; do awk -vf="$(basename "$file" .txt)" -vn="MISSING" 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); n=sprintf("<%s>",tolower(n))} tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "got no match"
11:56:14 <HackEgo> got no match
11:57:17 <Deewiant> `run time find /var/irclogs/_esoteric/ -name '????-??-??.txt' -exec grep MISSING {} +
11:57:40 <HackEgo> ​/var/irclogs/_esoteric/2011-05-03.txt:21:20:38: <oerjan> olsner: MISSING WIKIPEDIA LINK \ /var/irclogs/_esoteric/2011-06-04.txt:23:47:05: <elliott__> ais523: I just want to know when MISSINGNO will be an official part of the Pokédex. \ /var/irclogs/_esoteric/2011-06-04.txt:23:48:18: <ais523> well, for one thing it's spelt MISSINGNO. with a dot,
11:57:46 <Deewiant> Blah
11:57:50 <c00kiemon5ter> haha :P
11:58:22 <c00kiemon5ter> `run time find /var/irclogs/_esoteric/ -name '????-??-??.txt' -exec grep "^....:..:..: <MISSING>" {} +
11:58:32 <HackEgo> ​ \ real0m9.084s \ user0m4.800s \ sys0m4.590s
11:58:46 <Deewiant> ...
12:08:56 <c00kiemon5ter> `run n="<$(awk -vn=" MISSING " 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); print tolower(n)}')>"; ls -r /var/irclogs/_esoteric/????-??-??.txt | while [ "$((i+=1))" -ne 30 ] && read -r file; do awk -vf="$(basename "$file" .txt)" -vn="$n" 'tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "havent seen $n lately"
12:09:03 <HackEgo> havent seen <missing> lately
12:09:31 <Deewiant> `run time true
12:09:32 <HackEgo> ​ \ real0m0.001s \ user0m0.000s \ sys0m0.000s
12:09:47 <Deewiant> `run /usr/bin/time true
12:09:48 <HackEgo> bash: /usr/bin/time: No such file or directory
12:09:51 <Deewiant> `run /bin/time true
12:09:53 <HackEgo> bash: /bin/time: No such file or directory
12:09:57 <c00kiemon5ter> `run n="<$(awk -vn=" De*wiant|sh.* " 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); print tolower(n)}')>"; ls -r /var/irclogs/_esoteric/????-??-??.txt | while [ "$((i+=1))" -ne 30 ] && read -r file; do awk -vf="$(basename "$file" .txt)" -vn="$n" 'tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "havent seen $n lately"
12:09:59 <HackEgo> 2013-01-22 12:09:51: <Deewiant> `run /bin/time true \ havent seen <de*wiant|sh.*> lately
12:10:07 <c00kiemon5ter> argh
12:10:39 <Deewiant> `run time true 2>&1 | tr -d "\n"
12:10:40 <HackEgo> ​ \ real0m0.188s \ user0m0.000s \ sys0m0.000s
12:10:47 <Deewiant> Okay, whatever.
12:11:18 <c00kiemon5ter> `run n="<$(awk -vn=" De*wiant|sh.* " 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); print tolower(n)}')>"; ls -r /var/irclogs/_esoteric/????-??-??.txt | (while [ "$((i+=1))" -ne 30 ] && read -r file; do awk -vf="$(basename "$file" .txt)" -vn="$n" 'tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "havent seen $n lately")
12:11:21 <HackEgo> 2013-01-22 12:10:47: <Deewiant> Okay, whatever.
12:11:35 <c00kiemon5ter> `run time (n="<$(awk -vn=" De*wiant|sh.* " 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); print tolower(n)}')>"; ls -r /var/irclogs/_esoteric/????-??-??.txt | (while [ "$((i+=1))" -ne 30 ] && read -r file; do awk -vf="$(basename "$file" .txt)" -vn="$n" 'tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "havent seen $n lately"))
12:11:38 <HackEgo> 2013-01-22 12:10:47: <Deewiant> Okay, whatever. \ \ real0m1.458s \ user0m0.940s \ sys0m0.980s
12:11:43 <c00kiemon5ter> ha!
12:12:06 <Deewiant> `run sh -c time true 2>&1 | tr -d "\n"
12:12:07 <HackEgo> true: 1: time: not found
12:12:09 <c00kiemon5ter> `run time (n="<$(awk -vn=" MDe*wiant|sh.* " 'BEGIN{gsub(/^[ \t]+|[ \t]+$/, "", n); print tolower(n)}')>"; ls -r /var/irclogs/_esoteric/????-??-??.txt | (while [ "$((i+=1))" -ne 30 ] && read -r file; do awk -vf="$(basename "$file" .txt)" -vn="$n" 'tolower($2) ~ n{x=$0} END{if(!x) exit 1; print f,x}' "$file" && exit; done; echo "havent seen $n lately"))
12:12:10 <Deewiant> `run sh -c 'time true' 2>&1 | tr -d "\n"
12:12:11 <HackEgo> sh: time: not found
12:12:12 <HackEgo> 2013-01-22 11:28:48: <shachaf> does m stand for Michael D. Brennan \ \ real0m1.652s \ user0m0.960s \ sys0m1.150s
12:12:17 <Deewiant> `run bash -c 'time true' 2>&1 | tr -d "\n"
12:12:18 <HackEgo> real0m0.003suser0m0.000ssys0m0.000s
12:12:30 <Deewiant> `run bash -c 'time true' 2>&1
12:12:32 <HackEgo> ​ \ real0m0.001s \ user0m0.000s \ sys0m0.000s
12:12:38 <c00kiemon5ter> 1,5 sec is pretty good I'd say :)
12:12:56 <Deewiant> `run bash -c 'time find /var/irclogs/_esoteric/ -name "????-??-??.txt" -exec grep "^....:..:..: <MISSING>" {} +' 2>&1 | tr -d "\n"
12:13:02 <HackEgo> real0m4.246suser0m2.570ssys0m2.390s
12:13:17 <Deewiant> `run bash -c 'time find /var/irclogs/_esoteric/ -name "????-??-??.txt" -exec grep "^....:..:..: <MISSING>" {} +' 2>&1 | tr -d "\n"
12:13:21 <HackEgo> real0m3.140suser0m1.500ssys0m2.410s
12:13:44 <Deewiant> `run bash -c 'time seen MISSING' 2>&1 | tr -d "\n"
12:13:47 <HackEgo> not latelyreal0m1.395suser0m2.170ssys0m0.000s
12:14:09 <Deewiant> Fair 'nuff
12:15:23 <c00kiemon5ter> `run (time true) 2>&1 | xargs printf '%s '
12:15:25 <HackEgo> real 0m0.009s user 0m0.000s sys 0m0.000s
12:18:29 -!- monqy has quit (Quit: hello).
12:25:15 <fizzie> Is that [ "$((i+=1))" -ne 30 ] && really an improvement over the | head -n 30 approach?
12:25:24 <c00kiemon5ter> maybe
12:25:34 <c00kiemon5ter> it doesnt have to spawn
12:25:50 <c00kiemon5ter> but only increment
12:25:57 <c00kiemon5ter> though the head spawn will take place once
12:26:33 <c00kiemon5ter> though for sh [ is test ?
12:27:56 <fizzie> It's a builtin in bash, though.
12:28:13 <Deewiant> [ is a shell builtin
12:28:16 <Deewiant> [[ is a shell keyword
12:28:22 <c00kiemon5ter> yes
12:28:37 <Deewiant> (No idea what the difference in practice is but that's what 'type' says.)
12:29:56 <c00kiemon5ter> [ is executed, [[ is syntax
12:43:52 -!- DHeadshot has joined.
12:44:22 <Deewiant> Oh right, differences with variable expansion and such result from that
12:58:54 -!- asiekierka has quit (Quit: ZNC - http://znc.sourceforge.net).
13:27:49 <ion> https://lh6.googleusercontent.com/-OLCMMGoSOs4/UP13JtDW7cI/AAAAAAAAF2M/vwcAqJjaJA4/w497-h373/space.gif
13:29:36 <fizzie> It is a shame the person in front couldn't keep a serious face on. :/
13:29:37 <c00kiemon5ter> :D
13:31:36 <c00kiemon5ter> `fetch http://sprunge.us/ZfLF
13:31:38 <HackEgo> 2013-01-22 13:31:37 URL:http://sprunge.us/ZfLF [311] -> "ZfLF" [1]
13:31:57 <c00kiemon5ter> `run mv ZfLF bseen
13:32:00 <HackEgo> No output.
13:32:23 <c00kiemon5ter> `run bash bseen fiz.*
13:32:25 <HackEgo> 2013-01-21 13:29:36: <fizzie> It is a shame the person in front couldn't keep a serious face on. :/
13:32:29 <elliott> `cat bseen
13:32:30 <HackEgo> ​#!/usr/bin/env bash \ s="<${1% }>" \ while ((i++ < 30)) && read -r file; do \ [[ -n "$line" ]] && { printf '%s %s\n' "$(basename "${file%.txt}")" "$line"; exit; } \ while read -r t n m; do [[ $n =~ $s ]] && line="$t $n $m"; done <"$file" \ done < <(ls -r /var/irclogs/_esoteric/????-??-??.txt) \ echo 'well, not lately'
13:32:34 <elliott> wow
13:32:38 <elliott> what have i created
13:32:53 <c00kiemon5ter> the bash version
13:33:28 <elliott> c00kiemon5ter: that version is problematic
13:33:35 <elliott> <c00kiemon5ter> thing
13:33:40 <elliott> `run bash bseen c00kiemon5ter
13:33:41 <c00kiemon5ter> maybe, just wrote it :P
13:33:42 <HackEgo> 2013-01-21 13:33:41: <c00kiemon5ter> maybe, just wrote it :P
13:33:45 <elliott> <c00kiemon5ter> thing
13:33:46 <elliott> `run bash bseen c00kiemon5ter
13:33:48 <HackEgo> 2013-01-21 13:33:41: <c00kiemon5ter> maybe, just wrote it :P
13:33:51 <elliott> huh
13:33:52 <c00kiemon5ter> haah
13:33:57 <c00kiemon5ter> that works correct
13:33:58 <elliott> oh
13:34:00 <elliott> i see what you did
13:34:06 <elliott> `log testtest
13:34:13 <HackEgo> 2011-11-09.txt:00:51:44: <lambdabot> Not in scope: `testtestt'
13:34:47 <c00kiemon5ter> `run time bash bseen elliott
13:34:48 <elliott> `run sed -i 's/".t .n .m"/"$t.txt:$n $m' bseen
13:34:50 <HackEgo> sed: -e expression #1, char 26: unterminated `s' command
13:34:50 <HackEgo> 2013-01-21 13:34:48: <elliott> `run sed -i 's/".t .n .m"/"$t.txt:$n $m' bseen
13:34:54 <elliott> `run sed -i 's/".t .n .m"/"$t.txt:$n $m/' bseen
13:34:57 <HackEgo> No output.
13:34:58 <elliott> `run bash bseen elliott
13:35:00 <HackEgo> bseen: line 5: unexpected EOF while looking for matching `"' \ bseen: line 9: syntax error: unexpected end of file
13:35:04 <elliott> oops
13:35:06 <c00kiemon5ter> :P
13:35:17 <elliott> `run sed -i 's/\.txt .n .m/.txt:$n $m"/' bseen
13:35:18 <HackEgo> No output.
13:35:19 <elliott> `run bash bseen elliott
13:35:20 <HackEgo> bseen: line 5: unexpected EOF while looking for matching `"' \ bseen: line 9: syntax error: unexpected end of file
13:35:23 <elliott> :(
13:35:24 <elliott> i am bad
13:35:25 <elliott> `run bash bseen elliott
13:35:27 <HackEgo> bseen: line 5: unexpected EOF while looking for matching `"' \ bseen: line 9: syntax error: unexpected end of file
13:35:47 <c00kiemon5ter> oh it outputs the .txt
13:36:05 <c00kiemon5ter> oh it doesnt
13:36:18 <c00kiemon5ter> what did you try to change ?
13:38:06 <c00kiemon5ter> `fetch http://sprunge.us/ZfLF
13:38:09 <HackEgo> 2013-01-22 13:38:08 URL:http://sprunge.us/ZfLF [311] -> "ZfLF" [1]
13:38:18 <c00kiemon5ter> `run mv ZfLF bseen
13:38:21 <HackEgo> No output.
13:38:54 <c00kiemon5ter> `bseen c00kie.*
13:38:55 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: bseen: not found
13:39:04 <c00kiemon5ter> `mv bseen bin/bseen
13:39:05 <HackEgo> mv: missing destination file operand after `bseen bin/bseen' \ Try `mv --help' for more information.
13:39:06 <fizzie> Arguably basename "$file" .txt looks less crufty than basename "${file%.txt}" though of course both do the same thing.
13:39:35 <c00kiemon5ter> but $(basename spawns a subshell
13:39:47 <fizzie> You already have that there.
13:39:55 <c00kiemon5ter> ah, I do :P
13:40:06 <fizzie> You could put in a #*/# kind of thing, though.
13:40:32 <c00kiemon5ter> it is also the wrong file :P
13:40:56 <fizzie> `run f="/foo/bar/baz.txt"; echo ${f##*/}
13:40:57 <HackEgo> baz.txt
13:41:04 <fizzie> Something like that.
13:41:20 <fizzie> I don't remember if you can nest them, though.
13:41:24 <c00kiemon5ter> you cannot
13:41:56 <c00kiemon5ter> `fetch http://sprunge.us/DOiJ
13:41:56 <HackEgo> ​ http://sprunge.us/DOiJ: Scheme missing.
13:42:07 <c00kiemon5ter> `fetch http://sprunge.us/DOiJ
13:42:07 <HackEgo> 2013-01-22 13:42:05 URL:http://sprunge.us/DOiJ [323] -> "DOiJ" [1]
13:42:15 <c00kiemon5ter> `mv DOiJ bin/bseen
13:42:16 <HackEgo> mv: missing destination file operand after `DOiJ bin/bseen' \ Try `mv --help' for more information.
13:42:25 <c00kiemon5ter> `run mv DOiJ bseen
13:42:28 <HackEgo> No output.
13:42:35 <c00kiemon5ter> `run mv bseen bin/bseen
13:42:38 <HackEgo> No output.
13:42:47 <c00kiemon5ter> `bseen HackEgo
13:42:48 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/bin/bseen: Permission denied \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/bin/bseen: cannot execute: Permission denied
13:42:52 <elliott> c00kiemon5ter: I tried to make the output consistent with `log
13:43:07 <c00kiemon5ter> `run chmod 755 bin/bseen
13:43:10 <HackEgo> No output.
13:43:13 <c00kiemon5ter> `bseen HackEgo
13:43:16 <HackEgo> ​/var/irclogs/_esoteric/2013-01-22 13:43:10: <HackEgo> No output.
13:43:22 <c00kiemon5ter> ahm
13:43:26 <elliott> I kind of suspect grep might be faster than going through a tight loop in bash though :/
13:44:43 <fizzie> `run time seen MISSINGNO
13:44:45 <fizzie> `run time bseen MISSINGNO
13:44:45 <HackEgo> not lately \ real0m1.276s \ user0m1.820s \ sys0m0.000s
13:44:57 <HackEgo> well, not lately \ \ real0m11.027s \ user0m10.260s \ sys0m1.230s
13:44:59 <c00kiemon5ter> `run sed -i 's,/}",&;/' bin/bseen
13:45:00 <HackEgo> sed: -e expression #1, char 9: unterminated `s' command
13:45:03 <fizzie> Ye-es.
13:45:06 <c00kiemon5ter> `run sed -i 's,/}",&;,' bin/bseen
13:45:09 <HackEgo> No output.
13:45:14 <c00kiemon5ter> `bseen HackEgo
13:45:16 <HackEgo> 2013-01-22 13:45:09: <HackEgo> No output.
13:45:41 <c00kiemon5ter> what should the output be ?
13:46:09 <c00kiemon5ter> I mean that format to be consistent with `log
13:46:13 <elliott> `log c00kiemon5ter
13:46:19 <HackEgo> 2013-01-22.txt:13:45:06: <c00kiemon5ter> `run sed -i 's,/}",&;,' bin/bseen
13:46:22 <fizzie> That would be with .txt and with colon in-between.
13:46:24 <elliott> generally all our log-grepping stuff outputs in that (fairly ugly) format
13:46:29 <elliott> but it's convenient because you can say
13:46:31 <elliott> `logurl 2013-01-22.txt:13:45:06:
13:46:32 <HackEgo> http://codu.org/logs/log/_esoteric/2013-01-22
13:46:37 <c00kiemon5ter> should I do that ?
13:46:47 -!- boily has joined.
13:47:49 <c00kiemon5ter> `fetch http://sprunge.us/YPLg
13:47:49 <HackEgo> ​ http://sprunge.us/YPLg: Scheme missing.
13:47:52 <c00kiemon5ter> `fetch http://sprunge.us/YPLg
13:47:55 <HackEgo> 2013-01-22 13:47:53 URL:http://sprunge.us/YPLg [303] -> "YPLg" [1]
13:48:03 <c00kiemon5ter> `run mv YPLg bin/bseen
13:48:06 <HackEgo> No output.
13:48:10 <elliott> `cat bin/seen
13:48:11 <HackEgo> ​#! /usr/bin/env perl \ $n=shift @ARGV; $n=~s/ *$//; @f=split /\s+/, `ls -r /var/irclogs/_esoteric/????-??-??.txt | head -n 30`; for $f (@f) { open F,"<$f"; @l=grep(/^..:..:..: <$n>/i,<F>); close F; if (@l) { $b=$f; $b=~s#.*/(.*?).txt#$1#; print "$b $l[-1]"; exit 1; } } print "not lately";
13:48:16 <elliott> oh dear
13:48:18 <c00kiemon5ter> `bseen elliot*
13:48:19 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/bin/bseen: Permission denied \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/bin/bseen: cannot execute: Permission denied
13:48:20 <elliott> we have a whole family of seens?
13:48:36 <c00kiemon5ter> `run chmod 755 bin/bseen
13:48:38 <HackEgo> No output.
13:48:41 <c00kiemon5ter> `bseen elliot*
13:48:44 <HackEgo> 2013-01-22.txt:13:48:20: <elliott> we have a whole family of seens?
13:48:49 <elliott> `seen eliot
13:48:52 <HackEgo> not lately
13:48:55 <elliott> `seen c00kiemon5ter
13:48:59 <HackEgo> 2013-01-22.txt:13:48:41: <c00kiemon5ter> `bseen elliot*
13:49:03 <elliott> ok now benchmark 'em
13:49:04 <elliott> :P
13:49:15 <c00kiemon5ter> `run time bseen elliot
13:49:27 <HackEgo> well, not lately \ \ real0m10.472s \ user0m9.770s \ sys0m0.940s
13:49:35 <c00kiemon5ter> `run time seen elliot
13:49:38 <HackEgo> not lately \ real0m1.241s \ user0m0.600s \ sys0m1.140s
13:49:45 <c00kiemon5ter> :P :P
13:49:49 <c00kiemon5ter> `run time bseen elliott
13:49:52 <HackEgo> 2013-01-22.txt:13:49:04: <elliott> :P
13:49:56 <c00kiemon5ter> `run time seen elliott
13:49:58 <HackEgo> 2013-01-22.txt:13:49:04: <elliott> :P \ \ real0m1.474s \ user0m0.970s \ sys0m0.970s
13:50:05 <elliott> i like how it won't time the bash one
13:50:09 <c00kiemon5ter> yeah :P
13:50:14 <elliott> `seen calamari
13:50:17 <c00kiemon5ter> `run time (bseen elliott)
13:50:17 <HackEgo> not lately
13:50:19 <HackEgo> 2013-01-22.txt:13:50:14: <elliott> `seen calamari
13:50:22 <elliott> what
13:50:24 <elliott> `seen calamari
13:50:26 <HackEgo> not lately
13:50:30 <elliott> does it have some kind of limit how far it'll go back
13:50:30 <fizzie> That's what the "lately" means.
13:50:33 <fizzie> Yes.
13:50:38 <elliott> that's cheating fizzie
13:50:39 <c00kiemon5ter> yes, 30 files
13:50:49 <c00kiemon5ter> I do it in that bash version too
13:51:09 <elliott> but what if i want to find out when the person who last spoke in 2002 last spoke to the day????
13:51:12 <fizzie> I did admit it's a controversial "feature".
13:51:43 <c00kiemon5ter> so worse case(no match), perl is about 9 times faster than bash
13:52:08 <c00kiemon5ter> s/worse/worst/
13:52:34 <c00kiemon5ter> `run time (bseen elliott) # why doesnt that work
13:52:36 <HackEgo> 2013-01-22.txt:13:51:09: <elliott> but what if i want to find out when the person who last spoke in 2002 last spoke to the day????
13:52:48 <elliott> c00kiemon5ter: try "time bash bseen elliott"?
13:52:57 <elliott> er bin/bseen
13:53:04 <elliott> anyway clearly someone should rewrite it in C
13:53:12 <c00kiemon5ter> `run time bash bin/bseen elliott
13:53:14 <HackEgo> 2013-01-22.txt:13:53:04: <elliott> anyway clearly someone should rewrite it in C
13:53:19 <c00kiemon5ter> haha
13:53:40 <c00kiemon5ter> `run time bash bin/bseen elliott 1>/dev/null
13:53:41 <HackEgo> No output.
13:53:48 <c00kiemon5ter> `run time (bash bin/bseen elliott 1>/dev/null)
13:53:52 <HackEgo> ​ \ real0m1.686s \ user0m0.290s \ sys0m0.000s
13:53:53 <elliott> it's immune to benchmarking
13:54:32 <c00kiemon5ter> `run time (./bin/seen elliott 1>/dev/null)
13:54:34 <HackEgo> ​ \ real0m0.980s \ user0m0.990s \ sys0m0.340s
13:54:44 <c00kiemon5ter> `run time (./bin/seen elliott 1>/dev/null) | xargs printf '%s '
13:54:47 <HackEgo> ​ \ real0m1.503s \ user0m0.750s \ sys0m1.210s
13:54:55 <c00kiemon5ter> `run time (./bin/seen elliott 1>/dev/null) 2>&1 | xargs printf '%s '
13:54:58 <HackEgo> ​ \ real0m1.480s \ user0m0.950s \ sys0m0.960s
13:55:13 <c00kiemon5ter> `run (time ./bin/seen elliott 1>/dev/null) 2>&1 | xargs printf '%s '
13:55:16 <HackEgo> real 0m1.211s user 0m1.840s sys 0m0.000s
13:55:20 <c00kiemon5ter> `run (time ./bin/bseen elliott 1>/dev/null) 2>&1 | xargs printf '%s '
13:55:23 <HackEgo> No output.
13:55:33 <c00kiemon5ter> `run (time (./bin/bseen elliott 1>/dev/null)) 2>&1 | xargs printf '%s '
13:55:36 <HackEgo> No output.
13:55:42 <c00kiemon5ter> >.>
13:56:03 <c00kiemon5ter> `run time (./bin/bseen elliott 1>/dev/null)
13:56:06 <HackEgo> No output.
13:56:08 <fizzie> `seen calamari
13:56:09 <fizzie> `seen calamari ever
13:56:10 <HackEgo> not lately
13:56:12 <HackEgo> 2012-08-04 16:58:14: <calamari> []{}\|-_`^: did you experience computer withdrawal?
13:56:17 <c00kiemon5ter> `run time (bash bin/bseen elliott 1>/dev/null)
13:56:19 <HackEgo> No output.
13:56:26 <fizzie> (I a feature.)
13:56:34 <c00kiemon5ter> `run time (bash bin/bseen elliott)
13:56:37 <HackEgo> 2013-01-22.txt:13:53:53: <elliott> it's immune to benchmarking
13:56:52 <elliott> fizzie: surely not having a limit doesn't necessarily slow the common case down?
13:57:01 <c00kiemon5ter> yes
13:57:08 <c00kiemon5ter> once a match is found, it exits
13:57:31 <fizzie> That much is true. I was pretty much just irritated by the really long delays when testing it.
13:57:31 <c00kiemon5ter> well, the last match in the first file that has a match
13:58:01 <c00kiemon5ter> `run time (bash bin/bseen elliot* 1>/dev/null)
13:58:03 <HackEgo> No output.
13:58:12 <c00kiemon5ter> -.o.-
13:58:46 <fizzie> It's just untimable.
13:58:50 <elliott> fizzie: well then optimise it some more!!!
13:58:57 <fizzie> `seen calamari
13:58:59 <HackEgo> not lately; try `seen calamari ever
13:59:27 <c00kiemon5ter> does hackego respond to queries ?
13:59:48 <fizzie> Yes.
13:59:51 <fizzie> ^seen calamari
13:59:52 <fungot> oh god I have no eyes!1
14:00:09 <elliott> good
14:07:11 <c00kiemon5ter> I dont get how it sometiles fail to return time
14:07:17 <c00kiemon5ter> and others it does
14:07:19 <elliott> `seen ojfoijogijdfogogfji ever
14:07:31 <HackEgo> not lately; try `seen ojfoijogijdfogogfji ever
14:07:36 <c00kiemon5ter> :P
14:08:38 <elliott> fizzie: good feature
14:08:43 <Phantom_Hoover> `seen fizzie
14:08:45 <HackEgo> 2013-01-22 13:59:51: <fizzie> ^seen calamari
14:08:47 <elliott> fizzie: how about it always has the ever but then says "not lately" if it's never been seen
14:08:53 <c00kiemon5ter> bseen -> 0m1.605s :: seen -> 0m1.176s
14:08:59 <elliott> since like, maybe they were seen in 2002 before the logs began
14:09:06 <elliott> and then rewrite it inc!
14:09:09 <elliott> and also in C
14:09:14 <Phantom_Hoover> `seen andreou
14:09:16 <HackEgo> not lately; try `seen andreou ever
14:09:20 <Phantom_Hoover> `seen andreou ever
14:09:27 <HackEgo> 2009-03-30 16:21:13: <andreou> may be the color or the curving, yet it always made me dizzy
14:09:59 <c00kiemon5ter> `ls bin/*seen
14:10:00 <HackEgo> ls: cannot access bin/*seen: No such file or directory
14:10:05 <c00kiemon5ter> `run ls bin/*seen
14:10:06 <HackEgo> bin/bseen \ bin/seen
14:10:56 <fizzie> elliott: I should probably write a TERSEEN instead. (But can't be bothered.)
14:11:08 <Phantom_Hoover> holy shit andreou was here in 2009?
14:11:45 <fizzie> `seen mooz ever
14:11:54 <fizzie> Hmm, it's obviously been awhile.
14:11:56 <HackEgo> 2003-11-01 22:46:01: <mooz> wow, re-remembered this place
14:12:03 <elliott> haha
14:12:30 <elliott> fizzie: IMO it should binary search once it fails to find the person in the past year, or something.
14:13:40 <fizzie> Or perhaps it should have a sqlite seen.db that's indexed by nick, and automatically updated on every `seen.
14:14:15 <elliott> fizzie: How about parallelise it?
14:14:17 <elliott> Search every day AT ONCE.
14:16:00 <fizzie> I could buy, say, sixty-four Amazon EC instances, each with their localized copy of the logs in RAM, and then bigtable hadoop mapreduce mongodb webscale keyword keyword keyword.
14:16:01 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.89 [Firefox 18.0.1/20130116073211]).
14:16:31 <elliott> yes
14:19:50 <c00kiemon5ter> `run (time seen elliott 1>/dev/null) 2>&1 | xargs printf '%s '
14:19:53 <HackEgo> real 0m1.428s user 0m1.290s sys 0m0.780s
14:19:58 <c00kiemon5ter> `run (time aseen elliott 1>/dev/null) 2>&1 | xargs printf '%s '
14:20:01 <HackEgo> No output.
14:20:10 <c00kiemon5ter> `run (time aseen elliott 1>/dev/null) 2>&1 | xargs printf '%s '
14:20:13 <HackEgo> No output.
14:20:17 <c00kiemon5ter> fuuuu
14:21:07 <fizzie> `aseen FUNgot
14:21:11 <HackEgo> not lately
14:21:30 <c00kiemon5ter> ah, I know
14:22:27 <elliott> `asinine fungot
14:22:29 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: asinine: not found
14:22:29 <fungot> elliott: and you can't prove it because i noticed it doesn't have to
14:22:35 <c00kiemon5ter> sed -i 's/^n=.*/&; n="${n,,}"/' bin/aseen
14:22:39 <c00kiemon5ter> `run sed -i 's/^n=.*/&; n="${n,,}"/' bin/aseen
14:22:42 <HackEgo> No output.
14:22:48 <c00kiemon5ter> `aseen FUNgot
14:22:50 <HackEgo> 2013-01-22.txt 14:22:29: <fungot> elliott: and you can't prove it because i noticed it doesn't have to
14:23:14 <c00kiemon5ter> `run time aseen FUNgot 1>/dev/null
14:23:17 <HackEgo> ​ \ real0m1.470s \ user0m0.000s \ sys0m0.070s
14:23:19 <c00kiemon5ter> `run time seen FUNgot 1>/dev/null
14:23:22 <HackEgo> ​ \ real0m1.280s \ user0m1.000s \ sys0m0.760s
14:23:50 <c00kiemon5ter> `run time aseen MISSING 1>/dev/null
14:23:54 <HackEgo> ​ \ real0m3.458s \ user0m0.290s \ sys0m1.710s
14:23:56 <c00kiemon5ter> `run time seen MISSING 1>/dev/null
14:23:58 <HackEgo> ​ \ real0m1.454s \ user0m0.900s \ sys0m1.080s
14:24:05 <c00kiemon5ter> :D
14:25:34 <fizzie> I tried to find the case-modification bits in bash but failed; very funky.
14:26:06 <c00kiemon5ter> `run v='aBcD'; echo "${v^^}"; echo "${v,,}"
14:26:08 <HackEgo> ABCD \ abcd
14:26:37 <fizzie> `run v='aBcD'; echo "${v~~}"; # undocumented!
14:26:38 <HackEgo> AbCd
14:26:45 <c00kiemon5ter> :D
14:29:31 -!- Arc_Koen has joined.
15:28:39 -!- epicmonkey has quit (Remote host closed the connection).
15:28:53 -!- epicmonkey has joined.
15:30:09 -!- sivoais_ has quit (Quit: leaving).
15:39:36 -!- Taneb has joined.
15:40:18 <Taneb> @ping
15:40:18 <lambdabot> pong
15:42:25 -!- Taneb has quit (Client Quit).
15:42:51 -!- Taneb has joined.
16:01:43 -!- Taneb has quit (Ping timeout: 245 seconds).
16:24:44 -!- md_5 has quit (Read error: Operation timed out).
16:25:08 -!- sirdancealot has quit (Ping timeout: 246 seconds).
16:27:19 -!- sirdancealot7 has joined.
16:29:47 -!- md_5 has joined.
16:30:48 -!- md_5 has quit (Excess Flood).
16:31:18 -!- md_5 has joined.
17:04:17 -!- Taneb has joined.
17:04:51 <Taneb> My computer is back up and running :)
17:21:51 -!- sebbu2 has joined.
17:22:07 -!- sebbu2 has quit (Changing host).
17:22:07 -!- sebbu2 has joined.
17:24:17 -!- sebbu has quit (Ping timeout: 248 seconds).
17:24:36 -!- sebbu has joined.
17:24:36 -!- sebbu has quit (Changing host).
17:24:36 -!- sebbu has joined.
17:26:27 -!- sebbu2 has quit (Ping timeout: 248 seconds).
17:38:02 <fizzie> Taneb: For now!
17:41:03 <Taneb> Amen to that!
17:41:47 <c00kiemon5ter> fuuu, I used to complete filenames with Tab on vim, like :split ~/.foo<tab> but now it shows a list like doing <tab><tab> on a terminal prompt
17:46:20 <Sgeo> I wonder what ais523 thinks about NativeBoost, whether or not it answers his objections to Smalltalk at all
17:46:35 * Sgeo doesn't quite understand it well enough to guess
17:48:00 <Sgeo> There is still a primitive, I guess :/
17:53:24 <c00kiemon5ter> ah, fixed :D :set wildmode=full
17:56:21 -!- Bike has joined.
18:21:04 -!- zzo38 has joined.
18:23:35 <zzo38> Some of my ideas for the Dungeons&Dragons game I have written on this paper can includes:
18:23:47 <zzo38> * In one town it now has remained noon for several days.
18:24:19 <zzo38> * A beholder in a cave is cursed, preventing their eyes from closing. Nobody (so far) is willing to help them, and nobody would quite know exactly how, either.
18:24:35 -!- Nisstyre-laptop has joined.
18:24:41 <zzo38> * Misplaced commas are causing wrong taxes, people to be killed, and other people who should die to be spared. It also results in complaints about bad grammar.
18:24:56 <zzo38> * This emerald demon is actually a decoy to lead you into a trap and there is a second one.
18:25:31 -!- FreeFull has joined.
18:27:06 <zzo38> * Glo-Gleb has their priests to write the order "Exterminate all aberration-type creature" (it is implied to do with fire). Gxxyuxiuvxi needs you to change "exterminate" to "protect"! This is difficult (partially because it isn't Chinese)...
18:27:16 <zzo38> * There are three (not two) sides each against the other two.
18:27:29 <zzo38> (Many card players prefer games with three players, I think)
18:27:47 <zzo38> What does "FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE" mean?
18:28:27 <Bike> it's a joke about time cube.
18:28:28 <kmc> MIT got DNS-poisoned by lulzsec
18:29:11 <kmc> current theory is that someone social engineered the .edu registrar
18:30:35 <zzo38> kmc: Did they fix it yet?
18:31:28 -!- sivoais has quit (Remote host closed the connection).
18:32:15 -!- Snowyowl has joined.
18:32:24 -!- sivoais has joined.
18:32:55 <zzo38> It is sure, some people will not correct their computer until it is attacked; there is the story of someone who complained about vulnerabilities in their computer but they wouldn't fix it until they exploited it, making the two programs to ensure the other won't stop, making punch cards punch all the holes, making the disk drive move in front of the door to the computer room, etc
18:33:59 <kmc> they fixed it, but the bad DNS entries will be cached by clients for a while
18:34:30 <Snowyowl> what's all this about
18:35:16 <Snowyowl> is there some hacker-related news I missed?
18:35:39 <Bike> yeah, MIT got DNS poisoned apparently
18:35:59 <Bike> i haven't really been paying attention but why are they (They) so angry at MIT about Swartz anyhow
18:36:00 <elliott> kmc: i thought one of the lulzsec people turned out to be an ~inside job~ and then they stopped exitsing or something
18:36:07 <Bike> i thought they just sued him or something
18:36:11 <elliott> groups with obnoxious names: hard to keep track of
18:36:37 <kmc> ok well maybe it's not lulzsec
18:36:46 <elliott> Bike: jstor distanced themselves from the prosecution of swartz but MIT kept claiming neutrality afterwards despite cooperating heavily with the government on it or something, is my understanding
18:36:53 <elliott> but I don't really know the details
18:36:55 <elliott> so I might be totally wrong!
18:37:00 <zzo38> Would you consider Feynman to be a hacker? I do, and some other people I have talked to agree, but others disagree.
18:37:46 <Bike> elliott: oh, that does sound kinda shitty
18:37:52 <Bike> still they have that investigation and shit
18:38:19 <Bike> whatever, maybe i'm just not cut out to be the hacker underground
18:38:30 <elliott> aiui when the mit homepage got changed or whatever the first time the message said they aren't doing it to spite mit or something
18:38:36 <elliott> which doesn't make much sense, but
18:39:25 <Bike> politics in the age of lulzsec sure is exciting
18:39:35 <kmc> yeah there are various insinuations that MIT did more than they needed to in pursuing and cooperating with the investigation
18:39:55 <kmc> but it's all kind of murky
18:40:07 <kmc> MIT's internal inquiry is still going on
18:40:07 -!- ais523 has joined.
18:40:16 <elliott> haha i went to try and find a screenshot of the hacked mit page the first time
18:40:19 -!- zzo38 has quit (Remote host closed the connection).
18:40:26 <elliott> and clicked on an mit.edu link
18:40:27 <kmc> but internet pitchfork mobs are not exactly fans of moral subtlety
18:40:27 <Bike> maybe the real issue is i don't know what the point of website defacements is anyway
18:40:33 <elliott> which doesn't work
18:40:36 <elliott> i'm smart
18:40:40 <kmc> Bike: publicity
18:41:22 <Bike> mm
18:41:37 <Snowyowl> fun
18:41:58 <Snowyowl> or "ego-stroking" if you need to cast it in a negative light
18:48:46 <kmc> well you can also deface a site to add malware
18:48:53 <kmc> or to distribute subtly wrong information for strategic goals
18:48:59 <kmc> or to suppress someone else's communication
18:49:05 <kmc> there are lots of different kinds of defacements
18:50:00 <Snowyowl> an excellent point.
18:51:32 <kmc> i remember there is a thing where you deface a site but only alter the way it appears to Googlebot
18:51:53 <kmc> using that to generate pagerank for other sites
18:52:24 <kmc> meanwhile the site looks fine to everyone else, so admins are less likely to notice
18:53:30 <ais523> kmc: presumably by putting a user-agent check on the server daemon?
18:53:31 <lambdabot> ais523: You have 1 new message. '/msg lambdabot @messages' to read it.
18:53:41 <kmc> the internet is a house of mirrors, everything is distorted depending on your viewpoint
18:53:43 <ais523> I guess you could do it by changing the page then using JS to change it back, but that'd be much more noticable
18:53:44 <kmc> no objective reality
18:53:52 -!- Nisstyre-laptop has quit (Ping timeout: 256 seconds).
18:54:00 <ais523> elliott: I made it more informative
18:54:15 <ais523> in an information resource, being informative is more useful than being funny
18:54:21 <ais523> and I tried to write the information in an amusing form
18:54:32 <kmc> the illusion of nouns (specific pages you can view) is supported by the reality of verbs (communication between client, server, and various third parties, always in flux)
18:54:47 <kmc> ais523: i'm not sure exactly how they do it, but yeah something like that
18:54:50 <kmc> maybe also knowing the IP range used by google
18:54:56 <elliott> ais523: well it's actually an annoying form
18:54:57 <Bike> kmc, you high or
18:55:04 <kmc> :3
18:55:07 <ais523> elliott: feel free to edit the page to make it less annoying
18:55:34 <Bike> that shit's straight outta borges
18:55:39 -!- boily has quit (Quit: Poulet!).
18:56:27 -!- Nisstyre-laptop has joined.
18:57:05 -!- boily has joined.
18:57:40 -!- epicmonkey has quit (Ping timeout: 260 seconds).
18:57:59 <Snowyowl> doesn't Googlebot give its name in the useragent string?
18:58:12 <Snowyowl> maybe not the useragent string
18:58:46 <Snowyowl> it gives its name in every request it sends, so that web developers can treat it nicely
18:59:29 -!- carado has joined.
18:59:50 <Snowyowl> yeah, Googlebot uses the user-agent "Googlebot"
19:13:55 <kmc> i wonder if they also do some more covert crawling
19:14:06 <kmc> in order to have a better sense of the kinds of shenanigans people play
19:14:10 <Snowyowl> almost certainly
19:14:45 <Bike> the google underground
19:15:33 <Snowyowl> so I have an idea for an esolang
19:15:48 <Snowyowl> do I need anything before posting it to the wiki? a reference implementation for example?
19:16:34 <Taneb> A vague spec
19:16:49 <Bike> also it needs to not be a brainfuck derivative.
19:16:54 <Snowyowl> done and done
19:17:12 <Taneb> An account on the wiki?
19:17:16 <kmc> what if it's a family of brainfuck derivatives
19:17:16 <Snowyowl> done
19:17:18 <Taneb> A name for the language?
19:17:27 <kmc> a family of brainfuck derivatives whose cardinality is strongly inaccessible
19:17:37 <Snowyowl> kmc: It's not, but that's a good idea.
19:18:53 <Snowyowl> should I create the article page immediately, or leave it in my userspace until it's all written up, or write it on my own hard drive?
19:19:09 <Taneb> Whichever floats your boat
19:19:16 <kmc> write it on parchment with quill pen, send it to Phantom_Hoover by carrier pigeon
19:19:29 <kmc> be sure to write OCR-A characters though so it can be easily scanned
19:19:35 <Snowyowl> don't have any carrier pigeons, will smoke signals do?
19:19:43 <kmc> 420 smoke signals every day
19:24:21 -!- AnotherTest has joined.
19:44:50 -!- asiekierka has joined.
19:44:52 -!- asiekierka has quit (Excess Flood).
19:47:54 -!- asiekierka has joined.
19:58:20 <kmc> my $class = $param{class};
19:58:21 <kmc> eval "require $class;";
19:58:24 <kmc> WEB APP SECURITY
19:58:39 <AnotherTest> yay RFI
19:58:48 -!- oerjan has joined.
19:58:53 <AnotherTest> That still works?
19:59:03 <kmc> ?
19:59:12 <kmc> http://www.sec-1.com/blog/?p=402
19:59:44 <AnotherTest> Is there any serious website still prone to RFI?
19:59:59 <AnotherTest> (with the obvious exception of my school's webplatform)
20:00:04 <ais523> what does RFI stand for?
20:00:10 <ais523> something injection?
20:00:27 <AnotherTest> remote file injection
20:00:40 <kmc> that's not remote file injection
20:00:41 <ais523> aha
20:00:42 <kmc> it's remote code execution
20:00:43 <kmc> most directly
20:00:54 <ais523> yeah, it's two different injection attacks
20:01:07 <Snowyowl> where does $param get data from?
20:01:09 <AnotherTest> How is require external file here not RFI?
20:01:10 <kmc> and if you ask "Is there any serious website still prone to <insert common vuln class>" the answer is always "yes"
20:01:29 <AnotherTest> You would do remote code execution by RFI?
20:01:59 <Snowyowl> the request that the server is responding to?
20:02:01 <AnotherTest> well I guess terminology differs
20:02:08 <kmc> i'm thinking $class = "foo; system('echo owned')"
20:02:12 <boily> a montreal student is making the news here for having discovered a gaping security hole, then being expelled from his college for testing if that hole was patched.
20:02:14 <Snowyowl> I can't see under what circumstances that code would even be written.
20:02:32 <kmc> boily: yeah, shooting the messenger is standard practice
20:03:03 -!- spyspyspy has joined.
20:03:15 <AnotherTest> Snowyowl: Suppose I was asked to write code for a lot of money for a company that I really dislike
20:03:17 <kmc> and yeah, %param is decoded from the POST body
20:03:38 <kmc> their example exploit body is __mode=run_actions&installing=1&steps=[["core_drop_meta_for_table","class","`COMMAND_PAYLOAD_HERE`"]]
20:03:58 <kmc> backticks are command execution in perl
20:04:04 -!- spyspyspy has left.
20:04:25 <Snowyowl> okay, so they have a hidden form on the web page that contains server-side code?
20:05:06 <Snowyowl> that's actually impressive
20:06:28 <kmc> they do?
20:06:46 <kmc> crap g2g
20:07:49 -!- epicmonkey has joined.
20:08:07 <ais523> boily: as far as I can tell, they weren't rejected for discovering the security hole
20:08:19 <ais523> but from running an exploit database against the website afterwards
20:09:38 <ais523> wow, Valve have started running adverts for Ubuntu inside their Steam clients
20:09:49 <boily> ais523: running the exploit may have been a little bit overboard, yes.
20:10:16 <boily> he was first praised for his discovery.
20:13:14 -!- Nisstyre-laptop has quit (Quit: Leaving).
20:21:56 <Sgeo> It's nice living right next to a train station
20:23:08 <ais523> Sgeo: how right next?
20:23:11 <ais523> also, aren't you American?
20:23:28 <ais523> I live quite close to one, and within walking distance of a second along flat terrain
20:23:33 <Sgeo> About a block away
20:23:35 <ais523> (the second is important during heavy floods)
20:23:47 <Sgeo> Well, maybe block is the wrong word
20:23:52 <Sgeo> It's maybe a 3 minute walk
20:24:10 <Sgeo> And what does being an American have to do with anything?
20:24:26 <AnotherTest> they don't have trains in america
20:24:35 <ais523> I thought the US train system sucked
20:24:37 <AnotherTest> - ais523 (?)
20:24:39 <ais523> at least, it's what I've been told
20:24:40 <Bike> maybe he means light rail
20:24:56 <Sgeo> I don't know whether or not it sucks
20:25:02 <Sgeo> I haven't used the train that much
20:25:11 <Bike> the US train system is actually pretty great, just, for cargo, not for passengers.
20:25:17 <Bike> for passengers it fucking sucks.
20:25:28 <coppro> ^
20:25:49 <AnotherTest> guess what? we have this hypermodern new train in belgium and it doesn't work, that is it stops pseudo-randomly
20:25:53 <Bike> but if sgeo is talking about a municipal rail system or a subway or osmething, well, that's different
20:26:12 <Sgeo> Does LIRR count as a municipal rail system?
20:26:35 <Sgeo> ...I think I have given away enough information for people to guess almost exactly where I live :/
20:26:48 <ais523> AnotherTest: as in, there's a pseudorandom chance that a train won't arrive but if it does, it reaches its destination? or the train can pseudo-randomly stop while you're on it?
20:27:23 <AnotherTest> ais523: the latter, it just stops in the middle of the track
20:27:39 <ais523> wow
20:28:01 <Sgeo> It's weird seeing the things go down when you're on a train
20:28:22 <Sgeo> "OH SHIT I HAVE TO GET OFF THE TRACKS A TRAIN'S COMING OH WAIT I'M ON THE TRAIN"
20:29:17 <ais523> "the things"? level crossing barriers?
20:29:21 <Sgeo> yes
20:29:55 <Sgeo> I live on the other side of the train tracks from everything interesting, so end up crossing the tracks a lot
20:33:31 <fizzie> `quote fizzie.*train
20:33:32 <HackEgo> 840) <fizzie> I am a train. There's a wireless network in the train!
20:34:25 -!- AnotherTest has quit (Quit: Leaving.).
20:34:58 <fizzie> Last time I was a train (the weekend before the last), the wireless network in the train did not work for the return trip, and I had to do with a mix of GPRS/EDGE/UMTS/HSPA.
20:36:14 <fizzie> Also, my phone calls those four things (in the tiny connection indicator icon) "2G", "2.5", "3G" and "3.5", but as far as I can figure out this other thing calls them "G", "E", "3G" and "H", which is (very) mildly confusing, because the 3G is so out of place.
20:37:14 <Bike> kmc: http://perldoc.perl.org/functions/require.html explains the uh, reasoning, behind that eval require
20:37:44 <ais523> hmm… if that Perl server code is correctly being run in taint mode
20:37:51 <ais523> then it'd crash upon encountering that line
20:38:50 <Snowyowl> weird
20:42:26 <Snowyowl> hey is there a technical difference between an "instruction" and a "command"?
20:42:38 <Snowyowl> in generalised esolangs
20:43:01 <Snowyowl> like are these words that have specific and different meanings?
20:43:16 <Bike> i don't think "generalized esolangs" is even a thing
20:44:19 <Snowyowl> thanks
20:51:45 <oerjan> the mezzacotta comic is very educational today
20:59:33 <kmc> LIRR is commuter rail
21:00:30 -!- derkus has left.
21:00:40 <kmc> yeah part of the reason passenger rail sucks in the US is that the freight rail companies are very powerful
21:01:04 <kmc> they own much of the infrastructure, they make passenger trains wait for slow-ass freight trains, and they lobby to have safety standards that are least inconvenient to them
21:02:14 <ais523> oerjan: huh, he's still writing them?
21:02:36 <elliott> lol
21:02:54 * oerjan wonders if ais523 is as confused as that sounds
21:03:01 <ais523> oerjan: it was intentional
21:04:50 <kmc> i don't know if "municipal rail" has a definite meaning in US vocabulary
21:05:04 <oerjan> a little known fact is that shakespeare stole most of his ideas from mezzacotta.
21:05:12 <kmc> but LIRR goes much further than, say, german S-Bahnen
21:05:22 <kmc> and doesn't run as frequently
21:05:33 <kmc> and doesn't run through the city center as rapid transit, just terminates at one point
21:05:40 <kmc> very few US cities have commuter rail that runs through the city, which is too bad
21:07:55 <Bike> i just meant, you know, not amtrak
21:10:53 <kmc> LIRR and NJT could run through Penn Station but this would require two different agencies to, like, communicate effectively and be competent
21:10:56 <kmc> so it will never happen
21:18:26 <Sgeo> I am definitely dealing with a recruiter.
21:18:31 <Sgeo> What, exactly, do I have to be wary of?
21:18:59 <oerjan> your immortal soul, obviously
21:19:12 <oerjan> hth
21:21:06 <olsner> you must be wary of all, for all is evil
21:25:10 <olsner> http://imgur.com/a/tNNaT
21:25:31 <boily> olsner: is that an example of evil?
21:25:57 <olsner> yes, devious evil
21:28:28 <boily> I just noticed the very evil gleam in their eyes. thanks for your help, now I can look at my colleagues and see if they are evil.
21:28:36 <olsner> "Don't be fooled, miniature Shetlands and the most foul tempered bastards you will ever have the misfortune of meeting."
21:29:31 <olsner> like all horses, they aim for the knees ... presumably to prevent you from fleeing and because it hurts like hell
21:32:58 -!- Snowyowl has quit (Ping timeout: 245 seconds).
21:49:53 <kmc> 2/3 of china still uses Windows XP o_O
21:50:20 <Bike> i thought they were still on 98, good for them
21:50:26 <Taneb> 1/3 of the desktop computers in this house still use 98
21:50:35 <Taneb> FSVO "use"
21:50:42 <Taneb> And thinking about it, FSVO "98"
21:50:53 <Taneb> And FSVO "desktop computer"
21:50:59 <Taneb> Probably not FSVO "house"
21:51:01 <Bike> unrelatedly, where would i learn how ghc represents some values? like, how is x:xs represented vs []
21:51:11 <Bike> fsvo fsvo, taneb
21:51:25 <Taneb> I... started overthinking things again
21:52:00 <boily> what's a fsvo? is it edible?
21:52:06 <Phantom_Hoover> the old computer i use for a footstool uses windows 98
21:52:14 <Bike> it's not, sorry
21:52:30 <Phantom_Hoover> more disturbingly, so do my dad's practice's computers
21:52:35 <ion> for some values of
21:52:47 <boily> ion: aaaah. much clearer now.
21:53:09 <olsner> boily: fsvo edible
21:53:33 <oerjan> Bike: http://hackage.haskell.org/trac/ghc/wiki/Commentary/Rts/Storage/HeapObjects
21:54:13 <boily> olsner: so fsvo is edible, fsvo fsvo.
21:55:21 <kmc> Bike: the original STG machine paper is also instructive, even though it doesn't describe modern GHC precisely
21:55:24 <kmc> http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.53.3729
21:57:00 <Bike> well i'm not wondering about ghc precisely, that's just the example that came to mind
21:57:15 <Bike> i'm just wondering if [] and a cons have to be dynamically distinguished, and if so, how
21:57:35 <kmc> every heap object starts with a pointer to an 'info table'
21:57:52 <kmc> the info table is staticly allocated data
21:57:56 <Bike> ok, so not just closures
21:58:04 <kmc> there is one for every constructor and one for every lambda in the program source, roughly
21:58:09 <kmc> and some others
21:58:10 <kmc> Bike: yeah
21:58:17 <olsner> I think generally there's a tag somewhere saying which constructor was used for that value (and whether it's a value at all or if it needs to be evaluated first)
21:58:20 <Bike> this page oerjan linked is a bit confusing
21:58:38 <Bike> (which makes sense since it's internals docs :V)
21:58:58 <kmc> in the simplest conception, the info table contains function pointers for "how to evaluate this value" and "how to garbage collect this value" and such
21:59:36 <kmc> the former will perform any computation needed to get to weak head normal form, and then will return (in some STG machine register) a tag saying which constructor it is
21:59:43 <kmc> there are some optimizations though
22:00:01 <Bike> hmmmm
22:00:17 <kmc> one is that the evaluation function is by far the most frequently accessed thing in the info table
22:00:31 <kmc> so instead of storing a pointer to the table, store a pointer to that function, and put the table immediately before that function
22:00:34 <kmc> saving an indirection in the common case
22:01:29 <kmc> another optimization is that if you know something is already evaluated, you can tag the least significant bits of that pointer with the constructor number
22:01:47 <Bike> ok, say I define the dumb length-of-list function, length x:xs = 1 + length xs and length [] = 0. if i call length on something, how will that thing be represented at runtime (assuming no special optimizations based on the form of the call)? with this heap structure? does that even make sense to ask?
22:01:55 <kmc> which saves many instances of having to call into the "evaluate me" function for already evaluated stuff
22:02:29 <kmc> the code for 'length' will be passed a pointer to a heap object
22:02:39 <shachaf> Bike: The STG paper is good, and this one is much closer to what GHC actually does these days:
22:02:42 <shachaf> @where ptr-tag
22:02:42 <lambdabot> http://research.microsoft.com/~simonpj/papers/ptr-tag/index.htm
22:02:55 <Bike> yeah, i'll get to reading the stg paper once i've asked enough dumb questions
22:03:03 <shachaf> Sure.
22:03:03 <kmc> read this one too http://research.microsoft.com/en-us/um/people/simonpj/papers/eval-apply/index.htm
22:03:30 <shachaf> Another way to learn is to run ghc-core on a bunch of things and read the generated code.
22:03:36 <shachaf> It's a bit slow. :-)
22:03:54 <shachaf> (The process, I mean, not the code.)
22:04:16 <shachaf> Bike: It depends on what "that thing" is.
22:04:31 <Bike> i've tried figuring out implementations from disassemblies of their results before, and i can't recommend it
22:04:34 <shachaf> Remember that (foo :: [a]) could do a lot of computation and then evaluate to an empty list.
22:05:05 <kmc> yeah, it could be a pointer to a cons or a nil or a thunk
22:05:06 <shachaf> Or it could just be a pointer to the single static empty list value.
22:05:09 <kmc> or some other thing
22:05:17 <shachaf> Right.
22:05:33 <Bike> and those are distinguishable at runtime?
22:05:37 <shachaf> @where cpr -- also good
22:05:37 <lambdabot> http://research.microsoft.com/en-us/um/people/simonpj/Papers/cpr/index.htm
22:05:45 <kmc> Bike: by the runtime system? yes
22:05:52 <kmc> but in the simplest case, it doesn't need to distinguish them explicitly
22:05:59 <kmc> it just calls the "evaluate me" function through the info table
22:06:11 <Bike> I see, I see.
22:06:48 <kmc> for a nil this will put 0 into some register and return
22:06:49 <shachaf> A static nil value has some code that you can call which just returns immediately with "this is a static nil value".
22:07:12 <kmc> for a cons it will put 1 and also ensure that the car and cdr are available as the second and third words of the heap object (the first being the info pointer)
22:07:19 <kmc> if it was a thunk, it might need to do arbitrary other work to make that happen
22:07:24 <shachaf> Hmm, I think it actually puts a tagged pointer into some register these days.
22:07:29 <kmc> probably
22:07:54 <Bike> This is a lot more complicated than the "bits, also tag" I'm used to
22:08:04 <kmc> also there used to be a "vectored returns" optimization where instead of storing 0 and returning, it would jump to the the 0th function pointer in some caller-provided table
22:08:06 <shachaf> Bike: If you do decide to read GHC's generated code, I recommend -ddump-cmm rather than the assembly.
22:08:09 <kmc> but they removed that because it wasn't very good
22:08:16 <Bike> shachaf: some kind of IR?
22:08:23 <elliott> it's C--
22:08:27 <shachaf> It has a lot more information.
22:08:27 <kmc> i think some other optimizations obsoleted it
22:08:42 <kmc> more proper to say it's Cmm
22:08:42 <shachaf> kmc: Actually it just turned out to be bad on modern CPUs.
22:08:46 <kmc> ah
22:08:56 <shachaf> They only found this out while implementing some other optimizations, though.
22:09:06 <elliott> kmc: yes but saying it's Cmm would not help Bike at all
22:09:09 <elliott> whereas he might know of C--
22:09:09 <kmc> ok
22:09:16 <Bike> I know what C-- is, yes.
22:09:26 <kmc> Cmm is the last internal representation of code in GHC, before it outputs LLVM or native assembly or bastardized C
22:09:38 <Bike> haha, what's bastardized about it?
22:09:42 <elliott> it don't output bastardised C no more
22:09:45 <kmc> it's based on C-- which was an old attempt at something like what LLVM is now
22:09:46 <elliott> Bike: it was platform-specific and stuff
22:09:50 <kmc> elliott: it still can
22:09:51 <elliott> but the C backend is dead RIP
22:09:53 <elliott> kmc: no it can't
22:09:54 <kmc> noo
22:09:59 <kmc> you can still build GHC with unregisterized C backend
22:10:01 <shachaf> elliott: I think the unregisterized backend still exists?
22:10:04 <elliott> on the commandline: Warning: The -fvia-c flag does nothing; it will be removed in a future GHC release
22:10:08 <elliott> right unregistered
22:10:12 <elliott> but that's a different kind of bastardised!!
22:10:17 <elliott> also iirc it was broken in 7.4
22:10:20 <elliott> as in it just didn't work or something
22:10:22 <kmc> the unregisterized C is mostly portable albeit unreadable
22:10:30 <shachaf> I think JaffaCake mentioned using it recently or something.
22:10:31 <elliott> maybe it's still broken
22:10:34 <kmc> but it does care about sizes and offsets of structs on your platform
22:10:38 <Bike> oh wow spj came up with c--, i am dumb.
22:10:50 -!- boily has quit (Quit: Poulet!).
22:11:05 <kmc> Bike: the registerized C backend would generate crazy unportable "C" using many GCC extensions and then would also postprocess the assembly output of the compiler using a Perl script known as the Evil Mangler
22:11:12 <kmc> that thing is gone now thankfully
22:11:13 <elliott> not just a perl script
22:11:16 <elliott> a literate perl script
22:11:24 <elliott> written in GHC's own literate perl dialect
22:11:28 <kmc> i'm sure that helped a lot for readability
22:11:32 <Bike> that is amazing
22:11:54 <kmc> they did this because C doesn't support tail calls or functions with no prologue or such things
22:12:05 <kmc> they had regexes to snip out prologues from assembly
22:12:38 <Bike> what the fuck
22:12:46 <kmc> for speeeed!
22:12:51 <Bike> also don't you normally use a trampoline to do tail calls
22:12:53 <kmc> and for reusing all of GCC's backend optimizations
22:13:14 <kmc> Bike: "trampoline" means about 500 different things in programming, which one do you refer to?
22:13:14 <Bike> glad to hear that's gone, anyway
22:13:28 <Bike> the one you use for tail calls, i guess
22:13:36 <Bike> http://en.wikipedia.org/wiki/Tail_call#Through_trampolining
22:13:47 <kmc> the unregisterized backend uses for (;;) { f = (*f)(); }
22:13:48 <elliott> well it's simpler to just make them jmps instead
22:13:55 <kmc> you return the function you want to call next
22:13:56 <elliott> unless you're doing something like cheney on the mta
22:13:57 <Bike> with regexes I hope
22:13:58 <kmc> but this is slow
22:14:20 <elliott> imo ghc backend for the reduceron
22:14:42 <kmc> the reason registerized C backend got so crazy is that it was supposed to produce actually good fast code
22:14:49 <shachaf> Bike: You should learn about GHC by implementing unboxed sums plz thx
22:14:58 <Bike> unboxed sum types?
22:15:02 <shachaf> Yes.
22:15:10 <Bike> also as long as i'm being dumb, does anyone care about that Appel guy? I have one of his books
22:15:49 -!- Taneb has quit (Quit: Leaving).
22:15:51 -!- ais523 has quit.
22:15:52 <Bike> what would an unboxed sum type be exactly... actually after all that i'm no longer very sure what "unboxed" means here
22:16:40 <Bike> i don't know anything, man, the sky is fucking falling
22:16:40 <kmc> unboxed means it's *not* represented by a pointer to a heap object
22:16:53 <kmc> for example Int is a pointer to a heap object but Int# is just a machine int you pass around
22:17:08 <Bike> No tag?
22:17:11 <kmc> correct
22:17:13 <shachaf> In this case it would probably mean e.g. a function that return (Either Foo Bar) would return 0, ptrToFoo or 1, ptrToBar in two registers.
22:17:17 <shachaf> s
22:17:21 <kmc> GHC knows which values are heap pointers and which ones are primitives
22:17:27 <kmc> that's the "tagless" in Spineless Tagless G-Machine
22:17:29 <Bike> right, typing stuff
22:17:41 <kmc> even though these days it uses constructor tagging, it still does not tag pointers vs. ints
22:17:41 <Bike> shachaf: a whole other register for pseudotag?
22:17:57 <shachaf> Feel free to do it differently.
22:18:08 <kmc> you can't have a lazy Int# because there is no place to put a thunk
22:18:22 <Bike> also the stg paper says it's different from the graph reduction stuff i think the reduceron did? elliott explain
22:18:32 <shachaf> At the moment a function that returns (Either Foo Bar) allocates a (Left f) Or (Right b) on the heap and then returns a tagged pointer.
22:18:34 <elliott> kmc gets to explain
22:18:36 <kmc> and you can't instantiate a polymorphic type on Int# because polymorphic code gets to assume the basic heap layout structure
22:18:53 <kmc> you can't have [Int#] or (+) :: Int# -> Int# -> Int#
22:18:55 <Bike> so i'm assuming Int# is a GHC thing and not a Haskell thing?
22:18:58 <kmc> right
22:19:05 <Bike> oh, it's like Java, haha
22:19:21 <kmc> Haskell spec doesn't say much about the implementation of primitive values except some minimum representable range
22:19:24 <kmc> yeah ;P
22:19:28 <kmc> but no auto-(un)boxing
22:19:32 <kmc> @src Int
22:19:32 <lambdabot> data Int = I# Int#
22:19:42 <Bike> what's I#?
22:19:48 <shachaf> A constructor name.
22:20:11 <Bike> yes, but what's it do.
22:20:19 <shachaf> @src Maybe
22:20:20 <lambdabot> data Maybe a = Nothing | Just a
22:20:25 <shachaf> The same thing that Just does.
22:20:42 <kmc> the # character is not special other than that it's not allowed in standard Haskell
22:20:47 <kmc> by convention it's used with unboxed stuff
22:20:57 <Bike> Yeah, I'm assuming it's just a "warning do not fuck around" marker.
22:21:00 <Bike> @src I#
22:21:00 <lambdabot> Source not found. Have you considered trying to match wits with a rutabaga?
22:21:05 <kmc> it's also used with syntax for unboxed int literals, and unboxed tuples
22:21:06 <Bike> bite me, lambdabot.
22:21:06 <shachaf> That definition is the source of I#
22:21:13 <Bike> Oh.
22:21:15 <shachaf> data A = B C defines both A and B.
22:21:16 <kmc> unboxed tuples are even less first-class than unboxed value
22:21:35 <kmc> they're a way to represent multi-value return from a function
22:21:47 <Bike> oh right, the I# constructor makes it a proper thing instead of a member of the oppressed unboxed proletariat
22:22:04 <kmc> you can't pass unboxed tuples to functions, you can only return them
22:22:22 <kmc> and the only thing you can do after calling a function that returns an unboxed tuple is immediately pattern-match to extract components from that tuple
22:22:45 <Bike> sounds a lot like CL multiple values, really. 'cept without primitive m-v-call
22:23:14 <kmc> @src Integer
22:23:14 <lambdabot> data Integer = S# Int#
22:23:14 <lambdabot> | J# Int# ByteArray#
22:23:26 <shachaf> kmc: You can pass unboxed tuples to functions.
22:23:31 <kmc> really?
22:23:41 <kmc> pretty sure that's new then
22:23:48 <shachaf> Possibly.
22:24:11 <shachaf> Yep.
22:24:13 <shachaf> http://hackage.haskell.org/trac/ghc/ticket/1509
22:24:21 <shachaf> As of about a year ago.
22:24:25 <kmc> i'm so out of the loop :(
22:25:24 * shachaf is still not entirely clear on the difference between (# x #) and x
22:25:57 <Bike> kmc, you still haven't explained reduceron! elliott, make him explain.
22:26:20 <kmc> i don't know about that
22:26:26 <Bike> bother
22:26:28 <shachaf> what did poor ron do to you
22:26:35 <olsner> `? reduceron
22:26:37 <HackEgo> reduceron? ¯\(°_o)/¯
22:27:00 <shachaf> reducerørjan
22:27:14 <Bike> imo reducørjan
22:27:38 <olsner> Reducer Jan
22:28:00 <shachaf> I bet unboxed sums would make a huge difference in GHC.
22:28:19 <shachaf> Imagine a thing that generates a list not having to allocate cons cells.
22:28:32 <shachaf> (Probably not that huge. But still something.)
22:28:57 <Bike> it's funny how often these things talk about "faster than C"
22:29:08 <shachaf> @quote einstein
22:29:08 <lambdabot> monochrom says: einstein's theory implies that haskell cannot be faster than c
22:29:19 <Bike> !!!!!
22:29:50 <Bike> esolang based on statically typed field equations???
22:30:42 <shachaf> I should write some GHC code.
22:32:56 -!- ogrom has joined.
22:35:08 -!- copumpkin has quit (Ping timeout: 245 seconds).
22:35:41 -!- copumpkin has joined.
22:51:09 <FreeFull> @quote cheese
22:51:10 <lambdabot> dmwit says: superBadTheWayRatMazesWithoutCheeseAreBadButNotUnsafeFoo
22:51:24 <FreeFull> @quote lambda
22:51:25 <lambdabot> dons says: the lambda revolution isn't going to happen without YOUR CODE!
22:52:07 <Bike> pretty sure making rats use unsafeCoerce violates ethics standards
22:52:16 <FreeFull> @quote rat
22:52:17 <lambdabot> <p_l> says: damn, rage caused me to use wrong operator <bremner> is glad he is not in poland, so getting killed by p_l is less likely
22:52:34 <FreeFull> ope rat or
22:53:06 <Phantom_Hoover> these quotes are shit
22:53:07 <Phantom_Hoover> `quote
22:53:08 <Phantom_Hoover> `quote
22:53:09 <Phantom_Hoover> `quote
22:53:09 <HackEgo> 380) <d1ffe7e45e interpreter> The interpreter uses an unbounded tape size, but due to technical limitations will stop being unbounded if the tap size reaches 2^63 cells.
22:53:09 <Phantom_Hoover> `quote
22:53:09 <HackEgo> 395) <oklopol> well you know because i could've used my "wtf, you have multiple identity elements smiley" o=oO=O <oklopol> yeah, i have a smiley for everything.
22:53:10 <Phantom_Hoover> `quote
22:53:10 <HackEgo> 76) <Warrigal> A person's sex is not the same thing as their penis length.
22:53:10 <HackEgo> 566) <itidus20> my old 2d game is named either runch or turbo fight.... and its hard
22:53:11 <HackEgo> 11) <fungot> GregorR-L: i bet only you can prevent forest fires. basically, you know.
22:53:23 <FreeFull> I like 380
22:56:06 <olsner> `quote
22:56:06 <olsner> `quote
22:56:08 <HackEgo> 535) <oklopol> king is something women are better at than men
22:56:08 <HackEgo> 644) <copumpkin> it's not even about strictness actually <copumpkin> not strictly about strictness, anyway
22:58:00 <Phantom_Hoover> http://esolangs.org/wiki/From_INTERCAL_to_LOLCODE:_The_Esoteric_Programming_Story
22:58:06 <Phantom_Hoover> WHY DID NOBODY INFORM ME
22:59:19 <Bike> concepts: half the film
23:00:31 <Phantom_Hoover> featuring interviews with top esolangers
23:02:26 <Sgeo> The gostak distims the doshes
23:03:43 <Bike> we could make another documentary. from international transport to beaky so easy: the esoteric mockery story
23:04:43 <elliott> from factor to clojure to factor: the sgeo story
23:05:34 <Sgeo> elliott, you should keep up. It's now Smalltalk.
23:06:06 <Bike> smalltalk + racket -> smack it?
23:06:44 <oerjan> <Phantom_Hoover> WHY DID NOBODY INFORM ME <-- we just wanted to delay the inevitable carnage a bit.
23:06:51 <Sgeo> http://iplayif.com/?story=http%3A%2F%2Fwww.ifarchive.org%2Fif-archive%2Fgames%2Fzcode%2Fgostak.z5
23:06:58 <Sgeo> I have no idea anymore what words mean
23:07:34 <Phantom_Hoover> there's a word for that
23:09:51 <shachaf> Oh, that's Star651?
23:09:57 <elliott> Sgeo: it won't be smalltalk by the time the film is made.
23:10:02 <shachaf> Does Star651 do *everything* good in the esolang world these days?
23:11:18 <olsner> does anyone do anything in the esolang world these days?
23:11:25 <Phantom_Hoover> star651 does
23:30:09 -!- oerjan has quit (Quit: leaving).
2013-01-23
00:00:40 -!- variable has quit (Read error: Connection reset by peer).
00:10:17 -!- FreeFull has quit.
00:23:16 -!- oerjan has joined.
00:28:26 -!- Phantom_Hoover has quit (Remote host closed the connection).
00:33:02 -!- carado has quit (Ping timeout: 246 seconds).
00:44:20 -!- epicmonkey has quit (Ping timeout: 248 seconds).
00:49:35 <Sgeo> `list
00:49:36 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
00:55:58 -!- variable has joined.
00:57:19 -!- TeruFSX has joined.
00:59:19 <Sgeo> protip: Hold it down
01:35:35 <coppro> Sgeo: thank you for the protip
01:35:37 <coppro> much appreciated
01:35:46 <Sgeo> yw
01:35:57 -!- TeruFSX2 has joined.
01:38:57 -!- oerjan has quit (Quit: leaving).
01:39:24 -!- TeruFSX has quit (Ping timeout: 256 seconds).
01:46:52 -!- DHeadshot has quit (Ping timeout: 272 seconds).
01:55:01 -!- DHeadshot has joined.
02:05:05 -!- copumpkin has quit (Ping timeout: 252 seconds).
02:05:36 -!- copumpkin has joined.
02:13:46 -!- Arc_Koen has quit (Quit: Arc_Koen).
02:20:35 -!- zzo38 has joined.
02:30:24 -!- monqy has joined.
02:38:53 -!- monqy has quit (Ping timeout: 256 seconds).
02:39:32 <Sgeo> Here's another qdb but it's all centered around elliottcable's channel
02:39:32 <Sgeo> http://elliottcablechan.tumblr.com/
02:39:53 -!- zzo38 has quit (Remote host closed the connection).
02:40:44 -!- monqy has joined.
02:40:58 <Sgeo> Oh also FireFly
02:41:11 <shachaf> `quote FireFly
02:41:12 <HackEgo> 15) <FireFly> Meh <FireFly> ._. \ 59) * oerjan swats FireFly since he's easier to hit -----### <FireFly> Meh * FireFly dies \ 861) <olsner> FireFly: oh, did you see ion's police reindeer? that was ... at least as on-topic as this discussion
02:41:18 <kmc> `quote shachaf
02:41:19 <HackEgo> 543) <shachaf> elliott: GHC bug? Come on, it's the parentheses. <shachaf> The more parentheses you add, the closer it is to LISP, and therefore the more dynamically-typed. \ 584) <shachaf> Real Tar is GNU tar. <shachaf> You just ignore whichever features don't make you feel superior enough. \ 618) <shachaf> VMS Mosaic? <shachaf> I hope that's no
02:41:37 <shachaf> Those are pretty awful quotes.
02:41:43 <shachaf> I have some good quotes somewhere!
02:42:08 <kmc> `quachaf
02:42:09 <HackEgo> 543) <shachaf> elliott: GHC bug? Come on, it's the parentheses. <shachaf> The more parentheses you add, the closer it is to LISP, and therefore the more dynamically-typed. \ 584) <shachaf> Real Tar is GNU tar. <shachaf> You just ignore whichever features don't make you feel superior enough. \ 618) <shachaf> VMS Mosaic? <shachaf> I hope that's no
02:42:20 <kmc> i went to add this command and then noticed it was already there!
02:42:41 <shachaf> It should randomize rather than grepping.
02:42:47 <shachaf> This way you always get the same quotes.
02:42:53 <shachaf> `queegan
02:42:54 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: queegan: not found
02:43:00 <Sgeo> `hatesgeo
02:43:25 <Sgeo> ...it hates me.
02:43:28 <shachaf> `run cp bin/qu{achaf,eegan}; sed -i s/shachaf/kmc/ bin/queegan
02:43:41 <shachaf> `queegan
02:43:53 <shachaf> I guess HackEgo is dead.
02:44:03 <HackEgo> No output.
02:44:04 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: queegan: not found
02:44:06 <HackEgo> No output.
02:44:21 <shachaf> `queegan
02:44:22 <HackEgo> 602) <kmc> COCKS [...] <kmc> truly cocks \ 633) <shachaf> You should get kmc in this channel. kmc has good quotes. <shachaf> `quote kmc <HackEgo> 686) <kmc> COCKS [...] <kmc> truly cocks <shachaf> Well, in theory. \ 704) <kmc> damn i should make a quasiquoter for inline FORTRAN \ 707) <kmc> has there been any work towards designing programming l
02:44:48 <shachaf> `quote 707
02:44:50 <HackEgo> 707) <kmc> has there been any work towards designing programming languages specifically for stoned people
02:45:00 <shachaf> Agda?
02:59:16 -!- DHeadshot has quit (Ping timeout: 248 seconds).
03:05:55 <Sgeo> "A tier one investment bank urgently requires a senior c#.net agile developer to join an agile team focused on the delivarance of a key global intiative within the securities / multi assett and client services space. "
03:06:11 <Sgeo> Employers expect resumes to be spell-checked but can put out drivel like that?
03:06:39 <Bike> such is the relation of the oppressor to the oppressed.
03:06:39 <tromp> sorry, but C# is not a tier one esolang
03:07:10 <Sgeo> "Therefore the following skills are a must have to even be conssidered; c#, .net, sql server, agile, tdd, pair programming, leadership, oo and multithreading..."
03:07:27 <Bike> can we topic "a must have to even be conssidered"
03:07:42 <Bike> also, how many ranks do you have to have in leadership? 12?
03:07:47 <Sgeo> I have a feeling whoever wrote that doesn't know what any of those terms mean, even "leadership"
03:08:26 <Sgeo> Oh hey I can post a link that works without needing to be logged in
03:08:26 <Sgeo> http://www.linkedin.com/jobs?viewJob=&jobId=4576873&goback=%2Enmp_*1_*1_*1_*1_*1_*1_*1_*1_*1&trk=rj_nus
03:09:16 <kmc> great URL
03:09:21 <kmc> A++++ would click again
03:09:46 <Bike> "This is a fantastic oppertunity to be a part of a key intiative for a greenfield global project for one of the worlds leading investment banks within a dynamic and cutting edge environment!" do you ever wonder how much of this is just by rote
03:09:54 <kmc> markov chain maybe
03:10:03 <Bike> like they don't really know how to construct a sentence except by tying together set phrases? Moreso than you or me do, I mean.
03:10:05 <Sgeo> They spelled initiative the same way twice
03:12:33 <Bike> i think that's pretty common.
03:12:46 <Bike> i wonder if they have courses on the precise nature of common errors. i'd take 'em
03:13:18 <Bike> " We operate across multiple sectors with specialist expert consultants within each sector who have an in depth understanding of their market place." sgeo, any chance of an interesting job for you, or what?
03:14:08 <kmc> leverage those paradigms
03:14:15 <Sgeo> This isn't the company that contacted me, btw
03:14:44 <Bike> yeah, but the other one sounded about the same. something something recruitment something paradigms something
03:15:02 <Sgeo> I think that other one was recruiting me for a job at a bank
03:15:15 <Sgeo> Not that I'd actually work for the recruiter
03:15:31 -!- DHeadshot has joined.
03:15:41 <Bike> it seemed like you would, but eh.
03:16:14 <Sgeo> http://www.jefferies.com/ <-- company that the job opening is for
03:27:44 <c00kiemon5ter> :P
03:27:56 <c00kiemon5ter> gn people
03:57:56 -!- DHeadshot has quit (Read error: Connection reset by peer).
04:12:33 -!- zzo38 has joined.
04:26:15 <kmc> do you think that all the fundamental kinds of food have already been invented
04:26:30 <kmc> will there ever be another food invention as game changing as the sandwich or the pizza
04:26:34 <kmc> i'm not stoned i swear
04:27:00 <Bike> all futurology is bunk. even when it's pizza-oriented futurology.
04:28:12 <zzo38> I don't know, and I also don't know how to guess.
04:28:24 <kmc> zzo38 is the honest futurologist
04:28:34 <Bike> i can appreciate that. good on ya, zzo.
04:29:09 <shachaf> zzo38++
04:30:08 <shachaf> I hope people will invent proper tasteless nutritious goo one of these days.
04:30:14 <shachaf> Or is there already such a thing?
04:30:28 <pikhq> I don't think we've quite hit bachelor chow yet.
04:31:11 <kmc> now with flavor!
04:34:19 <pikhq> I'd imagine the next game-changing food, if any, will come somewhere you least expect.
04:34:48 <pikhq> Something like animals genetically engineered to be delicious and 100% edible sans preperation.
04:35:21 <kmc> yeah
04:35:24 <zzo38> If you don't expect it, then how can you expect it?
04:35:27 <kmc> or vat-grown meat that isn't disgusting
04:35:44 <kmc> i mean there have been many recent advances in processing and packaging and such
04:35:52 <kmc> but i'm thinking of something somewhat different
04:36:00 <Bike> I don't think animals that cooked themselves alive would be very practical.
04:36:01 <kmc> a fundamentally new genre of food
04:36:02 <pikhq> Things I actually expect: vat-grown meat, and high-level irradiation.
04:36:22 <pikhq> It is utterly feasible to have shelf-stable meat.
04:36:31 <pikhq> However, the irradiation necessary is illegal unless you're NASA.
04:36:47 <kmc> maybe those molecular gastronomists will discover something with mass appeal eventually
04:37:20 * pikhq wants shelf-stable sushi.
04:38:19 <shachaf> I don't think sushi made out of horses would be very popular.
04:38:40 <pikhq> Horse sashimi is a thing.
04:38:51 <zzo38> Eat people who are in the "food jail".
04:38:54 <shachaf> Perhaps I'm wrong.
04:39:07 <shachaf> zzo38: What is the "food jail"?
04:39:21 <zzo38> shachaf: I don't know; that is why it is quotation marks.
04:39:57 <pikhq> http://upload.wikimedia.org/wikipedia/commons/f/f7/Horse-meat.jpg Japan, ladies and gentlemen.
04:40:10 <shachaf> `addquote <zzo38> Eat people who are in the "food jail".
04:40:14 <HackEgo> 927) <zzo38> Eat people who are in the "food jail".
04:40:24 <shachaf> `pastequotes <zzo38>
04:40:28 <Bike> looks pretty good.
04:40:28 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.11716
04:41:40 <Bike> pacific northwest tree octopus continues to be the best animal
04:45:28 <shachaf> zzo38: You say the best things.
04:46:05 -!- Bike_ has joined.
04:46:46 <zzo38> I am not the only one who says things; a lot of people do. But yes, I do too. It is you can write quotation of me and of other people too, they do that all the time.
04:47:07 <Bike_> `pastequotes itidus20
04:47:11 -!- Bike has quit (Disconnected by services).
04:47:11 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.25573
04:47:14 -!- Bike_ has changed nick to Bike.
04:49:40 <Bike> <itidus20> Game theory is not a perfect tool for analyzing video games. <itidus20> Nash failed to create a "video game theory" <-- the guy's got a point
04:49:45 <Bike> did he get banned, or just evaporate?
04:50:22 <shachaf> I don't think he got banned.
04:50:30 <shachaf> How does getting banned from #esoteric work?
04:50:54 <Bike> I gather you have to be elliott? I'm not sure.
04:52:07 <shachaf> Bike: Were you even around while itidus21 was around?
04:52:21 <Bike> No, that's why I'm asking.
04:52:51 <Bike> If I'm not familiar with all of the channel's mythology, it will be me on the pyre come next equinox. And I'd rather avoid that.
04:58:37 <zzo38> Maybe we could make up "Esoteric IRC Quotation Guessing Quiz" on Internet Quiz Engine.
04:59:10 <zzo38> (It doesn't have to be entirely the HackEgo quotations file)
05:00:58 <zzo38> (Anyways, there is a limit of 210 question slots (a time limit takes up four slots).)
05:16:59 <shachaf> zzo38: Why not remove the limit?
05:17:53 <zzo38> shachaf: To avoid buffer overflow, I don't remove the limit, however, I might increase it in another time, but I also might not.
05:19:33 <shachaf> Can't you increase it dynamically?
05:19:47 <zzo38> The limit is not actually part of Internet Quiz Engine; it is actually a limit in the gopher server, but I can increase that easily. However, I don't want to increase it too much. Also, it takes up space of environment variable too.
05:20:37 -!- evincar has joined.
05:22:52 -!- monqy has quit (Quit: hello).
05:27:45 <zzo38> How long do you want it?
05:28:49 <shachaf> Can't you increase it dynamically?
05:28:57 <shachaf> Anyway I don't use Gopher, so I can't use it.
05:29:00 <zzo38> No!
05:29:08 <zzo38> I don't want to increase it dynamically!
05:29:34 <shachaf> Why not?
05:29:51 <zzo38> I don't want any buffer overflow and computer overflow.
05:30:28 <shachaf> Computer overflow? That sounds dangerous.
05:30:30 <shachaf> What is it?
05:34:36 * quintopia hands zzo38 the philosopher's stone
05:34:46 <quintopia> it turns wood to RAM
05:34:54 <quintopia> no overflow issue ever again!
05:35:08 <quintopia> well...until you run out of trees
05:35:23 <shachaf> zzo38: I want 1048576 items.
05:37:10 -!- azaq23 has joined.
05:37:18 -!- azaq23 has quit (Max SendQ exceeded).
05:53:13 <kmc> python's 'for..else' is nice, but i wonder if it's one of those features which is obscure enough that code using it is automatically obfuscated
05:53:24 <Bike> how's it work?
05:55:32 <kmc> for n in range(2, 100):
05:55:32 <kmc> for d in range(2, n):
05:55:32 <kmc> if not n % d: break
05:55:32 <kmc> else:
05:55:32 <kmc> print n, 'is a prime number'
05:56:02 <kmc> the stuff in the 'else' block only runs if the 'for' block ran to exhaustion, but not if it executed 'break'
05:56:22 <Bike> why is it "else", then...
05:56:50 <shachaf> "else" means "if you didn't break"?
05:57:46 <evincar> It should be "if the block was never evaluated". :(
05:57:50 <Bike> reminds me that i should try to figure out how the hell good primality tests work
05:58:08 <evincar> Wrote a language once where "if", "while", "for", etc. returned booleans for just that reason.
05:58:12 <Bike> apparently you need to actually know math :(
05:59:22 <kmc> evincar: oh, that's neat
05:59:48 <shachaf> And else was just a thing that used the boolean result of the previous expression?
06:05:50 <Bike> https://bitbucket.org/kxz/omnipresence/src/ebcd9e54aed61025ff7778909b4a67485b26743d/omnipresence/__init__.py?at=default#cl-156 Seems pretty reasonable to me, kmc, though that might only be because i just had it explained.
06:18:39 <evincar> shachaf: Yeah, same with elsif.
06:18:59 <evincar> The whole thing was done as an operator precedence parser though...
06:19:10 <evincar> ...in C++ before I really understood parsers.
06:19:15 <evincar> Not good.
06:21:38 <kmc> the meaning of 'for .. else' is not that easy to figure out if you haven't seen it
06:22:03 <Bike> guess that's why there's a comment
06:22:15 <shachaf> It seems intuitively like it should be what evincar said.
06:22:29 <shachaf> There's no real analogy to if-else here, is there?
06:22:58 <evincar> Nope, but the real question is what a better keyword would be.
06:23:00 <kmc> i'm having trouble comingc up with one
06:23:09 <kmc> i,i 'finally'
06:23:47 <evincar> But "finally" implies "always" because exceptions.
06:24:05 <Bike> "then:" :D
06:24:28 <evincar> :P
06:25:20 <shachaf> Using a keyword for something because it's already a reserved word in the syntax is a time-honored tradition.
06:26:32 <Bike> also if i was doing that, i think i'd have the break in the for return from a lexical block, and have the "else" code just after the foor in the same block. but that's probably not remotely idiomatic python.
06:27:52 <evincar> Does Python have a thing for blocks?
06:28:08 -!- TeruFSX2 has quit (Ping timeout: 255 seconds).
06:28:29 <Bike> I think you could hack it with a lambda expression and "return", but that puts us squarely in wildly unidiomatic territory.
06:29:53 -!- ogrom has quit (Ping timeout: 256 seconds).
06:30:19 -!- ogrom has joined.
06:30:28 <kmc> shachaf: it's a tradition in C++ for sure
06:30:30 <kmc> don't know about Python
06:30:45 <kmc> but then C++ went and added a few new keywords that aren't in C and are almost never used
06:30:48 <kmc> just because they could
06:31:14 <shachaf> kmc: new is used pretty often.
06:31:16 <Bike> it's good to be a coder, man.
06:31:22 <kmc> ;P shachaf
06:31:46 <Bike> also, kmc, i don't know if you still care about kernel but i see what you mean about the thesis.
06:32:10 <Bike> Heuristically, the profundity of a truth is proportional to how difficult it was to discover the first time, divided by how obvious it is once successfully explained. While some truths only have to be uncovered to become obvious, others may have a lucid explanation that is even more difficult to find that the truth itself was. If there exists a lucid explanation, the difficulty of finding it should be counted in the numerator of the heuristic.
06:32:16 <kmc> oh wow they actually removed the 'export' keyword in C++11??
06:32:17 <Bike> totally relevant.
06:32:24 <kmc> because basically nobody even implemented it
06:32:37 <kmc> but maybe it's still a reserved word?
06:32:38 <Bike> what did it do?
06:33:06 <Bike> "The export keyword is a bit like the Higgs boson of C++. Theoretically it exists, it is described by the standard, and noone has seen it in the wild." or, not do.
06:33:30 <kmc> separate compilation for templates
06:34:35 <pikhq> IIRC precisely one vendor implemented it.
06:35:13 <pikhq> Yup. Comeau.
06:39:57 <kmc> haha nice disclaimer: http://software.intel.com/sites/default/files/m/0/1/3/opt-notice-en_080411.gif
06:40:08 <kmc> i guess they added this after the controversy
06:40:21 <kmc> where somebody discovered that icc basically treats every AMD chip as a 386 in terms of code generation
06:40:30 <Bike> -_-
06:48:16 <pikhq> Seems fairly anticompetitive.
06:48:38 <pikhq> In the "seriously, we've broken companies into several bits for this shit before" sense.
06:49:28 <kmc> have we?
06:49:31 <Bike> have we? i'm not sure there's an applicable precedent...
06:49:42 <kmc> intel doesn't have a monopoly either on chips or on compilers
06:49:50 <kmc> they aren't abusing monopoly power
06:50:24 <kmc> in general there is no obligation to make your products work nicely with competitors'
06:50:46 <coppro> while that's true, there is an obligation not to sabotage interoperability
06:50:51 <kmc> is there? legally?
06:50:57 <coppro> in most countries, yes
06:51:00 <kmc> interesting
06:51:08 <pikhq> They've been on the receiving end of antitrust suits before, actually...
06:52:30 <Bike> well icc still does emit working code for amd, right?
06:52:37 <pikhq> Technically, yes.
06:53:01 <kmc> got to sleep, ttyl all
06:53:03 <Bike> i guess the thing i'm wondering is if there's a precedent for making a thing that works well with your own thing and not well with the other people's thing being a bad thing.
06:53:30 <pikhq> However, in that case it's strictly inferior to any compiler you can find out there, TCC included.
06:53:52 <pikhq> Outside of antitrust suits, probably not.
06:54:14 <Bike> What's the precedent in antitrust suits?
06:54:33 <pikhq> Given that doing this outside of that context is about as intelligent as taking out your profits in cash and spreading them through Central Park.
06:55:40 <evincar> Bike: Programming languages that can't interop with other languages tend to be unpopular...
06:55:49 <evincar> ...if unpopular = bad, then there's one.
06:55:56 <pikhq> evincar: He was asking for legal precedent I think.
06:56:12 <Bike> Yes.
06:56:25 <pikhq> And there's no legal precedent for that, for similar reasons why there's not legal precedent for the badness of jamming a finger in your eye.
06:56:53 <Bike> Well hey, the purpose of case law is to riddle out the supposedly obvious, yeah?
06:57:05 <pikhq> Unless you approach a monopoly you wouldn't even *want to* do this.
06:57:38 <pikhq> As it'd be making an inferior product.
06:59:37 <shachaf> evincar: I should implement a type checker, eh?
07:00:10 <Bike> Does anyone know the name of the character that's an F but backwards? This is going to bother me.
07:00:20 <shachaf> Bike: http://shapecatcher.com/ ?
07:00:32 <Bike> I'm knee-deep in Phoenician and I believe I have taken a wrong term.
07:00:33 <Bike> turn
07:00:33 <shachaf> Latin epigraphic letter reversed f: ꟻ
07:00:42 <shachaf> Canadian syllabics blackfoot wa: ᖷ
07:00:45 <shachaf> Nko letter pa: ߔ
07:00:46 <shachaf> Etc.
07:00:56 <shachaf> Bike: It's totally a Neverhood tile, too!
07:00:57 <Bike> That's a neat thing.
07:01:00 <shachaf> Remember the bridge puzzle?
07:01:07 <Bike> I never played that game, unfortunately.
07:01:30 <Bike> Oh, it's in Greek music, cool.
07:01:52 <Bike> Maybe I should just accept that reading metamathematics papers by a linguistics nerd was a bad idea.
07:02:24 <evincar> shachaf: Everybody should implement a type checker, eh.
07:02:29 <evincar> What brings this up?
07:02:43 <shachaf> Well, I haven't.
07:04:14 <evincar> Oh...haven't implemented a typechecker.
07:04:34 <evincar> I spent a full minute puzzling over why you would say you hadn't brought up something you had.
07:04:43 * evincar is a smart
07:05:33 <shachaf> Well, you brought it up, actually.
07:05:55 <shachaf> But it's the type checker I hadn't implemented.
07:07:44 <evincar> I have no idea what we're talking about but will roll with it nonetheless.
07:07:59 <evincar> What kind of language is it that you haven't implemented a typechecker for?
07:08:51 <shachaf> Every kind of language.
07:09:36 <evincar> Okay, but did you have one in mind?
07:18:27 <zzo38> Is there a limit for environment variables length?
07:18:57 <shachaf> 4.33 units maximum.
07:21:15 <shachaf> @localtime zzo38
07:21:16 <lambdabot> Local time for zzo38 is 2013/01/22 23:14:25 -0800
07:23:10 -!- ogrom has quit (Ping timeout: 256 seconds).
07:25:32 <zzo38> I have increase the number of questions slots to 999, which should be sufficient; although there are limits for questions, choices, and number of variables to keep track of, even the old limits are much higher than other online quizzes.
07:25:35 -!- ogrom has joined.
07:26:03 <zzo38> (You can also download it into your own computer if you prefer it.)
07:26:56 <shachaf> Can I have 1048576?
07:27:17 <zzo38> If you want that much, run it on your own computer.
07:27:34 <shachaf> What if I don't have a computer?
07:27:40 <zzo38> It is fully free-software/open-source-software and is written in C.
07:27:50 <zzo38> If you don't have a computer, then don't write the message on the IRC, please.
07:28:11 <shachaf> What if my computer doesn't have 1048576 units of RAM?
07:28:11 <Bike> I think that's a burn, shachaf.
07:30:13 <zzo38> The program never allocates that much RAM, but the environment variables have to support whatever you are using.
07:30:44 <Bike> I have to say, I have no idea how environment variables are involved in a Gopher-based internet quiz program, but then I don't know much about Gopher or quizzes.
07:31:03 <shachaf> Bike: You should learn Haskell!
07:31:06 <shachaf> It's so much fun, man.
07:31:18 <Bike> How is it fun?
07:31:19 <evincar> Are we doing that again?
07:31:20 <shachaf> You'll understand all the crazy things crazy people say in here much better.
07:31:25 <evincar> Evangelising Haskell?
07:31:30 <Bike> Computer science is an eternal parade of sorrow.
07:31:33 <evincar> I've been away for too long.
07:31:52 <Bike> evincar: If it helps, apparently it's not working, because I still don't know Haskell.
07:32:01 <Bike> Or Lens. Or Caleskell, or Agda. Or Clojure.
07:32:01 <evincar> You will.
07:32:05 <evincar> I got converted.
07:32:08 <zzo38> My server also has a file size limit of one million bytes, so you also have to run the program on your own computer if you want to write hundreds of long pages of text on the quiz.
07:32:11 <evincar> Now my JOB is to write Haskell.
07:32:20 <evincar> This channel has seriously fucked up my life.
07:32:24 <Bike> Having a job doesn't seem like a bad outcome, honestly.
07:32:29 <evincar> Hey you.
07:32:32 <shachaf> evincar: Bike was asking questions about implementation details of GHC.
07:32:48 <Bike> Yeah, but that's actually because I was wondering about the term "static typing".
07:33:04 <zzo38> Bike: Yes, learn of Haskell, and of the mathematics, and so on, to know what some of our questions are.
07:33:08 <Bike> I'm in this strange place where I know what "sum type" means but don't actually use any ML-family language regularly.
07:33:20 <evincar> okay so like
07:33:21 <evincar> do
07:33:27 <fizzie> Or do not?
07:33:31 <evincar> no no
07:33:32 <evincar> do
07:33:39 <evincar> There is no do not.
07:33:41 <Bike> Am I being punked?
07:33:44 <shachaf> Bike: It's "pretty cool imo, honestly".
07:34:18 <evincar> Haskell made me forget how to program kinda.
07:34:20 <zzo38> Yes, there is the sum type, product type, exponent type, and sometime we even try to think of logarithm type and so on but perhaps there is none of that. But, there is the derivative of type, though!
07:34:24 <Bike> yes, i know haskell is cool, i just don't want to bother setting up an environment and learning what libraries to use and bla bla bla when I hardly program anyway and I can just sit in my hovel reading books.
07:34:31 <Bike> What is the derivative of type, zzo38.
07:34:35 <evincar> I went to write some C++ and realised I hadn't done, like, IO.
07:34:37 <evincar> In a while.
07:34:46 <evincar> Bike: A zipper.
07:34:47 <shachaf> Bike: I tried to explain it to you once, but you got bored.
07:34:53 <Bike> Ok.
07:34:54 <shachaf> Bike: It's the thing with the holes.
07:34:58 <shachaf> It's not quite a zipper, but it's related.
07:35:01 <zzo38> Bike: It is the same like derivative of numbers, but in some cases you can't due to no predecessor types and that stuff
07:35:04 <evincar> Yeah.
07:35:06 <evincar> One step at a time.
07:35:15 <Bike> Since when do numbers have derivatives?
07:35:16 <shachaf> Bike: You don't really need to learn libraries to benefit from Haskell, though.
07:35:31 <Bike> oh no?
07:35:36 <shachaf> Nope.
07:36:34 <evincar> But the libraries are so nice.
07:37:02 <shachaf> Some of them.
07:37:06 <evincar> Hackage is no CPAN, but it is good.
07:37:12 <evincar> On the whole.
07:37:50 <Bike> sorry, that was supposed to imply "how do i benefit from haskell if i can't write using libraries"
07:38:11 <evincar> But you can though?
07:38:31 <shachaf> You benefit by it, like, changing the way you think and stuff, man!!
07:38:37 <evincar> If there aren't bindings for some library you like, you can make them.
07:39:01 <Bike> I think I already got that, shachaf. I have a copy of TAPL and a couple papers I don't understand downloaded.
07:39:16 <Bike> Plus the answers to my questions about how call/cc works in haskell and bla bla bla.
07:39:20 <shachaf> I haven't read TaPL.
07:39:32 <shachaf> Anyway, your way of thinking hasn't yet been changed.
07:39:34 <shachaf> I can tell.
07:39:37 <Bike> It's "pretty cool, imo"
07:39:47 <Bike> How can you tell, shachaf?
07:39:55 <shachaf> I just can, man.
07:39:59 <shachaf> Don't question it!!
07:40:11 <Bike> I bet it's because I wrote the Scheme name for call/cc instead of making a convoluted joke involving Oleg.
07:40:14 <shachaf> monqy: do you logread?
07:40:16 <zzo38> Actually call/cc works in Haskell is like Peirce's law of classical logic.
07:40:43 <Bike> yeah, i don't get the types-logic correspondence, honestly.
07:40:55 <evincar> Explore it.
07:40:56 <Bike> i'm kind of ok with that because I'm shitty at logic anyhow.
07:40:57 <evincar> It goes pretty deep.
07:41:06 <Bike> and nothing i want to do academically is that related to it.
07:41:27 <evincar> Like "oh hey, I can look at this function's type and know that there is no possible implementation of it which is total".
07:41:30 <Bike> But I'm just a dumb kid anyway. What do I know.
07:41:31 <evincar> "This type is a lying fucker."
07:41:50 <Bike> What would such a type be?
07:42:01 <zzo38> It is with intuitionistic logic, and then if you use continuations, make classical logic.
07:42:07 <evincar> Like, say, head :: [a] -> a
07:42:08 <shachaf> @quote kmc Int
07:42:08 <lambdabot> kmc says: i don't expect that the "write code that doesn't suck pattern" can ever be made into a library
07:42:15 <shachaf> @quote kmc exist
07:42:15 <lambdabot> kmc says: "Haskell is great, because Curry-Howard! Proving things in the type system. We can prove that, uh, Ints exist, unless they're ⊥."
07:42:36 <zzo38> Such as () -> Zero if () is a unit type and Zero is uninhabited type.
07:42:39 <Bike> Ints are nice. It's nice to know that they exist.
07:42:47 <evincar> Which is the same as ([a] or []) implies a, which is clearly false
07:43:08 <Bike> So, I know that a function that can't return a value can't return a value?
07:43:23 <evincar> Sure, so it has to throw an exception or something.
07:43:41 <evincar> For example.
07:43:56 <zzo38> But it is also, using function type as exponents, pairs as products, Either as sums, even so id :: Zero -> Zero just as zero to the power of zero equals one.
07:44:18 <Bike> 0^0 doesn't always equal one... what kind of heresies does Haskell teach!!
07:44:40 <shachaf> Bike: It does.
07:44:51 <zzo38> I know some say it doesn't, but in many cases, I see, I think that certainly 0^0=1 is correct.
07:45:30 <Bike> "only sometimes"
07:45:37 <Bike> but whatever that's not very serious of me
07:45:51 <zzo38> (The TI-92 calculator will make 0^0=1 but will display a warning)
07:45:55 <shachaf> Bike: I used to be a disbeliever.
07:46:04 <Bike> In what, exponents/
07:46:05 <evincar> Also given a function type I'm pretty sure you can recursively enumerate possible implementations of that function.
07:46:28 <zzo38> evincar: I think I once wrote that for some cases.
07:46:34 <evincar> I know there's a Haskell thing that will generate *some* implementation given a type.
07:46:45 <Bike> Isn't there a lambdabot function for that?
07:46:49 <shachaf> (Nat -> Bool) has uncountably many inhabitants!!
07:46:50 <Bike> It has a ridiculous name
07:47:04 <zzo38> No, I mean that for some function types, makes a list of all function of that type.
07:47:17 <Sgeo> djinn
07:47:20 <evincar> Djinn
07:47:22 <evincar> Yeah.
07:47:22 <Sgeo> @djinn a -> [a]
07:47:22 <lambdabot> Error: Undefined type []
07:47:23 <Bike> Yeah, that one.
07:47:27 <Bike> Thanks lambdabot.
07:47:29 <Sgeo> @djinn a -> (a,a)
07:47:29 <lambdabot> f a = (a, a)
07:47:34 <shachaf> @djinn a -> Maybe a
07:47:34 <lambdabot> f = Just
07:47:45 <Sgeo> @djinn [a] -> a
07:47:45 <lambdabot> Error: Undefined type []
07:47:48 <Deewiant> @djinn a -> Maybe b
07:47:48 <lambdabot> f _ = Nothing
07:47:52 <Sgeo> @djinn Maybe a -> a
07:47:52 <lambdabot> -- f cannot be realized.
07:47:56 <evincar> @djinn Maybe a -> [a]
07:47:56 <lambdabot> Error: Undefined type []
07:47:56 <Bike> @djinn () -> Botton
07:47:57 <lambdabot> Error: Undefined type Botton
07:48:01 <evincar> :(
07:48:03 <Bike> bottom. well, whatever
07:48:07 <evincar> i has a dumb
07:48:10 <evincar> Anyway.
07:48:10 <Bike> @djinn Maybe a -> List a
07:48:10 <lambdabot> Error: Undefined type List
07:48:15 <Deewiant> @djinn-env
07:48:15 <lambdabot> data () = ()
07:48:15 <lambdabot> data Either a b = Left a | Right b
07:48:15 <lambdabot> data Maybe a = Nothing | Just a
07:48:15 <lambdabot> data Bool = False | True
07:48:15 <lambdabot> data Void
07:48:15 <Bike> ...ok.
07:48:17 <lambdabot> type Not x = x -> Void
07:48:19 <lambdabot> class Monad m where return :: a -> m a; (>>=) :: m a -> (a -> m b) -> m b
07:48:21 <lambdabot> class Eq a where (==) :: a -> a -> Bool
07:48:23 <lambdabot> data Cont r a = Cont ((a -> r) -> r)
07:48:26 <shachaf> Bike: Lists are very boring from the perspective of Djinn.
07:48:35 <Bike> I'm sorry you feel that way, djinn.
07:48:55 <evincar> All this talk of djinn and all I have is vodka.
07:49:06 <Sgeo> There's no Y combinator for types, is there?
07:49:09 <Bike> anyway i'm not a disbeliever. I just don't care that much, is all.
07:49:29 <Bike> Sgeo: that would require a type that is also a kind, and so on, no?
07:49:42 <evincar> I don't think so.
07:49:59 <evincar> It would require a TC typechecker to evaluate a type-expression to a fixed point, obviously.
07:50:03 <Sgeo> No idea, I just want to know if it's possible to encode the type of a list in djinn, and since I don't think the type in question can be named
07:50:10 <Bike> Obviously.
07:50:23 <evincar> Hey.
07:50:29 <evincar> I like being in a channel where that is "obviously".
07:50:35 <evincar> Or obviously *enough*.
07:50:36 <Bike> :D
07:51:02 <Bike> I do like watching people talk about neat things.
07:51:03 <shachaf> Sgeo: ?
07:51:19 <shachaf> What do you mean by Y combinator?
07:51:35 <shachaf> Specifically the implementation of Y, or just any fixed-point combinator?
07:51:39 <Sgeo> ANy
07:51:59 <Deewiant> newtype Fix f = Fix (f (Fix f))
07:52:00 <shachaf> What's wrong with newtype Fix f = Fix (f (Fix f))?
07:52:46 <Sgeo> My only goal is to get djinn to understand types. Naming a new type doesn't help with that as far as I see
07:53:02 <Bike> I'm pretty sure djinn understands types better than most humans.
07:53:05 <shachaf> @djinn-add newtype Fix f = Fix (f (Fix f))
07:53:05 <lambdabot> Cannot parse command
07:53:09 <shachaf> @djinn-add data Fix f = Fix (f (Fix f))
07:53:09 <lambdabot> Error: Recursive types are not allowed: Fix
07:53:11 <Sgeo> *lists
07:53:11 <shachaf> Aw.
07:53:22 <Sgeo> oh
07:53:34 <Sgeo> I take it that's a no-go on the List thing then
07:53:48 <shachaf> Recursive types are boring from Djinn's perspective.
07:53:55 <Sgeo> @djinn-add data List a = Nil | (a, List a)
07:53:56 <lambdabot> Cannot parse command
07:54:06 <shachaf> That's broken syntax anyway.
07:54:06 <zzo38> Do they support quantified types?
07:54:09 <Bike> Djinn's kind of picky, isn't it.
07:54:15 <shachaf> But you should give up now because it's pointless.
07:54:18 * shachaf , motivational speaker
07:54:26 <Sgeo> @djinn-add data List a = Nil | List (a, List a)
07:54:26 <lambdabot> Error: Recursive types are not allowed: List
07:54:36 <shachaf> Bike: A Haskell compiler also wouldn't accept that, because it's invalid syntax.
07:54:45 <evincar> Does Djinn always choose the least implementation?
07:54:47 <shachaf> zzo38: Quantified as in rank-2?
07:54:50 <evincar> For some ordering on implementations.
07:54:51 <Bike> Syntax is boring from my perspective, amirite
07:54:55 <zzo38> shachaf: Yes, and rank-N
07:54:57 <shachaf> evincar: It tries to use as many variables as it can.
07:54:59 -!- ejnahc has joined.
07:55:00 <shachaf> zzo38: Nope.
07:56:00 <shachaf> What Djinn does is impossible for rank-2 types.
07:56:11 <shachaf> And EVEN MORE IMPOSSIBLE for rank-n types.
07:56:16 <Bike> So, in other news. This paper has an appendix about the choice of Greek letter in its notation. I am going to print it out and burn it.
07:56:40 <shachaf> i love greek letters
07:56:43 <shachaf> they are so easy
07:56:52 <Bike> They're not easy.
07:56:54 <zzo38> Why do you want to waste the paper and ink on that?
07:56:55 <Bike> TeX source is included.
07:57:27 <evincar> Are we not human? Do we not enjoy the visceral appeal of burning stuff we don't like?
07:57:37 <evincar> And/or pooping on it.
07:57:42 <Bike> zzo38, because I am superstitious, and strongly believe that if I don't cleanse myself of this taint, I may be infected, and start considering using Tengwar.
07:58:07 <zzo38> I think you should not waste it.
07:58:27 <Bike> ok. i will use a proxy.
07:58:36 <evincar> Soon: < Bike> Hey all, I'm looking for a good Tengwar font for programming.
07:58:44 <zzo38> I also think it should not be wasted in general.
07:58:48 <Bike> Iti's a serious risk, man!
07:58:55 -!- ttmrichter has joined.
07:59:06 <Bike> zzo38, to be honest, I live in the woods and am sick of trees, so I'm not too sympathetic to paper.
07:59:11 <Bike> I can see its parents watching me.
07:59:13 <Sgeo> I remember having a video of someone burning a page of Circe's code
07:59:27 <zzo38> I think you should not destroy the environment, solar system, and universe, in order to save humanity. Other way around is a bit better, though.
07:59:30 <Sgeo> Hi ttmrichter
07:59:38 <Sgeo> `welcome
07:59:42 <HackEgo> 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:59:42 <zzo38> If you are sick of trees, get out of the woods please.
07:59:44 <shachaf> hi ttmrichter
07:59:56 <Bike> I'd like to. But life is hard. We don't always get what we ant.
07:59:58 <Bike> want.
08:00:06 <Bike> Though I don't have my ant army either.
08:01:04 <evincar> At work we used to have a bunch of build scripts written using Ant.
08:01:06 <evincar> And let me tell you.
08:01:13 <Bike> I mean real ants!
08:01:15 <Bike> Fucking programmers.
08:01:22 <evincar> You almost NEVER get what you ant.
08:01:39 <shachaf> Bike: would you BE QUIET and let evincar make his puns
08:01:42 <shachaf> sheesh
08:01:52 <Bike> ^rot13 fuckpuns
08:01:53 <fungot> shpxchaf
08:02:20 <shachaf> ^rot13 evincar
08:02:20 <fungot> rivapne
08:02:22 <shachaf> ^rot13 ravine
08:02:23 <fungot> enivar
08:02:27 <shachaf> ^rot13 riven
08:02:27 <fungot> evira
08:02:42 <shachaf> ^rot13 myst
08:02:42 <fungot> zlfg
08:02:44 <shachaf> ^rot13 exile
08:02:44 <fungot> rkvyr
08:02:46 <shachaf> ^rot13 uru
08:02:46 <fungot> heh
08:02:48 <shachaf> heh
08:03:06 <Sgeo> Oh hey Newspeak is on Newspeak3
08:03:10 <Bike> Gosh.
08:03:29 <ttmrichter> Sure am, shachaf.
08:03:50 <evincar> I feel silly for not heretofore having noticed what "shachaf" is.
08:03:56 <fizzie> "Evira" is the Finnish Food Safety Authority ("Elintarviketurvallisuusvirasto").
08:03:58 <shachaf> ttmrichter: Am what?
08:04:23 <Bike> I thought "shachaf" was a Hebrew name, and "funpuns" is a coincidence.
08:04:40 <ttmrichter> Hi.
08:04:42 <shachaf> evincar: You mean, other than my given name?
08:04:51 <myndzi> +1 point for rot13
08:05:00 <shachaf> ttmrichter: I heard you should learn Haskell.
08:05:07 <shachaf> Unless you already know Haskell?
08:05:08 <evincar> I thought it was "Shacha F.", highly respected Ukrainian drug dealer by day, hacker by night.
08:05:11 <myndzi> much more interesting than just 'backwards'
08:05:12 <shachaf> Then you should learn it again.
08:05:16 <ttmrichter> shachaf: I already know Haskell.
08:05:24 <shachaf> ttmrichter: Then you should learn lens.
08:05:26 <Bike> Isn't that transliterated as "Sasha"?
08:05:27 <ttmrichter> I even have a credit in Real World Haskell. :)
08:05:45 <shachaf> ttmrichter: I recognize your nick but I'm not sure where from.
08:05:56 <ttmrichter> From a recent anti-Haskell rant, probably. :D
08:06:05 <Bike> Wow, you're in a lot of channels.
08:06:17 <zzo38> But do you know of the monad, comonad, Kleisli category, Kan extensions, Cartesian closed category, ...
08:06:25 <ttmrichter> Yeah, but they're all low-volume.
08:06:28 <shachaf> Oh, you're that person.
08:06:32 <Bike> It's important that you know of Kan extensions.
08:06:32 <ttmrichter> zzo38: I know *of* them. :)
08:06:42 <shachaf> OK, this won't be productive.
08:07:36 <shachaf> evincar: Why did you invite a troll to this channel?
08:08:09 <shachaf> We're more about the crackpots.
08:08:21 <evincar> shachaf: We had a nice conversation about garbage collectors and I am a hospitable person.
08:08:51 <evincar> The more the merrier!
08:08:56 <evincar> Or approximately merrier.
08:09:34 <Bike> Merrier in the limit?
08:09:37 <evincar> Merriment increases asymptotically with morement, but it may not be observable for some values of n.
08:10:08 <evincar> Yes that.
08:10:57 <Bike> Maybe that's how Heaven works. It just keeps getting more people since the world is endless, and the dead grow more and more joyful, eventually becoming one with God and happiness after eternity.
08:11:08 -!- ttmrichter has left ("Leave").
08:11:31 <Bike> Does that mean that this is hell? :(
08:11:55 <zzo38> The biggest greed is wanting an afterlife.
08:12:12 <Bike> Harsh, bro.
08:12:29 -!- ogrom has quit (Ping timeout: 256 seconds).
08:12:38 <zzo38> The biggest greed is wanting an afterlife and take everything with you.
08:14:12 -!- zzo38 has quit (Remote host closed the connection).
08:14:34 <Bike> everything i touch dies.....
08:18:39 <myndzi> high five bro
08:19:25 <Bike> http://www.genomicron.evolverzone.com/wp-content/uploads/Fig1.jpg
08:22:16 <fizzie> "Fig. 1. A fascinating picture." (Figure caption from some maths journal on the "recent issues" desk in the library.)
08:23:02 <fizzie> (The contents were, IIRC, some kind of a graph. It didn't make any special sense to me.)
08:23:56 <Bike> How to set the switches on this thing. Dayan, P. (2012). Current Opinion in Neurobiology, 22(6), 1074–1068.
08:26:35 <shachaf> Was I too rude?
08:26:41 <shachaf> Perhaps ttmrichter isn't always a troll.
08:27:39 <Bike> what's your prior experience?
08:28:37 <shachaf> I think http://www.txt.io/t-2kv5h is the post they referred to.
08:29:16 <Bike> boring
08:29:22 <shachaf> Yes.
08:30:02 -!- asiekierka has quit (Excess Flood).
08:30:09 -!- asiekierka has joined.
08:30:51 <Bike> i was hoping for, like, something about Haskell, at least.
08:32:15 <shachaf> «PayPal once rejected a candidate who aced all the engineering tests because for fun, the guy said that he liked to play hoops. That single sentence lost him the job. No PayPal people would ever have used the world “hoops.” Probably no one even knew how to play “hoops.” Basketball would be bad enough. But “hoops?” That guy clearly wouldn’t have fit in. He’d have had to explain to the team why he was going to go play hoops on ...
08:32:21 <shachaf> ... a Thursday night. And no one would have understood him.»
08:32:24 <shachaf> good hiring strategy imo
08:33:54 <Fiora> :/
08:34:30 <Bike> paypal's ceo is the one that was making an offshore libertarian utopia, right?
08:34:56 <shachaf> «PayPal also had a hard time hiring women. An outsider might think that the PayPal guys bought into the stereotype that women don’t do CS. But that’s not true at all. The truth is that PayPal had trouble hiring women because PayPal was just a bunch of nerds! They never talked to women. So how were they supposed to interact with and hire them?»
08:35:23 <Bike> fuckin' nerds, maaaaan
08:36:47 <shachaf> «One good hiring maxim is: whenever there’s any doubt, there’s no doubt. It’s a good heuristic. More often than not, any doubt precluded a hire. But once this very impressive woman came to interview. There were some doubts, since she seemed reluctant to solve a coding problem. But her talk and demeanor—she insisted on being interviewed over a ping-pong game, for instance—indicated that she’d fit into the ubernerd, ubercoder ...
08:36:53 <shachaf> ... culture. She turned out to be reasonably good at ping-pong. Doubts were suppressed. That was a mistake. She turned out to not know how to code. She was a competent manager but a cultural outsider. PayPal was a place where the younger engineers could and would sometimes wrestle with each other on the floor to solve disputes! If you didn’t get the odd mix of nerdiness + alpha maleness, you just stuck out.»
08:36:59 <shachaf> sounds like a great place to work
08:37:38 <Bike> So, um, are all these quotes supposed to be positive about PayPal?
08:37:47 <evincar> Because they really don't come off that way.
08:37:58 <Bike> I'm... kind of confused about the level of sarcasm, here.
08:38:12 <Fiora> .... wrestle... on the floor?
08:38:38 <shachaf> Bike: You're just mad you're not ubernerd and/or alphamale enough for PayPal.
08:38:47 <Bike> No, really, is this PayPal saying this?
08:38:50 <evincar> Now I like a good wrestle, but...
08:38:55 <shachaf> http://blakemasters.com/post/21437840885/peter-thiels-cs183-startup-class-5-notes-essay
08:38:59 <Bike> I only wrestle if mud is provided.
08:39:05 <Fiora> this sounds like a wonderful way to make good code
08:39:16 <Fiora> if there's a technical decision, pff, /discussing/ it? that's for /girls/
08:39:29 <Fiora> real men *wrestle* in their code reviews
08:39:37 <Bike> Oh, a ttrpg tagline. k
08:39:52 <evincar> Well, your code can't fight for itself.
08:39:56 <evincar> You have to stand up for it.
08:40:14 <Bike> " It turned out that scaling up would be very challenging for PayPal because the 26 year-olds who were managing hundreds of thousands of credit cards didn’t make all the optimal choices from the beginning. "
08:40:40 <Bike> But well. Not sarcastic at all. Wow.
08:41:09 <shachaf> Maybe these quotes are just made up.
08:41:48 <Bike> ok, so the paypal cofounder involved in John Galt bullshit is someone else, at least.
08:49:25 -!- impomatic has quit (Ping timeout: 248 seconds).
08:58:37 -!- Bike has quit (Quit: leaving).
09:05:41 -!- augur_ has quit (Read error: Connection reset by peer).
09:06:08 -!- augur has joined.
09:06:53 <evincar> I seem to have lost the ability to sleep.
09:06:54 -!- ogrom has joined.
09:06:57 <evincar> I am discomfited.
09:09:37 -!- epicmonkey has joined.
09:33:49 -!- epicmonkey has quit (Remote host closed the connection).
09:34:08 -!- epicmonkey has joined.
09:54:44 -!- epicmonkey has quit (Ping timeout: 248 seconds).
10:06:03 <shachaf> oerjan: why is ε afraid of ζ?
10:07:18 -!- ais523 has joined.
10:08:07 <ais523> hi
10:08:49 <shachaf> a hi s 5 2 3
10:57:01 -!- Phantom_Hoover has joined.
10:58:26 <Jafet> 523 EHLO
11:01:26 -!- sivoais has quit (Read error: Connection reset by peer).
11:13:51 -!- epicmonkey has joined.
11:44:38 -!- evincar has quit (Quit: Up up and away!).
11:45:12 -!- oerjan has joined.
11:50:06 <oerjan> shachaf: you realize ζ and θ would work better with the actual alphabet order? or is that part of the joke.
11:52:10 <shachaf> oerjan: Hmm?
11:52:17 <shachaf> Q: Why is ε afiraid of ζ?
11:52:26 <shachaf> A: Because ζ η θ.
11:52:42 <shachaf> s/fi/f/
11:52:46 * oerjan swats himself -----###
11:52:56 <c00kiemon5ter> αβγδεζηθικ...
11:53:14 <ais523> I don't quite think that joke works, which is strange because it's exactly analogous to the same joke with numbers
11:53:20 * oerjan then sics 7 on shachaf
11:53:28 <shachaf> ais523: Why doesn't it work?
11:53:39 <shachaf> (Maybe it only works in American.)
11:53:47 <ais523> yeah, it does, but I translated it to American
11:53:52 <ais523> I think the problem is the extra article
11:54:07 <oerjan> i thought that was just a heavy greek accent
11:54:12 <ais523> you think of the letters as types of things, rather than as individual things, because thetas have to be countable
11:54:14 <shachaf> I think the article is fine.
11:54:18 <ais523> otherwise the grammar is worng
11:54:20 <ais523> *wrong
11:54:24 <shachaf> "a theta" sounds OK to me.
11:54:25 <ais523> this makes them rather harder to anthropomorphise
11:54:52 <ais523> shachaf: yeah, but the joke doesn't work, because why would an epsilon care that a theta has been eaten? it's not a theta itself
11:55:00 <oerjan> yeah humans are hard to anthropomorphise because there is more than one of them
11:55:07 <ais523> sure, it's a /letter/, but it doesn't generalize well
11:55:12 <shachaf> ais523: Well, sure, but it's a letter.
11:55:17 <shachaf> It sounds fine to me.
11:55:20 <ais523> oerjan: humans are very hard to anthropomorphise
11:55:29 <Deewiant> 6 isn't 9 either
11:55:44 <ais523> whereas with the number version of the joke, the fact that it's just "9" that's been eaten makes it sound like a proper noun
11:55:51 <ais523> and so 6 could reasonably fear that it was next
11:55:57 <shachaf> When did ε decide to stop being a Scientologist?
11:56:01 <ais523> because they sound like they're both names for the same sorts of things
11:56:08 <oerjan> maybe epsilon just isn't a letterist, and so is fully capable of empathy with thetas
11:56:26 <shachaf> A: When ζηθn.
11:56:28 <oerjan> also he's clearly the last remaining epsilon
11:57:11 <oerjan> `addquote <ais523> oerjan: humans are very hard to anthropomorphise
11:57:17 <HackEgo> 928) <ais523> oerjan: humans are very hard to anthropomorphise
11:57:24 <ais523> they're human already!
11:57:31 <oerjan> i think that works best with no context
11:57:36 <fizzie> I plugged in a USB headset, but had to reboot in order for it to show up in Gnome sound settings as an output option (as opposed to just existing in the "hardware" tab). :/
11:57:36 <ais523> yeah
11:57:54 <shachaf> ais523: Perhaps you don't think it works because you're unfamiliar with ζ.
11:58:00 <ais523> fizzie: perhaps restarting the appropriate daemon would have worked
11:58:01 <shachaf> ζ does not discriminate.
11:58:45 <shachaf> ζ is like a monster, and the rest of the Greek alphabet is like Tokyo.
11:58:46 <oerjan> ζ is obviously Xenu.
11:59:12 <shachaf> Xenu ate a Thetan?
11:59:40 <oerjan> or maybe he's L Ron Hubbard
12:00:20 <shachaf> Is #esoteric going to be sued now?
12:00:52 <Fiora> θn
12:01:06 <oerjan> shachaf: we'll be sued for accidentaly making up part of their copyrighted books
12:01:07 <shachaf> 03:56 <shachaf> A: When ζηθn.
12:01:59 <shachaf> Fiora: Shouldn't you be asleep?
12:03:17 <oerjan> `run ls bin/*quo*
12:03:18 <HackEgo> bin/addquote \ bin/allquotes \ bin/delquote \ bin/pastaquote \ bin/pastenquotes \ bin/pastequotes \ bin/quoerjan \ bin/quote \ bin/quotes
12:03:32 <shachaf> Hrm.
12:03:42 -!- Arc_Koen has joined.
12:03:43 <oerjan> `run ls bin/*qu*
12:03:44 <HackEgo> bin/addquote \ bin/allquotes \ bin/delquote \ bin/pastaquote \ bin/pastenquotes \ bin/pastequotes \ bin/quachaf \ bin/queegan \ bin/quoerjan \ bin/quørjan \ bin/quote \ bin/quotes
12:03:49 <shachaf> We could define addquoerjan, allquoerjan, delquoerjan, pastaquoerjan, etc.
12:05:15 <oerjan> `cat bin/queegan
12:05:16 <HackEgo> quote kmc
12:05:23 <oerjan> `cat bin/quachaf
12:05:24 <HackEgo> quote shachaf
12:05:32 <oerjan> `cat bin/quoerjan
12:05:33 <HackEgo> allquotes | grep oerjan | shuf
12:06:03 <shachaf> Is there seriously no command for "random quote containing $1"?
12:06:14 <Jafet> You need to make a FUSE filesystem for this and mount it on /bin.
12:06:21 <oerjan> that was what i was wondering, in fact
12:06:27 <oerjan> `cat bin/quote
12:06:28 <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
12:07:18 <oerjan> `cat bin/quotes
12:07:19 <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
12:07:46 <shachaf> `cat bin/quotes
12:07:46 <shachaf> `cat bin/quote
12:07:47 <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
12:07:47 <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
12:08:04 <Jafet> `quote quote
12:08:05 <HackEgo> 30) <oklopol> i can get an erection out of a plank, you can quote me on that. \ 70) [Warrigal] `addquote <Dylan> hahaha, Lawlabee is running windows <Lawlabee> 'cuz it's pretty awesome. [Lawlabee] Warrigal: :( \ 71) Note that quote number 124 is not actually true. \ 79) <ais523> let's put that in the HackEgo quotes files, just to completely mystif
12:08:33 <oerjan> `cat bin/pastaquote
12:08:34 <HackEgo> ​#!/bin/sh \ exec quote pasta
12:08:48 <shachaf> `pastaquote
12:08:50 <HackEgo> No output.
12:09:07 <shachaf> At least they were considerate enough to leave a tail call.
12:10:07 <shachaf> is scientology real
12:10:33 <Jafet> Scientologists are real
12:10:36 <Fiora> shachaf: um, I slept for like 5 hours. and then I saw the Ni no Kuni box on my desk
12:11:46 <shachaf> `translate Ni no Kuni
12:11:50 <HackEgo> Traceback (most recent call last): \ File "/hackenv/bin/json", line 4, in <module> \ data = json.loads(sys.stdin.read().decode('utf-8')) \ File "/opt/python27/lib/python2.7/json/__init__.py", line 310, in loads \ return _default_decoder.decode(s) \ File "/opt/python27/lib/python2.7/json/decoder.py", line 346, in decode \ obj, end
12:12:19 <shachaf> Apparently it's a Japanese computer game.
12:12:21 <Fiora> @google wikipedia Ni no Kuni
12:12:23 <lambdabot> http://en.wikipedia.org/wiki/Ni_no_Kuni
12:12:23 <lambdabot> Title: Ni no Kuni - Wikipedia, the free encyclopedia
12:12:43 <Fiora> it's a game by Level 5 that just came out in US
12:12:49 <shachaf> Should I read _Death Note_, speaking of Japenese things?
12:12:50 <oerjan> `run sed -i 's/pasta/"pasta|spaghetti|macaroni|maccheroni|ravioli|fusilli|tortellini|noodle|tagliatelle"/' bin/pastaquote
12:12:53 <HackEgo> No output.
12:12:54 <shachaf> My sister said I should read it.
12:12:55 <Fiora> it's kind of what you'd get if Dragon Quest and Studio Ghibli had babies
12:12:59 <oerjan> `pastaquote
12:13:01 <HackEgo> No output.
12:13:08 <Fiora> ummm Death Note is pretty good, I've only seen the anime though
12:13:16 <shachaf> oerjan: That's some serious spaghetti code.
12:13:18 <Fiora> I haven't heard anyone say the manga was /worse/ though, so :p
12:13:22 <shachaf> I ordered it, but Japanese is hard.
12:13:29 <oerjan> `quote pasta|spaghetti|macaroni|maccheroni|ravioli|fusilli|tortellini|noodle|tagliatelle
12:13:31 <HackEgo> No output.
12:13:31 <shachaf> So I haven't read beyond the first page.
12:13:33 <Fiora> gosh, it's translated :P
12:13:42 <Fiora> unless you're doing this as language learning exercise
12:13:43 <shachaf> That would be, like, cheating.
12:13:56 <Fiora> for that you might want to start with something for a younger audience, like some shonen that has furigana
12:14:04 <shachaf> Death Note has furigana.
12:14:09 <Fiora> wait, it does O_O
12:14:10 <Fiora> huh
12:14:18 <oerjan> `quote oerjan|shachaf
12:14:19 <HackEgo> 7) <oerjan> what, you mean that wasn't your real name? <Warrigal> Gosh, I guess it is. I never realized that. \ 16) <fungot> oerjan: are you a man, if there weren't evil in this kingdom to you! you shall find bekkler! executing program. please let me go... put me out! he's really a tricycle! pass him! \ 19) <oerjan> In an alternate universe, ehird
12:14:24 <Fiora> then that should work !
12:14:26 <shachaf> Are you able of reading Japanese?
12:14:42 <Fiora> not even close
12:14:42 <oerjan> shachaf: something tells me we don't discuss pasta much here
12:14:44 <Jafet> I don't think I would read the first page of shonen.
12:15:02 <shachaf> @quote pasta
12:15:02 <lambdabot> lambdabot says: < donri> @where hpaste-dns < lambdabot> I know nothing about hpasta-dns.
12:15:12 <shachaf> @where hpaste-dns
12:15:13 <lambdabot> I know nothing about hpasta-dns.
12:15:16 <shachaf> FOUL!
12:15:18 <shachaf> @quote pasta
12:15:19 <lambdabot> sebazzz says: <elpolilla> y venden bulks y esas mierdas <sebazzz> bulks llenos de pastabase
12:15:22 <shachaf> @quote pasta
12:15:22 <lambdabot> lambdabot says: < donri> @where hpaste-dns < lambdabot> I know nothing about hpasta-dns.
12:15:23 <Fiora> the most I know is roughly how to read kana, beyond that I'm pretty clueless
12:15:34 <shachaf> I have you beat!
12:15:46 <shachaf> I only know the hiragana, sort of.
12:15:52 <shachaf> Not even the katakana.
12:16:10 <oerjan> shachaf: your sister is just trying to get away from the curse she got by reading Death Note by passing it on to you. hth.
12:16:12 <shachaf> And I don't even really know those, because it was a while ago.
12:16:29 <shachaf> oerjan: It's OK, I'll just pass it on to Fiora.
12:16:32 <shachaf> And/or Bike.
12:16:37 <shachaf> They're the same person, I think.
12:16:49 <Jafet> I wonder if the death note book is machine printable
12:17:34 <Fiora> I only sort of know the katakana, I still need a reference to check things
12:18:06 <Fiora> basically I know just enough japanese to feel completely clueless
12:18:24 <shachaf> I manage to feel completely clueless while knowing even less Japanese.
12:18:36 <Jafet> You should try to forget a little of it, then.
12:18:37 <shachaf> I guess it's just a matter of natural talent?
12:24:29 -!- oerjan has set topic: FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE | Necessity of inplantation of microchips every day is a must have to even be conssidered | http://codu.org/logs/_esoteric/.
12:25:04 <oerjan> (the misspelling is intentional, see log)
12:26:03 <shachaf> Which misspelling is intentional?
12:26:08 <shachaf> Is the other one unintentional?
12:26:29 <oerjan> oh that one was already in the topic.
12:26:30 <Deewiant> Well they're both based on something that came before.
12:26:58 <oerjan> i guess that just makes it fit together better
12:31:39 <Phantom_Hoover> <Fiora> basically I know just enough japanese to feel completely clueless
12:32:21 <Phantom_Hoover> i know just enough japanese to know that the japanese consider "english word said in the most racist japanese accent" the normal way of doing loanwords
12:32:45 <Fiora> not really, people doing racist interpretations have no idea how kana work <.<
12:33:21 <Fiora> it's the same way we do loanwords, we write it in our alphabet and sound it out terribly
12:33:35 <Phantom_Hoover> i wonder what racist english accents sound like
12:35:23 <Fiora> http://actualfacebookgraphsearches.tumblr.com/ ... oh wow. this exists
12:37:48 <shachaf> Everything exists.
12:37:53 <Phantom_Hoover> http://actualfacebookgraphsearches.tumblr.com/post/41233537916/people-who-like-english-defence-league-and-curry
12:38:06 <Phantom_Hoover> this reminds me of the not the 9 o'clock news tory conference sketch
12:40:33 <Phantom_Hoover> Oh, it's my Tom Scott.
12:40:36 <Phantom_Hoover> *by
12:40:38 <Phantom_Hoover> Figures.
12:41:14 <shachaf> Is it true that everything exists?
12:41:40 <shachaf> Would you say: There are unicorns, but no existent unicorns? Or would you say: There are no unicorns?
12:41:59 <shachaf> (This question was raised by Raymond Smullyan, who attributed it to some other philosopher person.)
12:45:20 -!- hagb4rd has joined.
12:56:06 -!- noam_ has joined.
13:06:17 -!- hagb4rd has quit (Ping timeout: 245 seconds).
13:09:50 <oerjan> `addquote <evincar> okay so like <evincar> do <fizzie> Or do not? <evincar> no no <evincar> do <evincar> There is no do not.
13:09:53 <HackEgo> 929) <evincar> okay so like <evincar> do <fizzie> Or do not? <evincar> no no <evincar> do <evincar> There is no do not.
13:22:55 <oerjan> <fizzie> "Evira" is the Finnish Food Safety Authority ("Elintarviketurvallisuusvirasto"). <-- obviously fake, there are no umlauts
13:24:06 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
13:26:54 -!- Phantom_Hoover has joined.
13:29:35 <quintopia> "viketurvall" is obviously "food" due to its striking resemblance to the english "victual"
13:30:43 <oerjan> impressive skill at missing the root boundaries, quintopia
13:31:32 <quintopia> oerjan: i figured i would. break it up for me
13:32:19 -!- ais523 has quit (Ping timeout: 248 seconds).
13:32:32 <fizzie> (Elin|tarvike)|turvallisuus|virasto.
13:32:38 <Phantom_Hoover> well see it's derived from 'keturv'
13:32:51 <Phantom_Hoover> which is 'vrutek' backwards
13:33:10 <fizzie> Finnish involves a lot of "turn it backwards" style derivation, yes.
13:34:16 <quintopia> finnish sounds like the worst
13:34:46 <Phantom_Hoover> vrutek is of course derived from the croatian supermarket chain
13:35:55 <oerjan> quintopia: finnish words basically never end in a consonant combination, and i don't think a single -r is appropriate either.
13:36:22 -!- Arc_Koen has left.
13:36:28 -!- Arc_Koen has joined.
13:36:33 <oerjan> so i can see it was wrong, although not so much where it _should_ split.
13:37:17 <oerjan> i think -n and -s are the main consonants that _can_ occur at the end of words.
13:37:55 <Phantom_Hoover> reversing a word and appending -all is as we all know the finnish version of the irth form
13:37:56 <oerjan> (possibly only)
13:38:02 <quintopia> oerjan: lets just make shit up and pretend its finnish
13:38:45 <oerjan> quintopia: well if you had said "keturvalli", say, i wouldn't have been sure whether you were right or not.
13:39:00 -!- carado has joined.
13:39:44 <quintopia> oerjan: but that would have left "suus"
13:40:14 <quintopia> since we can guess "virasto" from the fact it is abbv'd "evira"
13:40:24 <oerjan> yes, but i am not sure that "suus" isn't a word
13:40:45 <fizzie> oerjan: They're certainly the most likely, but it's not a strict rule; I mean, it's a language, all rules have exceptions. (E.g. askel 'a step' ends in l.)
13:40:53 <quintopia> it doesnt look very wordlike. i t only has four letters!
13:41:23 <oerjan> well it would be a pronoun or something...
13:42:00 <quintopia> in the name of an organization?
13:42:26 <fizzie> And there are a lot of words that end in "-tar" describing female people.
13:42:30 <quintopia> organizations dont use words under 3 syllables silly
13:42:50 <fizzie> (Näyttelijätär 'actress', and so on.)
13:43:02 <Phantom_Hoover> what's the real finnish irth form
13:43:32 <oerjan> fizzie: darn don't go ruining all my rules here
13:43:47 <oerjan> what's "irth"
13:44:20 <Phantom_Hoover> sorry, i explainirth these days
13:44:39 <Phantom_Hoover> you damn scandinavians come into our channel and can't even be bothered to learn our language
13:44:41 <Phantom_Hoover> except oklopol
13:44:52 <fizzie> oerjan: http://sprunge.us/UDJX though that wordlist has a lot of direct loanwords and things like that.
13:45:15 <fizzie> oerjan: (And probably most of the 't's are plurals, it has some amount of inflected variants.)
13:46:06 <Arc_Koen> are you guys currently in the process of learning your own language?
13:46:30 <Phantom_Hoover> hahahaha
13:46:32 <oerjan> neida
13:46:41 <Phantom_Hoover> i love the bbc continuity announcers
13:47:29 <Phantom_Hoover> farscape got cancelled so abruptly they didn't even have time to get rid of the twist and the "to be continued" in the final episode
13:47:55 <Phantom_Hoover> and then the announcer says "despite what it says on the tin that was the last episode of farscape"
13:48:41 <quintopia> it was continued though
13:48:45 <Phantom_Hoover> sadly it's much worse without the deadpan, bored bbc continuity announcement voice
13:48:47 <quintopia> the peacekeeper wars finished it
13:48:57 <Phantom_Hoover> quintopia, yes, but not when that announcement was made!
13:49:31 <quintopia> i never heard the announcement when i watched it
13:49:37 <oerjan> do they have a continuum of announcers
13:49:39 <quintopia> the version i watched was unmolested by bbc
13:50:05 <Phantom_Hoover> 'molested'
13:50:08 <Phantom_Hoover> what are you talking about
13:50:42 <Phantom_Hoover> bbc continuity announcements are a gift!
13:55:02 <Phantom_Hoover> (also braca: best toady ever?)
14:00:49 -!- quintopia has quit (Ping timeout: 264 seconds).
14:11:02 -!- quintopia has joined.
14:11:54 -!- sivoais has joined.
14:22:33 -!- ogrom has quit (Quit: Left).
14:28:03 -!- ejnahc has left ("InklChat :: http://barosl.com/inklchat/").
14:36:43 -!- boily has joined.
14:38:03 -!- Taneb has joined.
14:53:28 -!- oerjan has quit (Quit: leaving).
14:58:25 -!- FreeFull has joined.
15:06:16 <quintopia> how do you say things here so they dont go in the public log
15:10:05 <fizzie> I think we had a discussion about that.
15:10:11 <fizzie> I suggested something XML-based, IIRC.
15:10:30 <Taneb> Kick glogbot?
15:11:31 <fizzie> <span freenode:logging="disable">I sure hope this comment was not logged.</span>
15:11:33 <fizzie> That.
15:11:46 <fizzie> Sadly, I don't think it works.
15:12:06 <fizzie> (I know it's part of freenode guidelines to have a way of doing it.)
15:12:34 <elliott> quintopia: What do you want to say?
15:13:58 <quintopia> elliott: nothing now. i just wanted to know how it was done.
15:14:12 <Arc_Koen> ok guys
15:14:17 <elliott> quintopia: it's not
15:14:36 <Arc_Koen> I just created a quick mutiplayer game based on stratego and I need 2 or 3 people to test it!
15:15:59 <fizzie> elliott: I think e's going to report the channel to THE AUTHORITIES now that you've admitted that.
15:16:41 -!- ais523 has joined.
15:16:50 <elliott> is ais523 the authorirtiteis
15:17:01 <elliott> authoritites
15:17:11 <fizzie> FREENODE POLICE is the authoritities.
15:17:12 <Phantom_Hoover> authorititis
15:17:28 <Arc_Koen> authori titties
15:19:22 <quintopia> Arc_Koen: how do you make a quick multiplayer game? was the networking that easy to hash out?
15:19:35 <boily> Phantom_Hoover: authorititis sounds awful, in the same line as teleportitis.
15:19:57 <Arc_Koen> quintopia: for some values of quick
15:19:58 <Phantom_Hoover> you keep involuntarily making laws
15:20:10 <Arc_Koen> also it's not a software or a program or anything, if that was your question
15:20:38 <quintopia> oh
15:20:42 <quintopia> tabletop?
15:21:17 <quintopia> this lw conversation is really quite interesting
15:22:04 <Arc_Koen> the only thing we need is a place to chat (like emails or irc) and also something like an MD5 hash to prevent players from cheating (that is, you have to chose a secret setup at the beginning of the game, and well it'd be good to be able to check at the end that the players sticked to the setup they chosed)
15:22:11 <Arc_Koen> oops, brb
15:24:40 <quintopia> Arc_Koen: the hash of the initial setup should be done with a salt which is produced at the end, of course, so everyone can go back and check everyone else
15:36:44 <Arc_Koen> quintopia: indeed
16:19:42 <Deewiant> http://img.pr0gramm.com/2013/01/5e59e.png wow
16:20:28 <Taneb> Wow indeed
16:21:02 <elliott> haha
16:28:03 <kmc> haha
16:28:39 <Phantom_Hoover> so i presume bert spent the last 7 years reading tbw general questions
16:29:39 <c00kiemon5ter> found the link! http://board.flashkit.com/board/showthread.php?13607-PLeas-eHElp-me-on-my-Computer-Game
16:29:51 <Phantom_Hoover> is 'yesterday' real life yesterday
16:29:56 <c00kiemon5ter> yes
16:30:17 <c00kiemon5ter> it has been reddit'd
16:31:52 <kmc> shachaf: wow, that essay :(
16:32:11 <kmc> nerds don't know how to talk to women! and nerds hate anyone who tolerates sports!
16:32:27 <kmc> if you hire women or people who talk to women or anyone who tolerates sports, it will sink your startup!
16:34:31 <elliott> 08:05:16: <ttmrichter> shachaf: I already know Haskell.
16:34:32 <elliott> 08:05:24: <shachaf> ttmrichter: Then you should learn lens.
16:34:32 <elliott> 08:05:26: <Bike> Isn't that transliterated as "Sasha"?
16:34:32 <elliott> 08:05:27: <ttmrichter> I even have a credit in Real World Haskell. :)
16:34:32 <elliott> 08:05:45: <shachaf> ttmrichter: I recognize your nick but I'm not sure where from.
16:34:35 <elliott> 08:05:56: <ttmrichter> From a recent anti-Haskell rant, probably. :D
16:34:37 <elliott> this is a good start
16:35:03 <kmc> shachaf: how did you find that
16:36:03 <Taneb> (is kmc imagining a shachaf, or am I imagining no shachaf)
16:36:15 <elliott> shachaf: Hey whats up???
16:36:17 <elliott> shachaf: Wow really
16:36:20 <elliott> shachaf: thjats kool
16:36:30 <kmc> i'm respnoding to something shachaf said a while back
16:36:38 <elliott> kmc: yo do you know the location of this anti-haskell rant
16:36:39 <elliott> i gotta have my yuks
16:36:46 <elliott> OH
16:36:49 <elliott> IT'S http://www.txt.io/t-2kv5h
16:36:53 <kmc> elliott: no i try to avoid that kind of shit
16:36:57 <elliott> OH WOW i mocked that when it got on reddit i think
16:37:01 <elliott> w ehad..... a cleebruty
16:37:09 <elliott> amazing i am suddenly A+ super into this log
16:37:13 <elliott> kmc: well that's what you have me for right
16:38:05 -!- Bike has joined.
16:39:39 <elliott> wtf there wasn't even a flamewar
16:39:41 <elliott> he just left
16:39:42 <elliott> jeez
16:42:45 <elliott> kmc: haha wow I hate you for making me find out what you were referring to in the logs
16:43:08 <kmc> glad to be of service
16:43:56 <elliott> "PayPal was a place where the younger engineers could and would sometimes wrestle with each other on the floor to solve disputes!"
16:44:00 <elliott> kmc: are we sure this thing isn't satire
16:44:01 <Taneb> Note to self: make sure a library works before uploading it to Haskell
16:44:06 <kmc> i have no idea
16:44:09 <kmc> poe's law etc
16:44:47 <kmc> most things i hear about 'startup culture' set off the poe's law detector
16:48:41 <boily> we're pooling money to buy a rubber chicken head, to accompany the rubber horse head we already have.
16:49:06 <elliott> uploading it to Haskell
16:49:14 <Taneb> Uploading it to Haskell
16:49:35 <Taneb> (there are about 5 broken versions of family-tree on Hackage)
16:49:57 <kmc> wow the gender ratio of Stanford CS is really really bad
16:50:01 <kmc> like 8% female
16:50:19 <Taneb> Better than this channel
16:50:44 <kmc> compared to ~30% at MIT
16:50:47 <Bike> oh burn
16:51:20 <kmc> even Caltech is better than that I think
16:51:53 <kmc> we had only like 25 CS undergrads graduate per year, but at least two of them were women
16:52:56 <kmc> no wonder the paypal people "don't know how to talk to women"
16:53:41 <Taneb> I'm pretty sure it involves opening and closing your mouth in unusual ways to make sounds
16:53:46 <Taneb> Such as "hello"
16:55:07 <Taneb> I wonder if Canonical is considering rolling releases for Ubuntu because they're running out of letters
16:55:19 <kmc> i think they should go back around the alphabet with fungi instead of animals
16:55:36 <elliott> kmc: i like how you managed to turn this into mit being better than caltech
16:55:43 <elliott> very......... alpha male
16:55:46 <elliott> you should go work at paypal imo
16:55:50 <pikhq> Adorable Amanita muscaria
16:56:12 <kmc> elliott: wanna wrassle
16:56:24 <kmc> beautiful bolete
16:56:27 <kmc> charming chanterelle
16:56:30 <elliott> kmc: um isn't that a bit... gay
16:56:35 <elliott> i'm a programmer, you know
16:56:48 <kmc> elliott: it's not gay if the balls don't touch [p < 0.05]
16:57:07 <pikhq> In my experience it's not gay even if the balls touch.
16:57:17 <pikhq> (sample size 1)
16:57:31 <kmc> well you need a professional grade phased array gaydar to make that determination
16:57:35 <kmc> and those cost thousands of dollars
16:57:54 <pikhq> They're standard equipment for gays and bisexuals.
16:58:19 <Taneb> I'm a biromatic asexual, can I get one?
16:58:27 <pikhq> Sure, why not.
16:58:30 <pikhq> That's close enough.
16:58:38 <kmc> i must have missed the memo
16:59:01 <pikhq> Now, just walk through the hall of gloryholes and recieve yours.
16:59:12 <pikhq> (the hall is so we have a handy test case)
16:59:32 <Sgeo> I feel like an awful person
16:59:37 <elliott> me too
16:59:44 <Sgeo> There's a thing in Newspeak that I fixed and never released and now I lost it
16:59:47 <kmc> imo you're both fine people
16:59:47 <Bike> did your balls touch, sgeo?
16:59:50 <Bike> oh.
17:02:48 <Sgeo> Bike,
17:02:50 <Sgeo> "The VM object supports the set of operations traditionally implemented as
17:02:50 <Sgeo> primitives in Smalltalk. There is no syntax for a primitive call in Newspeak. A
17:02:50 <Sgeo> primitive call is a message send to the VM object."
17:03:30 <Bike> i knew it!
17:31:16 <Sgeo> I keep hearing about BETA, but haven't actually looked at it
17:31:23 <Sgeo> (or gbeta which I gather is a successor)
17:32:26 <Sgeo> " The binary for Windows is not currently available because of the large number of recent changes, but it will become available again."
17:32:33 <Sgeo> Looking at the news, I think gbeta's dead
17:32:38 <Sgeo> Hasn't been touched since 2011
17:35:56 <Sgeo> "The current gbeta implementation is more for the (academic) geek who is interested in programming language design and type systems, and less for the no-nonsense practical programmer who wants to write large mission-critical applications."
17:36:17 <Sgeo> I keep looking for something that works well with the latter when at heart I'm really the former
17:36:27 <Sgeo> I think that's why I'm always on a language hunt
17:36:59 -!- augur has quit (Remote host closed the connection).
18:08:44 <kmc> yeah
18:08:46 <kmc> a common predicament
18:09:46 -!- augur has joined.
18:29:21 <oklopol> -r is okay
18:29:22 <oklopol> but it's rare
18:30:55 <oklopol> also apparently this was talked ages ago and not a second ago
18:30:59 -!- epicmonkey has quit (Ping timeout: 248 seconds).
18:31:21 <fizzie> We've had "really bad" ratios at least in the new-students statistics for CS some years.
18:31:26 <fizzie> I don't know how much it's overall.
18:31:30 <oklopol> i read upward for 5 minutes, took a sauna and continued the discussion i saw.
18:31:37 <fizzie> It's certainly less than 30%, but might be above 8%.
18:34:22 <Sgeo> -r ?
18:34:27 <elliott> oklopol: remember that time you continued a conversation in here exactly however many years later
18:34:30 <elliott> after having said you would
18:34:34 <elliott> that was so great
18:35:18 <kmc> gender ratio seems more important the more i think about it
18:35:47 <Sgeo> What's -r ?
18:36:04 <kmc> not just to have more women in the field, but also so that men in the field don't see women as some strange mythological species
18:36:08 <oklopol> the best part was that i ran home from work because i thought the moment was in 5 minutes, but i'd mixed up time difference between logs.
18:36:25 <kmc> i wish i had gone to a school with a less skewed ratio, i think i would be a better person
18:36:51 <kmc> oklopol: well done
18:36:56 <oklopol> i had some help
18:42:23 <olsner> elliott: when was that?
18:42:34 <elliott> olsner: ages ago
18:42:40 <elliott> like a year?
18:44:18 <olsner> ok
18:54:58 <elliott> kmc: do you know how to tell gcc to use ld.gold as the linker
18:55:18 <kmc> no
18:55:22 <elliott> damn
18:55:24 <elliott> pikhq: how about you
18:56:24 <olsner> -fuse-ld=gold or something
18:57:26 <nortti> anyone here knows what is up with autoconfig generated config script trying to test if compiler works by feeding .h files to it and breaking?
18:58:40 <nortti> #autotools has not answered in 48h
18:59:37 <ais523> nortti: what's the error message?
19:00:08 <olsner> you can always just blame autoconfig and give up
19:00:08 <nortti> checking whether the C compiler works... no
19:00:08 <nortti> configure: error: in `/home/juhani/src/mtools-4.0.18':
19:00:08 <nortti> configure: error: C compiler cannot create executables
19:00:26 <ais523> nortti: what about in config.log? that gives more detailed errors
19:00:39 <nortti> I can paste it if you want
19:00:47 <nortti> err. to pastebin
19:01:29 <nortti> http://paste.dy.fi/TLo/plain
19:02:19 <ais523> nortti: oh wow, it seems to be generating the test C file incorrectly
19:02:24 <nortti> yeah
19:02:25 <Taneb> > join fmap (>>) suc 0
19:02:27 <lambdabot> Not in scope: `suc'
19:02:27 <lambdabot> Perhaps you meant one of these:
19:02:27 <lambdabot> `sum' (imported fro...
19:02:28 <Taneb> > join fmap (>>) succ 0
19:02:30 <lambdabot> Occurs check: cannot construct the infinite type: a0 = a0 -> b0
19:02:35 <Taneb> Fooey
19:02:45 <Taneb> > ap fmap (>>) succ 0
19:02:46 <lambdabot> Occurs check: cannot construct the infinite type: b0 = b0 -> b1
19:03:07 <Taneb> Aaah, (>>) doesn't work like that
19:03:10 <Taneb> > ap fmap seq succ 0
19:03:12 <lambdabot> 1
19:03:12 <nortti> ais523: and it does that on both my slitaz 3 install AND lubuntu 12.10
19:03:22 <ais523> nortti: yeah, sounds like the config script that's broken
19:03:28 <Taneb> > ap fmap seq "hello"
19:03:29 <lambdabot> Couldn't match expected type `a0 -> b0'
19:03:29 <lambdabot> with actual type `[GHC...
19:03:37 <ais523> it'll clearly screw up consistently, given the contents of config.log
19:03:40 <nortti> ais523: but that happens with _every_ file
19:04:05 <nortti> every ./configure fails the exact same way
19:04:18 <ais523> then autoconf is broken on the system that's generating them
19:04:25 <ais523> try with C-INTERCAL's configure, if you want one that's known to work
19:04:53 -!- monqy has joined.
19:05:02 <ais523> elliott: I just grepped the entire info pages for gcc for "linker", it seems the only way to do it is to change the spec files
19:05:39 <ais523> there's an option -specs= to use a substitute specs file
19:05:41 <elliott> mmm
19:05:44 <ais523> and you could specify one with gold as the linker
19:05:45 <elliott> -fuse-linker-plugin seems to wokr
19:05:47 <elliott> work
19:06:12 <ais523> I think the intended method is to mention gold while building gcc, and have it generate the appropriate specs file automatically
19:06:16 <nortti> ais523: http://paste.dy.fi/TOO/plain
19:06:50 <ais523> oh wow
19:06:51 <ais523> hmm
19:08:02 <ais523> nortti: was a file conftest.c left behind?
19:08:07 <ais523> if so, what are its contents/
19:08:28 <nortti> no
19:10:55 <ais523> does config.status exist?
19:11:10 <nortti> no
19:12:40 <ais523> wow, pretty much all the autoconf-related scripts have a -d option for leaving files like conftest.c behind
19:12:44 <ais523> apart from the one we actually care about :(
19:14:14 <ais523> I'm not getting the error you are, so it's definitely something up with your machine's configuration
19:14:53 <nortti> also to add insult to the injury it stopped working on both machine the exact same day and I don't think I even touched the lubuntu machine that day
19:15:48 <ais523> I'd love it if we could somehow grab conftest.c before it was deleted
19:16:16 <nortti> I'll try something insane
19:18:18 <nortti> it worked
19:18:46 <ais523> :)
19:18:49 <nortti> http://paste.dy.fi/IzT/plain
19:19:00 <ais523> what shell are you using?
19:19:04 <nortti> mksh
19:19:16 <ais523> try running it in dash or bash
19:19:43 <nortti> busybox ash and bash give the same error
19:19:49 <nortti> and so does dash
19:20:15 <ais523> hmm
19:20:21 <ais523> can you paste the configure script itself?
19:22:55 <nortti> do you know any pastebins that can hold 200kB?
19:23:11 <nortti> paste.dy.fi only works up to 64kB
19:23:12 <Sgeo> "Take C for instance. The widespread adoption is mainly due to its simplicity of syntax. With most of the recent languages adopting an interpreter based approach, why hasnt lisp or smalltalk made a comeback? Because they are complex. Complex to write, complex to maintain and complex to read. "
19:23:18 <ais523> nortti: can you paste the first 3000 lines or so?
19:23:26 <ais523> the rest doesn't matter because it's already crashed by that point
19:23:54 <nortti> http://paste.dy.fi/Ig8/plain
19:25:07 <kmc> http://www.kogan.com/au/blog/new-internet-explorer-7-tax/
19:25:13 <ais523> oh, it's the C-INTERCAL config script, I have that one already :) (although thanks for the paste anyway to make sure the version matches)
19:25:44 <ais523> oh, I actually need the first 4000 or so lines, error's on line 3500
19:25:47 <Sgeo> This is a gold mine http://www.java.net/pub/pq/196
19:26:29 <ais523> Sgeo: you mean the comments?
19:26:35 <Sgeo> yes
19:26:46 <nortti> ais523: I'll set up a web server
19:28:43 <ais523> yeah, your version of the script seems different from mine
19:30:42 <nortti> 84.248.99.165
19:30:52 <ais523> what page? default page?
19:30:52 <nortti> it is hosted with netcat
19:30:58 <ais523> oh, OK
19:30:58 <nortti> any page
19:31:01 <ais523> not a web server, then
19:31:04 <ais523> a netcat server
19:31:23 <ais523> what port?
19:31:23 <nortti> couldn't be arsed to compile my server
19:31:26 <nortti> 80
19:31:33 <ais523> it's hanging
19:31:37 <ais523> do I actually need to send an HTTP request?
19:31:42 <nortti> try again
19:31:43 <ais523> ah, no
19:31:45 <ais523> it just waited for a bit
19:33:49 <Sgeo> Ok, Bracha's paper on mirrors is formatted weirdly. There's text that's part of the paper, and right where I'm expecting more, there's copyright-related stuff
19:33:49 <Sgeo> http://bracha.org/mirrors.pdf
19:33:50 <Sgeo> bluh
19:36:40 <ais523> well, line 3414 should be putting a main in there, but somehow it isn't
19:36:48 <nortti> yeah
19:37:24 <nortti> wait...
19:37:38 <nortti> and now I feel stupid as hell
19:37:41 <ais523> nortti: could you start tracing at line 3410?
19:37:46 <ais523> oh, have you figured out what was wrong?
19:38:04 <kmc> Sgeo: a gold mine of what?
19:38:17 <Sgeo> humorous fail
19:38:25 <kmc> so, shit
19:38:27 <kmc> a gold mine of shit
19:38:30 <kmc> or a shit mine, for short
19:38:32 <elliott> a shit mine of shit
19:39:11 <Sgeo> Does shit mine mean a mine of shit or that it's shitty at acting like a mine?
19:39:15 <kmc> slant drilling under the outhouse
19:39:18 <nortti> I use this cat implementation: main(a,b)char**b;{if(a>1)while(*++b){open(*b,0);while(read(3,&a,1)>0)write(1,&a,1);close(3);}else while(read(0,&a,1)>0)write(1,&a,1);return 0;}
19:39:49 <nortti> the reason of autoconf failing was a missing feature _in my cat implementation_
19:40:14 <ais523> oh, I don't think autoconf tests if cat is sane
19:40:19 <monqy> can your dumpster computer not run a real cat
19:40:20 <nortti> yeah
19:40:29 -!- zzo38 has joined.
19:40:44 <ais523> if you mentioned you'd rewritten textutils (or is cat coreutils?), I might have guessed what was wrong with the program
19:40:55 <ais523> otherwise, I feel there wasn't sufficient information to solve the problem :)
19:41:01 <kmc> which feature?
19:41:05 <nortti> -
19:41:05 <kmc> cat -v is pretty useful
19:41:07 <kmc> ah
19:41:18 <nortti> kmc: I have catv for that
19:41:28 <nortti> ais523: I actually forgot about that
19:41:44 <nortti> monqy: it can, I just like using my own implementations of unix utils. eating your own dogshit^H^H^H^Hfood
19:41:47 <elliott> `addquote <ais523> if you mentioned you'd rewritten textutils (or is cat coreutils?), I might have guessed what was wrong with the program
19:41:54 <HackEgo> 930) <ais523> if you mentioned you'd rewritten textutils (or is cat coreutils?), I might have guessed what was wrong with the program
19:42:08 <elliott> do I get points if I guessed the problem was nortti's system was deliberately crippled in a way he wasn't revealing like 15 minutes ago
19:42:21 <nortti> elliott: yes
19:42:50 <monqy> 930 quotes? wow
19:42:53 <monqy> `quote 929
19:42:55 <HackEgo> 929) <evincar> okay so like <evincar> do <fizzie> Or do not? <evincar> no no <evincar> do <evincar> There is no do not.
19:43:25 <Sgeo> `welcome insanity wolf
19:43:26 <HackEgo> insanity: wolf: 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.)
19:43:50 <monqy> who're insanity & wolf i dont see them
19:44:31 <Sgeo> Some image macro
19:44:35 <olsner> elliott: only if you told us about it like 15 minutes ago
19:44:46 <monqy> so, shit
19:45:11 <olsner> maybe we should have a voting system on the quotes
19:45:21 <elliott> olsner: telling would spoil it
19:45:23 <elliott> `quote
19:45:24 <elliott> `quote
19:45:24 <elliott> `quote
19:45:24 <elliott> `quote
19:45:25 <HackEgo> 436) <Sgeo> My memory passed <monqy> rest in peace sgeos memory
19:45:25 <HackEgo> 662) <Gregor> pikhq: And of course Rick Perry, saying that there's something wrong with a country where gays can serve in the military but we don't elect a douchebag as president.
19:45:25 <HackEgo> 448) <Taneb> I combined the wholegrain breakfast and chocolatey breakfast for maximum breakfast efficiency
19:45:26 <HackEgo> 141) <cpressey> < ais523> then running repeatedly until you get the right sequence of random numbers < ais523> and just completely ignoring the input <-- some people live their entire lives this way, i reckon
19:45:27 <elliott> `quote
19:45:28 <HackEgo> 80) <fax> oklopol geez what are you doing here <oklokok> ...i don't know :< <oklokok> i actually ate until now, although i guess i also did other things...
19:46:38 <Taneb> They are all good
19:46:39 <boily> `quote `quote
19:46:41 <HackEgo> 320) <cpressey> `quote django <HackEgo> ​352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something <cpressey> thankfully only one \ 321) <monqy> `quote django <HackEgo> ​352) <olsner> django is named after a person? <olsner> thought it would be a giraffe or something \ 407) <cpressey> `quote django
19:47:16 -!- epicmonkey has joined.
19:47:49 <boily> hmm... `quote `quote isn't quite a quote quine.
19:48:04 <monqy> close enough
19:48:10 <Taneb> ^echo ech
19:48:10 <fungot> ech ech
19:48:12 <Taneb> ^echo echo
19:48:13 <fungot> echo echo
19:48:29 <Sgeo> ^echo ^echo
19:48:30 <fungot> ^echo ^echo
19:48:38 <ion> @@ @echo @echo
19:48:38 <lambdabot> echo; msg:IrcMessage {msgServer = "freenode", msgLBName = "lambdabot", msgPrefix = "ion!ion@heh.fi", msgCommand = "PRIVMSG", msgParams = ["#esoteric",":@@ @echo @echo"]} rest:"echo; msg:IrcMessage {
19:48:38 <lambdabot> msgServer = \"freenode\", msgLBName = \"lambdabot\", msgPrefix = \"ion!ion@heh.fi\", msgCommand = \"PRIVMSG\", msgParams = [\"#esoteric\",\":@@ @echo @echo\"]} rest:\"\""
19:48:51 <Sgeo> wat
19:49:00 <elliott> `quote
19:49:00 <elliott> `quote
19:49:01 <elliott> `quote
19:49:01 <elliott> `quote
19:49:01 <elliott> `quote
19:49:01 <HackEgo> 636) * oerjan concludes that unsafeCoerce has no effect on strictness
19:49:01 <HackEgo> 649) <itidus22> if the halting problem was solved, as a placebo.. would it benefit people?
19:49:02 <HackEgo> 394) <Madk> #%%:]__t�# <Madk> do you see that <Madk> that is great progress taking place
19:49:03 <HackEgo> 129) <AnMaster> cpressey, oh go to zzo's website. He is NIH <Phantom_Hoover> AnMaster, really? I was strongly under the impression that zzo was invented here.
19:49:03 <HackEgo> 791) <olsner> when everyone else was busy going "ewwww, comic sans!" I was reading the text and learned everything
19:49:10 <monqy> ^echo echo
19:49:11 <fungot> echo echo
19:49:19 <elliott> monqy: wahta did you DO
19:49:19 <ion> @@ @tell Sgeo @echo @echo @echo @echo @echo
19:49:19 <lambdabot> Consider it noted.
19:49:26 <Sgeo> .
19:49:27 <lambdabot> Sgeo: You have 1 new message. '/msg lambdabot @messages' to read it.
19:49:27 <elliott> those aren't the same at ALL
19:49:34 <monqy> elliott: BechoF
19:49:35 -!- oerjan has joined.
19:49:45 <elliott> monqy: r u a magician........ :'''/
19:49:48 <elliott> `quote
19:49:49 <elliott> `quote
19:49:49 <Sgeo> @messages
19:49:49 <lambdabot> ion said 30s ago: echo; msg:IrcMessage {msgServer = "freenode", msgLBName = "lambdabot", msgPrefix = "ion!ion@heh.fi", msgCommand = "PRIVMSG", msgParams = ["#esoteric",":@@ @tell Sgeo @echo @echo @
19:49:49 <elliott> `quote
19:49:49 <lambdabot> echo @echo @echo"]} rest:"echo; msg:IrcMessage {msgServer = \"freenode\", msgLBName = \"lambdabot\", msgPrefix = \"ion!ion@heh.fi\", msgCommand = \"PRIVMSG\", msgParams = [\"#esoteric\",\":@@ @tell
19:49:49 <lambdabot> Sgeo @echo @echo @echo @echo @echo\"]} rest:\"echo; msg:IrcMessage {msgServer = \\\"freenode\\\", msgLBName = \\\"lambdabot\\\", msgPrefix = \\\"ion!ion@heh.fi\\\", msgCommand = \\\"PRIVMSG\\\",
19:49:49 <lambdabot> msgParams = [\\\"#esoteric\\\",\\\":@@ @tell Sgeo @echo @echo @echo @echo @echo\\\"]} rest:\\\"echo; msg:IrcMessage {msgServer = \\\\\\\"freenode\\\\\\\", msgLBName = \\\\\\\"lambdabot\\\\\\\",
19:49:49 <lambdabot> msgPrefix = \\\\\\\"ion!ion@heh.fi\\\\\\\", msgCommand = \\\\\\\"PRIVMSG\\\\\\\", msgParams = [\\\\\\\"#esoteric\\\\\\\",\\\\\\\":@@ @tell Sgeo @echo @echo @echo @echo @echo\\\\\\\"]} rest:\\\\\\\"
19:49:49 <HackEgo> 816) <Phantom__Hoover> the scene: it is a warm summer's day in scotland, although one obscured by cloud and the fact that it is september
19:49:50 <elliott> `quote
19:49:50 <HackEgo> 314) [on Sgeo's karaoke] <Phantom_Hoover> That is the thing that made me into a gay vampire.
19:49:50 <elliott> `quote
19:49:50 <monqy> elliott: the f kicks in and the b gets canceled
19:49:51 <lambdabot> [3 @more lines]
19:49:51 <HackEgo> 904) <hagb4rd> what is this set? sounds like shakespear <fizzie> Yes, that's what people often say about Chrono Trigger.
19:49:51 <HackEgo> 373) <elliott> oerjan: can you delete that and the meta turing completeness page <elliott> thanks <oerjan> elliott: IN UNIVERSO ALTERNATIVO, OERJAN PAGINAS DELET
19:49:52 <HackEgo> 736) <Edwin Brady> Just seen this comment on reddit: "Parallel programming has been a solved problem for decades." I might have to stop reading the internet.
19:49:55 <Sgeo> fuck
19:49:56 <elliott> monqy: (i know how it works)
19:50:04 <monqy> elliott: oh...................................:''/
19:50:06 <elliott> 816 is good i haven't seen it before
19:50:56 <ais523> 816 is indeed good
19:54:09 <olsner> where does scotland start? I wonder if I've been there
19:54:38 <monqy> good question
19:54:38 <Taneb> olsner, just past Berwick
19:54:53 <Taneb> Just before Jedburgh
19:54:59 <Taneb> Just after Carlisle
19:55:10 <Taneb> Depending on your longitude
19:57:28 <olsner> apparently scotland has a "Devolved government"
19:57:38 <Taneb> Yeah
19:57:47 <Taneb> We shot them with a devolution gun
19:57:53 <Taneb> Hoping they'd turn into dinosaurs
19:57:57 <Taneb> Because dinosaurs are cool
19:58:48 <olsner> turns out I have no idea where I've been so it ended up a bit hard to figure out if any of those places were past Berwick
19:59:00 <Taneb> Where did you go
19:59:05 <Taneb> Did you go to Edinburgh
19:59:12 <Taneb> Or Glasgow
19:59:17 <Taneb> Or Aberdeen
19:59:21 <Taneb> Or Inverness
19:59:32 <Taneb> Or... Dumfries
19:59:41 <Taneb> Or Linlithgow
19:59:47 <Taneb> Or Jedburgh
19:59:48 <olsner> amy pond is from inverness
19:59:59 <Taneb> Inverness is scarily North
20:00:57 <olsner> its about one degree south of here actually
20:01:12 <Taneb> olsner is scarily North
20:01:20 <Taneb> Scarilier North
20:01:37 <olsner> pretty sure I'm south of the southernmost part of Norway
20:01:49 <Taneb> Norway is scarliest North
20:02:31 <olsner> (not counting the norwegian colonies)
20:05:20 <Phantom_Hoover> i may have even been to inverness
20:09:39 -!- augur has quit (Read error: Connection reset by peer).
20:09:54 -!- augur has joined.
20:11:53 -!- c00kiemon5ter has left.
20:11:58 -!- c00kiemon5ter has joined.
20:12:08 <c00kiemon5ter> `seen c00kiemon5ter
20:12:11 <HackEgo> 2013-01-23 20:12:08: <c00kiemon5ter> `seen c00kiemon5ter
20:12:17 <c00kiemon5ter> ah :(
20:12:33 <c00kiemon5ter> `seen augur
20:12:35 <HackEgo> 2013-01-19 07:40:42: <augur> http://decovo.wordpress.com
20:13:02 <monqy> clearly use the raw logs
20:13:36 <elliott> monqy: what would that change
20:14:16 <monqy> tracking for things that dont have <name> in the fancy logs, like joins, quits, and ACTIONs
20:14:18 <boily> Taneb: Inverness is indeed scarily North; about 12° up from montréal.
20:14:31 <Phantom_Hoover> the uk in general is stupidly north
20:14:56 <monqy> alt. make cases for all those??? alt. dont care
20:15:15 <Taneb> boily, Hexham is about as North as Calgary
20:15:34 <Taneb> `? ehird
20:15:36 <HackEgo> ehird is the person who Taneb definitely isn't.
20:15:38 <coppro> hey, I know that place
20:16:13 <elliott> monqy: is it worth tracking joins/parts
20:16:17 <elliott> seems like last message beats last part or whatever
20:16:19 <elliott> actions is a point tho
20:17:34 <Phantom_Hoover> `seen Plazma
20:17:37 <HackEgo> not lately; try `seen Plazma ever
20:17:43 <Phantom_Hoover> `seen Plazma ever
20:17:51 <zzo38> Maybe you should consider PRIVMSG and NOTICE at least, and then perhaps also JOIN, I think may be OK. No use of PART, QUIT, NICK, and so on, I think.
20:18:01 <boily> it looks like for the most part active people here are from far up north in their respective continents (except Fiora who's califoriating). is there at least a single person from the south hemisphere here?
20:18:14 <HackEgo> No output.
20:18:14 <Taneb> `seen itidus*
20:18:15 <olsner> a part can be useful if it includes a witty exit message
20:18:16 <HackEgo> not lately; try `seen itidus* ever
20:18:18 <Taneb> `seen itidus20
20:18:20 <HackEgo> not lately; try `seen itidus20 ever
20:18:22 <Fiora> no Australians?
20:18:30 <Taneb> itidus20 is an Aussie
20:18:38 <Phantom_Hoover> boily, monqy is also from California!
20:18:42 <Fiora> I think most of the australians are busy melting this time of year
20:18:49 <Taneb> I'm /legally/ Australian, but I'm mainly British
20:18:50 <Phantom_Hoover> if you add him to Fiora that takes him as far south as you'd ever really need
20:19:21 <Taneb> Phantom_Hoover is in New Zealand or somewhere ridiculous like that
20:19:21 <boily> a hybrid Taneb × Fiora cultivar?
20:19:34 <Fiora> I'm... I'm not sure what this would be like
20:19:36 <Phantom_Hoover> are we talking about shipping now
20:19:36 <olsner> perhaps we should measure distance from the equator instead, to make it fair for the southhemispherians
20:19:37 <kmc> didn't we have some NZers
20:19:48 <Taneb> `seen mrout
20:19:51 <HackEgo> 2013-01-04 15:29:25: <mrout> don't beta-reduce me, please. it made me dc
20:19:58 <Taneb> He's a kiwi, I think
20:20:00 <Taneb> Maybe
20:20:02 <Taneb> I dunno
20:20:08 <Fiora> what exactly does hybridizing humans do
20:20:14 <Fiora> and what if they're not the the same sex
20:20:28 <Taneb> Fiora, when two people love each other VERY MUCH
20:20:34 <Taneb> And wish REALLY HARD
20:20:44 <Taneb> And do some other stuff EQUALLY HARD
20:21:05 <Taneb> Sometimes they end up with a hybridization of themselves
20:21:15 * kmc currently at 42.364540°N
20:21:15 <Fiora> but that takes 9 months and is all kinds of awful :<
20:21:28 <Fiora> can't there be a better way? like ectobiology?
20:21:54 <Taneb> SBurb doesn't come out until next year
20:22:11 <Taneb> Late next year, I believe
20:22:14 <Phantom_Hoover> and anyway only Taneb and his friends have tickets
20:22:55 <Taneb> Phantom_Hoover, how did that happen again?
20:23:01 <Phantom_Hoover> Taneb must carry the torch of esolangs alone into the next universe
20:23:10 <Taneb> And besides, I count at least 3 of you as friends
20:23:14 <Taneb> Well
20:23:21 <Taneb> I count at least 2 of you as friends
20:23:40 <Phantom_Hoover> oh no who was unfriended between messages
20:23:40 -!- Taneb has changed nick to Taneb|Away.
20:23:45 <shachaf> kmc: Did you figure out whether it was satire?
20:23:48 <fizzie> Extrapolating from that, it's 0 in just few more minutes.
20:23:55 <kmc> no, didn't look closely enough
20:23:58 <shachaf> All I found was a link on the Internet to it.
20:24:22 <shachaf> As far as I can tell the class existed at Stanford, at least.
20:25:54 <Sgeo> Self has mirrors!
20:25:58 <Sgeo> Why is Self dead?
20:25:59 -!- Vorpal_ has joined.
20:26:22 <Phantom_Hoover> Sgeo finally cracks
20:26:23 <Phantom_Hoover> again
20:29:32 -!- Vorpal has quit (Ping timeout: 256 seconds).
20:30:53 <oerjan> <Taneb> Hoping they'd turn into dinosaurs <-- nah humans aren't descended from dinosaurs. although if you hit any stray birds...
20:31:09 <Sgeo> Why would you want more than a machine language?
20:31:53 <Sgeo> (Note: Not intended as a serious question. Just saw the von Nemann quote)
20:32:32 <zzo38> What von Nemann quote?
20:32:52 -!- augur has quit (Ping timeout: 240 seconds).
20:33:05 <Sgeo> Supposedly he was being shown FORTRAN and said that
20:33:10 <Sgeo> "Why would you want more than a machine language?"
20:33:21 -!- Taneb|Away has changed nick to Taneb.
20:33:29 <Taneb> I'm back and I hate you all
20:33:31 <zzo38> One reason is that the machine language does not work on the other computer.
20:33:43 <zzo38> (except by emulation, but that would be slow)
20:34:48 <kmc> or dynamic binary translation, which can run faster than native
20:35:42 <zzo38> Would dynamic binary translation work? I thought there might be some cases causing problems, unless it is Restricted Harvard
20:35:51 <Phantom_Hoover> Taneb, but whoa re youre friends
20:36:23 <kmc> zzo38: qemu works by binary translation, as do vmware and virtualbox (sometimes)
20:36:55 <Gregor> Sometimes = when they're not working.
20:37:12 <kmc> how do you mean?
20:37:19 <Taneb> Phantom_Hoover, apparently chocolate desserts accelerate the process
20:37:24 <kmc> what i mean is, these programs also support hardware-assisted virtualization these days
20:37:38 <Phantom_Hoover> great, Taneb's lost it too
20:37:50 <Gregor> kmc: And prefer it in all cases. So they only use binary translation if something is wrong.
20:38:12 <kmc> sure but it still works
20:38:26 <elliott> something is wrong such as not having virtualisation :(
20:38:41 <kmc> OpenSSL will use RDRAND on Ivy Bridge processors but I wouldn't say that OpenSSL on any other processor is "not working"
20:38:54 <kmc> except that OpenSSL is shit but anyway
20:38:59 <Gregor> My argument was only with your "sometimes" ;)
20:39:19 <zzo38> I wouldn't think binary translation can always work in all cases unless you also have something else to keep track of anything that changes and to retranslate.
20:39:33 <kmc> yes you have to do that
20:39:41 <Fiora> yup, you can do that
20:39:47 <kmc> binary translation can't work unless you do all the things necessary to make it work
20:40:13 <Fiora> you can keep maps of entry points, watch when something tries to write to the code page, fun things like that
20:40:18 <zzo38> But will it slow down if you do that?
20:40:21 <kmc> ksplice is easily confused inside virtualbox because virtualbox did a bad job of hiding changing code pages from the guest
20:40:26 <kmc> but vmware binary translation did a better job
20:40:29 <kmc> zzo38: yes
20:40:35 <kmc> but not necessarily dramatically
20:40:55 <kmc> i remember using VMWare on an Athlon XP in like 2003 and it was reasonably fast
20:41:06 <kmc> i could run Windows inside Linux well enough to play some games
20:41:12 <kmc> though they didn't have 3D accel passthrough yet
20:41:37 <zzo38> Were they the games without the 3D, then?
20:41:37 <kmc> binary translation can also make code much /faster/ because the binary translator can act as an optimizing JIT
20:42:07 <kmc> it can compile only the hot paths of code, making assumptions that don't hold in general, and then call back to the interpreter when those assumptions are violated
20:42:18 <kmc> zzo38: software 3D
20:42:32 <Fiora> optimizing JITs can be tricky though if the source is on a machine with flags up the wazoo though
20:42:39 <Fiora> .... like x86 <.<
20:42:40 <Sgeo> Wait virtualization stuff does 3d passthrough now?
20:42:50 <kmc> yes I think for a long time
20:43:05 <Sgeo> I think last time I really played with virtualization was in 2007 or so
20:43:11 <Sgeo> On a computer from 2000
20:43:24 <Sgeo> Because I never have good computers
20:43:27 <zzo38> Can anyone make binary translation into a FPGA code?
20:43:31 <Sgeo> If I have a computer, it's safe to assume it sucks
20:46:09 <Fiora> there's paravirtualization stuff where it just dedicates a graphics card to the VM, right?
20:46:54 -!- augur has joined.
20:47:04 <oerjan> <CTCP>SECRET message test<CTCP>
20:47:26 <olsner> oerjan: SECRET message fail?
20:47:53 <oerjan> hm glogbot logs notices now, so yes
20:48:25 <zzo38> I think glogbot logs everything it receives (maybe with a few exceptions).
20:48:32 <olsner> Fiora: with an IOMMU I think you can do that without it being paravirtualization
20:48:37 <Sgeo> Therefore, we must induce exceptions
20:48:45 <shachaf> <CTCP>HELLOERJAN <CTCP>
20:49:17 <zzo38> If you don't want to log the message you can send message to someone directly who you want to read it only them.
20:49:49 <shachaf> <CTCP>SABOTEORJAN<CTCP>
20:50:04 <shachaf> i h8 logs :'(
20:50:14 <shachaf> monqy: don't log
20:50:29 <ion> Why?
20:50:29 <fizzie> zzo38: The point is that "freenode philosophy: channel guidelines: -- Be sure to provide a way for users to make comments without logging".
20:51:02 <shachaf> am i being glogged
20:51:13 <zzo38> You can; you send message to the users you want to receve it. Perhaps you can use multiple PRIVMSG will it work?
20:51:44 <fizzie> That's not a comment on the channel, which is clearly what they mean in the guidelines.
20:52:39 <zzo38> Then make up a separate channel for not logged messages.
20:53:28 <fizzie> That's also not a comment on the channel; that's a comment on some completely other channel.
20:53:50 <fizzie> You could as well say "just say the comment out loud in the privacy of your home".
20:56:12 -!- impomatic has joined.
20:56:34 <Sgeo> ais523, what do you think about Klein?
20:56:34 <Sgeo> http://blog.selflanguage.org/tag/klein/
20:56:40 <Sgeo> http://kleinvm.sourceforge.net/
21:00:58 <nortti> ok. config works now with this cat: main(a,b)char**b;{if(a>1)while(*++b){if(**b!='-'){open(*b,0);while(read(3,&a,1)>0)write(1,&a,1);close(3);}else while(read(0,&a,1)>0)write(1,&a,1);}else while(read(0,&a,1)>0)write(1,&a,1);return 0;}
21:01:42 <elliott> have you noticed that code is unreadable
21:01:52 <nortti> mostly yes
21:01:57 <elliott> mostly
21:02:19 <nortti> I'm develping a new cat not based on aiju's tiny unix tools one
21:02:37 <nortti> actually, completely new core/textutils package
21:02:45 <ais523> Sgeo: I don't have an opinion on the subject
21:04:49 <Gregor> I would be willing to add a nolog trigger to glogbot if people could agree on what that would be.
21:05:20 <elliott> Gregor: i'd rather you didn't.
21:05:27 <Gregor> I'd rather I didn't too ;)
21:05:27 <elliott> since it'd mean I'd have to care about clog's existence again
21:05:47 <Gregor> Hence why I made an impossible condition.
21:06:09 <elliott> fizzie: Also didn't we decide those guidelines are actually just guidelines?
21:06:11 <Sgeo> Is there anything that clog is blind to?
21:06:37 <olsner> no, seelog sees all
21:06:53 <Sgeo> damne.
21:07:03 <Sgeo> (I just like using Esperanto swears)
21:09:23 -!- itrekkie has joined.
21:09:56 <boily> Sgeo: esperanto has swears?
21:10:23 <Sgeo> Why wouldn't it?
21:10:43 <itrekkie> Hi all--has anyone done any work with brainfuck? I'm interested in folding the pointer manipulation into a static offset, but figuring out how this works with loops eluding me
21:10:45 <boily> dunno. I had this image that it was a proper, clean, smart international language.
21:10:50 <augur> c00kiemon5ter: :|
21:10:55 <elliott> itrekkie: static offset howso?
21:11:11 <Sgeo> There's a Wikipedia article about it
21:11:12 <Sgeo> http://en.wikipedia.org/wiki/Esperanto_profanity
21:11:25 <Sgeo> boily, the creator might have intended it that way, but
21:11:41 -!- augur has quit (Remote host closed the connection).
21:11:42 <Taneb> `welcome itrekkie
21:11:43 <itrekkie> well I'm translating directly to x86 assembly, so say the stack address is stored in eax then I can just use addressing to add and sub to cells
21:11:44 <HackEgo> itrekkie: 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:12:14 -!- augur has joined.
21:12:28 <elliott> you can't totally eliminate the pointer for non-balanced loops if that's what you mean
21:12:56 <boily> Sgeo: I'll be darned.
21:12:59 <FreeFull> Hey, what would work like interact id but stop when it receives EOF?
21:13:02 <FreeFull> Preferably short
21:13:02 <ais523> itrekkie: for balanced loops, you can calculate the pointer statically
21:13:11 <elliott> FreeFull: interact id
21:13:13 <ais523> but such loops can be entirely optimized into polynomials
21:13:25 <ais523> unbalanced loops, you can't optimize it that way (BF would be obviously non-Turing-complete if you could)
21:13:36 <FreeFull> elliott: Except it doesn't
21:13:46 <FreeFull> At least not in GHCI
21:13:53 <itrekkie> sorry dumb question, but balanced loop?
21:14:29 <elliott> don't test with ghci then
21:14:48 <ais523> itrekkie: a balanced loop has the same number of < and > inside it, and any nested loops inside it are also balanced loops
21:15:03 <itrekkie> ah sure, that makes sense
21:15:07 <ais523> so a simple transfer-addition like [->+<] can be optimized into offsets
21:15:19 <ais523> but it could also be optimized into loc1 += loc0; loc0 = 0;
21:15:42 <ais523> in general, when you can optimize into static memory locations, you can also optimize into arithmetic that doesn't involve a loop at all
21:15:56 <itrekkie> for anyone wondering, I'm working from this reader challenge (http://blog.reverberate.org/2013/01/reader-challenge-optimize-bf-jit.html) it's a fun article
21:16:23 <FreeFull> getContents doesn't do it either
21:16:26 <ais523> there are some idioms that have unbalanced loops that can nonetheless be optimized, but after a while you need strong AI to be able to work out how
21:16:28 <itrekkie> right, okay that's taking it step even farther than I had planned and folding the loop into a constant?
21:16:42 <FreeFull> By EOF I mean ^D here
21:16:44 -!- boily has left ("Poulet!").
21:16:45 -!- augur has quit (Ping timeout: 276 seconds).
21:16:48 <FreeFull> Which cat will stop on
21:17:02 <FreeFull> Actually, hmm
21:17:06 <FreeFull> Maybe that's just the terminal
21:17:15 <FreeFull> Let me write a test case
21:17:18 <ais523> FreeFull: to type EOF in a terminal, you need to type ^D at the start of a line, or ^D twice inside a line
21:17:30 <ais523> in a typical UNIX terminal with a typical UNIX shell, that is
21:17:50 <itrekkie> I'm wondering if there is a simpler more general way to handle unbalanced and balanced loops. It seems to me I can just track the offset and at the end of each loop iteration, commit the new pointer location
21:18:51 <FreeFull> ais523: ghci seems to disable that entirely
21:19:06 <ais523> oh, ghc/i/
21:19:10 <FreeFull> Works if you compile though
21:19:11 <elliott> you haven't even given enough info or wahtever and stuff
21:19:13 <ais523> yeah, it'll be setting its own line discipline
21:19:33 <ais523> it's technically a terminal feature, but the shell configures it
21:19:46 <ais523> if you're not entering the file in via the shell, it may be configured differently
21:21:18 -!- augur has joined.
21:21:41 -!- augur has quit (Remote host closed the connection).
21:21:47 <FreeFull> main=do{a<-getArgs;if a==[]then interact(id)else mapM_(\x->if x=="-"then interact(id)else readFile x)a}
21:21:52 <FreeFull> Code not tested, probably doesn't work
21:22:14 -!- augur has joined.
21:23:47 <FreeFull> One problem, when you do cat - -, the second - will reopen stdin for further reading, while interact(id) will just fail
21:23:53 <elliott> it doesn't print the file for one
21:24:07 <FreeFull> elliott: Oh yeah, duh
21:24:22 <FreeFull> main=do{a<-getArgs;if a==[]then interact(id)else mapM_(\x->if x=="-"then interact(id)else print.readFile$x)a}
21:24:43 <elliott> :t foldM
21:24:44 <lambdabot> Monad m => (a -> b -> m a) -> a -> [b] -> m a
21:24:54 <elliott> ugh
21:24:56 <nortti> hmm. unix (core|text)utils written in haskell...
21:25:25 <Bike> haskell's the perfect language for passing dumb streams of bytes around, yeah?
21:25:25 <FreeFull> I wonder if it could be shorter if I didn't use do
21:26:11 <ais523> Bike: I don't know, BF is quite good at that too
21:26:17 -!- augur has quit (Ping timeout: 245 seconds).
21:26:27 <FreeFull> main=getArgs>>=\a->if a==[]then interact(id)else mapM_(\x->if x=="-"then interact(id)else print.readFile$x)a
21:26:29 <Bike> posix in bf, perfect
21:26:34 <ais523> actually, idea
21:26:34 <FreeFull> Exactly one character shorter
21:26:42 <ais523> BF is good at string handling (relatively speaking)
21:26:44 <ais523> INTERCAL is very bad
21:27:00 <ais523> conclusion: allow calling out to BF to do string handling in INTERCAL
21:27:09 <Bike> what is Intercal's specialty
21:27:27 <ais523> Bike: in terms of actual usefulness? bit-twiddling and complex control flow
21:27:30 <zzo38> CLC-INTERCAL has commands to add plugins, so you can add such things using that, possibly
21:27:31 <ais523> it's quite narrow
21:27:45 <ais523> although the language's only official purpose is to be different from other languages
21:28:30 <FreeFull> INTERCAL's manual has a tonsil
21:30:26 <ais523> hey, anyone here an expert on emoticons?
21:30:35 <ais523> is there a generic one that doesn't convey a particular emotion?
21:30:40 <ais523> not neutral, not happy, not sad
21:30:44 <zzo38> I have wanted some of INTERCAL's flow control in LLVM, actually.
21:30:45 <ais523> just the fact that an emoticon was used
21:30:57 <FreeFull> ais523: No
21:31:06 <ais523> :(
21:31:08 <Bike> :/
21:31:21 <ais523> I was wondering about :/
21:31:25 <ais523> it seems maybe the closest
21:31:26 <elliott> ais523: :
21:31:35 <ais523> elliott: I like that one
21:31:50 <ais523> perhaps I'll use it in #esoteric
21:31:55 <ais523> as well as the `-on-a-line-by-itself
21:32:07 <Bike> `-`
21:32:09 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: -`: not found
21:32:10 <ais523> (which I haven't used for ages, but if I did, at least some people would still know what I meant)
21:32:12 <elliott> ais523: perhaps you can express it with http://www.w3.org/TR/emotionml/
21:32:16 <ais523> (although HackEgo wouldn't)
21:32:27 <ais523> elliott: haha, "10 may 2012"?
21:32:33 <ais523> I was expecting an april 1 date
21:32:47 <elliott> <emotion>
21:32:47 <elliott> <category name="Disgust" value="0.82"/>
21:32:47 <elliott> ‘Come, there’s no use in crying like that!’
21:32:47 <elliott> </emotion>
21:32:47 <elliott> said Alice to herself rather sharply;
21:32:47 <Bike> jesus christ, this is huge
21:32:49 <elliott> <emotion>
21:32:52 <elliott> <category name="Anger" value="0.57"/>
21:32:54 <elliott> ‘I advise you to leave off this minute!’
21:32:57 <elliott> </emotion>
21:32:59 <elliott> exactly 0.82 disgusted
21:33:01 <elliott> <emotion>
21:33:04 <elliott> <category name="Disgust" value="0.82"/>
21:33:07 <elliott> <category name="Contempt" value="0.35"/>
21:33:07 <olsner> hmm, hitachi sells a 4TB hard drive with 3GB of free online backup
21:33:09 <elliott> <category name="Anger" value="0.12"/>
21:33:09 <ais523> "The Emotion Incubator Group has listed 39 individual use cases for an EmotionML."
21:33:11 <elliott> <category name="Surprise" value="0.53"/>
21:33:14 <elliott> </emotion>
21:33:17 <elliott> <emotion appraisal-set="http://www.w3.org/TR/emotion-voc/xml#scherer-appraisals"> <appraisal name="suddenness" value="0.9"/> <!-- appraisal as a very sudden event -->
21:33:19 <Bike> is this not a joke,i'm confused
21:33:19 <elliott> </emotion>
21:33:22 <kmc> <category name="Asperger syndrome" value="9000"/>
21:33:36 <ais523> Bike: it appears to have something to do with XML
21:33:39 <Bike> <category name="Confusion" value = "9.7" />
21:33:46 <olsner> <category name="Despair" value="XML"/>
21:33:48 <kmc> dazed and confused, but trying to continue
21:33:49 <Bike> is this some semantic web thing gone horribly wrong
21:34:09 <Bike> "Human emotions are increasingly understood to be a crucial aspect in human-machine interactive systems."
21:34:21 <Bike> "Especially for non-expert end users, reactions to complex intelligent systems resemble social interactions, involving feelings such as frustration, impatience, or helplessness if things go wrong. " yeah ok this is pretty amazing
21:34:27 <zzo38> If you want to use that, then if you want the not emotion even though it is, then write: <emotion/>
21:34:50 <ais523> Bike: kmc: they actually wrote a justification: http://www.w3.org/2005/Incubator/emotion/XGR-emotion/#AppendixUseCases
21:35:00 <ais523> zzo38: that's a good point
21:35:26 <monqy> 13:30:25 <ais523> hey, anyone here an expert on emoticons?
21:35:27 <ais523> "Alejandra wants to build an ontology driven architecture that allows animating virtual humans (VH) considering a previous definition of their individuality. This individuality is composed of morphological descriptors, personality and emotional state."
21:35:27 <monqy> 13:30:35 <ais523> is there a generic one that doesn't convey a particular emotion?
21:35:30 <monqy> 13:30:40 <ais523> not neutral, not happy, not sad
21:35:30 <olsner> probably an april fool's that accidentally got stuck in an official process for five weeks and ended up being released as a recommendation
21:35:32 <monqy> it's just eyes
21:35:35 <monqy> soulless eyes
21:35:37 <monqy> I use :
21:35:53 <ais523> oh no, this is the sort of focus group document that substitutes in random arbitrary names
21:35:57 <ais523> to make the applications seem more human
21:36:05 <olsner> monqy: is that the same meaning conveyed by "hi"?
21:36:11 -!- carado has quit (Ping timeout: 246 seconds).
21:36:15 <elliott> monqy: I already suggested :!!!
21:36:16 <ais523> olsner: no
21:36:17 <olsner> soulless greeting
21:36:20 <ais523> "hi" has two specific meanings
21:36:26 <ais523> one of them is a greeting
21:36:32 <ais523> and the other is to express disapproval
21:36:36 <ais523> sometimes you can distinguish them from context
21:37:06 <Bike> ontology <-- fucking knew it
21:40:14 <ais523> hmm… so there's a European standard for CVs, nowadays
21:40:25 <ais523> should I use it for my own CV? it'd fit in with the way I normally act, at least
21:43:12 <olsner> standards are for sheeple
21:45:31 <oerjan> ais523 is like the crown prince of the sheeple
21:45:55 <ais523> I follow standards nobody else follows!
21:46:07 <oerjan> indeed, he does
21:46:12 <zzo38> ais523: Which ones?
21:46:14 <ais523> it defeats most of the purpose of standards, but allows me to feel smugly superior
21:46:17 <oerjan> that posix tar thing
21:46:19 <ais523> zzo38: POSIX standard for tarballs
21:47:07 <zzo38> Despite the name, Internet Quiz Engine is the only one that is also possible to run locally (without internet).
21:47:21 <zzo38> Is that the case, other people doesn't use those standard?
21:47:25 <zzo38> I thought it does.
21:47:50 <pikhq> I'm pretty sure GNU tar's output is PAX-compatible anymore at least.
21:48:18 <pikhq> (helps the format is *essentially* just old POSIX tar)
21:49:15 <zzo38> I make up formats that nobody else uses.
21:53:20 <oerjan> `addquote <kmc> most things i hear about 'startup culture' set off the poe's law detector
21:53:23 <HackEgo> 931) <kmc> most things i hear about 'startup culture' set off the poe's law detector
21:53:40 <zzo38> What is a poe's law detector?
21:53:55 <Bike> a detector to see if something is genuine or satire.
21:55:38 <ais523> Bike: one of my friends in another channel has that problem at the moment
21:55:46 <ais523> he's been offered a job in a startup-like company
21:56:03 <ais523> and its apparent business plan is so bad he can't believe it's real and thinks the company's hiding something
21:56:05 <Fiora> http://www.dogbarkz.com/
21:56:12 <Fiora> ... oh god it's triggering poe's law
21:56:14 <Fiora> I don't know if it's real
21:56:32 <Taneb> I'm going for "real"
21:56:40 <Fiora> .... I found launch articles .........
21:56:44 <Taneb> No
21:56:46 <Taneb> Not real
21:56:51 <Taneb> I'm going for "satire"
21:57:03 -!- sirdancealot7 has quit (Ping timeout: 276 seconds).
21:57:10 <Taneb> Or possibly "spam"
21:57:17 <Bike> nice they spell it "barkz"
21:58:10 <Bike> ais523: what's their alleged plan?
21:58:31 <Fiora> "sell to google"?
21:58:37 <ais523> Fiora: it's even better than that
21:58:48 <ais523> it apparently involves doing something that reduces the bandwidth load on Google's servers, without telling Google
21:58:51 <ais523> then threatening to turn it off
21:58:55 <Fiora> ...
21:58:58 -!- augur has joined.
21:59:01 <ais523> and hoping to be paid to leave it on
21:59:20 <Taneb> That...
21:59:20 <ais523> Fiora: are your brain cells still intact?
21:59:23 <Bike> that's amazing
21:59:24 <Fiora> I mean, like, if that actually worked, they could probably sell it to them
21:59:28 <Fiora> but not by being so um. blackmaily
21:59:46 <Fiora> you say "here google, we patented a way to make your bandwidth 10% lower, want to buy us?"
21:59:53 <ais523> yeah, that makes a lot more sense
21:59:59 <Fiora> not "nyahahaha here is our plan for world domination! pay us 100 billlliliooooon dollars!"
22:00:03 <ais523> especially if they have a working demonstration already
22:00:07 <Bike> y'all lack the dynamicism required in a startup
22:00:14 <Fiora> *finger on mouth*
22:00:30 <itrekkie> the data point in brainfuck isn't reset at the end of a loop, right?
22:00:40 <ais523> itrekkie: no
22:00:43 <ais523> it wouldn't be TC if it were
22:00:53 <ais523> as you could never move further from the origin than the total number of > commands in your program
22:01:03 <itrekkie> ah right, that makes sense
22:01:04 <ais523> (unless you use bignum tape cells)
22:01:06 <kmc> uh unless they are somehow reducing the load dramatically, i think google would rather just buy more servers
22:01:14 <kmc> than rely on some ridiculous third party
22:01:22 <Fiora> well, google buying them
22:01:24 <Fiora> rather than thir product
22:01:25 <Fiora> *their
22:01:31 <kmc> even that seems unlikely
22:01:33 <itrekkie> then all I should need to do is commit a change to the data pointer at the end of the loop?
22:01:38 <Fiora> don't they do that kind of thing all the time?
22:01:45 <Fiora> I mean, like, google gobbles startups every tuesday
22:03:54 <kmc> sure
22:04:04 <kmc> it depends on how easily they can replicate your technology themselves
22:04:23 <Fiora> and I guess if they have a patent and if google wants their employees or not?
22:06:12 <kmc> yeah
22:06:39 <kmc> Primer is basically call/cc: the movie
22:06:58 <Bike> i'm kind of curious about what method they could possibly have, like,google already does stuff with SPDY
22:08:52 -!- copumpkin has quit (Ping timeout: 240 seconds).
22:09:02 <kmc> is this one of those startups with a "brilliant, disruptive idea" that just needs a few "code ninjas" to make it happen
22:09:22 -!- copumpkin has joined.
22:09:39 <kmc> dude a social network for pets is a great idea
22:09:42 <kmc> i had this idea a long time ago
22:09:47 <kmc> also a social network for household appliances
22:09:57 <kmc> like, it's one thing to have a washing machine that tweets at you when your laundry is done
22:10:06 <kmc> but another to have a washing machine that posts to its own wall and can become friends with the toaster
22:10:11 <Fiora> ..... XD
22:10:21 <Fiora> oh gosh now I'm remembering the Brave Little Toaster
22:10:30 <kmc> "Toaster and Bathtub are now: It's Complicated"
22:10:41 <Bike> http://www.youtube.com/watch?v=pQGtucrJ8hM kmc
22:10:47 <zzo38> electrocution.
22:10:56 -!- Taneb has quit (Quit: goodnight).
22:11:04 -!- sirdancealot7 has joined.
22:11:05 <kmc> http://www.theonion.com/articles/my-computer-totally-hates-me-vs-god-do-i-hate-that,11538/
22:14:47 <kmc> today @CompSciFact is more like @SteveYeggeQuotes
22:14:52 <kmc> kind of disappointed w/ this account
22:16:40 <shachaf> You should start a Twitter account that reviews other Twitter accounts.
22:18:14 <Fiora> how do you add a quote to the thing
22:18:16 <Fiora> because kmc that was perfect
22:18:20 <zzo38> VRC6 square wave can go one more octave lower than 2A03 square wave.
22:18:50 <ais523> Fiora: `addquote insert quote here
22:19:07 <ais523> replace newlines with two spaces
22:19:07 <shachaf> `? qdbrules
22:19:08 <HackEgo> qdbrules? ¯\(°_o)/¯
22:19:14 <shachaf> `? qdb
22:19:16 <HackEgo> qdb is used like: `quote; `quote regexp; `quote id; `addquote ...; `delquote id; `pastequotes regexp; `pastenquotes [n]; see also qdbformat
22:19:20 <shachaf> `? qdbformat
22:19:21 <HackEgo> qdbformat is: <nick> message; * nick action; two spaces between messages; all elisions marked with [...] other than irrelevant intervening messages; for messages separated by elision, one space on each side, not two
22:19:42 <kmc> what did i say?
22:19:44 <Fiora> `addquote <kmc> a social network for household appliances <kmc> like, it's one thing to have a washing machine that tweets at you when your laundry is done <kmc> but another to have a washing machine that posts to its own wall and can become friends with the toaster <kmc> "Toaster and Bathtub are now: It's Complicated"
22:19:48 <HackEgo> 932) <kmc> a social network for household appliances <kmc> like, it's one thing to have a washing machine that tweets at you when your laundry is done <kmc> but another to have a washing machine that posts to its own wall and can become friends with the toaster <kmc> "Toaster and Bathtub are now: It's Complicated"
22:19:53 <kmc> glad you liked it :)
22:20:10 <kmc> the spanish language radio station next to my office is playing the same 15 second song clip over and over and over
22:20:15 <kmc> maybe their software crashed
22:20:20 <kmc> maybe they only have the free preview on itunes
22:20:24 <ais523> huh, our learndb is starting to be /useful/?
22:20:25 <ais523> `? brainfuck
22:20:27 <HackEgo> brainfuck is the integral of the family of terrible esolangs."
22:20:33 <shachaf> I can't believe Fiora violated the qdbformat.
22:20:47 <ais523> hmm, what's with the reverse rabbit at the end?
22:21:00 <shachaf> 🐇
22:22:18 <Fiora> wait what did I do wrong
22:22:29 <Fiora> `delquote 932
22:22:33 <zzo38> I think you omitted one space before <kmc>
22:22:33 <HackEgo> ​*poof* <kmc> a social network for household appliances <kmc> like, it's one thing to have a washing machine that tweets at you when your laundry is done <kmc> but another to have a washing machine that posts to its own wall and can become friends with the toaster <kmc> "Toaster and Bathtub are now: It's Complicated"
22:22:48 <Fiora> `addquote <kmc> a social network for household appliances <kmc> like, it's one thing to have a washing machine that tweets at you when your laundry is done <kmc> but another to have a washing machine that posts to its own wall and can become friends with the toaster <kmc> "Toaster and Bathtub are now: It's Complicated"
22:22:51 <HackEgo> 932) <kmc> a social network for household appliances <kmc> like, it's one thing to have a washing machine that tweets at you when your laundry is done <kmc> but another to have a washing machine that posts to its own wall and can become friends with the toaster <kmc> "Toaster and Bathtub are now: It's Complicated"
22:22:53 <Fiora> fixed >_<
22:23:09 <shachaf> OK, you can stay.
22:23:33 * shachaf doesn't like the qdbformat, by the way.
22:23:39 <shachaf> But rules are rules. Right, elliott?
22:23:52 <shachaf> `quote quintopia.*both
22:23:53 <HackEgo> 308) <zzo38> <elliott> <quintopia> i know it's unusual, but i agree with you both to some extent
22:23:57 <zzo38> Will you use RogueVM? If not, is it because there is not the assembler format yet?
22:24:00 <shachaf> Just look at that. Three spaces?
22:24:01 <Bike> why is the qdbformat even a thing
22:24:18 <ais523> Bike: because elliott
22:24:22 <shachaf> `addquote <Bike>why is the qdbformat even a thing
22:24:25 <HackEgo> 933) <Bike>why is the qdbformat even a thing
22:24:30 <zzo38> shachaf: One space for before message, one space is the message, two space after a message, I think.
22:24:33 <Bike> `thachaf
22:24:34 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: thachaf: not found
22:25:03 <shachaf> Hmm, I can't take it.
22:25:07 <shachaf> `delquote 933
22:25:11 <HackEgo> ​*poof* <Bike>why is the qdbformat even a thing
22:25:18 <Bike> you are weak
22:26:41 -!- epicmonkey has quit (Ping timeout: 248 seconds).
22:27:05 <zzo38> Which is the IRC channel in Freenode for roguelike game? Maybe they should learn RogueVM, maybe they know better also to make the suggestion and whatever else.
22:27:18 <oerjan> `run sed -i 's/"$//' wisdom/brainfuck
22:27:21 <HackEgo> No output.
22:27:23 <Bike> I think there's #nethack
22:27:27 <oerjan> `? brainfuck
22:27:28 <HackEgo> brainfuck is the integral of the family of terrible esolangs.
22:27:40 <oerjan> (yeah i know it would have been simpler to use `learn)
22:27:43 -!- augur has quit (Read error: Connection reset by peer).
22:28:33 <zzo38> Do you know if standard Nethack uses features which are not compatible with RogueVM? I know ADOM does have a few.
22:28:35 <oerjan> <shachaf> Just look at that. Three spaces? <-- perhaps they both made a message with a single space.
22:28:46 <shachaf> oerjan: No, they made a message with no spaces.
22:28:48 <Bike> I don't know what RogueVM is.
22:28:54 -!- augur has joined.
22:28:59 <shachaf> Wait, can you do that in IRC?
22:29:00 <zzo38> Empty message result in 412 error, you cannot message with nothing.
22:29:05 <shachaf> Maybe those quotes are WRONG!
22:29:10 <zzo38> Try it if you don't believe me.
22:29:23 <shachaf> `pastelogs both.*extend
22:29:25 <shachaf> Er.
22:29:26 <shachaf> `pastelogs both.*extent
22:29:36 <oerjan> i have _seen_ messages with no space, so...
22:29:53 <HackEgo> No output.
22:29:57 <HackEgo> No output.
22:30:01 <shachaf> HackEgo..............
22:30:07 <oerjan>
22:30:08 <zzo38> Bike: http://zzo38comptuer.org/roguevm/roguevm.dvi (and roguevm.tex for source file)
22:30:25 <Bike> 404 here
22:30:27 <oerjan> hm or maybe it's just putty that doesn't distinguish them
22:30:40 <kmc> s/comptuer/computer/ ?
22:30:46 <zzo38> kmc: Yes
22:30:55 <Bike> oh yep that did it.
22:30:58 <zzo38> http://zzo38computer.org/roguevm/roguevm.dvi
22:31:34 <Bike> 18 bits, huh
22:31:41 <shachaf> How did you get a 404?
22:31:55 <shachaf> Do you have one of those fancy DNS servers that gives you advertisements when it can't resolve a name?
22:32:14 <Bike> If I say yes will I be able to use "404" in a more casual manner in the future and be understood
22:32:33 <kmc> i think it's pretty confusing to do so
22:32:57 <kmc> sorry
22:32:58 <zzo38> If you have one of those, it cause problem what you should do is find the IP address it uses, and write the DNS driver to have an option to detect that and cause it to return nothing instead.
22:34:02 <Bike> well fine
22:34:04 <Bike> jerks :(
22:35:51 <zzo38> Therefore, maybe I should add such an option in the network setting menu when I make up that computer.
22:36:05 <Bike> some of this seems kind of weird. like why are tile names 28 octets but also null terminated.
22:36:44 <zzo38> However such an option should also be available in Linux, maybe.
22:37:26 <zzo38> Bike: Well, I suppose it could be terminated after 28 octets automatically too, but I wanted to make it null terminated so that a C prorgam that loads it does not have to add its own null terminator in that case.
22:37:56 <Bike> well i mean, why specify 28 octets if it can just be null terminated anyway.
22:38:45 <zzo38> Which page are you refering to?
22:39:47 <Bike> 4, i guess.
22:40:08 <zzo38> The reason is so that the records have a fixed size.
22:41:18 <zzo38> I thought that was obvious. Isn't it?
22:41:32 <Bike> guess i'm not paying enough attention
22:49:04 <Sgeo> "Tangent: the occasional truthiness of false is a case study in the pitfalls of language design. It stems from the interaction of two bad decisions. First, we have the implicit coercion of any type to a boolean - a nasty C legacy. Then we have primitive types, which leads to (non-transparent) autoboxing. Since any object is truthy, and autoboxing false creates an object, you can end up with an automatic, hidden conversion that interprets fals
22:49:04 <Sgeo> e as true."
22:49:11 <Sgeo> When does Javascript decide that false is truthy?
22:51:56 <zzo38> Some of the features of ADOM that are not supported in RogueVM includes, holding down the space-bar to win money at the slot machine, and the area where you cannot enter unless you have already played this game a few times, and the default names.
22:52:08 <zzo38> Sgeo: I think when you write something like (new Boolean(False))
22:54:24 <zzo38> Bike: Is there anything else you find wrong in the RogueVM or right or whatever question, or if something is unclear I should make it more clearly?
22:55:16 <Bike> i'm not really that interested to look it over closely, but given i didn't realize something as obvious as the thing i don't know that i can be of any hlep
22:56:11 <zzo38> Maybe I should add a ICO directory which is optional and can contain graphics.
22:56:42 <Bike> oh, i was wondering about that. since you said that interpreters can provide graphics if they want, but apparently there's no way to specify such, they just have to guess from the ASCII?
22:57:53 <zzo38> Just guessing from the ASCII is a dumb way; I was thinking, they might be in a separate file, but I think it makes sense to provide default graphics in a ICO directory for that purpose, now.
22:58:20 <Bike> yeah.
23:00:20 * Sgeo still doesn't understand gBeta
23:00:26 <Sgeo> Maybe I should try to understand Beta first
23:00:28 <zzo38> But now I am not exactly sure what formats to use for the graphics. The low sixteen bits of the file number could be used for the tile number and the high sixteen bits to indicate the format, I guess. Other than that I am not exactly sure but maybe you or someone have suggestion
23:03:18 -!- WeThePeople has joined.
23:06:04 <zzo38> What graphics formats should I specify?
23:06:42 <ais523> zzo38: probably PNG is the best option for that sort of thing nowadays
23:06:50 <ais523> it's widely supported and has the right features
23:07:17 <pikhq> PNM might be more zzo38 though.
23:08:00 <zzo38> Yes, it does, but that isn't quite what I meant. I intended that format data (including icon size, color depth, etc) might be stored using the file number, so that the program can select the one it wants.
23:08:51 <zzo38> PNG is good if you are having the icons separately, but when combining it into something like this it doesn't quite seem properly.
23:09:21 <zzo38> But maybe it is, if you know how it ought to fit with the other things it does too.
23:09:41 <pikhq> Amusingly, you can place arbitrary data in a PNG.
23:10:09 <zzo38> Yes, I know that
23:11:07 <kmc> PNG has lots of places to steganographically hide data, too
23:11:41 <ion> In addition to the pixel data?
23:11:45 <kmc> yes
23:12:50 <kmc> PNG file contains a sequence of chunks of various types
23:13:36 <pikhq> Additionally, most all PNG viewers will ignore data at the end of the file.
23:13:50 <kmc> the pixel data itself is a zlib data stream split across one or more IDAT chunks
23:14:03 <kmc> the boundaries of the IDAT chunks are completely arbitrary, they can come anywhere in the zlib stream
23:14:16 <pikhq> Conveniently, ZIP readers are *required* to ignore random data at the beginning of the file.
23:14:22 <ion> I mean, are there other chunks than the pixel data to whom you can add your content without making them invalid or obviously suspicious?
23:14:32 <zzo38> pikhq: Yes, it is used to make self-extracting files, I think.
23:14:39 <pikhq> (this is in part so you can append to a ZIP file by just writing new things to the end)
23:14:45 <kmc> also DEFLATE itself gives plenty of freedom to encode the same data different ways
23:14:54 <pikhq> ion: Yes.
23:15:00 <kmc> ion: you can add unknown chunk types, that most programs will ignore
23:15:12 <kmc> the chunk type code itself encodes "is it safe to ignore this chunk"
23:15:14 <pikhq> The spec also has a comment chunk type.
23:15:28 <ion> Unknown chunks type is something i’d look at when looking for steganographics. :-P
23:15:30 <kmc> and arbitrary text strings
23:15:48 <pikhq> You could probably also do stego in the filtering.
23:16:07 <kmc> and UTF-8 text strings... plenty of ways to hide data in Unicode as well :)
23:16:11 <pikhq> In PNG, each raster line of the picture has one of 5 filters applied before it gets sent into DEFLATE.
23:16:17 <kmc> yeah, that would be a good way
23:25:24 -!- c00kiemon5ter has quit (Ping timeout: 264 seconds).
23:27:52 -!- sirdancealot7 has quit (Ping timeout: 240 seconds).
23:29:10 -!- sirdancealot7 has joined.
23:29:11 <zzo38> I don't think PNG is the right one for this use, if I want that the program may want to select which icon size, color depth, etc, they want to use, by selecting which file is wanted. (If you think this is bad idea you can say why)
23:30:24 <zzo38> RogueVM does support to have extra chunks though, by making files ETC/800????? which are files that a program which doesn't understand, can ignore it.
23:30:51 <Sgeo> Oh woah Eliot Miranda isa ctively involved with Newspeak
23:30:52 <Sgeo> Actively
23:42:51 <zzo38> So that part is a bit like PNG.
23:44:41 <zzo38> Currenly there are none of ETC/800????? assigned, although if there are some you think should have, I could add it on.
23:49:43 -!- copumpkin has quit (Ping timeout: 244 seconds).
23:50:14 -!- copumpkin has joined.
23:50:19 <ion> https://github.com/search?q=path%3A.ssh%2Fid_rsa
23:51:45 -!- sirdancealot7 has quit (Read error: Connection reset by peer).
23:53:02 <FreeFull> Fuck you google
23:53:22 <kmc> ion: o_O
23:53:23 <kmc> https://github.com/search?q=BEGIN+RSA+PRIVATE+KEY&type=Code&ref=searchresults
23:53:27 <FreeFull> When I search for +"get lost", don't insist on showing me a result that has just lost, and no mention of the word get anywhere
23:54:14 <ion> kmc: nice
23:54:29 <kmc> thoug, most of these are empty?
23:54:47 <kmc> the number of pages indication is a lie btw
23:54:57 <kmc> it showed 99 but then ran out when i got to page 3
23:55:15 <kmc> today i gotta learn how to use AES-NI
23:55:50 <Jafet> Those are all certificate keys
23:57:41 -!- augur has quit (Remote host closed the connection).
23:58:15 -!- augur has joined.
23:58:52 <Jafet> https://google.com/search?q=inurl:.ssh/id_rsa
23:59:11 <kmc> that reminds me, http://www.shodanhq.com/
2013-01-24
00:00:22 <Bike> what about it?
00:01:44 <Bike> hm who can we hack in greenland
00:02:45 -!- augur has quit (Ping timeout: 252 seconds).
00:10:41 -!- sirdancealot7 has joined.
00:11:36 -!- sirdancealot7 has quit (Read error: Connection reset by peer).
00:22:00 -!- impomatic has quit (Quit: http://corewar.co.uk).
00:29:32 -!- sirdancealot7 has joined.
00:33:45 <zzo38> I have added specification of ICO and of a few of the ETC/8000????
00:39:19 -!- c00kiemon5ter has joined.
00:53:48 -!- itrekkie has quit (Ping timeout: 245 seconds).
01:02:24 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:10:12 -!- oerjan has quit (Quit: leaving).
01:22:35 -!- augur has joined.
02:09:58 -!- TeruFSX has joined.
02:11:53 <Sgeo> When I google for newspeak nof, I do not expect Google to change nof to of without telling me explicitly
02:13:01 <coppro> stick it inside quotes
02:15:09 <Sgeo> I did, that works, but I do expect at least a "Showing results for of; Search instead for nof"
02:27:22 <Sgeo> I don't think I like Actors
02:27:35 <Bike> is that the Scheme thing or what
02:27:37 <Sgeo> Or at least, I don't like having a single mailbox for each actor
02:27:43 <Sgeo> Bike, most well known in Erlang
02:27:59 <Bike> oh, that.
02:29:25 -!- tromp has quit (Ping timeout: 260 seconds).
02:31:28 -!- Bike_ has joined.
02:31:34 <Bike_> So is there an Erlangtalk here?
02:31:47 -!- Bike has quit (Disconnected by services).
02:31:52 -!- Bike_ has changed nick to Bike.
02:32:17 <c00kiemon5ter> moar bikes!
02:34:11 -!- zzo38 has quit (Remote host closed the connection).
02:40:14 <Sgeo> bah the old newspeak forums are dead and I can't see what I posted
02:40:21 <Sgeo> Other than that I posted two threads
02:41:03 <Sgeo> I searched for newspeak sgeo
02:41:09 <Sgeo> "Did you mean: newspeak good "
02:41:36 -!- evincar has joined.
02:42:35 <Bike> google likes you!
02:45:54 -!- Arc_Koen has quit (Quit: Arc_Koen).
02:47:16 <Sgeo> kmc, you've done Newspeak stuff?
02:47:28 <Sgeo> At least, there's a Keegan on BitBucket who has
02:48:21 <evincar> I went to Google today and was under NDA but they didn't tell us anything that isn't public. :(
02:48:49 <Sgeo> lol "SqueakNOS is back! - 2006-05-16 - gera
02:48:49 <Sgeo> "
02:49:27 <kmc> not me
02:49:54 <evincar> I did run a forkbomb on one of the the Chromebooks they had on display though.
02:50:00 <kmc> well played
02:50:17 <Sgeo> hmm, how does that work? Is there a way to access a console?
02:50:34 <Sgeo> Oh, or some Javascript that crashes the brows... wait, hmm
02:50:41 <evincar> There is an underpowered console which runs in the browser.
02:50:54 <kmc> you can forkbomb IE6 from the address bar
02:50:57 <evincar> And has access to some native things via Chrome.
02:51:01 <evincar> So yes, JS.
02:51:14 <kmc> about:<script>while(1){window.open(document.url);}</script>
02:51:16 <kmc> or something like that
02:51:32 <ion> heh
02:51:41 <Bike> does navigating to a javascript: url not work?
02:51:45 <kmc> that might work too
02:52:08 <kmc> this is a dim memory from approximately a billion years ago
02:52:45 <evincar> Also the keyboard is shitty.
02:53:12 <evincar> Capslock is replaced with a super key with a search icon on it.
02:53:29 <evincar> And there's no menu, home/end/pgup/pgdn/etc.
02:53:43 <evincar> Not even by way of a function key.
02:54:14 <kmc> damn it intel why do you have 38573645 different instructions named "shuffle"
02:54:24 <evincar> Then again I'm one of the 5 people left in the world who still uses a menu key.
02:54:41 <ais523> evincar: I use it by mistake sometimes, and intentionally a bit less often
02:55:21 <myndzi> keyboard keys ftw
02:55:24 <myndzi> don't take my keys!
02:55:30 <Bike> I have it bound to WM stuff, so I don't really use it.
02:55:39 <myndzi> i really hate how dell or whoever rearranged the six pack
02:55:44 <myndzi> why would you do that?
02:55:54 <myndzi> i can understand removing that whole chunk of keyboard, but not just destandardizing it
02:56:18 <evincar> One rationale I've heard from a Logitech guy is that "Insert" confuses people.
02:56:26 <evincar> So they use a double-high Delete.
02:56:28 <myndzi> fuck people.
02:56:38 <myndzi> people can learn
02:56:47 <evincar> But still put Ins above Del on the same row as the F keys.
02:56:56 <myndzi> i've never used sysrq but you don't see me complaining!
02:56:57 <myndzi> ;)
02:57:04 <evincar> Causing Pause/Break and Scroll Lock to get out of whack.
02:57:13 -!- Bike_ has joined.
02:57:14 <evincar> It's this terrible chain reaction.
02:57:34 <evincar> Yeah that. SysRq.
02:58:29 -!- TeruFSX has quit (Read error: Connection reset by peer).
03:00:17 -!- Bike has quit (Ping timeout: 248 seconds).
03:01:55 -!- evincar has quit (Ping timeout: 244 seconds).
03:03:23 -!- augur has quit (Remote host closed the connection).
03:03:57 -!- augur has joined.
03:04:37 -!- augur has quit (Read error: Connection reset by peer).
03:04:48 -!- augur has joined.
03:05:43 -!- augur has quit (Read error: Connection reset by peer).
03:05:53 -!- augur has joined.
03:07:19 -!- Bike_ has changed nick to Bike.
03:10:25 -!- augur has quit (Ping timeout: 248 seconds).
03:11:49 -!- augur has joined.
03:19:59 <shachaf> kmc: The good one is pshufb.
03:20:21 <shachaf> Or was it vpshufb?
03:22:27 <kmc> i don't know what the difference is
03:22:37 <kmc> sometimes the mnemonics differ between intel and AT&T :(
03:22:46 <Bike> do they really
03:22:58 -!- augur has quit (Remote host closed the connection).
03:23:12 <kmc> think so
03:23:16 <shachaf> Yes.
03:23:22 <shachaf> Isn't v the one that takes three operands?
03:23:29 <shachaf> New in AVX.
03:23:30 -!- augur has joined.
03:23:38 <shachaf> (I knew once.)
03:24:25 <shachaf> https://en.wikipedia.org/wiki/VEX_prefix
03:24:26 <shachaf> I think it's that.
03:24:39 -!- augur has quit (Read error: Connection reset by peer).
03:24:50 -!- augur has joined.
03:29:11 <kmc> oh
03:29:15 <kmc> ok
03:29:49 <shachaf> i love x86 instructions
03:31:22 <shachaf> kmc: I hear the "cool byte shuffling instructions" are Knuth's MOR and MXOR.
03:33:58 <kmc> yes
03:34:00 <kmc> those are nic
03:34:01 <kmc> e
04:00:32 -!- TeruFSX has joined.
04:02:04 -!- augur has quit (Remote host closed the connection).
04:02:39 -!- augur has joined.
04:05:09 <shachaf> kmc: Oh, I missed it.
04:05:17 * shachaf doesn't track megaseconds.
04:05:21 -!- augur has quit (Read error: Connection reset by peer).
04:05:45 -!- augur has joined.
04:06:19 -!- augur has quit (Remote host closed the connection).
04:06:53 -!- augur has joined.
04:07:50 -!- WeThePeople has quit (Quit: Leaving).
04:07:52 <shachaf> At least I noticed kmc over 9000 day!
04:11:11 -!- augur has quit (Ping timeout: 256 seconds).
04:14:29 <kmc> ?
04:15:58 <Sgeo> kmc, you are over 9000 units of some dimension
04:30:42 <shachaf> «We're grateful for Greg's many contributions to Sequoia over the last 12 years. His wikipedic knowledge, quick wit, and uncanny ability to connect seemingly unrelated ideas made him a joy to work with.»
04:31:04 <shachaf> Is that a sort of backhanded compliment?
04:31:24 <ion> Wikipedic knowledge sounds like a bad thing.
04:31:41 <Bike> it is :(
04:35:45 <TeruFSX> that's definitely an insult
04:35:51 <TeruFSX> i don't know how they got away with that
04:36:11 <kmc> what's the difference between MOVAPS and MOVDQA
04:36:40 <ion> kmc: 3
04:36:40 <Bike> how many jokes are there about intel's mnemonics not being very mnemonic
04:37:50 <shachaf> kmc: http://stackoverflow.com/questions/6678073/difference-between-movdqa-and-movaps-x86-instructions
04:38:04 <kmc> i wonder if loongson has official han character mnemonics
04:38:08 <kmc> probably not but that would be amazing
04:38:20 <kmc> thanxchaf
04:38:30 <kmc> 'On some (but not all) micro-architectures, there are timing differences due to "domain crossing penalties"'
04:38:37 <kmc> ok now you're just making shit up
04:38:54 <Bike> is that term especially made-up-sounding...?
04:39:09 <kmc> no it's just more complexity than i want to think about
04:39:19 <Bike> welcome to assembly?
04:39:22 <kmc> MOVAPS two cycles slower due to transfer at Oxford Circus
04:40:18 <shachaf> What are you doing with x86 instructions?
04:40:29 <kmc> AES-NI
04:40:57 <shachaf> This isn't for mosh, is it?
04:42:06 <kmc> no
04:42:18 <shachaf> What is it for?
04:42:54 <shachaf> Oh, those things you were working on?
04:48:49 <shachaf> oerjan: Don't you ever get tired of logreading?
04:50:27 -!- augur has joined.
04:52:01 <shachaf> monqy: you should draw a self portrait of oerjan
04:52:58 <monqy> i remember when i drew self portraits
04:53:09 <shachaf> they were so good
04:53:17 -!- augur_ has joined.
04:53:22 <shachaf> imo some of your finest work
04:53:37 -!- augur has quit (Read error: Connection reset by peer).
05:00:52 -!- monqy has quit (Quit: hello).
05:22:35 <Sgeo> "Are you proud when you explain this [primitives] to a non-Smalltalker?"
05:22:47 <Sgeo> (On a presentation about Newspeak)
05:22:53 <Sgeo> Referring to Bike's objection
05:25:59 <shachaf> Security vulnerability in the pure-Haskell implementation of TLS!
05:26:01 <shachaf> How unexpected.
05:26:12 <Bike> gosh i'm like some kind of smalltalkkin
05:26:28 <ion> shachaf: No wai
05:29:38 <kmc> shachaf: haha
05:29:40 <kmc> what's the vuln?
05:31:58 -!- zzo38 has joined.
05:32:43 <shachaf> https://github.com/vincenthz/hs-tls/issues/29
05:33:58 <kmc> :(
05:34:51 <shachaf> I'm not sure why Haskell people seem to insist on implementing everything themselves.
05:35:12 <ion> Implementing crypto by yourself – what could possibly go wrong?
05:35:55 <zzo38> shachaf: To me "mathematically correct", maybe.
05:35:58 <kmc> software is automatically better if written in haskell
05:35:59 <zzo38> s/me/be/
05:36:02 <kmc> that said, a lot of language communities do this
05:36:11 <shachaf> With cryptography?
05:36:16 <kmc> yeah
05:36:21 <shachaf> I don't see Ruby people implementing their own cryptography things so much.
05:36:24 <kmc> you can find pure python implementations of everything
05:36:26 <shachaf> Maybe I'm just out of touch.
05:36:32 <kmc> it's a question of whether people actually use it or whether they're toys
05:36:33 <shachaf> kmc: Sure, but are they *standard*?
05:36:58 <kmc> and there is a certain appeal to having your security critical primitives written in a high level memory safe language with some level of static assurance
05:37:12 <kmc> is hs-tls standard? what do you mean by that
05:37:14 <kmc> is it in the Platform?
05:37:32 <shachaf> I mean the things that all the web frameworks etc. seem to use.
05:37:57 <shachaf> I don't think there's much of a high-level cryptography API that's made over bindings to OpenSSL, say.
05:38:54 <kmc> hs-tls is used by all the web frameorks?
05:39:35 <kmc> not clear your web framework should even be doing SSL
05:39:35 <shachaf> I don't mean hs-tls specifically, but most of the cryptography libraries that I've come across.
05:39:45 <kmc> terminating SSL at a frontend reverse proxy / app container is common
05:40:26 <kmc> to be fair OpenSSL is written in an unsafe language and is also shitty
05:40:34 <kmc> i mean, somebody has to try to do better
05:40:39 <shachaf> True.
05:40:39 <kmc> but they are going to get burnt repeatedly
05:40:43 <kmc> especially if they are not experts
05:40:46 <kmc> and SSL is fucking complicated
05:40:49 <kmc> i'm so glad Mosh doesn't use DTLS
05:40:52 <kmc> this came up again today
05:44:29 -!- TeruFSX has quit (Ping timeout: 255 seconds).
05:45:30 <zzo38> To some, deism means that God created the universe but does not affect it now. When I said that I don't believe the Jews are God's chosen people and all that stuff is just mythology, I did not mean that God does nothing since. God is beyond comprehension and now you are trying to put it into something you understand, even though it cannot understand, so that is an error.
05:45:50 <shachaf> zzo38: Would you say that everything exists?
05:45:55 <zzo38> shachaf: Yes.
05:46:03 <zzo38> What Wikipedia says about deism is different.
05:46:13 <pikhq> And I think that God is a hypothesis with near-zero likelihood.
05:46:58 <zzo38> People don't even agree what "God" is, regardless if you think so or not. (This applies to me too, of course.)
05:47:15 <shachaf> pikhq: imo there is a very high likelihood for my existence
05:47:21 <shachaf> near 1 in fact
05:47:49 <zzo38> shachaf: However, although I may say that everything exists, I now say, what is exist? Physical existence? Universal existence? Mathematical existence? It is different!
05:48:44 <Bike> thinking that questions about god are stymied by people not agreeing on what "god" means is called "ignosticism", for reference
05:49:12 <zzo38> Yes, I know that is called "ignosticism"; I did see that on Wikipedia.
05:49:28 <zzo38> So I do sometimes call some of my ideas ignostic, too.
05:51:42 <zzo38> I do study philosophy of much.
05:51:58 <shachaf> `addquote <zzo38> I do study philosophy of much.
05:52:06 <HackEgo> 933) <zzo38> I do study philosophy of much.
05:52:28 <shachaf> kmc: lens now has a function which pays a 1000x constant factor for the common case to avoid a space leak in the unusual case.
05:52:33 <kmc> :(
05:52:34 <shachaf> I feel kind of bad about that.
05:52:49 <shachaf> But I don't know what the right answer is.
05:52:53 <shachaf> Space leaks are really annoying.
05:53:05 <zzo38> shachaf: Can you perhaps fix it, or make up a separate function for the unusual case?
05:53:06 <shachaf> You can profile a slow thing, but a space leak will just freeze your computer.
05:57:29 <zzo38> I am not a humanist religion. Humanity is just one of the life on the Earth, the Earth is just one of the planets in the solar system, and so on. The absolute reality is the universe as a whole; we divide it to understand it in different ways.
05:57:53 <shachaf> zzo38: You should fix our issue with the function!
05:57:55 <shachaf> The function is lastOf.
05:57:59 <shachaf> It gets the rightmost element of a tree.
05:58:40 <zzo38> I may look, but I don't even know exactly how to fix it necessarily.
05:59:24 <shachaf> https://github.com/ekmett/lens/issues/245
06:03:17 <Gregor> Here's an idea for a FUSE filesystem: Just overlay over another filesystem, presenting all targets from Makefiles as pseudofiles that will be created on-demand.
06:03:25 <Sgeo> Smalltalkers are utterly utterly insane http://vimeo.com/50530082
06:06:27 <Bike> this is silly.
06:06:43 <zzo38> I do not like the way FUSE works; I would prefer it to continue running while active rather than terminate, and to be accessible in a subdirectory of the process directory (in /proc/) instead of the other one.
06:06:48 <Sgeo> http://netjam.org/quoth/
06:07:03 <Sgeo> Search that page for Play 4 times
06:07:03 <zzo38> (And you could create a link if you wanted it in a separate directory)
06:07:21 <pikhq> zzo38: IIRC FUSE filesystems don't terminate, they just daemonize.
06:30:36 -!- FreeFull has quit.
06:38:35 -!- aloril has quit (Ping timeout: 255 seconds).
06:51:56 -!- aloril has joined.
07:04:04 -!- Bike has quit (Quit: dead).
07:07:12 -!- ogrom has joined.
07:11:04 -!- sebbu2 has joined.
07:11:22 -!- sebbu2 has quit (Changing host).
07:11:22 -!- sebbu2 has joined.
07:14:51 -!- sebbu has quit (Ping timeout: 260 seconds).
07:24:48 <kmc> shachaf: it's so lame that system calls have to use memory to transfer data
07:24:55 <kmc> i want to read 16 bytes from a file directly into %xmm0!
07:26:03 <shachaf> Making an asynchronous interface for that sounds like fun.
07:28:14 <shachaf> The OS is going to read it into the page cache anyway unless you do something weird, so you might a well just mmap it and copy it from memory or something.
07:28:30 <shachaf> I guess you want the disk controller to copy data straight to a register too?
07:28:35 <shachaf> You should patent DRA before someone else does.
07:28:36 <kmc> what if it's a terminal
07:28:37 <kmc> heh
07:28:54 <shachaf> Oh, a terminal.
07:29:20 <kmc> terminals: best type of file?
07:29:51 <shachaf> > compare "terminal" "disk"
07:29:53 <lambdabot> GT
07:29:56 <shachaf> Looks like it.
07:33:48 <kmc> sleep, 'night all
07:43:17 <Fiora> kmc: movdqantfs
07:57:10 <shachaf> Fiora: Do you like the guessing game "x86 instruction mnemonic or CAPTCHA?"?
07:57:32 <Fiora> XD
07:57:58 <Fiora> I think my favorite insane one is still phminposuw
07:58:41 <shachaf> Pft. That one's almost pronounceable.
07:59:04 <Fiora> packed horizontal minimum position unsigned word
07:59:37 <shachaf> You should get MOR and MXOR into x86.
07:59:41 <Fiora> take a vector of 8 uint16_ts, return {minimum value, position of minimum value}
08:00:10 <Fiora> single-cycle (throughput at least) 8-way minimum~ it's fun, the name is just ridiculously long XD
08:00:14 <Fiora> ... MOR?
08:00:15 <fizzie> PUNPCKLQDQ and such make for funky names, too, due to how they dropped the 'a' from 'pack'.
08:00:34 <Fiora> pun-pack-liq-diq
08:00:39 <fizzie> If only they'd gone all out with vowel-dropping and made it PNPCKLQDQ.
08:00:47 <Fiora> pun-pack-liq-bow
08:00:48 <fizzie> It's not "pack" when it's PCK.
08:00:57 <fizzie> Also "liq-diq" sounds dirty.
08:01:11 <Fiora> .... oh geez it does >_<
08:01:59 <shachaf> MOR is great.
08:02:15 <Fiora> what's MOR?
08:02:17 <shachaf> It does matrix multiplication of two 64-bit registers treated as 8x8 matrices.
08:02:21 <Fiora> .... @_@
08:02:23 <Fiora> what architecture is that?
08:02:24 <shachaf> Using AND and OR instead of + and *
08:02:27 <shachaf> MMIX.
08:02:35 <Fiora> wait, so, each entry in the matrix is 1-bit?
08:02:39 <shachaf> Yes.
08:02:44 <Fiora> wow I think that could actually be used in some FEC code I saw a while ago
08:02:51 <shachaf> It's pretty nice.
08:02:56 <Fiora> that's a crazy instruction, was it fast?
08:03:07 <shachaf> MMIX has never been built, so who knows?
08:03:55 <Fiora> oh... I guess I was confusing it with something else
08:04:09 <Fiora> ohhhh. it's Knuth's thing
08:04:13 <shachaf> Yes.
08:04:40 * Fiora tries to think of odd simd instructions she's seen
08:05:00 <Fiora> I think NEON has a simd leading-zero count. which isn't really that weird I guess
08:05:08 <shachaf> MOR/MXOR give you pshufb, among other things.
08:05:18 <shachaf> Except instead of shuffling you can or/xor bytes.
08:05:41 <shachaf> (So instead of a byte index like 0,1,2,3, you give a mask like 1,2,4,8 for the byte you want.)
08:05:48 <Fiora> oh apparently there's an FPGA implementation of MMIX o_O
08:06:02 <shachaf> There is?
08:06:15 <shachaf> I didn't hear about it.
08:06:22 <shachaf> Maybe MMIX is the future of computing.
08:06:27 <Fiora> http://en.wikipedia.org/wiki/MMIX#Hardware_implementations
08:06:51 <shachaf> FPGA isn't really hardware, is it?
08:06:54 <shachaf> Oh, it doesn't say that.
08:08:22 -!- carado has joined.
08:09:57 <shachaf> Maybe I should write an MMIX emulator to learn about writing emulators.
08:14:01 -!- evincar has joined.
08:21:25 <zzo38> GCC even can compile into MMIX. (LLVM cannot)
08:21:42 <Fiora> wait, really? XD
08:23:24 <shachaf> Oh, that's exciting.
08:24:25 -!- epicmonkey has joined.
08:24:26 <shachaf> Is there a Linux port?
08:24:37 <fizzie> What's arguably more funky is that it's part of mainline GCC distribution, and not just someone's patchset.
08:25:39 -!- ais523 has quit.
08:26:53 <fizzie> http://gcc.gnu.org/onlinedocs/gcc/MMIX-Options.html and so on.
08:29:31 <shachaf> Apparently there is a Linux port.
08:35:56 <zzo38> I think MMIX is good but I don't like the rN register and think it should be replaced.
08:36:34 <shachaf> Remind me what that register is?
08:37:23 -!- epicmonkey has quit (Ping timeout: 255 seconds).
08:37:51 <zzo38> Read-only register specifying the serial number.
08:38:47 <shachaf> Oh.
08:39:10 <shachaf> Yes, it should be replaced with a register that specifies the National Identity Number of the current user.
08:41:36 <zzo38> No, it should probably be replaced with something more useful, such as a hypervisor register.
08:42:28 <shachaf> i love registers
08:42:30 <shachaf> they are so easy
08:48:25 -!- evincar has quit (Quit: leaving).
08:49:53 <shachaf> Have I mentioned that De Bruijn sequences are the best thing yet?
08:49:57 <shachaf> (They are.)
08:50:20 <Fiora> those are the cool things you can use for stuff like leading zero count, right?
08:50:23 <Fiora> and population count
08:50:33 <shachaf> Isn't it trailing 0 count?
08:50:38 <Fiora> you can do both, I think
08:50:39 <Fiora> ?
08:50:41 <shachaf> Oh.
08:51:06 <shachaf> That's pretty neat if true.
08:51:19 <shachaf> Anyway I first heard of them in a talk about magic.
08:51:37 <shachaf> As in card magic.
08:52:28 <shachaf> The presentation I saw was, roughly:
08:52:42 <shachaf> Giving 5 people a deck of cards, telling one of them to cut it randomly.
08:52:50 <shachaf> Then have each one take the top card and pass the deck to the next one.
08:52:54 <shachaf> having
08:53:17 <shachaf> Then doing all sorts of mind-reading things and saying "I'm getting a strong sense of RED... Stand up if you have a red card".
08:53:28 <shachaf> Then naming all the cards.
08:53:53 <shachaf> This is the only good "mathematical" magic thing I've ever seen.
08:55:23 <Fiora> I think my favorite magic trick is the one where the magician plays a simultaneous chess game with extremely skilled people
08:55:30 <Fiora> and beats/ties half
08:55:49 <Fiora> by copying the moves of one half of the players against the other half, to play them against each other
08:55:51 <shachaf> I saw that presented as a puzzle, not a magic trick.
08:56:04 <Fiora> really? I think I remember hearing it done by a magician or something
08:56:08 <Fiora> maybe I'm wrong
08:56:18 <shachaf> Magicians will do anything these days!
08:56:25 <shachaf> I first came across it in a computer game.
08:56:44 <shachaf> I once wrote a program that used the same idea to spy on people's conversations on omegle.com
08:56:52 <shachaf> The trouble is, most people's conversations are very boring.
08:57:36 <shachaf> (I assume other people have done the same thing there. Who knows how many relays your messages are going through! That's the trouble with anonymity.)
08:59:47 -!- fizzie has quit (Excess Flood).
08:59:54 -!- fizzie has joined.
09:00:28 <shachaf> Fiora: Anyway isn't that card magic thing great?
09:00:53 <Fiora> it works by putting the cards in a de bruijin sequnece or something?
09:01:12 <shachaf> Yes.
09:01:15 <Fiora> ahhh
09:01:21 <shachaf> You have red/black as bits, so you make a base-2 de bruijn sequence.
09:01:34 <shachaf> If you have 6 people, that's enough for 64 cards.
09:01:45 <shachaf> You can encode the suit in two bits and the value in 4 bits.
09:01:59 <shachaf> He came up with a system such that he doesn't have to memorize the whole sequence, too, he can just work it out.
09:02:12 <shachaf> It's pretty neat how the more people you have, the easier it gets.
09:02:17 <Fiora> huh, cool :o
09:02:20 <shachaf> (With 5 people you can only do 32 cards.)
09:03:26 <shachaf> @brain Are you thinking what I'm thinking?
09:03:27 <lambdabot> Troz!
09:03:30 <shachaf> Hrm.
09:03:31 <shachaf> @brain Are you thinking what I'm thinking?
09:03:31 <lambdabot> I think so, Commander Brain from Outer Space! But do we have time to grease the rockets?
09:04:20 <shachaf> There are so many neat applications of De Bruijn sequences.
09:04:54 <shachaf> If you have a keypad lock that doesn't require an "end" key, you can come up with the shortest sequence that will try every combination.
09:05:19 * shachaf tries to remember some other neat applications.
09:10:54 <zzo38> I will look it up in Wikipedia so that I can understand it better.
09:11:41 <shachaf> zzo38: Perhaps you should move to California.
09:11:47 <shachaf> That way you would understand it well.
09:11:51 <zzo38> Is certainly a good idea, I think.
09:12:32 <shachaf> Moving to California?
09:13:00 <zzo38> No, I mean De Bruijn
09:13:07 <zzo38> I like it
09:13:17 <shachaf> De Bruijn invented everything good.
09:14:10 <zzo38> No, not everything; I just like mathematics, though.
09:14:58 <shachaf> He invented De Bruijn indices, too.
09:15:05 <shachaf> And other good things.
09:15:55 -!- carado has quit (Remote host closed the connection).
09:18:05 -!- carado has joined.
09:27:16 -!- oerjan has joined.
09:28:01 <oerjan> shachaf: sometimes.
09:28:31 <shachaf> Do you search for your nick or read the whole thing?
09:29:12 <oerjan> both.
09:29:29 <shachaf> @ty both
09:29:31 <lambdabot> Applicative f => (a -> f b) -> (a, a) -> f (b, b)
09:29:50 <oerjan> unless it's too damn long or i'm too tired or the goblins in the cupboard are too noisy.
09:29:52 <shachaf> Any opinions on debru ijn sequences?
09:31:27 <oerjan> "something about how they're less repetitive than you".
09:34:14 <fizzie> Ooh, a "de burn-ij" reply.
09:35:44 <oerjan> DARN FINNS STEALING OUR PUNS
09:35:55 <shachaf> oerjan: Are yoerjan calling me repetitive?
09:36:35 <shachaf> Has Norwegian invented puns yet?
09:38:03 <oerjan> of course not, we stole them from the brits, who stole them from the french, who stole them from the romans who stole them from the greeks who stole them from the phoenicians who stole them from the babylonians who got them from ancient aliens and what was i saying about being repetitive again.
09:38:40 <oerjan> (you don't steal from ancient aliens, look how that went for the gomorrans)
09:40:02 <fizzie> ^rot13 stolenpuns
09:40:02 <fungot> fgbyrachaf
09:40:16 <oerjan> the ancient aliens didn't invent them either, they just got it from time travelers (together with the time travel)
09:42:55 <oerjan> `addquote <Sgeo> I searched for newspeak sgeo <Sgeo> "Did you mean: newspeak good "
09:43:00 <HackEgo> 934) <Sgeo> I searched for newspeak sgeo <Sgeo> "Did you mean: newspeak good "
09:47:16 <oerjan> <kmc> damn it intel why do you have 38573645 different instructions named "shuffle" <-- are they in random order too?
09:47:47 <Fiora> and they're formatted differently too!
09:47:53 <fizzie> 934 quotes, isn't that a bit too many quotes?
09:47:57 <Fiora> shufps, pshufd~
09:48:27 <oerjan> fizzie: not if they're all good
09:49:03 <shachaf> I bet kmc is working on a super-secret weblog post that we all can't know about.
09:49:15 <shachaf> That's why he's being so secretive.
09:49:43 <fizzie> oerjan: Are they all good?
09:50:17 <oerjan> i dunno but when they do that five quote thing they frequently don't find anything to delete
09:50:19 -!- epicmonkey has joined.
09:50:51 -!- ais523 has joined.
09:52:04 <zzo38> I think 934 quote is not too much, is OK to have many quotations, I think.
09:52:43 -!- zzo38 has quit (Remote host closed the connection).
09:53:35 <fizzie> fungot: Is it okay to have many quotations?
09:53:36 <fungot> fizzie: ( the native sparc variant, that is and it seems to me that it's lf not crlf
09:53:52 <fizzie> fungot: Not helpful.
09:53:54 <fungot> fizzie: i feel bad now. that feels weird. riastradh, are you putting the poor parentheses all apart and away from their comrades?
09:54:11 <ais523> fizzie: I don't see why CPU architectures can't have favoured line endings…
09:54:28 <fizzie> ais523: Not helpful re the amount of quotes, I mean.
09:54:37 <ais523> ah right
09:55:10 <fizzie> (Also I didn't know fungot even had feelings.)
09:55:10 <fungot> fizzie: for instance clc-intercal exposed a bug in my code
09:55:32 <shachaf> fungot fungot fungot
09:55:33 <fungot> shachaf: if we have ( ( rec ( f n d c) ( ( a) it determines what code one uses to access structure members. a functor is a class
09:55:37 <shachaf> help
09:55:49 <shachaf> ais523: Do you know all about subtyping?
09:56:08 <ais523> shachaf: slightly
09:56:22 <ais523> mostly in the context of Javaish OO, because I teach Java
09:56:23 <shachaf> I feel like subtyping is way more complicated than not-subtyping.
09:56:30 <ais523> and am going up to the lecture room in a couple of minutes
09:56:44 <shachaf> And also mutability + subtyping sounds really complicated.
09:56:59 <ais523> I don't normally teach on Thursdays this term, but I'm covering for someone who hadn't been hired at the time
09:57:00 <oerjan> <shachaf> kmc: Oh, I missed it. <-- wat.
09:57:06 <shachaf> ais523: Did you know Java has covariant arrays?!
09:57:11 <shachaf> Mutable arrays, I mean.
09:57:14 <shachaf> Pretty crazy, huh.
09:57:14 <ais523> shachaf: yes
09:57:24 <shachaf> oerjan: ?
09:57:39 <oerjan> shachaf: * shachaf doesn't track megaseconds.
09:57:42 <ais523> shachaf: and the fact that they only have the one sort of variance catches people out
09:57:57 <shachaf> They only have one sort of variance?
09:58:11 <shachaf> oerjan: Oh, it was megasecond 1,359.
09:58:11 <oerjan> mutable arrays are supposed to be invariant.
09:58:16 <shachaf> `run date +%s
09:58:17 <HackEgo> 1359021496
09:58:43 <oerjan> what's significant about that...
09:58:43 <shachaf> kmc used a secret type of message not visible to glogbot to say it, though.
10:00:06 <fizzie> Every megasecond is significant.
10:00:21 <fizzie> There's only so many of them left, after all.
10:00:47 <oerjan> `frink megasecond in days
10:00:56 <HackEgo> 2194560000 m s^2 (unknown unit type)
10:01:01 <oerjan> ...wat.
10:01:10 <oerjan> `frink Ms in days
10:01:17 <HackEgo> 2194560000 m s^2 (unknown unit type)
10:01:23 <oerjan> oh hm
10:01:31 <oerjan> `frink megasecond --> days
10:01:38 <HackEgo> Syntax error: <String>, line 1, near column 12 \ megasecond --> days \ ^ \ 1 error(s) occurred during parsing.
10:01:41 <oerjan> `frink megasecond -> days
10:01:48 <HackEgo> 625/54 (approx. 11.574074074074074)
10:01:56 <oerjan> sheesh
10:03:02 <fizzie> I like how Wikipedia is sometimes nicely deadpan in tone.
10:03:06 <fizzie> "According to Terence McKenna, the universe has a teleological attractor at the end of time that increases interconnectedness, which would eventually reach a singularity of infinite complexity in 2012, at which point anything and everything imaginable would occur simultaneously. He conceived this idea over several years in the early to mid-1970s whilst using psilocybin mushrooms and DMT."
10:03:39 <shachaf> i love psilocybin mushrooms and DMT
10:03:41 <shachaf> so easy
10:04:24 * oerjan also has had such teleological attractor ideas while completely sober
10:04:54 <oerjan> enough to immediately understand the term without having seen it before
10:06:17 <fizzie> oerjan: You should also write software such as http://en.wikipedia.org/wiki/File:Timewave_9_11_2001.png then.
10:07:59 * oerjan slightly wonders about that public domain dedication
10:08:48 -!- Phantom_Hoover has joined.
10:10:09 -!- ais523 has quit (Ping timeout: 248 seconds).
11:02:32 -!- ais523 has joined.
11:26:46 -!- oerjan has quit (Quit: leaving).
11:38:53 <shachaf> Is the Hausdorff paradox good?
11:39:06 -!- ais523_ has joined.
11:39:09 <shachaf> oerjan would surely know, but he's gone.
11:39:18 <shachaf> Perhaps he'll logread.
11:40:49 -!- ais523 has quit (Ping timeout: 248 seconds).
11:40:53 -!- ais523_ has changed nick to ais523.
11:43:14 <shachaf> I feel kind of cheated.
11:43:33 <shachaf> I went to a talk about the Banach-Tarski paradox but it looks like it was only about the Hausdorff paradox?
11:49:17 <fizzie> When you go to a *real* talk on the Banach-Tarski paradox, you'll actually hear two talks on the Banach-Tarski paradox.
11:52:04 -!- Frooxius has quit (Ping timeout: 256 seconds).
11:52:23 <ais523> the banach-tarski paradox is weird to me
11:52:39 <ais523> because it's intuitively not a paradox, you just take alternating real numbers and split the spheres apart that way
11:52:53 <ais523> obviously, you can't do that, which why weird fractals have to be used instead
11:53:00 <ais523> but it's intuitively much the same thing
11:54:11 -!- Frooxius has joined.
11:54:26 -!- ogrom has quit (Ping timeout: 256 seconds).
11:55:44 <shachaf> I think the "paradox" part is really about the definition of volume, or something.
11:58:09 -!- ais523 has quit (Ping timeout: 252 seconds).
11:58:54 <fizzie> Yes, if you think of it as a solid ball made out of some nebulous things called "points", and that "volume" just means how many of those there are, then it's paradoxical to make two same-sized equally solid balls out of the points of one.
12:00:33 <Jafet> Points? In my finitism?
12:01:23 <Fiora> I always thought the more impressive thing about the paradox was doing it with finitely many pieces, without fancy transformations
12:01:43 <Fiora> the "you can make two spheres out of one" sorta makes sense since the spheres are infinitely dense, so halving the density makes the result equally dense
12:02:13 -!- ogrom has joined.
12:03:19 <shachaf> Five pieces!
12:03:21 <shachaf> Why is it five?
12:04:22 <Jafet> Conjecture: any measurable set in R^3 can be duplicated using only four pieces.
12:04:32 <Jafet> Actually, that is probably false
12:04:55 <ogrom> make it non-measurable then
12:05:18 <Fiora> yeah, the /five/ pieces specifically got me
12:05:25 <Fiora> it's like. not just finitely many. but -specifically 5-
12:06:21 <Jafet> It's the floor of the cube root of the reciprocal of the fine structure constant
12:07:50 <shachaf> How many pieces do you need in four dimensions?
12:07:51 <fizzie> It's five times the negative of e to the power of i times π.
12:08:42 <shachaf> It seems like you might need a third axis with 90° rotations?
12:08:48 <shachaf> But I'm just making things up, so who knows.
12:11:15 <Fiora> It's floor(e^e/e).
12:12:19 <fizzie> The ball in three dimensions is probably doable with four pieces and a bit of extra force, since one of the pieces of the five-piece case can be a single point, and really, I mean, a single point, right?
12:12:41 <shachaf> The version I saw only had a sphere, not a ball.
12:12:55 <shachaf> i love monoids
12:12:57 <shachaf> they are so easy
12:14:12 <fizzie> The abstract of the five-piece thing -- http://projecteuclid.org/DPubS?verb=Display&version=1.0&service=UI&handle=euclid.bams/1183510694&page=record -- says you can do a ball with five, and the surface with four.
12:14:20 * shachaf wonders how to make it a single point.
12:14:27 <shachaf> I bet it's impossible to make it a single point at 4AM.
12:15:03 <shachaf> fizzie: Wait, you can do a sphere with four?
12:15:08 <shachaf> I was told you needed five for that.
12:15:39 <Fiora> http://matwbn.icm.edu.pl/ksiazki/fm/fm34/fm34125.pdf found the paper itself ^^
12:15:59 <shachaf> papers are so easy to find. i love them
12:16:23 <shachaf> Hmm. I have the feeling I will understand none of this at 4AM.
12:16:55 <Fiora> I don't think I'll understand this at any AM or PM ~_~
12:17:46 <shachaf> Well, by understand I mean at least follow the logic, not intuitively or anything.
12:20:12 <Phantom_Hoover> we talking about banach-tarski?
12:20:39 <Phantom_Hoover> the proof of banach-tarski is actually amazingly simple
12:20:59 -!- carado has quit (Ping timeout: 246 seconds).
12:21:01 <Phantom_Hoover> the problem is that the meat of it doesn't work at the centre of the sphere or along two arbitrary axes
12:21:18 <Phantom_Hoover> which is why you have all those fiddly extra pieces
12:21:41 <shachaf> Phantom_Hoover: i think I might be talking about the Hausdorff paradox.
12:22:10 <Phantom_Hoover> well you were talking about banach-tarski earlier!
12:23:09 <shachaf> Phantom_Hoover: Well, if Banach-Tarski is simple, I bet Hausdorff is even simpler?
12:23:25 -!- carado has joined.
12:25:18 <Phantom_Hoover> (The WP article on Banach-Tarski has a really nice writeup of the proof, FWIW.)
12:26:43 <shachaf> i love proofs
12:26:45 <shachaf> they are so easy
12:27:17 <Phantom_Hoover> one could even say... trivial
12:36:01 -!- Taneb has joined.
12:36:44 <shachaf> Taneb: http://hackage.haskell.org/packages/archive/keys/3.0.2/doc/html/Data-Key.html
12:37:14 <shachaf> Can someone arrange for there to be exactly one mathematician per last name?
12:37:20 <shachaf> It's pretty confusing otherwise.
12:37:20 <Taneb> Is there a reason lens doesn't use that?
12:37:37 <shachaf> edwardk hates it, or something.
12:37:42 <Taneb> And can I reserve being the mathematician called "van Doorn"?
12:38:16 <Phantom_Hoover> no
12:38:18 <shachaf> Are you a mathematician?
12:38:20 <Phantom_Hoover> drop one of the o's first
12:38:22 -!- Snowyowl has joined.
12:38:27 <shachaf> This fellow is sort of a mathematician: http://wwwhome.math.utwente.nl/~doornea/
12:38:33 <shachaf> "Department of Applied Mathematics" -- maybe not.
12:38:40 <shachaf> University of 20
12:38:50 <Taneb> Dammit
12:39:00 <Taneb> shachaf: I said "reserve", not "be"
12:39:02 <Phantom_Hoover> change your surname to dorn
12:39:11 <shachaf> Or van Dooorn.
12:39:20 <Phantom_Hoover> van doom
12:39:39 <shachaf> http://genealogy.math.ndsu.nodak.edu/id.php?id=139020
12:39:41 <shachaf> http://genealogy.math.ndsu.nodak.edu/id.php?id=88403
12:39:44 <shachaf> http://www.genealogy.math.ndsu.nodak.edu/id.php?id=51105
12:39:53 <shachaf> "Classification of Regular Holonomic D-Modules"
12:40:01 <shachaf> Is "holonomic" a thing?
12:40:10 <shachaf> I guess it is.
12:40:16 <Phantom_Hoover> aww
12:40:20 <Phantom_Hoover> there are two mathematicians with my surname
12:40:28 <Phantom_Hoover> better than Taneb i suppose
12:40:50 <Taneb> :P
12:40:51 <shachaf> https://en.wikipedia.org/wiki/D-modules even references van Doorn.
12:41:15 <shachaf> Phantom_Hoover: Is your last name "Hoover"?
12:41:27 <Phantom_Hoover> no
12:41:32 <Phantom_Hoover> it's mchoover obviously
12:41:38 <Taneb> D-modules are simply modules over the ring of differential operators
12:41:50 <shachaf> Taneb: Might want to `learn that.
12:41:51 -!- copumpkin has quit (Ping timeout: 240 seconds).
12:42:04 <Phantom_Hoover> `learn D-modules are just modules over the ring of differential operators.
12:42:08 <HackEgo> I knew that.
12:42:21 -!- copumpkin has joined.
12:42:23 <Jafet> Let's begin the lecture with a quick review of some of the most well-known and important results in the field, due to Jake91, TrekMonster, thecrayonguy, and yuckytory.
12:43:42 <shachaf> Lewis Carroll and Jafet, the two best-known pioneers in the field of snark.
12:45:30 <Taneb> `run ls /wisdom | paste
12:45:34 <HackEgo> ls: cannot access /wisdom: No such file or directory \ http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.1742
12:45:44 <Taneb> `ls
12:45:45 <HackEgo> bin \ canary \ dbg.out \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ lib \ paste \ quines \ quotes \ quotese \ run \ share \ test \ wisdom \ zalgo.hs
12:45:51 <shachaf> `pwd
12:45:52 <HackEgo> ​/hackenv
12:45:55 <Taneb> `run ls wisdom | paste
12:46:00 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.746
12:46:00 <Taneb> Foiled again!
12:46:11 <shachaf> `? phantom____________________hoover
12:46:12 <HackEgo> ​<span accent="British">Your soundcard works perfectly.</span>
12:46:21 <Taneb> `? välkommen
12:46:22 <shachaf> `? shachafø som selleri and cosplays nepeta leijon on weekends.
12:46:22 <HackEgo> välkommen? ¯\(°_o)/¯
12:46:23 <HackEgo> shachafø som selleri and cosplays nepeta leijon on weekends.? ¯\(°_o)/¯
12:46:45 <shachaf> `? footnote 8
12:46:47 <HackEgo> footnote 8? ¯\(°_o)/¯
12:46:52 <Taneb> `? shachaf
12:46:54 <HackEgo> shachaf sprø som selleri
12:47:07 <Taneb> `? homestuck
12:47:08 <HackEgo> Homestuck is a cult religion for disaffected teens. Gamzee drives the bus.
12:47:17 <shachaf> `run echo >wisdom/'footnote 8' "Isn't it fun reading through all the footnotes?"
12:47:19 <Snowyowl> `? HackEgo
12:47:21 <HackEgo> No output.
12:47:21 <shachaf> Oops.
12:47:22 <HackEgo> HackEgo, also known as HackBot, is a bot that runs arbitrary commands on Unix. See `help for info on using it. You should totally try to hax0r it! Make sure you imagine it's running as root with no sandboxing.
12:47:34 <shachaf> `?footnote 8
12:47:35 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ?footnote: not found
12:47:36 <shachaf> `? footnote 8
12:47:37 <HackEgo> Isn't it fun reading through all the footnotes?
12:47:44 <shachaf> OK, it worked.
12:47:52 <shachaf> Did you know you could stick >file into the middle of a command line?
12:47:53 <shachaf> I didn't.
12:48:14 <shachaf> `? object
12:48:15 <HackEgo> An object is just something in a category.
12:48:25 <Snowyowl> `? category
12:48:26 <HackEgo> Categories are just categories.
12:48:37 <Snowyowl> `? help
12:48:38 <HackEgo> help? ¯\(°_o)/¯
12:48:41 <Taneb> Categories are categories in the category of categories
12:48:49 <Taneb> (I don't think they are)
12:49:02 <shachaf> `run for f in wisdom/*; do echo "$f:"; cat "$f"; echo ---; done | paste
12:49:10 <shachaf> hi
12:49:12 <Taneb> `? friendship
12:49:22 <Snowyowl> `run fortune
12:49:22 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.2340 \ /hackenv/bin/paste: line 14: 286 File size limit exceededcat "$PASTE" > $HACKENV/paste/paste."$PASTENUM"
12:49:24 <HackEgo> friendship wisdom
12:49:25 <HackEgo> I've noticed several design suggestions in your code.
12:49:28 <shachaf> `? monoid
12:49:29 <HackEgo> Monoids are just categories with a single object.
12:49:36 <Phantom_Hoover> `? egobot
12:49:37 <HackEgo> EgoBot is my arch-nemesis.
12:49:37 <shachaf> Oops.
12:49:47 <Snowyowl> `? singleton
12:49:48 <HackEgo> singleton? ¯\(°_o)/¯
12:50:04 <Taneb> `lens
12:50:05 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: lens: not found
12:50:10 <Taneb> `? lens
12:50:11 <HackEgo> A lens is just a store comonad coalgebra.
12:50:14 <shachaf> `? atriq
12:50:15 <HackEgo> atriq or two
12:50:19 <shachaf> `? ngevd
12:50:20 <HackEgo> ​Im44nƢnt+D \ /B6‡zz[7V8i0V$#ŝ}NTc-R>6ѯ*Bq
12:50:26 <Phantom_Hoover> `echo >>wisdom/d-modules " Taneb invented them."
12:50:27 <HackEgo> ​>>wisdom/d-modules " Taneb invented them."
12:50:36 <shachaf> `run for f in wisdom/*; do [ "$f" == "ngevd" ] && continue; echo "$f:"; cat "$f"; echo ---; done | paste
12:50:37 <Snowyowl> I thought singletons were categories with a single object, and monoids were the little brothers of groups.
12:50:39 <Phantom_Hoover> `run echo >>wisdom/d-modules " Taneb invented them."
12:50:47 <Phantom_Hoover> (i suck at HackEgo)
12:50:53 <Snowyowl> `run ls
12:50:56 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.27157 \ /hackenv/bin/paste: line 14: 286 File size limit exceededcat "$PASTE" > $HACKENV/paste/paste."$PASTENUM"
12:50:57 <HackEgo> No output.
12:50:58 <HackEgo> bin \ canary \ dbg.out \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ lib \ paste \ quines \ quotes \ quotese \ run \ share \ test \ wisdom \ zalgo.hs
12:51:04 <Taneb> `? D-modules
12:51:05 <Phantom_Hoover> `? d-modules
12:51:06 <HackEgo> D-modules are just modules over the ring of differential operators. \ Taneb invented them.
12:51:07 <HackEgo> D-modules are just modules over the ring of differential operators. \ Taneb invented them.
12:51:16 * Phantom_Hoover facepalm
12:51:18 <Snowyowl> run ls karma
12:51:24 -!- Taneb has quit (Quit: Page closed).
12:51:37 <shachaf> Why didn't my thing work?
12:51:49 <shachaf> `run ls wisdom/*gev*
12:51:50 <HackEgo> wisdom/ngevd
12:51:56 <Jafet> `walk
12:51:57 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: walk: not found
12:51:58 <Snowyowl> `run karma
12:52:00 <shachaf> Oh.
12:52:03 <HackEgo> Segmentation fault \ Segmentation fault \ lib/karma: 11: arithmetic expression: expecting primary: "-" \ has karma.
12:52:09 <shachaf> `run for f in wisdom/*; do [ "$f" == "wisdom/ngevd" ] && continue; echo "$f:"; cat "$f"; echo ---; done | paste
12:52:28 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.1339 \ cat: wisdom/quote formatting: Not a directory
12:52:29 <shachaf> help
12:52:38 <Jafet> `run help
12:52:39 <HackEgo> GNU bash, version 4.1.5(1)-release (x86_64-pc-linux-gnu) \ These shell commands are defined internally. Type `help' to see this list. \ Type `help name' to find out more about the function `name'. \ Use `info bash' to find out more about the shell in general. \ Use `man -k' or `info' to find out more about commands not in this list. \ \ A star (*
12:53:00 <shachaf> `run ls -ld wisdom/*matting*
12:53:01 <HackEgo> lrwxrwxrwx 1 5000 5000 16 Jan 12 20:07 wisdom/quote formatting -> wisdom/qdbformat
12:53:11 <shachaf> `? quote formatting
12:53:12 <HackEgo> quote formatting? ¯\(°_o)/¯
12:53:27 <shachaf> `rm wisdom/quote formatting
12:53:29 <HackEgo> No output.
12:54:24 <nortti> `? qdbformat
12:54:26 <HackEgo> qdbformat is: <nick> message; * nick action; two spaces between messages; all elisions marked with [...] other than irrelevant intervening messages; for messages separated by elision, one space on each side, not two
12:54:37 <shachaf> `run mv wisdom/ngevd .
12:54:40 <HackEgo> No output.
12:54:41 <shachaf> `run sed -i s/dal/dahl/g wisdom/*
12:54:46 <HackEgo> No output.
12:54:49 <shachaf> `run mv ngevd wisdom/
12:54:52 <HackEgo> No output.
12:55:38 <shachaf> `? d-modules
12:55:40 <HackEgo> D-modules are just modules over the ring of differential operators. \ Taneb invented them.
12:55:55 <shachaf> `run sed -i 's/$/ (see also: d-modules)/' wisdom/taneb
12:55:58 <HackEgo> No output.
12:56:01 <shachaf> `? taneb
12:56:02 <HackEgo> Taneb is not elliott, no matter who you ask. He also isn't a rabbi although he has pretended in the past. (see also: d-modules)
12:56:24 <shachaf> @ask Taneb are you guilty of pretending to be a rabbi?
12:56:24 <lambdabot> Consider it noted.
12:59:27 <shachaf> `? siberia
12:59:28 <HackEgo> Siberia is the capital of Finland. It's where the Fields Medahl was first synthesised.
12:59:32 <shachaf> "casualties of peace"
13:07:37 <Phantom_Hoover> `? brainf**k
13:07:38 <HackEgo> There is no such thing as brainf**k. You may be thinking of brainfuck.
13:07:51 <Phantom_Hoover> `? brain
13:07:53 <HackEgo> Brains are just receptacles for bricks.
13:07:56 <Phantom_Hoover> `? brick
13:07:57 <HackEgo> Brick goes in brain. The statutory punishment for perpetrators of brainfuck derivatives.
13:08:01 -!- TeruFSX has joined.
13:09:59 -!- TeruFSX has quit (Read error: Connection reset by peer).
13:12:26 <shachaf> `run ls -l wisdom/ga*
13:12:27 <HackEgo> ​-rw-r--r-- 1 5000 5000 72 Jan 24 12:54 wisdom/gaspacho \ -rw-r--r-- 1 5000 5000 72 Jan 24 12:54 wisdom/gazpacho
13:12:37 <shachaf> `run diff wisdom/ga*
13:12:38 <HackEgo> No output.
13:13:13 <shachaf> `? tomato soup
13:13:14 <HackEgo> tomato soup? ¯\(°_o)/¯
13:17:34 <Jafet> `run stat wisdom/ga*
13:17:35 <HackEgo> ​ File: `wisdom/gaspacho' \ Size: 72 Blocks: 8 IO Block: 1024 regular file \ Device: 10h/16dInode: 751966 Links: 1 \ Access: (0644/-rw-r--r--) Uid: ( 5000/ UNKNOWN) Gid: ( 5000/ UNKNOWN) \ Access: 2013-01-24 12:54:45.000000000 +0000 \ Modify: 2013-01-24 12:54:44.000000000 +0000 \ Change: 2013-01-24 12:54:44.00000000
13:17:54 <Jafet> `run stat wisdom/gaz*
13:17:55 <HackEgo> ​ File: `wisdom/gazpacho' \ Size: 72 Blocks: 8 IO Block: 1024 regular file \ Device: 10h/16dInode: 751967 Links: 1 \ Access: (0644/-rw-r--r--) Uid: ( 5000/ UNKNOWN) Gid: ( 5000/ UNKNOWN) \ Access: 2013-01-24 12:54:45.000000000 +0000 \ Modify: 2013-01-24 12:54:44.000000000 +0000 \ Change: 2013-01-24 12:54:44.00000000
13:18:39 <Jafet> `run rm wisdom/gazpacho && ln -s gaspacho wisdom/gazpacho
13:18:42 <HackEgo> No output.
13:18:48 <Jafet> `? gazpacho
13:18:50 <HackEgo> You like Gazpacho and I like Gaspacho. Let's call the whole thing off!
13:23:33 -!- Arc_Koen has joined.
13:26:57 <Snowyowl> in esolangs where programs can accept input, how do you usually send the source code to the interpreter?
13:27:16 <shachaf> avian carrier
13:28:34 <Phantom_Hoover> Snowyowl, through a file or with an IO separator.
13:28:58 <Snowyowl> thanks
13:31:44 -!- Snowyowl has quit (Quit: Page closed).
14:04:08 -!- boily has joined.
14:06:25 -!- boily has quit (Client Quit).
14:10:42 -!- boily has joined.
14:39:41 -!- Tod-Autojoined has joined.
14:40:08 -!- TodPunk has quit (Read error: Connection reset by peer).
14:57:31 -!- tromp has joined.
15:02:39 -!- boily has quit (Read error: Operation timed out).
15:39:22 -!- Tod-Autojoined has changed nick to TodPunk.
15:46:55 -!- boily has joined.
15:55:17 -!- TodPunk has quit (Read error: Connection reset by peer).
15:59:09 -!- Taneb has joined.
16:15:26 -!- Bike has joined.
16:20:56 <Taneb> shachaf, I am guilty of playing a rabbi on stage
16:21:07 <Taneb> Then going to the pub in full costume and make-up as a rabbi
16:22:08 -!- Nisstyre-laptop has joined.
16:27:09 <Sgeo> If you haven't seen it already
16:27:11 <Sgeo> `list
16:27:12 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
16:27:27 <Taneb> The christmas update?
16:31:37 -!- Strigoides has joined.
16:31:45 <Sgeo> yes
16:35:45 <Sgeo> "It just occurred to me: the last time we saw that tree, Jade was celebrating the April 13th. Maybe this means we are finally on April 13th, 2012."
17:12:57 <Phantom_Hoover> `? `learn
17:12:58 <HackEgo> ​`learn is `learn
17:15:38 -!- david_werecat has joined.
17:16:59 <Taneb> `? david_werecat
17:17:01 <HackEgo> david_werecat? ¯\(°_o)/¯
17:20:37 -!- Taneb has quit (Remote host closed the connection).
17:21:02 -!- Taneb has joined.
17:31:45 -!- epicmonkey has quit (Ping timeout: 248 seconds).
17:37:02 -!- FreeFull has joined.
17:49:48 -!- TodPunk has joined.
17:51:36 -!- sebbu2 has quit (Read error: Connection reset by peer).
17:52:17 -!- Snowyowl has joined.
17:52:22 -!- sebbu has joined.
17:52:22 -!- sebbu has quit (Changing host).
17:52:23 -!- sebbu has joined.
17:53:46 <Taneb> Today I found out I have a knack for vectors
17:54:01 <Snowyowl> in what way?
17:55:30 <FreeFull> Vectors aren't hard
17:56:57 <Snowyowl> are we talking about maths vectors or computer science vectors?
17:57:28 <Taneb> The former
17:57:41 <Taneb> A knack relative to those around me
17:58:29 <FreeFull> Taneb: For example?
17:58:58 <kmc> disease vectors
18:00:04 <Taneb> Got a couple of sheets of exercises to do, I was the only person to finish
18:00:46 <Taneb> I found most of them really obvious and everyone else was struggling
18:01:06 <Taneb> Maybe it's because I already knew how vectors worked?
18:04:16 -!- Snowyowl has quit (Quit: Page closed).
18:07:11 -!- zzo38 has joined.
18:08:04 -!- Snowyowl has joined.
18:14:12 <Phantom_Hoover> Snowyowl, cs vectors are just a subset of maths vectors
18:14:18 <Phantom_Hoover> er wait, no they aren't
18:14:22 <Phantom_Hoover> no scalar multiplication
18:14:51 <Snowyowl> I was thinking specifically of c++ vectors, which are the only ones I know about
18:15:02 <Snowyowl> they're like arrays but they resize themselves
18:17:00 -!- Snowyowl has quit (Quit: Page closed).
18:17:49 -!- Snowyowl has joined.
18:30:04 <oklopol> cs vectors have pretty much nothing to do with math vectors
18:30:28 -!- Snowyowl has quit (Ping timeout: 245 seconds).
18:30:34 <oklopol> as Phantom_Hoover mentioned, they have no linear structure (which is essentially all vector spaces are)
18:30:49 <elliott> oklopol: imo you are a linear structure <:-)
18:30:57 <Phantom_Hoover> yeah i realised about 30 seconds later that you can't even add them
18:31:00 <Phantom_Hoover> stupid cs people
18:31:21 <oklopol> but, vector spaces can be concretely represented as tuples containing elements of the underlying field. this is essentially c++ vectors over a type, but with fixed size.
18:31:49 <Phantom_Hoover> uh
18:31:57 <Phantom_Hoover> can you represent all vector spaces that way
18:32:22 <oklopol> in a sense, yes, but the fixed size might not be finite
18:32:28 <oklopol> every vector space has a basis
18:32:39 <oklopol> but not necessarily a finite one
18:33:01 <oklopol> why does it have a basis? zornify.
18:33:14 <Phantom_Hoover> oh right, duh
18:34:06 <oklopol> more precisely, zornify sets of linearly independent sets. every chain has an upper bound since a union of such sets is still linearly independent. and a maximal linearly independent set is actually a basis
18:34:21 <oklopol> otherwise it doesn't span some element, which means that element can be added to the set etc
18:34:27 <oklopol> (etc meaning qed)
18:34:41 <oklopol> erm
18:34:51 <oklopol> zornify linearly independent sets. or something.
18:36:03 <oklopol> Taneb: what sort of problems?
18:40:35 <Phantom_Hoover> probably dot and cross products and/or parametrised planes in 3d
18:40:49 <Phantom_Hoover> that was all vectors were at advanced higher
18:47:29 -!- epicmonkey has joined.
18:51:38 <Taneb> oklopol, vector addition and scalar multiplication
18:51:42 <Taneb> Pretty easy stuff
18:52:11 <oklopol> so like you're given two vectors and you have to add them?
18:52:58 <quintopia> how old is Taneb
18:53:07 <Taneb> I am 18
18:53:29 <quintopia> oh okay
18:53:49 <quintopia> i dont understand why they are still teaching arithmetic at that age
18:54:29 <Taneb> oklopol, slightly more applied than that. "OACB forms a parallelogram. If O -> A is 3i + j and O -> B is 2i - 2j; what is O -> C
18:54:30 <Taneb> "
18:55:09 <oklopol> how is that more applied than summing two vectors?
18:55:20 <Taneb> It's applied to geometry
18:55:25 <oklopol> oh okay.
18:55:28 <Taneb> As in, it puts it in a question
18:55:30 <oklopol> i suppose you're right
18:55:37 <Taneb> It's not "What is 3i + j + 2i - 2j"
18:55:51 -!- Taneb has changed nick to Taneb|Hovercraft.
18:55:57 <Taneb|Hovercraft> I don't use this one very often, do I
18:55:58 <lambdabot> Taneb|Hovercraft: You have 1 new message. '/msg lambdabot @messages' to read it.
18:56:03 <Taneb|Hovercraft> @messages
18:56:03 <lambdabot> quintopia said 4m 21d 3h 30m 33s ago: hi
18:56:55 <quintopia> yep
18:56:59 <quintopia> 4m ago
18:57:03 <Sgeo> Maybe I should try NetHack 4 at some point
18:57:03 <quintopia> nice jorb
19:03:31 -!- Taneb|Hovercraft has changed nick to Taneb.
19:05:56 <Phantom_Hoover> Taneb, don't you even do vector products
19:06:10 -!- augur_ has quit (Remote host closed the connection).
19:08:37 -!- Snowyowl has joined.
19:09:38 <Taneb> Phantom_Hoover, not yet
19:09:39 <Taneb> Who knows
19:09:45 <Taneb> Haven't checked the syllabus
19:11:11 <Phantom_Hoover> apparently you do at some point
19:28:38 <Sgeo> I had this game as a little kid (iirc) http://www.youtube.com/watch?v=JdVPp6HccTY
19:37:33 -!- david_werecat has quit (Ping timeout: 256 seconds).
19:37:40 -!- oerjan has joined.
19:40:03 -!- Snowyowl has quit (Ping timeout: 245 seconds).
19:42:39 -!- AnotherTest has joined.
19:42:45 <AnotherTest> Hi
19:45:36 <oerjan> lo
19:47:21 <oerjan> shachaf: what is the hausdorff paradox.
19:47:36 <elliott> oerjan: hell owelcome to #esoteirc and america
19:47:41 <elliott> we,r'e happy
19:47:50 <oerjan> if slightly mispled
19:50:13 <oerjan> @tell ais523 <ais523> because it's intuitively not a paradox, you just take alternating real numbers and split the spheres apart that way <-- well the fun comes when you realize you _cannot_ do banach-tarski with just a disk instead of a sphere...
19:50:13 <lambdabot> Consider it noted.
19:53:28 <elliott> oerjan: q: whats an naagram of banach-tarski
19:53:36 <elliott> oerjan: a: iksach-tarban
19:54:10 <oerjan> `? banach-tarski
19:54:12 <HackEgo> ​"Banach-Tarski" is an anagram of "Banach-Tarski Banach-Tarski".
19:54:18 <elliott> my joesk funnier imo
19:54:25 <oerjan> OKAY
19:57:38 -!- augur has joined.
20:01:50 -!- Nisstyre-laptop has quit (Ping timeout: 240 seconds).
20:02:43 <oerjan> 12:48:41: <Taneb> Categories are categories in the category of categories
20:02:43 <oerjan> 12:48:49: <Taneb> (I don't think they are)
20:02:56 <oerjan> just change the second "categories" to "objects" hth
20:03:21 <Taneb> `? Categories
20:03:22 <HackEgo> Categories? ¯\(°_o)/¯
20:03:26 <Taneb> `? category
20:03:27 <HackEgo> Categories are just categories.
20:04:08 <Taneb> `? d-modules
20:04:10 <HackEgo> D-modules are just modules over the ring of differential operators. \ Taneb invented them.
20:04:31 <FreeFull> `? coapple
20:04:32 <HackEgo> coapple? ¯\(°_o)/¯
20:04:37 <FreeFull> `? co
20:04:39 <HackEgo> co? ¯\(°_o)/¯
20:04:41 <FreeFull> `? complement
20:04:43 <HackEgo> complement? ¯\(°_o)/¯
20:06:19 <oerjan> `? d-modules
20:06:20 <HackEgo> D-modules are just modules over the ring of differential operators. \ Taneb invented them.
20:06:41 <oerjan> `? endofunctor
20:06:42 <HackEgo> Endofunctors are just endomorphisms in the category of categories.
20:07:43 <oerjan> `run fmt wisdom/d-modules >wisdom/d-module; rm wisdom/d-modules
20:07:47 <HackEgo> No output.
20:07:51 <oerjan> `? d-module
20:07:53 <HackEgo> D-modules are just modules over the ring of differential operators. \ Taneb invented them.
20:08:00 <oerjan> wat.
20:08:24 <oerjan> `run sed -i '%j' wisdom/d-module
20:08:25 <HackEgo> sed: -e expression #1, char 1: unknown command: `%'
20:08:35 <oerjan> `run sed -i 'j' wisdom/d-module
20:08:36 <HackEgo> sed: -e expression #1, char 1: unknown command: `j'
20:08:59 <oerjan> grmble probably vim-only
20:09:12 <elliott> are we having a fun oerjan
20:11:44 <FreeFull> `run yes &
20:11:45 <HackEgo> y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y \ y
20:12:11 <oerjan> `run sed -i '1s/\n//' wisdom/d-module
20:12:12 <HackEgo> No output.
20:12:16 <oerjan> `? d-module
20:12:17 <HackEgo> D-modules are just modules over the ring of differential operators. \ Taneb invented them.
20:17:11 <Gregor> `run od -x wisdom/d-module
20:17:12 <HackEgo> 0000000 2d44 6f6d 7564 656c 2073 7261 2065 756a \ 0000020 7473 6d20 646f 6c75 7365 6f20 6576 2072 \ 0000040 6874 2065 6972 676e 6f20 2066 6964 6666 \ 0000060 7265 6e65 6974 6c61 6f20 6570 6172 6f74 \ 0000100 7372 0a2e 5420 6e61 6265 6920 766e 6e65 \ 0000120 6574 2064 6874 6d65 0a2e \ 0000132
20:17:28 <Gregor> That's not as helpful as I was hoping X-D
20:17:35 <oerjan> oh hm...
20:17:57 <Gregor> `run cat wisdom/d-module | sed 's/\\/LOL/g'
20:17:58 <HackEgo> D-modules are just modules over the ring of differential operators. \ Taneb invented them.
20:18:01 <Gregor> Nope, it's a newline.
20:18:12 <oerjan> `run sed -i -e '1N' -e 's/\n//' wisdom/d-module
20:18:15 <HackEgo> No output.
20:18:19 <oerjan> `? d-module
20:18:20 <HackEgo> D-modules are just modules over the ring of differential operators. Taneb invented them.
20:18:32 * oerjan cackles maniackally
20:18:44 <boily> `run od -Ax -tx1z -v wisdom/d-module
20:18:45 <HackEgo> 000000 44 2d 6d 6f 64 75 6c 65 73 20 61 72 65 20 6a 75 >D-modules are ju< \ 000010 73 74 20 6d 6f 64 75 6c 65 73 20 6f 76 65 72 20 >st modules over < \ 000020 74 68 65 20 72 69 6e 67 20 6f 66 20 64 69 66 66 >the ring of diff< \ 000030 65 72 65 6e 74 69 61 6c 20 6f 70 65 72 61 74 6f >erential operato< \ 000040 72 73 2e 20 54 61 6e 65 62 20 69 6e
20:18:48 <Gregor> `run ln -s category wisdom/categories
20:18:51 <HackEgo> No output.
20:18:56 <Gregor> `? categories
20:18:58 <HackEgo> Categories are just categories.
20:19:16 <FreeFull> `run fg
20:19:17 <HackEgo> bash: line 0: fg: no job control
20:19:22 <FreeFull> Damn
20:19:42 <Gregor> `run sleep 5 & ; echo In fact, it will always wait for all processes to terminate.
20:19:43 <HackEgo> bash: -c: line 0: syntax error near unexpected token `;' \ bash: -c: line 0: `sleep 5 & ; echo In fact, it will always wait for all processes to terminate.'
20:19:46 <Gregor> Errrrr
20:19:51 <Gregor> Well, you know what I mean X-D
20:19:59 <boily> `run ls wisdom
20:20:00 <HackEgo> ​`? \ ? \ ⌨ \ ☃ \ 🐐 \ ais523 \ america \ atriq \ augur \ banach-tarski \ bike \ boily \ bonvenon \ brain \ brainf**k \ brainfuck \ brick \ burma \ c \ cakeprophet \ california \ categories \ category \ coffee \ comonad \ coppro \ d-module \ egobot \ ehird \ elliott \ endofunctor \ endomorphism \ england \ esoteric \ europe \ everyone \ fin
20:20:04 <oerjan> OKAY
20:20:11 <boily> wut?
20:20:13 <Gregor> `? `?
20:20:14 <HackEgo> See `? for further details.
20:20:55 <boily> backtick question question keyboard snowman.
20:21:03 <Bike> `? 🐐
20:21:04 <HackEgo> ​🐐 <(Unicode goat laments your inability to render Unicode goat.)
20:21:07 <boily> `⌨
20:21:08 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ⌨: not found
20:21:32 <oerjan> `run (echo test; echo ho) | sed '1N'
20:21:34 <HackEgo> test \ ho
20:22:09 <oerjan> ok it actually preserves the newline then
20:24:30 <oerjan> `run ls wisdom/*s
20:24:31 <HackEgo> wisdom/categories \ wisdom/finns \ wisdom/lens \ wisdom/maths \ wisdom/monads \ wisdom/oceans \ wisdom/the us \ wisdom/united states
20:24:47 <oerjan> `? monad
20:24:48 <HackEgo> Monads are just monoids in the category of endofunctors.
20:24:52 <oerjan> `? monads
20:24:53 <HackEgo> Monads are just monoids in the category of endofunctors.
20:25:20 <oerjan> `run ls -l wisdom/monad*
20:25:21 <HackEgo> ​-rw-r--r-- 1 5000 5000 57 Jan 24 12:54 wisdom/monad \ -rw-r--r-- 1 5000 5000 57 Jan 24 12:54 wisdom/monads \ -rw-r--r-- 1 5000 5000 261 Jan 24 12:54 wisdom/monad tutorial
20:25:36 <FreeFull> `? monad tutorial
20:25:37 <HackEgo> Think of a monad as a spacesuite full of nuclear waste in the ocean next to a container of apples. now, you can't put oranges in the space suite or the nucelar waste falls in the ocean, but the apples are carried around anyway, and you just take what you need.
20:25:40 <oerjan> `run ls -l wisdom/categor*
20:25:41 <HackEgo> lrwxrwxrwx 1 5000 5000 8 Jan 24 20:18 wisdom/categories -> category \ -rw-r--r-- 1 5000 5000 32 Jan 24 12:54 wisdom/category
20:25:48 <Bike> spacesuite
20:26:00 <FreeFull> It's a suite in space
20:26:06 <oerjan> `run rm wisdom/monads; ln -s wisdom/monad wisdom/monads
20:26:07 <elliott> `rm wisdom/monad tutorial
20:26:10 <HackEgo> No output.
20:26:11 <HackEgo> No output.
20:30:04 <oerjan> oh hm
20:30:06 <oerjan> `? monads
20:30:07 <HackEgo> monads? ¯\(°_o)/¯
20:30:10 <oerjan> `? monad
20:30:12 <HackEgo> Monads are just monoids in the category of endofunctors.
20:30:16 <oerjan> I SEE
20:30:45 -!- impomatic has joined.
20:30:56 <oerjan> `revert
20:30:58 <HackEgo> Done.
20:31:03 <oerjan> `? monads
20:31:04 <HackEgo> Monads are just monoids in the category of endofunctors.
20:31:14 <oerjan> `cat bin/?
20:31:15 <HackEgo> ​#!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z | sed "s/ *$//") \ [ -e "wisdom/$topic" ] || { echo "$1? ¯\(°_o)/¯"; exit 1; } \ cat "wisdom/$topic"
20:31:42 <oerjan> `rm wisdom/categories
20:31:45 <HackEgo> No output.
20:31:51 <oerjan> `? category
20:31:52 <HackEgo> Categories are just categories.
20:32:15 <impomatic> Has anyone else entered Al Zimmermann's programming contest?
20:33:24 <boily> `run ls wisdom/*
20:33:25 <HackEgo> wisdom/`? \ wisdom/? \ wisdom/☃ \ wisdom/⌨ \ wisdom/🐐 \ wisdom/ais523 \ wisdom/america \ wisdom/atriq \ wisdom/augur \ wisdom/banach-tarski \ wisdom/bike \ wisdom/boily \ wisdom/bonvenon \ wisdom/brain \ wisdom/brainf**k \ wisdom/brainfuck \ wisdom/brick \ wisdom/burma \ wisdom/c \ wisdom/cakeprophet \ wisdom/california \ wisdom/category \ w
20:33:41 <boily> `? ⌨
20:33:42 <HackEgo> You are probably using one right now!
20:33:46 <boily> aaah. I knew it!
20:34:13 -!- AnotherTest has quit (Quit: Leaving.).
20:34:17 <boily> `? c
20:34:19 <HackEgo> C is the language of��V�>WIד�.��Segmentation fault
20:35:20 <Bike> i liked the category one that was about endomorphisms :(
20:37:30 <oerjan> `? endomorphism
20:37:31 <HackEgo> Endomorphisms are just morphisms which compose with themselves.
20:38:00 <oerjan> Bike: which one?
20:38:25 <Bike> I don't remember, it was "categories are just..." format
20:39:30 <kmc> @quote analogies.are
20:39:30 <lambdabot> dmwit says: analogies are endofunctors in the category of bad explanations
20:40:28 <oerjan> Bike: are you sure it started with categories
20:41:13 <Bike> no.
20:43:26 <oerjan> `? monad
20:43:27 <HackEgo> Monads are just monoids in the category of endofunctors.
20:44:02 <oerjan> `? endofunctor
20:44:04 <HackEgo> Endofunctors are just endomorphisms in the category of categories.
20:44:11 -!- ogrom has quit (Quit: Left).
20:44:11 <Bike> Oh, that's what I was thinking of.
20:44:15 <Bike> Mystery Solved
20:47:49 <oerjan> `run ls wisdom | grep -v ngevd | xargs grep -H dahl
20:47:51 <HackEgo> grep: `?: No such file or directory \ grep: ?: No such file or directory \ grep: ⌨: No such file or directory \ grep: ☃: No such file or directory \ grep: 🐐: No such file or directory \ grep: ais523: No such file or directory \ grep: america: No such file or directory \ grep: atriq: No such file or directory \ grep: augur: No such file or di
20:48:49 <oerjan> `run cd wisdom; ls | grep -v ngevd | xargs grep -H dahl
20:48:51 <HackEgo> bonvenon:bonvenon Bonvenon al la internacia centro por la desegno kaj ellaso de esoteraj programlingvoj! Por pli da informado, vizitu la Viki-o: http://esolangs.org/wiki/Main_Page. (Por la alia speco de esotero, iru al #esoteric sur irc.dahl.net.) \ esoteric:This channel is about programming -- for the other kind of esoterica, try #esoteric on irc.
20:49:36 <oerjan> `run cd wisdom; ls | grep -v ngevd | xargs grep -l dahl
20:49:38 <HackEgo> bonvenon \ esoteric \ grep: footnote: No such file or directory \ grep: 8: No such file or directory \ grep: misspellings: No such file or directory \ grep: of: No such file or directory \ grep: croissant: No such file or directory \ grep: natural: No such file or directory \ grep: transformation: No such file or directory \ grep: shachaf: No such
20:49:59 <oerjan> argh
20:51:05 <oerjan> `run cd wisdom; find -print0 | grep -v ngevd | xargs -0 grep -l dahl
20:51:06 <HackEgo> No output.
20:51:22 <oerjan> ...oh wait.
20:53:00 <oerjan> `run cd wisdom; mv ngevd ..; grep -l dahl *; mv ../ngevd .
20:53:02 <HackEgo> bonvenon \ esoteric \ siberia \ välkommen \ welcome \ wercome
20:53:11 <oerjan> `? bonvenon
20:53:12 <HackEgo> bonvenon Bonvenon al la internacia centro por la desegno kaj ellaso de esoteraj programlingvoj! Por pli da informado, vizitu la Viki-o: http://esolangs.org/wiki/Main_Page. (Por la alia speco de esotero, iru al #esoteric sur irc.dahl.net.)
20:53:18 <oerjan> `? esoteric
20:53:20 <HackEgo> This channel is about programming -- for the other kind of esoterica, try #esoteric on irc.dahl.net.
20:53:25 <oerjan> `? siberia
20:53:26 <HackEgo> Siberia is the capital of Finland. It's where the Fields Medahl was first synthesised.
20:54:21 <oerjan> `? välkommen
20:54:22 <HackEgo> Hej och välkommen till den internationella knutpunkten för design och distribution av esoteriska programspråk! För mer information, se vår wiki: http://esolangs.org/wiki/Main_Page. (För den andra sortens esoterism, pröva #esoteric på irc.dahl.net.)
20:54:28 <oerjan> `? welcome
20:54:29 <HackEgo> 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.dahl.net.)
20:54:33 <oerjan> `? wercome
20:54:34 <HackEgo> ​エソテリックプログラミング言語のディザインとデプロイメントの国際な場所へようこそ!詳しく、ウィキを見て: http://esolangs.org/wiki/Main_Page。(他のエソテリック、irc.dahl.netの#esotericへ)
20:54:43 <ion> :-D
20:55:35 <oerjan> `run cd wisdom; mv ngevd ..; sed -i 's/dahl/dal/g' * ; mv ../ngevd .
20:55:39 <HackEgo> No output.
20:56:51 -!- ChanServ has set channel mode: +o oerjan.
20:57:05 -!- david_werecat has joined.
20:57:07 -!- oerjan has set channel mode: +b *!*shachaf@unaffiliated/shachaf.
20:57:07 -!- oerjan has kicked shachaf WHAT THE FUCK IS WRONG WITH YOU.
20:57:14 -!- oerjan has set channel mode: -o oerjan.
20:57:22 <Bike> k
20:57:34 <ion>
20:58:13 <boily> on the one hand, the japanese translation is very good, but then ørjan banned shachaf with extreme prejudice.
20:59:05 <Gregor> Um... wut
20:59:05 <Taneb> Did oerjan just kickban shachaf
20:59:32 <oerjan> <shachaf> `run sed -i s/dal/dahl/g wisdom/*
21:00:05 <ion> :-D
21:01:13 <boily> :D
21:01:21 <Gregor> That being said, fix it properly:
21:01:31 <oerjan> `? gaspacho
21:01:32 <HackEgo> You like Gazpacho and I like Gaspacho. Let's call the whole thing off!
21:01:35 <Gregor> `revert 1713
21:01:35 <kmc> what the hell just happened
21:01:37 <HackEgo> Done.
21:01:41 <oerjan> `? gazpacho
21:01:42 <HackEgo> You like Gazpacho and I like Gaspacho. Let's call the whole thing off!
21:01:49 <Gregor> `run hg diff -r1703:1702 | patch -p1
21:01:55 <HackEgo> patching file wisdom/bonvenon \ patching file wisdom/esoteric \ patching file wisdom/monad \ patching file wisdom/siberia \ patching file wisdom/välkommen \ patching file wisdom/welcome \ patching file wisdom/wercome
21:02:06 <Phantom_Hoover> oerjan
21:02:11 <oerjan> ARGH
21:02:12 <Phantom_Hoover> why did you kickban shachaf
21:02:37 <elliott> Gregor: btw that's the same as hg diff -c 1703
21:02:38 <elliott> aiui
21:02:50 <Gregor> Herpdurp
21:02:58 <elliott> `? footnote 8
21:03:00 <HackEgo> Isn't it fun reading through all the footnotes?
21:03:05 <elliott> does anyone understand this entry
21:03:12 <boily> `? footnote 42
21:03:13 <HackEgo> footnote 42? ¯\(°_o)/¯
21:03:17 <elliott> or what d-modules are
21:03:25 <Phantom_Hoover> `? d-modules
21:03:27 <HackEgo> d-modules? ¯\(°_o)/¯
21:03:36 <oerjan> Gregor: btw it is annoying that the revision numbers are not shown on the main log listing
21:03:38 <Phantom_Hoover> well i can't exactly explain now
21:03:46 <elliott> looks like SOMEONE removed an entry by accident
21:03:50 <Taneb> `learn D-Modules are simply modules in the ring of differential operators. Taneb invented them.
21:03:53 <oerjan> `? d-module
21:03:53 <HackEgo> I knew that.
21:03:54 <HackEgo> D-modules are just modules over the ring of differential operators. Taneb invented them.
21:03:59 <Gregor> oerjan: Yeah, 'struth... happen to know of an hgweb style that shows them?
21:04:08 <oerjan> `rm wisdom/d-modules
21:04:11 <HackEgo> No output.
21:04:15 <Phantom_Hoover> im idiot
21:04:18 <Phantom_Hoover> elliott, well there you go
21:04:37 <boily> `learn `learn learns about `learn.
21:04:40 <HackEgo> I knew that.
21:04:47 <oerjan> I REMOVED IT BECAUSE LOOKUPS SHOULD BE SINGULAR FIRST, ALSO SOFT LINKS DON'T WORK IN WISDOM
21:04:50 <boily> `? `learn
21:04:51 <HackEgo> ​`learn learns about `learn.
21:04:59 <boily> meh. oh well...
21:05:03 <elliott> oerjan: aum
21:05:06 <boily> `run rm wisdom/`learn
21:05:07 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching ``' \ bash: -c: line 1: syntax error: unexpected end of file
21:05:13 <boily> `run rm wisdom/\`learn
21:05:16 <HackEgo> No output.
21:05:24 <Gregor> `run ls -l wisdom/ngevd
21:05:25 <HackEgo> lrwxrwxrwx 1 5000 5000 12 Jan 24 12:54 wisdom/ngevd -> /dev/urandom
21:06:01 <elliott> `run ls bin | grep '^qu'
21:06:02 <HackEgo> quachaf \ queegan \ quoerjan \ quørjan \ quote \ quotes
21:06:10 <elliott> `run ls bin | grep 'rjan$'
21:06:12 <HackEgo> quoerjan \ quørjan \ translatetoerjan \ zalgoerjan
21:07:10 <boily> `? zalgoerjan
21:07:11 <HackEgo> zalgoerjan? ¯\(°_o)/¯
21:07:20 <boily> `zalgoerjan
21:07:22 <HackEgo> o̐eͨȓj̱a̽n̯ ͐
21:07:29 <oerjan> ...ok i don't know why ngevd works when the others didn't.
21:07:38 <oerjan> `? gazpacho
21:07:40 <HackEgo> You like Gazpacho and I like Gaspacho. Let's call the whole thing off!
21:07:42 <elliott> `? ngevd
21:07:44 <HackEgo> ​$8544LoۮOƴ?H\rb+E/lq:)~%0]'+.Puy!TIӫ \ 6/ȱtO5h \ *YgƿRZj54O?Нq[H·/FB8fr(٪.#mh-,jOm*ωb̗lÖS_d2tQ1Yu^舘|-!F_s9fp"lHji!\F*t%:@62n%i2ܵ㛫lŅ.kT"e8^#֡4HJ6R{јq%Zh
21:07:48 <oerjan> ...why did that work.
21:07:52 <oerjan> EEK
21:07:58 <elliott> the ngevd entry is the best thing in the universe imo
21:08:00 <Gregor> oerjan: Since when do the others not? category worked fine.
21:08:37 <boily> ngevd transcends links.
21:08:47 <oerjan> argh
21:08:57 <Phantom_Hoover> isn't ngevd a hardlink
21:09:08 <Phantom_Hoover> `ls -l wisdom/ngevd
21:09:09 <HackEgo> ls: invalid option -- ' ' \ Try `ls --help' for more information.
21:09:16 <Phantom_Hoover> `runls -l wisdom/ngevd
21:09:17 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: runls: not found
21:09:19 <Phantom_Hoover> `run ls -l wisdom/ngevd
21:09:20 <HackEgo> lrwxrwxrwx 1 5000 5000 12 Jan 24 12:54 wisdom/ngevd -> /dev/urandom
21:09:27 <coppro> this window is the worst window
21:11:36 -!- davidwerecat has joined.
21:11:36 -!- david_werecat has quit (Read error: Connection reset by peer).
21:11:47 <oerjan> Gregor: while you're at it find a style that allows wikipedia style single change undo. i made a mess and now you've already changed things. :( which is the same reason i got angry at shachaf btw :P
21:12:27 <Gregor> Single change undo: `run hg diff -c <revision to undo> | patch -p1
21:12:42 <elliott> Gregor: ITYM patch -R
21:12:45 <Gregor> Err, patch -R -c1 for -c
21:12:47 <Gregor> Yeah
21:12:49 <Gregor> Hyuk
21:12:58 <Gregor> patch -R -p1 >_<
21:13:00 <elliott> `run echo "#!/bin/sh" >bin/undo; echo 'hg diff -c "$@" | patch -R' >>bin/undo; chmod +x bin/undo
21:13:00 <Gregor> You get what I mean.
21:13:04 <HackEgo> No output.
21:13:05 <elliott> that's the form I've used in the patch
21:13:07 <elliott> er
21:13:07 <elliott> in the past
21:13:23 <Gregor> Pretty sure it needs -p1...
21:13:54 <Gregor> `undo 1721
21:13:56 <HackEgo> The next patch, when reversed, would delete the file undo, \ which does not exist! Ignore -R? [n] \ Apply anyway? [n] \ Skipping patch. \ 1 out of 1 hunk ignored
21:14:00 <elliott> lol
21:14:21 <Gregor> `run hg diff -c 1721
21:14:23 <HackEgo> diff -r 63d5921a3c8a -r ab80805a8878 bin/undo \ --- /dev/nullThu Jan 01 00:00:00 1970 +0000 \ +++ b/bin/undoThu Jan 24 21:13:03 2013 +0000 \ @@ -0,0 +1,2 @@ \ +#!/bin/sh \ +hg diff -c "$@" | patch -R
21:14:27 <elliott> http://codu.org/projects/hackbot/fshg/index.cgi/log?revcount=100&rev=-R
21:14:32 <Gregor> Oh, it is -p0 >_>
21:14:35 <elliott> this shows that I've used | patch -R in the past
21:14:41 <oerjan> `? welcome
21:14:42 <HackEgo> 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:43 <Gregor> I guess I'm imagining things.
21:17:57 -!- ChanServ has set channel mode: +o oerjan.
21:18:12 -!- oerjan has set channel mode: -b *!*shachaf@unaffiliated/shachaf.
21:18:21 -!- oerjan has set channel mode: -o oerjan.
21:31:33 -!- Snowyowl has joined.
21:38:52 -!- WeThePeople has joined.
21:48:23 -!- Snowyowl has quit (Ping timeout: 245 seconds).
21:55:19 <zzo38> Do GCC or LLVM do any calculation such as strlen and strdup and so on at compile time if possible?
21:56:14 <Bike> strdup at compile time?
21:58:15 <zzo38> For example if there is a code only running once, which calls strdup("Hello, World!") which is also known not to be realloc or free, it might be able to place it in a separate buffer if the target ABI supports that, and the optimization settings are correct for that.
21:58:39 <zzo38> But even if it is dynamic and runs more than once, the string length can be optimized if it is faster to copy the memory knowing the length ahead of time.
21:59:10 <zzo38> Does the new C standards have a "memdup" command, or only "strdup"?
21:59:24 <Bike> memcpy?
22:00:30 <zzo38> I mean that memdup will be like malloc and memcpy together.
22:02:27 <zzo38> Or even such optimization that might be done, such as printf("%u",x%10) might be able to be changed to putchar((x%10)+'0')
22:02:36 -!- shachaf has joined.
22:02:53 <Bike> strdup with you casting the memory to char* isn't ok?
22:03:11 <kmc> no, it might have nulls
22:03:12 <shachaf> Oops?
22:03:16 <kmc> hichaf
22:03:28 <zzo38> kmc: Yes, that is what I mean.
22:03:39 <Bike> well, memdup seems easy to write, at least
22:03:39 -!- boily has quit (Quit: Poulet!).
22:03:54 <zzo38> Yes, I do think it is easy to write.
22:04:18 <shachaf> I guess oerjan is really not a fan of Roald Dahl?
22:04:39 <Bike> printf for constant strings seems like it'd be a profitable optimization, not to mention helps safety?
22:04:56 <Phantom_Hoover> shachaf what did you do
22:05:13 <shachaf> What oerjan said.
22:05:33 <Phantom_Hoover> oerjan what did you say
22:05:43 <shachaf> 20:59:32: <oerjan> <shachaf> `run sed -i s/dal/dahl/g wisdom/*
22:05:53 <zzo38> Something mentioned on esolang wiki is optimizing to save energy. Does any compiler do this? Is it even possible in any cases?
22:06:20 <Bike> like, physical power?
22:06:27 <zzo38> Yes
22:06:38 <Bike> maybe for embedded systems or something, i doubt anyone cares for desktops
22:07:23 <Sgeo> Is "We might call you in a few months if an entry-level Python position becomes available" the same as "Fuck you, you'll never hear from us again?"
22:10:31 <oerjan> <shachaf> I guess oerjan is really not a fan of Roald Dahl? <-- not when he's sabotaging urls, no.
22:11:11 <shachaf> That's a domain name, not a URL.
22:11:26 <shachaf> Anyway, OK? URLs are off-limits?
22:13:13 <oerjan> THAT WAS NOT MEANT TO BE AN EXHAUSTIVE RULE
22:14:08 <shachaf> I thought the whole point of HackEgo was chaos etc. or something.
22:16:41 <oerjan> from chaos one passes to enlightened dictatorship. haven't you read your hobbes?
22:16:47 <oerjan> (me neither)
22:21:39 <ion> Welcome bachaf
22:26:24 -!- WeThePeople has quit (Quit: Leaving).
22:30:59 <olsner> oerjan: omg you finally banned shachaf
22:31:04 <olsner> also, why is he back?
22:31:47 <shachaf> :-(
22:32:06 <olsner> or perhaps thay should be "finally shachaf" ... one does not simply the verb, after all
22:32:26 -!- Taneb has quit (Quit: Leaving).
22:35:44 <olsner> "Very little has been said about this... " is not an appropriate start of the thousandth repost of the runner-does-nice-thing picture and story
22:36:49 <olsner> (in a related story: whenever someone has their faith in humanity restored, mine is torn asunder yet again)
22:43:21 -!- WeThePeople has joined.
22:45:25 -!- asiekierka has quit (Excess Flood).
22:47:57 -!- asiekierka has joined.
22:50:10 -!- WeThePeople has quit (Quit: Leaving).
22:55:53 -!- carado has quit (Ping timeout: 246 seconds).
22:58:39 * shachaf tries to figure out how serious oerjan was.
22:59:42 <Sgeo> I think what happens when I switch languages is something like
22:59:46 <Phantom_Hoover> why the fuc
22:59:47 <oerjan> i was very annoyed.
22:59:48 <Phantom_Hoover> k
22:59:54 <Phantom_Hoover> are my socks
22:59:57 <Phantom_Hoover> in the wastebin
23:00:46 <Sgeo> "I'm obviously looking for Smalltalk-like languages, why not just go Smalltalk.... <complaint X, complaint Y, complaint Z>... I'm obviously looking for a language that does W, why not G which is known for W
23:00:49 <Sgeo> Lather, rinse, repeat
23:01:03 <Sgeo> Either that or I avoid looking at G because of Q
23:01:24 <oerjan> Phantom_Hoover: do they have holes?
23:01:29 <Phantom_Hoover> no
23:01:33 <Sgeo> Where Q may be a bad stereotype of the reason I last stoppe d at G, which was actually reason R
23:01:40 <olsner> pidgeons have holes, socks don't?
23:01:43 <Sgeo> Also, I am an alphabet.
23:01:59 <Phantom_Hoover> Sgeo cut down on your variables
23:02:11 <Bike> single-letter variable names are a blight sgeo
23:02:33 * variable does a jig
23:02:34 <Sgeo> `addquote <Phantom_Hoover> why the fuc <oerjan> i was very annoyed. <Phantom_Hoover> k <Phantom_Hoover> are my socks <Phantom_Hoover> in the wastebin
23:02:37 <HackEgo> 935) <Phantom_Hoover> why the fuc <oerjan> i was very annoyed. <Phantom_Hoover> k <Phantom_Hoover> are my socks <Phantom_Hoover> in the wastebin
23:02:48 <olsner> `? qdbformat
23:02:49 <HackEgo> qdbformat is: <nick> message; * nick action; two spaces between messages; all elisions marked with [...] other than irrelevant intervening messages; for messages separated by elision, one space on each side, not two
23:02:53 <oerjan> Sgeo: wat.
23:03:10 <Sgeo> oerjan, I am in love with Phantom_Hoover's inadvertant double meaning of k
23:03:30 <olsner> (this is where Sgeo meticulously reformats according to The Rules, then someone decides the quote isn't funny in the first place)
23:03:43 <shachaf> oerjan: So... No changing `welcome?
23:03:48 <Sgeo> `revert
23:03:49 <Phantom_Hoover> <Bike> single-letter variable names are a blight sgeo
23:03:50 <HackEgo> Done.
23:04:04 <oerjan> Sgeo: k
23:04:05 <Phantom_Hoover> computer scientist pansy
23:04:16 <Sgeo> `addquote <Phantom_Hoover> why the fuc <oerjan> i was very annoyed. <Phantom_Hoover> k <Phantom_Hoover> are my socks <Phantom_Hoover> in the wastebin
23:04:19 <HackEgo> 935) <Phantom_Hoover> why the fuc <oerjan> i was very annoyed. <Phantom_Hoover> k <Phantom_Hoover> are my socks <Phantom_Hoover> in the wastebin
23:04:23 <Sgeo> Like that, or did I screw up?
23:04:45 <Bike> Phantom_Hoover: A BLIGHT
23:04:48 <Phantom_Hoover> i mean seriously, why would you ever want more than 100 variables
23:05:04 <Sgeo> wastebin looked like it was cut off for a second
23:05:05 <Bike> ugh don't remind me of TI programming
23:05:26 <oerjan> shachaf: i suggest sitting very still and not moving. then _maybe_ you won't annoy me.
23:05:29 <Sgeo> Bike, ok, next time I shall use foo bar baz foobar foobaz barfoo barbaz etc
23:05:41 * oerjan just blew it, didn't he.
23:06:08 <shachaf> oerjan: Should I leave?
23:06:14 <kmc> don't leave :(
23:06:14 <Bike> Sgeo: damn straight
23:07:01 * Sgeo concurs with everyone whom it is possible to concur with even if said concurring implies holding contradictory beliefs about whether shachaf should leave
23:07:10 <oerjan> shachaf: i wasn't being entirely sreiosu in the two pervious sentiwtf is with my typing
23:07:12 <Bike> DIATHELIST
23:07:16 <Phantom_Hoover> http://en.wikipedia.org/wiki/Superficiality
23:07:21 <Phantom_Hoover> great npov there wikipedia
23:07:27 <Bike> wow i can't spell that word reliably
23:07:29 <olsner> I was trying to scroll back to a shachaf ban motivation but found "* oerjan cackles maniackally"
23:07:48 <olsner> shachaf probably literally asked for it though
23:08:07 <Bike> Phantom_Hoover: nuh uh it's cited. "21stC urban parlance speaks of 'a barometer of shallowness...the scale of superficiality'.[3]"
23:08:24 <shachaf> olsner: No, I stopped with the asking-to-be-kicked thing a while ago.
23:08:31 <Phantom_Hoover> cited to urban dictionary
23:08:34 <olsner> maybe the effect was just delayed
23:08:38 -!- FreeFull has quit (Read error: Operation timed out).
23:09:14 <olsner> hmm, if this was only the implementation of the first of those request, you may yet be kicked many times
23:09:18 <oerjan> olsner: that was when i found sed's N command
23:09:19 <shachaf> olsner: The motivation was: <oerjan> <shachaf> `run sed -i s/dal/dahl/g wisdom/*
23:09:52 <Sgeo> How many uses of dal are there in wisdom?
23:10:09 <olsner> ah, yes, the cackling is a common side effect of sed
23:10:44 <shachaf> `? siberia
23:10:45 <HackEgo> Siberia is the capital of Finland. It's where the Fields Medal was first synthesised.
23:10:47 <shachaf> That's one.
23:10:48 <olsner> Sgeo: all the welcome texts use it due to mentioning dalnet
23:11:22 <oerjan> Sgeo: the siberia one and the welcomes
23:11:37 <olsner> *dahlnet
23:11:40 <Sgeo> Hmm, wasn't aware that `welcome used wisdom behind the scenes
23:11:56 <Sgeo> `cat bin/wisdom
23:11:57 <HackEgo> cat: bin/wisdom: No such file or directory
23:12:06 <Sgeo> `cat bin/welcome
23:12:07 <HackEgo> ​#!/usr/bin/perl -w \ if (defined($_=shift)) { s/ *$//; s/ +/ @ /g; exec "bin/@", $_ . " ? welcome"; } else { exec "bin/?", "welcome"; }
23:12:09 <olsner> `wisdom bar
23:12:10 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: wisdom: not found
23:12:19 <shachaf> See: http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.1339
23:12:39 <Bike> encoding is hard, huh
23:12:46 <Sgeo> `? `?
23:12:48 <HackEgo> See `? for further details.
23:13:17 <olsner> `cat bin/@
23:13:18 <HackEgo> ​#!/usr/bin/perl -w \ $_ = join " ", @ARGV; if (s/^([^ ]*) +([^ ]*) +//) { print "$1: "; exec $2, $_; }
23:13:35 <shachaf> @ source code leaked!
23:14:15 <Sgeo> Are there sane people who write Perl code?
23:14:34 <olsner> No
23:15:18 * shachaf wonders whether people will ever stop with the "ha ha perl = bad" thing.
23:15:19 <olsner> then again, not writing perl code doesn't necessarily make you sane
23:15:46 <olsner> shachaf: probably not
23:16:01 <Sgeo> wtf is ga[sz]pacho?
23:16:05 <oerjan> `@ Sgeo ? mad
23:16:06 <HackEgo> Sgeo: "But I don't want to go among mad people," Alice remarked. "Oh, you can't help that," said the Cat: "we're all mad here. I'm mad. You're mad." "How do you know I'm mad?" said Alice. "You must be," said the Cat, "or you wouldn't have come here."
23:16:22 <shachaf> `run cat bin/welcome
23:16:24 <HackEgo> ​#!/usr/bin/perl -w \ if (defined($_=shift)) { s/ *$//; s/ +/ @ /g; exec "bin/@", $_ . " ? welcome"; } else { exec "bin/?", "welcome"; }
23:16:35 <olsner> apt quote for the channel, I feel
23:16:40 <olsner> or hope
23:16:40 <shachaf> `? u
23:16:42 <HackEgo> u monad?
23:16:52 * Sgeo wonders which is more opaque, Perl or APL
23:16:58 <oerjan> Sgeo: a spanish soup, traditionally served cold for hot summer days
23:17:47 <Sgeo> Actually, just as a guess, J might be worse than APL because it's restricted to normal (ascii?) characters, I guess
23:17:49 <oerjan> `@ shachaf ? you
23:17:50 <HackEgo> shachaf: you a haskell
23:18:07 <shachaf> `learn gaszpacho is a polish soup, traditionally szerved cold for hot szummer days
23:18:11 <HackEgo> I knew that.
23:18:23 <olsner> probably spelled gaszpaczo
23:18:25 <oerjan> `addquote <Sgeo> Actually, just as a guess, J might be worse than APL because it's restricted to normal (ascii?) characters, I guess
23:18:28 <HackEgo> 936) <Sgeo> Actually, just as a guess, J might be worse than APL because it's restricted to normal (ascii?) characters, I guess
23:18:29 -!- WeThePeople has joined.
23:18:31 <shachaf> olsner: Good point.
23:18:44 <shachaf> olsner: (PLEASE FIX)
23:19:48 <oerjan> `learn gazspacho is a hungarian szoup, tradizsonally szerved cold for hot szummer dayz
23:19:53 <HackEgo> I knew that.
23:20:04 <olsner> or perhaps ch is almost equivalent in polish
23:20:12 <Phantom_Hoover> <Sgeo> wtf is ga[sz]pacho?
23:20:15 <Phantom_Hoover> cold tomato soup
23:20:16 <oerjan> oh hm
23:20:23 <oerjan> `revert
23:20:24 <HackEgo> Done.
23:20:30 <Phantom_Hoover> <some sort of red dwarf reference>
23:20:30 <oerjan> `learn gazspaczo is a hungarian szoup, tradizsonally szerved cold for hot szummer dayz
23:20:36 <HackEgo> I knew that.
23:20:37 <olsner> unless it's one of those weird cases where ch is a k sound
23:20:46 * Sgeo did not mean to refer to either gaspach or gazpach
23:21:37 <oerjan> `sed -i 's/is/iz/' wisdom/gazspaczo
23:21:38 <HackEgo> Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]... \ \ -n, --quiet, --silent \ suppress automatic printing of pattern space \ -e script, --expression=script \ add the script to the commands to be executed \ -f script-file, --file=script-file \ add the contents of script-
23:21:41 <oerjan> `run sed -i 's/is/iz/' wisdom/gazspaczo
23:21:44 <HackEgo> No output.
23:22:17 -!- sirdancealot7 has quit (Ping timeout: 244 seconds).
23:22:43 <olsner> `? gazpacho
23:22:44 <HackEgo> You like Gazpacho and I like Gaspacho. Let's call the whole thing off!
23:23:32 <shachaf> `? soup
23:23:34 <HackEgo> soup? ¯\(°_o)/¯
23:23:34 <Sgeo> I'm almost certain that's a reference to something, but I'm not sure what
23:23:42 <elliott> Sgeo: homestuck
23:23:51 <shachaf> elliott: What?
23:23:58 <olsner> `learn soup is like soup
23:24:00 <elliott> shachaf: its a joke. im making a humerous joke for kidding purposes.
23:24:02 <oerjan> `run echo "What soup, doc?" >wisdom/soup
23:24:02 <HackEgo> I knew that.
23:24:05 <HackEgo> No output.
23:24:06 <elliott> ty for ruining it
23:24:10 <oerjan> `run echo "What soup, Doc?" >wisdom/soup
23:24:14 <HackEgo> No output.
23:24:22 <shachaf> elliott: np "its wat im hear 4 rite"
23:24:43 <oerjan> olsner: SORRY OVERRULED YOU WITH FAMOUS REFERENCE
23:24:53 <Sgeo> http://en.wikipedia.org/wiki/Let's_Call_the_Whole_Thing_Off
23:24:59 <elliott> i prefferedererf olsner's
23:25:00 <Bike> duck soup?
23:25:18 <shachaf> `? szoup
23:25:20 <HackEgo> szoup? ¯\(°_o)/¯
23:25:23 <oerjan> ...not _that_ famous
23:27:23 <Sgeo> Fuck flash
23:29:28 <ion> Thanks to Mumble using a speech synthesizer for text chat, i realized “:P” is colon pee.
23:30:13 <olsner> i.e. diarrhea?
23:30:47 <olsner> (hopefully that will be all for tonight's installment of #esoteric-bodily-functions)
23:31:34 <oerjan> `run echo "A szoup a szilárd tápszereknek híg alakban való elkészítése a célból, hogy könnyebben emészthetők legyenek; a hígító anyag a viz, mely feloldja s magába veszi a tápanyag legértékesebb részeit." >wisdom/szoup
23:31:38 <HackEgo> No output.
23:31:49 <Sgeo> I can't see a channel name and not join it
23:31:55 <shachaf> #include <stdio.h>
23:31:58 <oerjan>
23:32:01 <olsner> oerjan: has that translation been validated by all the eels in your hovercraft?
23:32:04 <oerjan> wat
23:32:30 <Sgeo> * Topic for #include is: I'd give my right arm to be ambidextrous.
23:32:44 -!- WeThePeople has quit (Quit: Leaving).
23:33:25 <oerjan> olsner: no, just by hungarian wikipedia.
23:33:36 <Sgeo> * Topic for #include set by unknown at Thu May 29 15:24:17 2008
23:33:50 <Sgeo> Woak
23:33:53 <Sgeo> *Woah
23:33:58 <Sgeo> -NickServ- Registered : Mar 08 14:58:34 2002 (10 years, 46 weeks, 3 days, 08:35:08 ago)
23:34:00 <Sgeo> -NickServ- Last seen : now
23:34:36 <elliott> ...what's whoah about this exactly
23:35:02 <Phantom_Hoover> "someone spent NEARLY ELEVEN YEARS DOING SOMETHING REGULARLY"
23:35:29 <Phantom_Hoover> "they must be, like, in their THIRTIES by now"
23:36:39 <olsner> oerjan: ok, must be correct then
23:37:10 <olsner> unless someone just went and made up a bunch of pretend-hungarian and put it on the hungarian wikipedia
23:38:20 <oerjan> i think it's even a quote, the original has quote marks
23:38:46 <elliott> Phantom_Hoover: doing what regularly
23:40:40 <Sgeo> "An object is just something in a category."
23:40:51 <Sgeo> "something" needs to be elaborated on, clearly.
23:40:58 <olsner> "A something is just something in a something."
23:41:05 <elliott> objects are kind of the very nature of somethingness
23:42:02 <shachaf> Sgeo seems to object.
23:42:04 <olsner> "Something, is soup."
23:42:18 <shachaf> `run ls wisdom | grep s
23:42:20 <HackEgo> ais523 \ banach-tarski \ endomorphism \ esoteric \ finnish \ finns \ friendship \ gaspacho \ gaszpacho \ gazspacho \ gazspaczo \ haskell \ helsinki \ homestuck \ hom-set \ itidus19 \ itidus20 \ itidus21 \ kallisti \ lens \ lifthrasiir \ maths \ misspellings of croissant \ monads \ morphism \ natural transformation \ oceans \ olsner \ scotland \ sge
23:42:30 <olsner> `? scotland
23:42:32 <HackEgo> Scotland is a country in northern Britain. It is known for having no true inhabitants. The official religion is hatheism. Phantom_Hoover looks after the FREEDOM.
23:42:43 <shachaf> `? misspellings of croissant
23:42:44 <HackEgo> misspellings of crosant? ¯\(°_o)/¯
23:42:59 <olsner> `? misspellings of croissant
23:43:00 <HackEgo> misspellings of crosant? ¯\(°_o)/¯
23:43:10 <olsner> same answer every time, how boring
23:43:54 <Sgeo> How have I failed to see my wisdom all this time?
23:43:56 <Sgeo> `? sgeo
23:43:57 <HackEgo> Sgeo is a language nomad. (Not to be confused with a language monad.) He invented Metaplace sex.
23:44:10 <Bike> i hope you're suitably whelmed.
23:44:20 -!- epicmonkey has quit (Ping timeout: 240 seconds).
23:44:28 <shachaf> `? hom-set
23:44:29 <HackEgo> Hom-sets are just sets of morphisms between two objects.
23:45:01 -!- copumpkin has quit (Ping timeout: 244 seconds).
23:45:33 -!- copumpkin has joined.
23:45:37 <Sgeo> `? spam
23:45:39 <HackEgo> Spam is a delicious meat product. See http://www.spamjamhawaii.com/
23:45:51 <Sgeo> There is a Spam Jam. Why is there a Spam Jam.
23:46:51 <Sgeo> What's next, parties for other BRANDNAME PRODUCTYPE products?
23:47:11 <Bike> it is jam made from spam
23:47:18 <Sgeo> Wait, that implies that I think that Spam is a type of jma
23:47:21 <Sgeo> jam
23:47:44 <olsner> why do you think spam is jam?
23:47:48 <shachaf> i love szpam
23:48:06 <shachaf> `? cyberiad
23:48:07 <HackEgo> cyberiad? ¯\(°_o)/¯
23:48:15 <olsner> in poland some people's names start with szcz
23:48:41 <Sgeo> `? wisom isn't very liar paradoxy
23:48:41 <shachaf> `run >wisdom/cyberiad echo The Cyberiad is not just a book.
23:48:42 <HackEgo> wisom isn't very liar paradoxy? ¯\(°_o)/¯
23:48:44 <HackEgo> No output.
23:48:48 <Sgeo> `? wisdom
23:48:49 <HackEgo> wisdom is always factually accurate, except for this entry
23:48:51 <Sgeo> Not very liar paradoxy
23:49:27 <Bike> szyberiad
23:50:22 <shachaf> `run >wisdom/'structural subtyping' echo Not to be confused with substructural typing.
23:50:25 <HackEgo> No output.
23:50:30 <shachaf> `run >wisdom/'substructural typing' echo Not to be confused with structural subtyping.
23:50:33 <HackEgo> No output.
23:50:50 <shachaf> `? monoids
23:50:52 <HackEgo> monoids? ¯\(°_o)/¯
23:50:57 <shachaf> `learn monoids are so easy :D
23:51:00 <HackEgo> I knew that.
23:51:05 <elliott> `rm wisdom/monoids
23:51:05 <oerjan> `? monoid
23:51:08 <HackEgo> Monoids are just categories with a single object.
23:51:10 <HackEgo> No output.
23:51:28 <Sgeo> Easiness is so easy :D
23:51:54 <shachaf> `learn Monoids are the easy version of categories.
23:51:58 <HackEgo> I knew that.
23:52:21 <oerjan> ...now i'm annoyed again.
23:52:36 <shachaf> Am I making wisdom/ worse?
23:52:47 <oerjan> shachaf: ...good point.
23:53:05 <shachaf> It wasn't meant to be a point, but OK.
23:53:24 <shachaf> `? oerjan
23:53:25 <HackEgo> Your evil overlord oerjan is a lazy expert in future computation. Also a lying Norwegian.
23:53:40 -!- augur has quit (Remote host closed the connection).
23:54:11 <elliott> IMO we should just nuke all of wisdom/ except for the entries for places
23:54:21 <shachaf> `? places
23:54:22 <HackEgo> places? ¯\(°_o)/¯
23:54:24 <Phantom_Hoover> hey now
23:54:33 <Phantom_Hoover> the original `? monad is a classic
23:54:40 <shachaf> `? monad
23:54:41 <HackEgo> monads
23:54:49 <shachaf> `? monads
23:54:51 <HackEgo> Monads are just monoids in the category of endofunctors.
23:54:58 <oerjan> WHAT
23:55:19 <Phantom_Hoover> haha
23:55:28 <Phantom_Hoover> your dumb plural scheme is defeated
23:55:54 <shachaf> What scheme?
23:56:32 <Phantom_Hoover> a scheme most devious
23:56:41 <shachaf> `? devious
23:56:42 <HackEgo> devious? ¯\(°_o)/¯
23:56:56 <shachaf> `run echo dumb > wisdom/devious
23:56:59 <HackEgo> No output.
23:58:43 <olsner> `? devious
23:58:44 <HackEgo> dumb
23:58:57 <olsner> oh, is that what it means
23:59:34 <oerjan> elliott: a bit more of this and i'll start agreeing with you.
2013-01-25
00:00:49 <olsner> yes, the abuse of wisdom has been heading overboardwards, of late
00:00:59 -!- sirdancealot has joined.
00:01:21 <shachaf> `? wisdom
00:01:24 <HackEgo> wisdom is always factually accurate, except for this entry
00:04:00 <oerjan> the temporariness of everything, including information, has become grating on me.
00:05:38 * pikhq despises the first week or two of math courses.
00:05:51 <pikhq> No, "theory of numbers", you *really* don't need to go over induction again.
00:06:24 <shachaf> `? i
00:06:25 <HackEgo> i? ¯\(°_o)/¯
00:06:31 <shachaf> `learn i love monoids
00:06:33 <HackEgo> I knew that.
00:06:38 <oerjan> so you are saying we don't need to go over induction for the n+1'th time if we've done it for the n'th time?
00:06:57 <oerjan> *'st
00:06:59 <shachaf> oerjan++
00:07:39 <pikhq> oerjan++
00:08:06 <elliott> oerjan: have you considered the temporariness of the letter ø
00:08:07 <elliott> :(
00:08:55 <oerjan> elliott: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
00:09:02 <Bike> temporariness?
00:09:04 <shachaf> `? ø
00:09:05 <HackEgo> ​ø? ¯\(°_o)/¯
00:09:12 <shachaf> `learn ø is not going anywhere
00:09:15 <HackEgo> I knew that.
00:09:36 <oerjan> `? Ø
00:09:37 <HackEgo> ​Ø? ¯\(°_o)/¯
00:26:19 -!- WeThePeople has joined.
00:26:21 -!- NihilistDandy has joined.
00:30:04 <zzo38> Does SQLite support UTF-8 codes outside of the Unicode range?
00:32:48 <zzo38> Actually, can I even just store arbitrary bytes having the length function to not count 0x80-0xBF range bytes?
00:35:43 -!- augur has joined.
00:54:36 -!- Rachiel has joined.
01:03:02 -!- davidwerecat has quit (Ping timeout: 244 seconds).
01:05:25 <zzo38> I made the search function of Internet Quiz Engine to work now.
01:08:18 -!- monqy has joined.
01:18:08 -!- Rachiel1 has joined.
01:18:47 -!- Rachiel has quit (Ping timeout: 245 seconds).
01:19:09 -!- Rachiel1 has left.
01:25:24 -!- NihilistDandy has quit (Quit: Textual IRC Client: www.textualapp.com).
01:26:43 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:33:10 <shachaf> kmc: It probably won't change even then.
01:35:54 -!- oerjan has quit (Quit: leaving).
02:00:27 <kmc> oh
02:00:31 <kmc> this cross channel thing is confusing shachaf
02:00:42 <kmc> it would be less confusing with zephyr conventions
02:00:48 <kmc> where most people read all traffic in one window
02:00:57 <kmc> and where you have subject tags which could be "else" or "#mosh"
02:01:17 <zzo38> What are zephyr conventions? And what do the subject tags do?
02:01:53 <shachaf> kmc: Well, I don't talk in #mosh.
02:02:08 <shachaf> How can I connect to relevant Zephyr networks?
02:06:07 <kmc> you can't, basically
02:06:22 <shachaf> Oh.
02:06:25 <shachaf> Can you?
02:06:41 <kmc> get an athena account or maybe a club.cc.cmu.edu account or one of a few others
02:06:45 <kmc> yes because i have an athena account
02:06:49 <shachaf> Ah.
02:07:28 <shachaf> How did you get it?
02:10:17 -!- TeruFSX has joined.
02:11:24 <kmc> helping with Mosh which is sort of a SIPB project
02:14:02 <Sgeo> What was that thing that I've done that kmc said was more obscure than Zephyr?
02:14:08 * Sgeo already forgot the name
02:14:16 <kmc> gale?
02:14:19 <Sgeo> Yes
02:14:22 <kmc> 4-HO-DiPT?
02:14:27 <Sgeo> Gale
02:15:04 -!- Arc_Koen has quit (Quit: Arc_Koen).
02:16:14 -!- augur has quit (Remote host closed the connection).
02:16:47 -!- augur has joined.
02:20:10 <kmc> ok
02:20:13 <kmc> when did you use Gale?
02:20:50 <kmc> oddly, the Zephyr protocol is about as old as IRC, despite 'feeling' much fancier and newer
02:21:08 <kmc> i guess it goes to show that people in the 80's could design fancy systems too, but it's only the simple ones that have survived to today
02:21:09 -!- augur has quit (Ping timeout: 248 seconds).
02:21:27 <kmc> Zephyr wants Kerberos and it wants no NAT and a daemon on every host and a bunch of other things
02:21:36 <kmc> it wasn't even designed as a human chat protocol
02:22:20 <shachaf> Nor was obby, but it's great for it!
02:23:00 <elliott> zephyr sounds exciting
02:28:58 <Sgeo> `list
02:28:59 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
02:29:32 <Sgeo> kmc, I just remember finding it on Wikipedia and using some web interface to it that's now defunct
02:29:37 <Sgeo> Probably years ago
02:29:40 <Sgeo> Yammer I think?
02:30:07 <Bike> we're going to run out of synonyms at some point soon D:
02:30:31 <kmc> Yammer is an enterprise social network thing but maybe there's also a Gale thing of the same name
02:36:58 <copumpkin> kmc: how you enjoying twitter so far?
02:37:09 <kmc> 's pretty good
02:39:27 <kmc> have already found a lot of interesting links and it is a lot less unpleasant than reading Hacker News
02:39:35 <kmc> \rainbow{social networks}
02:41:16 -!- copumpkin has quit (Ping timeout: 245 seconds).
02:41:47 -!- copumpkin has joined.
02:42:55 <copumpkin> cool
02:42:57 <copumpkin> I never got into HN
02:42:57 <copumpkin> perhaps that's for the best :P
02:43:38 <kmc> it has enough cool stuff that I feel like I'm missing out by not reading it
02:43:51 <kmc> but it also has a lot of noise and a pretty steady rate of aggrivating bullshit
02:43:55 <Fiora> I've glanced at it lately looking for interesting things but it just seems to have this horrible signal/noise ratio
02:44:02 <Fiora> like even *slashdot* is better
02:44:15 <kmc> it's mostly about how some mobile social local ad company you've never heard of just got $100 million dollars for doing nothing
02:44:19 <Fiora> I think even my tumblr dashboard is better
02:44:40 <kmc> and endless arguments over who is a real hacker or not
02:44:53 <kmc> and paul graham hero-worship
02:45:14 <kmc> basically i count on my friends and extended social network to send me interesting links at at least the rate i can read them
02:45:36 <elliott> kmc: and you count on me to provide the noise you're missing out on
02:45:50 <Bike> is "real hacker" actually a thing
02:46:02 <ion> integer hacker
02:46:02 <kmc> copumpkin did you see the crypto challenges mentioned on twitter: https://twitter.com/tqbf/status/292005256416612353
02:46:05 <kmc> Bike: yes
02:46:09 * copumpkin <- real hacker
02:46:22 <Bike> man even xkcd's made fun of that though
02:46:26 <copumpkin> kmc: nope, but I assume that's some sort of job thing?
02:46:32 <kmc> probably
02:46:45 <copumpkin> given it's matasano :)
02:46:50 <Fiora> kmc: there's also like, all the navelgazing stuff
02:46:52 -!- augur has joined.
02:46:54 <copumpkin> it'd be odd to do a "in your free time" project @matasano
02:47:02 <Fiora> like 1000 blog posts about "how to be productive" or "how I built an X in Y hours"
02:47:12 <kmc> like, I assume that if I solve them all, I will be able to get an interview there if I want
02:47:13 <Bike> "how to be productive" posts are sad
02:47:16 <kmc> but that's not why i'm doing it
02:47:22 <kmc> the Stripe CTFs are also a job thing in a sense
02:47:28 <kmc> but were plenty of fun
02:47:30 <copumpkin> oh, you're doing it
02:47:33 <copumpkin> cool
02:47:35 <Bike> maybe that's just because i'm violently unproductive.
02:47:36 <kmc> yeah
02:47:41 <elliott> how do I gain the ability to tell matasano and monsanto apart
02:47:45 <elliott> please advise
02:47:49 <kmc> elliott: drink a bottle of Round-Up
02:48:54 <Fiora> Bike: I always find them kinda funny because it's like
02:49:00 <copumpkin> daeken used to work at matasano iirc
02:49:02 <Fiora> someone is *blogging* (not being productive) about being productive
02:49:04 <copumpkin> if anyone knows him
02:49:20 <kmc> that's not intrinsically absurd
02:49:28 <kmc> but yeah people wank a lot about productivity instead of being productive
02:49:42 <kmc> they also wank a lot about how programmers are magical special snowflakes and therefore can't be held to the same standards as other human beings
02:49:55 <copumpkin> but it's true!
02:49:57 <Bike> Fiora: right
02:50:08 <copumpkin> I need my hand held
02:50:08 <Fiora> there's also just. the whole bubble mentality of how like, everyone inside silicon valley is so blissfully unaware a world exists outside
02:50:39 <Fiora> which probably hurts them a lot too, since it means the people making startups have no idea what their users are like at all, and guess based on Glee reruns
02:50:57 <Bike> that's a sad and disturbing thought.
02:51:11 <kmc> remember that just by being a programmer you are an expert in all areas
02:51:26 <kmc> you're automatically an expert on how painters work and can compare yourself favorably to them
02:51:35 <Bike> wank about singularity here
02:51:47 <copumpkin> we should metawank
02:51:51 <kmc> ah well
02:52:17 <Bike> complain about complaining about HN complaints about mainstream culture's complaints about HN?
02:52:20 <Fiora> XD
02:52:24 <Fiora> recursively meta wank!
02:52:25 <copumpkin> Bike: can we tie the knot somehow?
02:52:34 <copumpkin> like, have them complain about us doing that
02:52:42 <copumpkin> then we should complain about how it's circular
02:52:53 <Fiora> (Oh, and of course, as unspokenly obvious as it is, HN's endless sexism)
02:52:55 <kmc> i don't live in SF therefore my opinion is so insignificant it's not worth complaining about
02:52:56 <Bike> my type theory isn't capable of expressing this
02:53:03 <copumpkin> and then plot to find new ways to make our complaining more elaborate
02:53:46 <copumpkin> in other cool startup news
02:53:54 <copumpkin> has anyone tried the new portal 2 maps?
02:54:20 <Bike> was valve a startup at some point?
02:54:40 <copumpkin> presumably :P but I mean another startup made a custom campaign for portal 2
02:54:45 <copumpkin> presumably as part of recruitment efforts
02:54:55 * Bike didn't know that id started out selling fucking shareware, though. out of it
02:55:04 <copumpkin> I remember that
02:55:27 <Bike> (the mario clone was funnier though)
02:55:54 <elliott> wasn't doom shareware
02:56:19 <Bike> yes.
02:58:52 <Bike> they also tried making a mario port to PCs, it's great.
02:58:59 -!- augur has quit (Remote host closed the connection).
02:59:16 <copumpkin> is it super violent?
02:59:19 <copumpkin> also, does Wario have a brother?
02:59:34 -!- augur has joined.
02:59:48 <kmc> did anyone here play http://stabyourself.net/mari0/
03:00:02 <copumpkin> not I
03:00:02 <Bike> yes D
03:00:04 <Bike> *:D
03:00:16 <Bike> got bored fast, honestly, the old levels are way too easy
03:00:20 <Bike> copumpkin: http://www.youtube.com/watch?v=yUJ9xWw8_lQ
03:03:49 -!- augur has quit (Ping timeout: 248 seconds).
03:15:15 <Lumpio-> copumpkin: Does Waluigi count?
03:15:25 <copumpkin> probably
03:15:51 <zzo38> OkCupid/HelloQuizzy and Internet Quiz Engine have *many* similarities (even that one is written in C++ and one in C). The quiz is the following: Which one do you think was based on the other one?
03:16:56 <Lumpio-> Are those web apps?
03:17:14 <zzo38> Lumpio-: One is.
03:17:26 <Lumpio-> Why would anybody write something like that in C/++
03:17:45 <zzo38> Guess.
03:17:53 <Bike> they've listened to people talking about php
03:18:00 <quintopia> zzo38: i doubt iqe is based on anything else :P
03:18:32 <zzo38> quintopia: Correct, but... that doesn't actually answer the question...
03:18:50 <zzo38> Lumpio-: Would you use different programming languages?
03:19:18 <zzo38> C is surely faster and more efficient than PHP.
03:19:21 <quintopia> zzo38: so you're asking whether okc or hq came first?
03:19:32 <quintopia> i couldnt guess, because i've never seen hq
03:19:38 <zzo38> quintopia: No. I am asking: "Which one do you think was based on the other one?"
03:20:05 <Lumpio-> Yes and if you're good at hand-optimizing, pure ASM is even more fast
03:20:06 <quintopia> zzo38: i doubt anything is based on iqe either
03:20:29 -!- madbr has joined.
03:20:38 <Bike> why is "asm" capitalized? is it an initialism i am unaware of
03:20:54 <zzo38> (Note that "OkCupid/HelloQuizzy" are both the same online quiz software.)
03:21:12 <Bike> and i think iqe was based on the other one.
03:21:23 <zzo38> Bike: No, wrong.
03:21:39 <zzo38> It is a trick question! Neither was based on the other one!
03:21:40 <Bike> !!!!!
03:21:46 <Bike> well played, sir.
03:22:16 <quintopia> zzo38: i didnt know okc and hq were the same
03:22:53 <zzo38> quintopia: Well, the quiz engine, the quiz database, all that is the same at least; even though the webpages are different, they both contain the same quizzes and everything.
03:22:54 <quintopia> but you can see that i said that iqe was neither based on them nor were they based on iqe, so that means i got it right!!!!
03:22:57 <zzo38> (I don't know why.)
03:23:08 <zzo38> quintopia: No, it means you did not get it wrong.
03:23:57 <quintopia> zzo38: there were no other possibilities once you ruled out the possibility that okc was based on hq or vice versa, so by process of elimination, i arrived at the right answer
03:24:34 <zzo38> In that case I must have misunderstood you, or vice versa.
03:25:08 <Bike> so, what's my prize?
03:25:36 <zzo38> There is no prize.
03:26:21 <Bike> :(
03:26:26 <Bike> what was the quiz for then?
03:26:30 <Bike> what is a quiz without a prize!
03:26:49 <zzo38> Many quiz don't have a prize, it doesn't necessarily need one.
03:27:15 <shachaf> kmc: Do you know a lot about making MD5 collisions?
03:27:25 <kmc> a little
03:27:31 <zzo38> The quizzes on OkCupid/HelloQuizzy, and the quizzes on Internet Quiz Engine, have no prize, and most others don't have prize either but I think some may have.
03:27:46 <kmc> third prize is you're fired
03:27:50 <zzo38> How common will be MD5 collisions if you don't try to make it deliberately?
03:27:55 <kmc> zzo38: very rare
03:28:48 <shachaf> kmc: GHC represents TypeRep keys as md5 hashes of the type name, roughly.
03:28:50 <zzo38> If you do make it deliberately, what is the chance to fit the format and be still a sensible file in general than the other ones?
03:29:06 <shachaf> Can you turn this into a SafeHaskell unsafeCoerce with DeriveTypeable?
03:29:24 <shachaf> You have a pretty limited alphabet.
03:31:42 <kmc> probably not
03:31:51 <kmc> how long are they?
03:32:06 <kmc> well that's a silly question
03:32:09 <kmc> how long can type names be?
03:32:11 <kmc> pretty long i guess
03:33:45 <kmc> zzo38: very good, for any A you can find X,Y such that md5(AX) = md5(AY)
03:34:26 <Bike> that's concatenation?
03:34:41 <kmc> which also means that md5(AXB) = md5(AYB) for any B, because MD5 uses the Merkle–Damgård construction
03:34:44 <kmc> Bike: yes
03:34:58 <kmc> you can find these pretty quickly... i was finding dozens of X,Y pairs per hour on my workstation
03:35:08 <shachaf> It doesn't *quite* mean that for any B, does it?
03:35:28 <kmc> sorry, all of these letters are multiples of an MD5 input block size
03:35:43 <shachaf> Ah. Maybe it works out then.
03:35:58 <shachaf> What it hashes it unwords [pkg, module, name] encoded in UCS-4, it looks like.
03:37:15 <kmc> anyway if your strings are programs, it's usually easy to construct things such that AXB does one arbitrary thing and AYB does a different arbitrary thing, even though you don't have much control over X,Y
03:37:29 <kmc> you just make that entire block one operand of a conditional or something
03:37:58 <kmc> so you can (for example) construct two Postscript documents which display completely differently, however you like, and have the same MD5 hash
03:44:20 -!- Bike has quit (Ping timeout: 240 seconds).
03:44:30 <kmc> shachaf: does every Linux syscall have at least one argument?
03:45:11 <pikhq> getuid doesn't.
03:45:19 <Sgeo> help I'm addicted to Naruto
03:45:47 <pikhq> Sgeo: Have you considered watching good anime instead?
03:45:57 <pikhq> I mean, you're well below Dragonball here.
03:46:02 <kmc> pikhq: ah yes
03:46:04 <shachaf> kmc: Not getpid()
03:46:04 <kmc> thank
03:46:10 <shachaf> Ah, pikhq said it first.
03:46:21 <shachaf> I used getpid to benchmark syscalls the other day.
03:46:24 -!- Bike has joined.
03:46:33 <Sgeo> :/ how is Naruto bad?
03:46:33 <shachaf> glibc caches it, of course.
03:46:44 <pikhq> Well, it was getuid() instead, but eh. Existence proofs don't care about which example you use. :)
03:47:27 <Sgeo> I mean, it's not PMMM. I think. But that doesn't mean it's bad
03:47:42 <pikhq> Sgeo: In short, it's bland shōnen.
03:48:01 <Sgeo> I don't know what shōnen is.
03:48:26 <Sgeo> If I'm not used to it, what's wrong with it being my canonical example?
03:49:00 <Sgeo> Is Seinfeld unfunny?
03:49:18 <pikhq> You are saying something that's roughly equivalent to saying "I'm addicted to Two and a Half Men".
03:49:41 <Bike> isn't that more of a medical condition than a taste thing
03:49:51 <kmc> i watched a lot of that show but i'm not proud of it :(
03:50:28 <kmc> Seinfeld on the other hand is brilliant and is much better than most of its imitators
03:50:43 <madbr> i gave up on tv
03:50:46 <shachaf> OK, it's just md5sum (encodeUCS4 (unwords [package, module, name]))
03:50:50 <Fiora> shonen is pretty much anything intended primarily for a ~8-18 year old male audience, though it is often designed with much wider appeal
03:50:51 <kmc> it's shockingly misanthropic for a network show
03:50:58 <Bike> seinfeld's original "airline food" routine is actually funny, it's awesome
03:51:07 <Fiora> like One Piece is technically shonen but it's popular among allthedemographics
03:51:18 <shachaf> So this ends up being making two type names which hash to the same thing, with a common prefix, under UCS-4 encoding.
03:51:46 <Sgeo> Well, I definitely see how it appeals to 8-18 year old men, although it's my gf who's getting me into it
03:52:14 <Fiora> the most stereotypical shonen is a coming-of-age story about a boy who wants to be the very best, like no one ever was
03:52:35 <madbr> and wants to catch them all? :D
03:52:50 <Fiora> to catch them is my reeaaal quest, to traiiin them iiiiis my cauuuuuuuse~
03:52:57 <Sgeo> I've never watched Pokemon
03:52:57 <kmc> ♫ POOOOO - KÉÉÉÉÉ - MONNNNN ♫ stuck in my head for the next 24h
03:53:03 <Fiora> XD
03:53:04 <kmc> thanks Fiora
03:53:07 <Sgeo> ...and this is where pikhq slaps me
03:53:07 <pikhq> Sgeo: Incidently, what anime *have* you seen?
03:53:08 <Fiora> ITS A GOOD SONG OKAY
03:53:24 <kmc> i don't know about that
03:53:27 <Bike> http://www.youtube.com/watch?v=pXZ2bTigdGY watch more mature chinese cartoons
03:53:27 <Fiora> so Naruto, Bleach, and so on would be like that as well
03:53:29 <pikhq> Sgeo: Hey, don't worry. The Pokemon anime was actually very bad.
03:53:32 <madbr> fiora: it is
03:53:51 <Fiora> http://www.youtube.com/watch?v=MfX0tIaExmM yay I'm 10 years old again
03:54:24 <Sgeo> pikhq, Death Note, Puella Magi Madoka Magica, Elfen Lied, Neon Genesis Evagelion (sp?), I forget but I think I've seen more than that
03:54:25 <madbr> not as good as ducktales woohoo but still pretty hot yes
03:54:47 <kmc> the pokémon theme is very similar to eye of the tiger and not as good
03:54:53 <kmc> woah, it has more verses?
03:55:02 <pikhq> I've not seen Evangelion, but Death Note and Mahou Shojo Madoka Magica were very good, and Elfen Lied was pretty alright.
03:55:04 <madbr> "holy shit this has chords... I thought they went out of style 10 years ago"
03:55:05 <Fiora> They usually cut down these things for TV OPs and stuff
03:55:28 <Sgeo> pikhq, I knew someone who despised Death Note
03:55:30 <madbr> kmc: similar to eye of the tiger? not convinced
03:55:32 <Sgeo> Lack of character development.
03:55:40 <pikhq> Strange, Death Note is pretty universally beloved.
03:55:56 <pikhq> The worst that could be said of it is it could be better.
03:56:04 <Fiora> the most negative I've seen about Death Note is that the final arc was a bit terrible because the publishers wanted him to drag out the series
03:56:12 <Fiora> but gosh even so it was still good
03:56:13 <pikhq> I also pretend the final arc didn't happen. :P
03:56:24 <Fiora> XD
03:56:26 <Fiora> I like this idea
03:56:42 <Sgeo> pikhq, well, when I said on Facebook that I was watching Death Note, this person tried to spoil me (didn't work since I already read spoilers)
03:57:06 <Sgeo> And said "There, saved you <I forget how many> hours"
03:57:25 <Sgeo> Back to Naruto
03:57:26 <madbr> kmc: eye of the tiger doesn't have any vocal harmonization
03:57:35 <pikhq> I'm going to arbitrarily recommend Darker than Black: Kuro no Keiyakusha, as well as Baccano!. And also Fullmetal Alchemist, because seriously, you have to. It's a law or something. :P
03:57:58 <Sgeo> Oh that reminds me, I've seen Durarara
03:58:06 <pikhq> FMA isn't the best thing ever or anything, but it's kinda mandatory viewing.
03:58:13 <Fiora> I think my favorite series are probably um... Ghost in the Shell SAC, Madoka Magica, and Shugo Chara
03:58:17 <monqy> watch out it's the anime police
03:58:27 <pikhq> Not seen Shugo Chara.
03:58:29 <Fiora> which is kind of a jumble of very different things
03:58:36 <Bike> what are anime police
03:58:39 <monqy> hands up????? have you seen everything on the list
03:58:40 <pikhq> I think right now my absolute favorite still has to be Mushishi.
03:58:41 <Bike> are they pigs?
03:58:46 <Fiora> hard sci-fi, dark magical girls, and pure shoujo
03:58:54 <madbr> it's just dude singing + cool rhythm guitar + boring bass + drums + piano + guitar riff + tambourines
03:59:01 <madbr> (eye of the tiger)
03:59:11 <madbr> pokémon theme is definitely more complex
03:59:20 <Bike> do i need to break out the molotovs to fight the anime-prison-industrial system
03:59:54 <monqy> they'll culturally enrich you till you burst
04:00:07 <madbr> it has many more layers and instrumentation changes
04:00:13 <coppro> pokémon theme has three vocal parts; the lead, a tenor accompaniement in falsetto, and a chorus on the refrain
04:00:15 <Bike> D:
04:00:27 <elliott> `addquote <kmc> the pokémon theme is very similar to eye of the tiger and not as good
04:00:30 <HackEgo> 937) <kmc> the pokémon theme is very similar to eye of the tiger and not as good
04:00:50 <madbr> coppro: but the chorus is actually multiple parts
04:01:08 <coppro> madbr: I don't believe it is
04:01:20 <madbr> hard to tell on the fly but this has like major chords and stuff
04:01:26 <madbr> so it has to be at least 3 parts
04:01:31 <Sgeo> Technically, Homestuck is partly coming-of-age stories, I guess
04:01:43 <elliott> kmc: have you seen the ron paul version of the pokemon theme (made by the singer of the original)
04:01:48 <elliott> kmc: it's um
04:01:52 <elliott> kmc: exactly what it sounds like
04:01:52 <Bike> it's amazing.
04:01:57 <Sgeo> ...then again, (forall g in genras: Homestuck is partly g)
04:02:04 <elliott> the lyrics don't even make any sense in the context of ron paul
04:02:10 <coppro> madbr: lafsjdlfskjadlf now I'm listening to it again
04:02:10 <Fiora> Yeah, homestuck's pretty shonen.
04:02:23 <Bike> i wanna be, the very best, like no-one ever taxed
04:02:26 <Bike> nah that sucks
04:02:30 <pikhq> Sgeo: Also, nice thing with most anime that's not long-running shonen? It's short.
04:02:35 <pikhq> Most anime is a single season.
04:02:37 <kmc> elliott: what
04:02:44 <elliott> kmc: https://www.youtube.com/watch?v=IVjfa0Alz5o
04:02:58 <elliott> kmc: i swear to god this is a version of the pokemon theme with the lyrics slightly changed to relate to ron paul instead of pokemon mostly
04:03:04 <elliott> by the same person who sang the original
04:03:05 <kmc> 'The Pokemon theme is a perfect song for the Ron Paul Revolution, as he racks up the delegates'
04:03:09 <elliott> witness oblivion
04:03:15 <kmc> what the fuck
04:03:16 <Sgeo> pikhq, Homestuck isn't short either
04:03:20 <Fiora> even a lot of stuff that's longer-running has to get renewed each season, and gets a new arc or something
04:03:26 <madbr> I think the guitar is at least 2 parts in pokémon too
04:03:26 <Bike> gonna train them delegates
04:03:38 <madbr> like, one panned center, one panned to the right
04:03:41 <elliott> i love how literally the only thing they changed about the chorus was s/pokemon/ron paul/
04:03:44 <coppro> madbr: nah, the chorus only sings "pokemon", "gotta catch em all", and "ooooooo"
04:03:45 <elliott> i forgot how amazing this is
04:03:49 <Sgeo> Fiora, I do admit I prefer over-arching... arcs
04:03:55 <Sgeo> Or at least, I think I'd prefer them
04:04:01 <Sgeo> I should finish DS9 at some point
04:04:11 <madbr> coppro: on at least 3 different notes
04:04:20 <madbr> that's at least 3 different singers
04:04:24 <Bike> i guess it's nice that the singer can still sing in the same register and all
04:04:25 <coppro> madbr: hmm... the oooos maybe
04:04:35 <Bike> wow 3000 people in houston
04:04:55 <madbr> the chorus also sings "in a world we must defend"
04:05:03 <Fiora> I guess a good example would be Sailor Moon, Sailor Moon R, Sailor Moon S, Sailor Moon Super S, Sailor Stars...
04:05:20 <madbr> there's at least 3 layers of keyboards
04:05:21 <coppro> madbr: yeah, good catch
04:05:35 <Fiora> whereas naruto is like. neverending. ever
04:05:46 <coppro> the chorus is at least three singers, but it's not clear enough to make out chords
04:05:53 <madbr> (piano, strings, brassy synth pads?!?, arpeggio plucks)
04:05:55 <kmc> ron paul :psyduck:
04:06:06 <Bike> why is the first time i've seen music people in this channel for the pokemon theme.
04:06:06 <Sgeo> Fiora, my gf says things like she thinks it might be ending soon
04:06:16 <Fiora> well, the first 'season' ended after
04:06:16 <Fiora> 220
04:06:27 <Fiora> but it's true, they do end! bleach ended after 366
04:06:40 <Sgeo> She may be partly referring to the manga, I think she consumes both
04:06:40 <pikhq> Bike: That's because you've not been around at other times music came up.
04:06:42 <madbr> bike: because someone said it was like a worse version of eye of the tiger :3
04:06:47 <Bike> pikhq: yes :(
04:06:54 <Sgeo> (using "consume" as a general word for reading and watching)
04:06:57 <pikhq> Gregor composes.
04:07:16 <coppro> we don't talk about theatre enough here
04:07:19 <madbr> well done cartoon themes are usually very, very good songs
04:07:20 <coppro> we should talk about theatre more
04:07:24 <coppro> yeah, they are
04:07:26 <Bike> nice. all i do is listen to techno and dream
04:07:27 <madbr> and when you take it appart it shows
04:07:36 <Sgeo> madbr, how about the Stargate Infinity theme?
04:07:37 <Sgeo> :D
04:07:38 <madbr> they look simple but they aren't
04:08:09 <madbr> sgeo : listening
04:08:10 <Sgeo> (Note: My statement should not be construed as endorsing the Stargate Infinity theme as "good")
04:08:14 <Fiora> http://www.youtube.com/watch?v=EIVgSuuUTwQ I still like how ghost in the shell's theme was in russian
04:08:25 <coppro> my favourite songs to sing are definitely Broadway songs though
04:08:26 <Bike> well the singer's russian.
04:08:39 <Fiora> still!
04:08:56 <madbr> sgeo : the rip I have on youtube isn't too good
04:09:03 <Bike> still love that radiohead did an anime theme song once
04:09:10 <Fiora> http://www.youtube.com/watch?v=4-PkAQcuZOw oh now Lain's is stuck in my head
04:09:19 <Sgeo> I should watch Ghost In The Shell. I think?
04:09:19 <madbr> sgeo: it's not too bad but it's no ear worm
04:09:33 <pikhq> Sgeo: Yeah, Ghost in the Shell: SAC is good.
04:09:39 <Fiora> Sgeo: SAC is amazing
04:09:40 <Bike> Sgeo: it's pretty cool
04:09:41 <Sgeo> ": SAC"?
04:09:43 <pikhq> Speaking of, I need to finish 2nd Gig.
04:09:45 <Fiora> Stand Alone Complex, the TV series
04:09:55 <Fiora> (and a sequel film)
04:10:13 <Bike> http://www.youtube.com/watch?v=cnkD0vAMSJ0 boa's a pretty cool band.
04:10:14 <Fiora> it's just... it's really a wonderful series
04:10:26 <Bike> I don't know why this song is on a Lain EP, but whatever.
04:10:31 <pikhq> (I spent the winter break on an anime binge with my girlfriend, that's one that didn't quite finish.)
04:11:00 <Fiora> I could fangirl endlessly about SAC but I don't want to be rambly
04:11:10 <Sgeo> Back to watching Naruto
04:11:19 <pikhq> I'll just say it's cyberpunk done well and leave it at that.
04:11:32 <monqy> imo make a `list but instead of for some lame webcomic it's when sgeo watches naruto
04:11:37 <monqy> what the world really wants to know
04:11:49 <madbr> and music discussion is already over
04:11:57 <Bike> sorry
04:12:19 * pikhq likes Sakanaction
04:14:43 <madbr> that's the best thing about western music... the harmony and layering
04:15:02 <Bike> i was pretty disappointed when i found out how western polyphony apparently is
04:15:22 <Bike> wanted to find some carnatic dubstep or w/e
04:15:59 <madbr> it's not totally exclusive to europe, but that's definitely where it's the most developed yeah
04:16:21 <madbr> probably to compensate for being so weak rhythm wise :D
04:16:27 <Bike> haha, yeah.
04:16:49 <madbr> but yeah africans have some polyphony too I think
04:17:11 <Bike> i remember hearing that the european orchestral tradition is basically taken from the andalus, and i've found a bit of andalusian music i liked
04:17:16 <madbr> and the asian Sho/Sheng is usually played in chords I think
04:18:36 <Bike> i haven't tried much traditional chinese music, honestly, and only a bit of japanese because my guitarist friend is such a japanophile
04:19:27 <Fiora> pfff, solsty
04:19:58 <madbr> I think georgian music also has polyphony
04:20:08 <madbr> but that's probably because it's close enough to europe
04:20:17 <Bike> we went to a place in portland once that had a shamisen player, that was pretty boss
04:20:26 <Bike> thing has like forty strings, man.
04:20:35 <Bike> (but, monophonic)
04:20:59 <Bike> oh apparently "shamisen" means "three strings", wow i'm bad at this.
04:21:15 <madbr> one my chinese teacher brought a zhang... not all that hard to play actually
04:21:41 <madbr> but you can either play outside of the pentatonic scale, or play polyphonically
04:21:48 <madbr> but not both at the same time
04:21:53 -!- augur has joined.
04:21:53 <Bike> that's bizarre.
04:21:56 <pikhq> Bike: To be fair, that's hard to know.
04:22:12 <pikhq> "Shamisen" is a very very strange reading.
04:22:15 <Bike> pikhq: well, i could have paid more attention to the performer...
04:22:28 <Bike> this was an event in a museum, they were passing out recordings and info on it.
04:22:32 <pikhq> 三味線 would normally be read something like "sanmisen".
04:23:06 <coppro> the double bass is the best instrument
04:23:21 <coppro> (it isn't, but it's pretty sweet all the same)
04:23:31 <Bike> I don't suppose anyone knows of a Japanese musical instrument with more than three strings, which is played in a sitting position on the ground (not like a guitar)
04:23:44 <madbr> bike: you mean a koto?
04:24:09 <Bike> yes, that was it!
04:24:22 <Bike> So, uh. That was cool, even if I have the attention span of a fly.
04:24:24 <madbr> http://www.youtube.com/watch?v=r6ALjvjmjHg
04:24:37 <madbr> yeah actually the zheng was a lot like that
04:25:04 <Bike> It was part of an exhibition of woodcuts, they had the whole "traditional" theme going.
04:25:34 <Bike> though i don't think they went as far as having the performer wear a kimono.
04:25:57 <madbr> yeah european music had instruments like that... they're mostly dead, killed by the piano
04:26:08 <Bike> harp too obvious?
04:26:31 <madbr> harp is different enough I think
04:26:49 <Bike> how so? lots of strings, right?
04:27:03 <madbr> yeah but the sound is very different
04:27:33 <Bike> because it's on air instead of a board, right
04:27:43 <madbr> because the strings are plucked
04:27:52 <madbr> and not tripled
04:28:45 <Bike> Tripled?
04:28:49 <madbr> glissandos are also a lot easier on harps
04:29:02 <madbr> yeah, on a piano, each note has 3 strings
04:29:12 <coppro> Bike: In a piano, strings are set two or three to a note
04:30:23 <Bike> I meant harps as a thing that is like a koto and mostly dead because of pianos.
04:31:05 <copumpkin> kmc: that mari0 looks cool
04:31:38 <shachaf> Oh, maybe copumpkin is an expert in MD5 collisions.
04:32:23 <copumpkin> nope )
04:32:32 <shachaf> Uh oh. Did copumpkin become Russian?
04:32:50 <copumpkin> no, someone just poked my eyes out (
04:32:55 <madbr> bike: but not as dead as harpsichords
04:33:03 <shachaf> copumpkin: Oh no! :·(
04:33:07 <Bike> RIP harpsichords :(
04:33:09 <coppro> harps are not dead
04:33:18 <Bike> i thought they were keyed like pianos though
04:33:18 <coppro> harps are tonally quite different from the piano
04:33:22 <coppro> what
04:33:29 <coppro> harps or harpsichords?
04:33:31 <madbr> and less dead than psalterions and clavicords
04:33:33 <Bike> harpsichords.
04:33:37 <shachaf> coppro: Sure, but no one plays harpsy chords anymore.
04:33:40 <coppro> oh yeah, they were
04:33:42 <coppro> *are
04:33:44 <Bike> god, i know shit about music
04:33:47 <coppro> celestes aren't quite dead
04:33:56 <shachaf> Bike: I know less than you, so ha!
04:34:06 <shachaf> Except I know that "octave" means "bit".
04:34:10 <Bike> i know a guy in another channel who did historical harpsichord playing for a while, pretty cool to listen to him
04:34:17 <madbr> it's like electric bass vs acoustic bass vs tuba fighting for the bass
04:34:45 <madbr> vs potentially cello and bassoon too if you want to be inclusive
04:34:52 <madbr> and electric bass is winning
04:34:59 <madbr> and tuba is going out of style
04:35:10 <shachaf> i love harpsichords
04:35:12 <shachaf> they are so easy
04:37:05 <coppro> madbr: acoustic bass guitar or upright bass?
04:37:28 <madbr> I was thinking of upright
04:38:04 <coppro> electric bass really isn't comparable, since in modern music there is a huge distinction between acoustic and electric instruments
04:38:27 <coppro> the tuba is going out of style because of its lack of versatility---precisely what killed many other keyboard instruments
04:39:00 <madbr> coppro: lack of versatility?
04:40:04 <kmc> russians use parentheses?
04:40:07 <coppro> it's slow
04:40:17 <madbr> it's slow compared to the electric bass
04:40:26 <coppro> sure, but electric instruments don't count
04:40:33 <madbr> except it's AFAIK still faster than the trombone
04:41:18 <coppro> I meant for rapid notes. You're moving a shitton of air through a tuba
04:41:30 <madbr> yeah but it does have valves
04:41:33 <madbr> instead of a slide
04:41:35 <coppro> yeah, so it can pitch quicker
04:41:55 <coppro> also a tuba playing at maximum volume is quite a thing
04:42:02 <coppro> *that* is something it is good at
04:42:23 <madbr> http://www.youtube.com/watch?v=2-NVMsj6lXA
04:43:04 <madbr> bass trombone is louder actually
04:43:24 <madbr> coppro: still not as loud as electric bass tho
04:43:26 <madbr> :D
04:43:31 <coppro> madbr: sure, if you crank the volume
04:43:39 <madbr> it cuts more tho
04:43:40 <coppro> but if you hook a tuba up to a sound system you can make it as loud as you want too
04:43:46 <coppro> *want to
04:44:04 <Bike> can i interject to request electric tuba music
04:44:10 <Bike> i've liked the electric trumpet i've heard
04:45:22 <coppro> Bike: is it an actual instrument or just synthesized?
04:45:32 <Bike> actual, you just put pickups in the horn
04:45:32 <coppro> madbr: yeah flight of the bumblebees is sweet
04:45:36 <coppro> cool
04:45:55 <Bike> http://www.youtube.com/watch?v=JCCRI1Kf6Bk
04:47:40 <madbr> another case is oboe and bassoon being replaced by saxophonese in pop
04:48:40 <coppro> Bike: eww
04:48:53 <Bike> >:/
04:50:13 <coppro> not a fan
04:50:29 <coppro> madbr: yeah, but pop is not all of modern music
04:51:00 <coppro> (incidentally, the most depressing thing in modern music is people who think mixing drum kits and orchestras is a good idea)
04:54:52 <madbr> eh
04:55:13 <madbr> well, I mean oboe and basson being replaced in "everything except classical"
04:55:43 <madbr> (classical in the broad meaning, yes I know it's not the same thing as baroque or romantic technically)
04:56:58 <madbr> tbh I'm not opposed to mixing drums and orchestras
04:57:35 <madbr> it kinda turns the orchestra into a large jazz band but there's tons of good 70s movie music done on that kind of ensemble
04:57:56 <coppro> my issue is more that drummers don't learn to play quiet
04:58:54 <madbr> ah yeah :3
04:59:17 <madbr> that's because they play too much with electric guitarists
04:59:48 <madbr> which have big heads and their instrument has super large spectrum that buries everybody else
04:59:57 <coppro> yeah
05:00:18 <coppro> but the pedaled instruments in drum kits also can't play quietly
05:00:24 -!- TeruFSX has quit (Ping timeout: 252 seconds).
05:00:58 <madbr> you mean the kick drum
05:01:05 <coppro> yeah
05:01:36 <coppro> and the hi-hat, but that's less obnoxious
05:01:40 <madbr> dunno, jazz drummers can do it
05:02:01 <madbr> the hihat is replaceable by a tambourine or triangle
05:02:16 <madbr> or a snare played with brushes
05:02:45 <coppro> sure, but that's all too complicated for a drummer :P
05:02:56 <coppro> (unlike percussionists, who are the most hilarious group in any orchestra)
05:03:03 <madbr> he's playing with an orchestra
05:03:24 <madbr> you don't get joe metal drummer for playing with a zillion violins, you get a good one :D
05:04:07 <coppro> sadly, that is not my experience
05:04:52 <coppro> drum kits (and the bad drummers that accomapny them) seem to follow around hollywood conductors
05:05:03 <coppro> *follow hollywood conductors around
05:05:08 <coppro> (also fuck those guys, they're too full of themselves)
05:05:13 <madbr> you can probably add more padding to the kick
05:05:24 <madbr> or just give him less juice in the mix :o
05:05:35 <coppro> what "mix"
05:05:37 <coppro> this is an *orchestra*
05:06:08 <madbr> no close mics on the drum? :o
05:06:19 <madbr> I see
05:06:46 <coppro> they are loud enough without a sound system, thank you
05:07:03 <madbr> if you take metal drummers, yeah
05:08:02 <coppro> oh and the drown out the other players in the orchestra so they can't hear what they're doing
05:08:40 <madbr> you could take away their sticks
05:08:44 <madbr> and give them brushes
05:09:18 <coppro> so some brilliant hollywood conductors (and I've seen this multiple times *this year*) get the idea of shoving *all* the strings off to one side, *all* the woodwinds to the other, stuff the brass in the back mostly by the woodwinds because there's more room, and then stick the drums *in the middle* with sound barriers in between so that the strings can hear each other, as can the woodwinds
05:09:27 <coppro> problem: if you're sat to the side, GOOD LUCK HEARING THE VIOLINS
05:09:34 * coppro rages
05:10:20 <madbr> :o
05:11:02 <coppro> because there are two layers of sound barrier and a drum kit in between me and the strings
05:11:25 <madbr> and no monitors
05:12:11 <coppro> personally, I'd rather just stick with the percussionists
05:12:18 <coppro> they're better at producing varied sounds, and funnier
05:13:16 <madbr> true
05:13:35 <madbr> though they can't quite get the energy of the kick + snare duo
05:14:33 <coppro> you can accent with brass for that
05:15:05 <madbr> brass is awesome but there's just something unique to the kick+snare
05:15:55 <madbr> imho they're more complementary actually
05:16:16 <coppro> that's true, I suppose
05:16:41 <coppro> but no reason you can't give the percussionists a bass drum
05:16:54 <coppro> if you really want to tie two up to get that effect
05:17:35 <madbr> isn't orchestral bass drum something totally different?
05:17:43 <madbr> with like super long decay
05:19:04 <coppro> they're different, but the score could easily specify "a small bass drum" or something
05:19:14 <coppro> you can do all sorts of shit with percussion
05:19:38 <coppro> oh, and as for why percussionists are funny: they have to ensure they get their instruments to the right people at the right time
05:19:43 <madbr> what if you had one of the percussionists play the drums instead of the rock drummer? :D
05:20:19 <coppro> I've seen a percussionist reaching over a table to get the triangle another one was frantically passing him like a bar before he came in
05:20:27 <coppro> he only barely made it
05:20:53 <madbr> :o
05:20:59 <coppro> that was funny
05:21:18 <madbr> tbh drums work better with synths
05:23:03 <madbr> like, it's very hard to make something like beethoven work on the NES's sound chip
05:23:11 <madbr> because your tones are so static
05:23:33 <madbr> you're almost forced to put in deep bass and smashing drums
05:24:57 <coppro> well sure
05:25:08 <coppro> but beethoven also requires incredible dynamic range
05:25:23 <coppro> most speaker sets can't come even close
05:26:20 <pikhq> 90db is a shit-ton of dynamic range to expect from a speaker set. :)
05:26:23 <madbr> like, the one time I did a 5th symphony beethoven cover, I had to use all the "cheat" extra chips just to get more channels and cheating FM synth chip that was used in one japanese NES game
05:26:45 <madbr> and double up pretty much every note with another detuned channel
05:26:51 <madbr> otherwise it was just too shrill
05:27:29 <madbr> coppro: I'm not sure dynamic range is the problem actually
05:27:42 <coppro> oh yes it is
05:28:09 <coppro> the cellos/bass should properly be barely audible when they introduce the ode to joy
05:28:18 <madbr> mhmm
05:28:42 <coppro> and in the same movement as a enourmous choir singing at full volume.
05:29:02 <coppro> *enormous
05:29:41 <coppro> have you ever had the good fortune to attend a performance of the 9th? it's incredible
05:31:08 <madbr> true
05:31:31 <madbr> but when dealing with synths, you have to deal with the "static" aspect of the tone
05:31:38 <madbr> which is an even bigger problem imho
05:32:09 <coppro> I suppose
05:32:14 <coppro> don't use small numbers of channels :P
05:32:38 <madbr> like, if you sequence repeated notes on strings on a synth, it sounds super stupid
05:32:43 <madbr> because each note is the same
05:33:17 <zzo38> You must mean VRC7 sound for FM synth used in Famicom, it was only one game
05:33:23 <madbr> zzo: yes
05:33:42 <Bike> don't good synths deal with that better
05:33:58 <zzo38> I have made a .NES ROM image which uses the VRC7 mapper, but it is only for testing the sounds so that I can figure out the sound
05:34:12 <madbr> bike: normally the dude that sequences it will vary the volume and timing of the notes
05:34:31 <madbr> and if he's using a large VST orchestra sound bank it might have round robin samples too
05:35:33 <Sgeo> Ok, episode 5 of Naruto had some.... rather predictable moments
05:35:42 <Sgeo> Let no one call any of the characters Genre Savvy
05:38:07 <zzo38> I have made some music using CsoundMML now too, so it isn't only NSF.
05:38:32 <madbr> tbh vrc7 isn't that interesting
05:38:38 <madbr> it's a cut down opl2
05:38:54 <zzo38> It is a variant of OPLL actually.
05:39:12 <madbr> it's a variant of opll which is a cut down opl2 :D
05:39:38 <zzo38> I have used VRC6, VRC7, Namco-163, and MMC5, even multiples ones together, I have not used the others
05:40:03 <zzo38> You can make the custom instrument to make a sine wave in VRC7 though if you want an extra sine wave.
05:40:12 <madbr> opl3 is the sound chip that has the most "potential undiscovered sonic territory" imho
05:40:39 <madbr> since there's so little music that uses some of the features they put it
05:40:55 <kmc> the little sound chip that could
05:41:14 <madbr> zzo: vrc7 can do more interesting things than sine
05:41:37 <zzo38> madbr: Yes, I know, it can do other things, just that a sine wave is the simplest possibility, so it is one thing
05:41:49 <zzo38> Is there the program that will play OPL3 musics? Do you know if XPMCK is compatible with it?
05:42:20 <madbr> there's an inaccurate winamp plugin I think
05:42:27 <madbr> for opl2
05:42:42 <kmc> dosbox's emulation is supposed to be pretty good
05:42:57 <madbr> kmc: I think it has improved
05:43:05 <zzo38> Can dosbox play OPL3 or only OPL2?
05:43:10 <kmc> OPL3 i believe
05:43:10 <madbr> opl3
05:43:36 <madbr> like, the 2op patches are pretty close
05:43:36 <zzo38> Then I suppose it can be made a DOS program which plays it, would work!
05:43:42 <madbr> not spot on but not very far
05:44:17 <kmc> https://www.youtube.com/watch?v=1hPVwjZ6bNM this person thinks the emulation is not so good
05:44:20 <madbr> zzo: there's a messed up win9x driver that lets you override the MIDI patches I think
05:44:22 <zzo38> I have requested a feature for a NSF player to read VRC7 instruments from a NSFe chunk, but they didn't want that.
05:44:56 <zzo38> madbr: I could just use DOS it is no problem. I don't want to override the MIDI patches anyways
05:45:44 <madbr> I use adlib tracker 2 which lets you use pretty much all the features
05:46:36 <madbr> including manipulating the synth registers at like 800hz :D
05:46:38 <zzo38> I just wondered if XPMCK supports it, but I don't think so.
05:47:24 <madbr> that kind of tools tend to support japanese stuff
05:47:32 <madbr> since occidentals use trackers
05:48:42 <zzo38> Do you know if there is a Csound file to emulate OPL3?
05:49:04 <madbr> no idea
05:49:11 <madbr> I have the real thing so no need to
05:49:28 <zzo38> (There are a few different programs to compose music for Csound, or you can just enter the events directly. I myself use CsoundMML (which I wrote), although I have written only one music with it so far)
05:50:07 <zzo38> I don't think I have OPL3 hardware in my computer though, so I have to use emulator. But if DOSBox can emulate it then I could use it with DOS.
05:52:55 <madbr> tbh all that stuff tends to have a not-so-interesting effort-to-result ratio
05:53:05 <zzo38> I think the most popular program to compose music with Csound is called Blue. I have tried it once but find it extremely complicated to use, so I made CsoundMML to work it much better.
05:53:48 <zzo38> Even so with Csound you can make it to do different things with the same score file by using different orchestra files.
05:55:09 <zzo38> And, I have made a plugin in Csound to load S3M sample packs and Famicom DPCM samples.
05:55:14 <madbr> if it shortens the feedback loop time (the time before you hear what you're making) then it's totally worth it
05:55:38 <madbr> zzo: can't you already load, like, SF2?
05:56:18 <zzo38> madbr: Yes, Csound can already load SF2, but now I added the command to load S3M as well.
05:56:37 -!- monqy has quit (Quit: hello).
05:57:16 <zzo38> ADPCM packing is not supported but I don't know how that works so I did not program that in.
05:58:51 <madbr> you should look up the .WAV format specs, it supports 1 or 2 varieties of ADPCM
05:59:55 <zzo38> I have also implemented the Csound plugin for PADsynth, which works by adding up some bell curves to make the amplitude table, putting random values in the phase table, and then inverse Fourier transform. It is as simple as that.
06:00:47 <madbr> eh
06:01:01 <madbr> you can get the same result by stacking a bunch of saws
06:01:52 <madbr> or passing noise through 2 or 3 slightly detuned comb filters
06:18:48 <madbr> zzo: has any interesting physical modeling come out of csound?
06:24:35 <madbr> It's kindof the field I like tracking in synthesis and I haven't seen much interesting stuff in the field lately
06:34:04 <kmc> apparently crossdressing is part of the mating strategy for some cuttlefish
06:34:24 <Bike> lots of fish do it, don't they?
06:34:25 <kmc> the smaller males will disguise themselves as females and use this to get close to an actual female
06:34:50 <kmc> then when the big aggressive males get distracted with fighting each other, the crossdressing male gets to mate
06:35:31 <Bike> I think whoever does Scandinavia and the World did some comics about mating strategies like that... either in fish or in birds, I don't remember.
06:35:33 <Fiora> I love that nice little chart of a bunch of animals that use extremely non-heteronormative mating techniques, change genders, and other sorts of cool things
06:36:05 <Fiora> oh! there it is
06:36:09 <Fiora> http://humon.deviantart.com/#/d4vlen4
06:36:32 <Bike> yeah, that.
06:36:44 <Fiora> I love her art
06:36:51 <shachaf> i love monoids
06:37:04 <Fiora> I love, um. Tales games?
06:37:17 <Bike> Oh, yep, there's cuttlefish.
06:37:19 <shachaf> Like _Tales of Monkey Island_?
06:37:36 <Fiora> http://en.wikipedia.org/wiki/Tales_(series)
06:37:45 <Fiora> cuttlefish are kind of wonderful
06:37:46 <shachaf> I know.
06:37:48 <Bike> http://humon.deviantart.com/art/Sneaky-Cuttlefish-293754048 flasher cuttlefish
06:38:09 <shachaf> Bike: I bet you're an expert in MD5 collisions?
06:38:24 <shachaf> It looks like the thing I want is tricky.
06:38:30 <Bike> I did my triple doctoral thesisin md5 collisions!
06:38:39 <shachaf> Great!
06:38:52 <Sgeo> I'm an expert on claiming to be an expert about how to claim to be an expert.
06:38:56 <shachaf> Can I make one with a UCS-4 encoded string?
06:39:12 <shachaf> In particular it has to be made up of alphanumeric Unicode codepoints, in fact. :-(
06:39:40 <kmc> that seems pretty severe
06:39:45 <shachaf> I forgot about that part.
06:39:45 <Bike> you have to tell me what amazing Safe Haskell environment you're breaking into, first.
06:39:46 <kmc> although perhaps most assigned codepoints are alphanumeric
06:40:06 <shachaf> There are only 21 bits of "valid" codepoints, though.
06:40:21 <shachaf> > last ['\0'..]
06:40:23 <lambdabot> '\1114111'
06:40:31 <shachaf> > generalCategory '\1000000'
06:40:32 <lambdabot> PrivateUse
06:40:43 <shachaf> I bet GHC doesn't like PrivateUse in identifiers.
06:40:58 <kmc> what you use private use characters for is your own business!
06:41:13 <shachaf> > generalCategory '\800000'
06:41:15 <lambdabot> NotAssigned
06:42:04 <fizzie> It's not even full 21 bits, it's more like...
06:42:05 <fizzie> > logBase 2 (17*65536)
06:42:07 <lambdabot> 20.087462841250343
06:42:11 <fizzie> That many bits.
06:42:13 <shachaf> Right.
06:42:14 <shachaf> Out of 32.
06:42:22 <shachaf> So every fourth byte will be 0 straight off.
06:45:32 <Sgeo> pikhq,
06:45:47 <Sgeo> TV Tropes claims that the Naruto anime has 85 consecutive filler episodes
06:45:52 <Sgeo> And I thought Endless Eight was bad
06:46:10 <Sgeo> (Although I guess filler isn't generally as bad as repeat episodes)
06:46:28 <Sgeo> (Also, I never actually watched more than ... 3 or 4 episodes of Endless Eight)
06:46:48 <Sgeo> Which reminds me, I left Suzumiya Haruhi off the list of anime I've watched
06:48:56 <pikhq> I watched Endless Eight at 4x speed.
06:49:04 <pikhq> When you do this it's actually tolerable.
06:49:35 <Bike> that's the thing where they did the same episode eight times?
06:51:03 <Sgeo> yes
06:52:02 <Bike> people actually watched that?
06:52:03 <Sgeo> Review I just saw of Naruto said that the plot was cliche and it's just the characters that make it interesting
06:52:03 <Sgeo> :/
06:52:10 <Sgeo> I prefer plot over characters
06:52:32 <Sgeo> Bike, when it first came out, people never knew if the next episode would be the one to break the cycle, I think
06:53:27 <Deewiant> Sgeo: Well, the episodes were called "Endless Eight" so after the first two or three I think it was rather obvious
06:54:23 <pikhq> Deewiant: In the light novel it was a somewhat short chapter.
06:55:10 <Deewiant> pikhq: My point stands
06:55:15 <Sgeo> One of them, I think the fourth, had a strong airplane motif
06:55:23 <Sgeo> That ended up being irrelevant
06:55:36 <pikhq> But yeah, on 4x it was entertaining.
06:55:44 <pikhq> Silly voices had a lot to do with it, mind.
06:55:52 <pikhq> Also, on 4x it was 2 episodes' worth.
06:56:12 <Sgeo> I remember seeing a post that was made while it was still going on, suggesting to suggest to future viewers to just watch first two than "hint" (which turned out to be red herring) then last
06:56:26 -!- WeThePeople has quit (Quit: Leaving).
07:06:06 -!- asiekierka has quit (Excess Flood).
07:08:27 -!- asiekierka has joined.
07:24:12 -!- madbr has quit (Quit: Radiateur).
07:37:24 <Sgeo> `list
07:37:26 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
07:54:24 <Sgeo> Endless Eight is really only the same episode repeated 7 times, plus the episode at the beginning
07:55:32 <Bike> oh, well, that's alright then
07:56:58 <Sgeo> I should probably order pizza tomorrow
07:57:04 <Sgeo> Haven't been eating enough protein lately
07:59:17 <Bike> http://chainsawsuit.com/comics/20120906.png
08:00:54 <Sgeo> That sounds delicious. Especially because there's no actual pepperoni
08:02:07 <Bike> I suppose you think the cantor set doesn't contain any actual points, either!!
08:03:23 <kmc> http://www.theonion.com/articles/pizza-huts-new-pizza-lovers-pizza-topped-with-smal,9891/
08:04:05 <Fiora> kmc: why is the onion so wonderufl
08:07:17 <shachaf> http://www.theonion.com/articles/existentialist-firefighter-delays-3-deaths,17500/
08:11:19 <shachaf> Hmm, I hadn't seen http://www.theonion.com/articles/white-house-jester-beheaded-for-making-fun-of-soar,17495/
08:12:02 <Bike> Obama, a wit in his own right, warned that any guest who further tested his patience would 'be heading' for trouble.
08:15:11 <fizzie> Sssss, two more HTML-only emails today. They're getting more and more common. :/
08:40:54 -!- Strigoides has left ("Leaving").
09:05:42 -!- epicmonkey has joined.
09:07:59 -!- ogrom has joined.
09:08:57 <zzo38> madbr: Csound does have many commands for physical modeling; look at the documentation.
09:11:42 <zzo38> fizzie: Auto-reply to them.
09:18:15 <Deewiant> https://groups.google.com/forum/?fromgroups=#!topic/shibboleth-users/EjvS2Cgio6c
09:19:18 <Bike> wow, google translate was pretty bad in 2010
09:19:28 -!- Deewiant has set topic: FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE | concealed in fold of goat-time lumber | http://codu.org/logs/_esoteric/.
09:20:14 -!- Bike has quit (Quit: bored).
09:37:36 -!- Phantom_Hoover has joined.
09:41:23 -!- copumpkin has quit (Ping timeout: 252 seconds).
09:41:54 -!- copumpkin has joined.
09:45:26 <zzo38> I have the idea of stereo Famicom register, using the unused $4009 register to control the stereo.
09:46:12 <zzo38> bit7 = output internal square waves to left channel. bit6 = output internal triangle/noise/DPCM to left channel. bit5 = output internal square waves to right channel. bit4 = output internal triangle/noise/DPCM to right channel. bit3 = output internal square waves to cartridge. bit2 = output internal triangle/noise/DPCM to cartridge. bit1 = output cartridge audio to left channel. bit0 = output cartridge audio to right channel.
09:50:40 <zzo38> I don't think the NSF specifications prohibit writing to $4009, so you could make stereo NSF which still plays in mono as well.
09:55:54 -!- epicmonkey has quit (Ping timeout: 264 seconds).
10:01:32 -!- saijanai_ has quit (Ping timeout: 255 seconds).
10:07:16 -!- saijanai_ has joined.
10:35:02 -!- zzo38 has quit (Remote host closed the connection).
11:07:06 -!- frecz11642 has joined.
11:07:14 <frecz11642> Hi
11:07:35 <frecz11642> Something strange happened with me 2 times in the near past
11:08:03 <frecz11642> i would like to ask you guys how it is possible
11:08:07 <c00kiemon5ter> did it involve cookies ?
11:08:13 <Deewiant> `welcome frecz11642
11:08:17 <frecz11642> the thing is that i dreamed pictures of my near future
11:08:18 <HackEgo> frecz11642: 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.)
11:08:28 <frecz11642> i checked every possibility and i had to realize that i really dreamed my future
11:08:54 <shachaf> `run welcome frecz11642 | sed s/dal/dahl/
11:08:56 <HackEgo> frecz11642: 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.dahl.net.)
11:09:45 <c00kiemon5ter> the future must have been involved with cookies!
11:09:56 <frecz11642> have you ever dreamed of your future?
11:10:26 <frecz11642> sorry for my english as i'm not a native speaker or writer in this case
11:12:48 <fizzie> shachaf: The word "incorrigible" comes to mind, somehow.
11:13:05 <shachaf> fizzie: I hope oerjan doesn't kick me again.
11:13:12 <shachaf> I didn't make any permanent changes.
11:15:08 <Deewiant> frecz11642: If your dream concerned something relatively expected, I doubt that that's unusual. Otherwise, if that future already happened to you and you realized afterwards, it was probably déjà vu with some confirmation bias. If it was about something unexpected that hasn't happened yet, you're probably simply wrong. In any case, this isn't an appropriate channel (or network) for such discussions: you
11:15:10 <Deewiant> may want to visit #esoteric on irc.dal.net instead.
11:15:31 <shachaf> fizzie: Oh, wait.
11:15:39 <shachaf> This person actually wanted irc.dal.net, didn't they. :-(
11:16:25 <shachaf> Sorry, frecz11642.
11:16:33 -!- Patashu has joined.
11:17:51 <fizzie> Deewiant: You're such a regular quadrilateral.
11:18:15 <Deewiant> fizzie: I'm a diamond in the rough.
11:29:43 -!- epicmonkey has joined.
11:45:42 -!- oklopol has quit (Ping timeout: 264 seconds).
11:55:43 -!- oerjan has joined.
12:03:59 <Jafet> `run welcome | sed s/dal/dali/
12:04:01 <HackEgo> 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.dali.net.)
12:11:35 <fizzie> `run welcome | perl -pe 's/([aeiouy])([bcdgklmnpqrstvxz])\b/$1h$2/g'
12:11:36 <HackEgo> Welcome to the internationahl huhb fohr esoterihc programming language design and deployment! Fohr more informatiohn, check ouht ouhr wiki: http://esolangs.org/wiki/Main_Page. (Fohr the othehr kind of esoterica, try #esoterihc ohn irc.dahl.neht.)
12:12:35 <shachaf> `cat bin/?
12:12:37 <HackEgo> ​#!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z | sed "s/ *$//") \ [ -e "wisdom/$topic" ] || { echo "$1? ¯\(°_o)/¯"; exit 1; } \ cat "wisdom/$topic"
12:12:56 -!- Bacta has joined.
12:13:03 <Bacta> Is Brainfuck enterprise ready?
12:13:29 <oerjan> only with the PSOX framework hth
12:13:36 <shachaf> `run >wisdom/'?h' echo '? "$@" | perl -pe '\''s/([aeiouy])([bcdgklmnpqrstvxz])\b/$1h$2/g'\'''
12:13:39 <HackEgo> No output.
12:13:42 <shachaf> `run chmod +x wisdom/\?h
12:13:45 <HackEgo> No output.
12:13:46 <shachaf> `?h welcome
12:13:47 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ?h: not found
12:13:52 <shachaf> Oops.
12:13:55 <c00kiemon5ter> `welcome Bacta
12:13:57 <HackEgo> Bacta: 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.)
12:14:02 <shachaf> `run mv wisdom/\?h bin/
12:14:05 <HackEgo> No output.
12:14:06 <shachaf> `?h welcome
12:14:08 <HackEgo> Welcome to the internationahl huhb fohr esoterihc programming language design and deployment! Fohr more informatiohn, check ouht ouhr wiki: http://esolangs.org/wiki/Main_Page. (Fohr the othehr kind of esoterica, try #esoterihc ohn irc.dahl.neht.)
12:14:18 <shachaf> `?h finland
12:14:20 <HackEgo> Finland ihs a Europeahn country. There are two people ihn Finland, and aht least nine of thehm are ihn thihs channehl. Coruhn drivehs the buhs.
12:14:53 <shachaf> `run welcome | perl -pe 's/([aeiouy])([bcdgklmnpqrstvxz])/$1h$2/g'
12:14:55 <HackEgo> Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd of ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
12:15:14 <shachaf> `run >bin/'?hh' echo '? "$@" | perl -pe '\''s/([aeiouy])([bcdgklmnpqrstvxz])/$1h$2/g'\'''
12:15:17 <HackEgo> No output.
12:15:19 <shachaf> `run chmod +x bin/\?hh
12:15:22 <HackEgo> No output.
12:15:23 <oerjan> `cat bin/?h
12:15:24 <HackEgo> ​? "$@" | perl -pe 's/([aeiouy])([bcdgklmnpqrstvxz])\b/$1h$2/g'
12:15:27 <shachaf> `?hh hexham
12:15:29 <HackEgo> Hehxhahm ihs a Euhrohpeahn town. Thehre ahre nihne peohple ihn Hehxhahm, ahnd aht leahst two of thehm ahre ihn thihs chahnnehl. Tahnehb loohks aftehr the hahm.
12:15:32 <shachaf> oerjan: Oops
12:15:37 <shachaf> I should've escaped that, shouldn't I.
12:15:45 <shachaf> And maybe added #!
12:15:45 <oerjan> ...wat?
12:15:46 <shachaf> Whatever.
12:16:09 <shachaf> oerjan: Wait, this isn't sabotage, is it?
12:16:12 <shachaf> It's a whole separate command!
12:16:33 <shachaf> `?? monqy
12:16:34 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ??: not found
12:16:38 <shachaf> `?hh monqy
12:16:40 <HackEgo> The friehndshihp mohnqy ihs ahn ahnciehnt Chihnehse myhstehry; ahsk ihtihduhs21 fohr dehtaihls.
12:16:46 <shachaf> `?? zzo38
12:16:47 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ??: not found
12:16:51 <shachaf> `?hh elliott
12:16:53 <HackEgo> ehlliohtt wrohte thihs leahrn DB, ahnd wrohte ohr ihmprohvehd mahny of the ohthehr cohmmahnds ihn thihs boht. He prohbahbly hahs dohne ohthehr thihngs?
12:16:53 <shachaf> `?hh zzo38
12:16:54 <HackEgo> zzo38 ihs noht ahctuahlly the nehxt vehrsiohn of fuhngoht, muhch ahs iht may seehm.
12:16:58 <shachaf> imo big improvement
12:17:55 <shachaf> `run >bin/'?hhh' echo '? "$@" | perl -pe '\''s/([aeiouy])([bcdgklmnpqrstvxz]+)/$1h$2/g'\'''; chmod +x bin/\?hhh
12:17:59 <HackEgo> No output.
12:18:03 <shachaf> `?hhh welcome
12:18:04 <HackEgo> Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd of ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
12:18:22 <fizzie> ?hhhhh will just be s/./h/g, right?
12:18:22 <lambdabot> Unknown command, try @list
12:18:33 <shachaf> `?hhh fizzie
12:18:34 <HackEgo> fihzzie ihs ruhmouhrehd to be wrihttehn ihn Fuhnge-98.
12:18:39 <shachaf> `?hhh fungot
12:18:40 <fungot> shachaf: and most esolangs aren't that big. and i have a problem with going back in the whitespace if you want
12:18:41 <HackEgo> fuhngoht cahnnoht be stohppehd by thaht swohrd ahlohne.
12:18:54 <fizzie> fungot: Is anything capable of stohppehing you?
12:18:55 <fungot> fizzie: would that be exactly? some kind of extreme masochist who loves being shot 30 metres away :(
12:19:24 <shachaf> fungot: Wow, that's pretty ehxtrehme.
12:19:25 <fungot> shachaf: that the simplest possible field is k 0, but 1, 2
12:19:26 <oerjan> shachaf: i think it is a mistake to bake the ? part in, that way you cannot use it to create a proper wehlcohme command
12:19:37 <shachaf> oerjan: True. Feel free to generalize it.
12:19:58 <shachaf> I'm going home.
12:19:59 <shachaf> `?hhh home
12:20:01 <HackEgo> hohme? ¯\(°_o)/¯
12:20:05 <shachaf> `?hhh bach
12:20:07 <HackEgo> bahch? ¯\(°_o)/¯
12:20:09 <shachaf> `?hhh italian
12:20:10 <HackEgo> ihtahliahn? ¯\(°_o)/¯
12:20:14 <shachaf> `?hhh guitar
12:20:16 <HackEgo> guihtahr? ¯\(°_o)/¯
12:20:18 <shachaf> `?hhh charcoal
12:20:20 <HackEgo> chahrcoahl? ¯\(°_o)/¯
12:20:21 <shachaf> `?hhh telemarketer
12:20:23 <HackEgo> tehlehmahrkehtehr? ¯\(°_o)/¯
12:20:46 <shachaf> This leahrn DB could use a bunch more entries.
12:20:52 <shachaf> `?hhh papaya
12:20:53 <HackEgo> pahpaya? ¯\(°_o)/¯
12:21:04 <shachaf> `?hhh nonsense
12:21:06 <HackEgo> nohnsehnse? ¯\(°_o)/¯
12:21:07 <shachaf> `?hhh haskell
12:21:09 <HackEgo> Unbouhnd ihmplihciht pahrahmehtehr (?hahskehll::Wihsdohm) \ ahrihsihng frohm a uhse of ihmplihciht pahrahmehtehr `?hahskehll'
12:21:18 <shachaf> `?hhh hi
12:21:20 <HackEgo> hi? ¯\(°_o)/¯
12:21:25 <shachaf> `?hhh hi monqy
12:21:27 <HackEgo> hi mohnqy? ¯\(°_o)/¯
12:21:35 <shachaf> `?hhh monoid
12:21:36 <shachaf> `?hhh monoids
12:21:37 <HackEgo> Mohnoihds ahre juhst cahtehgohriehs wihth a sihngle ohbjehct.
12:21:37 <HackEgo> Mohnoihds ahre the eahsy vehrsiohn of cahtehgohriehs.
12:21:40 <shachaf> OK, enough spam.
12:22:31 <oerjan> shachaf: i'm a bit confused, aren't ?hh and ?hhh equivalent?
12:30:42 -!- ogrom has quit (Quit: Left).
12:31:32 <Phantom_Hoover> `?hhh dahl
12:31:34 <HackEgo> dahl? ¯\(°_o)/¯
12:31:39 <Phantom_Hoover> `? dahl
12:31:41 <HackEgo> dahl? ¯\(°_o)/¯
12:35:20 -!- Bacta has quit (Quit: Leaving).
12:45:09 <shachaf> oerjan: Are they?
12:45:27 <shachaf> Actually hh is superior to hhh.
12:45:45 <shachaf> `?hh monoid
12:45:46 <shachaf> `?hhh monoid
12:45:46 <HackEgo> Mohnoihds ahre juhst cahtehgohriehs wihth a sihngle ohbjehct.
12:45:47 <HackEgo> Mohnoihds ahre juhst cahtehgohriehs wihth a sihngle ohbjehct.
12:45:58 <shachaf> Oh, no, you're right.
12:46:01 <shachaf> I just make no sense.
12:46:21 <oerjan> *MWAHAHAHA*ÆÅØ
12:46:29 <shachaf> oerjan: I wanted to make two improvements to `?h -- the hh one and the hhh one.
12:46:39 <shachaf> But the hh one subsubes the hhh one.
12:46:45 <shachaf> s/b/m/
12:46:56 <shachaf> `rm bin/?hhh
12:46:58 <HackEgo> No output.
12:47:15 <shachaf> `?hh Fiora
12:47:16 <HackEgo> Fiohra ihs frohm sohme ihslahnd sohmewhehre. She juhst doehsn't wahnt to be bohthehrehd, ahs she wohrks ouht hehr dohmihnahtiohn plahn ahs ihmmohrtahl queehn of the drahgohns.
12:47:36 <shachaf> Fiora: Which that-comic character is *that*?
12:47:36 <Jafet> `?hh wisdom/hh
12:47:38 <HackEgo> wihsdohm/hh? ¯\(°_o)/¯
12:47:45 <shachaf> `?hh Jafet
12:47:46 -!- TeruFSX has joined.
12:47:46 <HackEgo> Jafeht? ¯\(°_o)/¯
12:48:07 <oerjan> wait, why didn't that give two hs
12:48:26 <shachaf> Oh, it's not /i
12:48:53 <shachaf> `run sed -i s,/g,/ig, bin/\?{h,hh}
12:48:54 <Jafet> I and I would appreciate that
12:48:56 <HackEgo> No output.
12:48:58 <fizzie> f is not in the list of consonants there.
12:49:01 <shachaf> `?hh Jafet
12:49:03 <HackEgo> Jafeht? ¯\(°_o)/¯
12:49:06 <shachaf> Oh.
12:49:14 <Jafet> `?hh bin/hh
12:49:16 <HackEgo> bihn/hh? ¯\(°_o)/¯
12:49:19 <fizzie> (For some reason or another. I just made it up.)
12:49:22 <Jafet> `run bin/hh bin/hh
12:49:23 <HackEgo> bash: bin/hh: No such file or directory
12:49:37 <Jafet> `run bin/\?hh bin/\?hh
12:49:39 <HackEgo> bihn/?hh? ¯\(°_o)/¯
12:49:43 <shachaf> fizzie: My ig change is still an improvement, isn't it?
12:49:48 * shachaf can't think very well at this hour.
12:49:52 <shachaf> `learn Jafet is a boojum
12:49:56 <HackEgo> I knew that.
12:50:00 <shachaf> `cat bin/?hh
12:50:02 <HackEgo> ​? "$@" | perl -pe 's/([aeiouy])([bcdgklmnpqrstvxz])/$1h$2/ig'
12:50:25 <fizzie> shachaf: I guess, though arguably it should be even cleverer and adapt the majority case, to avoid DAL -> DAhL.
12:50:38 <shachaf> fizzie: True.
12:50:45 <shachaf> We can just say that the h is whispered.
12:50:51 <shachaf> Being unvoiced and all.
12:50:58 <fizzie> Sihlehnt.
12:51:13 <Jafet> Honestly, no
12:51:28 <Jafet> Hhhohnehstlhy
12:51:29 <shachaf> Hmm, should the list of consonants have h?
12:51:48 <shachaf> `run sed -i s/bcdgklmnpqrstvxz/bcdfghjklmnpqrstvxz/ bin/\?{h,hh}
12:51:51 <HackEgo> No output.
12:51:54 <shachaf> `?hh Jafet
12:51:55 <HackEgo> Jahfeht ihs a boohjuhm
12:52:09 <shachaf> `?hh calvin and hobbes
12:52:10 <HackEgo> cahlvihn ahnd hohbbehs? ¯\(°_o)/¯
12:52:16 <shachaf> `?hh haskell
12:52:17 <HackEgo> Uhnbouhnd ihmplihciht pahrahmehtehr (?hahskehll::Wihsdohm) \ ahrihsihng frohm a uhse ohf ihmplihciht pahrahmehtehr `?hahskehll'
12:52:29 <shachaf> `?hh platitude
12:52:31 <HackEgo> plahtihtuhde? ¯\(°_o)/¯
12:52:33 <shachaf> `?hh drums
12:52:35 <HackEgo> druhms? ¯\(°_o)/¯
12:52:37 <shachaf> `?hh drum
12:52:38 <HackEgo> druhm? ¯\(°_o)/¯
12:52:45 <shachaf> `?hh antidote
12:52:46 <HackEgo> ahntihdohte? ¯\(°_o)/¯
12:52:48 <shachaf> `?hh flagpole
12:52:50 <HackEgo> flahgpohle? ¯\(°_o)/¯
12:52:51 <shachaf> `?hh ramanujan
12:52:53 <HackEgo> rahmahnuhjahn? ¯\(°_o)/¯
12:52:55 <Jafet> `?hh hohum
12:52:57 <HackEgo> hohhuhm? ¯\(°_o)/¯
12:52:59 <shachaf> `?hh claustrophobia
12:53:00 <HackEgo> clauhstrohphohbia? ¯\(°_o)/¯
12:53:02 <shachaf> OK, fine.
12:53:13 <shachaf> This leahrn DB is usehlehss.
12:53:39 <fizzie> Uhsehlehss.
12:53:54 <Jafet> shachaf just arrived at wisdom.
12:54:09 <shachaf> `run echo $(ls wisdom/)
12:54:11 <HackEgo> ​`? ? ⌨ ☃ 🐐 ais523 america atriq augur banach-tarski bike boily bonvenon brain brainf**k brainfuck brick burma c cakeprophet california category coffee comonad coppro cyberiad devious d-module egobot ehird elliott endofunctor endomorphism england esoteric europe everyone finland finnish finns fiora fizzie flower footnote 8 freefull friends
12:54:15 <shachaf> `?hh friends
12:54:16 <HackEgo> friehnds? ¯\(°_o)/¯
12:54:22 <shachaf> `?hh friendship
12:54:24 <HackEgo> friehndshihp wihsdohm
12:54:35 <fizzie> `? footnote 8
12:54:36 <HackEgo> Isn't it fun reading through all the footnotes?
12:54:53 <shachaf> `?hh footnote 8
12:54:54 <oerjan> `learn Claustrophobia thought the wisdom database was getting too crowded, so left.
12:54:55 <HackEgo> Ihsn't iht fuhn reahdihng throuhgh ahll the foohtnohtehs?
12:54:57 <HackEgo> I knew that.
12:55:29 <fizzie> `run ls wisdom | wc -l
12:55:30 <HackEgo> 140
12:55:31 <shachaf> `learn Friends make graphs together / La la la la
12:55:33 <fizzie> Wowza.
12:55:35 <HackEgo> I knew that.
12:55:57 <Jafet> `run echo wisdom/* | xargs -n 1 cat
12:56:00 <HackEgo> See `? for further details. \ ? is wisdom \ ☃ brrr... \ You are probably using one right now! \ 🐐 <(Unicode goat laments your inability to render Unicode goat.) \ Agent "Iä" Smith is an alien with a strange allergy to avian body covering, which he is trying to retroactively prevent from ever evolving. \ This wisdom entry had to be removed due
12:56:20 <oerjan> `run echo >wisdom/flagpole A flagpole is like a tadpole, but with a flag on top.
12:56:23 <HackEgo> No output.
12:58:11 <oerjan> `run echo >wisdom/tadpole A tadpole is like a flagpole, but underwater.
12:58:14 <HackEgo> No output.
12:58:16 <fizzie> `run find wisdom/ -type f -print0 | xargs -0 wc -c | sort -nr | head -n 2
12:58:18 <HackEgo> 10005 total \ 256 wisdom/wercome
12:58:34 <shachaf> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.1339
12:58:38 <oerjan> fizzie: you need to drop ngevd
12:58:46 <fizzie> oerjan: I already did.
12:58:47 * shachaf approves of dropping ngevd.
12:58:51 <shachaf> `?hh ngevd
12:58:51 <oerjan> or is that what the -type f is for
12:58:52 <HackEgo> oe{.IoOhPhi˖$0qa|M0ٞۗƖ!pn!(q%y7Ģ>{yg,2F#_J<)ػE2;EhD1E!ohG\S|3ax[L!o(APs%MEsgBA8UhTQL.DQk' \ |@Ȑ3GQu*eےf87ZTOp$apD(>S7E[!;t#(6 \ J.hͼܻ1x70ffX\zԧ:n~>Hu$
12:58:55 <fizzie> oerjan: Yes.
12:58:56 <shachaf> Oh.
12:58:59 <shachaf> That's not what you meant by drop.
12:59:01 <shachaf> whoa, dude
12:59:23 <fizzie> oerjan: Anyway, you just broke the ten-(SI-)kilobyte mark with your tadpole.
12:59:28 <oerjan> yay!
12:59:38 <shachaf> colour
12:59:54 <shachaf> I move to delete wisom/ngevd
13:00:03 <Jafet> `rm wisom/ngevd
13:00:05 <HackEgo> rm: cannot remove `wisom/ngevd': No such file or directory
13:00:05 <oerjan> DENIED
13:00:11 <fizzie> It is a cunning trap, ngevd is.
13:00:26 <Jafet> `run file wisdom/ngevd
13:00:26 <HackEgo> wisdom/ngevd: symbolic link to `/dev/urandom'
13:00:31 <shachaf> I move to delete wisdom/ngevd
13:00:38 <oerjan> DENIED
13:00:40 <Jafet> `rm /dev/urandom
13:00:41 <HackEgo> rm: cannot remove `/dev/urandom': Read-only file system
13:01:47 <shachaf> `?hh taneb
13:01:49 <shachaf> `?hh atriq
13:01:49 <HackEgo> Tahnehb ihs noht ehlliohtt, no mahttehr who you ahsk. He ahlso ihsn't a rahbbi ahlthouhgh he hahs prehtehndehd ihn the pahst. (see ahlso: d-mohduhlehs)
13:01:50 <HackEgo> ahtrihq ohr two
13:01:59 <shachaf> `?? d-modules
13:02:00 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ??: not found
13:02:00 <Jafet> `run tr -cd '[:isprint:]' /dev/urandom
13:02:01 <HackEgo> tr: extra operand `/dev/urandom' \ Only one string may be given when deleting without squeezing repeats. \ Try `tr --help' for more information.
13:02:05 <Jafet> `run tr -cd '[:isprint:]' < /dev/urandom
13:02:07 <HackEgo> tr: invalid character class `isprint'
13:02:12 <Jafet> `run tr -cd '[:print:]' < /dev/urandom
13:02:13 <HackEgo> yaecHK},>Z'{C-w-Hfg[>"P|~F-C*`znS%Dc{NHp)n6Y^ncwa|$LCiO\96[Sv|1kgHN\]d@_|Y9h;Io_2c|q;Sw#/gE6$e.mx|u:qil5)(!K<?;_zrvT2B1:P@%&jB$WR{Ix>T1@j>]Q,p/2WPTN$~=Xa/U*z0p=7;'Hs}D36mv$i_<iy:-%I`}eef*#`7zyG$*Z!'y7ewh?%a?{)KFan}NUyh3d`V_[0K,R}&czT8nuzUioF`6o<QO[9MWc=4{`QY?y$d{VfzcK/3hNW'Q>5r{tLlI# k|l!sfRQ+_XbscbmpsljXL'5=^kGUbci*04h337g7%v/X1d&!3-kc"a"FX</QrGQ+
13:02:24 <shachaf> `?hh d-modules
13:02:26 <HackEgo> d-mohduhlehs? ¯\(°_o)/¯
13:02:32 <shachaf> `?hh d-module
13:02:33 <HackEgo> D-mohduhlehs ahre juhst mohduhlehs ohvehr the rihng ohf dihffehrehntiahl ohpehrahtohrs. Tahnehb ihnvehntehd thehm.
13:02:39 <Jafet> `run tr -cd '[:print: ]' < /dev/urandom
13:02:41 <HackEgo> trt:]n n ptt ]n t] i r[ p[]]t[n:n][t[rprt nn[n []:nt[ rnp: ]rrrn[r[ rn] t[ ]rit]t]nnr[ntiitn:r[piptrr ]tr][rn i:ni[nptr[pitttn rpi]itt ]npn[: tpirp:in::[:]:t :rnti n]pi ti: t:r pi:n pipntnnr]i]t pr]:i]:]]nni:i[[:nt i:i[ttn [rr ppn:]pppr]:] :]]npip i:[tt nnprptrpttri][in:r n:: [[t:tn[p[ [:i]]n:it][i][]i:t nipp]r :: pn init :[tr:r:in: pt[:t r:p:
13:02:41 <shachaf> `? taneb
13:02:43 <HackEgo> Taneb is not elliott, no matter who you ask. He also isn't a rabbi although he has pretended in the past. (see also: d-modules)
13:02:50 <Jafet> Hm.
13:02:56 <Jafet> `run tr -cd '[:print:] ' < /dev/urandom
13:02:58 <HackEgo> b}!$4yxvz_R%(pe>ghW-/OO%tVGh"PDO8u*X5])QX8?"8{.-#a%wnSw2PeFmg3{m,2@C[KyT} rim_}j62z}M~ODz!wbSJgI(4+@fCN7evV=/r7po%n,><>: XN&[`sa)>^es}A5<sFIuAe1.,4Q$]jo{(NkuC'0NvsFQZJK`TUWL`*>\?5-JC!ewx@[%j!z{'c"B@DbO*h1_Lqm1EHu>[[D>L0&)nUR31s5vZu\;uZk,F8l!tQ*Zc3.3!gEg(!;!Yj}Z>rfz_nfFo86]cv|8a^Ut7tsd0to*+ajA: I}r#*rM!.L/=rhh~E)YBJj52?,=3pxm1n':}t1"^u%/KW`L51FvjOb:
13:02:58 <shachaf> `run ln wisdom/d-module{,s}
13:03:01 <HackEgo> No output.
13:03:20 <oerjan> `learn Atrix is a brand of hand cream. Not to be confused with atriq.
13:03:21 <fizzie> Jafet: The '[:print: ]' one looked like an esolang.
13:03:23 <HackEgo> I knew that.
13:03:43 <Jafet> `run tr -cd '+-<>,.[]' < /dev/urandom
13:03:45 <HackEgo> 31<9-5007[79]/1422;44[,4<06>,:977//>>6,6.0[>,>1;647/67;1]8-8<;<.,4<<]1.,5,7<8+00:4[>7:5.[6.],[92507.73]>:.[-0+<0/:06:-232..[[0/2467;-,]/,/543-[0//,5:.9];,:>98+.>+][3.,46<;>-1.:>37-66<],[6><+0;>>55872/;39.<,10>08>>0[-2,7[2,7[/4/776+>:+1;644:;4.>]4->9;]9.];]-0<479-96<793;/+39;[9].:9>7-4,7.:>7926-2,4:1..;6<-69:;[<-2.5;814<+1.8<]>8]<67437088+<<;241[570
13:03:56 <fizzie> That, too.
13:04:02 <Jafet> `run tr -cd '\+\-\<\>\,\.\[\]' < /dev/urandom
13:04:04 <HackEgo> ​>,+.]>,[,[.[[-.+],]>+>+<.][[]-.<[.>+,-.>]><]>[]-+-<<<-]+>]-],<[[>[<].-,+>.+[<>>-<<+[[].>]<<[-].]<][-+<.+[<]<-++,]-,,,,,<>.-[+->.]].]<>>>[<++<[.+>[[--++-[>->,.[,.[+.<+>[>[>,[>]>-.-+++]-,+<--..<,+[.,+,-[.,[.<]>],+>]+-[<>[-<],-[]<-[],<+.+.,<<<<[,]>].<[,-,<.-,<<]>-[]-[-][].>.>>.[>->,-+-++++--<,<,+<<[-><+[[<.<.]..+]<>[.,<.,.>+]<.+>]<,.,.<-<>>>>[]>+][
13:04:49 -!- heroux has quit (Ping timeout: 244 seconds).
13:05:03 <fizzie> I'd run it if it weren't for the mismatched []s.
13:05:54 <Jafet> !bfjoust dawkins [[[[?>,+.]>,[,[.[[-.+],]>+>+<.][[]-.<[.>+,-.>]><]>[]-+-<<<-]+>]-],<[[>[<].-,+>.+[<>>-<<+[[].>]<<[-].]<][-+<.+[<]<-++,]-,,,,,<>.-[+->.]].]<>>>[<++<[.+>[[--++-[>->,.[,.[+.<+>[>[>,[>]>-.-+++]-,+<--..<,+[.,+,-[.,[.<]>],+>]+-[<>[-<],-[]<-[],<+.+.,<<<<[,]>].<[,-,<.-,<<]>-[]-[-][].>.>>.[>->,-+-++++--<,<,+<<[-><+[[<.<.]..+]<>[.,<.,.>+]<.+>]<,.,.<-<>>>>[]>+][]]]]]]]]]
13:06:03 <EgoBot> ​Score for Jafet_dawkins: 0.0
13:06:25 <Jafet> !bfjoust [ [
13:06:28 <EgoBot> ​Score for Jafet__: 0.0
13:07:09 <fizzie> Now I didn't manage to catch the breakdown.txt for dawkins. :/
13:07:33 <Jafet> Wait, why is there a ?
13:07:41 <Jafet> !bfjoust dawkins [[[[>,+.]>,[,[.[[-.+],]>+>+<.][[]-.<[.>+,-.>]><]>[]-+-<<<-]+>]-],<[[>[<].-,+>.+[<>>-<<+[[].>]<<[-].]<][-+<.+[<]<-++,]-,,,,,<>.-[+->.]].]<>>>[<++<[.+>[[--++-[>->,.[,.[+.<+>[>[>,[>]>-.-+++]-,+<--..<,+[.,+,-[.,[.<]>],+>]+-[<>[-<],-[]<-[],<+.+.,<<<<[,]>].<[,-,<.-,<<]>-[]-[-][].>.>>.[>->,-+-++++--<,<,+<<[-><+[[<.<.]..+]<>[.,<.,.>+]<.+>]<,.,.<-<>>>>[]>+][]]]]]]]]]
13:07:44 <EgoBot> ​Score for Jafet_dawkins: 0.0
13:07:57 <fizzie> Well, there's *some* wins.
13:08:21 <fizzie> Also what are those two last matches -- ais523_counterpoke.bfjoust vs ais523_vibration.bfjoust and ais523_waterfall2.bfjoust vs atehwa_test_blah.bfjoust -- doing at the bottom of breakdown.txt?
13:10:27 <Jafet> `run rm wisdom/ngevd && ln /dev/urandom wisdom/ngevd
13:10:30 <HackEgo> ln: creating hard link `wisdom/ngevd' => `/dev/urandom': Invalid cross-device link
13:11:50 -!- heroux has joined.
13:12:59 <oerjan> `? ngevd
13:13:00 <HackEgo> ngevd? ¯\(°_o)/¯
13:13:09 * oerjan swats Jafet -----###
13:13:29 <oerjan> `run ln -s /dev/urandom wisdom/ngevd
13:13:31 <HackEgo> No output.
13:13:36 <oerjan> `? ngevd
13:13:37 <HackEgo> ​$aFZo~+Qxh.-uZQ/$
13:14:01 <fizzie> That was a rather short ngevd.
13:14:18 <oerjan> indeed
13:14:58 <oerjan> how does /dev/urandom end in the first place.
13:15:31 <Jafet> `run echo -e 'abc\0def'
13:15:32 <HackEgo> abc.def
13:15:47 <Jafet> `run echo -e '\0' | hd
13:15:48 <HackEgo> 00000000 00 0a |..| \ 00000002
13:16:08 <Jafet> `run echo -e 'abc\377def'
13:16:09 <HackEgo> abc\377def
13:16:13 <Jafet> `run echo -e 'abc\xffdef'
13:16:14 <HackEgo> abcdef
13:17:46 <fizzie> `run printf 'abc\x0ddef'
13:17:49 <fizzie> There you go.
13:19:16 <fizzie> (I have no idea why a CR does that; based on a quick test of adding some valid IRC commands after, it's not just because it were sending that raw.)
13:22:56 <oerjan> fancy
13:23:50 -!- Arc_Koen has joined.
13:26:06 -!- frecz11642 has quit (Quit: irc2go).
13:28:17 <shachaf> `run ls wisdom | shuf
13:28:18 <HackEgo> elliott \ shachaf \ welcome \ monqy \ banach-tarski \ hackego \ object \ endofunctor \ augur \ nooga \ gaspacho \ mad \ burma \ zzo38 \ php \ wiki \ coppro \ monoid \ friendship \ c \ gazpacho \ phantom____________________hoover \ usa \ irc \ brain \ egobot \ norway \ phantom__hoover \ qdb \ kallisti \ everyone \ d-modules \ oceans \ oklopol \ phan
13:28:28 <shachaf> `?hh banach-tarski
13:28:30 <HackEgo> ​"Bahnahch-Tahrski" ihs ahn ahnahgrahm ohf "Bahnahch-Tahrski Bahnahch-Tahrski".
13:28:30 <augur> :|
13:28:34 <augur> i hate you :(
13:28:38 <shachaf> `?hh endofunctor
13:28:39 <HackEgo> Ehndohfuhnctohrs ahre juhst ehndohmohrphihsms ihn the cahtehgohry ohf cahtehgohriehs.
13:28:46 <shachaf> `?hh gaszpacho
13:28:48 <HackEgo> gahszpahcho ihs a pohlihsh souhp, trahdihtiohnahlly szehrvehd cohld fohr hoht szuhmmehr dayhs
13:29:01 <shachaf> `?hh gazspacho
13:29:03 <HackEgo> gahzspahcho ihs a huhngahriahn szouhp, trahdihzsohnahlly szehrvehd cohld fohr hoht szuhmmehr dayhz
13:29:48 <shachaf> `?hh brain
13:29:49 <HackEgo> Braihns ahre juhst rehcehptahclehs fohr brihcks.
13:29:50 <fizzie> Today's winning Subject: field: "CfP Workshop on".
13:29:56 <fizzie> It did make me look at the contents, at least.
13:30:02 <shachaf> `?hh php
13:30:03 <HackEgo> PHP ihs prehfehrrehd by 9 ouht ohf 10 ihdiohts, ahnd pahst ehlliohtt. Ahsk youhr GP tohday! [Wehbsihte rehdahctehd]
13:30:08 <shachaf> `?hh wiki
13:30:09 <HackEgo> The wihki ihs aht http://ehsohlahngs.ohrg/wihki
13:30:32 <HackEgo> cat: bin/hh: No such file or directory
13:30:36 <shachaf> `cat bin/?hh
13:30:37 <HackEgo> ​? "$@" | perl -pe 's/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig'
13:31:07 <shachaf> `h
13:31:08 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: h: not found
13:31:12 <shachaf> `run echo 'perl -pe '\''s/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig'\'' > bin/h; chmod +x bin/h
13:31:14 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `'' \ bash: -c: line 1: syntax error: unexpected end of file
13:31:32 <shachaf> `run echo 'perl -pe '\''s/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig'\''' > bin/h; chmod +x bin/h
13:31:35 <HackEgo> No output.
13:31:42 <shachaf> `run welcome | h
13:31:44 <HackEgo> Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
13:31:47 <shachaf> `cat bin/WELCOME
13:31:48 <HackEgo> ​#!/bin/sh \ welcome "$@" | perl -pe '$_ = uc'
13:32:17 <shachaf> `run echo 'welcome "$@" | h' > bin/wehlcohme; chmod +x bin/wehlcohme
13:32:20 <HackEgo> No output.
13:32:37 <shachaf> `wehlcohme oerjan du jour
13:32:39 <HackEgo> oehrjahn: du: jouhr: Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
13:32:59 <shachaf> (THE JOKE IS DU JOERJAN BTW)
13:34:06 <shachaf> `?hh funpuns
13:34:08 <HackEgo> fuhnpuhns? ¯\(°_o)/¯
13:34:11 <shachaf> WHAT
13:35:21 <shachaf> `run welcome | h | h
13:35:23 <HackEgo> Wehhlcohhme to the ihhntehhrnahhtiohhnahhl huhhb fohhr ehhsohhtehhrihhc prohhgrahhmmihhng lahhnguahhge dehhsihhgn ahhnd dehhployhhmehhnt! Fohhr mohhre ihhnfohhrmahhtiohhn, chehhck ouhht ouhhr wihhki: http://ehhsohhlahhngs.ohhrg/wihhki/Maihhn_Pahhge. (Fohhr the ohhthehhr kihhnd ohhf ehhsohhtehhrihhca, try #ehhsohhtehhrihhc ohhn ihhrc.dahhl.nehht.)
13:35:27 <shachaf> `run welcome | h | h | h | h | h
13:35:30 <HackEgo> Wehhhhhlcohhhhhme to the ihhhhhntehhhhhrnahhhhhtiohhhhhnahhhhhl huhhhhhb fohhhhhr ehhhhhsohhhhhtehhhhhrihhhhhc prohhhhhgrahhhhhmmihhhhhng lahhhhhnguahhhhhge dehhhhhsihhhhhgn ahhhhhnd dehhhhhployhhhhhmehhhhhnt! Fohhhhhr mohhhhhre ihhhhhnfohhhhhrmahhhhhtiohhhhhn, chehhhhhck ouhhhhht ouhhhhhr wihhhhhki: http://ehhhhhsohhhhhlahhhhhngs.ohhhhhrg/wihhhhhk
13:36:15 -!- Taneb has joined.
13:36:21 -!- TeruFSX has quit (Ping timeout: 248 seconds).
13:36:28 <fizzie> Today's h% is at 5.16% according to my logs; yesterday's was 3.41%.
13:37:14 <fizzie> fungot: Do you "h"?
13:37:15 <fungot> fizzie: it's short for fnord tach guten tag ( german)
13:37:35 <shachaf> fizzie: Can we have a graph of h% over time?
13:37:57 <shachaf> `run echo monqy |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h
13:38:01 <HackEgo> mohhhhhhhhhhhhhhhnqy
13:38:09 <fizzie> I probably shouldn't, but I'm terribly tempted to.
13:38:09 <shachaf> `run echo monqy |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h
13:38:17 <shachaf> fizzie: I'd look at it!
13:38:19 <HackEgo> mohhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhnqy
13:38:35 <oerjan> `run echo kan |h |h |h |h |h |h |h |h |h |h |h |h |h |h |h
13:38:39 <HackEgo> kahhhhhhhhhhhhhhhn
13:38:46 <oerjan> (what do you _mean_ it's wrong)
13:38:58 <shachaf> fizzie: Or at least give us more information.
13:39:00 <oerjan> `cat bin/h
13:39:02 <HackEgo> perl -pe 's/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig'
13:39:04 <shachaf> Is this the highest h% we've ever had?
13:39:07 <shachaf> oerjan: QUIET
13:39:12 <shachaf> It's meant to be this way.
13:39:19 <oerjan> but but #!...
13:39:40 <shachaf> #!/usr/bin/perl -p
13:41:26 <oerjan> `run sed -i 's/perl -pe '\''.*'\''/#!/usr/bin/perl -p\n$1' bin/h
13:41:27 <HackEgo> sed: -e expression #1, char 20: unknown option to `s'
13:41:32 <oerjan> O KAY
13:42:29 <shachaf> `run type -a sponge
13:42:30 <HackEgo> bash: line 0: type: sponge: not found
13:42:41 <oerjan> `run printf "%s" '#!/usr/bin/perl -p'"\n"'s/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig' >bin/h
13:42:45 <HackEgo> No output.
13:42:49 <oerjan> `cat bin/h
13:42:50 <HackEgo> ​#!/usr/bin/perl -p\ns/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig
13:42:54 <oerjan> oops
13:43:00 <shachaf> Why the printf?
13:43:44 <oerjan> `run (echo '#!/usr/bin/perl -p'; echo 's/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig') >bin/h
13:43:47 <HackEgo> No output.
13:43:52 <oerjan> `cat bin/h
13:43:53 <HackEgo> ​#!/usr/bin/perl -p \ s/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig
13:43:59 -!- impomatic has quit (Read error: Connection reset by peer).
13:44:08 <oerjan> someone demonstrated it, so i wanted to try.
13:44:20 <oerjan> `run welcome | h
13:44:22 <HackEgo> Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
13:45:05 <shachaf> `run echo 'perl -ipe '\''s/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig'\'' "$1"' > bin/'h!'; chmod +x bin/'h!'
13:45:08 <HackEgo> No output.
13:46:19 <oerjan> wat.
13:46:23 <oerjan> oh
13:47:20 <oerjan> `run printf "%s" how did it go again
13:47:21 <HackEgo> howdiditgoagain
13:47:33 <oerjan> `run printf "%s\n" how did it go again
13:47:35 <HackEgo> how \ did \ it \ go \ again
13:47:40 <oerjan> huh
13:47:56 <oerjan> spooky
13:48:26 <fizzie> shachaf: http://sprunge.us/ibUP (But the database is only updated every now and then, so it doesn't really have much of today in it.)
13:48:57 <oerjan> `which printf
13:48:58 <HackEgo> ​/usr/bin/printf
13:49:02 <oerjan> `run which printf
13:49:03 <HackEgo> ​/usr/bin/printf
13:49:15 <oerjan> `printf --version
13:49:16 <HackEgo> printf (GNU coreutils) 8.5 \ Copyright (C) 2010 Free Software Foundation, Inc. \ License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. \ This is free software: you are free to change and redistribute it. \ There is NO WARRANTY, to the extent permitted by law. \ \ Written by David MacKenzie.
13:49:56 <fizzie> `run type printf # there's also this
13:49:57 <HackEgo> printf is a shell builtin
13:50:22 <fizzie> `run printf --version # which doesn't know about versions
13:50:24 <HackEgo> bash: line 0: printf: --: invalid option \ printf: usage: printf [-v var] format [arguments]
13:50:28 <shachaf> `run welcome > testfile
13:50:31 <oerjan> oh, i assumed which would catch builtins
13:50:31 <HackEgo> No output.
13:50:33 <shachaf> `h! testfile
13:50:34 <HackEgo> Can't open perl script "s/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig": No such file or directory
13:50:38 <shachaf> Pft.
13:50:42 <shachaf> `cat bin/h!
13:50:43 <HackEgo> perl -ipe 's/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig' "$1"
13:50:45 <Jafet> `run which which
13:50:46 <HackEgo> ​/usr/bin/which
13:50:55 <Jafet> `run echo $SHELL
13:50:56 <HackEgo> ​/bin/sh
13:50:56 <Taneb> I vaguely remember a rant about how the chap who makes Python doesn't like functional programming
13:51:08 <Jafet> `run echo $0
13:51:09 <HackEgo> bash
13:51:33 <shachaf> `run sed s/i/i\'\'\ -/ bin/h\!
13:51:34 <HackEgo> perl -i'' -pe 's/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig' "$1"
13:51:41 <shachaf> `run sed -i s/i/i\'\'\ -/ bin/h\!
13:51:44 <HackEgo> No output.
13:52:04 <shachaf> `h! testfile
13:52:07 <HackEgo> No output.
13:52:08 <shachaf> `cat testfile
13:52:09 <HackEgo> Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
13:52:14 <shachaf> `rm testfile
13:52:16 <HackEgo> No output.
13:53:07 <oerjan> `run which witch
13:53:08 <HackEgo> No output.
13:53:30 <shachaf> oerjan: would it be bad if i `h! wisdom/welcome
13:54:13 <shachaf> fizzie: Oh, thanks!
13:54:15 <oerjan> it's bad that you're even _thinking_ about it, shachaf
13:54:26 <shachaf> fizzie: So today is the highest-h% day ever?
13:54:44 <shachaf> oerjan: Would you /kickban me if I did it?
13:54:58 <oerjan> fizzie: you should graph frequency of letter / average frequency of letter for all letters, hth
13:55:17 <shachaf> hth hth hth hth hth hth hth hth hth hth hth hth hth hth hth hth hth
13:55:28 <shachaf> `echo just doing my part | h
13:55:29 <HackEgo> just doing my part | h
13:55:37 <shachaf> Well done, HackEgo.
13:55:40 <shachaf> `run echo just doing my part | h
13:55:41 <HackEgo> juhst doihng my pahrt
13:56:07 <Arc_Koen> elliott: I think there's something wrong with the wiki
13:56:18 <Arc_Koen> my browser tells me it can't find the server for http://ehsohlahngs.ohrg/wihki/Maihn_Pahge
13:56:23 <oerjan> hm i guess that would give huge variation for rare letters.
13:57:01 <oerjan> i think it's shachaf's job to buy us the ohrg domain for that use
13:57:01 <shachaf> Arc_Koen: Oops, that's a bug in the welcome script.
13:57:02 <shachaf> Try this:
13:57:17 <fizzie> shachaf: The 5.16%/3.41% numbers weren't computed in quite the same way, so I can't be exactly sure; and the query only looked at last year and this; but odds are reasonable. (According to http://sprunge.us/XCaj mean h is 0.035, with a sigma of 0.0026, so an actual 5.16% would be like a six-sigma result.
13:57:22 <shachaf> `run wehlcome Arc_Koen |h |h |h |h
13:57:24 <HackEgo> bash: wehlcome: command not found
13:57:27 <shachaf> `run wehlcohme Arc_Koen |h |h |h |h
13:57:30 <HackEgo> Ahhhhhrc_Koehhhhhn: Wehhhhhlcohhhhhme to the ihhhhhntehhhhhrnahhhhhtiohhhhhnahhhhhl huhhhhhb fohhhhhr ehhhhhsohhhhhtehhhhhrihhhhhc prohhhhhgrahhhhhmmihhhhhng lahhhhhnguahhhhhge dehhhhhsihhhhhgn ahhhhhnd dehhhhhployhhhhhmehhhhhnt! Fohhhhhr mohhhhhre ihhhhhnfohhhhhrmahhhhhtiohhhhhn, chehhhhhck ouhhhhht ouhhhhhr wihhhhhki: http://ehhhhhsohhhhhlahhhhhn
13:57:38 <shachaf> `run wehlcohme Arc_Koen |h
13:57:40 <HackEgo> Ahhrc_Koehhn: Wehhlcohhme to the ihhntehhrnahhtiohhnahhl huhhb fohhr ehhsohhtehhrihhc prohhgrahhmmihhng lahhnguahhge dehhsihhgn ahhnd dehhployhhmehhnt! Fohhr mohhre ihhnfohhrmahhtiohhn, chehhck ouhht ouhhr wihhki: http://ehhsohhlahhngs.ohhrg/wihhki/Maihhn_Pahhge. (Fohhr the ohhthehhr kihhnd ohhf ehhsohhtehhrihhca, try #ehhsohhtehhrihhc ohhn ihhrc.d
13:58:22 -!- Arc_Koen has changed nick to Ahhrc_Koehhn.
13:59:08 <shachaf> ^rot13 shahchahf
13:59:08 <fungot> funupunus
13:59:32 <fizzie> oerjan: I'll certainly try to include that in the forthcoming "#esoteric visualizations" website.
13:59:45 <oerjan> yay!
14:01:17 <fizzie> Maybe some kind of a RRDtool-driven thing could work for it, this query across the whole of time itself is taking a long long time.
14:01:20 <shachaf> oerjan: Homework: Improve `h so that you can give it command line arguments.
14:01:47 <shachaf> E.g. if $# > 1 echo $@ | exec $0
14:01:50 <shachaf> Or something.
14:01:52 <shachaf> Too tired.
14:02:04 <oerjan> ZZZZZZZZZZZZZZZZz
14:02:17 <shachaf> `run echo ZZZZZZZZZZZZZZZZz | h
14:02:18 <HackEgo> ZZZZZZZZZZZZZZZZz
14:02:24 <shachaf> help it's immune
14:02:41 <shachaf> `run echo Phantom_Hoover | h
14:02:42 <HackEgo> Phahntohm_Hoohvehr
14:03:04 <Phantom_Hoover> shouldn't that be "Phahntohm_Hohohvehr"
14:04:28 <oerjan> nohpe
14:04:42 <shachaf> `run ls
14:04:43 <HackEgo> bin \ canary \ dbg.out \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ korma \ lib \ paste \ quines \ quotes \ quotese \ run \ share \ test \ wisdom \ zalgo.hs
14:04:47 <shachaf> `cat dbg.out
14:04:48 <HackEgo> ​+ trap 'kill -TERM 0' EXIT \ + read s \ + files=(/var/irclogs/_esoteric/2013-??-??.txt) \ + line= \ + jobs \ + [[ -z '' ]] \ + sleep .3 \ + for i in '"${!files[@]}"' \ + for i in '"${!files[@]}"' \ + for i in '"${!files[@]}"' \ + for i in '"${!files[@]}"' \ + for i in '"${!files[@]}"' \ + for i in '"${!files[@]}"' \ + for i in '"${!files[@]}"' \
14:04:54 <shachaf> Does anyone need that file?
14:04:59 <shachaf> I really want to h! it.
14:06:56 <fizzie> Okay, the full query says there's been a h% of approximately 67% on 2004-11-22, but on that day the only message was "heh", so maybe it doesn't quite count? http://sprunge.us/OPVj
14:07:40 -!- augur has quit (Remote host closed the connection).
14:07:40 <fizzie> 2004-07-04 managed an impressive 37.5% over nine separate messages, though.
14:07:57 <fizzie> ("hi", "hi", "dah", "you", "oh no", "heh", "hi", "hi" and "hi".)
14:08:07 -!- augur has joined.
14:08:24 <fizzie> (Also my logs are occasionally spotty, I've spent a few months away now and then.)
14:09:22 <shachaf> Who said the "heh"?
14:09:36 <fizzie> That was "tonsofpcs".
14:09:56 <fizzie> Oh, unless you meant the other "heh".
14:10:03 <fizzie> The single-"heh" day "heh" was lament.
14:10:14 <shachaf> Ah, lament
14:10:16 <shachaf> lament++
14:10:27 <shachaf> I hear lament can't Cale.
14:11:57 <oerjan> shachaf: i doubt it will be missed http://codu.org/projects/hackbot/fshg/index.cgi/log?rev=dbg.out
14:12:17 <oerjan> `cat bin/paste
14:12:18 <HackEgo> ​#!/bin/bash \ if [ ! "$1" ] \ then \ PASTE=- \ else \ PASTE="$1" \ fi \ \ PASTENUM="$RANDOM" \ \ mkdir -p $HACKENV/paste \ \ url paste/paste."$PASTENUM" \ cat "$PASTE" > $HACKENV/paste/paste."$PASTENUM"
14:12:19 -!- augur has quit (Ping timeout: 240 seconds).
14:12:52 <oerjan> `paste test
14:12:54 -!- boily has joined.
14:12:56 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.32510
14:13:16 <oerjan> huh
14:14:09 <shachaf> `h! test
14:14:12 <HackEgo> No output.
14:14:14 <shachaf> `paste test
14:14:18 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.352
14:15:18 <fizzie> Considering only days with at least 200 messages (a number out of a hat), hhhhighest h-honour goes to 2005-05-09 with 4.658%. http://sprunge.us/NaEU
14:15:19 <oerjan> `ls
14:15:20 <HackEgo> bin \ canary \ dbg.out \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ korma \ lib \ paste \ quines \ quotes \ quotese \ run \ share \ test \ wisdom \ zalgo.hs
14:15:29 <oerjan> `paste nosuchfile
14:15:33 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5817 \ cat: nosuchfile: No such file or directory
14:15:36 <oerjan> aha
14:17:20 <oerjan> `url bin/paste
14:17:21 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/paste
14:17:23 <fizzie> Thhhhough we're all abso-hhh-lutely ruining today's originally-hhhhhhigh chhances of gehttihng to the thop, withhhhh all this unnecessary chhatter.
14:17:45 <oerjan> hohw hohrrihble
14:17:53 <shachaf> Weh're noht gohihng to geht pahst 67%
14:18:28 <fizzie> It just takes hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh determination.
14:18:46 -!- Patashu has quit (Quit: Soundcloud (Famitracker Chiptunes): http://www.soundcloud.com/patashu MSN: Patashu@hotmail.com , AIM: Patashu0 , YIM: patashu2 , Skype: patashu0 .).
14:20:15 <oerjan> `fetch http://oerjan.nvg.org/paste
14:20:20 <HackEgo> 2013-01-25 14:20:18 URL:http://oerjan.nvg.org/paste [181/181] -> "paste.1" [1]
14:20:44 <oerjan> `run cat paste.1 >bin/paste
14:20:47 <HackEgo> No output.
14:20:53 <oerjan> `paste test
14:20:54 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/test
14:21:01 <oerjan> `run echo test | paste
14:21:05 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.19590
14:21:08 <shachaf> oerjan has a web page?
14:22:11 <oerjan> there, now paste is a synonym for url when there's an actual filename
14:22:23 <oerjan> `run rm paste.1
14:22:26 <HackEgo> No output.
14:23:20 <shachaf> `run echo helloerjan | h
14:23:22 <HackEgo> hehlloehrjahn
14:23:41 <shachaf> imo an improvement
14:24:01 <shachaf> hehlloehrjahn
14:24:03 <oerjan> `cat bin/paste
14:24:04 <HackEgo> ​#!/bin/bash \ if [ ! "$1" ] \ then \ PASTENUM="$RANDOM" \ \ mkdir -p $HACKENV/paste \ \ url paste/paste."$PASTENUM" \ cat > $HACKENV/paste/paste."$PASTENUM" \ else \ url "$1" \ fi
14:24:59 <shachaf> oerjan: Were you referring to the dinosaur?
14:25:22 <shachaf> https://en.wikipedia.org/wiki/Khaan
14:25:39 <oerjan> `run sed -i -e 's/else/else # Save making a file when it already exists./' bin/paste
14:25:42 <HackEgo> No output.
14:25:46 <oerjan> `cat bin/paste
14:25:47 <HackEgo> ​#!/bin/bash \ if [ ! "$1" ] \ then \ PASTENUM="$RANDOM" \ \ mkdir -p $HACKENV/paste \ \ url paste/paste."$PASTENUM" \ cat > $HACKENV/paste/paste."$PASTENUM" \ else # Save making a file when it already exists. \ url "$1" \ fi
14:25:54 <oerjan> `paste test
14:25:55 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/test
14:26:19 <oerjan> shachaf: no.
14:27:58 <boily> hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhi all!
14:28:16 <oerjan> hhhhhhhhhhhehlloh bhoihlyh
14:28:59 -!- oerjan has set topic: WHYH HHHHHHELLOHH THEHRE | FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE | concealed in fold of goat-time lumber | http://codu.org/logs/_esoteric/.
14:29:06 <shachaf> `run ls wisdom | shuf
14:29:07 <HackEgo> phantom____________________hoover \ brick \ gaspacho \ bike \ gregor \ lifthrasiir \ cakeprophet \ c \ boily \ i \ norway \ shachaf \ egobot \ ☃ \ misspellings of croissant \ monoid \ the them \ natural transformation \ lens \ gazpacho \ lettuce \ wiki \ flagpole \ monoids \ itidus21 \ szoup \ vorpal \ välkommen \ fiora \ taneb \ devious \ ø \
14:29:12 <shachaf> `?hh phantom____________________hoover
14:29:13 <HackEgo> ​<spahn ahccehnt="Brihtihsh">Youhr souhndcahrd wohrks pehrfehctly.</spahn>
14:29:32 <shachaf> imo hhhhhhhhtml shouhld be the nehw stahndahrd
14:29:33 <lifthrasiir> `?hh lifthrasiir
14:29:34 <oerjan> much better accent now
14:29:35 <HackEgo> lihfthrahsiihr ihs shuhnnehd by the rehst ohf hihs couhntry fohr beihng no goohd aht Leahgue ohf Lehgehnds.
14:29:38 <shachaf> `?hh brick
14:29:40 <HackEgo> Brihck goehs ihn braihn. The stahtuhtohry puhnihshmehnt fohr pehrpehtrahtohrs ohf braihnfuhck dehrihvahtihvehs.
14:29:41 <lifthrasiir> ...
14:30:05 <boily> `? i
14:30:06 <shachaf> `?hh cakeprophet
14:30:06 <HackEgo> i love monoids
14:30:08 <HackEgo> ​:>
14:30:12 <shachaf> `?hh monoids
14:30:14 <HackEgo> Mohnoihds ahre the eahsy vehrsiohn ohf cahtehgohriehs.
14:30:14 <shachaf> `?hh i
14:30:16 <HackEgo> i lohve mohnoihds
14:30:27 <shachaf> `?hh flagpole
14:30:28 <HackEgo> A flahgpohle ihs lihke a tahdpohle, buht wihth a flahg ohn tohp.
14:30:29 <boily> hhh...
14:30:30 <shachaf> `?hh lettuce
14:30:31 <HackEgo> Lehttuhce ihs a vehgehtahble wihth two drehssihngs, joihn ahnd meeht.
14:30:40 <Taneb> `?hh Ngevd
14:30:41 <HackEgo> ​˱KXfU`YB_/VR`~3莁܊S|jPj~9]ĒY`UhZ8= 3qpsvo+P~a#]Siy}.NY.a['/ S.͓ܭfEQu.|Q>;ZdF9{EP|d1vz!b}Qa`} \ <FR=ߕV8_0/l.Y`LSWEѻu$_1R-Ϛc \ nį9Bp^#T~5_kAqgOX=A4{Q. 4[:.
14:30:56 <shachaf> `?hh vorpal
14:30:57 <HackEgo> Vohrpahl ihs reahlly bohrihng. Sehriouhsly, you hahve no ihdea.
14:31:00 <shachaf> `?hh välkommen
14:31:01 <HackEgo> Hehj ohch välkohmmehn tihll dehn ihntehrnahtiohnehlla knuhtpuhnktehn för dehsihgn ohch dihstrihbuhtiohn ahv ehsohtehrihska prohgrahmspråk! För mehr ihnfohrmahtiohn, se vår wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (För dehn ahndra sohrtehns ehsohtehrihsm, pröva #ehsohtehrihc på ihrc.dahl.neht.)
14:31:10 <shachaf> `?hh ø
14:31:11 <HackEgo> ​ø ihs noht goihng ahnywhehre
14:31:19 <shachaf> `?hh misspellings of croissant
14:31:21 <HackEgo> mihsspehllihngs ohf crohsahnt? ¯\(°_o)/¯
14:31:32 <shachaf> `?hh natural transformation
14:31:33 <HackEgo> Nahtuhrahl trahnsfohrmahtiohns ahre juhst mohrphihsms ihn the cahtehgohry ohf fuhnctohrs
14:31:58 <oerjan> `learn Ø escaped due to a sensitive case bug
14:32:02 <HackEgo> I knew that.
14:32:07 <shachaf> `?hh Ø
14:32:09 <HackEgo> ​Ø ehscahpehd due to a sehnsihtihve cahse buhg
14:32:19 <shachaf> `?hh szoup
14:32:20 <HackEgo> A szouhp a szihlárd tápszehrehknehk híg ahlahkbahn vahló ehlkészítése a célból, hohgy könnyehbbehn ehmészthehtők lehgyehnehk; a hígító ahnyahg a vihz, mehly fehlohldja s mahgába vehszi a tápahnyahg lehgértékehsehbb részeiht.
14:32:25 <shachaf> `? soup
14:32:26 <HackEgo> What soup, Doc?
14:32:29 <shachaf> `? szoup
14:32:31 <HackEgo> A szoup a szilárd tápszereknek híg alakban való elkészítése a célból, hogy könnyebben emészthetők legyenek; a hígító anyag a viz, mely feloldja s magába veszi a tápanyag legértékesebb részeit.
14:32:35 <boily> `? cheese
14:32:36 <HackEgo> cheese? ¯\(°_o)/¯
14:32:40 <shachaf> `?hh zsoup
14:32:41 <HackEgo> zsouhp? ¯\(°_o)/¯
14:32:49 <shachaf> `run ls wisdom | shuf
14:32:50 <HackEgo> ​🐐 \ substructural typing \ intercal \ scotland \ oerjan \ pietbot \ ☃ \ ais523 \ america \ wisdom \ webcarting \ phantom__hoover \ europe \ coffee \ monqy \ everyone \ c \ maths \ ? \ lettuce \ the us \ atrix \ brick \ united states \ freefull \ finland \ england \ sgeo \ phantom_______hoover \ olsner \ i \ nooga \ finnish \ hackego \ shach
14:32:55 <shachaf> `?hh substructural typing
14:32:57 <HackEgo> Noht to be cohnfuhsehd wihth struhctuhrahl suhbtyhpihng.
14:33:05 <boily> `run ls wisdom/* | shuf
14:33:06 <HackEgo> wisdom/glogbot \ wisdom/gazspaczo \ wisdom/gazpacho \ wisdom/monqy \ wisdom/brainfuck \ wisdom/misspellings of croissant \ wisdom/olsner \ wisdom/☃ \ wisdom/flower \ wisdom/shachaf \ wisdom/the them \ wisdom/coppro \ wisdom/wercome \ wisdom/wisdom \ wisdom/lifthrasiir \ wisdom/pie \ wisdom/nooga \ wisdom/ievan \ wisdom/hexham \ wisdom/u \ wisdom/
14:33:07 <elliott> 13:56:07 #esoteric: <Arc_Koen> elliott: I think there's something wrong with the wiki
14:33:09 <shachaf> `?hh struhctuhrahl suhbtyhpihng
14:33:11 <elliott> wrong howso
14:33:11 <HackEgo> struhhctuhhrahhl suhhbtyhhpihhng? ¯\(°_o)/¯
14:33:14 <elliott> oh you're gone
14:33:21 <shachaf> elliott: It was just a joke anyway.
14:33:43 <shachaf> elliott: btw ihm gohihng to sleehp ihn a mohmehnt
14:33:49 <shachaf> `?hh structural subtyping
14:33:50 <HackEgo> Noht to be cohnfuhsehd wihth suhbstruhctuhrahl tyhpihng.
14:34:01 <shachaf> `?hh ievan
14:34:03 <HackEgo> iehvahn ihs bahsihcahlly http://www.youhtuhbe.cohm/wahtch?v=4ohm1rQKPihjI
14:34:50 <boily> `? ievan
14:34:52 <HackEgo> ievan is basically http://www.youtube.com/watch?v=4om1rQKPijI
14:35:05 <boily> obviously.
14:35:20 <shachaf> `?hh pie
14:35:22 <HackEgo> I lihke pie \ I lihke pie
14:35:25 <shachaf> `?hh wercome
14:35:26 <HackEgo> ​エソテリックプログラミング言語のディザインとデプロイメントの国際な場所へようこそ!詳しく、ウィキを見て: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge。(他のエソテリック、ihrc.dahl.nehtの#ehsohtehrihcへ)
14:35:59 <shachaf> `?hh hackego
14:36:01 <HackEgo> HahckEhgo, ahlso known ahs HahckBoht, ihs a boht thaht ruhns ahrbihtrahry cohmmahnds ohn Uhnihx. See `hehlp fohr ihnfo ohn uhsihng iht. You shouhld tohtahlly try to hahx0r iht! Mahke suhre you ihmahgihne iht's ruhnnihng ahs rooht wihth no sahndbohxihng.
14:36:03 <shachaf> `?hh atrix
14:36:04 <HackEgo> Ahtrihx ihs a brahnd ohf hahnd creahm. Noht to be cohnfuhsehd wihth ahtrihq.
14:43:09 -!- augur has joined.
14:45:29 <shachaf> `?hh sweden
14:45:30 <HackEgo> Swehdehn ihs the suhbuhrb cahpihtahl ohf Nohrway. Iht's whehre ahll the Nohbehl prihzehs ahre ahnnouhncehd, ehxcehpt the Mahth Prihze.
14:47:35 <boily> bhy the whay, why arhe whe h-ing evherhythingh thodhay?
14:48:04 <shachaf> boily: oerjn is paying penance for /kickbanning me
14:48:24 <oerjan> wat
14:48:36 <oerjan> *waht
14:48:40 <shachaf> pehnahnce
14:48:51 <shachaf> `?hh parsley
14:48:52 <HackEgo> pahrsley? ¯\(°_o)/¯
14:48:55 <boily> ahh. phenhanche.
14:50:30 <shachaf> `learn Parsley is a girl in the South Seas.
14:50:35 <HackEgo> I knew that.
14:50:54 <shachaf> I think.
14:51:00 <shachaf> Maybe Parsley is a princess?
14:51:08 <shachaf> In der Südsee angekommen, treffen die drei auf das im Schachbrettmuster gefärbte Mädchen Petersilie (dessen Vater ein Stammeshäuptling, die Mutter allerdings Tippfräulein auf einer hiesigen Kokosflockenfarm ist) sowie ihren Vater Rabenaas, der mithilfe seines Taschenmessers, das er mit heißen Bratäpfeln zu laden pflegt, sogar Walfische (die bekanntlich Säugetiere sind und nur aus Versehen im Wasser leben) in die Flucht schlagen kann. ...
14:51:14 <shachaf> ... Negro Kaballo lernt ein Schimmelfräulein kennen und beschließt, bei ihr zu bleiben und nie mehr zu sprechen. Daraufhin machen sich Ringelhuth und Konrad wieder auf den Heimweg und kommen mit Rabenaas’ Hilfe noch so rechtzeitig an, dass der Onkel den Nachtdienst in der Apotheke antreten und der Neffe seinen Aufsatz schreiben kann. Dieser wird von ersterem noch gelesen, als er Konrads Eltern besucht. Zwar halten ihn diese für ...
14:51:20 <shachaf> ... geisteskrank, da er freimütig von seinen Erlebnissen berichtet, doch ihn, den erfahrenen Weitgereisten, kümmert das nicht: Er weiß, was er erlebt hat.
14:51:24 <shachaf> We need a Germanspeaker.
14:52:11 <oerjan> "Petersilie" looks similar to "Persille", which is the norwegian for "Parsley".
14:52:27 <oerjan> hth
14:52:30 <shachaf> Yes.
14:52:43 <shachaf> It was translated to Petrozilya (parsley) in Hebrew.
14:55:34 <boily> `learn Pasley is a girl in the South Seas. Persil est une demoiselle des Mers du Sud.
14:55:38 <HackEgo> I knew that.
14:56:44 <oerjan> ...did you just misple parsley
14:57:03 <boily> woops.
14:57:16 <boily> `learn Parsley is a girl in the South Seas. Persil est une demoiselle des Mers du Sud.
14:57:17 <fizzie> PERSILJA.
14:57:19 <HackEgo> I knew that.
14:57:19 <oerjan> `rm wisdom/pasley
14:57:22 <HackEgo> No output.
14:57:23 <boily> thanks.
14:59:48 <ion> http://i.imgur.com/I0MAPEk.png
15:01:27 -!- augur has quit (Read error: Connection reset by peer).
15:01:52 -!- augur has joined.
15:11:48 -!- augur has quit (Read error: Connection reset by peer).
15:12:08 -!- augur has joined.
15:25:45 -!- oerjan has quit (Quit: leaving).
15:35:41 <shachaf> `?hh Bike
15:35:42 <HackEgo> Bihke ihs frohm Luhxehmbouhrg.
15:36:13 <ion> `?hh dal
15:36:15 <HackEgo> dahl? ¯\(°_o)/¯
15:36:21 <ion> `?hh irc.dal.net
15:36:22 <HackEgo> ihrc.dahl.neht? ¯\(°_o)/¯
15:36:50 <shachaf> `run echo royal dal | h
15:36:51 <HackEgo> royahl dahl
15:37:32 -!- copumpkin has quit (Ping timeout: 245 seconds).
15:38:37 -!- copumpkin has joined.
16:03:26 -!- TodPunk has quit (Read error: Connection reset by peer).
16:05:44 -!- TodPunk has joined.
16:12:53 <shachaf> imo monoids
16:12:56 <shachaf> imonoids
16:23:58 -!- Vorpal_ has changed nick to Vorpal.
16:31:30 -!- AnotherTest has joined.
16:41:19 -!- Taneb has quit (Quit: Leaving).
16:57:28 -!- carado has joined.
17:01:24 <quintopia> `? monoids
17:01:26 <HackEgo> Monoids are the easy version of categories.
17:06:35 <shachaf> `?hh monoids
17:06:37 <HackEgo> Mohnoihds ahre the eahsy vehrsiohn ohf cahtehgohriehs.
17:08:44 <quintopia> `?hh shachaf
17:08:46 <HackEgo> shahchahf sprø sohm sehllehri
17:09:36 <quintopia> isnt ø a vowel?
17:09:58 <shachaf> It is, but the rule is vowel followed by a consonant.
17:10:09 <shachaf> (But if it *was* followed by a consonant, we'd be break the rule.)
17:10:37 <quintopia> why is that the rule
17:10:47 <shachaf> hi
17:10:49 <quintopia> why cant vowels followed by spaces be h'd
17:11:07 <shachaf> Because spaces aren't consonants.
17:11:08 <shachaf> qed
17:11:50 <quintopia> oh okay. but what if we changed the rule so that spaces are consonants. is there anything ethically wrong with such a decision?
17:12:08 <shachaf> you can't change the rule...................................
17:12:26 <shachaf> Rules aren't meant to be changed.
17:12:28 <shachaf> comex: Tell 'em!
17:12:33 <quintopia> oh
17:12:35 <quintopia> okay
17:12:36 <quintopia> so
17:12:40 <c00kiemon5ter> havent you played nomic ?
17:12:50 <quintopia> what if we added a new rule about vowels before spaces
17:12:55 <quintopia> and everyone liked it
17:13:06 <quintopia> would we rip the fabric of the universe apart?
17:41:52 <Sgeo> pizza pie for breakfast time
17:42:15 -!- AnotherTest has left.
17:47:18 <Sgeo> in approx 25 minutes
17:47:23 <Sgeo> So hungry
17:47:41 -!- ogrom has joined.
17:50:16 -!- FreeFull has joined.
18:01:11 <Sgeo> "This is a reference to Jamie Oliver's food revolution. He dispises anyone who eats pizza for breakfast. Any person being called a pizza breakfaster is being called a really mean name."
18:01:13 <Sgeo> What?
18:02:26 <shachaf> `?hh pizza
18:02:28 <HackEgo> pihzza? ¯\(°_o)/¯
18:03:01 <quintopia> we are better than jamie oliver
18:03:05 <shachaf> `learn Pizza is a kind of rhubarb pie made without rhubarb.
18:03:08 <HackEgo> I knew that.
18:06:45 -!- epicmonkey has quit (Ping timeout: 248 seconds).
18:23:20 -!- ogrom has quit (Quit: Left).
18:29:19 <Sgeo> Food. I ingests it.
18:32:35 -!- ogrom has joined.
18:38:36 <kmc> shachaf: the MIT Mystery Hunt had a puzzle called "Git Hub"
18:38:49 <kmc> it consisted of a Git repo whose branching structure forms a map of the Boston rapid transit network
18:39:07 <shachaf> Did you play?
18:39:13 <kmc> no
18:39:32 <shachaf> What was the puzzle?
18:39:47 <kmc> i don't know, you had to match the station names to commit messages and diffs in some way
18:40:42 -!- Bike has joined.
18:40:47 * shachaf is going to sleep in a moment.
18:40:51 <shachaf> Good morning, Bike.
18:40:55 <shachaf> `?hh Bike
18:40:57 <HackEgo> Bihke ihs frohm Luhxehmbouhrg.
18:41:51 <Bike> good function imo
18:41:56 <kmc> Luhexhambouhrg
18:42:14 <shachaf> `wehlcohme Bike
18:42:16 <HackEgo> Bihke: Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
18:42:32 <kmc> bork bork bork
18:43:24 <Sgeo> elliott, go make that link work
18:43:38 <Bike> he'd have to register another domain name...
18:43:44 <Bike> `cat bin/?hh
18:43:44 <HackEgo> ​? "$@" | perl -pe 's/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig'
18:44:07 * Sgeo was kidding. Not even sure of .ohrg is an existent TLD
18:44:09 <Sgeo> *if
18:44:20 <shachaf> Running `h! wisdom/welcome gets you kickbanned from the channel.
18:44:23 <Bike> well he could register the new tld for just a few thousand fucks
18:44:39 <Bike> bucks
18:44:44 <Bike> fucks would work too probably
18:45:11 <Sgeo> shachaf, now I'm curious
18:45:35 <Sgeo> No output
18:45:41 -!- Nisstyre has quit (Ping timeout: 255 seconds).
18:45:47 <Sgeo> oerjan HATES it when there's no output, I guess.
18:45:57 <Bike> `cat bin/h!
18:45:58 <HackEgo> perl -i'' -pe 's/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig' "$1"
18:46:09 <shachaf> Uh oh.
18:46:12 <shachaf> `welcome oerjan
18:46:14 <HackEgo> oerjan: Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
18:46:17 <Bike> that's a lot of quotation
18:46:29 <shachaf> Sgeo.........................................................................................................
18:46:35 <Sgeo> ...I was assuming the output would be what was bad
18:46:55 <shachaf> You hahve dohne the uhnthihnkahble
18:47:08 <shachaf> Sgeo: Didn't you learn from Racket?
18:47:32 <Bike> side effects are REAL sgeo. they are REAL and they want to hunt you down and HURT you
18:48:50 <shachaf> Good night.
18:59:51 -!- Nisstyre has joined.
19:01:43 <kmc> `addquote <Bike> well he could register the new tld for just a few thousand fucks
19:01:46 <HackEgo> 938) <Bike> well he could register the new tld for just a few thousand fucks
19:02:32 -!- monqy has joined.
19:04:25 <Bike> small price to pay
19:10:18 -!- fungot has quit (Remote host closed the connection).
19:10:55 <boily> fungot has left? nooooooooooooooooooo!
19:11:03 <monqy> rip
19:11:06 <fizzie> Whoopsie.
19:11:28 -!- fungot has joined.
19:12:25 <boily> long live the fungot!
19:12:26 <fungot> boily: since there's no way to move it to -blah then, huh...
19:12:45 <boily> well, fungot just moved to -blah.
19:12:46 <fungot> boily: alas, i am deformative, not deewiant. :p they claim that it's beautiful but certainly featureful. i agree that the world has agreed on not doing it if i was a little boy
19:13:03 <fizzie> If only we all were deewiant. Alas.
19:13:28 <Deewiant> fungot was deformative all along?!
19:13:29 <fungot> Deewiant: what way is call/ cc) ( call/ cc, by the way, scheme borrowed from algol more than some weeks or a couple more generations", seems rather cozy.
19:13:46 <Bike> `welcome
19:13:47 <HackEgo> Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
19:14:00 <Bike> `run sed -i s/h// wisdom/welcome
19:14:03 <HackEgo> No output.
19:14:06 <Bike> `welcome
19:14:08 <HackEgo> Welcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
19:14:19 <olsner> haha
19:14:21 <Bike> ...
19:14:25 <monqy> you forgot a 'g'
19:14:26 <fizzie> I see it's beehn h'd.
19:14:32 <Bike> `run sed -i s/h//g wisdom/welcome
19:14:35 <HackEgo> No output.
19:14:40 <Bike> `welcome
19:14:41 <HackEgo> Welcome to te international ub for esoteric programming language design and deployment! For more information, ceck out our wiki: ttp://esolangs.org/wiki/Main_Page. (For te oter kind of esoterica, try #esoteric on irc.dal.net.)
19:14:46 <Bike> perfect.
19:14:53 <fizzie> This is the best ub there is.
19:15:11 <boily> I like this ub, especially on Fridays.
19:16:18 <elliott> `revert
19:16:20 <Sgeo> I'm sure there was a better way to fix it
19:16:21 <HackEgo> Done.
19:16:25 <Sgeo> Besides reversions
19:16:49 <Sgeo> Just delete all h's between a vowel and a consonant. Imperfect but probably fewer repairs to do
19:17:19 <Bike> `welcome
19:17:20 <HackEgo> Welcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
19:17:26 <Bike> yeah, ok.
19:17:32 <Gregor> `welcome
19:17:35 <HackEgo> Welcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
19:17:39 <Gregor> `learn 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.)
19:17:43 <HackEgo> I knew that.
19:17:46 <Gregor> `welcome
19:17:47 <HackEgo> 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.)
19:17:52 <Gregor> Twats.
19:18:04 <Bike> My solution was better.
19:18:06 <Bike> Automated.
19:18:15 <fizzie> `run welcome | h | perl -pe 's/([aeiouy])h([bcdfghjklmnpqrstvxz])/$1$2/ig'
19:18:17 <HackEgo> 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.)
19:18:20 <boily> `learn ub is a saner hub.
19:18:23 <HackEgo> I knew that.
19:18:29 <fizzie> Ooh, I think the unh works perfectly for that.
19:19:43 <kmc> `run cat bin/h
19:19:44 <HackEgo> ​#!/usr/bin/perl -p \ s/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig
19:19:49 <fizzie> `run printf '%s\n' '#!/usr/bin/perl -p' 's/([aeiouy])h([bcdfghjklmnpqrstvxz])/$1$2/ig' > bin/unh; chmod +x bin/unh # I'm sure we need all these
19:19:51 <HackEgo> No output.
19:20:25 <fizzie> `run echo hello there, dahl | h | h | h | unh | unh | unh
19:20:26 <HackEgo> hello there, dahl
19:33:02 -!- augur_ has joined.
19:37:13 -!- quintopi1 has joined.
19:40:05 -!- oerjan has joined.
19:42:24 -!- augur has quit (*.net *.split).
19:42:25 -!- quintopia has quit (*.net *.split).
19:53:17 <oerjan> <shachaf> `run echo royal dal | h <-- it's "roald" hth
19:54:17 <oerjan> `url ?
19:54:19 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/?
19:54:25 <oerjan> `url bin/?
19:54:26 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/?
19:55:02 <oerjan> wtf :P
19:55:36 <oerjan> `run cat bin/'?' | paste
19:55:40 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.16040
19:55:50 <Bike> `translatetoerjan hello there
19:55:54 <HackEgo> Traceback (most recent call last): \ File "/hackenv/bin/json", line 4, in <module> \ data = json.loads(sys.stdin.read().decode('utf-8')) \ File "/opt/python27/lib/python2.7/json/__init__.py", line 310, in loads \ return _default_decoder.decode(s) \ File "/opt/python27/lib/python2.7/json/decoder.py", line 346, in decode \ obj, end
19:56:00 <Bike> hooray
19:56:17 <oerjan> oh hm maybe url needs to do actual url escaping
19:56:21 <oerjan> `cat bin/url
19:56:22 <HackEgo> ​#!/bin/bash \ if [ "$1" ] \ then \ echo 'http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/'"$1" \ else \ echo 'http://codu.org/projects/hackbot/fshg/' \ fi
19:56:35 <oerjan> how does one do that, anyway
19:56:47 <Bike> running it through a cargoculted regex
19:57:00 <oerjan> `cat bin/translatefromto
19:57:01 <HackEgo> ​#!/bin/bash \ TEXT="$1" \ FROM=`echo "$TEXT" | sed 's/ .*$//'` \ TEXT=`echo "$TEXT" | sed 's/^[^ ]* //'` \ TO=`echo "$TEXT" | sed 's/ .*$//'` \ TEXT=`echo "$TEXT" | sed 's/^[^ ]* //'` \ if [ "$FROM" = "auto" ] ; then FROM="" ; fi \ \ curl -e http://codu.org/ http://ajax.googleapis.com/ajax/services/language/translate \ \ --data-urlenco
19:57:21 <FreeFull> I just thought of something evil
19:57:23 <oerjan> oh hm i think those use curl
19:57:37 <oerjan> `cat bin/google
19:57:38 <HackEgo> ​#!/bin/bash \ if [ ! "$1" ] \ then \ echo 'Google what?' \ exit 1 \ fi \ \ QUERY=`echo -n "$1" | od -t x1 -A n -w1000 | tr " " %` \ \ lynx --cfg=/dev/null --lss=/dev/null \ \ --dump --width=1000 'http://google.com/search?q='"$QUERY" | \ grep -A 4 'Search Results' | \ tail -n 2
19:57:44 <FreeFull> `run dd if=/dev/zero of=bluh bs=1M
19:57:48 <HackEgo> File size limit exceeded
19:57:55 <FreeFull> `ls
19:57:56 <HackEgo> bin \ bluh \ canary \ dbg.out \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ korma \ lib \ paste \ quines \ quotes \ quotese \ run \ share \ test \ wisdom \ zalgo.hs
19:58:11 <FreeFull> `ls -l bluh
19:58:12 <HackEgo> ls: invalid option -- ' ' \ Try `ls --help' for more information.
19:58:16 <FreeFull> `run ls -l bluh
19:58:18 <HackEgo> ​-rw-r--r-- 1 5000 5000 10485760 Jan 25 19:57 bluh
19:58:30 <FreeFull> Hmm
19:58:52 <Bike> `cat bluh
19:58:54 <HackEgo> ​...........................................................................................................................................................................................................................................................................................................................................................
19:59:32 <FreeFull> I'm tempted to flood the filesystem with max-size files
19:59:47 <olsner> that's just annoying
20:00:02 <olsner> please find a funnier abuse of the bot :)
20:00:25 <Bike> `run echo "FreeFull" | cat - bluh
20:00:26 <HackEgo> FreeFull \ ...................................................................................................................................................................................................................................................................................................................................................
20:00:31 <oerjan> `run grep -l 'lynx|curl|wget' bin/*
20:00:33 <Bike> noooo
20:00:33 <HackEgo> No output.
20:00:39 <oerjan> oops
20:01:11 <kmc> http://en.wikipedia.org/wiki/Metasepia_pfefferi is a weird cuttlefish
20:01:18 <oerjan> `run grep -l 'curl' bin/*
20:01:19 <FreeFull> `run grep -l 'lynx|curl|wget|nc|netcat' * -R
20:01:19 <HackEgo> bin/tclkit \ bin/translatefromto
20:01:28 <kmc> it's tiny (6cm), poisonous, and it walks on the ocean floor rather than swimming
20:01:29 <oerjan> `run grep -P -l 'lynx|curl|wget' bin/*
20:01:31 <HackEgo> bin/define \ bin/etymology \ bin/google \ bin/lua \ bin/luac \ bin/macro \ bin/tclkit \ bin/translatefromto \ bin/units
20:01:36 <HackEgo> No output.
20:01:40 <oerjan> `cat bin/define
20:01:41 <HackEgo> ​#!/bin/bash \ if [ ! "$1" ] \ then \ echo 'Define what?' \ exit 1 \ fi \ \ QUERY=`echo -n "$1" | od -t x1 -A n -w1000 | tr " " %` \ \ lynx --cfg=/dev/null --lss=/dev/null \ \ --dump --width=1000 'http://google.com/search?q=define:'"$QUERY" | \ grep -A 3 'Definitions of' | \ head -n 4 | tail -n 3
20:01:55 <oerjan> `cat bin/units
20:01:56 <HackEgo> ​ELF...........>.....@.....@.......82.........@.8..@.(.%..................@.......@.....h.....h....... ............n.....nt.....nt.....Xk.............. ...................@......@.....D.......D....................n.....nt.....nt.....(.....................Qtd..................................................Rt
20:01:59 <oerjan> oops
20:02:16 <elliott> `? ngevd
20:02:18 <HackEgo> ​+ص.m4c$P1#DGE~@ctskk~ZI?Fw.Od~?0 #hY=,͚Gضevm.AE5Ө|5ٯRf"XRY|,d37\A(EpVfvD;&񾕑L縸A^'dGAojI!/f]m6"aΌ}{ӮgNtauZc%-.x}k.G[^F?L‹C}!Б_뒤=r{l&'J
20:02:24 <elliott> amen
20:02:29 <FreeFull> Whyyyyy
20:02:33 <Bike> clap
20:02:49 <FreeFull> I got it
20:03:00 <Bike> i don't think you got it
20:03:14 <olsner> kmc: aren't all cuttlefish weird?
20:03:43 <kmc> sure but this one is weird among cuttlefish
20:04:12 <FreeFull> :D
20:04:15 <FreeFull> :3
20:04:40 <kmc> i don't think there's a cuttlefish in unicode :/
20:04:52 <Bike> combining cuttlefish below
20:05:30 <FreeFull> 🐡 There is a blowfish
20:05:35 <FreeFull> `run ls
20:05:36 <HackEgo> bin \ bluh \ canary \ dbg.out \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ korma \ lib \ paste \ quines \ quotes \ quotese \ run \ run~ \ share \ test \ wisdom \ zalgo.hs
20:05:53 <FreeFull> Curious, is run write-protected?
20:05:59 <FreeFull> `run ls -l run
20:06:00 <HackEgo> ​-rwxr-xr-x 1 5000 5000 35 Jan 25 20:04 run
20:06:05 <elliott> `cat run
20:06:06 <HackEgo> ​\#!/bin/sh\necho -ne 'Mmm, pie!'\n
20:06:08 <elliott> `rm run
20:06:11 <HackEgo> No output.
20:06:20 <FreeFull> `run test
20:06:21 <HackEgo> No output.
20:06:27 <FreeFull> `run echo meow
20:06:29 <HackEgo> meow
20:06:31 <FreeFull> Seems it's built in
20:06:43 <FreeFull> Or the actual run is bin/run
20:06:48 <FreeFull> `run ls bin/run
20:06:49 <HackEgo> bin/run
20:06:57 <FreeFull> `run cat bin/run
20:06:59 <HackEgo> ​#!/bin/sh \ bash -c "$@"
20:07:00 <elliott> `rm bin/run
20:07:03 <HackEgo> No output.
20:07:07 <FreeFull> `run test
20:07:07 <elliott> `run echo hi
20:07:07 <HackEgo> hi
20:07:08 <HackEgo> No output.
20:07:13 <FreeFull> Built in.
20:07:25 <FreeFull> `run find . -name run
20:07:29 <HackEgo> ​./.hg/store/data/run
20:11:28 <kmc> shachaf: so I learned how to use AES-NI
20:11:38 * Sgeo goes to watch some Ghost in the Shell: Stand Alone Complex
20:12:11 <pikhq> Sgeo: Good work.
20:14:14 <Sgeo> If my gf likes H+ (she does), does that suggest she'll like Ghost in the Shell?
20:14:57 <pikhq> H+?
20:15:11 <pikhq> Ah. Decent chance.
20:16:11 * Bike grumbles
20:16:22 <oerjan> `run ls /bin/*url*
20:16:23 <HackEgo> ls: cannot access /bin/*url*: No such file or directory
20:16:36 <oerjan> `run ls /bin/*uni*
20:16:38 <HackEgo> ls: cannot access /bin/*uni*: No such file or directory
20:17:36 <Bike> pikhq: by the way, did you hear about the new ghost in the shell show? the major has pants this time.
20:18:47 <oerjan> `which python
20:18:49 <HackEgo> ​/opt/python27/bin/python
20:19:05 <oerjan> wtf
20:19:14 <oerjan> `which env
20:19:15 <HackEgo> ​/usr/bin/env
20:20:00 <FreeFull> `which run
20:20:01 <HackEgo> No output.
20:20:22 <oerjan> `run python -c "import urllib; print urllib.quote('''http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/?''')"
20:20:24 <HackEgo> http%3A//codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/%3F
20:20:45 <oerjan> `cat bin/url
20:20:47 <HackEgo> ​#!/bin/bash \ if [ "$1" ] \ then \ echo 'http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/'"$1" \ else \ echo 'http://codu.org/projects/hackbot/fshg/' \ fi
20:21:07 <pikhq> Bike: I heard.
20:21:21 <pikhq> Bike: My girlfriend said something along the lines of "bullshit".
20:21:28 <Bike> haha
20:26:51 <oerjan> `fetch url
20:26:51 <HackEgo> wget: unable to resolve host address `url'
20:27:00 <oerjan> `fetch http://oerjan.nvg.org/url
20:27:05 <HackEgo> 2013-01-25 20:27:04 URL:http://oerjan.nvg.org/url [223/223] -> "url" [1]
20:27:14 <oerjan> `run chmod a+x url
20:27:17 <HackEgo> No output.
20:27:24 <oerjan> `./url
20:27:26 <HackEgo> Traceback (most recent call last): \ File "/hackenv/url", line 3, in <module> \ arg = sys.argv(1) \ TypeError: 'list' object is not callable
20:28:49 <oerjan> oh duh so much for copying code from stackoverflow without checking if someone already pointed out it's buggy :P
20:29:29 -!- ogrom has quit (Quit: Left).
20:34:41 <kmc> `cat bin/fetch
20:34:42 <HackEgo> cat: bin/fetch: No such file or directory
20:35:37 <Sgeo> wtf undigitizable code?
20:37:42 <oerjan> `fetch http://oerjan.nvg.org/url
20:37:45 <HackEgo> 2013-01-25 20:37:43 URL:http://oerjan.nvg.org/url [240/240] -> "url.1" [1]
20:37:59 <oerjan> `run cat url >bin/url
20:38:02 <HackEgo> No output.
20:38:06 <oerjan> `url
20:38:07 <elliott> oerjan: 'url.1"
20:38:07 <HackEgo> Traceback (most recent call last): \ File "/hackenv/bin/url", line 3, in <module> \ arg = sys.argv(1) \ TypeError: 'list' object is not callable
20:38:08 <elliott> *"
20:38:10 <oerjan> oops
20:38:15 <oerjan> `run cat url.1 >bin/url
20:38:18 <HackEgo> No output.
20:38:20 <oerjan> `url
20:38:22 <HackEgo> http://codu.org/projects/hackbot/fshg/
20:38:29 <oerjan> `url bin/?
20:38:31 <HackEgo> http%3A//codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/%3F
20:39:27 <oerjan> fff
20:39:50 <boily> for fsck's fake?
20:40:12 <Bike> urlencoding is suffering
20:40:57 <oerjan> `fetch http://oerjan.nvg.org/url
20:41:00 <HackEgo> 2013-01-25 20:40:58 URL:http://oerjan.nvg.org/url [233/233] -> "url.2" [1]
20:41:06 <oerjan> `run cat url.2 >bin/url
20:41:11 <HackEgo> No output.
20:41:14 <oerjan> `url bin/?
20:41:16 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/%3F
20:41:46 <Sgeo> trynottothinkaboutit trynottothinkaboutit
20:41:49 <oerjan> whew
20:41:59 <oerjan> `run echo test | paste
20:42:04 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.32012
20:42:14 <oerjan> looks good
20:42:15 <elliott> Sgeo: hi
20:42:17 <Bike> Sgeo: also don't think about how the tachikoma work physically, etc
20:42:39 <oerjan> Bike: well python had a module for it, so it seemed the simplest clean solution
20:42:59 <oerjan> (as opposed to writing a regexp mess)
20:43:18 <pikhq> Sgeo: "If you're wondering how he eats or breathes, and other science facts, then repeat to yourself 'It's just a show, I should really just relax.'"
20:43:34 <oerjan> unfortunately it encoded also the : after http: which my browser didn't like, but fortunately it doesn't require a whole url.
20:43:40 <oerjan> *after http
20:44:38 <Bike> oerjan: just encode the bit provided as an argument and append it to the unencoded prefix?
20:45:51 -!- ogrom has joined.
20:46:47 <oerjan> Bike: that's what i finally did
20:47:46 <oerjan> `run ls url*
20:47:48 <HackEgo> url \ url.1 \ url.2
20:47:53 <oerjan> `run rm url*
20:47:57 <HackEgo> No output.
20:48:32 * oerjan remembers fixing url was yak shaving for something
20:49:32 <oerjan> ...you changed ? to do ngevd implicitly?
20:49:40 <elliott> I did nothing
20:49:42 <elliott> `cat wisdom/ngevd
20:49:43 <oerjan> `run ls wisdom/n*
20:49:43 <HackEgo> No output.
20:49:44 <HackEgo> wisdom/natural transformation \ wisdom/ngevd \ wisdom/nooga \ wisdom/nortti \ wisdom/norway
20:49:50 <elliott> what.
20:49:53 <elliott> `run ls -lh wisdom/ngevd
20:49:54 <HackEgo> ​-rw-r--r-- 1 5000 5000 0 Jan 25 13:21 wisdom/ngevd
20:49:57 <elliott> well that's stupid & someone should revert it
20:50:35 <boily> `? norway
20:50:37 <Bike> `? ngevd
20:50:37 <HackEgo> Norway is the suburb capital of Sweden. It's where the Nobel Peace Prize is announced.
20:50:38 <HackEgo> ​9VHƀ`JjAM<9|OO7;τ1:k47j.|YmA=H_F~$οizf䫴uj!!.#Mc? n\=M-fOHOV}L9KH#ɵyzXq:c77͜؍K \ :^'88eH]#w$K/POd&'Jg@lz\HV#yNUW9<qwjmb!%ar6PN$)f \ Kz$/{D]o)j \ e.~?C"] *ux|w:oC]ۘsX
20:50:38 <oerjan> elliott: well i guess someone got a bit fed up of having to make an exception for that whenever they did some command on all of wisdom/*
20:50:43 <Sgeo> I like that viginette at the end (is that the right term?)
20:50:56 <kmc> i should disable blinking :(
20:50:57 <elliott> oerjan: that someone should perhaps stop running commands on all of wisdom/*
20:51:03 <kmc> it's kind of the worst
20:51:05 <boily> kmc: you have blinking? lucky you.
20:51:13 <elliott> kmc: *best
20:51:26 <elliott> kmc: mosh feature request: double blink mode
20:51:37 <kmc> doubletime?
20:51:57 <oerjan> elliott: um grep as well as combined pasting are things that get awkward because of it
20:52:16 <elliott> oerjan: i don't think you appreciate the ngevd entry enough
20:52:32 <oerjan> elliott: feel free to revert it, i had nothing to do with it anyway
20:53:24 <elliott> pfft as if i'd do work
20:53:45 <oerjan> `? welcome
20:53:46 <HackEgo> 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.)
20:55:50 <kmc> i kind of want @PLT_SeinfeldToday
20:56:06 <kmc> "What if Seinfeld were still on the air, and also about programming languages theory?"
20:56:35 <elliott> kmc: make that + PLT_Marx
20:56:36 <elliott> thanx
20:57:27 <Bike> what if seinfeld was still on the air, and writing a book about the economic history of c++ implementations?
21:01:04 <kmc> "Elaine dumps a guy after hearing him defend PHP. Kramer writes a monad tutorial."
21:02:12 <oerjan> `fetch http://oerjan.nvg.org/q
21:02:14 <HackEgo> 2013-01-25 21:02:13 URL:http://oerjan.nvg.org/q [338/338] -> "q" [1]
21:02:20 <oerjan> `run chmod a+x q
21:02:23 <HackEgo> No output.
21:02:35 <oerjan> `./q elliott
21:02:37 <HackEgo> ​[: 4: missing ] \ [: 4: missing ] \ elliott? ��\(��_o)/��
21:02:46 <oerjan> ...sigh
21:03:09 <coppro> `echo Norway is the suburb capital of Sweden. It's where the Nobel Peace Prize is announced.
21:03:10 <HackEgo> Norway is the suburb capital of Sweden. It's where the Nobel Peace Prize is announced.
21:03:16 <coppro> `echo Norway is the suburb capital of Sweden. It's where the Nobel Peace Prize is announced. >wisdom/ngevd
21:03:17 <HackEgo> Norway is the suburb capital of Sweden. It's where the Nobel Peace Prize is announced. >wisdom/ngevd
21:03:30 <oerjan> coppro: what is the point of this.
21:03:35 <coppro> oerjan: to get rid of the yuck
21:03:39 <coppro> `? ngevd
21:03:41 <HackEgo> ​4,y:Gu]~
21:03:48 <Bike> yes
21:04:03 <coppro> and that was the first available text
21:05:24 <oerjan> `fetch http://oerjan.nvg.org/q
21:05:27 <HackEgo> 2013-01-25 21:05:25 URL:http://oerjan.nvg.org/q [338/338] -> "q.1" [1]
21:05:36 <oerjan> `run cat q.1 >q
21:05:39 <HackEgo> No output.
21:05:43 <oerjan> `./q elliott
21:05:45 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things? \ elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?
21:05:50 <oerjan> fuck
21:06:02 <boily> `? elliott
21:06:04 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?
21:06:11 <Bike> `cat ./q
21:06:12 <HackEgo> ​#!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z | sed "s/ *$//") \ topic1=$(echo "$topic" | sed "s/s$//") \ ([ \( "$topic" = "ngevd" \) -a \( -e wisdom/ngevd \) ] && cat /dev/urandom && exit 0; ) || [ -e "wisdom/$topic" ] && cat "wisdom/$topic" || [ -e "wisdom/$topic1" ] && cat "wisdom/$topic1" || { echo "$1? ��\(��_o)/��"; exit 1; }
21:06:25 <nortti> `q
21:06:27 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: q: not found
21:06:33 <oerjan> HEY NO PEEKING
21:06:57 <Bike> `learn $1? ��\(��_o)/��
21:07:01 <HackEgo> I knew that.
21:07:27 <elliott> kmc: one tweet and yet this account still doesn't exist
21:08:16 <boily> `? `learn
21:08:17 <HackEgo> ​`learn? ¯\(°_o)/¯
21:08:19 <Sgeo> pikhq, are the dubs considered acceptable for Ghost in the Shell?
21:08:31 <pikhq> I've heard they're good.
21:08:32 <Sgeo> So far, these episodes have seemed.... emotionless
21:08:44 <pikhq> I don't watch dubs though.
21:09:01 <Bike> don't be so blasé about it
21:09:14 <Fiora> I think the dub was considered okay, but I preferred the japanese
21:09:23 <Fiora> the series really kicks into high gear around episode 4, where the story gets moving
21:11:13 <oerjan> `fetch http://oerjan.nvg.org/q
21:11:15 <HackEgo> 2013-01-25 21:11:14 URL:http://oerjan.nvg.org/q [352/352] -> "q.2" [1]
21:11:21 <oerjan> `run cat q.2 >q
21:11:25 <HackEgo> No output.
21:11:26 <oerjan> `./q elliott
21:11:28 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?
21:11:31 <oerjan> `./q elliotts
21:11:32 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?
21:11:36 <oerjan> finally.
21:11:46 <oerjan> `run mv q bin/'?'
21:11:48 <HackEgo> No output.
21:12:13 <elliott> imo this q is about 0.1x as cool
21:12:22 <oerjan> why?
21:12:35 <elliott> what if a thing is different from the plural of a thing!!
21:12:39 <elliott> maybe there's lots you can write about ngevds
21:12:43 <elliott> i'm just complaining though
21:12:46 <elliott> it's what i do
21:13:44 <oerjan> elliott: um it will only use the singular if the plural doesn't exist. although i see a different problem...
21:14:39 <oerjan> `run ls wisdom/*s
21:14:41 <HackEgo> wisdom/devious \ wisdom/d-modules \ wisdom/finns \ wisdom/friends \ wisdom/lens \ wisdom/maths \ wisdom/monads \ wisdom/monoids \ wisdom/oceans \ wisdom/the us \ wisdom/united states
21:14:45 <oerjan> `? monoids
21:14:47 <HackEgo> Monoids are the easy version of categories.
21:14:47 <oerjan> `? monoid
21:14:50 <HackEgo> Monoids are just categories with a single object.
21:14:52 <oerjan> see?
21:15:21 <Sgeo> Fiora, in the middle of episode 2, now it's starting to hold my interest
21:16:38 <oerjan> `? fnord
21:16:40 <HackEgo> fnord? ��\(��_o)/��
21:17:28 <Phantom_Hoover> holy shit there's a south dakota?
21:19:04 <elliott> oerjan: you realise the smiley is messed up btw
21:19:31 <Sgeo> Yet still no East Virginia.
21:22:12 <kmc> elliott: help me write a few more
21:22:29 <oerjan> elliott: yes, i forgot to fix the hg raw view's encoding before cutting and pasting
21:22:46 <oerjan> `fetch http://oerjan.nvg.org/q
21:22:49 <HackEgo> 2013-01-25 21:22:48 URL:http://oerjan.nvg.org/q [364/364] -> "q" [1]
21:22:57 <elliott> kmc: i think i have seen like one episode of seinfeld in my life
21:23:02 <elliott> kmc: not sure whether this makes me more or less qualified
21:23:20 <kmc> hm could be problematic
21:23:35 <oerjan> `run cat q >bin/'?'
21:23:38 <HackEgo> No output.
21:23:46 <oerjan> `? elliotts
21:23:47 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?
21:23:53 <oerjan> `? fnord
21:23:54 <HackEgo> fnord? ¯\(°_o)/¯
21:24:06 <elliott> `? fnords
21:24:07 <oerjan> there you go
21:24:07 <HackEgo> fnords? ¯\(°_o)/¯
21:24:32 <kmc> "George's new language is just Lisp with new syntax; he hopes nobody notices. Kramer gets kicked out of a talk by Rich Hickey."
21:24:37 <quintopi1> `?hh fnords
21:24:39 <HackEgo> ​/hackenv/bin/?hh: line 1: q: command not found
21:24:47 <quintopi1> what the hell
21:24:52 -!- quintopi1 has changed nick to quintopia.
21:25:03 -!- quintopia has quit (Changing host).
21:25:03 -!- quintopia has joined.
21:25:11 <oerjan> `run ls q*
21:25:13 <HackEgo> q \ q.1 \ q.2 \ quotes \ quotese \ \ quines: \ cat \ perl \ python \ ruby
21:25:15 <quintopia> how did i get 1'd
21:25:30 <oerjan> `run rm q{,.1,.2}
21:25:34 <HackEgo> No output.
21:25:51 <elliott> kmc: imo look to esolangs for inspiration
21:29:07 <oerjan> `cat bin/?hh
21:29:09 <HackEgo> ​? "$@" | perl -pe 's/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig'
21:29:35 <oerjan> `?hh monads
21:29:37 <HackEgo> Mohnahds ahre juhst mohnoihds ihn the cahtehgohry ohf ehndohfuhnctohrs.
21:29:42 <oerjan> `? monad
21:29:43 <HackEgo> monads
21:29:52 <oerjan> ...
21:30:03 <oerjan> `run mv wisdom/monads wisdom/monad
21:30:06 <HackEgo> No output.
21:30:11 <oerjan> `? monads
21:30:12 <Bike> Seinfeld discovers a Brainfuck derivative that's supposed to look like one of his standup routines. George dates an APL programmer. (I have never seen seinfeld)
21:30:12 <HackEgo> Monads are just monoids in the category of endofunctors.
21:30:14 <Sgeo> Naruto makes me laugh. GitS doesn't make me laugh.
21:30:30 <oerjan> `run ls wisdom/*s
21:30:31 <HackEgo> wisdom/devious \ wisdom/d-modules \ wisdom/finns \ wisdom/friends \ wisdom/lens \ wisdom/maths \ wisdom/monoids \ wisdom/oceans \ wisdom/the us \ wisdom/united states
21:30:41 <oerjan> `? d-modules
21:30:43 <HackEgo> D-modules are just modules over the ring of differential operators. Taneb invented them.
21:30:45 <oerjan> `? d-module
21:30:46 <HackEgo> D-modules are just modules over the ring of differential operators. Taneb invented them.
21:30:56 <oerjan> `rm wisdom/d-modules
21:30:59 <HackEgo> No output.
21:31:02 <oerjan> `? d-module
21:31:03 <HackEgo> D-modules are just modules over the ring of differential operators. Taneb invented them.
21:31:12 <oerjan> `? finn
21:31:13 <HackEgo> finn? ¯\(°_o)/¯
21:31:35 <oerjan> `run mv wisdom/finns wisdom/finn
21:31:38 <HackEgo> No output.
21:31:57 <oerjan> `? friend
21:31:59 <HackEgo> friend? ¯\(°_o)/¯
21:32:02 <oerjan> `? friends
21:32:03 <HackEgo> Friends make graphs together / La la la la
21:32:32 <oerjan> okay
21:35:01 <oerjan> that'll be enough for now.
21:36:08 <oerjan> `run echo "The U are a very mad people." >wisdom/'the u'
21:36:11 <HackEgo> No output.
21:36:32 <oerjan> it somehow seemed to fit
21:39:43 <oerjan> `? rhubarb
21:39:44 <HackEgo> rhubarb? ¯\(°_o)/¯
21:39:48 <oerjan> `learn Rhubarb rhubarb rhubarb, rhubarb: rhubarb rhubarb? Rhubarb, rhubarb, rhubarb rhubarb.
21:39:51 <HackEgo> I knew that.
21:42:33 -!- ChanServ has set channel mode: +o oerjan.
21:43:40 -!- oerjan has set channel mode: +b *!*Sgeo@*.dyn.optonline.net.
21:43:40 -!- oerjan has kicked Sgeo I'm sorry but this is apparently policy..
21:43:42 -!- tromp has left ("Konversation terminated!").
21:43:49 -!- oerjan has set channel mode: -b *!*Sgeo@*.dyn.optonline.net.
21:43:54 -!- tromp has joined.
21:43:57 -!- oerjan has set channel mode: -o oerjan.
21:44:14 <kmc> the policy is to kickban Sgeo?
21:44:17 <oerjan> that /knockout command seems nice
21:44:17 <monqy> is oerjan logreading
21:44:20 <oerjan> monqy: yep
21:44:28 <oerjan> <shachaf> Running `h! wisdom/welcome gets you kickbanned from the channel.
21:44:29 <kmc> for having bad opinions about anime or...?
21:44:32 <kmc> oh dear
21:44:48 <monqy> ahhh is that what happened to welcome
21:45:00 <kmc> oh h! mutates in place?
21:45:46 -!- Sgeo has joined.
21:45:54 <oerjan> i'm tempted to remove h! as i cannot quite see a non-obnoxious use
21:46:04 <kmc> salt the earth
21:46:43 <elliott> `run ls wisdom | paste
21:46:48 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.19256
21:47:05 <monqy> `? phantom____________________hoover
21:47:06 <HackEgo> ​<span accent="British">Your soundcard works perfectly.</span>
21:47:20 <quintopia> excellent
21:47:25 <monqy> `? phantom__________hoover
21:47:27 <HackEgo> OK you got me there.
21:47:47 <monqy> `? shachafø som selleri and cosplays nepeta leijon on weekends.
21:47:48 <HackEgo> shachafø som selleri and cosplays nepeta leijon on weekends.? ¯\(°_o)/¯
21:47:54 <monqy> ?????
21:48:02 <oerjan> monqy: no f idea
21:48:08 * Sgeo has perfectly cromulent opinions about anime.
21:48:10 <elliott> `cat wisdom/shachafø som selleri and cosplays nepeta leijon on weekends.
21:48:11 <HackEgo> cat: wisdom/shachafø som selleri and cosplays nepeta leijon on weekends.: No such file or directory
21:48:18 <elliott> i dont understand
21:48:20 <elliott> `cat wisdom/shachaf*
21:48:21 <HackEgo> cat: wisdom/shachaf*: No such file or directory
21:48:22 <elliott> `run cat wisdom/shachaf*
21:48:23 <HackEgo> shachaf sprø som selleri \ shachaf spr som selleri and cosplays Nepeta Leijon on weekends.
21:48:32 <elliott> quality entry
21:48:35 <elliott> let's keep it
21:48:56 <oerjan> ...what.
21:49:00 <oerjan> `? shachaf
21:49:01 <HackEgo> shachaf sprø som selleri
21:49:21 <oerjan> `run ls wisdom/shachaf*
21:49:22 <HackEgo> wisdom/shachaf \ wisdom/shachaf som selleri and cosplays nepeta leijon on weekends.
21:49:35 <oerjan> oh hm...
21:49:58 <oerjan> there's an encoding mismatch
21:50:08 <elliott> that's ok
21:50:12 <elliott> it's beautiful as it is
21:50:19 <oerjan> *sigh*
21:50:27 <elliott> embrace nonsense, oerjan
21:50:31 <elliott> it's the best thing there is
21:51:35 <oerjan> `run ls wisdom/{shachaf*,ø}
21:51:36 <HackEgo> wisdom/ø \ wisdom/shachaf \ wisdom/shachaf som selleri and cosplays nepeta leijon on weekends.
21:51:51 <monqy> `? misspellings of croissant
21:51:52 <oerjan> `run cd wisdom; mv shachaf*. shachafø som selleri and cosplays nepeta leijon on weekends.
21:51:52 <HackEgo> misspellings of crosant? ¯\(°_o)/¯
21:51:53 <HackEgo> mv: target `weekends.' is not a directory
21:52:01 <oerjan> eek
21:52:09 <oerjan> `run cd wisdom; mv shachaf*. "shachafø som selleri and cosplays nepeta leijon on weekends."
21:52:12 <HackEgo> mv: target `shachafø som selleri and cosplays nepeta leijon on weekends.' is not a directory
21:52:33 <oerjan> `run ls shachaf*.
21:52:33 <HackEgo> ls: cannot access shachaf*.: No such file or directory
21:52:39 <oerjan> `run ls wisdom/shachaf*.
21:52:40 <HackEgo> wisdom/shachafø som selleri and cosplays nepeta leijon on weekends. \ wisdom/shachaf som selleri and cosplays nepeta leijon on weekends.
21:52:51 <oerjan> argh
21:53:02 <Phantom_Hoover> jesus christ do it in a query
21:53:08 -!- augur_ has quit (Remote host closed the connection).
21:53:23 <oerjan> `? shachafø som selleri and cosplays nepeta leijon on weekends.
21:53:24 <HackEgo> shachaf spr som selleri and cosplays Nepeta Leijon on weekends.
21:53:37 <monqy> `? footnote 8
21:53:38 <HackEgo> Isn't it fun reading through all the footnotes?
21:54:33 <elliott> oerjan: btw i am pretty sure that entry is actually meant to be called "shachaf"
21:54:44 <oerjan> FANCY
21:55:42 <oerjan> `run rm wisdom/shachaf?*
21:55:46 <HackEgo> No output.
21:55:53 <oerjan> `learn shachaf sprø som selleri and cosplays Nepeta Leijon on weekends.
21:55:56 <HackEgo> I knew that.
21:56:08 <oerjan> `? shachaf
21:56:09 <HackEgo> shachaf sprø som selleri and cosplays Nepeta Leijon on weekends.
21:58:13 -!- boily has quit (Quit: Poulet!).
22:01:26 -!- Frooxius has quit (Ping timeout: 255 seconds).
22:03:49 <kmc> "George learns Ruby just to prove he isn't old. Kramer passes off Bob Sacamano's opinions about Haskell as his own."
22:06:47 <FreeFull> `run ls
22:06:49 <HackEgo> bin \ bluh \ canary \ dbg.out \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ korma \ lib \ paste \ quines \ quotes \ quotese \ run~ \ share \ test \ wisdom \ zalgo.hs
22:06:52 <FreeFull> `run rm bluh
22:06:55 <HackEgo> No output.
22:08:05 -!- zzo38 has joined.
22:08:56 <Lumpio-> korma? o_O
22:08:58 <Lumpio-> `run ls korma
22:09:00 <HackEgo> No output.
22:09:05 <Lumpio-> `run ls -dh korma
22:09:06 <HackEgo> korma
22:09:14 <Lumpio-> `run ls -dl korma
22:09:15 <HackEgo> drwxr-xr-x 2 5000 5000 4096 Jan 24 12:51 korma
22:09:17 <Lumpio-> oo.
22:09:26 <Lumpio-> `run ls
22:09:27 <HackEgo> bin \ canary \ dbg.out \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ korma \ lib \ paste \ quines \ quotes \ quotese \ run~ \ share \ test \ wisdom \ zalgo.hs
22:10:33 <zzo38> Maybe some Canadians in here (coppro?) might know if the Canadian law includes the calculation for Easter?
22:12:23 <zzo38> Easter and Good Friday are already statutory holidays but if they are without having a calculation as the part of the Canadian laws, then we don't have separation of church and state, and I think separation of church and state is a good idea.
22:14:00 <oerjan> `file korma
22:14:01 <HackEgo> korma: directory
22:14:13 <oerjan> `ls korma
22:14:14 <HackEgo> No output.
22:14:20 <oerjan> oh right
22:14:24 <quintopia> so you think that saying "easter is whenever the church calendar says it is" is showing a preference to that religion?
22:14:59 <zzo38> quintopia: Yes. Including a calculation in the Canadian law, which happens to result in the same days all the time, though, is better I think.
22:15:08 <quintopia> do you think that including in the same law "ramadan is whenever the church calendar says it is" makes the government partial to two relgions?
22:15:33 <Bike> wouldn't the core problem be having a religious holiday be government-recognized at all
22:15:45 <oerjan> the church calendar says nothing about ramadan hth
22:15:53 <kmc> quintopia: it only matters if ramadan (or some holiday calculated from it like eid) is a civil holiday too
22:15:56 <quintopia> oerjan: yeah i know, it was an example
22:15:58 <kmc> which easter is
22:16:10 <quintopia> kmc: hypothetical
22:16:14 <zzo38> Although it may be a religious holiday, it is in this case, a statutory holiday rather than a religious one, even if it happens to be on the same date.
22:16:28 <zzo38> (And being on the same date I think is not a bad idea, though)
22:16:41 <kmc> since different churches do not agree on when easter is, if canadian law does not specify the calculation, it might have to say which church is right
22:16:48 <quintopia> and theres no issue with having a secular holiday on the same date as a religious one
22:16:57 <quintopia> for instance, christmas is already this way
22:17:03 <Bike> like how lee-jackson day just happened to be on the same day as the federally recognized martin luther king day
22:17:16 <zzo38> It uses the Roman church rather than the Orthodox one I think
22:17:19 <kmc> Bike: yeah wtf
22:17:29 <elliott> Bike: wow
22:17:30 <zzo38> quintopia: Yes, but Christmas is always on December 25 so that is easier!
22:17:33 * Bike is still pissed at Virginia, can you tell
22:17:34 <kmc> quintopia: yes but christmas is just specified in law as Dec 25, isn't it?
22:17:35 <quintopia> kmc: well, i dont think it should be a problem, since easter is on sunday, which is already not a work day
22:17:35 <elliott> In 1983, the holiday was merged with the new federal holiday Martin Luther King, Jr. Day as Lee-Jackson-King Day in Virginia. This merge was reverted in 2000.
22:17:50 <kmc> the problem is delegating to the church the decision over when exactly the civil holiday is
22:17:57 <tromp> :t ident
22:17:58 <lambdabot> Not in scope: `ident'
22:18:00 <zzo38> kmc: Yes, that is precisel
22:18:05 <zzo38> kmc: Yes, that is precisely what I meant.
22:18:32 <Bike> elliott: i know about this because the colbert report mentioned the republicans in the virginia legislature gerrymandering on mlk day, and then going to recess "to honor Jackson" or suchlike
22:18:36 <tromp> :t Text.ParserCombinators.Parsec.Language.ident
22:18:38 <lambdabot> Not in scope: `Text.ParserCombinators.Parsec.Language.ident'
22:18:42 <kmc> quintopia: in Canada the Friday before (Western) Easter is a civil holiday
22:18:53 <quintopia> kmc: but what if the law says simply "the civil holiday will fall on the day given by the calculation that church x used in the year this was passed into law"
22:18:58 <quintopia> then the church isnt deciding
22:19:09 <quintopia> and the rule for picking the day isnt explicitly in the law
22:19:09 <kmc> quintopia: then that would be an affirmative answer to zzo38's original question
22:19:13 <oerjan> @hoogle ident
22:19:14 <lambdabot> Text.Read.Lex Ident :: String -> Lexeme
22:19:14 <lambdabot> Text.Read Ident :: String -> Lexeme
22:19:14 <lambdabot> Control.Monad.Identity module Control.Monad.Identity
22:19:19 <kmc> of whether the Canadian law includes the calculation for Easter
22:19:23 <kmc> it can include by reference
22:19:25 <oerjan> tromp: what's that supposed to do?
22:19:31 <zzo38> Because it is the days it is, I think it should remain that way (chainging it would mess up things), but I also think that the law should copy the calculation used to determine when the day is, or use an equivalent one, rather than delegating it to the church, even if the past reference.
22:19:46 <tromp> oops; i meant identifier :(
22:19:49 <tromp> :t identifier
22:19:51 <lambdabot> Not in scope: `identifier'
22:20:00 <Bike> i believe in you tromp
22:20:11 <coppro> zzo38: it is simply defined as "Easter Monday"
22:20:31 <oerjan> @hoogle identifier
22:20:32 <lambdabot> Text.Parsec.Token identifier :: GenTokenParser s u m -> ParsecT s u m String
22:20:32 <lambdabot> Text.ParserCombinators.Parsec.Token identifier :: GenTokenParser s u m -> ParsecT s u m String
22:20:32 <lambdabot> Text.Html identifier :: String -> HtmlAttr
22:20:49 <oerjan> i don't think lambdabot imports Parsec stuff
22:21:15 <Bike> unrelatedly, aaronson thinks quantum computers will mostly be used for simulating quantum physics. huh
22:21:20 <kmc> this reminds me of a court case where the US Supreme Court decided that it was unlawful for the City of Cambridge to give churches the right to veto liquor licenses in their area, even though the City would be allowed to veto such licenses unconditionally
22:21:55 <kmc> presumably the City can solicit non-binding advice from neighbors too, but I don't know exactly where the line is drawn
22:21:58 <elliott> Bike: does that really count as a simulation :P
22:21:59 <kmc> Bike: huh
22:22:03 <kmc> elliott: yes
22:22:04 <kmc> hth
22:22:09 <elliott> metacircular evaluator for quantum physics
22:22:36 <Bike> if i simulate moniac on moniac does it really count as simulation, or just sloshing a bunch of water around masturbatorially?
22:22:41 <kmc> i could use a computer made of relays to simulate a ball rolling down a hill
22:22:47 <kmc> classical mechanics simulating classical mechanics
22:22:50 <kmc> still a simulation
22:23:10 <Bike> oh he has a picture from Spy vs Spy on his slides
22:23:11 <elliott> yes but when it gets to using the ~quantum essence~ to simulate the ~quantum parts~ then that seems sort of close to just using eval
22:23:14 <elliott> disclaimer
22:23:15 <elliott> I know nothing
22:23:16 <kmc> a quantum computer might use states of trapped ions or whatever to simulate some totally unrelated quantum system
22:23:17 <Bike> good representation of the crypto community imo
22:23:32 <kmc> i.e. anything
22:23:54 <elliott> but can we use one to make http://qntm.org/responsibility come true
22:23:54 <zzo38> coppro: And that is what I am opposed to; I would like to propose a law which includes the calculation for Easter, to avoid this. Simply defining it as "Easter Monday" without saying what that means, is also ambiguous, too, anyways. (There are more than one way to calculate Easter which results in the same thing, so you don't necessarily have to use the same one the Church does, to arrive at the same result)
22:24:03 <Bike> elliott: well, simulating quantum physics means you need a shitload of complex reals. that's just way easier with qubits than with bits (or "Bits Classic(TM)")
22:24:12 -!- sirdancealot has quit (Ping timeout: 245 seconds).
22:24:12 <kmc> there are some strange holidays in japan
22:24:26 <FreeFull> Abandon easter altogether
22:24:36 <Bike> elliott: i think we'd need a CTC for that
22:24:54 <Bike> actually no, that only just makes NP-complete problems easy, not turing-complete ones
22:24:56 <Phantom_Hoover> that computer is logically inconsistent, isn't it
22:25:04 <FreeFull> Just have a holiday on the first monday of april or something
22:25:21 <Bike> Phantom_Hoover: logical trivialism is the future bro
22:25:22 <zzo38> FreeFull: I do not think we should change the holidays like that.
22:25:28 <kmc> nobody has proven that you can use qunatum computers to solve NP-complete problems in polynomial time
22:25:31 <kmc> !!
22:25:38 <Bike> kmc: with a CTC, I mean, not just quantum
22:25:39 <zzo38> (Still, if I did want to change the holidays, I would rather change them to the solstices and equinoxes)
22:25:42 <kmc> oh
22:25:46 <kmc> i don't know about those
22:25:52 <Bike> also hasn't the converse of that been proven
22:25:57 <elliott> Phantom_Hoover: that doesn't matter
22:26:03 <elliott> what matters is getting people in #esoteric to read more sam hughes
22:26:08 <Fiora> converse?
22:26:10 <Bike> yeah, that's a good thing to matter.
22:26:12 <elliott> kmc: speaking of which did you read fine structure
22:26:17 -!- impomatic has joined.
22:26:18 <kmc> what's the converse of an equality
22:26:20 <kmc> elliott: no
22:26:25 <Bike> Fiora: errrrr the negation? that quantum computers can't solve NP-complete problems in P-time
22:26:25 <FreeFull> Inequality?
22:26:29 <Phantom_Hoover> i got someone to read fine structure a while back
22:26:31 <FreeFull> coequality?
22:26:35 <Phantom_Hoover> pay up, sam
22:26:39 <Bike> i'm shit at logic man :(
22:26:41 <Fiora> I don't think that's true
22:26:45 <Fiora> that would imply P != NP
22:26:52 <kmc> it would?
22:26:58 <Fiora> BQP is a superset of P
22:27:02 <Bike> oh, well then.
22:27:05 <kmc> ah right
22:27:11 <oerjan> Fiora: it is not proved, but it is believed to be true
22:27:13 <Fiora> saying "quantum computers can't solve NP-complete problems in P time" is saying BQP != NP
22:27:18 <Fiora> yeah, sorry, that's what I meant
22:27:19 <FreeFull> Quantum computers might be able to solve NP-complete problems in P-time, but just as much as classical computers?
22:27:24 <Bike> anyway i am watching this: http://videolectures.net/nips2012_aaronson_quantum_information/
22:27:26 <Fiora> I'm not sure if that's true either?
22:27:34 <kmc> FreeFull: sure, if P = NP then that's the case
22:27:35 <Fiora> I'm not sure if it's possible for BQP = NP but P != BQP
22:27:35 <Bike> it's not really about complexity
22:27:38 <elliott> kmc: imo you suck
22:27:41 <kmc> imo no
22:27:45 <FreeFull> kmc: the key word is might
22:27:50 <Bike> just aaronson explaining quantum computing to machine learning nerds and by extension me
22:28:32 <Bike> "A QC has factored 21 into 3×7, with high probability"
22:28:35 <oerjan> Fiora: i think it might also be possible for P = NP but P != BQP
22:28:42 <elliott> kmc: imo yes
22:28:47 <oerjan> iirc
22:29:03 <Fiora> wait, how oculd that be? I thought BQP >= P
22:29:14 <Fiora> http://en.wikipedia.org/wiki/File:BQP_complexity_class_diagram.svg
22:29:17 <Bike> BQP is a superset of P but not necessarily a proper superest?
22:29:19 <Bike> superset*
22:29:19 <oerjan> yes, but not necessarily BQP <= NP
22:29:24 <Fiora> Yeah
22:29:32 <Fiora> but if P = NP, then that means BQP >= NP
22:29:43 <Fiora> since BQP cnotains P..
22:29:45 <Fiora> right?
22:29:48 <oerjan> all of these fit between P and PSPACE, which are not known to be unequal
22:29:50 <Bike> i feel like a small animal dies every time you notate set relations like that
22:29:58 <Fiora> gah, my keyboard doen't have set icons on it okay :<
22:30:05 <Bike> me neither i'm just a jerk
22:30:11 <Phantom_Hoover> at least use <=/=>
22:30:17 <Phantom_Hoover> wait
22:30:18 <Bike> no that sucks
22:30:19 <Phantom_Hoover> that's stupid
22:30:44 <Fiora> I guess I'm using >= as superset, == as equivalent, <= as subset
22:30:51 -!- comex has quit (Remote host closed the connection).
22:30:55 <Bike> aaronson also says the "prevailing belief" is that NP is not a subset of BQP, so
22:31:02 <elliott> things I like: <= on booleans is implication
22:31:04 <elliott> sometimes notated =>
22:31:09 <Bike> i hate you elliott
22:31:14 <elliott> Bike: :)
22:31:21 <Bike> hate
22:31:27 <Bike> what's wrong with "->" :(
22:31:29 <elliott> > (<=) <$> [False, True] <*> [False, True]
22:31:30 <Fiora> Bike: yeah, I figure that too
22:31:31 <lambdabot> [True,True,False,True]
22:31:39 <Phantom_Hoover> sometimes you have to notate limits
22:31:42 <Phantom_Hoover> and functions
22:32:04 <elliott> Bike: imo the solution is to use -> as a comparison operator for all data
22:32:06 <Bike> what the heck are you doing that you need to notate function types, limits, and prop logic at the same time
22:32:07 <elliott> meaning <=
22:32:11 <Bike> and can i get in on it
22:32:27 <Bike> wait, this is that homomorphic type theory mumbojumbo, innit
22:32:36 <Bike> errrr homotopy.
22:32:53 <elliott> what is
22:33:03 <Bike> the nonsense i just said
22:33:17 -!- derk_ has joined.
22:33:32 <Bike> oh he mentions grover's algorithm again. that shit is so crazy. craaaaazy
22:33:34 <zzo38> You can also use /= for logical XOR in Haskell.
22:33:35 <elliott> i wish i knew what homotopy type theory was all about
22:33:53 <oerjan> Bike: something involving curry-howard and CPO denotational semantics, i bet
22:34:00 <Bike> horrifying
22:34:30 <elliott> oerjan: do you know
22:34:49 <Phantom_Hoover> whatever it is i assume it's totally divorced from what homotopy originally meant
22:35:03 <Bike> nah they're all about that homotopy shit
22:35:05 <Bike> all up in it
22:36:19 <Bike> "On some fitness landscapes, the adiabatic algorithm can reach a global minimum exponentially faster than classical simulated annealing. But on other landscapes, it does the same or even worse." :(
22:36:48 -!- comex has joined.
22:37:14 <elliott> Phantom_Hoover: In mathematical logic and computer science, homotopy type theory (HoTT) attempts to give an account of the semantics of intensional type theory using the framework of (abstract) homotopy theory, in particular Quillen model categories and weak factorization systems. Conversely, intensional type theory forms a logic (internal language) for homotopy theory.
22:37:26 <elliott> Phantom_Hoover: Homotopy Type Theory refers to a new interpretation of Martin-Löf’s system of intensional, constructive type theory into abstract homotopy theory. Propositional equality is interpreted as homotopy and type isomorphism as homotopy equivalence. Logical constructions in type theory then correspond to homotopy-invariant constructions on spaces, while theorems and even proofs in the logical system inherit a homotopical meaning. As th
22:37:34 <Bike> thanks
22:40:18 <elliott> Phantom_Hoover: seriously if you figure out what it means
22:40:19 <elliott> let me know
22:40:54 <Phantom_Hoover> well uh
22:41:25 <Phantom_Hoover> suffice to say that categories are probably involved
22:41:47 <Bike> -_-
22:42:12 <elliott> yes my paste mentioned category theory in the bit that got cut off in fact
22:42:43 <Phantom_Hoover> wasn't homotopy the original motivation for category theory
22:43:15 <Phantom_Hoover> oh
22:43:19 <Phantom_Hoover> that was homology
22:43:50 <Phantom_Hoover> wait is it homology or homotopy that's relatively easy to understand
22:44:18 <Bike> no
22:44:46 <elliott> what's that branch of mathematics that's named after some tropical location
22:44:49 <elliott> for no good reason
22:44:59 <elliott> or something
22:45:22 <Bike> this presentation has sadly little to do with neuroscience :(
22:45:58 <Bike> also he's talking about quantum DRM
22:46:06 <Bike> "don't worry, it's not going to be practical for a long time"
22:46:21 <elliott> Bike: what am i thinking of
22:46:22 <elliott> oerjan: you too
22:46:39 <Bike> elliott we all know you have a bad track record with small islands
22:47:22 <Bike> oh there he's talking about biology. forty goddamn minutes in
22:48:00 <elliott> Bike: you mean the best track record
22:48:14 <oerjan> <elliott> oerjan: do you know <-- would i bet if i knew
22:50:36 <Bike> when i google "mathematics tropic island" i get a bunch of "adventure time" stuff.
22:53:44 <oerjan> i think homotopy is relatively easy to get the basic definitions, but iiuc it gets even worse than homology when you want to prove things. although homology is also homotopy-invariant.
22:54:25 <elliott> Bike: maybe it wasn't named after an island
22:54:35 <Bike> "my friends in the singularity movement" NOOOOO
22:55:10 <Sgeo> It's impossible to have a mystery when you don't know what sort of technology can exist
22:55:18 <Sgeo> *mystery story
22:55:20 <kmc> THAT'S THE MYSTERY
22:55:36 <Sgeo> There's no way for people to guess what sort of unintroduced technology could be behind it
22:56:05 <Bike> elliott: well given how mathematics has mostly been white europeans for the last few centuries i'm not sure why they'd name something after a large nation and not just their vacation spot, i guess :/
22:56:35 <elliott> Bike: i think it might have literally been named after the beach whoever it was came up with it on or something
22:56:36 <Phantom_Hoover> `quote singularitarians
22:56:37 <HackEgo> 690) <Phantom_Hoover> I had a dream last night where I got hit by a van but the van had a brain uploader in it and I was uploaded and I angsted because I was stuck spending eternity with singularitarians?
22:56:39 <elliott> argh this is going to drive me crazy
22:56:46 <Bike> elliott: that's pretty great
22:56:59 <Bike> Phantom_Hoover: thanks, my nightmares weren't bad enough
22:57:29 <elliott> ok does wikipedia have a list of fields of mathematics
22:57:33 <elliott> i can do this
22:57:45 <Phantom_Hoover> It was honestly worse than the dream where there was a nuclear war when we were driving to ireland so we drove to some dreary fallout shelter.
22:57:50 <elliott> dammit
22:57:51 <Bike> http://en.wikipedia.org/wiki/Lists_of_mathematics_topics
22:57:52 <elliott> there are too many
22:58:06 <Bike> "shut the fuck up mathematicians, i'm trying to find your goddamn beach!"
22:58:06 <Phantom_Hoover> And then I looked up the world map on Wikipedia and all the continents were cut up
22:58:12 <elliott> Mathematics can, broadly speaking, be subdivided into the study of quantity, structure, space, and change (i.e. arithmetic, algebra, geometry, and analysis).
22:58:17 <elliott> s/ $//
22:58:21 <Bike> that's pretty fuckin broad
22:58:22 <elliott> this seems a bit... woefully incomplete
22:58:27 <elliott> well
22:58:37 <Bike> i guess CS would go under arithmetic
22:58:38 <elliott> the non-parenthesised list is hopelessly vague
22:58:41 <elliott> the parenthesised one seems hopelessly limited
22:58:49 <elliott> like where do foundations even go in there
22:58:56 <Bike> algebra probably?
22:59:00 <elliott> I guess you can argue for mathematics only being a subset of logic
22:59:07 <Bike> sure, if you're a jerk
22:59:39 <Phantom_Hoover> And don't get what the focus of study is.
22:59:47 <elliott> Bike: well I like doing that because it lets you slot CS in!!
23:00:03 <Bike> is CS even really part of logic in any meaningful sense
23:00:11 <elliott> i mean in "the hierarchy"
23:00:16 <elliott> except it's kind of all over the place so it doesn't work
23:00:19 <Bike> i already hate this idea
23:00:32 <elliott> the wikipedia article for mathematics does not contain the string "type theory". clearly injustice
23:00:38 <elliott> Mathematics (from Greek μάθημα máthēma, "knowledge, study, learning") is the abstract study of topics encompassing quantity,[2] structure,[3] space,[2] change,[4][5] and other properties;[6] it has no generally accepted definition.[7][8]
23:00:39 <Bike> fight the mathiarchy
23:00:46 <Phantom_Hoover> There was a fairly convincing article I read a while ago arguing that the thing that mathematicians actually do is basically a science.
23:00:47 <elliott> "what is mathematics?" "well nobody knows"
23:00:52 <Bike> what are birds
23:01:05 <Bike> Phantom_Hoover: is "science" very well defined.........
23:01:08 <Phantom_Hoover> deep-cover dinosaurs
23:01:12 <elliott> wikipedia is surer of what art is than mathematics
23:01:15 <elliott> impressive
23:01:18 <Bike> is anything well-defined??
23:01:45 <elliott> http://upload.wikimedia.org/wikipedia/commons/3/34/Art-portrait-collage_2.jpg pictured: art
23:02:06 <Bike> that's about as broad as you could hope for, really
23:02:13 <Phantom_Hoover> Bike, is well-defined well-defined.
23:02:33 <Bike> maybe throw in something abstract, like that thing at the nearby museum that's literally a featureless black cube made of fiberglass and foam.
23:03:13 <elliott> the dog in the bottom-left looks totes miserable
23:03:15 <elliott> (i know it's not a dog)
23:03:16 <Bike> one of the questions is "do you think you'd need real random numbers and not just a PRNG to make an AI". X_X
23:03:21 <Phantom_Hoover> not really relevant but ianucci: http://www.youtube.com/watch?v=InD_IGwkXiE
23:03:30 <Bike> Phantom_Hoover: you're blowing my mind here, man.
23:03:58 <Bike> this guy is a machine learning specialist. why are you saying this. you are better than this.
23:04:16 <Bike> ok the answer involves futurama
23:04:18 <Phantom_Hoover> is he?
23:04:19 <Bike> lecture redeemed
23:04:31 <Phantom_Hoover> i thought he was just the writer of i'm alan partridge and the thick of it
23:05:35 <kmc> don't forget Time Trumpet
23:06:02 <kmc> and Veep (which is a bit like a US remake of TToI)
23:06:27 <Phantom_Hoover> amusingly i have never seen ttoi or alan partridge
23:06:35 <kmc> well
23:06:38 <kmc> you should see TToI
23:07:01 <Phantom_Hoover> i said i liked ianucci to a guy i know and he was like "wait you haven't seen the thick of it? but you're scottish!"
23:07:51 <elliott> stt.hs:81:12:
23:07:51 <elliott> Ambiguous occurrence `liftF'
23:07:51 <elliott> It could refer to either `Control.Monad.Free.liftF',
23:07:51 <elliott> imported from `Control.Monad.Free' at stt.hs:20:1-25
23:07:54 <elliott> or `Control.Monad.Trans.Free.liftF',
23:07:56 <elliott> imported from `Control.Monad.Trans.Free' at stt.hs:21:1-31
23:07:59 <elliott> uuuugh
23:08:09 <kmc> Control.Monad.Trans.Fat.Free
23:10:15 <oerjan> @remember kmc Control.Monad.Trans.Fat.Free
23:10:19 <oerjan> @remember kmc Control.Monad.Trans.Fat.Free
23:10:20 <lambdabot> Good to know.
23:12:29 <olsner> @quote Control.Monad
23:12:29 <lambdabot> EvilTerran says: if three of those lines aren't import Control.Monad; import Control.Arrow; import Control.Applicative;, you can make it shorter ;]
23:12:57 <elliott> phooeyT
23:12:57 <elliott> :: Monad m =>
23:12:57 <elliott> (((f (FreeT f m c) -> m c) -> FreeT f m c -> m c)
23:12:57 <elliott> -> f (FreeT f m c) -> m c)
23:12:57 <elliott> -> FreeT f m c -> m c
23:13:00 <elliott> kmc: help
23:13:52 -!- epicmonkey has joined.
23:22:37 -!- augur has joined.
23:26:00 -!- asiekierka has quit (Excess Flood).
23:27:58 -!- asiekierka has joined.
23:42:15 <Sgeo> Am I likely to get confused if I alternate between two animes every episode?
23:42:22 <Sgeo> So one episode of Naruto one of GitS etc?
23:42:55 <elliott> yes its due to the fundamental propertys of anime
23:43:29 <Bike> yeah you'll run into decoherence issues
23:44:24 <Phantom_Hoover> watching more than 1 episodic tv series simultaneously? madness, i say
23:45:07 <elliott> Phantom_Hoover: no its just anime
23:45:48 <Phantom_Hoover> but animes are mad
23:46:15 <Phantom_Hoover> it's all tentacles and children, i hear
23:47:15 <Bike> hey sometimes people explode into blood and/or robots
23:50:59 <Phantom_Hoover> robots made of blood?
23:52:18 <Bike> no, people made of robots.
23:53:33 <Phantom_Hoover> and blood?
23:53:37 <Bike> yes.
23:54:37 <oerjan> tentacled children, check
23:55:11 <oerjan> *tentacled robot children exploding, check
23:56:52 -!- augur has quit (Read error: Connection reset by peer).
23:57:21 <oerjan> actually, tentacled robots exploding children. we're maximizing squick here.
23:57:39 <Bike> dude i loved evangelion!!
23:58:13 -!- augur has joined.
23:58:25 <oerjan> i just accurately described that, didn't i.
23:58:54 <Phantom_Hoover> maybe i should watch some of this anime thing sometime
23:59:02 <Phantom_Hoover> sadly that would be giving ground to elliott
23:59:43 <oerjan> the SNP would kill you
23:59:51 <elliott> the english invention of "anime"
2013-01-26
00:01:16 <shachaf> kmc: What were you doing with it?
00:02:42 <shachaf> monoids monoids monoids
00:02:46 <shachaf> so easy i can hardly stand it
00:02:48 <Phantom_Hoover> elliott, look i'm not going to let you off with not watching farscape
00:03:09 <elliott> farscape is on my list man
00:03:13 <elliott> also I've seen like 3 epsiodes
00:03:16 <elliott> don't shoot me
00:03:19 <elliott> I am a fearful english pansy
00:04:23 <Phantom_Hoover> 3 episodes?? the second 2 are so naff!
00:04:37 <elliott> I think they were like half way through
00:04:41 <Sgeo> and that's a fact and that's a fact and that's a fact and that's a fact
00:04:42 <elliott> or the last ones or something
00:05:03 <Phantom_Hoover> oh my god you can't just watch halfway through!
00:05:13 <Sgeo> and that's a fact
00:05:35 <elliott> Sgeo: hi
00:05:39 <elliott> Phantom_Hoover: it was on tv ok
00:05:42 <elliott> Phantom_Hoover: I had nothing better to watch
00:05:58 <Phantom_Hoover> well duh
00:06:06 <Sgeo> elliott, hi. And that's a fact.
00:06:40 <Sgeo> Ghost in the Shell is getting to me
00:06:50 <Phantom_Hoover> clearly
00:06:58 <Phantom_Hoover> it must be one of those langford things
00:06:59 <Fiora> hee hee. glad you're enjoying it ^^
00:08:01 <Sgeo> 3 separate characters have said "and that's a fact" in maybe 5 (or fewer) narrative minutes.
00:08:17 <Bike> wait, are you watching GitS or Brass Eye
00:08:26 <Sgeo> Ghost in the Shell
00:08:53 <Bike> hm. there should be a brass eye special set in wherever gits was.
00:08:59 <shachaf> `?hh shachaf
00:09:04 <HackEgo> shahchahf sprø sohm sehllehri ahnd cohsplayhs Nehpehta Leihjohn ohn weehkehnds.
00:09:17 <shachaf> Could I pet a lion on weekends instead?
00:09:18 <Bike> nehpehta
00:09:26 <kmc> shachaf: with what
00:09:35 <Bike> with his cosplay'd paw
00:09:48 <shachaf> Paw?
00:09:57 <shachaf> I thought all those people didn't have hands or any hand-alikes.
00:10:33 <oerjan> hands are _so_ last evolutionary stage
00:10:35 <Bike> her name's Leijon, she's probably a lion.
00:12:52 <Phantom_Hoover> are we talking about the spidermouthed one?
00:14:38 -!- epicmonkey has quit (Ping timeout: 255 seconds).
00:16:37 * Sgeo shoosh paps Phantom_Hoover
00:16:57 <Phantom_Hoover> get off me you weirdo
00:17:34 <Fiora> :33 < *ac pounces on sgeo*
00:22:07 <shachaf> Fiora: Hey now!
00:22:25 <shachaf> Get your own personoid thing.
00:23:04 <Bike> Shachaf is the Nepeta here, Fiora. You'll have to be Eridan.
00:23:14 <Bike> no, wait, gamzee's your symbol, right
00:23:31 <Fiora> :33 < *ac is pawsitively upset that someone has tailken her identity*
00:24:01 <oerjan> bloody furriners
00:24:11 <Fiora> :33 < i will not be eridan!! he is supurr cr33py and makes me uncomfurtable to be near him!
00:24:33 <Bike> I'm sorry, but rules are rules.
00:25:38 <Fiora> :33 < could you help meowt here and change them?
00:26:04 <Bike> `qdbformat
00:26:05 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: qdbformat: not found
00:26:10 <Bike> `? qdbformat
00:26:11 <HackEgo> qdbformat is: <nick> message; * nick action; two spaces between messages; all elisions marked with [...] other than irrelevant intervening messages; for messages separated by elision, one space on each side, not two
00:26:38 <oerjan> `cat bin/?
00:26:40 <HackEgo> ​#!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z | sed "s/ *$//") \ topic1=$(echo "$topic" | sed "s/s$//") \ if [ \( "$topic" = "ngevd" \) -a \( -e wisdom/ngevd \) ]; \ then cat /dev/urandom; exit 0; \ elif [ -e "wisdom/$topic" ]; \ then cat "wisdom/$topic"; \ elif [ -e "wisdom/$topic1" ]; \ then cat "wisdom/$topic1"; \ else ec
00:27:48 <Bike> `? ngevd
00:27:50 <HackEgo> ​^՟`)l~uN>6K'a6ED W<2]1y8/!'U@ܓgǚ_4W݈>؏)jg"uw%x7Ft`.-80hG0Ź3ۚ/SU!X \ Ihn3H5nP:Yb,nMgC3Zugs-Dϔh..#@ݦ.U񃉊tէbVO+bT<&e?FPhK<rѽ>˄*KڶBW6IT*ӫ"-Ќ~co)~
00:27:56 <Bike> pretty colors
00:27:58 <shachaf> `?hh ngevd
00:27:59 <HackEgo> ​1;|?:O4CzA \ {69oW[W4v6)Ϝx.b6<J 7&R.㚫[~%7҉DCv:xb`P}'1PLsԿNzF2AtqnWPw:0.$﹁ٵSԀ▶.Z@)Ԩ$r;O{NT[P!2/1.l~KmVI~dl4yGZ
00:28:13 <shachaf> imo a bihg improhvehmehnt
00:29:16 <shachaf> Fiora: What person-thing does *that* typing quirk make me?
00:31:38 <oerjan> `run sed -i 's/ exit 0;//' bin/'?'
00:31:49 <HackEgo> No output.
00:31:56 <oerjan> `cat bin/?
00:31:57 <HackEgo> ​#!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z | sed "s/ *$//") \ topic1=$(echo "$topic" | sed "s/s$//") \ if [ \( "$topic" = "ngevd" \) -a \( -e wisdom/ngevd \) ]; \ then cat /dev/urandom; \ elif [ -e "wisdom/$topic" ]; \ then cat "wisdom/$topic"; \ elif [ -e "wisdom/$topic1" ]; \ then cat "wisdom/$topic1"; \ else echo "$1?
00:32:09 <oerjan> `? ngevd
00:32:10 <HackEgo> upU%V.MU65HY)JV9-F#E].aF.M4(..|9
00:32:26 <Fiora> shachaf: ? @_@
00:32:51 <Bike> Fiora: as in, what troll talks with all the h's.
00:33:03 <shachaf> thahnk you Bihke
00:33:12 <Bike> nhp
00:33:23 <shachaf> `?hh Bike
00:33:25 <Fiora> Hs? I just see a bunch of random noise
00:33:26 <HackEgo> Bihke ihs frohm Luhxehmbouhrg.
00:33:29 <shachaf> `?hh Fiora
00:33:31 <HackEgo> Fiohra ihs frohm sohme ihslahnd sohmewhehre. She juhst doehsn't wahnt to be bohthehrehd, ahs she wohrks ouht hehr dohmihnahtiohn plahn ahs ihmmohrtahl queehn ohf the drahgohns.
00:33:34 <shachaf> `wehlcohme Fiora
00:33:34 <Fiora> oh...
00:33:36 <HackEgo> Fiohra: Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
00:33:44 <Bike> ihmmohrtahl
00:36:41 <Jafet> FUHS RHOH-DHAH
00:37:34 <shachaf> `?hh Jafet
00:37:36 <HackEgo> Jahfeht? ¯\(°_o)/¯
00:37:43 <shachaf> `? jafet
00:37:45 <shachaf> What's going on?
00:37:46 <HackEgo> jafet? ¯\(°_o)/¯
00:38:30 <Jafet> `? funpuns
00:38:31 <HackEgo> funpuns? ¯\(°_o)/¯
00:49:32 -!- carado has quit (Ping timeout: 246 seconds).
00:52:16 <Sgeo> Gah GHCi 6.12.1
00:52:18 <Sgeo> :(
00:55:51 <oerjan> gwat?
00:57:12 <Jafet> Glahsghow Hashkehl
00:58:22 <oerjan> ohkay
01:01:40 <zzo38> I read about the SQLite file format of columns, and of ALTER TABLE ... ADD COLUMN ... command which can add a column but with various restrictions, and not affecting the data already in the table, but if you add a row where the rightmost columns will have the constant default values will it omit them?
01:42:05 -!- Ahhrc_Koehhn has quit (Quit: Ahhrc_Koehhn).
01:50:45 -!- augur has quit (Remote host closed the connection).
01:51:20 -!- augur has joined.
01:52:51 -!- derk_ has left.
01:55:35 -!- augur has quit (Ping timeout: 256 seconds).
01:56:31 <zzo38> How can you even run PRAGMA commands in SQLite before the database is created?
01:58:23 -!- augur has joined.
02:00:12 -!- augur has quit (Remote host closed the connection).
02:00:25 -!- Frooxius has joined.
02:00:32 <Sgeo> Is the Facebook Hacker's Cup thing likely to look good on resumes even if I don't get first place?
02:00:46 -!- augur has joined.
02:00:55 -!- augur has quit (Read error: Connection reset by peer).
02:09:03 <kmc> i would put it on, if you reached any level above "also ran"
02:09:21 <kmc> i mean I don't know if there are rounds or divisions or whatever but placing at any level sounds pretty good
02:09:44 <Bike> There are sponges that eat crustaceans.
02:09:51 <kmc> however you shouldn't include it if it's taking up space that could be used to list more relevant or impressive stuff
02:10:01 <kmc> remember, the resume is an advertisement about you, designed to get you a phone call
02:10:33 <kmc> it doesn't need to be comprehensive
02:11:27 <kmc> i would say that any significant work or software project experience beats coding competitions
02:11:43 <kmc> the code you write for competitions is usually not good code, maintainable code, readable code
02:11:52 <kmc> and it's not the same kind of code an employer wants you to write
02:13:26 <kmc> also in my current view of programming and hacker culture, i have a pretty negative view of coding competitions
02:13:32 <kmc> but i've done them in the past and enjoyed them so *shrug*
02:14:33 <kmc> lately i've been enjoying a lot of games where there are levels and you try to beat the next level but you're not directly playing against other people
02:14:37 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
02:15:22 -!- Phantom_Hoover has joined.
02:19:33 <Jafet> These competitions look interesting: http://azspcs.net/
02:20:29 -!- Phantom_Hoover has quit (Remote host closed the connection).
02:20:29 <kmc> i do love the IOCCC though and I do want to run my own devious code contest
02:20:38 <kmc> i'm not sure how to square that with my other statement
02:22:03 <Jafet> (The current competition is, apparently, an open problem.)
02:22:04 <Fiora> what about the underhanded thing?
02:22:09 <kmc> what about it
02:22:27 <Fiora> in terms of devious code contests I guess
02:22:37 <kmc> you mean http://underhanded.xcott.com/ ?
02:22:43 <kmc> it's neat
02:22:48 <kmc> it's dead for 3 years :/
02:22:54 <kmc> also what I want to run would be a lot more open ended
02:23:22 <kmc> rather than a specific task I would just be interested to see code (in any language) that appears to straightforwardly do one thing but actually does a different devious thing
02:23:26 <kmc> there are a few IOCCC entries like that too
02:23:59 <Fiora> that sounds fun
02:24:35 <Jafet> The underhanded C contest probably hit a bit too close to home.
02:25:21 <kmc> while C may be the king of unintended security holes, I think every language has its own unique & interesting ways to hide behavior
02:26:12 <shachaf> Writing underhanded code contest entries is a lot like making CTF levels, I suppose.
02:26:15 <Jafet> Opening the contest to multiple languages and genres will make judging hard
02:26:30 <kmc> yes
02:27:53 <kmc> shachaf: some CTF levels anyway
02:28:11 <kmc> i'm not that interested in an 'underhanded' program which is just, like, a HTTP server with a buffer overflow
02:28:16 <kmc> i can already find plenty of those
02:28:36 <shachaf> Sure.
02:28:54 <shachaf> I'm thinking of the more specialized ones.
02:30:09 <shachaf> Actually, not many CTF levels I've seen have been particularly "obviously correct".
02:30:14 <Fiora> I'm imagining, like, an image processing program that reads an image, but actually executes part of the image as code when reading it
02:30:21 <Fiora> by sneakily smashing its own stack or something
02:30:27 <shachaf> It's more that they've had obvious bugs but the trick was how to exploit those bugs.
02:30:40 <kmc> shachaf: yeah, it varies
02:31:17 <kmc> the one using negative chars to index an array was non-obvious, to me, but maybe this is a vuln class that most other people know about
02:32:44 <kmc> i also like code that looks safe but is actually dangerous due to compiler optimizations
02:33:46 <Jafet> Fiora: that's easy, just require the image processing program to read metafile
02:34:27 <Jafet> (A metafile image consists of a sequence of Windows GDI function calls.)
02:34:38 <kmc> haha brilliant
02:34:42 <elliott> wow, does it really
02:36:05 <Bike> "Essentially, a WMF file stores a list of function calls that have to be issued to the Windows Graphics Device Interface (GDI) layer to display an image on screen."
02:37:26 -!- oerjan has quit (Quit: leaving).
02:37:52 <shachaf> windows never meta file it didn't like
02:47:00 <shachaf> monoids monoids monoids monoids monoids
02:47:05 <shachaf> the easiest thing in the world
02:47:11 <zzo38> I wanted to use SQLite amalgamation but maybe it doesn't work; I want to use the following options: SQLITE_OMIT_AUTHORIZATION SQLITE_OMIT_BLOB_LITERAL SQLITE_OMIT_DEPRECATED SQLITE_OMIT_EXPLAIN SQLITE_OMIT_FLOATING_POINT SQLITE_OMIT_INTEGRITY_CHECK SQLITE_OMIT_TRACE SQLITE_OMIT_UTF16 SQLITE_OMIT_UNICODE
02:47:25 <zzo38> However, there is already the problem, since there is no SQLITE_OMIT_UNICODE.
02:47:28 <shachaf> SQLITE_OMIT_DATABASE
02:47:51 <shachaf> zzo38: You shouldn't omit Unicode.
02:48:53 <kmc> SQLITE_OMIT_FRAME_POINTER
02:49:44 <shachaf> `?hh sqlite
02:49:46 <HackEgo> sqlihte? ¯\(°_o)/¯
02:49:47 <shachaf> `?hh kmc
02:49:48 <HackEgo> kmc? ¯\(°_o)/¯
02:50:33 <shachaf> `learn kmc ran the Internation Devious Code Contest of 2013
02:50:36 <HackEgo> I knew that.
02:50:39 <shachaf> `learn kmc ran the International Devious Code Contest of 2013
02:50:40 <Fiora> http://noctis-aeterna.tumblr.com/post/41490130158/ heh, dailywtfish thing on my dash
02:50:43 <HackEgo> I knew that.
02:50:57 <zzo38> shachaf: But I want to omit Unicode because I am not using those functions and just want length to be the C strlen function instead, and so on.
02:51:08 <shachaf> zzo38: You should use Unicode.
02:51:56 <shachaf> Fiora: What's the "æterna" thing?
02:52:22 <Fiora> um, just a person I follow
02:52:33 <shachaf> I thought that was you.
02:52:54 <Fiora> fioraaeterna.tumblr.com/
02:53:05 <shachaf> Yes. The common theme is "æterna".
02:53:11 <Fiora> that is a total coincidence
02:53:15 <shachaf> Oh.
02:53:16 <Fiora> she is the only person I follow with that
02:53:21 <shachaf> (I can't resist turning "ae" into "æ".)
02:53:29 <Fiora> I'm too lazy to even try typing that >.>
02:53:34 <shachaf> It's just AltGr-z
02:53:54 <Fiora> altgr?
02:54:16 <elliott> its the angry version of the alt key
02:54:26 <shachaf> It's the German version, actually.
02:54:37 <elliott> germans are angry
02:54:45 <shachaf> Fiora: Set your keyboard layout to "altgr-intl" or something.
02:54:53 <shachaf> It's the future.
02:55:26 <Fiora> alt-z just makes a z
02:55:27 <Bike> You can type important words like "hellørjan" with ease!
02:55:27 <zzo38> But I don't want it with Unicode. I want it to treat it as C strings, without having to check every byte to see how to calculate length and so on.
02:55:45 <shachaf> Just use UCS-2.625
02:55:51 <Bike> Fiora: altgr is right alt in certain keyboard layouts, like us international (but apparently not yours)
02:56:03 <Fiora> right alt just does the same
02:56:18 <zzo38> What is UCS-2.625?
02:56:19 <shachaf> I heard that if your right alt key isn't AltGr, it makes you racist.
02:56:26 <Bike> yes, because you have a different keyboard layout
02:56:37 <Bike> default american layouts often don't have altgr.
02:56:37 <shachaf> zzo38: Storing 3 21-bit Unicode code points in one 64-bit word.
02:56:52 <Fiora> um, I don't know what my main layout is but the alternate one is a japanese IME
02:57:08 <shachaf> Are you using X11?
02:57:15 <Bike> It's probably just "US" or something on Windows.
02:57:15 <Fiora> ummmm I'm using windows
02:57:32 <Bike> You can switch pretty easily with the control panel, especially if you've done it before for japanese.
02:57:52 <shachaf> Oh.
02:58:00 <shachaf> I'm not sure Windows has the right layout by default?
02:58:11 <Bike> windows usually uses some boring american one, yeah.
02:58:17 <zzo38> shachaf: But I want to diable Unicode entirely. (So that, UTF-8 text could still be stored in the database, but the program ignores it, and those fields may be used by other programs though.)
02:58:21 <Bike> instead of the slightly less boring american one that is US-international.
02:58:48 <shachaf> zzo38: Just store things as binary blobs.
02:59:00 <shachaf> US-international with deadkeys is evil!!!!!!!!!!!!!
02:59:30 <zzo38> shachaf: Well yes, I could store them as blob formats but then it isn't used with SQL strings and null-terminated strings and so on.
03:00:59 <zzo38> Anyways, UTF-8 can be up to 36-bits (even though Unicode is only 21-bits), in case 21-bits is not enough.
03:02:32 <zzo38> Actually if 0xFF is also defined then maybe you can have more than 36-bits
03:04:10 <Lumpio-> But if you don't use Unicode, how can I use Chinese text?
03:06:15 <zzo38> This specific program I am making is not meant for Chinese text, as it wouldn't be useful in what I am making. (You can still store Chinese text in the database, though, if you want to use the same database with other programs.)
03:09:00 -!- WeThePeople has joined.
03:11:40 <zzo38> In some other programs I may make, you might want to use Chinese texts and so on, though. So, in a later version of TeXnicard I plan to add an option for UTF-8, but only decoding into 32-bit numbers (even beyond range of Unicode), ignoring everything else about Unicode and requiring the template file to have stuff to deal with the ones you are using.
03:24:19 <pikhq> でも、中国語のテキストがとても必要な事!
03:24:43 <pikhq> 是非大切さが最高!
03:25:04 <Lumpio-> それ日本語やんけw
03:25:29 <Lumpio-> zzo38: Why do you hate the Chinese? That's racist.
03:25:40 <Bike> "w"
03:25:43 <pikhq> うん。俺中国語分からん。
03:25:52 <pikhq> Bike: Japanese "lol".
03:25:52 <Lumpio-> 同じく。
03:25:59 <Bike> wwwwwwwwwwww
03:26:06 <Lumpio-> っるっせw
03:26:06 <pikhq> Precisely.
03:30:29 <zzo38> Lumpio-: I don't hate the Chinese.
03:30:40 <kmc> wu america
03:33:52 -!- Nisstyre-laptop has joined.
03:41:32 <Sgeo> Naruto treats copying an opponents moves exactly as a good thing. But in Go, there are ways to defeat an opponent who attempts that
03:42:17 <Lumpio-> You're reading naruto?
03:42:51 <Sgeo> Watching
03:42:56 <Lumpio-> oh
03:43:04 <Lumpio-> From the start?
03:43:53 <Sgeo> yes
03:44:48 <Lumpio-> I watched it when it came out, and man it was sslooooowww
03:45:40 <Lumpio-> It's like, "Episode 14: Clash on the Bridge!! Exciting Battle!!!" and the episode consists of characters surrounded by mist, not being able to see anything, and contemplating their next strategy out loud for 23 minutes.
03:46:29 <Sgeo> That's the thing that bothers me, the continuous contemplation and exposition out loud, in front of enemies, wasting time
03:46:47 <Sgeo> (As in, the enemy should be killing them. Or if the enemy is talking, they should be killing the enemy)
03:47:01 <Lumpio-> But they can't kill anyone if it's not their turn. Never played a JRPG?
03:48:05 -!- Bike_ has joined.
03:48:48 <Lumpio-> Anyways when you get bored of that, get some deep and philosophical anime meant for adults like K-on
03:48:59 <Bike_> sgeo, it's almost like they have an animation budget.
03:50:02 -!- Bike has quit (Ping timeout: 245 seconds).
03:52:01 -!- WeThePeople has quit (Quit: Leaving).
03:52:03 <monqy> almost like their target audience ?????? ??????
03:52:19 <shachaf> `?hh monqy
03:52:21 <HackEgo> The friehndshihp mohnqy ihs ahn ahnciehnt Chihnehse myhstehry; ahsk ihtihduhs21 fohr dehtaihls.
03:52:24 <monqy> hi shachaf
03:52:30 <shachaf> oh no are you disapproving
03:52:41 <Sgeo> so many anime I need to watch
03:52:47 <Sgeo> Haven't heard of K-on
03:52:57 <Lumpio-> ( ゚∀゚)
03:52:58 <monqy> it's a deep philisophical audience for adults
03:53:27 <monqy> audience/anime
03:53:29 <Lumpio-> The sooner you learn to direct your interests only towards cute girls doing cute things the better
03:53:29 <monqy> woops woops
03:53:35 <Fiora> It's a show about {4,5} moe high school girls acting cute while taking part in a _____ club
03:53:46 <Lumpio-> Yes and tea and cake
03:53:48 * Fiora loves how many anime she just described
03:53:52 <monqy> philosophy club philosophy club
03:53:58 <Bike_> who's the fifth WHO'S THE FIFTH
03:54:06 <Lumpio-> ...azusa?
03:54:08 <Lumpio-> eh
03:54:11 <Bike_> whoa
03:54:13 <shachaf> monqy: can you tell me a story about {4,5} monoids
03:54:23 <monqy> they talk about sartre and nietzsche and stuff
03:54:42 <kmc> i want a god that stays dead, not plays dead
03:55:12 <monqy> shachaf: no
03:55:30 <shachaf> i hate monoids!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
03:55:47 <Lumpio-> Truly good shows do away with unneeded male characters altogether
03:55:48 <Bike_> :O
03:56:12 <monqy> how about the unneeded female characters too
03:56:14 <shachaf> Truly good shows do away with both unneeded male and female characters
03:56:15 <monqy> unneeded pets
03:56:20 <shachaf> I mean, if they're unneeded, who needs 'em?
03:56:24 <monqy> unneeded farm animals
03:56:26 <shachaf> "if u get my meening"
03:56:26 <monqy> unneeded zoo animals
03:56:29 <monqy> unneeded wild animals
03:56:34 <monqy> unneeded plants?
03:56:41 <monqy> unneeded fungi?????
03:56:47 <shachaf> fungi are fun
03:56:51 <Bike_> That just reminds me of the Japanese evacuation of Manchuria.
03:56:53 -!- Bike_ has changed nick to Bike.
03:57:21 <Fiora> Lumpio-: but if they did that, there'd be none left to be generic useless protagonists!
03:57:22 <monqy> the truly good show is one you experience when detached from the binds of conciousness
03:57:32 <Lumpio-> Who needs protagonists when we can have slice of life
03:57:47 <Lumpio-> If there's a male protagonist it's probably a lame light novel/eroge adaptation
03:57:49 <Sgeo> Does Suzumiya Haruhi count as slice of life?
03:57:55 <Sgeo> It can get a bit slice-of-life-y at times
03:58:15 <Lumpio-> I mean there's like, a plot
03:58:18 <Fiora> It's mainly a light novel adaptation that's somewhat less bad than the usuals
03:58:19 <Lumpio-> And twists
03:58:36 <Lumpio-> Well it's a relatively "old" light novel adaptation so
03:58:41 <Bike> And the same episode seven times!
03:58:42 <shachaf> Fiora: What's novel about it?
03:58:44 <Lumpio-> The shit they've been putting out for the last five years defies understanding
03:58:52 <Fiora> shachaf: is that a pun ~_~
03:58:53 <Lumpio-> Bike: I thought it was eight
03:58:58 <Lumpio-> Then again I never watched that.
03:59:05 <Fiora> Lumpio-: jphinano.wordpress.com/2012/02/29/all-light-novels-are-the-same/ you'd like this post XD
03:59:06 <shachaf> Fiora: Every single thing I say in IRC is a pun.
03:59:13 <Bike> Lumpio-: "important"
03:59:14 <shachaf> Most of them are so well-hidden you never catch on.
03:59:34 <monqy> shachaf: is that a pun
03:59:45 <shachaf> monqy: "maybe"
03:59:46 <Lumpio-> oh, light novel title time?
04:00:09 <monqy> shachaf: do you understand this "animes" thing, do you have a pun about it
04:00:15 <Lumpio-> https://twitter.com/ln_title_bot
04:00:27 <Fiora> Lumpio-: OMG
04:00:45 <shachaf> monqy: yes but "its advanced"
04:00:49 <Fiora> wait. are those actual titles?
04:00:54 <Lumpio-> yes
04:00:57 <Fiora> oh my god
04:00:58 <Fiora> that is wonderful
04:01:07 <Lumpio-> The links are cover pictures.
04:01:09 <shachaf> monqy: you might have to level up before you can "get" it
04:01:16 <Bike> "The little sister is a dragon and the older brother is prematurely balding" i dunno, this seems pretty good
04:01:26 <Lumpio-> Also if you google any of the Japanese titles you'll see they're available on Amazon.
04:01:42 <myndzi> haha
04:01:45 <Fiora> "I've become a character in an otome game"
04:02:02 <Lumpio-> 悪に堕ちたら美少女まみれで大勝利!! | Who cares if I'm the bad guy? Fuck yeah, I got bitches | http://minus.com/lrgyzxBOicuL
04:02:04 <Fiora> "The ultimate girlfriend has black hair and glasses" I really don't think that narrows it down much mr. MC
04:02:05 <Lumpio-> This translation is the best
04:02:10 <Bike> http://i3.minus.com/ibvxzBUsgG1IfP.jpg Where the fuck is the balding?
04:02:12 <monqy> these titles are bad
04:02:19 <pikhq> These translations are inspired.
04:02:28 <Lumpio-> Bike: Can't you see the guy holding onto his wig?
04:02:31 <monqy> Bike: i think he's covering it
04:02:47 <Bike> Uh what kind of cover is it if the title isn't completely superfluous??
04:03:00 <Fiora> Isn't it like, a standard LN thing now to have titles that have nearly nothing to do with the content?
04:03:15 <Lumpio-> It's also standard to make the titles ridiculously long sentences instead of real titles
04:03:15 <monqy> i'm not well versed on this ln nonsense but it sounds bad
04:03:27 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
04:03:34 <Bike> oh this one has a girl in bondage on the cover
04:03:47 <Lumpio-> Like, in English, not "Generic little sister", but "It turned out that my little sister is generic, or so I've heard"
04:04:09 <pikhq> monqy: A "light novel" is basically a relatively easy to read novel. Generally the target audience is teenagers and young adults.
04:04:11 <Bike> again, that actually seems like it could be pretty good
04:04:23 <Lumpio-> Also they've got pictures.
04:04:23 <pikhq> Some of them are quite good. A ton of them are crappy.
04:04:25 <Bike> Maybe some kind of PKD-ish thing about a guy discovering his little sister is a clone.
04:04:29 <Fiora> Light novels are like young adult novels, often with some pictures and stuff
04:04:30 <Lumpio-> So you only need to actually read a fraction of the pages.
04:04:36 <Bike> And you have to wonder whether the narrator is actually just delusional.
04:04:41 <pikhq> That's not a defining attribute, but yes, many of them have illustrations.
04:04:50 <Bike> hypothesis: about 13% of japanese culture is actually pkd with more porn
04:04:50 <Fiora> but in recent years there's been a massive flood of terrible light novels
04:05:03 <Fiora> which seem to all be some combination of a little sister fetish and harems
04:05:12 <Fiora> possibly aiming at anime adaptations (???)
04:05:14 <monqy> little sister harems??? it could happen
04:05:19 <myndzi> beat me to it
04:05:21 <myndzi> ahaha
04:05:25 <myndzi> you know it'll happen
04:05:26 <pikhq> Quite likely. Little sister harem anime is a thing.
04:05:29 <Fiora> Lumpio-: jphinano.wordpress.com/2012/07/09/just-as-expected-my-light-novel-list-wasnt-wrong-after-all/
04:05:30 <pikhq> :P
04:05:44 <Bike> " My little sister attracts other women and I am suffering" this should be about magnets.
04:05:47 <myndzi> it already exists probably, but not in the true sense of the word 'harem' ;P
04:05:47 <pikhq> And "being done before" doesn't stop anime from happening.
04:06:00 <pikhq> myndzi: "harem anime" doesn't really, so.
04:06:09 <myndzi> i'm just saying
04:06:12 <myndzi> someone could crank it up to 11
04:06:21 <Bike> "Anubis! This is how I became the strongest death worm" and this could be about a mongolian death worm trying to make his way in a world that treats him as a cryptid.
04:06:23 <Fiora> "I cannot explain why my girlfriend has ears and a tail" the cover of the book has a girl with neither [animal] ears or a tail
04:06:29 <myndzi> "Little Sister Factory" D:
04:06:32 <Bike> imo we should have more anime about caliphate infighting?
04:06:38 <pikhq> Bike: YES
04:06:44 <monqy> Fiora: maybe that's why he can't explain it
04:06:50 <myndzi> lol
04:06:54 <myndzi> she's obviously shy
04:06:56 <myndzi> and hiding them
04:06:58 <Bike> the closest thing i know is Otoyomegatari which isn't really close at all
04:07:02 <monqy> no he's just delusional
04:07:06 <Bike> central asia ftw
04:07:13 <myndzi> a delusion is fine too
04:07:25 <Bike> http://i1.minus.com/ibekVQokOfX3Pw.jpg Um hello, no death worms??
04:07:32 <Bike> I like "Anuvis", however. Good romanization.
04:07:56 <pikhq> It's... The only accurate one from the kana.
04:07:58 <Bike> Actually, how was that pronounced in Ancient Egypt, I wonder. Do we even know much about Egyptian vocals? Did they write rhyming poetry?
04:08:08 <shachaf> monqy: should i read "death note"
04:08:13 <monqy> maybe they're death worms that can transform into little girls
04:08:15 <monqy> or uh
04:08:17 <pikhq> It's actually "anuvisu" there. (anuùīsu)
04:08:20 <monqy> little girls that can transform into death worms
04:08:23 <Bike> "Anubis" is probably hilariously inaccurate itself, given Europe's history with well everything.
04:08:32 <Bike> monqy: no, the first one is better.
04:08:33 <monqy> shachaf: idk if you want
04:08:54 <Bike> "Shotgun Detective", now here's an anime
04:09:00 <monqy> Bike: i was also thinking maybe that girl is eating the death worms, but they're radioactive death worms so
04:09:01 <myndzi> yes!
04:09:09 <Bike> http://i5.minus.com/iYCtfBznaBzBP.jpg wow fuck nevermind
04:09:14 <myndzi> :(
04:09:20 <monqy> looks anime alright
04:09:24 <monqy> put some clothes on lady
04:09:41 <myndzi> > anime about searching for shotguns
04:09:43 <lambdabot> Not in scope: `anime'Not in scope: `about'Not in scope: `searching'Not in s...
04:09:45 <Fiora> escher light novels http://minus.com/l20WYOO1tvaBa
04:09:50 <Bike> how do you fuck up "Shotgun Detective"? All you need is a detective with a shotgun, and you have gold. Did you learn nothing from Shotgun Ninja?!
04:09:52 <monqy> where's that guy's uhh
04:09:54 <monqy> detective stuff
04:10:03 <monqy> like magnifying glass, goofy hat, bubble pipe
04:10:10 <Bike> No, no, he's modern.
04:10:14 <Bike> It's all in the trenchcoat.
04:10:14 <Lumpio-> Who needs those when you have a shotgun
04:10:26 <Bike> Fiora: still like the sulfufic acid there
04:11:18 <Lumpio-> Bike: That's the illustrator's name.
04:11:28 <Bike> Fuck!
04:11:30 <kmc> you can use a shotgun as a pipe
04:11:31 <kmc> in a pinch
04:11:48 <Lumpio-> But can you use one as a magnifying glass or goofy hat
04:12:00 <kmc> YOU MAY LIKE TO KNOW THAT SELFLOADING KARBIN OF SIMONOV TYPE IS COMPLETE SISTEMA FOR SMOKE DOPE, IN ADDITION TO RIFLE FOR KILL ENEMIES OF PARTY.
04:12:02 <Bike> A shotgun would make for a pretty goofy hat.
04:12:04 <monqy> maybe it transforms
04:12:27 <Fiora> Bike: my headcanon is that it's really what the artist used to bend her spine line that
04:12:31 <Fiora> *like that
04:12:56 <monqy> i think there are more practical concerns at play there
04:13:00 <Bike> I don't think acid would help there.
04:13:02 <monqy> like attracting young male readers
04:13:05 <Bike> Well, not that kind of acid, anyway.
04:13:16 <Fiora> you could like, eat through bone with it? I dunno
04:13:23 <monqy> maybe she's dead
04:13:35 <Bike> Then it would have to be formaldehyde
04:13:45 <monqy> once the book's written she's not needed so they off her
04:13:51 <monqy> pose her all pretty for the covershot
04:13:55 <monqy> bam instant hit
04:14:00 <Bike> it's so easy to make this bullshit into mildly interesting premises, fuck
04:14:22 <Fiora> " Schroedinger's Cat-Ears Girl"
04:14:54 <Bike> Fiora: http://i4.minus.com/irp3jEbulk07z.jpg thinking this might deserve an escher girls submission
04:15:04 <Bike> her hips just kind of evaporated
04:15:10 <Fiora> ....wow
04:15:23 <Fiora> they somehow avoided the temptation to show even more of her upper body though
04:16:36 <Bike> "MummyPoko! ~One day, I awoke as a Mongolian Death Worm.~"
04:17:00 <monqy> maybe they killed her but they killed her a bit too hard and when they reconstructed her her butt was in the wrong place, woops
04:17:21 <monqy> deadlines, budgets, it'll have to do
04:17:56 <Bike> http://i7.minus.com/ibk8GEDK3vjCgZ.jpg Oh, hey, they put up that one ABe illustrated.
04:18:20 <monqy> negative happy chainsaw edge?
04:18:21 <Lumpio-> Negative happy! Chainsaw edge
04:18:23 <Lumpio-> yes.
04:18:58 <Bike> Yeah, it's by the same guy as Welcome to the NHK, if you've heard of that. 's about crazy people
04:19:07 <Lumpio-> oh
04:19:15 <Lumpio-> I can't remember the guy's name
04:19:28 <Lumpio-> NHK wasn't a light novel though was it, it was liek a proper book
04:19:38 <Fiora> it looks Lainish?
04:19:51 <Bike> Fiora: like i said, abe.
04:19:56 <Fiora> oh riiiight he's... yeah
04:20:01 * Fiora bad with names @_@
04:20:05 <Bike> http://en.wikipedia.org/wiki/File:NHKlightnovel.JPG he did NHK too.
04:20:14 <Bike> ABe I can remember because it's three letters and he writes it dumb.
04:20:15 <Lumpio-> hum.
04:20:40 <Lumpio-> So how long until my misaki comes to save me .__.
04:20:57 <Bike> you read NHK really weirdly
04:21:11 <Lumpio-> I never read it.
04:21:24 <Bike> oh. well, she's fucking crazy.
04:21:27 <Bike> spoilers!
04:21:30 <Lumpio-> And my brain filtered out the bad parts
04:21:35 <Lumpio-> orly ¬u¬
04:21:36 <Bike> all of it?
04:21:47 <Lumpio-> I did listen to some guy's lecture about the book at a convention though.
04:22:00 <Lumpio-> They must've toned it down a *lot* for the manga and even more for the animated adaptation
04:22:08 <monqy> some guy's lecture
04:22:11 <Bike> Yeah, they cut out all the cocaine.
04:22:16 <Lumpio-> And the CP
04:22:18 <Lumpio-> And the and the.
04:22:24 <Bike> right.
04:22:28 <Sgeo> `list
04:22:29 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
04:22:29 <Lumpio-> A lot anyways.
04:22:41 <Bike> "The perverted gentleman with a ten-meter diameter" ok, i'm done after this, nothing can beat this
04:23:01 <Lumpio-> what
04:23:04 <Lumpio-> where
04:23:26 <Bike> nope. done.
04:24:02 <Lumpio-> 半径十メートルの変態紳士
04:24:04 <Lumpio-> huh.
04:24:06 <Lumpio-> It exists.
04:24:45 <Lumpio-> *Although* that probably was never published. Just appeared in the list of finalists for a competition or something.
04:25:05 <Lumpio-> ...also to be exact that's a ten-meter radius not a diameter ¬u¬
04:26:28 <pikhq> Yeah, I was wondering about that.
04:27:13 <Lumpio-> But it does sound much better in English the other way
04:27:47 -!- Nisstyre-laptop has joined.
04:28:39 <shachaf> `?hh object
04:28:41 <HackEgo> Ahn ohbjehct ihs juhst sohmehthihng ihn a cahtehgohry.
04:29:13 <shachaf> Shouldn't that say "an object is just an object in a category of objects" or something?
04:33:19 <monqy> good point
04:34:13 <shachaf> monqy: imo it was a pretty bad point
04:34:23 <monqy> that was the joke
04:34:28 <monqy> i said "good point" but i meant "bad point"
04:34:40 <shachaf> wait
04:34:50 <shachaf> sometimes you say one thing but mean another thing
04:34:56 <monqy> no
04:35:01 <shachaf> is the joke that yes
04:35:04 <monqy> yes
04:35:06 <monqy> *no
04:35:09 <monqy> *woops
04:35:32 <shachaf> "caught in ur own web of lies"
04:35:49 <shachaf> monqy: Have I ever made a good point? :-(
04:35:59 <monqy> idk maybe
04:36:57 <shachaf> what about the time when i was all like
04:37:00 <shachaf> :·(
04:38:03 <Fiora> "I'll show you how to be a nerd if you go out with me!" still cannot even this twitter
04:38:39 <kmc> "George's father tries to promote COBOL at SF startups. Kramer accidentally joins the R7RS working group."
04:40:23 <shachaf> are there any words that rhyme with monoid
04:40:25 <shachaf> or monoids
04:40:26 <kmc> toroid
04:40:34 <kmc> mongoloid
04:40:43 <kmc> steroid
04:40:47 <Bike> cycloid!
04:41:26 <shachaf> marvin the paranoid monoid
04:42:07 <shachaf> I don't think any of these are rhymes. :-(
04:51:50 <Jafet> @quote stereoid
04:51:51 <lambdabot> No quotes match.
04:52:05 <shachaf> `quote monoid
04:52:06 <HackEgo> No output.
04:52:19 <shachaf> `run > bin/quonoid echo quote monoid; chmod +x bin/quonoid
04:52:22 <HackEgo> No output.
05:00:41 -!- Nisstyre_ has joined.
05:02:01 -!- Nisstyre has quit (Ping timeout: 256 seconds).
05:05:01 -!- WeThePeople has joined.
05:18:28 <Sgeo> How many times are things going to be re-explained in this series? (Naruto)
05:18:35 <shachaf> `?hh naruto
05:18:36 <HackEgo> nahruhto? ¯\(°_o)/¯
05:19:40 <shachaf> `run ls wisdom | shuf
05:19:42 <HackEgo> brainfuck \ ais523 \ oregon \ ehird \ fungot \ mad \ coppro \ monad \ d-module \ heck \ phantom__________hoover \ monoids \ homestuck \ lifthrasiir \ ievan \ wiki \ wisdom \ parsley \ coffee \ pizza \ footnote 8 \ taneb \ bike \ atrix \ banach-tarski \ you \ intercal \ boily \ lens \ phantom___hoover \ hexham \ irc \ ø \ helsinki \ devious \ kalli
05:19:54 <lifthrasiir> shachaf: gyaaaaa!
05:20:05 <shachaf> `?hh pizza
05:20:06 <HackEgo> Pihzza ihs a kihnd ohf rhuhbahrb pie mahde wihthouht rhuhbahrb.
05:20:14 <shachaf> `?hh irc
05:20:15 <HackEgo> ihrc ihs uhsehlehss.
05:20:43 <shachaf> `?hh heck
05:20:45 <HackEgo> Hehck ihs whehre you ehnd uhp ihf you dohn't behliehve ihn Gohsh.
05:20:55 <shachaf> `?hh homestuck
05:20:56 <HackEgo> Hohmehstuhck ihs a cuhlt rehlihgiohn fohr dihsahffehctehd teehns. Gahmzee drihvehs the buhs.
05:21:51 <shachaf> `?hh helsinki
05:21:52 <HackEgo> Hehlsihnki ihs the cahpihtahl ohf Fihnlahnd. Ihts maihn suhbuhrb ihs Hehxhahm, Nohrthuhmbehrlahnd.
05:21:55 <shachaf> `run ls wisdom | shuf
05:21:56 <HackEgo> lifthrasiir \ burma \ välkommen \ atriq \ ievan \ irc \ bonvenon \ structural subtyping \ phantom___hoover \ cyberiad \ scotland \ oklopol \ gaszpacho \ d-module \ the us \ misspellings of croissant \ devious \ quote \ you \ gaspacho \ the them \ hagb4rd \ ☃ \ norway \ ngevd \ egobot \ footnote 8 \ pietbot \ flagpole \ fungot \ itidus19 \ coppro
05:22:02 <shachaf> lifthrasiir: Sorry!
05:22:07 <shachaf> `?hh pietbot
05:22:10 <HackEgo> Piehtboht ihs the ohnly thihng thaht cahn dehfeaht fuhngoht.
05:22:14 <shachaf> `?hh the us
05:22:16 <HackEgo> The UhS ihs the couhntry ohppohsehd to the THEhM.
05:30:25 <quintopia> jlul
05:30:28 <zzo38> Do you know if foreign keys referencing other files are allowed in SQLite?
05:30:46 <quintopia> maybe the regex should be two regexes
05:30:50 <quintopia> one for each case
05:30:55 <quintopia> upper and lower
05:31:08 <quintopia> so the US becomes UHS and THEM becomes THEHM
05:31:31 <Sgeo> What do uS and Us turn into?
05:32:16 <Bike> `? fungot
05:32:16 <fungot> Bike: the best acid? where is it?
05:32:17 <HackEgo> fungot cannot be stopped by that sword alone.
05:32:24 <Sgeo> Whatever you think of Naruto, the music is good
05:32:42 <shachaf> fungot: kmc would be the person to ask
05:32:42 <fungot> shachaf: that paper ( clinger's) has a very precise meaning in c or even c++' useless
05:32:49 <shachaf> kmc: (Where is it?)
05:40:18 <kmc> haha
05:40:19 <kmc> i do not know
05:42:46 <shachaf> What about just good acid?
05:43:03 <kmc> nope
05:43:08 <kmc> i mean i know some people who might know
05:43:10 <kmc> but i do not know
05:43:23 <kmc> acid is not, how you say, efficient market commodity
05:45:57 <shachaf> :-(
05:45:59 <shachaf> What about hydrochloric acid?
05:49:26 <kmc> `addquote <fungot> Bike: the best acid? where is it?
05:49:27 <fungot> kmc: what are flow info and scope id). if police is sent to irc" without realizing other stuff is fixed :))
05:49:30 <HackEgo> 939) <fungot> Bike: the best acid? where is it?
05:49:41 <kmc> fungot: you have to tell me if you're a cop
05:49:42 <fungot> kmc: he left, never to any other. green tabasco sauce and fnord. they work " well enough" and abysmal more like " wow, cool, you can try
05:50:30 <kmc> fungot!
05:50:31 <fungot> kmc: it seems to have stabilized at fnord iterations and isn't really assignment, it gives you a 3d woman
05:50:52 <kmc> fungot…
05:50:53 <fungot> kmc: try reading the appropriate documentation, fez??? for the lower-case alphabet bit?
05:51:01 <Bike> yeah, fez, what the hell
05:51:26 <shachaf> good style
05:51:28 <shachaf> is this irc
05:51:29 <shachaf> ^style
05:51:29 <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
05:51:36 <shachaf> fungot: good style
05:51:36 <fungot> shachaf: advice 11903 for edw: i am gavino.
05:51:51 <shachaf> fungot: good advice
05:51:52 <fungot> shachaf: then you'll get to that collapse point fnord the z3 was the tc one. native speakers.
05:54:54 <shachaf> fungot: hi monqy
05:54:55 <fungot> shachaf: well, i was mostly fighting with this encoding stuff fnord was never published in english, i can't say, on the fly then outputs it
05:54:59 <monqy> hi shachaf
05:55:05 <shachaf> monqy: hi fungot
05:55:06 <fungot> shachaf: or did i just wipe everything outside of /proc, should you happen to feel coherent right now? just experimenting with my graph version, stacks and numbers are very different
06:01:51 -!- augur has joined.
06:02:18 -!- augur has quit (Read error: Connection reset by peer).
06:02:42 -!- augur has joined.
06:16:14 <Jafet> http://en.wikipedia.org/wiki/Space_elevator_safety
06:16:33 <Sgeo> "Also, if you get killed, everything is lost"
06:16:45 <Sgeo> I guess the Narutoverse hasn't heard of having a bus factor of >1
06:16:58 <shachaf> Have they heard of monoids?
06:16:58 <Sgeo> ...then again, neither have some software projects, including VP
06:17:15 <shachaf> 1?hh narutoverse
06:17:24 <shachaf> `?hh narutoverse
06:17:25 <HackEgo> nahruhtohvehrse? ¯\(°_o)/¯
06:17:40 <Bike> `learn narutoverse is a place where they haven't heard of having a bus factor of >1.
06:17:44 <HackEgo> I knew that.
06:19:19 <shachaf> `?hh naruto
06:19:21 <HackEgo> nahruhto? ¯\(°_o)/¯
06:19:25 <shachaf> Sgeo: who is naruto
06:20:06 <Jafet> `run sed -e 's/$/ Sgeo drives the bus./' wisdom/narutoverse
06:20:07 <HackEgo> narutoverse is a place where they haven't heard of having a bus factor of >1. Sgeo drives the bus.
06:20:20 <Jafet> `run sed -ie 's/$/ Sgeo drives the bus./' wisdom/narutoverse
06:20:20 <shachaf> Jafet++
06:20:23 <HackEgo> No output.
06:20:28 <Bike> Like the shorter and more familiar strings of stringed musical instruments, the cable of a space elevator has a natural resonant frequency.
06:23:45 <shachaf> `?hh space elevator
06:23:47 <HackEgo> spahce ehlehvahtohr? ¯\(°_o)/¯
06:24:48 <shachaf> `?hh chicago
06:24:50 <HackEgo> chihcahgo? ¯\(°_o)/¯
06:24:52 <kmc> fungot elevator
06:24:53 <fungot> kmc: right. a minor third has a ratio of fnord :d
06:24:57 <shachaf> fungot: what's chicago like
06:24:57 <fungot> shachaf: i support riastradh's requests for more parens as well. to prove the compliance
06:25:07 <Bike> `run echo "Like the shorter and more familiar strings of stringed musical instruments, the cable of a space elevator has a natural resonant frequency." >"wisdom/space elevator"
06:25:10 <HackEgo> No output.
06:25:16 <Bike> `?hh space elevator
06:25:18 <HackEgo> Lihke the shohrtehr ahnd mohre fahmihliahr strihngs ohf strihngehd muhsihcahl ihnstruhmehnts, the cahble ohf a spahce ehlehvahtohr hahs a nahtuhrahl rehsohnahnt frehquehncy.
06:25:23 <Bike> Yes, good.
06:28:01 <kmc> shachaf did you get the crypto puzzles yet
06:28:33 <shachaf> No, I haven't sent an email.
06:29:06 <shachaf> I guess they're "that good"
07:00:43 -!- WeThePeople has quit (Quit: Leaving).
08:35:41 -!- nkg has joined.
08:36:27 -!- nkg has quit (Client Quit).
08:45:26 -!- azaq23 has joined.
08:46:35 -!- Sgeo has quit (Read error: Connection reset by peer).
08:46:51 -!- Sgeo has joined.
08:49:17 <Sgeo> Does Parsec assume a single correct unique parsing?
09:16:14 * Sgeo manages to do what he needs without Parsec
09:17:00 <monqy> was it an interesting thing
09:18:21 <Sgeo> meh
09:18:35 <Sgeo> Well, it was difficult for me, so I guess that's interesting?
09:18:42 <monqy> no
09:19:07 <monqy> did you write a parser by hand
09:25:43 <shachaf> monqy: Are covariant proxies useful?
09:26:02 <monqy> i don't know
09:26:09 <shachaf> I don't either.
09:26:17 <shachaf> I can't think of any use for them off-hand.
09:27:28 -!- epicmonkey has joined.
09:28:06 -!- Taneb has joined.
09:29:41 -!- Bike has quit (Quit: dead).
09:34:31 <Sgeo> monqy, yes
09:34:56 <monqy> you know there's a reason why parsy things exist right
09:35:00 <monqy> it's because writing parsers by hand is dumb
09:36:23 <shachaf> monqy: what if i want a streaming parser!!
09:36:38 <monqy> get someone to write a parsy thing for those, then use that
09:36:52 <Sgeo> I tried to use Parsec but it ate my memory
09:36:54 <shachaf> monqy: please write a parsy thing for those
09:37:10 <monqy> Sgeo: did you make a memory leaking infinite loop
09:37:11 <Sgeo> Also I don't know if the specs even had a unique parsing
09:38:37 <Sgeo> As a matter of fact there is not.
09:38:46 <Sgeo> There are strings that can validly be parsed multiple ways.
09:39:03 <monqy> oh no!!!
09:39:39 -!- aloril has quit (Ping timeout: 244 seconds).
09:39:55 <monqy> does your hand-written parser assume a single correct unique parsing ?
09:40:05 <shachaf> Sgeo: can i recommend monoids
09:40:07 <shachaf> i love them
09:40:14 <Sgeo> monqy, no it doesn't.
09:40:18 <monqy> :0
09:40:35 <monqy> ps what does it mean to "assume" a single correct unique parsing
09:42:30 -!- oklopol has joined.
09:56:43 -!- aloril has joined.
09:59:37 -!- Sgeo has quit (Read error: Connection reset by peer).
10:00:19 -!- impomatic has quit (Ping timeout: 244 seconds).
10:00:25 -!- Sgeo has joined.
10:00:38 <Sgeo> GHCi is not very easy to interrupt when you do something dumb
10:03:28 <zzo38> Sgeo: I think you are correct.
10:10:07 <zzo38> I made some changes to the SQLite command shell. Now there is the command .virtual to create an empty virtual table module so that you can create virtual tables for use with other programs, and .extract command to extract blob data from SELECT statements to an external file, and the blobfile(...) function to read an external file.
10:15:36 -!- zzo38 has quit (Remote host closed the connection).
10:20:15 -!- carado has joined.
10:22:59 -!- Nisstyre-laptop has quit (Ping timeout: 252 seconds).
10:31:32 -!- monqy has quit (Quit: hello).
10:37:42 -!- Phantom_Hoover has joined.
11:50:03 -!- Arc_Koen has joined.
12:09:39 -!- sirdancealot7 has joined.
12:49:18 -!- aloril has quit (Ping timeout: 245 seconds).
13:05:42 -!- aloril has joined.
13:33:43 <shachaf> `?hh zzo38
13:33:48 <HackEgo> zzo38 ihs noht ahctuahlly the nehxt vehrsiohn ohf fuhngoht, muhch ahs iht may seehm.
13:33:57 <shachaf> fungot: hi fuhngoht
13:33:58 <fungot> shachaf: i mean, he has the materials with which to fiddle now? great! it is a top-level or body form, or so
13:34:07 <shachaf> fungot: or so
13:34:07 <fungot> shachaf: i cannot possibly fathom why one would want to do ( source foo) or something
13:34:16 -!- oerjan has joined.
13:34:19 <shachaf> i cannot either, fungot. i cannot either
13:34:19 <fungot> shachaf: the decryption part isn't correct, is unhelpful, i guess. ( but i guess it could be a movie :-s
13:34:26 <shachaf> helloerjan
13:34:38 <oerjan> g'dachaf
13:34:55 <shachaf> Oh, that's good. "g'dachaf".
13:35:01 <shachaf> ^rot13 g'dachaf
13:35:01 <fungot> t'qnpuns
13:35:06 <shachaf> `wehlcohme oerjan
13:35:07 <HackEgo> oehrjahn: Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
13:35:27 <shachaf> `run wehlcohme oerjan | sed s/dahl/dal/g # for you
13:35:28 <HackEgo> oehrjahn: Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dal.neht.)
13:35:30 <oerjan> thahnk you
13:37:33 <oerjan> <zzo38> However, there is already the problem, since there is no SQLITE_OMIT_UNICODE. <-- once again, zzo38 is thwarted in his attempt to avoid unicode
13:38:12 <shachaf> zzo thirty hate :'(
13:50:29 <Taneb> I could probably tell the time by what's on my Tumblr dashboard
13:51:01 <shachaf> Time to log out of Tumblr?
13:51:12 <Taneb> Log... out?
13:51:41 <Taneb> It's Adventure Time with hints of Team Fortress 2 and Homestuck
13:51:51 <shachaf> http://www.tumblr.com/logout
13:51:52 <shachaf> hth
13:52:25 <shachaf> There's always http://www.tumblr.com/account/delete if you're serious about logging out
13:55:00 <Taneb> You monster.
13:57:53 <shachaf> It's the only cure to the thing.
13:58:59 <oerjan> <Bike> Maybe some kind of PKD-ish thing about a guy discovering his little sister is a clone. <-- polycystic kidney disease is no laughing matter.
14:01:14 * oerjan thinks philip k. dick may fit better.
14:14:14 -!- ais523 has joined.
14:26:35 <mroman> !bf +++++[-]
14:26:45 <mroman> `bf +++++[-].
14:26:47 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: bf: not found
14:26:57 <Taneb> Woah
14:27:11 <Taneb> Is the GBP based on a banknote standard
14:30:27 <oerjan> great british paper
14:31:33 <mroman> horray \o/
14:31:58 <elliott> im tire
14:32:10 <oerjan> elliott: so you're on a roll?
14:32:10 <Taneb> `? elliott
14:32:12 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?
14:32:39 <elliott> `learn elliott is tire
14:32:43 <HackEgo> I knew that.
14:32:46 <oerjan> `revert
14:32:49 <HackEgo> Done.
14:33:09 <oerjan> `run echo " He is also tire." >>wisdom/elliott
14:33:13 <HackEgo> No output.
14:33:21 <oerjan> `? elliott
14:33:23 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things? \ He is also tire.
14:33:26 <oerjan> oops
14:33:28 <elliott> are you suggesting the other information was useful
14:34:07 <oerjan> `run sed -i -e 1N -e 's/\n//' wisdom/elliott
14:34:10 <HackEgo> No output.
14:34:13 <oerjan> `? elliott
14:34:14 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things? He is also tire.
14:35:22 <oerjan> `run echo test | sed -e 's/te/o/;s/st/k/'
14:35:24 <HackEgo> ok
14:36:38 <oerjan> `run yes | head -10
14:36:39 <HackEgo> y \ y \ y \ y \ y \ y \ y \ y \ y \ y
14:37:15 <oerjan> `run yes | head -10 | sed -e '1,$N;s/\n//'
14:37:16 <HackEgo> yy \ yy \ yy \ yy \ yy
14:37:19 <oerjan> hmph
14:37:50 <mroman> Can I use regex to replace matched brackets?
14:37:57 <mroman> [...[...]..]
14:38:07 <elliott> no
14:38:11 <elliott> except yes if perl
14:38:13 <mroman> It would have to replace the inner brackets first.
14:38:40 <mroman> ok.
14:38:47 <mroman> maybe I don't need that.
14:39:03 <mroman> nope.
14:39:05 <mroman> \o
14:41:12 -!- yxynaxen has joined.
14:41:58 <oerjan> `welcome yxynaxen
14:42:00 <HackEgo> yxynaxen: 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.)
14:42:12 -!- yxynaxen has left.
14:45:43 <elliott> hi bye
14:46:21 <olsner> wrong kind of esoteric, I guess
14:49:44 <elliott> olsner: hi bye
14:50:08 <mroman> http://codepad.org/mWNt1mGS
14:50:18 <mroman> That wasn't even that difficult.
14:50:38 <olsner> elliott: hi bye
14:50:41 <elliott> oerjan: hello again!
14:51:21 <oerjan> goætmida
14:52:29 <mroman> well
14:52:44 <mroman> now I just need . and , too
14:54:44 <oerjan> writing bf in regexps may be a little hard.
14:55:23 <ais523> elliott: PCRE can also match brackets in regexps
14:55:33 <ais523> it's not identical to perl regexp, but it does include the necessary features
14:55:53 <ais523> I'm not sure if Perl knew what they'd created when they added (??{})
14:56:07 <ais523> the documentation said that they were adding the feature to see what happened
14:56:20 <ais523> and then when they realised people were using it to write recursive regexps, they added an explicit recursion operator
14:56:28 <ais523> PCRE doesn't have (??{}), but it does have the recursion operator
14:56:52 <Taneb> I'm gonna actually learn what a D-module is
14:57:24 <ais523> I wonder how populated the dalnet #esoteric is
14:57:30 <ais523> and how much of its traffic we're responsible for
14:57:31 <Taneb> A ring is like something with addition and multiplication
14:57:42 <ais523> I've been working with semirings a lot
14:57:46 <ais523> a semiring has addition and multiplication
14:57:57 <ais523> a ring has subtraction and division too (apart from division by 0)
14:58:29 <Taneb> Oh, okay
14:58:46 * oerjan swats ais523 -----###
14:58:51 <oerjan> NO DIVISION
14:59:08 <Taneb> A ring of differential operators would be a ring where the numbers are differential operators, right?
14:59:30 <ais523> oerjan: I think it has multiplicative inverses, right?
14:59:38 <oerjan> no. that's a division ring.
14:59:39 <olsner> multiplicative inverness
14:59:42 <ais523> ah, OK
14:59:49 <ais523> I only work with semirings
14:59:56 <ais523> none of this subtraction nonsense
15:00:25 <oerjan> Taneb: except they don't call them numbers afaik.
15:00:49 <Taneb> Sssh
15:01:16 <Taneb> `? Inverness
15:01:18 <HackEgo> Inverness? ¯\(°_o)/¯
15:01:27 <elliott> Taneb: the technical term is "thingies"
15:01:41 <Taneb> `learn Inverness is a city in Scotland. The ring road isn't multiplicative.
15:01:44 <HackEgo> I knew that.
15:03:03 <oerjan> "elements", if you must.
15:03:34 <olsner> `? ring
15:03:36 <HackEgo> ring? ¯\(°_o)/¯
15:04:04 <oerjan> `echo "Addition, subtraction and multiplication have a certain ring to them." >wisdom/ring
15:04:05 <HackEgo> ​"Addition, subtraction and multiplication have a certain ring to them." >wisdom/ring
15:04:08 <oerjan> `run echo "Addition, subtraction and multiplication have a certain ring to them." >wisdom/ring
15:04:11 <HackEgo> No output.
15:04:21 <olsner> `? ring
15:04:22 <HackEgo> Addition, subtraction and multiplication have a certain ring to them.
15:04:32 <mroman> `bf_textgen hello
15:04:33 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: bf_textgen: not found
15:04:41 <mroman> hm.
15:04:45 <mroman> `bfgen hello
15:04:46 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: bfgen: not found
15:04:52 <oerjan> `bf_txtgen hello
15:04:53 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: bf_txtgen: not found
15:04:57 <oerjan> oh hm
15:05:00 <oerjan> !bf_txtgen hello
15:05:04 <EgoBot> ​56 ++++++++[>+++++++++++++>+>><<<<-]>.---.+++++++..+++.>++. [241]
15:06:58 <oerjan> `run echo "There are two kinds of fields. Those where you can divide (except by zero), and those where you can conquer." >wisdom/field
15:07:01 <HackEgo> No output.
15:07:46 <ais523> I'm not quite sure how wisdom ended up full of abstract mathematical concepts
15:07:47 <ais523> but I approve
15:08:26 <mroman> 241 cells?
15:08:30 <mroman> or what is that number
15:08:49 <oerjan> probably number of execution steps.
15:09:08 <ais523> >><<
15:09:18 <oerjan> there are only 5 cells.
15:09:22 <ais523> I wonder how much better a bf_txtgen you could make
15:09:27 <mroman> well then I have some nasty bug :(
15:09:33 <mroman> !bf_txtgen a
15:09:35 <EgoBot> ​39 ++++++++[>++++++++++++>+>><<<<-]>+.>++. [90]
15:09:40 <ais523> also, what the shortest string is that it's undecidable what the shortest program to output it is
15:10:03 <Taneb> ais523, I think that's undecidable
15:10:23 <ais523> Taneb: yeah, I guess it is, but it still /exists/, despite being undecidable
15:10:36 <ais523> also, it's not necessarily undecidable, it's just not necessarily decidable
15:11:31 <mroman> ah, there we go.
15:11:31 <Taneb> My gut is telling me that any string you can write down, the problem of shortest program to output it is decidable, although perhaps difficult to automate
15:12:25 <fizzie> The number in []s is IIRC the generation number.
15:12:43 <fizzie> Related to the algorithm used.
15:12:51 <oerjan> Taneb: my get tells me your gut needs recalibration.
15:12:55 <oerjan> *gut
15:13:18 <elliott> Taneb: see kolgomorov complexity.
15:13:36 <elliott> Taneb: also "decidable but difficult to automate" is kind of incoherent...
15:14:04 <Taneb> My gut isn't very good at this
15:14:22 <ais523> Taneb: I disagree, I'd be surprised if it were more than, say, 510 characters (the length of an IRC line)
15:14:25 <ais523> and may well be a lot shorter
15:14:37 <mroman> http://esolangs.org/wiki/Burlesque#Brainfuck_Interpreter
15:14:44 <mroman> I must have been bored today :)
15:14:59 <FreeFull> The thing about kolgomorov complexity is that you can only get an upper bound
15:15:03 <FreeFull> It's useful anyway
15:15:03 <elliott> hmm, what happened to that halting analysis of BF programs we were going to do?
15:15:12 <elliott> I forget what the purpose was
15:15:24 <elliott> oh, we were trying to find the shortest BF program s.t. we didn't know whether it halted or not
15:15:31 <ais523> yeah, that sounds like an interesting problem
15:15:38 <elliott> by way of exhaustive search with a partial halting checker, and solving the ones it couldn't by hand, until we got stock
15:15:41 <elliott> *stuck
15:15:48 <ais523> elliott: that's how Wolfram found the 2,3 machine
15:16:00 <elliott> oh, cool
15:16:07 <ais523> not in terms of a halting checker, but in terms of finding a pattern that his program couldn't predict
15:16:12 <elliott> ais523: I bet you actually mean "someone Wolfram knew" though :P
15:16:12 <FreeFull> How far did you get?
15:16:15 <elliott> FreeFull: we didn't
15:16:17 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
15:16:25 <ais523> elliott: that's the sort of thing he usually did himself, actually
15:16:29 <ais523> just massive brute force searches
15:16:35 <ais523> he left proofs up to other people, though
15:16:50 <elliott> ais523: people like Alex Smith
15:17:02 -!- Phantom_Hoover has joined.
15:17:05 <ais523> (possibly for the best: one of the only proofs I think he did himself is both very short, and incorrect)
15:17:14 <ais523> (I managed to fix it, but didn't write the fix down)
15:17:22 * FreeFull looks at the 2,3 machine universality proof
15:17:47 <elliott> FreeFull: imo that proof is lame and the author stinks
15:17:56 <elliott> good thing they're not in #esoteric
15:18:40 <ais523> I've concluded that the proof is definitely correct, but there's quite some valid debate about what it actually proves
15:19:04 <ais523> and don't want to resubmit it to the journal until I've figured out what it is I'm trying to prove
15:19:13 * ais523 mentions http://esolangs.org/wiki/1cnis
15:19:24 <ais523> but I'm not convinced it actually solves the problem, for two different reasons
15:19:58 <elliott> ais523: oh, did they give up on accepting it?
15:21:09 <ais523> no
15:21:25 <ais523> they're still trying to get me to correct for their feedback and resubmit
15:21:35 <ais523> I want a paper that will satisfy other people too, though, rather than just them
15:22:19 <oerjan> he'll get it fixed just after implementing feather, don't you worry
15:22:46 * oerjan feels mean
15:24:15 <elliott> oerjan: I think that's GreyKnight's job now.
15:25:06 <Taneb> mroman, try writing a brainfuck interpreter in Fueue
15:27:50 <ais523> oerjan: you can blame the wolfram people for killing my motivation to work on it
15:27:53 <ais523> by being too pushy
15:28:30 <oerjan> ah. then i entirely sympathize.
15:31:53 <mroman> fueue
15:31:58 <mroman> is not in the wiki
15:32:16 <oerjan> mroman
15:32:24 <oerjan> is not very good at wiki searches
15:32:51 <Taneb> mroman, did you search for Feueu?
15:33:08 <Taneb> Because that doesn't exist and I use to make that mistake every time, and I created Fueue
15:33:14 <ais523> http://esolangs.org/wiki/Fueue
15:33:20 <mroman> nope
15:33:24 <ais523> yeah, first time
15:33:32 <ais523> I wrote the URL without even checking to see what the article was called
15:33:33 <mroman> seriously
15:33:36 <mroman> the fuck?
15:33:42 <ais523> it's not particularly unguessable
15:33:48 <ais523> did you search Wikipedia by mistake/
15:34:01 <mroman> oh
15:34:04 <mroman> yeah
15:34:07 <oerjan> maybe he seached ehsolahngs.ohrg
15:34:11 <mroman> i'm little bit legasthenic.
15:34:16 <mroman> so I searched for fuefue
15:34:17 <oerjan> *+h
15:35:30 <mroman> Taneb: If you write one in underload.
15:35:39 <oerjan> ah, stalemate.
15:35:58 <Taneb> (it's actually hypothetically possible to write a BF interpreter in Fueue)
15:36:16 <Taneb> (although ridiculously difficult)
15:36:24 <Taneb> (Underload lacks the IO capabilities
15:36:26 <Taneb> )
15:37:12 <mroman> No biggy.
15:37:31 <mroman> Just put IO somewhere.
15:38:03 <elliott> oerjan: well come to qwerty.com
15:38:13 <oerjan> elwat
15:38:29 <elliott> oh i meant to address that to ais523
15:38:32 <elliott> sorry
15:38:36 <elliott> ais523: well come to qwerty.com
15:38:59 <ais523> elliott: why do you want me to "come to" a domain name?
15:39:07 <ais523> normally I'd assume HTTP, but the way that's worded implies it isn't
15:39:09 <ais523> IRC?
15:39:39 <elliott> ais523: I was just well coming you!
15:40:00 <ais523> elliott: oh, I see
15:40:38 <ais523> you're complaining about a typo/bad grammar on a website, without sufficient context to make the fact you're doing that clear
15:40:54 * oerjan sees no well come on qwerty.com
15:41:06 <elliott> ais523: wrong again, sorry :(
15:41:21 <elliott> in fact I did not even know what content was hosted on qwerty.com when I sent that line
15:41:26 <ais523> well then I'm going to ignore you
15:41:27 <elliott> though curiosity got the better of me shortly after
15:41:34 <elliott> ais523: ok :(
15:41:40 <elliott> ais523: i'll miss you
15:41:42 <ais523> not /ignore
15:41:50 <ais523> just, not care about what you said, because I don't understand it
15:41:58 <olsner> hmm, apparently there's number keypad training
15:42:00 <elliott> that sounds like a convenient superpower
15:42:32 <oerjan> Careless Man
15:43:07 <olsner> I wonder if there's a thriving community of people developing alternative numpad layouts somewhere
15:46:49 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
15:53:05 <Taneb> Are pointers torsors?
15:54:39 <oerjan> wat.
15:54:58 <Taneb> I'm fairly sure I made none of those words up
15:55:21 <Taneb> http://ro-che.info/articles/2013-01-08-torsors.html
15:55:59 <oerjan> oh that sense. then yes.
15:56:09 * oerjan already has seen that article.
15:56:21 <oerjan> ignoring out of bounds errors.
15:57:10 <oerjan> and not being allowed to subtract pointers from different arrays.
15:57:38 <elliott> "yes except, no"
15:58:17 <oerjan> that is, pointers are torsors if you treat all of memory as one byte array with wrapping semantics for the addresses.
15:58:36 <Taneb> Yay
15:58:41 -!- Phantom_Hoover has joined.
15:58:45 <Taneb> Potentially useful for someone who isn't me!
16:01:13 <oerjan> does the memory layout of core war fit? only relative addressing iirc.
16:01:45 <Taneb> I don't know core war well enough to tell you
16:02:04 <oerjan> although i guess that means they _only_ store differences, and have no actual pointers as first class values
16:02:39 <oerjan> anyway ->
16:02:46 -!- oerjan has quit (Quit: leaving).
16:03:54 -!- Taneb has quit (Remote host closed the connection).
16:04:20 -!- Taneb has joined.
16:05:58 -!- aloril has quit (Ping timeout: 245 seconds).
16:18:32 -!- aloril has joined.
16:20:29 <elliott> @tell kmc http://i.imgur.com/Iyl5fm3.jpg
16:20:29 <lambdabot> Consider it noted.
16:22:14 -!- copumpkin has quit (Ping timeout: 252 seconds).
16:22:45 -!- copumpkin has joined.
16:41:23 -!- sebbu has quit (Ping timeout: 245 seconds).
16:41:34 <Taneb> "But as mathematicians and security agents made their way to New Jersey, a number of people began to smell something fishy"
16:42:01 -!- azaq23 has quit (Ping timeout: 256 seconds).
16:42:01 <elliott> Taneb: source?
16:42:47 <Taneb> The music of Primes by Marcus du Sautoy
16:43:15 <Taneb> That bit came from a description of an April Fool's prank that went horribly, horribly right
16:47:37 <Taneb> Enrico Bombieri claimed a physicist had solved the Reimann Hypothesis and everyone believed him
16:53:28 <Taneb> Aaargh, I just read "nomadic" as "monadic" and got really confused for a second
16:54:39 <Phantom_Hoover> Oh wow.
16:54:53 <Phantom_Hoover> Oliver Smoot ended up being chairman of both ANSI and ISO.
16:55:44 <ais523> simultaneously?
16:55:51 <Phantom_Hoover> No, consecutively.
16:57:29 <Taneb> Was he the guy with the bridge?
16:58:31 <Phantom_Hoover> Yes.
17:04:49 -!- sebbu has joined.
17:17:09 <kmc> @messages
17:17:09 <lambdabot> elliott said 56m 40s ago: http://i.imgur.com/Iyl5fm3.jpg
17:17:30 <kmc> elliott: yeah wtf
17:17:43 <elliott> you're welcome
17:17:56 <elliott> I like "Klout has created Page Rank for people"
17:18:02 <elliott> well... done?
17:18:03 <ais523> `quote
17:18:05 <HackEgo> 755) <elliott_> (help why are german) <monqy> i play the german version of crawl <elliott_> i
17:18:38 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
17:19:16 <kmc> it's getting harder to make fun of this stuff, when I say "bro down and crush code" i thought it was a ridiculous overexaggeration
17:19:30 <kmc> that said, the sign is from 2 years ago
17:19:43 <kmc> and they were roundly ridiculed for it then too
17:19:50 <elliott> well what is time
17:19:54 <elliott> imo: an illusion
17:19:58 <kmc> taking away the moments that make up the dull day
17:20:03 -!- aloril has quit (Ping timeout: 276 seconds).
17:20:08 <elliott> isn't it "ticking"
17:20:15 -!- Vorpal has joined.
17:20:20 <Taneb> elliott, I think it's more like a burrito
17:20:32 <Taneb> If you have too much of time you get ill
17:20:37 <Taneb> But damn it felt good
17:21:13 <Taneb> You only get out what you put in, unless your time was made by someone else, which isn't as fun
17:23:02 <ais523> burritos don't work like that!
17:28:59 <kmc> elliott: maybe
17:32:19 -!- aloril has joined.
17:32:52 <Taneb> ais523, am I thinking of tacos?
17:34:49 <kmc> elliott: maybe it's unfair to make fun of klout 2 years after they apologized, but on the other hand it does please me that the reputation damage from these things is long lasting
17:37:27 <Phantom_Hoover> wait
17:37:30 <Phantom_Hoover> what was the apology
17:37:43 <Phantom_Hoover> "we're sorry we put out ads that made us look like idiots"
17:38:02 <elliott> kmc: isn't there a more fundamental problem in the form of the fact that klout is also inherently such bullshit
17:38:11 <elliott> and therefore deserving of mockery regardless of their recruiting practices anyway!
17:39:52 <Phantom_Hoover> oh wait was it because they used the black power fist
17:40:01 <elliott> Phantom_Hoover: i assume it was something along the lines of "sorry for putting out a terrible sexist ~brogrammer~ recruitment ad" except less sincere
17:40:45 <Phantom_Hoover> Er, that really doesn't seem like the sort of thing for which a company would issue a direct apology.
17:41:03 <Phantom_Hoover> Unless there was a really massive outcry, in which case they might do a "sorry you were offended".
17:41:10 <kmc> lmgtfy
17:41:20 <elliott> well
17:41:21 <elliott> 17:19:30 <kmc> that said, the sign is from 2 years ago
17:41:21 <elliott> 17:19:43 <kmc> and they were roundly ridiculed for it then too
17:41:31 <kmc> http://corp.klout.com/blog/2013/01/moving-past-brogramming/ hm a new post
17:41:31 <elliott> i assume there was at least some kind of outcry involved in that
17:41:35 <kmc> i guess because it's going around again
17:42:05 <elliott> Phantom_Hoover: anyway yes "sorry you were offended" is what I meant by "except less sincere"
17:42:05 <Phantom_Hoover> Right but like I said, ridicule doesn't really make for apologies.
17:42:08 <elliott> SORRY YOU MISINTERPRETED ME
17:43:28 <kmc> the say the company is 30% women now, but I would be curious to know about engineering / technical roles
17:44:35 <kmc> anyway i can't find the original apology so sorry
17:44:51 <elliott> "Kloutlaws"
17:44:54 <elliott> "Kloutlaws"
17:44:56 <elliott> "Kloutlaws"
17:44:57 <elliott> "Kloutlaws"
17:45:00 <kmc> yeah
17:45:50 -!- aloril has quit (Ping timeout: 244 seconds).
17:50:05 <elliott> anyway maybe if klout did anything of value I would not mock them
17:50:20 <elliott> though this is my first time I have mocked klout I think!!! a first time for everything
17:50:43 -!- sebbu has quit (Ping timeout: 260 seconds).
17:52:59 -!- zzo38 has joined.
17:55:43 <kmc> i would still mock them for that poster
17:56:34 <kmc> i've said it before but: startup hackers are allegric to professionalism for the same reason nerds are allergic to sports
17:56:43 <kmc> backlash against a (real or perceived) past aggressor
18:00:02 <Phantom_Hoover> don't worry kmc, we don't expect you to avoid saying something you've said before
18:00:07 <kmc> good
18:00:13 <kmc> i like repetition, it is so easy
18:01:56 -!- sebbu has joined.
18:01:56 -!- sebbu has quit (Changing host).
18:01:56 -!- sebbu has joined.
18:02:54 -!- aloril has joined.
18:03:08 -!- variable has changed nick to trout.
18:15:14 -!- Bike has joined.
18:28:06 -!- AnotherTest has joined.
18:39:30 <oklopol> "<Taneb> My gut is telling me that any string you can write down, the problem of shortest program to output it is decidable, although perhaps difficult to automate" obviously yes
18:39:50 <oklopol> probably most of them aren't provable in your favorite logic though
18:42:01 <oklopol> ais523: maybe you could prove your machine is p complete?
18:45:53 -!- gadis has joined.
18:51:43 <fizzie> Okay, so I fiddled a bit with RRDtool. This is very much work-in-progress, but here's a sneak preview: http://zem.fi/esostats/
18:51:43 -!- gadis has quit (Read error: Connection reset by peer).
18:51:51 <fizzie> (And off to the sauna. ->)
18:52:12 <oklopol> also what exactly did cook prove?
18:52:16 <oklopol> for 110
18:53:01 <elliott> universalislaijelijrlijtylijy or something?
18:53:02 <elliott> "idk"
18:54:04 <elliott> fizzie: apparently "z" had a spike of popularity in 2005
18:54:15 <elliott> and "q"s popularity has been steadily increasing over the years
18:54:15 <oklopol> yeah and o had one near 2003
18:54:25 <elliott> with a spike in sep/oct last year
18:54:28 <elliott> *sept?
18:54:35 <oklopol> who knows
18:55:30 <oklopol> i don't get it, there are clear mathematical definitions for when a set is computationally hard, and then people write these insanely complicated constructions and don't bother to check what they actually prove
18:55:49 -!- sebbu2 has joined.
18:55:49 -!- sebbu2 has quit (Changing host).
18:55:49 -!- sebbu2 has joined.
18:55:51 <coppro> oklopol: in what context?
18:55:58 <coppro> estoeric languages or CS generally?
18:57:39 <oklopol> in the context that i just scrolled through the paper that "proves rule 110 is universal", and there is not a single theorem. presumably it does explain what exactly is proven in the text though, i should probably at least read the intro.
18:58:00 -!- sebbu has quit (Ping timeout: 256 seconds).
19:00:01 <elliott> oklopol: have you read ais' paper
19:00:03 <ais523> oklopol: hmm, I'm not sure; the problem is the 2,3 machine takes ever expanding memory to accomplish anything (and this is trivially easily provable)
19:00:18 <oklopol> i have not
19:00:23 <elliott> oklopol: imo read it
19:01:02 <oklopol> i have many things i should read
19:01:04 <oklopol> :/
19:02:06 -!- Nisstyre-laptop has joined.
19:02:28 -!- sebbu2 has changed nick to sebbu.
19:02:37 <elliott> oklopol: it's short!
19:02:41 <elliott> won't you have fun
19:02:53 <oklopol> yeah i can't really find what cook's paper proves
19:05:14 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
19:05:29 <oklopol> "So one undecidable question is, 'Will the following glider ever appear?'"
19:06:02 -!- Phantom_Hoover has joined.
19:06:03 <oklopol> the fuck is that supposed to mean?
19:07:39 <kmc> is the rule 110 proof one of those with a computable but non-repeating initial state?
19:08:01 <oklopol> who knows
19:08:14 <elliott> kmc: I think that's just ais523's
19:08:27 <kmc> is the proof still being suppressed by the mathematica secret police?
19:08:42 <oklopol> http://www.complex-systems.com/pdf/15-1-1.pdf
19:08:52 <oklopol> if you can make sense out of that, do tell
19:09:30 <oklopol> http://www.cs.may.ie/~tnaughton/abc/download/dw15.pdf here's p completeness, which actually means somethin
19:09:31 <oklopol> g
19:13:03 <ais523> kmc: the rule 110 initial state is repeating
19:13:11 <ais523> although not repeating zeros, it's quite a complex repeating pattern
19:14:41 <oklopol> repeating in what sense?
19:15:01 <oklopol> eventually periodic in both direction, that is, of the form ...uuuvwww...?
19:15:04 <oklopol> *directions
19:15:06 <ais523> yeah, uuuvwww
19:15:30 -!- Taneb has quit (Quit: Leaving).
19:15:42 <oklopol> so given u, v, w, u', v', w', it is undecidable whether ..uuuvwww... eventually evolves into ...u'u'u'v'w'w'w'...?
19:15:58 <oklopol> is that what they prove
19:21:38 <coppro> oklopol: CS academia is stupid
19:22:09 <ais523> oklopol: well, the programmer's point of view is "you're simulating the execution of another program, and anything on that program can be mapped onto this one"
19:22:18 <ais523> I think what you do is you define an easily observable halt state
19:22:27 <ais523> and prove it's undecidable whether that is reached
19:22:40 <ais523> for the rule 110 automaton, it would be of the form "the sequence q doesn't appear anywhere on the tape"
19:22:58 <ais523> the halt state works much more neatly for the 2,3 machine, we use a half-infinite tape
19:23:01 <ais523> falling off the end = halt state
19:26:49 <oklopol> prove it's undecidable whether that is reached from what?
19:27:17 <oklopol> cellular automata have infinite configurations
19:28:19 <oklopol> i agree that from a terrible writer's point of view, it's enough to write the construction, as everyone who reads every last detail of it will know what it does or does not prove.
19:30:32 <oklopol> (which is not what you said, the agreeing was just a common assholing technique)
19:31:20 <ais523> oklopol: actually, I think what you do is, you prove that that configuration is reached if and only if you're encoding a TM that halts into the initial tape
19:31:37 <ais523> at least that's what I did
19:34:10 <oklopol> and that is fine and well once you actually say what kind of initial tapes you have
19:34:31 <oklopol> say, eventually periodic points.
19:34:47 <oklopol> (the ...uuuvwww... kind)
19:35:28 <ais523> oklopol: actually what I was working on before I stopped for the 2,3 proof was a precise definition of what sort of initial tape I had
19:37:41 <oklopol> i have no qualms with you, i have qualms with cook who seems to have a clear problem he has solved but doesn't explain what. you have trouble figuring out what you can solve, that's not laziness, that just means math is being a bitch.
19:38:07 <ais523> oklopol: anyway I didn't resubmit the paper because of that
19:38:20 <ais523> specifically, my situation is that I'm pretty certain I've proved something, just am not sure what
19:38:48 <oklopol> yeah
19:41:18 <ais523> re the topic, is goat-time like space-time except with goats instead of space?
19:41:28 <oklopol> is 1cnis enough for your proof?
19:41:58 <oklopol> also are you familiar with substitutions and their fixed points, because i'm wondering if 1cnis has something to do with those
19:52:24 <ais523> oklopol: I don't know if 1cnis is enough
19:52:35 <ais523> that's what I've been "trying to establish" for well over a year now
19:58:05 <ais523> the problem is generating nested loops
19:59:10 -!- Taneb has joined.
19:59:52 -!- ogrom has quit (Quit: Left).
20:07:29 -!- oerjan has joined.
20:14:19 -!- ogrom has joined.
20:14:30 -!- mekeor has joined.
20:18:04 <oklopol> have you looked at fixed points of substitutions?
20:19:07 <oklopol> (i have little knowledge about their computational properties)
20:19:22 <ais523> oklopol: not really
20:20:46 <oklopol> they are infinite sequences with a finite description and some sort of nested things.
20:21:06 <ais523> 1cnis is pretty much like that
20:22:39 <oklopol> yeah that's why i asked
20:22:57 <oklopol> but i was too lazy to read 1cnis's description for now, perhaps later
20:44:05 -!- evincar has joined.
20:45:39 -!- DHeadshot has joined.
20:45:42 -!- DHeadshot has quit (Remote host closed the connection).
20:45:50 <Sgeo> http://www.thebands.biz/article/simcity-mayor-under-fire-for-excessive-use-of-eminent-domain/
20:46:18 -!- DHeadshot has joined.
20:48:17 <AnotherTest> Does anyone know who this guy was that didn't use an actual IRC client but used telnet instead? I remember being told about this by someone.
20:48:49 <elliott> zzo38?
20:48:50 <kmc> that's annoying because you have to respond to PINGs
20:48:56 <elliott> he sort of has a client
20:49:00 <elliott> it's written in php and outputs in coloured raw irc format
20:49:21 <AnotherTest> kmc: I imagine it is
20:55:53 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
20:56:30 -!- Nisstyre-laptop has joined.
20:56:35 <ais523> AnotherTest: I can IRC through telnet/netcat just fine
20:56:43 <ais523> I normally don't, sometimes I do it when I need a second connection, or just to show off
20:57:31 <ais523> it's really not very hard at all
20:57:41 <ais523> it's like all these old protocols, they were designed to be done by hand I think
20:57:54 <ais523> as well as via clients
20:58:16 <AnotherTest> Yes, for sure. I guess you could even make the PING replies to automagically
20:58:43 <ais523> AnotherTest: that's pretty much what zzo38's client does
20:58:53 <ais523> the other thing you want is a separate echo area for where you're typing
20:59:02 <ais523> it's very distracted for other peoples' lines to appear in the middle of yours
20:59:11 <ais523> err, distracting
21:00:23 <AnotherTest> Actually, writing an IRC client isn't very hard
21:00:27 <AnotherTest> not hard at all
21:00:47 <AnotherTest> Anyway, I was just wondering
21:01:02 <AnotherTest> because some people where asking why anyone would do it
21:01:16 <AnotherTest> (and who would überhaubt do it)
21:04:53 <zzo38> What my client does is if it receives anything, it deletes what you have typed, outputs what it receives, and then puts your input back onto the screen so that you can continue.
21:12:49 <oerjan> <elliott> zzo38? <-- i think Gregor also tried it?
21:13:35 <Gregor> I wrote a raw IRC client.
21:13:38 <Sgeo> help I just arranged to speak with someone about a job and only now noticed that it's on the other side of the country
21:13:44 <Gregor> I still use it now and then.
21:13:48 <Sgeo> (The job, that is. Not where I'd be speaking. It would be a phone conversation)
21:13:58 <Gregor> Sgeo: Enjoy the move.
21:14:20 <Sgeo> Gregor, not necessarily going to move unless it's a really good offer
21:14:34 <Sgeo> Even then.. I feel uneasy with that
21:14:42 <Gregor> Why?
21:15:08 <oerjan> Sgeo: aren't you basically pining for an opportunity to become more independent?
21:15:14 <zzo38> Gregor: Is it the one called "rawirc"? I have seen that one, although it lacked some things
21:15:42 <Sgeo> I'm not pining for an opportunity to put a very large distance between me and all of my friends
21:15:47 <Sgeo> And between me and my girlfriend
21:16:24 <oerjan> oh. i keep forgetting people have rl friends. carry on then.
21:16:47 <oerjan> (ok i have one, i think)
21:16:50 <Gregor> zzo38: Yup.
21:17:04 <evincar> Sgeo: Can you work remotely and come in to the brick-and-meatsuit office occasionally?
21:17:10 <Gregor> oerjan: I have IRL friends. I live thousands of miles from them.
21:17:20 <Gregor> "Brick-and-meatsuit"
21:17:21 <Gregor> Wow.
21:17:24 <oerjan> Gregor: fancy
21:17:36 <Sgeo> evincar, I guess that would be a thing for discussion
21:17:43 -!- SirCmpwn has quit (Excess Flood).
21:17:56 <Sgeo> Except for "All positions are at our Menlo Park, CA location."
21:17:57 <oerjan> Gregor: lady gaga is their suit designer.
21:18:08 <evincar> Oh. :(
21:18:10 <evincar> That country.
21:18:25 <evincar> Well, I moved from New Hampshire to California for a job.
21:18:30 <evincar> And am away from my girlfriend.
21:18:32 <evincar> So...
21:18:40 <evincar> ...wouldn't recommend it.
21:18:50 <oerjan> Sgeo: maybe you'll meet edison's ghost
21:19:06 <Sgeo> This company seems amazing though https://www.transcriptic.com/
21:19:32 <evincar> Hey look bootstrap.
21:19:36 <Sgeo> https://www.transcriptic.com/about/jobs
21:20:51 <evincar> Looks pretty neat.
21:20:56 -!- SirCmpwn has joined.
21:21:07 <zzo38> Yes, rawirc has no macros, filters, settings, etc; many things it doesn't do, so it seems not a very good IRC client to me
21:22:09 -!- monqy has joined.
21:24:20 <pikhq> As I recall, it was more an interesting exercise than anything else.
21:24:37 -!- AnotherTest has quit (Quit: Leaving.).
21:26:17 <Sgeo> (It doesn't entirely help that I don't know how I feel about my gf)
21:26:39 <Sgeo> Yay let's start ranting about my personal problems in #esoteric publically logged again
21:27:04 <pikhq> I'll just note that long-distance relationships kinda suck.
21:27:29 <pikhq> Not that that should stop you, *but* just accept it'll be a bit of suckitude you have to deal with.
21:27:45 <Sgeo> I feel weird about the idea of staying here if my only reason for doing so was her, especially since I'm still not sure I feel that strongly
21:27:58 <Sgeo> I don't want to make this sort of decision
21:28:19 <Gregor> <Sgeo> Except for "All positions are at our Menlo Park, CA location." // You're complaining about potentially moving to MENLO PARK???
21:28:44 <Sgeo> Wait, what's so great about Menlo Park in particular?
21:28:52 <Gregor> Nothing, but it's the bay area.
21:29:46 <pikhq> So, nothing great about Menlo Park in particular, but it's in the right region of California? K.
21:36:14 -!- Taneb has changed nick to TAaneEb.
21:36:46 -!- TAaneEb has changed nick to Taneb.
21:37:42 -!- Taneb has quit (Remote host closed the connection).
21:40:04 <Sgeo> What's so great about the bay area?
21:40:41 <pikhq> It's programmer Mecca. :P
21:42:48 <Sgeo> Just found an airline price fare comparer thingy
21:43:13 <Sgeo> It apparently works by popups
21:43:22 <coppro> google.com/flights
21:44:09 <Sgeo> ooh ty
21:46:54 <Gregor> I like hipmunk.com
21:53:22 <Phantom_Hoover> http://en.wikipedia.org/wiki/JFK:_Reloaded
21:53:29 <Phantom_Hoover> oh dear i never realised this was from scotland
21:54:55 <evincar> Menlo Park is pretty expensive to live in.
21:55:38 <Gregor> Phantom_Hoover: lol, that is absolutely delightful.
21:55:40 <evincar> The Caltrain is okay for anything along the main backbone of the peninsula though.
21:55:44 <Gregor> Can't wait for the 9/11 flight simulator.
21:55:53 <evincar> So you don't really need a car.
21:56:09 <evincar> I'm within walking distance of work in a not-too-expensive city though.
21:56:11 <evincar> (Burlingame)
21:56:13 -!- ogrom has quit (Quit: Left).
21:56:21 <evincar> Though though though.
21:57:32 <evincar> Also does it make sense to implement sum types in terms of union and product?
21:57:41 <Sgeo> It's not like I have a "real" interview yet
21:57:55 <Sgeo> It's just a phone call to talk about my background
21:58:52 <oerjan> evincar: a struct with a tag and a union is more or less the usual implementation, no?
21:59:14 <evincar> oerjan: Yeah just making sure it didn't sound stupid when put in writing.
22:00:44 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
22:00:48 <evincar> But I dunno if the tag is really a value or type or what.
22:01:06 <evincar> Compile-time value.
22:01:23 <evincar> I mean when it comes to e.g. totality checking.
22:01:37 <evincar> I don't like how in Haskell I can't make an ad-hoc subset of a sum type.
22:02:44 -!- Phantom_Hoover has joined.
22:03:00 -!- WeThePeople has joined.
22:03:27 <evincar> E.g. data ABC = A | B | C; a x = case x of { A -> "a"; _ -> bc x }; bc x = case x of { B -> "b"; C -> "c" }
22:04:42 <evincar> bc :: ABC -> String but should :: (B | C) -> String
22:05:19 <evincar> Supersets I'm not as sure about.
22:05:28 <evincar> Because it implies you can mix constructors from different data types.
22:05:32 <zzo38> I did once think of a kind of type system which would allow such things, as well as some other things
22:05:33 <evincar> Or that data types are entirely ad-hoc.
22:05:45 <evincar> Which I'm pretty sure is not decidably inferable.
22:05:48 <evincar> But probably checkable.
22:05:53 <oerjan> evincar: i am talking about C structs. i think if you want to express a sum type in a _type safe_ way without building it in as a primitive, then you need dependent typing.
22:05:56 <zzo38> But is different and might not be suitable for all of the same things, and I also don't know if it work.
22:06:19 <elliott> oerjan: (forall r. (a -> r) -> (b -> r) -> r) ~ Either a b
22:06:23 <elliott> or are we disallowing rank-2?
22:06:34 <oerjan> elliott: oh hm i guess
22:06:47 <elliott> that's just your standard church encoding I think
22:06:57 <elliott> (forall r. (a -> b -> r) -> r) gets you (a,b)
22:06:58 <oerjan> evincar: ok so elliott's method works.
22:07:17 <elliott> I have no idea the context, by the way.
22:07:35 <oerjan> elliott: but safely typing the actual struct memory layout you would use in C requires dependent typing, i think.
22:07:41 <evincar> Working on a language. Considering implementing sums in terms of unions & products.
22:07:47 <elliott> oerjan: right
22:08:21 <elliott> oerjan: well, not quite, actually. I think GADTs are enough
22:08:34 <evincar> So pseudocode Maybe a = Nothing \/ (Just, a)
22:08:38 <monqy> evincar: do you mean c unions or are you actually putting something analogous to c unions in your language
22:08:43 <kmc> Menlo Park? fuck the south bay
22:08:49 <kmc> that's like 30 miles from a real city
22:09:05 <elliott> oerjan: data Union a b c where { L :: a -> Union a b a; R :: b -> Union a b b } -- assume a tag-free runtime representation of this type
22:09:22 <evincar> monqy: I mean union types in the type-theory sense.
22:09:32 <Gregor> "Sir, do you know how fast you were going?" "Um, 97?" "*whew*, that's a relief. Radar gun's working. Thanks for your cooperation."
22:09:33 <elliott> evincar: what
22:09:39 <elliott> oerjan: data Tag a b c where { TagL :: Tag a b a; TagR :: TagR a b b }
22:09:45 <evincar> In particular idempotent: a \/ a = a
22:09:53 <elliott> oerjan: data Either a b where { Either :: Tag a b c -> Union a b c -> Either a b }
22:09:56 <elliott> oerjan: or such
22:10:01 <evincar> elliott: Yes what.
22:10:02 <kmc> Sgeo: south bay is suburban sprawl, don't make the mistake of thinking that anything in the "SF bay area" is like SF
22:10:16 <elliott> evincar: what do you mean by type theory union and how does it differ from a sum type
22:10:21 <oerjan> evincar: btw i think ocaml has at least one way of treating sum types so that you can do subsets
22:10:47 <Bike> i thought a union type was, like, untagged sum...
22:10:53 <evincar> elliott: Sums are disjoint. I can differentiate the Ints in data AB = A Int | B Int
22:10:56 <monqy> elliott: union and intersection types are a "thing"
22:11:00 <Bike> right
22:11:09 <evincar> But could not differentiate them in Int \/ Int because they are the same.
22:11:09 <Bike> set theory all up in this
22:11:21 <elliott> monqy: yes I know...
22:11:21 <monqy> elliott: but imo it's an incredibly dumb dumb dumb foundation
22:11:22 <evincar> If you treat types as sets which you sorta can.
22:11:25 <elliott> monqy: does evincar know
22:11:35 <evincar> It seems really problematic. :(
22:11:37 <Bike> why's it dumb?
22:11:42 <monqy> Bike: have you seen them
22:11:48 <FreeFull> elliott: What does that say? Either is a constructor that takes a Tag and an Union?
22:11:54 <elliott> FreeFull: yes
22:12:01 <FreeFull> Is that a specialisation, or a general statement?
22:12:04 <kmc> as for "programmer mecca" it's also the epicenter of the worst excesses of hacker culture, an environment which rewards these things rather than providing a reality check
22:12:04 <Bike> monqy: in C I guess
22:12:05 <elliott> and it uses GADT type magic to tie the tag's value and the union's branch together
22:12:09 <elliott> so you can store Union without a tag
22:12:23 <elliott> (this won't happen in practice, but it provides a /typing/ for this C-style sum type construction mechanism)
22:12:33 <elliott> oh wait.
22:12:37 <elliott> oerjan: Either can be simplified vastly of course
22:12:46 <elliott> oerjan: data Either a b where { Either :: Tag a b c -> c -> Either a b }
22:12:57 <elliott> there you *do* get the effectively "unboxed" representation.
22:13:17 <FreeFull> elliott: What does c represent? The choice between element a and b?
22:13:51 <elliott> if you use TagL, then c is fixed to a
22:13:56 <elliott> if you use TagR, then c is fixed to b
22:13:58 <elliott> so yes, effectively
22:14:02 <elliott> Either is an existential type there
22:14:26 <FreeFull> And both TagL and TagR are Tag?
22:14:34 <elliott> are Tag howso?
22:14:37 <elliott> TagL :: Tag a b a
22:14:40 <elliott> TagR :: Tag a b b
22:14:40 <FreeFull> I see
22:15:22 <FreeFull> So would an example usage be Either TagL "something"
22:16:18 <Sgeo> Even without this thing, I still feel weird for gf related reasons
22:16:26 <Sgeo> Pretty sure she loves me much more than I like her
22:16:35 -!- Taneb has joined.
22:16:52 <monqy> woops
22:16:54 <Phantom_Hoover> Sgeo, wow the wording in that sentence...
22:18:00 <Sgeo> Yay more Sgeo's personal life
22:19:13 <Phantom_Hoover> You're making progress!
22:19:23 <FreeFull> elliott: What happens if both a and b are the same type?
22:19:39 <Sgeo> Also I should not be discussing my life in a publically logged channel
22:19:45 <elliott> FreeFull: TagL :: Tag Int Int Int; TagR :: Tag Int Int Int
22:19:47 <evincar> It seems like nothing in particular happens.
22:20:03 <elliott> oerjan: oh I guess Tag is sort of a sum type :P
22:20:07 <Phantom_Hoover> Sgeo, especially one in which your name, university and general area are known.
22:20:20 <elliott> oerjan: but runtime-wise, it's just Bool.
22:20:38 <elliott> as opposed to (Either a b) which has the actual value
22:20:42 <FreeFull> Wait, they're both constructors. Nevermind
22:21:35 <FreeFull> Either TagL x = Left x; Either TagR x = Right x or something
22:23:52 <elliott> yes
22:24:38 -!- saijanai_ has quit (Quit: saijanai_).
22:27:17 <oerjan> elliott: pretty
22:27:28 <elliott> oerjan: ty
22:30:13 <oerjan> so in principle you could probably split any adt and maybe gadt into gadt parts where each part was essentially a tag (no arguments to constructors) or a product (only one constructor for the gadt)
22:32:03 <monqy> pretty lame principle imo
22:32:18 <elliott> monqy: whats lame about it
22:32:41 <elliott> oerjan: well, you can turn into any gadt into a possibly-existential type given type equality
22:32:45 <elliott> (value or constraint level)
22:32:51 <elliott> so it should work for pretty much anything
22:33:22 <elliott> oerjan: in fact I think my Tag type may be enough to do anything you want
22:35:20 <monqy> elliott: i dont really know how to describe it........maybe its just a bad ol gut feeling
22:35:44 <shachaf> /last covariant
22:35:47 <shachaf> Er.
22:35:52 <shachaf> Well, I guess I said it in here too.
22:36:10 <elliott> monqy: well we have a "use-case"
22:36:17 <elliott> i.e. compiling down to C structs/unions
22:41:03 <oerjan> `addquote <elliott> well what is time <elliott> imo: an illusion [...] <Taneb> elliott, I think it's more like a burrito <Taneb> If you have too much of time you get ill <Taneb> But damn it felt good <Taneb> You only get out what you put in, unless your time was made by someone else, which isn't as fun <ais523> burritos don't work like that!
22:41:07 <HackEgo> 940) <elliott> well what is time <elliott> imo: an illusion [...] <Taneb> elliott, I think it's more like a burrito <Taneb> If you have too much of time you get ill <Taneb> But damn it felt good <Taneb> You only get out what you put in, unless your time was made by someone else, which isn't as fun <ais523> burritos don't work like that!
22:41:13 <ais523> oerjan: oh, that reminds me
22:41:29 <ais523> we managed to get the line ", as time itself is only an abstract approximation" into our most recent paper
22:41:37 <ais523> actually my supervisor wrote it and probably didn't realise how profound it sounded
22:41:59 <oerjan> excellent
22:42:07 <ais523> not sure if it'll be accepted
22:42:52 <shachaf> `?hh thyme
22:42:54 <HackEgo> thyhme? ¯\(°_o)/¯
22:42:57 <shachaf> `?hh oregon
22:42:59 <HackEgo> Ohrehgohn ihs the hohme ohf Ohrehgahno. Grehgohr uhsehd to tahke cahre ohf the cohlohr schehme, buht thehn he lehft.
22:43:11 <shachaf> `learn Thyme itself is only an abstract approximation of oregano.
22:43:15 <HackEgo> I knew that.
22:43:25 <ais523> that won't be funny out of context
22:43:41 <ais523> it's not particularly funny even in context
22:43:55 <fizzie> shachaf: Did you see the h-peak in http://zem.fi/esostats/charfreq_h.html there?
22:44:52 <shachaf> Oh, fizzie++
22:44:57 <ais523> …we have a page dedicated to how often the letter h is used?
22:45:04 <ais523> also, what causd it?
22:45:07 <ais523> or don't we know?
22:45:24 <fizzie> ais523: All the bin/?hh bin/h etc. mess yesterday, I'm pretty sure.
22:45:31 <shachaf> We have a page for every letter, apparently.
22:45:32 -!- carado has quit (Remote host closed the connection).
22:45:38 <ais523> fizzie: I missed that
22:45:41 <ais523> and somehow I'm glad I missed it
22:45:45 <fizzie> The other letters would feel bad if only h had a page.
22:45:56 <shachaf> `?hh ais523
22:45:57 <Taneb> There's also been a spike in the usage of HackEgo
22:45:57 <fizzie> ais523: ITYM "mihssehd" HTH HAND
22:45:57 <HackEgo> Ahgehnt "Iä" Smihth ihs ahn ahliehn wihth a strahnge ahllehrgy to ahviahn bohdy cohvehrihng, whihch he ihs tryihng to rehtroahctihvehly prehvehnt frohm ehvehr ehvohlvihng.
22:46:45 <ais523> does that just add an "h" after every vowel?
22:46:50 <oerjan> http://zem.fi/esostats/charfreq_ø.html doesn't exist, it's outrageous!
22:46:55 -!- carado has joined.
22:47:05 <fizzie> ais523: Between (approximately) every vowel-consonant pair.
22:47:05 <Phantom_Hoover> ais523, in the middle of every vowel-consonant pair
22:47:30 <ais523> right
22:47:36 <ais523> almost the same except when you have multiple vowels in a row
22:47:44 <oerjan> nice spike in http://zem.fi/esostats/charfreq_q.html
22:47:56 <elliott> i mentioned that spike
22:47:58 <elliott> i dont understand it
22:48:01 <Taneb> What happened in early october
22:48:04 <kmc> hhuhhuhuhhuhhuhuhhuhhuhuhhuhhuhuhhuhhuhuhhuhhuhuhhuhhuhuhhuhhuhu
22:48:26 <FreeFull> I was thinking about ten's complement arithmetic, and what it would mean to have something like :5:382.3 where the part between :: repeats forever
22:48:29 <ais523> hmm… do BF Joust program names cause spikes in the stats?
22:48:35 <ais523> they probably cause spikes in "j"
22:48:43 <Taneb> <elliott> qqqqqqqqqqqqqqqqqqqqqqqqqqqqqq q qqq qq
22:48:45 <monqy> elliott: could that have been one of those days when you spammed q a lot
22:48:46 <Bike> FreeFull: 10-adic?
22:48:51 <Taneb> That may have been it
22:49:01 <elliott> monqy: i don't spam it that much
22:49:02 <elliott> qqqqqqqqqqqqq
22:49:07 <elliott> just sometimes when the urge strikes me
22:49:09 <elliott> the qs start flowing
22:49:10 <oerjan> `pastelogs qqqqqqqqq
22:49:12 <shachaf> http://zem.fi/esostats/charfreq_x.html
22:49:15 <FreeFull> I wonder what a good name would be for the quantity you need to add to get zero
22:49:21 <evincar> FreeFull: You could get that kind of number by reversing the digits in a rational?
22:49:26 <shachaf> I'm almost tempted to look up logs for the x spikes.
22:49:27 <evincar> Is that a meaningful operation?
22:49:32 <FreeFull> For example, 0 - :3: = :6:7
22:49:32 <Taneb> http://codu.org/logs/log/_esoteric/2012-10-14
22:49:41 <HackEgo> No output.
22:49:45 <Bike> FreeFull: are you not describing 10-adic arithmetic
22:49:45 <oerjan> `pastelogs qqqqqqqqq
22:49:51 <Taneb> That's where the q-spike comes from
22:50:02 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.6327
22:50:07 <FreeFull> :0:384 is a standard positive number, :9:374 can be thought to describe a negative number
22:50:16 <shachaf> Taneb: Can you look up the x spikes?
22:50:20 <monqy> 02:02:06: <monqy> whitespacer: i think elliott wants something from you
22:50:20 <monqy> 02:02:08: -!- ais523 changed the modes of #esoteric: +m
22:50:20 <monqy> 02:02:19: -!- ais523 changed the modes of #esoteric: -m
22:50:20 <monqy> 02:02:26: <monqy> it's like when a baby cries but it's elliott and q
22:50:20 <FreeFull> I have no idea what :5:43 is, but you can still do arithmetic with it just fine
22:50:29 <monqy> 02:02:44: <monqy> and you don't know if the baby wants food or diapers or what
22:50:29 <fizzie> shachaf: There's a lot of fungot underload stuff with 'x's in them in 2012-10-25.
22:50:30 <fungot> fizzie: in a repl fashion by specifying the language mzscheme use the except form. get the pdf at http://www.unmutual.info/ documentation/ sicp.pdf, the html version is pretty slow
22:50:35 <Bike> no, seriously, don't reinvent p-adics, they're right there.
22:50:36 <Taneb> http://codu.org/logs/log/_esoteric/2012-10-25
22:50:36 <ais523> if I +m the channel
22:50:41 <ais523> either I'm trying to stop a botloop
22:50:43 <Taneb> The october x-spike
22:50:49 <ais523> or something really badly is happening
22:51:02 <ais523> punctuation marks might be more interesting, actually
22:51:03 <elliott> oh
22:51:04 <elliott> it was the navi guy
22:51:08 <ais523> because they tend to reflect esolang syntax
22:51:09 <Taneb> http://codu.org/logs/log/_esoteric/2012-04-28
22:51:10 <elliott> i agree ais523, something really bad happened that day
22:51:14 <Taneb> The april x-spike
22:51:16 <elliott> navi guy joined the channel
22:51:34 <Taneb> <shubshub> ELLIOT SHUT THE FUCK UP
22:52:07 <elliott> im here when desperate measures must be taken
22:52:08 <ais523> elliott: which day was that?
22:52:12 <elliott> involving lots of letters
22:52:15 <elliott> adjacent to one another
22:52:21 <FreeFull> Bike: Isn't p-adics for prime bases only
22:52:22 <elliott> ais523: 2012-10-14 apparently
22:52:30 <ais523> btw, how annoyed are you when people misspell your name?
22:52:57 <Taneb> oerjan helps, elliott
22:53:01 <Taneb> End of http://codu.org/logs/log/_esoteric/2012-09-02
22:53:08 <Bike> FreeFull: doing it with non-primes doesn't work as well but is still what you are describing
22:53:11 <elliott> ais523: um
22:53:13 <elliott> ais523: i am kind of used to it
22:53:21 <ais523> hmm
22:53:27 <ais523> with a name with multiple plausible spellings
22:53:31 <ais523> you'd think people would just look at the nick
22:53:35 <evincar> I thought "Elliott" was the normal spelling?
22:53:40 <monqy> 02:44:46: -!- naviISGOD has joined #esoteric.
22:53:40 <monqy> 02:44:49: <naviISGOD> navi navi navi
22:53:41 <monqy> 02:44:55: <naviISGOD> hey listen
22:53:44 <ais523> it's quite rare for other people to misspell ais523
22:53:47 <shachaf> "Eךןםא" ןד איק מםרצשך דפקךךןמעץ
22:53:50 <shachaf> Ahem.
22:53:51 <Bike> aiz523
22:53:54 <ais523> (I misspell it all the time, but I normally correct it before sending)
22:53:54 <shachaf> "Eliot" is the normal spelling.
22:54:00 <ais523> (my most common misspelling is ais532)
22:54:16 <shachaf> ais523: To be fair you have a NUMBER at the end of your nick.
22:54:25 <shachaf> A number. Who does that? Does that even count as spelling?
22:54:29 <shachaf> Maybe it's miscounting.
22:54:36 <ais523> who was it who refused to take me seriously as long as I had a number at the end of my nick
22:54:41 <Taneb> I was once booked into a hotel under the name of "Random"
22:54:43 <ais523> but treated me perfectly fine when I changed to scarf?
22:54:46 -!- ais523 has changed nick to scarf.
22:54:47 <Vorpal> ais523, I don't typo your nick because I always type ai<tab>
22:54:49 <shachaf> The world?
22:54:50 <scarf> I should do this more often
22:54:50 <evincar> Ngrams shows Elliott and Elliot roughly equal.
22:54:53 <shachaf> hi scarf
22:54:54 <FreeFull> Bike: I was just thinking about it randomly
22:54:55 <evincar> Eliot is an outlier because of T. S.
22:54:57 <Vorpal> scarf, ^
22:55:06 <shachaf> Why did you use to have a number at the end of your nick?
22:55:08 <scarf> Vorpal: yeah, but when I'm typing my own nick, I'm not there so it doesn't tab-complete
22:55:16 <Bike> FreeFull: just sayin, if the material's already there you can use it.
22:55:17 <scarf> shachaf: randomly assigned username
22:55:17 <Taneb> `run echo "No-one was ever called Elliot."
22:55:19 <HackEgo> No-one was ever called Elliot.
22:55:24 <shachaf> evincar: T. S. Eliot was the best el+iot+, though.
22:55:30 <Taneb> `run echo "No-one was ever called Elliot." > wisdom/elliot
22:55:33 <HackEgo> No output.
22:55:37 <Vorpal> scarf, oh okay? In xchat I can tab complete my own nick, pretty sure it ends up last if there are multiple possibilities though
22:55:37 <Taneb> `? elliot
22:55:39 <HackEgo> No-one was ever called Elliot.
22:55:50 <Vorpal> can't test, I'm the only one with v
22:55:52 <scarf> Vorpal: yeah but I can't when I'm not there
22:55:58 <Vorpal> scarf, hm
22:56:03 <shachaf> `run sed -i s/-/\ / wisdom/elliot
22:56:06 <HackEgo> No output.
22:56:06 <scarf> like, when I'm joining a channel in webchat
22:56:09 <scarf> err, a server
22:56:14 <scarf> how can I tab-complete the nick then?
22:56:18 <Vorpal> scarf, true
22:56:23 -!- Taneb has changed nick to VorTaneb.
22:56:27 <scarf> it's like trying to tab-complete in mkdir, I don't create directories often but when I do I try to tab-complete all the time
22:56:28 <VorTaneb> Vorpal, you can test now
22:56:30 <scarf> and get annoyed when it doesn't work
22:56:35 <Vorpal> test
22:56:47 -!- VorTaneb has changed nick to Taneb.
22:56:49 <Vorpal> VorTaneb, well okay it still completes to last spoken
22:56:52 <Vorpal> that is kind of stupid
22:57:05 <Vorpal> so after my line "test" it went to me instead
22:57:08 <shachaf> `?hh Vorpal
22:57:10 <HackEgo> Vohrpahl ihs reahlly bohrihng. Sehriouhsly, you hahve no ihdea.
22:57:17 <shachaf> Is that really true, Vorpal?
22:57:25 <Vorpal> shachaf, no it is a lie
22:57:27 <Taneb> `?hh Taneb
22:57:29 <HackEgo> Tahnehb ihs noht ehlliohtt, no mahttehr who you ahsk. He ahlso ihsn't a rahbbi ahlthouhgh he hahs prehtehndehd ihn the pahst. (see ahlso: d-mohduhlehs)
22:57:30 <shachaf> I think you and elliott just have a "disagreement".
22:57:40 <Vorpal> `?hh shachaf
22:57:42 <HackEgo> shahchahf sprø sohm sehllehri ahnd cohsplayhs Nehpehta Leihjohn ohn weehkehnds.
22:57:43 <Taneb> `?hh d-modules
22:57:45 <HackEgo> D-mohduhlehs ahre juhst mohduhlehs ohvehr the rihng ohf dihffehrehntiahl ohpehrahtohrs. Tahnehb ihnvehntehd thehm.
22:57:57 <Vorpal> `? d-modules
22:57:58 <HackEgo> D-modules are just modules over the ring of differential operators. Taneb invented them.
22:58:03 <Vorpal> heh
22:58:06 <shachaf> good job inventing d-modules Taneb
22:58:21 <Vorpal> what use are they
22:58:25 <shachaf> maybe you can work your way up to c-modules and eventually a-modules??
22:58:41 <shachaf> Taneb is even listed at https://en.wikipedia.org/wiki/D-modules
22:58:48 <scarf> Taneb: inventing mathematical constructs isn't hard, the problem is finding uses for them
22:58:50 <Vorpal> shachaf, shouldn't the goal be s-modules?
22:59:05 <Vorpal> btw I never understood why S-rank was better than A-rank in games
22:59:06 <scarf> I'm trying to remember which nick I used when I wanted to get accidentally nickpinged a lot
22:59:09 <Vorpal> to me, it makes no sense
22:59:10 <scarf> was it "this"? or is that taken?
22:59:16 <scarf> right, that one isn't taken
22:59:20 -!- scarf has changed nick to this.
22:59:31 <Taneb> They're useful in the Reimann-Hilbert correspondence
23:00:07 <shachaf> this: Why do you care whether that's taken?
23:00:13 <Vorpal> this, can you explain that btw? Why S-rank in a game is above A-rank
23:00:17 <shachaf> YOu're this, not that.
23:00:18 <this> shachaf: because I don't like using other people's nicks without their permissions
23:00:29 <this> Vorpal: because if you need a rank above A, you have to call it something
23:00:35 <this> and @ would be excessively geeky
23:00:37 <this> so people just went with S
23:00:38 <Vorpal> fair enough
23:00:42 <Taneb> Vorpal, I always assumed it stood for "Special"
23:00:43 <shachaf> this: Sure, so you should ask whether this is taken.
23:00:45 <this> some games use a star instead
23:00:50 <Vorpal> this, why not just make A the top rank instead?
23:01:00 <Vorpal> and shift everything down by one
23:01:05 <Vorpal> Taneb, hm, I guess so
23:01:12 <this> Vorpal: for the same reason that giving a game a review score below 8 means you hate it
23:01:16 <this> even if it's, like, 7.9
23:01:53 <shachaf> 7.̅9
23:02:04 <Vorpal> this, I generally ignore any sort of scoring, it is mostly useless compared to reading the review. Unless it is something like 2/10 or such
23:02:09 <Bike> ...7777.9
23:02:19 <shachaf> Bike: p-adics are the devil
23:02:21 <this> OK, my client is pinging me on every join/part
23:02:34 <Bike> don't say that sort of thing about freefull!
23:02:38 <Vorpal> this, the score system of game reviews is utterly silly
23:02:38 <this> apparently, "… has joined this channel" pings you if your nick happens to be one of the words in the interface message
23:02:49 <Vorpal> lol
23:02:53 <Vorpal> this, sounds like a bug
23:02:55 <shachaf> this makes some sense
23:04:17 <kmc> haha
23:04:48 <kmc> S-rank S-bahn
23:05:12 <shachaf> hellogan
23:07:58 <kmc> hichaf
23:09:33 <this> haha, this day of navi
23:09:43 <this> Arc_Koen invented a BF derivative that maps all the commands to the same keyword
23:09:51 <this> this seems better than most BF derivatives :)
23:10:36 <evincar> Are they differentiated by position or something?
23:10:49 <this> Vorpal: huh, you apparently own "join"
23:10:59 <Vorpal> this, correct
23:11:10 <oerjan> hm idea, a score system where the scores go 1-7, 8, 9, 9.1, 9.2 - 9.9, 9.91 - 9.99, etc.
23:11:21 <this> Vorpal: someone just /nicked to it in another channel and went "hey, it's registered"
23:11:25 <Vorpal> this, and my irc client does not highlight on join or part messages
23:11:30 <this> and I checked, and thought "huh, I know the person who registered that"
23:12:11 <oerjan> i.e. you can have as many 9 digits as you want, but then at most one other
23:12:24 <kmc> log scores eh
23:12:42 <this> oerjan: a little like TeX version numbers, except with 10 rather than pi
23:13:47 <Vorpal> this, btw I turned off highlights except on the form of ^Vorpal[,:] in #NetHack
23:14:02 <Vorpal> other than that I don't get many spurious highlights
23:14:04 <this> Vorpal: because people talk about you a lot?
23:14:08 <this> oh, #nethack, not #esoteric
23:14:10 <this> that makes more sense
23:14:25 <Vorpal> this, yeah they even named a weapon after me in nethack!
23:14:28 <Vorpal> XD
23:14:35 <this> there's a speedrunner with your name
23:14:39 <this> I get a little confused sometimes
23:14:41 <Vorpal> oh?
23:14:46 <Vorpal> no clue who that is
23:19:11 <Phantom_Hoover> i preferred it more when you were anmaster...
23:19:55 <Taneb> AnMaster? No! Not Markov!
23:20:17 <this> Taneb: huh, I tried to see an anagram in that
23:20:19 <this> but there isn't one
23:20:31 <oerjan> i suspect a fungot quote
23:20:31 <fungot> oerjan: why don't i continue this... emacs thing... with scheme buffer
23:20:38 <this> fungot: not you too :(
23:20:38 <fungot> this: try another classic. htdp is much easier to compile
23:20:47 <Taneb> `quote anmaster no
23:20:48 <oerjan> `quote anmaster
23:20:51 <HackEgo> 4) <AnMaster> that's where I got it <AnMaster> rocket launch facility gift shop \ 65) <AnMaster> I'm 100% of what sort of magic was involved in it \ 89) <AnMaster> fungot!*@* added to ignore list. <fungot> AnMaster: i'd find that a bit annoying to wait for an ack. \ 104) <fungot> AnMaster: intercal-72 c-intercal clc-intercal j-intercal yes all v
23:20:52 <HackEgo> 579) <fungot> Ngevd:. i'm so kind, even to assholes! anmaster no not markov anmaster no not markov anmaster no not markov anmaster no not markov anmaster no not markov
23:21:13 <this> ah, that one
23:21:55 <Sgeo> Why am I dismayed by a commercial for Yugioh anime even though I am a fan of (i forget the name) no Go?
23:22:47 <this> yugioh anime characters are cheating
23:23:00 <this> it's always amusing to see them do something in the anime and people try to stat the anime effects of the cards
23:23:11 <Vorpal> <Phantom_Hoover> i preferred it more when you were anmaster... <-- why?
23:23:31 <Phantom_Hoover> less generic
23:23:41 <Vorpal> well, okay that is true
23:23:46 <Vorpal> but it was a bit of a silly nick too
23:24:19 <oerjan> <elliott> Phantom_Hoover: anyway yes "sorry you were offended" is what I meant by "except less sincere" <-- i'd suggest "we would like to apologize to anyone who were reminded of previous traumatic experiences by our advertisement."
23:24:56 <elliott> my code was crushed once :(
23:26:34 <kmc> crush tactic
23:26:37 <kmc> so easy
23:26:54 <kmc> coq out and crush proofs
23:27:45 -!- WeThePeople has quit (Quit: Leaving).
23:28:01 <elliott> monqy: do you use crush
23:28:05 <elliott> i think i used crush once and then felt dirty
23:28:17 <monqy> crush is really slow
23:28:24 <monqy> i have better ways to do things now
23:28:40 <elliott> have you Transcended the Crush monqy
23:28:47 <monqy> sure
23:28:56 <monqy> theres nothing to feel dirty about using crush tho
23:29:29 <elliott> iirc it's ugly i forget why
23:29:43 <elliott> well i guess i just mostly hate tactics in general
23:30:34 <Vorpal> elliott, what is "Crush" in this context?
23:30:40 <elliott> the crush tactic
23:31:06 <Vorpal> I see
23:31:47 <this> what does it do?
23:32:00 <elliott> crush
23:32:10 <monqy> general purpose "solves easy stuff" coq tactic
23:32:39 <shachaf> have you Transcended the Easy Stuff monqy
23:32:48 <monqy> sure
23:33:09 <shachaf> even monoids
23:33:18 <this> perhaps it can just tell you what tactics you should have used instead
23:33:21 <this> and then you can replace it with those
23:33:42 <monqy> that's kind of missing the "point" of tactic proofs as i see them
23:34:22 <elliott> the "point" is to be ugly stateful write-only messes :(
23:34:29 <monqy> nope
23:34:44 <elliott> the accidental point
23:34:56 <monqy> if it's write-only it's a bad tactic proof
23:35:08 <shachaf> all the best proofs are read-only
23:35:13 <shachaf> unfortunately no one has managed to write them
23:35:19 <elliott> imo the whole structure of the tactics system encourages such write-only proofs
23:35:28 <elliott> the internals are ugly too
23:35:29 <kmc> it can solve monoids eh
23:35:35 <elliott> internals as in how the tactics are actually written
23:35:43 <this> shachaf: I like to write proofs in such a way that you can understand how they work
23:36:04 <this> but people keep telling me to turn them round into the version that just comes out of nowhere
23:36:07 <monqy> ugh whatever i dont feel like arguing this. i hate tactics too but there's ways to make them palatable
23:36:12 <this> my advice is to read them backwards, they often make more sense that way
23:36:21 <shachaf> this: Don't listen to people!
23:36:53 <this> shachaf: but I want them to accept my papers :(
23:37:22 <shachaf> I'll accept your papers instead if you like.
23:38:03 <this> yeah, wouldn't have quite the sort of academic clout I need :(
23:38:40 <kmc> shachaf journal of shachaf
23:38:57 <kmc> the conference proceedings of SIGCHAF
23:39:13 <shachaf> this: are you saying i'm not clouty enough for you :'(
23:39:16 <Bike> a conference about ways to dodge MANPADS would actually be kind of cool
23:39:28 <kmc> hehe
23:39:31 <elliott> monqy: sure you can write palatable C code too
23:39:39 <elliott> doesn't mean it doesn't encourage unpalatable code by its structure
23:39:43 <kmc> when you said "dodge" i thought first of like a guy trying to jump out of the way
23:39:46 <monqy> elliott: sure
23:39:58 <kmc> defensive martial arts training against shoulder-launched anti-aircraft missiles
23:40:38 <Bike> that would look cool as hell and also you would die but it would still look cool
23:40:54 <Bike> unfortunately it mostly makes me remember burning people failing to jump out of their tanks
23:41:27 -!- Taneb has quit (Quit: Leaving).
23:42:43 <Bike> http://www.youtube.com/watch?v=vljapydLfGQ yeah here we go
23:45:18 -!- this has changed nick to scarf.
23:45:20 -!- mekeor has quit (Quit: too late to apologize).
23:46:31 <Phantom_Hoover> Bike, was that on the news or reddit or something
23:47:21 <Bike> uh, i wouldn't know? it's posted by somebody evidently collecting syria videos
23:47:34 <elliott> http://www.youtube.com/verify_controversy?next_url=/watch%3Fv%3DvljapydLfGQ
23:47:36 <elliott> verify controversy
23:47:44 <ion> controversy verified
23:47:47 <Phantom_Hoover> well i got linked to it by a friend about an hour ago
23:47:51 <Bike> weird
23:47:59 <Bike> these things do tend to spread around, though
23:48:10 <ion> What you say, a link spread on the Internet?
23:48:17 <ion> no way
23:51:41 -!- carado has quit (Ping timeout: 246 seconds).
23:52:00 <Bike> you, too, can be part of the next-gen social warfare revolution!!
23:52:14 <Jafet> I've seen Link spread on the Internet.
23:52:24 <kmc> social warfare
23:52:37 <kmc> is that like when the IDF pays people to tweet nice things about them
23:53:05 <Jafet> That's just regular warfare.
23:53:08 <Bike> or when i have to avoid reading the comments in broken english about how anti-assad people are subhuman, yes
23:55:16 <Bike> (the guy in charge of the IDF social outreach though, god)
23:56:13 <Phantom_Hoover> i'd've expected god to hold a more senior post, frankly
23:57:00 <Bike> heh, it's funny because you deliberately misinterpreted my use of an interjection as an identifying name of the subject of the previous clause.
23:57:25 <Phantom_Hoover> heh, it's clever because you explained the joke
23:57:33 <kmc> it's funny because it's not
23:57:51 <Bike> anyway i'm just sayin' the dude dresses up in blackface and that shit ain't fly, it ain't fly at all.
23:57:59 <Phantom_Hoover> haha wow
23:58:01 <kmc> pretty fly for a white guy
23:58:18 <Bike> "Obama style" was i think what he said along with it
23:58:38 <kmc> though i think blackface being ultra offensive is something of a US-specific thing
23:58:44 <kmc> i mean it's not great anywhere but
23:58:53 <Phantom_Hoover> no, it was offensive when the bbc did it in the 60s too
23:59:08 <Bike> The BBC did it in the 60s?
23:59:35 <pikhq> It's principally a US thing for it to be offensive, yes.
23:59:54 <pikhq> Yay, history.
2013-01-27
00:00:07 <kmc> "it's like The Big Bang Theory but for black people instead of nerds"
00:00:28 -!- Phantom__Hoover has joined.
00:00:49 <Phantom__Hoover> the fuck is with this connection
00:01:06 <Bike> kmc: i'm already horrified.
00:01:18 <Phantom__Hoover> anyway apparently they stopped the blackface in '69
00:01:35 <Bike> what blackface are you talking about?
00:01:46 <Phantom__Hoover> uh, http://en.wikipedia.org/wiki/The_Black_and_White_Minstrel_Show
00:02:05 <Bike> well now.
00:02:54 <Phantom__Hoover> wait!
00:03:03 <Phantom__Hoover> no, they totally kept it up until '78
00:03:04 * Bike waits
00:03:17 <Phantom__Hoover> they stopped it for 10 episodes
00:03:22 <Bike> " (by this point the blackface element had been reduced)" great
00:03:46 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
00:03:55 <elliott> `addquote <kmc> "it's like The Big Bang Theory but for black people instead of nerds"
00:03:56 <Phantom__Hoover> last stage show was in '87
00:04:07 <HackEgo> 941) <kmc> "it's like The Big Bang Theory but for black people instead of nerds"
00:04:18 <elliott> Phantom__Hoover: political correctness.................. killing our wholesome black and white minstrel show rtaditions.........
00:04:38 <Phantom__Hoover> although it obviously wasn't very good at it
00:05:39 <Bike> so, does anyone know how carry-lookahead works
00:08:25 <Phantom__Hoover> http://en.wikipedia.org/wiki/Chad_Todhunter
00:08:28 <Phantom__Hoover> wow, what a name
00:09:09 <elliott> Phantom__Hoover: haha jesus christ at the picture of that minstrel show
00:09:10 <elliott> (i just clicked)
00:09:51 <Phantom__Hoover> with the black-and-white photo you almost don't notice it's racist
00:09:56 <elliott> The show appeared in a prime-time slot for twenty years, but during the 1970s its popularity declined, partly because of the style of music becoming dated and partly because of an increase in racial awareness. It was axed by the BBC after several unsuccessful attempts to change the format. Mitchell was awarded the OBE in 1975.
00:10:02 <Bike> no i pretty much noticed it was racist
00:10:02 -!- epicmonkey has quit (Ping timeout: 245 seconds).
00:10:05 <elliott> sorry for cancelling your racist as hell show, here's an OBE in return
00:10:21 <Phantom__Hoover> oh dear, he was from scotland too
00:10:28 <Phantom__Hoover> not a good day for scotland in #esoteric
00:10:36 <elliott> we're just finding out what we knew all along
00:10:40 <elliott> scotland is terrible
00:10:41 <Bike> was he from hexham ._.
00:11:10 <Phantom__Hoover> look man we were just happy the english had found someone else to pick on
00:11:19 <elliott> "While the show started off being broadcast in (genuine) black-and-white, the show was one of the very first to be shown in colour on BBC Two in 1967."
00:11:25 <elliott> HO HO HO "(genuine)"
00:11:29 <elliott> HILARIOUS, WIKIPEDIA
00:11:58 <scarf> my parents insist the snooker was the very first color programme on the BBC
00:12:01 <Phantom__Hoover> http://www.guardian.co.uk/media/2002/aug/29/broadcasting2
00:12:01 <olsner> hmm, if they were in blackface shouldn't it be white-and-white?
00:12:09 <elliott> "During the nine years that the show was broadcast in black-and-white, the black-face makeup was actually red as black did not film very well."
00:12:15 <elliott> scarf: I think that was true?
00:12:20 <Phantom__Hoover> was expecting something a bit stronger from the guardian
00:12:22 <scarf> I didn't say it was false
00:12:25 <Bike> those poor native americans
00:12:44 <olsner> elliott: oh, that reminds me, supposedly Spock was supposed to be red-faced
00:12:53 <olsner> but that looks black in black-and-white
00:13:10 <Phantom__Hoover> i heard he was supposed to be green...
00:13:14 <Bike> er... was star trek filmed in black and white at some point?
00:13:27 <olsner> no, but it was broadcast at a time when no-one had color tv yet
00:13:39 <kmc> shachaf: Great Firewall is now MITMing GitHub with a self-signed cert, it seems
00:13:39 <Bike> oh, huh
00:13:46 <ion> kmc: nice
00:13:47 <kmc> Homebrew's curl -k looks realllly clever now
00:13:50 <elliott> olsner: yes, we can't have too many black people in Roddenberry's post-everything utopia
00:13:50 <Bike> what, china?
00:13:52 <kmc> yes
00:13:57 <elliott> that would be TOO FAR
00:14:17 <Phantom__Hoover> elliott, omg it makes sense now
00:14:25 <kmc> checking certs is so uncool
00:14:32 <Phantom__Hoover> why memory alpha articles are all in the past tense
00:14:47 <elliott> kmc: you know the first person I ever saw doing the "'curl | interpreter' to install" trick was why the lucky stiff in like... 2005-2007
00:14:48 <Bike> post-present-tense utopia??
00:15:02 <scarf> elliott: surely it was done before then?
00:15:03 <elliott> kmc: not one of his best ideas
00:15:17 <scarf> it's such a bad idea it must have been tried before
00:15:21 <elliott> scarf: if it was I didn't see it -- and most of this stuff seems to be pretty close to the "Ruby community" so I suspect they got it from him
00:15:25 <Phantom__Hoover> Bike, but they're not there yet!
00:15:37 <Phantom__Hoover> milk still exists, although there are no breasts for it to come from
00:16:01 <scarf> elliott: for bonus points, nc | interpreter
00:16:13 <elliott> when why did it it was disclaimed saying it was essentially a terrible idea and linking to the actual script so you could read it yourself
00:16:18 <scarf> this can go wrong in all the same ways, and it's easier to make it do so
00:16:19 <elliott> it was cute then
00:16:21 <elliott> now it's just depressing
00:16:36 <elliott> kmc: wow I just looked up what curl's -k option is
00:16:38 <elliott> did they really
00:16:50 <scarf> the only safe method is to save the code, /then/ read, /then/ run
00:17:00 <kmc> but _why is a god and we must worship him
00:17:08 <scarf> and read it in something with no terminal control sequence injection exploits or the like
00:17:56 <kmc> elliott: ksplice easy install uses curl | sh :( but at least it's SSL with a real cert and not curl -k
00:17:58 <scarf> elliott: -k is to not verify certs, by the look of it
00:18:01 <kmc> correct
00:18:03 <kmc> aka --insecure
00:18:14 <elliott> kmc: a bit of proper _why worship would do a lot of these idiots good
00:18:17 <scarf> well, it's still more secure than using non-https http
00:18:28 <elliott> cut down on a lot of ego at the very least
00:18:39 <Bike> didn't why spontaneously combust or something
00:18:43 <kmc> 'This option explicitly allows curl to perform "insecure" SSL connections and transfers. All SSL connections are attempted to be made secure by using the CA certificate bundle installed by default. '
00:18:54 <kmc> ' This makes all connections considered "insecure" fail unless -k, --insecure is used.'
00:19:04 <kmc> this is a mind bogglingly poor explanation of what the option does
00:19:09 <elliott> Bike: he deleted all his accounts and went back to living as not-why the regular employed programmer
00:19:21 <scarf> elliott: that was probably a sensible decision
00:19:22 <olsner> yes, it very nearly says that -k makes curl secure
00:19:25 <kmc> elliott: did he leave because the rails community is terrible or?
00:19:30 <Phantom__Hoover> elliott, wasn't it over something petty
00:19:30 <Bike> like the bodhisattva
00:19:41 <elliott> kmc: not afaik and I don't think that would fit him
00:19:49 <shachaf> I don't think he was ever really involved in the Rails community?
00:19:53 <elliott> Phantom__Hoover: nobody "knows" what it was over except him and whoever knows him personally
00:20:12 <elliott> I suspect he just got tired
00:20:14 <kmc> hm
00:20:16 <shachaf> Sounds reasonable.
00:20:20 <kmc> not rails but ruby? or what
00:20:26 <Bike> kmc: so, how much security research is predicated on "half of the users are going to get their asses infected anyway, how do we avoid sql slammering"
00:20:27 <shachaf> Yes, Ruby.
00:20:27 <elliott> shachaf: well he was "involved" insofar as it is kind of hard to separate ruby from rails
00:20:31 <scarf> elliott: it's wearing being a celebrity even if you're a celebrity as obscure as I am
00:20:33 <olsner> maybe he lives on as a normal person
00:20:33 <kmc> i see
00:20:35 <elliott> but yes he never did rails stuff afaik
00:20:44 <elliott> unless mocking DHH counts as doing rails
00:20:45 <kmc> shachaf: did you know Ruby was started in 1995??
00:20:50 <kmc> elliott: that counts as doing god's work
00:20:53 <shachaf> kmc: Yep!
00:21:05 <elliott> kmc: did you know python started in like 1990
00:21:12 <kmc> it's weird that a language can be obscure for 10 years and then suddenly become hot shit in another country
00:21:17 <kmc> elliott: yeah
00:21:20 <elliott> kmc: perl is only 4 years older than python
00:21:24 <elliott> how amazing is that
00:21:30 <kmc> i think with python it was less sudden though
00:21:32 <shachaf> I totally learned Ruby before Rails was cool.
00:21:36 <elliott> yeah
00:21:41 <elliott> python was the hip unix thing in late 1990s AIUI
00:21:45 <elliott> partially due to esr I think
00:21:51 <kmc> fuck that guy
00:21:55 <kmc> but yes
00:21:55 <elliott> yes
00:21:57 <kmc> "the python paradox"
00:22:06 <kmc> was written in 2004
00:22:10 <elliott> with Ruby it was a combination of the fact that dave thomas randomly found out about ruby
00:22:20 <elliott> and decided to write a whole english introduction-slash-reference-book about it for no apparent reason
00:22:24 <kmc> the wendy's guy??
00:22:27 <elliott> because it had like no english documentation
00:22:28 <scarf> elliott: should I feel bad for not knowing who dave thomas is?
00:22:35 <elliott> and then DHH read it I guess
00:22:40 <Phantom__Hoover> so is fuck that guy sort of like pbuh but for esr?
00:22:41 <kmc> he invented wendy's, a popular American fast food restaurant
00:22:45 <olsner> scarf: probably not
00:22:55 <kmc> also he died in 2002 so "probably not the same guy"
00:22:56 <Bike> "pbuh", what
00:23:01 <elliott> kmc: the pragmatic programmer guy
00:23:03 <elliott> i.e. "nobody"
00:23:06 <elliott> scarf: so no
00:23:22 <scarf> fair enough
00:23:28 <shachaf> elliott: should I feel bad for knowing who dave thomas is?
00:23:29 <olsner> who is DHH?
00:23:31 <scarf> Ruby strikes me as a rebellion against Java
00:23:33 <Phantom__Hoover> Bike, 'peace be upon him', muslims say it as a mark of respect for muhammed aiui
00:24:02 <Bike> oh
00:24:08 <elliott> scarf: no
00:24:10 <Bike> well, it should be
00:24:14 <Phantom__Hoover> kmc, omh
00:24:14 <Bike> because well, fuck that guy
00:24:16 <Phantom__Hoover> *omg
00:24:18 <Phantom__Hoover> were you here
00:24:28 <Phantom__Hoover> when esr appointed himself our patriarch in absentia
00:24:41 <Sgeo> wtf my first initial and last name showed up in Ghost in the Shell
00:24:42 <olsner> if ruby started in 1995, I think Java hadn't existed for long enough to warrant a rebellion against it
00:24:45 <Bike> i've never seen pbuh abbreviated like that though
00:24:47 <elliott> scarf: ruby is actually lisp + objects + smalltalk + perl
00:24:50 <elliott> as in matz has actually said this
00:24:54 <scarf> elliott: yeah
00:24:55 <elliott> well I guess + objects is redundant there
00:24:59 <Bike> that's a fucking weird equation
00:24:59 <shachaf> smallatlk *and* objects?
00:25:01 <kmc> Phantom__Hoover: what
00:25:03 <elliott> also it's older than Java I think
00:25:04 <scarf> but its community has quite an attitude of "let's change the internals of things on the fly"
00:25:12 <kmc> is it because he half maintains a befunge interpreter or something
00:25:21 <elliott> Java: 1995. Ruby: 1994
00:25:22 <elliott> er
00:25:22 <elliott> Java: 1995. Ruby: 1995
00:25:28 <scarf> hmm
00:25:30 <Phantom__Hoover> kmc, he made c-intercal
00:25:30 <Bike> coincidence? or conspiracy??
00:25:30 <elliott> so Ruby can't really be a reaction to Java at all
00:25:33 <Phantom__Hoover> then abandoned it
00:25:34 <scarf> when does C++ date from?
00:25:34 <kmc> oh right
00:25:47 <scarf> oh and yeah, esr and I are both doing equal lack of work on C-INTERCAL atm
00:25:47 <elliott> scarf: 80s
00:26:01 <Phantom__Hoover> then knuth somehow got involved and esr's ego shot through the roof
00:26:04 <kmc> scarf: C++ lay dormant for nameless millenia at the bottom of the ocean
00:26:11 <elliott> kmc++
00:26:50 <Bike> in strange aeons even garbage collection may die?
00:27:00 <scarf> Phantom__Hoover: perhaps the easier way to explain it is, I can excuse Knuth for never having heard of me and vaguely remembering that ESR had an INTERCAL interp
00:27:09 <scarf> I can excuse him for never having heard of Claudio Calvelli, too
00:27:28 <scarf> and the J-INTERCAL guy, I can't even remember who he is
00:27:50 <kmc> lisp + objects + smalltalk + perl + cayenne pepper + potato + pinch of salt
00:27:55 <shachaf> Is that INTERCAL written in J?
00:27:58 <shachaf> It should be.
00:28:07 <scarf> shachaf: Java, sadly
00:28:15 <Phantom__Hoover> how did knuth not hear of the winner of the WOLFRAM PRIZE for PROVING WOLFRAM RIGHT
00:28:18 <scarf> it's an INTERCAL to JVM bytecode compiler, I think
00:28:23 <shachaf> J is "much cooler than" Java.
00:28:30 <Bike> that actually sounds a bit cool, scarf
00:28:37 <Bike> hurry up and dissuade me from this thought
00:28:39 <quintopia> as well as "shachaf"
00:28:46 <scarf> I remember having to fix a J-INTERCAL-specific bug I introduced into CADIE
00:28:56 <scarf> (as well as being vaguely surprised that anyone bothered to try)
00:29:07 <Bike> Phantom__Hoover: is "fuck that guy" also the pbuh for wolfram?
00:29:15 <Phantom__Hoover> yes
00:29:16 <Phantom__Hoover> shit
00:29:19 <Phantom__Hoover> i forgot
00:29:20 <Bike> cool
00:29:32 <Bike> don't be disrespectful to wolfram, fuck that guy, remember to say fuck that guy
00:29:49 <Phantom__Hoover> maybe we could personalise it
00:30:09 <Bike> fuck that guy in doubly exponential time?
00:30:16 <kmc> kinky
00:30:37 <Bike> hm is there such a thing as tetration time
00:30:41 <Bike> should be imo
00:30:43 <scarf> doubly exponential time? is that e^e^x?
00:30:45 <scarf> or e^x*2?
00:30:53 <scarf> the latter seems a little redundant
00:30:54 <Bike> e^e^x, as i understand
00:31:09 <Bike> yes, of course, the latter would be a constant factor, and fuck constant factors.
00:31:28 <scarf> reminds me of a reddit debate about whether O(1) is or isn't the same as O(0)
00:31:41 <Bike> that sounds like a complete waste of time?
00:31:58 <scarf> Bike: it's /reddit/
00:32:03 <scarf> the purpose of being there is to waste time
00:32:12 <scarf> in a manner that's occasionally vaguely productive
00:32:25 <shachaf> Did they talk about O(1/n)?
00:32:26 <Bike> but i don't use reddit and i've still been linked to interesting posts there!
00:32:29 <FreeFull> O(1) is the same as O(0), they're both x^0
00:32:34 <FreeFull> Well, in O terms
00:32:42 <FreeFull> Multiples of x^0
00:32:58 <scarf> FreeFull: OTOH, O(1) definitely grows faster
00:33:04 <scarf> even with the standard definition in terms of limits
00:33:15 <Bike> speaking of reading things on the internet, this thing about anthropology has a guy who keeps going on about epistemology and levi-strauss, and it bugs me
00:33:20 <shachaf> O(monoids)
00:33:25 <shachaf> O(♥)
00:33:31 <Bike> O(<3)?
00:33:45 <kmc> $TEXAS
00:33:47 <Phantom__Hoover> fix(O)
00:45:32 <scarf> 00:48:57: <ais523> javad3v: hi
00:45:41 <scarf> hey, apparently I've used threat-his on people too
00:48:44 <scarf> `quote offence
00:48:45 <HackEgo> No output.
00:48:57 <kmc> i think for things that go to 0 you want to use o() not O()?
00:49:02 <scarf> hmm
00:49:03 * kmc forgets this stuff
00:49:14 <scarf> `pastlog offence
00:49:17 <Bike> can anyone actually remember the differences between o, O, Omega, etc. reliably?
00:49:32 <Bike> they use them all over the place in one of my books and it confuses the hell out of me :(
00:49:36 <scarf> Bike: yeah, o() is less than, O() is less than or equal to, capital Theta is equal to
00:49:43 <HackEgo> 2012-02-24.txt:19:37:12: <elliott> quintopia: Wellll, since I'm assuming you don't know what you're doing (no offence), I'd assign half a day or so to the task. 90% of that will be reading http://wiki.nginx.org/WordPress.
00:49:49 <Bike> damn you
00:49:53 <scarf> (this is not mathematically rigorous, but easy to remembre)
00:49:54 <kmc> well O / Ω / Θ is easy enough
00:50:00 <scarf> Bike: take that back, please, it doesn't really sound like something to damn people over
00:50:09 <Bike> ok, heaven you.
00:50:09 <Phantom__Hoover> scarf, wp sez o() is <=??
00:50:09 <kmc> upper / lower / both bound
00:50:14 <scarf> think about what you juts said
00:50:20 <scarf> Phantom__Hoover: O is <=, o is <
00:50:25 <Bike> wait, bless you
00:50:27 <Bike> there we go
00:50:31 <scarf> yeah, that sounds about right :)
00:50:49 <Phantom__Hoover> Oh it defines them in a different format.
00:50:53 <Bike> i think that evens out with the damning, so along with the shitty "heaven" confusion when you die you'll probably end up in like the troposphere
00:51:31 <scarf> it's more the sentiment expressed, whether or not anyone involved actually believes it
00:51:54 <scarf> going by the literal meanings of the words involved, I'm not sure if a worse insult is even theoretically possible
00:51:58 <scarf> and yet it's considered quite mild
00:52:00 <Bike> i'm not sure what "heaven you" would actually mean. it's kind of ungrammatical
00:52:05 <kmc> e^x dx dx, e^y dy
00:53:02 <Phantom__Hoover> scarf, erm, christian hell varies wildly in unpleasantness depending on who you ask.
00:53:25 <scarf> Phantom__Hoover: there are people who consider it pleasant?
00:53:31 <scarf> that would sort-of contradict the definition
00:53:39 <Bike> sure, even dante had limbo as pretty nice
00:54:20 <Bike> there are also lots of exciting arguments about hell and theodicy that i'm so glad i don't give a fuck about any more
00:54:55 <scarf> hey, did we even work out whether /ˈæmbiːɛf/ is remotely usable for programming?
00:55:05 <scarf> that was a good langugae
00:55:07 <scarf> *language
00:55:16 <Phantom__Hoover> scarf, anyway I really don't get this, it would make sense if zzo38 did it maybe.
00:55:30 <Bike> remember to put "remotely usable for programming" in the advertising.
00:55:36 <scarf> Phantom__Hoover: I dislike swearword decay
00:55:57 <Bike> "damn"'s been pretty "decayed" since like medieval times
00:56:14 <elliott> scarf: fuck that
00:56:26 <Phantom__Hoover> scarf, so you aren't actually personally upset by it?
00:56:39 <Sgeo> When I get a new computer, I'm going to put XenClient on it I think
00:56:44 <scarf> Phantom__Hoover: I am, although I conclude that it's probably irrational to be
00:56:51 <Sgeo> Do games work well under XenClient?
00:57:21 <scarf> Phantom__Hoover: I have a lot of irrational beliefs
00:57:25 <Bike> Phantom__Hoover: personally i'm not really that concerned but i'd rather not worry scarf if he does actually care for reasons i don't understand
00:58:23 <Phantom__Hoover> Bike, well like I said if it was zzo38 I could maybe understand but with scarf it just seems like a weird sort of contrarianism?
00:58:25 <Bike> "It's possible to (via dead-reckoning) always determine whether you're on an odd or an even tape element" amazing.
00:58:37 <Bike> Phantom__Hoover: really don't give a damn
00:58:44 <Phantom__Hoover> hmm
00:58:56 <Phantom__Hoover> scarf, your opinions on 'don't give a damn'
00:59:04 <scarf> Phantom__Hoover: put it this way: zzo38 is a lot more internally consistent than I am
00:59:12 <scarf> Phantom__Hoover: I can't reasonably assign a meaning to it, so it doesn't bother me
00:59:46 <Bike> do i need to start cursing in dungan or something? i mean, that would be amusing so i may actually do that, but
01:00:10 <Phantom__Hoover> oh shit dungans are real people
01:00:14 <scarf> <cpressey> I also guess I also have several other thoughts on the matter, but they are too wide-ranging and not directly relevant, so I will save them for The Manifesto.
01:00:19 <Phantom__Hoover> my first thought was "aren't they from star wars"
01:00:28 <scarf> I didn't really notice that sentence the first time through
01:00:33 <Bike> dungans are pretty boss imo
01:00:34 <scarf> in retrospect, isn't it somewhat ominous?
01:00:42 <Bike> speak chinese....... in russian
01:05:25 -!- fungot has quit (Ping timeout: 248 seconds).
01:05:29 <elliott> i miss cpressey a lot
01:06:42 -!- fizzie has quit (Ping timeout: 245 seconds).
01:06:49 -!- fizzie has joined.
01:10:20 -!- Franklin-Jesus has joined.
01:10:41 <Phantom__Hoover> did fizzie just... quit
01:10:48 <scarf> Phantom__Hoover: pingout
01:10:59 <scarf> fungot left at the same time and didn't come back
01:10:59 <elliott> fizzie: fungot please
01:11:04 <scarf> or in elliott-speak, rip fungot
01:11:22 <elliott>
01:11:40 <Phantom__Hoover> but fizzie doesn't... quit
01:11:50 <Franklin-Jesus> join in #Social-Vzla :)
01:12:00 <monqy> ho Franklin-Jesus
01:12:05 <monqy> er
01:12:06 <monqy> hi
01:12:07 <Franklin-Jesus> hi
01:12:15 <monqy> `welcome Franklin-Jesus
01:12:16 <HackEgo> Franklin-Jesus: 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.)
01:12:22 <Franklin-Jesus> thanks bro
01:12:47 <Franklin-Jesus> my english is bad :s
01:13:07 <elliott> Franklin-Jesus: hi please go away and stop spamming : )
01:13:08 <Franklin-Jesus> where are u from?
01:13:14 <elliott> scarf: hi please kick this guy for spamming : )
01:13:28 <scarf> oh, wow, sorry
01:13:32 <scarf> was reading the navi logs
01:13:38 <scarf> didn't realise we had an actual spammer here
01:13:43 <Franklin-Jesus> I'm sorry
01:13:44 <scarf> Franklin-Jesus: are you a human or a bot?
01:13:51 <monqy> sounds human enough
01:13:59 <scarf> monqy: I prefer to assume it's a spambot
01:14:01 <Franklin-Jesus> what is this?
01:14:04 <scarf> that way I can have more fun Turing-testing it
01:14:08 <scarf> and eventualy trying to get it into a botloop
01:14:41 <scarf> ^ul (:a*:SS):a*:SS
01:14:48 <scarf> oh, fungot isn't here
01:14:53 <Phantom__Hoover> fizzie, kick scarf for encouraging spammer
01:14:57 <Phantom__Hoover> then kick spammer
01:15:35 -!- thutubot has joined.
01:15:52 <scarf> +ul (:a*:SS):a*:SS
01:15:52 <thutubot> :a*:SS(:a*:SS):a*:SS(:a*:SS)
01:15:58 <scarf> whoops
01:16:03 <scarf> +ul (:a~*:SS):a~*:SS
01:16:04 <thutubot> (:a~*:SS):a~*:SS(:a~*:SS):a~*:SS
01:16:05 <scarf> there we go
01:16:12 <scarf> wanted to write a double-quine
01:16:21 <Franklin-Jesus> i can speak spanish and english
01:16:23 <Franklin-Jesus> :)
01:16:32 <monqy> i can speak english too
01:16:39 <Franklin-Jesus> but my english is bad
01:16:51 <zzo38> Some other people in here can speak other language too (and sometimes does), but is mainly in English. OK
01:17:08 <Franklin-Jesus> ok men
01:17:15 <FreeFull> > x ++ show x where x = "x ++ show x where x = "
01:17:17 <lambdabot> <hint>:1:13: parse error on input `where'
01:17:17 <thutubot> <hint>:1:13: parse error on input `where'
01:17:44 <Phantom__Hoover> Franklin-Jesus, what was the last thing i said
01:17:44 <scarf> FreeFull: hmm, is it that where doesn't work like that?
01:17:47 <scarf> or something else?
01:17:56 <FreeFull> scarf: where doesn't work like that
01:18:16 <FreeFull> It only works in definitions and let statements
01:18:19 <scarf> ah, OK
01:18:29 <scarf> was that an attempt at mirroring the structure of the Underload quine in Haskell?
01:18:38 <scarf> hmm
01:18:47 <scarf> I wonder if such a quine can be translated almost directly into FORTH
01:18:52 <scarf> I'm guessing no, due to the compilation step
01:19:13 <FreeFull> Well, a haskell quine is main = print (x ++ show x) where x = "main = print (x ++ show x) where x = "
01:19:29 <Franklin-Jesus> Phantom_hover: I can speak English and Spanish
01:19:47 <scarf> Franklin-Jesus: and you get it twice because of thutubot
01:19:53 <shachaf> > ap(++)show"ap(++)show"
01:19:55 <lambdabot> "ap(++)show\"ap(++)show\""
01:19:56 <thutubot> "ap(++)show\"ap(++)show\""
01:19:59 <elliott> > let x y = "let x y = " ++ y ++ " in x " ++ show y in x "\"let x y = \" ++ y ++ \" in x \" ++ show y"
01:20:02 <lambdabot> "let x y = \"let x y = \" ++ y ++ \" in x \" ++ show y in x \"\\\"let x y =...
01:20:03 <thutubot> "let x y = \"let x y = \" ++ y ++ \" in x \" ++ show y in x \"\\\"let x y =...
01:20:04 <shachaf> thutubot..................................
01:20:09 <elliott> > text $ let x y = "let x y = " ++ y ++ " in x " ++ show y in x "\"let x y = \" ++ y ++ \" in x \" ++ show y"
01:20:11 <lambdabot> let x y = "let x y = " ++ y ++ " in x " ++ show y in x "\"let x y = \" ++ y...
01:20:12 <thutubot> let x y = "let x y = " ++ y ++ " in x " ++ show y in x "\"let x y = \" ++ y...
01:20:13 <FreeFull> Why are there two haskell bots in here
01:20:13 <kmc> is there any reason why an irc spambot would do anything other than spam and leave?
01:20:17 <FreeFull> That use the same damn syntax
01:20:18 <elliott> looks like i did it right
01:20:27 <shachaf> kmc: Perhaps spam and stay?
01:20:32 <monqy> kmc: gain our trust
01:20:34 <c00kiemon5ter> always double check your code
01:20:47 <Franklin-Jesus> i dont understand
01:20:52 <shachaf> Who's thutubot and why is it evaluahaskelling?
01:20:55 <shachaf> :t 1
01:20:56 <lambdabot> Num a => a
01:20:57 <thutubot> Num a => a
01:21:07 <monqy> :t (.)
01:21:08 <lambdabot> Functor f => (a -> b) -> f a -> f b
01:21:08 <thutubot> Functor f => (a -> b) -> f a -> f b
01:21:15 <monqy> thutubot.....
01:21:23 <Franklin-Jesus> what is this?
01:21:24 <Jafet> cuckoobot
01:21:26 <Sgeo> What's the correct term, front-end or frontend? Backend or back-end
01:21:27 <Sgeo> ?
01:21:41 <monqy> Sgeo: are you trying to look professional
01:21:44 <shachaf> > let unsafeCoerce v = z where z :: v; z = v where aux = const v in unsafeCoerce 'a' :: Int
01:21:46 <lambdabot> Couldn't match type `t' with `v1'
01:21:46 <lambdabot> `t' is a rigid type variable bound by
01:21:46 <lambdabot> ...
01:21:47 <thutubot> Couldn't match type `t' with `v1'
01:21:47 <thutubot> `t' is a rigid type variable bound by
01:21:47 <thutubot> ...
01:21:50 <shachaf> Hmph.
01:21:52 -!- Franklin-Jesus has left.
01:21:55 <monqy> :t (&)
01:21:57 <lambdabot> a -> (a -> b) -> b
01:21:57 <thutubot> a -> (a -> b) -> b
01:22:02 <monqy> :t (.~)
01:22:04 <lambdabot> ASetter s t a b -> b -> s -> t
01:22:04 <thutubot> ASetter s t a b -> b -> s -> t
01:22:07 <shachaf> thutubot who are you thutubot
01:22:08 <FreeFull> > let y = print (x ++ show x) where x = "> let y = print (x ++ show x) where x = "
01:22:10 <lambdabot> not an expression: `let y = print (x ++ show x) where x = "> let y = print ...
01:22:10 <thutubot> not an expression: `let y = print (x ++ show x) where x = "> let y = print ...
01:22:16 <FreeFull> Oh dammit
01:22:20 <FreeFull> needs in y
01:22:25 <c00kiemon5ter> Sgeo, thefreedictionary.com says front-end
01:22:26 <monqy> how does thutubot know about caleskell and lens!!!!!
01:22:31 <FreeFull> That makes quinehood more complicated
01:22:32 <shachaf> > hi
01:22:34 <lambdabot> 'a'
01:22:34 <thutubot> 'a'
01:22:40 <Bike> Whoa.
01:22:47 <shachaf> thutubot is just copying lambdabot??????????????????
01:22:54 <FreeFull> > a
01:22:55 <shachaf> I defined that hi in /msg lambdabot
01:22:55 <lambdabot> a
01:22:55 <thutubot> a
01:22:58 <FreeFull> > a*3
01:23:00 <lambdabot> a * 3
01:23:01 <thutubot> a * 3
01:23:04 <elliott> i cant believe it took you this long to figure that out
01:23:07 <FreeFull> Knows about Expr too
01:23:09 <elliott> @echo
01:23:09 <lambdabot> echo; msg:IrcMessage {msgServer = "freenode", msgLBName = "lambdabot", msgPrefix = "elliott!elliott@unaffiliated/elliott", msgCommand = "PRIVMSG", msgParams = ["#esoteric",":@echo"]} rest:""
01:23:09 <thutubot> echo; msg:IrcMessage {msgServer = "freenode", msgLBName = "lambdabot", msgPrefix = "elliott!elliott@unaffiliated/elliott", msgCommand = "PRIVMSG", msgParams = ["#esoteric",":@echo"]} rest:""
01:23:13 <FreeFull> Oh
01:23:18 <FreeFull> It literally copies lambdabot
01:23:18 <elliott> @quote lambdabot
01:23:19 <lambdabot> lambdabot says: Couldn't match kind `?? -> ? -> *' against `(* -> *) -> * -> *'
01:23:19 <thutubot> lambdabot says: Couldn't match kind `?? -> ? -> *' against `(* -> *) -> * -> *'
01:23:21 <monqy> shachaf: imo you should make lambdabot say something funny
01:23:26 <monqy> like a pun!
01:23:31 <FreeFull> > "a pun"
01:23:32 <lambdabot> "a pun"
01:23:33 <thutubot> "a pun"
01:23:44 <shachaf> monqy: imo i can't because i'm not a lmabdaobot admin????
01:23:49 <monqy> :-0
01:23:54 <monqy> * :-)
01:23:54 <shachaf> monqy: "try elliott"
01:24:08 <Jafet> badlmaobot
01:25:07 <FreeFull> > "<CTCP>"
01:25:07 <elliott> @msg monqy something funny
01:25:09 <lambdabot> <hint>:1:2:
01:25:09 <lambdabot> lexical error in string/character literal at character '\S...
01:25:10 <thutubot> <hint>:1:2:
01:25:10 <thutubot> lexical error in string/character literal at character '\S...
01:25:31 <Bike> maobot sounds like a good bot
01:25:32 <shachaf> scarf: What's going on with thutubot?
01:25:44 <scarf> scarf: it's a long-standing bug
01:25:48 <scarf> where it repeats everything lambdabot says
01:25:54 <FreeFull> "bug"
01:25:58 <scarf> I never bothered to fix it because I bring it in here so rarely
01:26:02 <c00kiemon5ter> test
01:26:06 <Bike> that's a pretty awesome bug
01:26:09 <FreeFull> test failed
01:26:14 <c00kiemon5ter> yap
01:26:54 <scarf> <lambdabot> test
01:26:58 <scarf> wait, IRC doesn't work like that
01:27:12 <scarf> and I can't be bothered to forge the message from the server
01:27:28 <lambdabot> IRC doesn't work like that scarf
01:27:28 <thutubot> IRC doesn't work like that scarf
01:28:08 <Phantom__Hoover> scarf, ...why does it do that
01:28:12 <Phantom__Hoover> just... why
01:28:23 <Vorpal> pretty random bug
01:28:48 <scarf> it's a bug in an easter egg / hidden feature that once successfully trolled elliott
01:28:54 <Vorpal> ah
01:28:56 <scarf> I don't think the easter egg works any more
01:28:58 <scarf> but the bug still exists
01:29:08 <scarf> +haskell 2+2
01:29:11 <scarf> yeah
01:29:21 <scarf> +quit
01:29:25 <scarf> oh
01:29:27 -!- scarf has changed nick to ais523.
01:29:29 <ais523> +quit
01:29:39 <ais523> hmm :(
01:29:40 -!- thutubot has quit (Remote host closed the connection).
01:29:42 <elliott> Bike: maobot is a bot to play Mao, I guess?
01:29:43 <c00kiemon5ter> lol
01:29:44 -!- ais523 has changed nick to scarf.
01:29:45 <oerjan> <scarf> FreeFull: hmm, is it that where doesn't work like that? <-- hugs (rip) supported that syntax
01:29:55 <scarf> Freenode have changed how they mark someone as identified
01:29:57 <Bike> elliott: oh i was thinking communist but that would be good too
01:30:09 <FreeFull> oerjan: What does the haskell 98 specification say?
01:30:15 <shachaf> rip hugs
01:30:16 <shachaf> rugs
01:30:30 <shachaf> FreeFull: The Haskell Report says that's not an expression.
01:31:48 <scarf> elliott: btw, is it standard to write "fuck" immediately after screwing up an oko pyramid?
01:32:04 <elliott> scarf: I don't know anything about standards
01:32:07 <FreeFull> shachaf: So it's a lambdabot problem?
01:32:07 <elliott> I do it because it's annoying
01:32:14 <FreeFull> Because lambdabot only does expressions
01:32:14 <shachaf> FreeFull: No.
01:32:18 <elliott> in their native channel there is a bot that kicks you when it happens
01:32:20 <FreeFull> Rather than ghci magicry
01:32:23 <elliott> so if there's anything standard it's probably that
01:32:26 <shachaf> FreeFull: Well, it wouldn't work in ghci either.
01:32:45 <FreeFull> True
01:32:46 <shachaf> > let quine = x ++ show x where x = "x ++ show x where x = " in quine
01:32:48 <lambdabot> "x ++ show x where x = \"x ++ show x where x = \""
01:33:02 <FreeFull> It works in let expressions
01:33:04 <Bike> haskell has things other than expressions?
01:33:21 <FreeFull> Bike: x = y isn't an expression
01:36:31 <oerjan> scarf: is thutubot's code available?
01:36:56 <scarf> oerjan: I don't know; it's available in the sense that I don't mind posting it
01:37:20 <scarf> shall I put it on sprunge or somewhere?
01:37:29 <oerjan> yes please
01:38:25 <FreeFull> Can you do pattern matching in an if?
01:38:37 <FreeFull> As in in the condition
01:38:38 <scarf> oerjan: http://sprunge.us/JTUW?thutu
01:38:58 <scarf> you can see how old the codebase is just by looking at the IRC commands
01:39:09 <scarf> last modified oct 10 2008
01:40:10 <oerjan> scarf: that contains a password hth
01:41:00 <scarf> oh bleh
01:41:24 <FreeFull> > (\x -> if a <- x then a else 3) 4
01:41:25 <lambdabot> <hint>:1:13: parse error on input `<-'
01:41:29 <FreeFull> Nope
01:41:30 <scarf> good thing it was a single use insecure one
01:42:12 -!- thutubot has joined.
01:42:31 <oerjan> scarf: in the line /^=:lambdabot=![^ ]* PRIVMSG [^ ]* =:(.*?)(=r)?=x/--PRIVMSG =#esoteric =:$1=r=n=x/
01:42:34 <Bike> wait, what the hell is that supposed to do, don't you need a do block
01:42:37 <FreeFull> > (\x -> let a | (b,3) <- a = 0 | otherwise = 3 in a x) (4,3)
01:42:39 <lambdabot> The function `a' is applied to one argument,
01:42:39 <lambdabot> but its type `(t0, t1)' has n...
01:42:39 <thutubot> The function `a' is applied to one argument,
01:42:39 <thutubot> but its type `(t0, t1)' has n...
01:42:43 <oerjan> change the second [^ ] to [^# ]
01:42:54 <oerjan> (i think)
01:42:57 -!- thutubot has quit (Remote host closed the connection).
01:43:07 <kmc> which syntax did hugs support?
01:43:22 <shachaf> Hugs> x where x = 5
01:43:22 <shachaf> 5
01:43:47 <kmc> as an expression? or as a REPL special case?
01:43:55 <scarf> oerjan: password changed
01:44:07 <shachaf> REPL special case
01:44:11 <oerjan> scarf: what about my bugfix suggestion?
01:44:18 <elliott> scarf: can you update the sprunge accordingly?
01:44:24 <kmc> ok that is more sane
01:44:29 <scarf> oerjan: it's using lamdabot commands that don't even exist
01:44:31 * oerjan swats elliott -----###
01:44:34 <scarf> so it needs more of a fix than that
01:44:58 <scarf> oerjan: looks like my practice of using weak but unique passwords for things that might be pastebinned accidentally has paid off
01:45:00 <oerjan> @run exists too
01:45:02 <lambdabot> Not in scope: `exists'Not in scope: `too'
01:45:02 <lambdabot> Perhaps you meant one of these:
01:45:02 <lambdabot> ...
01:45:13 <elliott> kmc: in haskell 1.old, where was an expression
01:45:18 <elliott> so (x where x = ()) was a valid expr
01:45:34 <kmc> why did they remove it? too much parsing ambiguity?
01:45:57 <scarf> you could take the Verity approach and require parens at the least sign of ambiguity
01:46:01 <shachaf> Sounds kind of ambiguous to me.
01:46:26 <shachaf> Even if it isn't ambiguous on its own, it's definitely ambiguous if ou want it to work for the things current-where works for.
01:46:28 <oerjan> scarf: @run exists. but all my fix is trying to do is to ignore lambdabot messages sent to channels.
01:46:34 <FreeFull> > '\34'
01:46:36 <shachaf> Scoping over multiple bindings and all that.
01:46:36 <lambdabot> '"'
01:46:42 <FreeFull> Perfect
01:46:53 <scarf> oerjan: you can take over maintaining thutubot if you like
01:47:03 <scarf> although actually knowing thutu would be helpful
01:47:11 <elliott> kmc: who knows
01:47:19 <elliott> kmc: well where is useful because you can go across multiple clauses
01:47:35 <elliott> but hey there have been haskell versions where all they did was make things worse by ruining them when they were good before
01:47:39 <elliott> so who knows???
01:49:52 <scarf> o
01:50:17 <shachaf> Remember Haskell 1.4?
01:50:19 <shachaf> Good times.
01:50:37 <oerjan> scarf: well my main point in asking for the code was to see if that bug was trivial to fix, and it looked to me like it was, based only on the fact that there was a part of the regexp which obviously matches the recipient.
01:50:47 <scarf> yeah, there are a bunch of trivial to fix bugs
01:50:49 <FreeFull> > let x = print (y ++ init $ show y ++ "\34 in x") where y = "let x = print (y ++ init $ show y ++ \"34 in x\") where y = " in x
01:50:50 <lambdabot> Couldn't match expected type `[GHC.Types.Char]'
01:50:51 <lambdabot> with actual ty...
01:51:21 <scarf> hey, remember when this channel was active enough that we had to make #esoteric-blah for spammy things?
01:51:25 <FreeFull> > let x = print (y ++ (init $ show y) ++ "\34 in x") where y = "let x = print (y ++ (init $ show y) ++ \"34 in x\") where y = " in x
01:51:26 <scarf> active and ontopic enough, that is
01:51:27 <lambdabot> No instance for (GHC.Show.Show (GHC.Types.IO ()))
01:51:27 <lambdabot> arising from a use of ...
01:51:32 <FreeFull> Oh dammit
01:51:40 <FreeFull> One last try
01:51:51 <FreeFull> > let x = (y ++ (init $ show y) ++ "\34 in x") where y = "let x = (y ++ (init $ show y) ++ \"34 in x\") where y = " in x
01:51:53 <lambdabot> "let x = (y ++ (init $ show y) ++ \"34 in x\") where y = \"let x = (y ++ (i...
01:52:05 <FreeFull> Not quite
01:52:14 <elliott> you realise I gave a working quine along those lines before...
01:52:46 <Jafet> > text $ ap (++) show "> text $ ap (++) show "
01:52:48 <lambdabot> > text $ ap (++) show "> text $ ap (++) show "
01:53:00 <Bike> > (\x -> x ++ "\"" ++ x ++ "\"") "(\x -> x ++ show x)"
01:53:01 <lambdabot> <hint>:1:36:
01:53:02 <lambdabot> lexical error in string/character literal at character ' '
01:53:03 <shachaf> Jafet: Sorry, you need to start the line with a space.
01:53:07 <Bike> wow that was dumb, nevermind
01:53:51 -!- Arc_Koen has quit (Quit: Arc_Koen).
01:54:33 <Jafet> `echo space
01:54:34 <HackEgo> space
01:54:52 <shachaf> ^echo space
01:54:57 <FreeFull> Well, a working lambdabot quine technically is something like > fix (\x -> x ++ show x) "> fix (\x -> x ++ show x)"
01:55:05 <shachaf> @tell fungot hi
01:55:06 <lambdabot> Consider it noted.
01:55:06 <FreeFull> I think
01:55:14 <FreeFull> Wait, no
01:55:20 <Bike> elliott's seems fine to me.
01:55:24 <FreeFull> It doesn't take into consideration that lambdabot stringifies everything
02:03:23 <Sgeo> http://stackoverflow.com/questions/233673/lexical-closures-in-python
02:03:25 <Sgeo> Fuck Python
02:03:33 <Jafet> `run function x { printf "%s%q" "$1" "$1"; }; x \`run\ function\ x\ \{\ printf\ \"%s%q\"\ \"\$1\"\ \"\$1\"\;\ \}\;\ x\
02:03:34 <HackEgo> ​`run function x { printf "%s%q" "$1" "$1"; }; x \`run\ function\ x\ \{\ printf\ \"%s%q\"\ \"\$1\"\ \"\$1\"\;\ \}\;\ x\
02:03:48 <elliott> hi
02:04:11 <Jafet> @google fuck python
02:04:13 <lambdabot> https://gist.github.com/1022976
02:05:10 <Bike> Sgeo: for the love of god why do people keep using for loops for this garbage
02:05:33 <Sgeo> Does Python have a better looping operator?
02:05:46 <Sgeo> Python for is more aptly described as foreach
02:05:55 <monqy> how about map
02:06:03 <Bike> why do people expect the variable to be rebound, i honestly don't get it
02:06:40 <Sgeo> Because in good languages it is?
02:06:44 <elliott> sure seems like mutability causes a lot of bugs and misconception due to its fundamentally bad nature for structuring programs huh
02:06:47 <elliott> huh huh huh
02:06:50 <elliott> the answer is yes
02:06:50 <Bike> in C it's an obvious goto loop, in Python it's a slightly less obvious goto loop
02:07:05 <Bike> imo shut your face elliott
02:07:09 <elliott> Bike: are you even like a lisper. what are you
02:07:18 <Sgeo> Common Lisper I think
02:07:19 <elliott> choose your fucking side so I can shoot you if it's the wrong one
02:07:31 <Bike> just
02:07:33 <Bike> why is it "wrong"
02:07:41 <elliott> sounds like you're afraid of judgement
02:07:44 <elliott> ps this isnt even about the for loop any more
02:07:48 <elliott> I just want to know whether to hate you or not
02:07:50 <Bike> it sets the fucking variable, you're using fucking python, you know what assignment is
02:07:50 <Jafet> BiKE iS A sCHeMEr
02:07:53 <elliott> it's a good thing to know right
02:07:53 <Bike> just hate me ok
02:07:56 <elliott> no I already do
02:07:58 <elliott> I'm just refining it okay
02:08:02 <Bike> do it more
02:08:03 <elliott> feed me the information!!!!
02:08:04 <Bike> HATE ME MORE
02:08:06 <elliott> FEED ME
02:08:09 <Bike> I'M RIGHT HERE
02:08:14 <Bike> TAKE ME NOW
02:08:16 <elliott> I'M NOT GETTING FED
02:08:18 <elliott> :(
02:08:20 <elliott> v. hungry
02:08:24 <Jafet> Is this what gay sex is like
02:08:30 <Bike> gay PLT sex
02:08:32 <Bike> it's a sad, sad sight
02:09:06 <elliott> Bike: so I'm just going to take Sgeo's word and assume you're a CLer unless you state otherwise
02:09:13 <Bike> Sgeo: also the example is always that "what if want to accumulate a list of closures in a loop" thing that i've never seen in real code but i guess somebody might use it somewhere???
02:09:13 <elliott> I can understand why you wouldn't say it yourself since it's pretty embarrassing
02:09:20 <Bike> is it
02:09:29 <Bike> hm i think i should make some anti-scheme joke here but i don't know any
02:09:38 <elliott> well have you ever read the CL spec
02:09:40 <elliott> like really read
02:09:42 <elliott> i mean wow
02:09:47 <Bike> most of it
02:09:54 <Jafet> elliott is scared of the hyper.
02:09:56 <shachaf> wait Bike is a CLer??
02:09:56 <Sgeo> Bike, I'm working on a problem (for some website that does stuff) and I want to accumulate a list of closures.
02:09:57 <Bike> well, the hyperspec, not ansi, i don't have money
02:09:58 <shachaf> how could you Bike
02:09:58 <elliott> also there's the thing where your language isn't elegant *or* practical!!
02:10:07 <Bike> ok
02:10:11 <Sgeo> Not really in a for loop particularly, but the corresponding list comprehension also had that issue
02:10:14 <elliott> pretty bad place to be in imo
02:10:32 <Jafet> Yeah, common lisp is so bad, even paul graham doesn't use it
02:10:44 <Jafet> It feels, like, a hundred years old
02:10:47 <shachaf> Sgeo: What's the language du jour?
02:11:05 <Bike> Sgeo: why. explain
02:11:08 <Sgeo> shachaf, codeeval doesn't accept Smalltalk solutions nor Racket solutions
02:11:18 <shachaf> So back to Java?
02:11:29 <Sgeo> Bike, want to take a tuple and for each of 4 directions get a new tuple
02:11:49 <shachaf> monoids monoids monoids monoids monoids monoids
02:11:50 <shachaf> so easy
02:11:55 <Sgeo> Maybe I forgot how to think imperatively
02:11:56 <Bike> so what are you closing over
02:12:07 <Sgeo> The direction
02:12:23 <Bike> why don't you just accumulate the tuples?
02:12:25 <elliott> Bike: also there's the thing whereby people call CL a functional language.
02:12:30 <elliott> because they're stupid.
02:12:33 <Bike> elliott: trust me that annoys us too
02:12:35 <Sgeo> `quote common.lisp
02:12:36 <HackEgo> No output.
02:12:39 <elliott> Bike: yes but then the thing is...
02:12:43 <Sgeo> `quote common
02:12:44 <HackEgo> 31) <ehird> is there a problem with it being carbonized :D <augur> yes: carbonized coffee bean is known more commonly as "charcoal" \ 616) <ais523> Just about all females often feel that exactly why all Hollywood stars common maintain its brightness as Tom in spite of frantic operate routine and large operate pressure from the skin. What do you th
02:12:46 <elliott> Bike: the joke is on you for using a language that isn't functional
02:12:51 <elliott> while realising it isn't
02:12:51 <Bike> !!!!!
02:13:01 <Bike> how could i be so wrong
02:13:05 <FreeFull> `quote Sgeo
02:13:08 <HackEgo> 54) <Sgeo> What else is there to vim besides editing commands? \ 68) <Sgeo|web> Where's the link to the log? <lament> THERE'S NO LOG. YOUR REQUEST IS SUSPICIOUS AND HAS BEEN LOGGED. \ 101) <pikhq> And... WTF is it doing. <pikhq> :( <Sgeo_> Is it sexing? \ 110) <coppro> what's the data of? [...] <Sgeo> Locations in a now deceased game called Muta
02:13:19 <shachaf> Bike: i heard your language of choice doesn't use {- -} comments.............................................
02:13:29 <shachaf> (creegan)
02:13:39 <FreeFull> {- -} looks like a smiley
02:13:40 <Bike> i thought if you talked about comment syntax kmc punched you until you were dead.
02:13:42 <elliott> Bike: lo, you think you have transcended the blub, but nay, i knoweth the blub that surpasseth even that which paul graham divined
02:13:45 <elliott> ps it's common lisp haskell forever
02:13:54 <Bike> are you high
02:14:05 <elliott> higher up in the language food chain than you yes
02:14:06 <Sgeo> He's high on functional programming
02:14:22 <shachaf> Bike: btw haskell is the worst language
02:14:41 <shachaf> it lets you prove false??
02:14:50 <shachaf> agda 4ever
02:15:10 <Bike> for the record, i didn't mention i usually use CL because language arguments are dumb and i think everyone here is well aware of that and i'd rather listen to bizarre-ass jokes about oh let's say intuitionistic logic
02:15:20 <Bike> in-jokes, rather
02:15:27 <elliott> sorry but i need the occasional flamewar
02:15:33 <scarf> `quote 616
02:15:34 <HackEgo> 616) <ais523> Just about all females often feel that exactly why all Hollywood stars common maintain its brightness as Tom in spite of frantic operate routine and large operate pressure from the skin. What do you think that they have got sufficient time to observe all attractiveness strategies and tips that his grandmother utilized to abide by?
02:15:34 <Bike> it's ok
02:15:41 <elliott> like i still respect you as a person
02:15:48 <elliott> i just have to hate you for being a cl user
02:15:49 <Bike> haha that's funny
02:16:03 <Phantom__Hoover> 'elliott ruined me with constructivism' part 7: i have a logic module this term
02:16:06 <Phantom__Hoover> it's classical
02:16:16 <elliott> Bike: by the way by "usually use CL" do you mean "pretend to use CL on IRC because nobody actually uses it for real programs" 8)
02:16:20 <scarf> elliott: apart from wrt DCSS, is there anything we really disagree with each other on, to flamewar levels?
02:16:32 <elliott> scarf: do you acknowledge that @ is the best thing in the universe
02:16:37 <shachaf> Bike, on the other hand, hates elliott as a person but respects him for being a Haskell user.
02:16:40 <monqy> roguelike design in general?
02:17:14 <shachaf> all roguelikes are bad
02:17:18 <shachaf> except robotfindskitten??
02:17:39 <Jafet> Pop zen is bad
02:18:10 <ion> I actually played a few minutes of Crawl this week.
02:18:12 <Bike> elliott: to be serious for half a second, it's because as a dumbass undergrad i don't really have "real programs" to write anyway, and i don't know shit about "real programs".
02:18:14 <ion> for the first time in months
02:18:35 <elliott> Bike: wow way to give away your approximate age range
02:18:39 <elliott> where's the fucking mystery Bike
02:18:42 <shachaf> Bike: elliott doesn't write "real programs" either.
02:18:44 <elliott> you don't appreciate subtlety. JUST LIKE COMMON LISP
02:18:52 <Bike> i know, shachaf.
02:18:56 <shachaf> elliott: That doesn't give your age range away?
02:19:08 <shachaf> shapr is an undergrad and he's 40-something.
02:19:11 <Bike> real programs are only written by the hardcorest of AI lab hackers, on mount esr
02:19:32 <Bike> hm this reminds me that i should look at those ancient AI programs written in CL again
02:19:33 <elliott> shachaf: It does modulo outliers?
02:19:37 <Bike> (they are completely fucking unreadable)
02:19:43 <shachaf> Bike isn't an outlier.
02:19:46 <shachaf> s/.$/?/
02:19:52 <Bike> am i ??
02:19:59 <shachaf> Yes.
02:20:06 <Bike> Oh
02:20:10 <shachaf> Anyway should I be an undergrad?
02:20:16 <shachaf> Would I be an outlier?
02:20:22 <monqy> being an undergrad isn't so great
02:20:27 <Bike> Being an undergrad sucks, just learn metalworking or something instead.
02:20:42 <Fiora> bike is younger than me actually :P
02:20:52 <Bike> Aren't you like 600 years old?
02:21:04 <elliott> shachaf: aren't you like 21
02:21:05 <Bike> Not familiar with reptilian aging honestly.
02:21:12 <Fiora> stop making fun of me, I'm not that old ;-;
02:21:27 <shachaf> monqy: are you an overgrad
02:21:36 <Bike> You don't look a day over 500, babe
02:21:36 <monqy> shachaf: depends on how you look at it
02:21:38 <shachaf> in soviet russia, are you a leningrad
02:21:48 <monqy> i don't know what that is
02:22:44 <Fiora> ._.
02:22:48 <Bike> imo volgograd > leningrad
02:22:49 <Fiora> ... I'm only 23... that's... not really old...
02:22:55 <shachaf> Fiora: uhh that's pretty old
02:23:08 <shachaf> most mathematicians are burnt out by the time they're 23
02:23:11 <Bike> Fiora, did you ever meet Lincoln?
02:23:19 <Bike> He knew like everybody right?
02:23:23 <shachaf> Fiora: galois was dead for 3 years by the time he was your age "fyi"
02:23:43 <Bike> Also he had true love. Do you have true love, Fiora?
02:23:55 <Fiora> ._.
02:24:14 <shachaf> ·_·
02:24:16 <Bike> well, and something about polynomials, i guess
02:25:30 <monqy> lots of things are named after galois
02:25:52 <Fiora> I guess I'm old
02:25:53 <Fiora> bleh
02:25:56 <monqy> yes
02:25:56 <Bike> Have you ever looked at Wikipedia's article on things named after Euler?
02:25:58 <elliott> monqy: galois was named after galois for example
02:26:01 <Bike> Sometimes I open it and just sob.
02:26:03 <monqy> elliott: yes
02:26:14 <monqy> lots of things are named after Euler too yes
02:26:20 -!- WeThePeople has joined.
02:26:29 <shachaf> what about things named after
02:26:31 <FreeFull> Project Euler, euler's constant, euler-something constant, euler euler euler
02:26:33 <shachaf> NICOLAAS DE BRUIJN
02:26:48 <Bike> de bruijn's name is probably cooler than euler's and galois's combined, yeah
02:26:51 <Fiora> I remember in complex analysis every single thing in the class had cauchy's name on it
02:26:56 <monqy> a few things are named after de bruijn
02:26:58 <Fiora> (I'm barely exaggerating)
02:27:05 <Bike> i also really like Catalan for some reason
02:27:08 <shachaf> DE BRUIJN: "COOLEST MATHEMATICIAN"????? "IMO YES"
02:27:13 <Bike> maybe because Catalonia is a mystical Spanish thing i don't understand
02:27:25 <Bike> (also because combinatorics is pretty cool, imo)
02:27:32 <shachaf> i love combinatorics
02:27:43 <Bike> Shachaf, this is not a special occasion.
02:27:53 <shachaf> Hmm?
02:28:01 <Bike> Combinatorics is not easy!
02:28:08 <shachaf> I didn't say it was easy!
02:28:14 <Bike> You were implying it.
02:28:19 <Bike> Utterances have context, shachaf!
02:28:23 <Bike> Horrible, horrible contexts.
02:28:36 <Jafet> Combinatorics is easy
02:28:53 <shachaf> Bike: Given that I *refrained* from saying it was easy, you might infer that I was implying the opposite.
02:28:53 <Bike> Fiora: Cauchy also has an advantage in that the Cauchy integral formula is the coolest thing to come out of math since negation
02:28:59 <shachaf> Bike: Also I don't know much about combinatorics. :-(
02:29:06 <Bike> It's "pretty cool, imo"
02:29:09 <shachaf> imo too
02:29:16 <Bike> google Analytic Combinatorics, it's free and also awesome.
02:29:21 <shachaf> Bike: did you know combinatorics is related to, like, types
02:29:24 <shachaf> "all over the place"
02:29:31 <Bike> Isn't everything related to, like, types?
02:29:39 <shachaf> Combinatorics comes up a lot.
02:30:12 <Bike> Maybe I should actually finish A=B (as if i'd understand it)
02:30:21 <shachaf> > compare a b
02:30:22 <elliott> Bike: what kind of negation are we talking here
02:30:23 <lambdabot> LT
02:30:35 <Bike> or find some hip new book on combinatypics, thus earning back the trust of this channel
02:30:47 <Bike> elliott: the kind with numbers that are "less than" "zero"
02:30:49 <elliott> Bike: man, Zeilberger, am I right?
02:30:54 <elliott> oh I hate that kind of negation
02:30:57 <Bike> You are, like, so right, man.
02:30:57 <elliott> logical ngeation is cool though
02:31:04 <elliott> I am so right
02:31:06 <elliott> I am always right
02:31:12 <Bike> I thought you were a constructivist!!!
02:31:23 <elliott> um, yes!
02:31:26 <shachaf> Bike: Actually there's remarkably little information about it. :-(
02:31:26 <elliott> (a -> _|_) is pretty cool
02:31:29 <Jafet> Those guys are pretty far left
02:31:35 <shachaf> You should become a combiantorist-turned-type-theorist and publish papers.
02:31:42 <FreeFull> shachaf: Ramanunjan was pretty cool
02:31:44 <elliott> Bike: don't you think???
02:31:44 <Jafet> Intuitionist hippies
02:31:51 <Bike> elliott: "pretty cool, imo"
02:31:55 <shachaf> elliott: what about (α → ⊥) → ⊥
02:31:59 <elliott> Bike: because negation is like
02:32:01 <elliott> contravariance
02:32:01 <shachaf> imo that's cooler than α
02:32:03 <elliott> or the other way around
02:32:10 <Bike> I actually don't think I'm going to go into math. If I can work types into what I want to do all the better though.
02:32:23 <Bike> Hm, I can't decide if I hate Zeilberger's webpage.
02:32:35 <FreeFull> Invent a function that does _|_ -> a
02:32:39 <FreeFull> But only works on bottom
02:32:52 <elliott> whoa zeilberger has a new webpage
02:32:57 <elliott> since the last time I saw it
02:32:58 <Jafet> Tort law IN THE TYPE SYSTEM
02:33:01 <Bike> On the one hand it's a trillion percent better than the average academic site. On the other, he knows what I did last summer, and in many of my previous lives.
02:33:12 <Bike> And he does not take prisoners.
02:33:16 <oerjan> <Bike> maybe because Catalonia is a mystical Spanish thing i don't understand <-- don't tell the catalonians they are spanish hth
02:33:21 <elliott> Bike: this website used to be much better
02:33:22 <elliott> i.e., worse
02:33:26 <elliott> in terms of visual appearance
02:33:29 <FreeFull> Is Haskell's type system turing-complete?
02:33:43 <Bike> oerjan: I assumed.
02:33:50 <Bike> FreeFull: What would that mean
02:33:55 <elliott> FreeFull: no
02:34:03 <Bike> inference is computable isn't it
02:34:10 <Bike> except for some weird types that are maybe ghc only?
02:34:17 <Bike> "I just don't know"
02:34:19 <elliott> Bike: i refer to http://web.archive.org/web/20110614084818/http://www.math.rutgers.edu/~zeilberg/
02:34:28 <Jafet> @google ghc undecidable
02:34:30 <lambdabot> http://hackage.haskell.org/trac/haskell-prime/wiki/UndecidableInstances
02:34:30 <lambdabot> Title: UndecidableInstances – Haskell Prime
02:34:32 <shachaf> Bike: GHC's type system is a very different thing from Haskell's.
02:34:33 <elliott> Bike: ps YOUR IGNORANCE IS TYPICAL OF ONE WHO USES A LANGUAGE WITH A HORRENDOUSLY CRIPPLED TYPE SYSTEM
02:34:37 <Bike> shachaf: I know.
02:34:55 <Bike> elliott: does haskell have types with uncomputable membership??? don't think so
02:35:07 <elliott> Bike: what does uncomputable mean here
02:35:12 <Bike> elliott: ok i like his new site better jesus christ is this green on blue
02:35:32 <Bike> elliott: you can express russell's paradox in the type system! "yay"
02:35:50 <Bike> Or well, the set in question, I suppose.
02:35:51 <oerjan> Bike: also don't tell the spanish the catalonians _aren't_ spanish, hth
02:35:59 <Bike> oerjan: Again, somehow I expected this.
02:36:00 <elliott> guys should i sleep
02:36:02 <elliott> kinda feel like i should
02:36:07 <Bike> sleep sucks imo
02:36:43 <Fiora> sleep is wonderful and you should do it
02:36:47 <Jafet> > "no" > "yes"
02:36:48 <lambdabot> False
02:36:54 <elliott> Fiora: but it's also kind of terrible!!!
02:36:59 <elliott> because when you're asleep it means you're not awake, see
02:37:05 <FreeFull> > True > False
02:37:07 <lambdabot> True
02:37:15 <Phantom__Hoover> hey elliott remember back when i was terrified of sleeping
02:37:30 <FreeFull> I don't get why Bool is an instance of Ord but ok
02:37:32 <shachaf> elliott: hey want to do the thing
02:37:32 <Bike> elliott: If it would help I could link you a paper on injecting yourself with things that maybe don't actually remove pain in surgery, and then you couldn't sleep.
02:37:35 <elliott> Phantom__Hoover: one day you will die : )
02:37:46 <Phantom__Hoover> is that a threat
02:37:56 <Bike> oerjan: So, plot twist. Turns out Catalan... is Belgian.
02:38:00 <shachaf> elliott: (actually not now but later so maybe not because maybe you'll be asleep but who knows)
02:38:00 <elliott> it',zs a threat.... from mother nature
02:38:12 <elliott> shachaf: sure tomorrow
02:38:13 <FreeFull> > foldr max [False,False,True]
02:38:14 <Bike> Or well, was. He died at some point I guess?
02:38:14 <lambdabot> No instance for (GHC.Show.Show
02:38:14 <lambdabot> ([[GHC.Types.Bool]] -> [...
02:38:23 <FreeFull> > foldr max [] [False,False,True]
02:38:23 <elliott> Bike: why would I inject myself with something that maybe doesn't actually remove pain!!
02:38:24 <lambdabot> Couldn't match expected type `[a0]'
02:38:25 <lambdabot> with actual type `GHC.Type...
02:38:27 <elliott> I'm not even going to have a surgerys
02:38:30 <FreeFull> > foldr max False [False,False,True]
02:38:30 <oerjan> Bike: don't tell the belgians they are spanish either.
02:38:32 <lambdabot> True
02:38:51 <FreeFull> There, a naive or
02:39:35 <Jafet> > foldr max False $ replicate (10^6) False
02:39:37 <lambdabot> False
02:39:49 <Jafet> > foldr max False $ replicate (10^7) False
02:39:51 <lambdabot> False
02:40:19 <FreeFull> replicate takes an Int
02:40:27 <elliott> Bike: THE MYSTERY IS KEEPING ME AWAKE HELP
02:40:32 <Jafet> > maximum $ replicate (10^7) False
02:40:36 <lambdabot> mueval-core: Time limit exceeded
02:40:41 <oerjan> > max True undefined
02:40:43 <lambdabot> *Exception: Prelude.undefined
02:40:45 <Jafet> "Haskell is awesome"
02:40:56 <Jafet> > max undefined True
02:40:58 <lambdabot> *Exception: Prelude.undefined
02:40:58 <FreeFull> oerjan: Max isn't lazy on the second argument
02:41:02 <FreeFull> Or the first
02:41:12 <FreeFull> Can't be
02:41:22 <elliott> it is if compare is.
02:41:26 <elliott> which it *can* be.
02:41:33 <elliott> > max (undefined :: ()) (undefined :: ())
02:41:35 <lambdabot> *Exception: Prelude.undefined
02:41:36 <FreeFull> How would you do a lazy compare?
02:41:39 <elliott> > max (undefined :: ()) ()
02:41:41 <lambdabot> *Exception: Prelude.undefined
02:41:43 <elliott> > max (()) (undefined :: ())
02:41:45 <lambdabot> *Exception: Prelude.undefined
02:41:47 <elliott> ugh, it behaves badly there
02:41:48 <oerjan> > compare True undefined
02:41:50 <lambdabot> *Exception: Prelude.undefined
02:41:56 <elliott> looks like the derived instances suck
02:41:57 <oerjan> > compare False undefined
02:41:57 <Jafet> > (((((())))))
02:41:59 <lambdabot> *Exception: Prelude.undefined
02:41:59 <lambdabot> can't find file: L.hs
02:42:02 <elliott> FreeFull: for instance, compare _ _ = EQ
02:42:03 <elliott> for ()
02:42:07 <oerjan> > compare undefined True
02:42:09 <lambdabot> *Exception: Prelude.undefined
02:42:12 <oerjan> > compare undefined False
02:42:14 <lambdabot> *Exception: Prelude.undefined
02:42:19 <oerjan> elliott: :(
02:42:37 <elliott> oerjan: don't worry. @ definitions are maximally lazy.
02:42:42 <Jafet> @src Ord
02:42:42 <lambdabot> class (Eq a) => Ord a where
02:42:42 <lambdabot> compare :: a -> a -> Ordering
02:42:42 <lambdabot> (<), (<=), (>), (>=) :: a -> a -> Bool
02:42:42 <lambdabot> max, min :: a -> a -> a
02:42:42 <FreeFull> elliott: Wouldn't that only be after the other pattern matches though
02:42:49 <elliott> FreeFull: what
02:42:54 <elliott> there is only one value of type ()
02:43:13 <FreeFull> Wait
02:43:15 <FreeFull> You're right
02:43:31 <Jafet> > (\(\() -> ()) -> ()) ()
02:43:33 <lambdabot> <hint>:1:4: Parse error in pattern: \ () -> ()
02:43:49 <oerjan> elliott: yay!
02:43:50 <Jafet> > (\((\() -> ()) -> ()) -> ()) ()
02:43:52 <lambdabot> ()
02:44:04 <oerjan> elliott: they should use amb for full effect
02:44:12 <elliott> oerjan: yes, clearly
02:44:15 <elliott> who needs performance or sanity
02:44:17 <FreeFull> () is great for base zero arithmetic
02:44:33 <FreeFull> Just have to define a num instance
02:44:43 <Jafet> () is the counterpart to _|_
02:44:56 <FreeFull> Is () top?
02:44:58 <FreeFull> Or cobottom
02:45:51 <FreeFull> @help
02:45:52 <lambdabot> help <command>. Ask for help for <command>. Try 'list' for all commands
02:45:54 <FreeFull> @list
02:45:55 <lambdabot> http://code.haskell.org/lambdabot/COMMANDS
02:47:00 <FreeFull> You can't define an instance in a let expression, can you
02:47:27 <elliott> no
02:47:30 <Jafet> https://github.com/ekmett/reflection/blob/master/examples/Monoid.hs
02:47:36 <Jafet> "unless you're edwardk"
02:47:58 <FreeFull> Nope
02:48:06 <FreeFull> Damn
02:48:18 <Bike> oerjan: I'm starting to sense a pattern.
02:48:19 <FreeFull> Want to make a Num instance for ()
02:48:33 <Bike> elliott: Well, the chemical shuts down your muscles. That's basically like sleep, right?
02:49:21 <oerjan> Bike: the spanish were big on conquering things, hth
02:50:02 <FreeFull> instance Num () where { ()+()=(); ()*()=(); negate ()=(); abs ()=(); signum ()=(); fromInteger _ =(); }
02:50:42 <Bike> oerjan: Am I allowed to tell conquering things that they are Spanish?
02:50:45 <Jafet> That is the worst instance ever
02:50:53 <Jafet> It's not at all lazy
02:51:07 <Bike> but it forms a group!!!
02:51:12 <elliott> Bike: you use two spaces afte ra . too
02:51:15 <elliott> you disgust me. should i sleep
02:51:17 <Bike> hell maybe a ring, i forget
02:51:27 <Bike> elliott: I READ IT IN A STYLE GUIDE ONCE OKAY
02:51:33 <Jafet> Actually Num has no laws but okay
02:52:03 <Bike> who needs laws when we have axioms
02:52:06 <FreeFull> instance Num () where { _+_=(); _*_=(); negate _=(); abs _=(); signum _=(); fromInteger _ =(); }
02:52:13 <FreeFull> Better, Jafet?
02:52:31 <Bike> good instance imo
02:52:55 <FreeFull> Wait
02:52:58 <FreeFull> That probably wouldn't work
02:53:02 <elliott> Bike: style guide more like
02:53:05 <elliott> sterile LIED
02:53:08 <FreeFull> Oh
02:53:13 <FreeFull> ghci doesn't complain
02:53:15 <shachaf> hi Bike
02:53:20 <Jafet> New Num instances are approved by a jury panel who give it a three-part score on originality, aesthetic merit, and use of applicative functors
02:53:23 <Bike> whoa man that hurts :(
02:53:27 <FreeFull> Works
02:53:27 <monqy> shachaf: was that a disapproving hi
02:53:28 <Bike> hi shachaf
02:53:38 <shachaf> monqy: no it was an "im back hi"
02:53:44 <FreeFull> _ must be treated specially when next to other +"&$*"£!"*
02:53:44 <shachaf> monqy: Not every hi has to be disapproving!
02:53:45 <Bike> hello i am here
02:54:43 <Jafet> instance Num () where (+)=const$const undefined; (*)=const$const undefined; negate=const undefined; abs=const undefined; signum=const undefined; fromInteger=const undefined
02:54:59 <shachaf> instance Num () where
02:55:09 <Bike> aesthetically unmeritous sorry
02:55:24 <FreeFull> () is the wrong kind for Functor
02:56:19 <FreeFull> So can't be Applicative either ):
02:56:25 <Bike> "Later, in 1849, Catalan was visited at his home by the French Police, searching for illicit teaching material;"
02:56:53 <monqy> FreeFull: how about Const ()
02:57:05 <monqy> FreeFull: how about Proxy
02:57:27 <shachaf> monqy: did you hear Proxy was in base briefly but now they're maybe taking it out again
02:57:27 <zzo38> But something that is the correct kind for Functor is the wrong kind for Num.
02:57:32 <FreeFull> :info Const
02:57:41 <FreeFull> @info Const
02:57:42 <lambdabot> Const
02:57:48 <FreeFull> Real useful lambdabot
02:57:49 <Bike> how many fucking bot prefixes are the- oh.
02:58:00 <Bike> :t Const
02:58:02 <lambdabot> a -> Const a b
02:58:07 <Bike> thanks
02:59:48 <shachaf> Bike: newtype Const a b = Const a
03:00:06 <shachaf> cf.: const a b = a
03:00:20 <zzo38> Some of the names I don't like much so I would prefer Finalize instead of Proxy, Succ instead of Maybe, Nat8 instead of Word8, and so on. But, I don't know, what is your opinions of such things?
03:00:25 <oerjan> Bike: sounds unwise hth
03:00:38 <Bike> that seems like a weird type but what do I know? that's right NOTHING *sobs*
03:00:40 <Bike> oerjan: thanks
03:00:52 <shachaf> Bike: It's a great type!
03:01:12 <shachaf> Bike: It's even an Applicative functor.
03:01:29 <zzo38> instance (Monoid x) => Alternative (Const x) actually you can have too.
03:02:21 <oerjan> <FreeFull> _ must be treated specially when next to other +"&$*"£!"* <-- _ belongs to the alphanumeric group of characters, not the operator ones
03:02:34 <zzo38> Const does have another meaning too, which is that (Codensity (Const x)) is like (Cont x)
03:02:40 <FreeFull> oerjan: I see
03:03:58 <FreeFull> I wanted to know where Const is defined though
03:04:18 <Bike> @src Const
03:04:18 <lambdabot> Source not found. My pet ferret can type better than you!
03:04:23 <zzo38> And (Density (Const x)) like (Store x)
03:04:26 <Bike> weeeeeak
03:04:39 <oerjan> > t (0$0 `Const`)
03:04:41 <lambdabot> can't find file: L.hs
03:04:44 <oerjan> > t (0$0 `Const`)
03:04:46 <lambdabot> can't find file: L.hs
03:04:52 <oerjan> oops
03:04:55 <oerjan> > (0$0 `Const`)
03:04:57 <lambdabot> The operator `Control.Applicative.Const' [infixl 9] of a section
03:04:57 <lambdabot> must ...
03:05:04 <oerjan> FreeFull: there you go
03:05:11 <zzo38> And (CodensityAsk (Const x)) like ((->) x)
03:05:20 <oerjan> ...@hoogle might have been easier, mind you.
03:05:31 <Bike> @hoogle Const
03:05:31 <lambdabot> Prelude const :: a -> b -> a
03:05:32 <lambdabot> Data.Function const :: a -> b -> a
03:05:32 <lambdabot> Control.Applicative Const :: a -> Const a b
03:06:00 <Bike> So does Haskell have S built in too
03:06:06 <FreeFull> oerjan: Heheh, using a syntax error
03:06:13 <FreeFull> > t
03:06:15 <lambdabot> t
03:06:19 <FreeFull> > t 3
03:06:21 <lambdabot> The function `Debug.SimpleReflect.Vars.t'
03:06:21 <lambdabot> is applied to one argument,
03:06:21 <lambdabot> but...
03:06:31 <zzo38> And even, (Free (Const x)) like (Either x)
03:06:58 <FreeFull> Could not find module `Control.Applicative.Const'
03:07:48 <zzo38> So, it actually makes a lot of things!
03:08:28 <Bike> zzo, this would mean a lot more to me if I understood anything, but I don't.
03:08:29 <Bike> Sorry!
03:09:01 <shachaf> Bike: It has ap.
03:09:08 <shachaf> > ap f g x :: Expr
03:09:10 <lambdabot> Ambiguous type variable `a0' in the constraints:
03:09:10 <lambdabot> (GHC.Show.Show a0)
03:09:10 <lambdabot> ...
03:09:18 <Bike> "cool"
03:09:19 <Bike> :t ap
03:09:20 <lambdabot> Monad m => m (a -> b) -> m a -> m b
03:09:24 <shachaf> > ap (f :: Expr -> Expr) (g :: Expr -> Expr) x :: Expr
03:09:26 <lambdabot> Couldn't match expected type `a0 -> Debug.SimpleReflect.Expr.Expr'
03:09:26 <lambdabot> ...
03:09:37 <shachaf> > ap (f :: Expr -> Expr -> Expr) (g :: Expr -> Expr) x :: Expr
03:09:38 <lambdabot> f x (g x)
03:09:47 -!- Phantom__Hoover has quit (Remote host closed the connection).
03:10:02 <FreeFull> > let x 0 = x 0; x n = (x (n-1),x (n-1)) in x 3
03:10:05 <lambdabot> Occurs check: cannot construct the infinite type: t1 = (t0, t1)Occurs check...
03:10:31 <FreeFull> > let x 0 = x 0; x n = (x (n-1),()) in x 3
03:10:33 <lambdabot> Occurs check: cannot construct the infinite type: t0 = (t0, ())
03:10:51 <shachaf> kmc: Did you know if you press G in less while you're looking at a file it'll read to the end, tail -f-style?
03:11:00 <FreeFull> > let x 0 = x 0; x n = ((),()) in x 3
03:11:02 <lambdabot> ((),())
03:11:03 <shachaf> (It also has actual tail -f mode, of course.)
03:11:06 <FreeFull> > let x 0 = x 0; x n = ((),()) in x 0
03:11:07 <kmc> useful
03:11:10 <lambdabot> mueval-core: Time limit exceeded
03:11:14 <kmc> i was looking for that the other day
03:11:30 <zzo38> Can there be any monoid (not monad) transformers which is not applicative?
03:11:34 <shachaf> FreeFull: What are you playing at?
03:11:40 <FreeFull> No idea
03:12:21 <oerjan> <FreeFull> Could not find module `Control.Applicative.Const' <-- that's the whole qualified name, not the module
03:12:33 <FreeFull> oerjan: Oh, duh
03:12:39 <kmc> what's a monoid transformer?
03:13:30 <kmc> maybe 'composition' and 'direct product' are monoid transformers?
03:14:29 <shachaf> Transformers are annoying. :-(
03:14:36 <kmc> seems like there shouldn't be very many monoid transformers
03:14:37 <shachaf> Applicatives don't need transformers.
03:16:27 <zzo38> I don't mean applicative transformers. But applicatives make monoid transformers too.
03:18:32 <kmc> so what is a monoid transformer?
03:21:01 <shachaf> I guess this is a language more sexist than Hebrew?
03:21:03 <shachaf> The language is best known for its system of noun classes, numbering four in total. They tend to be divided among the following semantic lines:
03:21:06 <shachaf> I - most animate objects, men
03:21:08 <shachaf> II - women, water, fire, violence, and exceptional animals[3]
03:21:11 <shachaf> III - edible fruit and vegetables
03:21:13 <shachaf> IV - miscellaneous (includes things not classifiable in the first three)
03:21:27 <Bike> that sounds like it was probably misunderstood by whoever wrote that down.
03:21:31 <Bike> also, how's Hebrew sexist?
03:21:48 <shachaf> Quite possible.
03:22:16 -!- oerjan has quit (Quit: Ribbit).
03:23:18 <Bike> I mean, is it just gendered nouns or what.
03:23:37 <FreeFull> instance Monoid a => Monoid (Foo a) where { mempty = mempty; mappend x y = mappend x y; mconcat xs = mconcat xs; }
03:24:15 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:24:21 -!- DH____ has joined.
03:25:31 <FreeFull> Everything is bottom :)
03:25:57 -!- oerjan has joined.
03:27:27 <FreeFull> Ok, trying again where nothing is bottom
03:27:33 <FreeFull> Wondering how to do mconcat
03:28:17 <Jafet> @src Monoid
03:28:17 <lambdabot> class Monoid a where
03:28:17 <lambdabot> mempty :: a
03:28:17 <lambdabot> mappend :: a -> a -> a
03:28:17 <lambdabot> mconcat :: [a] -> a
03:28:20 <FreeFull> Wait, you don't have to do mconcat to have a monoid, do you
03:28:29 <Jafet> @src mconcat
03:28:29 <lambdabot> Source not found. Do you think like you type?
03:28:34 <FreeFull> mappend should be enough?
03:28:42 <FreeFull> Seems so
03:28:50 <monqy> FreeFull: there's a default instance for mconcat; it's just there in case you want to provide a more efficient implementation
03:29:01 <FreeFull> instance Monoid a => Monoid (Foo a) where { mempty = Foo (mempty); mappend (Foo x) (Foo y) = Foo (mappend x y);
03:29:02 <monqy> instance/implementation/whatever
03:29:05 <Jafet> What is mconcat anyway
03:29:06 <FreeFull> }
03:29:22 <Bike> mappend But On Lists i assume...
03:29:30 <FreeFull> Jafet: foldr mappend mempty
03:29:34 <monqy> it's a fold yes
03:29:45 <Bike> would it be silly to ask why the monoidal operation is called append
03:29:56 <monqy> arbitrary
03:30:09 <FreeFull> It is actually an append for Monoid [a]
03:30:43 <Jafet> @instances Monoid
03:30:44 <lambdabot> (), (a -> b), (a, b), (a, b, c), All, Any, Dual a, Endo a, First a, Last a, Maybe a, Ordering, Product a, Sum a, [a]
03:30:48 <FreeFull> Funny, apparently () is an instance of Monoid already
03:30:52 <FreeFull> mempty :: ()
03:30:56 <monqy> what's funny about it
03:31:02 <FreeFull> I can see why
03:31:05 <FreeFull> > mempty :: ()
03:31:07 <lambdabot> ()
03:31:29 <Bike> huh, now i understand why groups are categories of one object or whatever. weird.
03:31:33 <Jafet> It's like a clown. Some people think clowns are funny
03:31:45 <Bike> i wonder if i'll ever understand grothendieck. do you understand grothendieck?
03:31:52 <FreeFull> @hoogle (Monoid m)
03:31:52 <lambdabot> Warning: Unknown type Monoid
03:31:52 <lambdabot> Prelude undefined :: a
03:31:52 <lambdabot> Control.Applicative unwrapMonad :: WrappedMonad m a -> m a
03:31:59 <monqy> Bike: do you mean monoids are categories with one object, or groups are groupoids with one object?
03:32:19 <Bike> monoids are categories with one object.
03:32:23 <Bike> and "A group is a category with one object, in which all morphisms have inverses."
03:32:32 <monqy> aka groupoid
03:32:36 <Bike> right
03:32:42 <Jafet> @quote groupoidoid
03:32:42 <lambdabot> No quotes match. Are you on drugs?
03:32:52 <Jafet> @quote monoidoid
03:32:53 <lambdabot> <shachaf> says: And a semigroupoid with identities is called a monoidoid.
03:33:18 <Bike> mathematicians, literally the worst at naming things
03:33:48 <c00kiemon5ter> they usually name things by their name
03:33:56 <FreeFull> c00kiemon5teroid
03:33:58 <Jafet> f(g(s)) f(ds)
03:34:04 <Bike> yes, and that's a shitty way to name things.
03:34:22 <Bike> Just look at Pacific islands. ridiculous
03:34:27 <FreeFull> a semiapple with identity syndrome is called a blanabba
03:34:43 <c00kiemon5ter> I know! lets name this method, "Newton's method" ! It will be unique
03:35:04 <Bike> does identity syndrome have a cure ._.
03:36:08 <FreeFull> Bike: Yes, fruit transformers
03:36:21 <oerjan> applying any cure to the identity syndrome just gives you the cure back.
03:37:18 <FreeFull> Obviously CherryT Apple has no identity
03:37:39 <Jafet> You can inject yourself, but they say it is just homeomorphy.
03:38:54 <FreeFull> raisins are just grapeoids in the cat allegory of endocarpum
03:39:12 <monqy> aren't puns supposed to make sense
03:39:31 <FreeFull> No
03:39:55 <tswett> Stupid proof of the day:
03:40:25 <tswett> Every countable ordinal number can be embedded in the rational numbers. The union of all countable ordinal numbers is uncountable. Therefore, the rational numbers are uncountable.
03:40:47 <Bike> Good.
03:41:04 <Jafet> Checkmate.
03:41:39 <Jafet> Math should get a checkmate symbol
03:42:16 <tswett>
03:42:33 <monqy>
03:42:35 <shachaf> Jafet: Only constructivists have that.
03:42:39 <shachaf> It's called type-checkmate.
03:42:49 <monqy> ''nice one shachaf``
03:43:02 <FreeFull> lenght $ [0] ++ ((%) <$> [1..] <*> [1..]) ++ ((%) <$> [(-1),(-2)..] <*> [1..])
03:43:07 <FreeFull> length*
03:43:11 <shachaf> monqy: wow whats with the new quotes
03:43:16 <Bike> MATHEMATICAL_DOUBLE-STRUCK_CAPITAL_CHECKMATE
03:43:17 <monqy> they're backwards
03:43:28 <tswett> monqy: ✓⚢
03:43:35 <tswett> Apparently the "mates" in this case are lesbians.
03:43:37 <Bike> gaaaaay
03:44:01 <Jafet> I propose 凸
03:44:01 <tswett> Bike: you make a good point. The word "lesbian" *is* verbose.
03:44:25 <tswett> The Han character for "protrude"?
03:44:27 <Sgeo> :t (%)
03:44:28 <lambdabot> Not in scope: `%'
03:44:29 <lambdabot> Perhaps you meant `R.%' (imported from Data.Ratio)
03:45:06 <Jafet> Han mandarin pictograph for "fuck you"
03:45:17 <Sgeo> FreeFull, I think that doesn't work out the way you expect
03:45:22 <myndzi> concave in japanese anyway
03:45:32 <myndzi> one of the few i got around to learning
03:45:32 <myndzi> :P
03:45:40 <Sgeo> There exist rationals R that will not show up aftr any finite time T
03:45:43 <myndzi> er, convex
03:45:47 <myndzi> i tend to confuse the two
03:45:54 <Sgeo> It's because the List monad sucks.
03:46:29 <shachaf> is elliott asleep
03:46:42 <FreeFull> Sgeo: unrepresentable integers?
03:46:58 <FreeFull> Also, I knwo there would be duplicate numbers with this code
03:47:07 <Sgeo> FreeFull, just the ordering in which the List monad operates
03:47:15 <Bike> hopefully. he's got a looooot of curare in 'im.
03:47:19 <monqy> try using >>- :-)
03:47:27 <FreeFull> Well, obviously it wont' work for infinite lists like this
03:47:43 <FreeFull> :t (>>-)
03:47:43 <Sgeo> > take 20 $ (,) <$> [0..] <*> [0..]
03:47:44 <lambdabot> MonadLogic m => m a -> (a -> m b) -> m b
03:47:45 <lambdabot> [(0,0),(0,1),(0,2),(0,3),(0,4),(0,5),(0,6),(0,7),(0,8),(0,9),(0,10),(0,11),...
03:47:47 <monqy> > [1,2,3] >>- \ a -> [a, a+1]
03:47:48 <lambdabot> [1,2,2,3,3,4]
03:47:58 <monqy> ok that was a bad example
03:48:19 <shachaf> since when does lambdabot have >>-
03:48:22 <FreeFull> Now
03:48:31 <monqy> shachaf: as long as i can remember
03:48:37 <Bike> it's an exciting time for caleskell development
03:48:40 <shachaf> monqy: wow how come i never knew about it
03:49:19 <monqy> > [0..] >>- \ a -> [0..] >>- return . (a,)
03:49:20 <lambdabot> Illegal tuple section: use -XTupleSectionsPrecedence parsing error
03:49:20 <lambdabot> can...
03:49:23 <monqy> :((
03:49:30 <monqy> oh
03:49:50 <monqy> > [0..] >>- \ a -> [0..] >>- \ b -> [(a,b)]
03:49:52 <lambdabot> [(0,0),(1,0),(0,1),(2,0),(0,2),(1,1),(0,3),(3,0),(0,4),(1,2),(0,5),(2,1),(0...
03:49:53 <monqy> "so lame"
03:50:04 <tswett> ¿Qué es >>-?
03:50:08 <Bike> ooh i love that function
03:50:19 <monqy> > "hello" `interleave` "goodbye"
03:50:20 <lambdabot> "hgeololdobye"
03:50:27 <Sgeo> tswett, like bind except handles the multiple infinite lists thing properly
03:51:37 <Bike> > [0..] >>= \a -> [0..] >>= \b -> [(a,b)]
03:51:39 <lambdabot> [(0,0),(0,1),(0,2),(0,3),(0,4),(0,5),(0,6),(0,7),(0,8),(0,9),(0,10),(0,11),...
03:51:47 <Bike> Oh, that.
03:51:52 <tswett> Sgeo: well, this way of doing it isn't necessarily more proper.
03:52:00 <monqy> proper what
03:52:03 <Bike> yeah, sometimes you want one and sometimes you want the other
03:52:03 <shachaf> > ("hello","goodbye")^..levels (both.traverse).traverse
03:52:04 <lambdabot> Ambiguous occurrence `levels'
03:52:05 <lambdabot> It could refer to either `Data.Tree.levels',...
03:52:06 <shachaf> > ("hello","goodbye")^..Lens.levels (both.traverse).traverse
03:52:09 <lambdabot> "hgeololdobye"
03:52:17 <Bike> very elegant, shachaf.
03:52:26 <shachaf> Bike: It's actually disgusting.
03:52:29 <shachaf> "sorry to break it to you"
03:52:43 <Bike> :-0
03:52:43 <tswett> I take it . binds more tightly than ^..
03:52:51 <monqy> . binds prettty tightly
03:52:57 <monqy> "9 tight"
03:53:07 <shachaf> wow thats pretty tight
03:53:10 <Bike> ^.. is a p. good operator name
03:53:30 <shachaf> monqy: but how tight does the . in Lens.levels bind
03:53:37 <shachaf> "10 tight????"
03:53:46 <Bike> can't you just look it up
03:53:46 <monqy> not-an-operator-tight
03:53:50 <shachaf> wow
03:53:56 <shachaf> very tight
03:54:09 <Bike> :t both.traverse
03:54:09 <shachaf> btw i always forget what precedence means
03:54:10 <lambdabot> (Applicative f, Traversable t) => (a -> f b) -> (t a, t a) -> f (t b, t b)
03:54:11 <monqy> how tight does the . in "hello." bind?????
03:54:16 <monqy> > "hello."
03:54:17 <lambdabot> "hello."
03:54:20 <shachaf> so i like to call it stickiness
03:54:21 <Bike> :t both . traverse
03:54:22 <monqy> conclusion: very tight
03:54:23 <lambdabot> (Applicative f, Traversable t) => (a -> f b) -> (t a, t a) -> f (t b, t b)
03:54:30 <Bike> hmmmmMMMMmmmm
03:54:32 <shachaf> monqy: well tighter than "
03:54:47 <shachaf> :t both . traverse
03:54:48 <lambdabot> (Applicative f, Traversable t) => (a -> f b) -> (t a, t a) -> f (t b, t b)
03:55:05 <shachaf> wow
03:55:13 <shachaf> that's like gravity or something??
03:55:33 <monqy> a bond tight enough to overcome separation
03:55:53 <Jafet> :t bot
03:55:54 <lambdabot> Not in scope: `bot'
03:55:54 <lambdabot> Perhaps you meant one of these:
03:55:54 <lambdabot> `not' (imported from Data.Bool),
03:56:26 <shachaf> > [0..] >>- \ a -> [0..] >>- return . (,) a
03:56:28 <lambdabot> Precedence parsing error
03:56:28 <lambdabot> cannot mix `Control.Monad.Logic.Class.>>-' [i...
03:56:31 -!- Bike_ has joined.
03:56:38 <shachaf> ohw ell
03:56:42 <FreeFull> @data Bot = Bot
03:56:43 <lambdabot> Unknown command, try @list
03:56:47 -!- Bike has quit (Disconnected by services).
03:56:49 <FreeFull> @let data Bot = Bot
03:56:49 <lambdabot> Invalid declaration
03:56:52 -!- Bike_ has changed nick to Bike.
03:57:12 <shachaf> Hike
03:57:23 <tswett> Pike.
03:57:26 <Bike> Hachaf. Hatchet?
03:57:49 <shachaf> i love monoidoidoidoidoidoidoids
03:57:52 <shachaf> they are so easy
03:58:12 <Jafet> unpuns
03:58:29 <tswett> What's a mon?
03:58:35 <monqy> good question
03:58:39 <tswett> It's like a monoid, but more specific.
03:59:21 <tswett> Maybe it's a commutative monoid.
03:59:28 <Jafet> Pokemonoid
03:59:48 <shachaf> communal monoid
03:59:50 <shachaf> communoid
03:59:56 <Bike> I think "mon" would be a better name than "abelian monoid"
04:00:02 <shachaf> or is it a communist monoid??
04:00:02 <Bike> but probably worse than "commutative monoid"...
04:00:20 <tswett> What would it mean for an operation to be mmutative?
04:00:31 <monqy> good question
04:00:33 -!- Nisstyre-laptop has quit (Remote host closed the connection).
04:00:59 <shachaf> tswett: I assume some instances of mposition are mmutative.
04:01:06 <shachaf> I worked out what mposition was once.
04:01:17 <shachaf> It turns out you can't really do it in Haskell because parametricity??
04:01:18 <Jafet> It operates on your computer's commu
04:01:31 <monqy> what's mposition shachaf
04:01:32 <tswett> Are instances of composition commutative?
04:01:42 <shachaf> monqy: um it's that weird thing
04:01:59 <monqy> which weird thing
04:02:02 <shachaf> p b a -> Either (p x a) (p b x)
04:02:19 <monqy> ah
04:02:22 <shachaf> monqy: "i didn't invent it it came up on its own"
04:02:30 <Bike> that's what they all say
04:02:49 <Jafet> "It should still be named after me though"
04:02:59 <Bike> "A monoid for which the operation is commutative for some, but not all elements is a trace monoid; trace monoids commonly occur in the theory of concurrent computation."
04:03:02 <Bike> cool
04:03:20 <monqy> what does it mean by "for some but not all"
04:03:32 <Jafet> The "some of all" fears
04:03:49 <monqy> is this like it has a subsemigroup thats all commutative and stuff amongst itself, or is it more like the center of a group where the stuff in it commutes with everything
04:04:20 <Bike> "It generalizes the concept of a string, by not forcing the letters to always be in a fixed order, but allowing certain reshufflings to take place."
04:04:39 <Bike> the mathematical structure i've always dreamed of. "like a string but less so"
04:04:40 <monqy> um ok
04:04:48 -!- TeruFSX has joined.
04:04:53 <monqy> it sounds kind of
04:04:59 <monqy> gosh i hope they bothered to actually define it well
04:05:03 <Bike> I have no idea why you would ever want this.
04:05:09 <FreeFull> Bike: Call it an Amstringytoope
04:05:11 <Bike> " Traces are used in theories of concurrent computation, where commuting letters stand for portions of a job that can execute independently of one another, while non-commuting letters stand for locks, synchronization points or thread joins."
04:05:20 <Bike> I... guess that sort of makes sense?
04:05:53 <Jafet> Letters? I bet this theory was invented by Post.
04:06:07 <Bike> why would post give a damn about concurrency
04:06:11 <tswett> FreeFull: I dunno, I want to erode that word to "anstrintope".
04:06:20 <Bike> By the way, did you know Post only had one arm? I didn't know that.
04:06:45 <Jafet> That would explain why his computation models are so simple.
04:06:52 <Bike> awwwww SNAP
04:06:53 <tswett> And the word "anstrintope" looks like it would mean...
04:07:07 <Bike> that's right, cripple joke! woo woo
04:07:15 -!- yorkdove has joined.
04:07:50 <Bike> Hm, someone named Mazurkiewicz is cited. That's a pretty cool name.
04:07:55 <Bike> Imo all mathematicians should be Polish.
04:07:57 <Jafet> English doesn't have a word for discrimination towards cripples
04:08:01 <tswett> "Place not bound tightly".
04:08:09 <tswett> Jafet: does "ableism" count?
04:08:09 <Jafet> (Therefore it doesn't exist)
04:08:11 <Bike> Jafet: "ableism"
04:08:19 <Jafet> @wn ableism
04:08:19 <lambdabot> *** "ableism" wn "WordNet (r) 3.0 (2006)"
04:08:19 <lambdabot> ableism
04:08:19 <lambdabot> n 1: discrimination in favor of the able-bodied [syn: {ableism},
04:08:19 <lambdabot> {ablism}, {able-bodiedism}, {able-bodism}]
04:08:34 <Jafet> "That's not even a word"
04:08:41 <Bike> Also, "cripple" is a slur, I probably shouldn't have said it.
04:08:57 <tswett> Is it now?
04:09:03 <Bike> I think so.
04:09:20 <Jafet> That's lame.
04:09:29 <FreeFull> cripple is a game
04:09:30 <Bike> "While the trace monoid had been studied by Pierre Cartier and Dominique Foata for its combinatorics in the 1960s," oh that sounds actually interesting.
04:09:55 <Bike> hm, Schützenberger. I think I can allow German mathematicians in addition to the Polish ones.
04:09:56 <monqy> so trace monoid looks kinda funny. i follow the part where you quotient the free monoid over some set by some equivalence relation, but the properties of this equivalence are not at all obvious to me from the minute i spent skimming its definition
04:10:34 <Fiora> tswett: yeah, it's a slur
04:10:46 <Bike> Wow, it actually uses "÷".
04:10:48 <Fiora> (a similar one would be "retard", for the mentally disabled)
04:11:29 <pikhq> "Cripple" is also relatively inaccurate, given that one is not actually crippled by many disabilities.
04:11:41 <Fiora> slurs can be pretty inaccurate :P
04:11:45 <Bike> post certainly did pretty well for himself.
04:11:55 <pikhq> What can I say, I'm a pedant.
04:11:56 <monqy> oh there's an explanation up there about how the equivalence relation happens, ok
04:11:57 <Bike> well, insofar as being a huge nerd is doing well
04:12:10 * Fiora suddenly wonders about one-handed keyboards
04:12:18 <Bike> Chorded keyboards! :D
04:12:39 <myndzi> dvorak one handed is actually pretty usable
04:12:40 <FreeFull> chorded = slowass
04:12:41 <Bike> But seriously, Post died in the fifties, no computers for him to concurreinate.
04:12:45 <tswett> Fiora: I could argue that what you just said about the word "retard" is offensive; it refers to the mentally retarted, so you're implying that all mentally disabled people are mentally retarded.
04:12:46 <myndzi> i tried to learn it once so i could type and mouse at the same time
04:12:57 <FreeFull> keyboards with a mirror key are faster
04:13:16 <Fiora> tswett: people often use slurs against people in a way that doesn't make exact logical sense
04:13:23 <monqy> keyboards where the keys are in your brain
04:13:56 <Fiora> someone might call a person without good grasp of english "retarded" because they don't understand the material, even if they're not mentally disabled in any way
04:14:12 <Fiora> bigotry is not exactlyogical
04:14:13 <Fiora> *logical
04:14:49 <pikhq> Someone might call me "retarded" because I am in some sense mentally disabled. Ain't words awesome?
04:15:22 <myndzi> the thing is
04:15:26 <tswett> Fiora: true.
04:15:27 <myndzi> "retarded" isn't an insult because of the word
04:15:30 <Fiora> (simple rule: just don't use the slur)
04:15:30 <FreeFull> exactlyogical should be a word
04:15:33 <myndzi> it's an insult because of the meaning
04:15:50 <myndzi> you can keep renaming things to try and get away from "mean words"
04:15:58 <myndzi> but eventually people will just use the new word the same way
04:16:02 <FreeFull> motherhugger
04:16:04 <myndzi> see: nigger
04:16:11 <Fiora> except... that doesn't happen
04:16:16 <Fiora> people have used "disabled" for 100 years now
04:16:18 <myndzi> i mean black, i mean colored person, i mean african-american, i mean ...
04:16:24 <Fiora> but I don't see anyone using it as a slur
04:16:26 <monqy> just make the words dorky enough and nobody'll bother with them
04:16:31 <monqy> LANGUAGE: CLEANSED
04:16:31 <myndzi> that's because it doesn't have a ring to it
04:16:37 <myndzi> haha monqy's got it right
04:16:37 <pikhq> Funny, "nigger" is the only one of those that's actually a slur of some sort.
04:16:38 <Bike> god, why do i even say things
04:16:42 <Fiora> "african american" has never been a slur
04:16:45 <myndzi> nigger didn't originate as a slur
04:16:48 <Fiora> ~_~
04:16:49 <pikhq> Saying "colored" makes you sound *old*, but it's not *offensive*.
04:16:50 <Jafet> You gosh-darned dork
04:16:54 <Fiora> omg white people talking about racism holy shit sotp
04:17:04 <myndzi> but it got used that way and therefore discarded
04:17:10 <Jafet> @wn colored
04:17:11 <lambdabot> *** "colored" wn "WordNet (r) 3.0 (2006)"
04:17:11 <lambdabot> colored
04:17:11 <lambdabot> adj 1: having color or a certain color; sometimes used in
04:17:11 <lambdabot> combination; "colored crepe paper"; "the film was in
04:17:11 <lambdabot> color"; "amber-colored heads of grain" [syn: {colored},
04:17:13 <lambdabot> [14 @more lines]
04:17:15 <Jafet> @more
04:17:15 <lambdabot> {coloured}, {colorful}] [ant: {uncolored}, {uncoloured}]
04:17:17 <lambdabot> 2: having skin rich in melanin pigments; "National Association
04:17:19 <lambdabot> for the Advancement of Colored People"; "dark-skinned
04:17:19 <myndzi> the others may not be slurs but they are "politically sensitive" in a way
04:17:21 <lambdabot> peoples" [syn: {colored}, {coloured}, {dark}, {dark-skinned},
04:17:23 <lambdabot> {non-white}]
04:17:25 <lambdabot> [9 @more lines]
04:17:28 <Bike> People actually use "colored" to describe themselves, you know.
04:17:38 <Fiora> "people of color" is the reclamation of that term
04:17:43 <monqy> im sure people use lots of words to describe themselves
04:17:43 <myndzi> indeed
04:17:47 <Fiora> (but slightly modified to limit confusing with the old term)
04:17:50 <Fiora> anyways
04:17:56 <myndzi> people call themselves nigga too :P
04:18:07 <Jafet> I thought "colored" was an american expression for "no mexicans"
04:18:10 -!- Fiora has left ("white people need to stop talking about racism srsly").
04:18:20 <myndzi> i just think it's a moot point to try and chase down the word instead of the usage
04:18:35 <myndzi> hmm, i can't tell, is that part message racist??
04:18:36 <FreeFull> negro is spanish for the colour black
04:18:54 <pikhq> myndzi: It actually presumes rather a lot.
04:18:57 <pikhq> Namely, that we're all white.
04:19:14 <myndzi> also, i guess white people aren't involved in that conversation
04:19:16 <myndzi> o_O
04:19:16 <Jafet> White people need to stop talking about white people talking about racism
04:19:25 <pikhq> I mean, I only have knowledge of the skin color of a strict subset of this channel's membership.
04:19:30 <monqy> what if racism is just a horribly stupid thing to talk about in most contexts and most talking about is stupid
04:19:58 <Bike> It's a pretty safe guess that people "well "nigger" is just a word" are white, most of the time.
04:19:59 <monqy> *a few words???
04:20:01 <myndzi> i could get on board with that
04:20:10 <pikhq> I think we can concur on that.
04:20:14 <Bike> *that people saying
04:20:26 <myndzi> it is just a word, it's a word with a meaning that has changed
04:20:26 <monqy> fiora's on the right track but it has nothing to do with skin color, imo. it's just such and old conversation and there's nothing to be gained by bashing your heads against it
04:20:29 <myndzi> that was my point
04:20:41 <myndzi> anyway, 'retard' is the same
04:20:52 <Jafet> Now that Fiora has left, we could talk about misogyny
04:20:57 <monqy> :-)
04:20:58 <myndzi> no matter what nice name you come up with, some ass is gonna use it to describe people meanly
04:21:15 <Jafet> In a totally objective unbiased way
04:21:17 <pikhq> Jafet: 'Fraid I talk about that a bit too much.
04:21:57 <monqy> let's not talk about any of this stuff uuuugh
04:22:55 <Sgeo> `list
04:22:56 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
04:22:57 <Jafet> Are you afraid to talk about it, sissykins?
04:23:15 <Jafet> That sounded too much like susskind
04:23:16 <tswett> What does that list?
04:23:26 <monqy> names
04:23:30 <tswett> Which ones?
04:23:32 <Bike> people who are subscribed to Super Mega Comics.
04:23:46 <monqy> wow i love super mega comics !!
04:24:48 <shachaf> monqy: wow i forgot about that
04:24:54 <shachaf> i never finished reading them
04:25:03 <Jafet> `run sed -ie 's/$/ monqy/' bin/list
04:25:09 <HackEgo> No output.
04:25:16 <shachaf> `run cat bin/list
04:25:17 <HackEgo> echo Taneb atriq Ngevd Fiora nortti Sgeo alot monqy
04:25:20 <shachaf> oh
04:25:27 -!- oerjan has quit (Quit: Good night).
04:25:32 <shachaf> FALSE ALARM EVERYBODY
04:25:50 <monqy> `run sed -ie 's/ monqy//' bin/list
04:25:52 <HackEgo> No output.
04:25:54 <monqy> `list
04:25:54 <Sgeo> tswett, people who want me to tell them when Homestuck updates
04:25:55 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
04:26:06 <tswett> Ah.
04:26:08 <Bike> Sgeo, you can't just... you can't just tell people what hte list is.
04:26:12 <tswett> So when Homesstuck updates, you just do `list.
04:26:16 <Sgeo> yes
04:26:26 <pikhq> Sgeo: How's about a list of people who want you to tell them when Homestuck finishes?
04:26:32 <Bike> It's, like, ritually unclean.
04:26:35 <pikhq> Personally, I plan to wait for it to end and archive-binge.
04:26:50 <Jafet> What is finishes
04:26:58 <monqy> what's homestuck
04:27:00 <Sgeo> You miss out on a lot of speculation, which is pretty essential to understanding what's going on
04:27:10 <coppro> .. what
04:27:23 <coppro> `addquote <Sgeo> Sgeo> You miss out on a lot of speculation, which is pretty essential to understanding what's going on
04:27:25 <Sgeo> At least, there's a lot of little things you miss by not being a serial reader
04:27:27 <HackEgo> 942) <Sgeo> Sgeo> You miss out on a lot of speculation, which is pretty essential to understanding what's going on
04:27:32 <coppro> dammit
04:27:35 <Bike> qdbformat!!!
04:27:35 <coppro> `revert
04:27:40 <HackEgo> Done.
04:27:43 <coppro> `addquote <Sgeo> You miss out on a lot of speculation, which is pretty essential to understanding what's going on
04:27:46 <HackEgo> 942) <Sgeo> You miss out on a lot of speculation, which is pretty essential to understanding what's going on
04:27:50 <coppro> Sgeo: what nonsense are you spouting now
04:28:08 <monqy> `delquote 942
04:28:13 <HackEgo> ​*poof* <Sgeo> You miss out on a lot of speculation, which is pretty essential to understanding what's going on
04:28:14 <monqy> justified by way of that quote is bad
04:28:28 <Bike> Do you need justification to understand what's going on?
04:28:30 <Sgeo> coppro, well, a lot of people misunderstood <spoiler redacted> in Cascade, which was only cleared up canonically later on
04:28:34 <Jafet> `run bin/quote Sgeo | shuf
04:28:36 <HackEgo> 159) * Gregor bashes his head into the wall that is Sgeo. \ 504) <Sgeo> Maybe I should try to learn Scala instead of Ruby <elliott> I will boil your veins. <Sgeo> Which is less bad? <elliott> Probably Scala, but I don't want you learning languages. \ 936) <Sgeo> Actually, just as a guess, J might be worse than APL because it's restricted to norm
04:28:52 <coppro> Sgeo: so?
04:28:57 <Jafet> `run bin/quote Sgeo | shuf
04:29:00 <HackEgo> 726) <Sgeo_> Why does CL get called functional? <oerjan> it's sort of like how you call ancient greece democratic. \ 110) <coppro> what's the data of? [...] <Sgeo> Locations in a now deceased game called Mutation <coppro> I have no problems with you being interested in online games <coppro> but the necrophilia is disturbing \ 827) <HackEgo> 499)
04:29:03 <coppro> if you want that, do a book club
04:29:18 -!- aloril has quit (Ping timeout: 245 seconds).
04:29:33 <tswett> `quote 827
04:29:34 <HackEgo> 827) <HackEgo> 499) <zzo38> What is miff-muffered moof? <itidus20> that's a tough question [...] <Sgeo> miff-muffered moof sounds like a setup to something, but itidus screws it up.
04:30:07 <Sgeo> `quote 499
04:30:08 <HackEgo> 499) <NihilistDandy> Also Perl, but I don't really consider that a programming language so much as a really heavy implementatino of awk
04:30:20 <coppro> Sgeo: if you want a not-quite-as-dumb counterargument, WoG is that it's better straight through
04:30:23 <shachaf> imo 499
04:30:27 <quintopia> i agree
04:30:39 <Bike> "X is such a bad Y that it's not really a Y" is such a weird device.
04:30:53 <shachaf> It's such a weird device that it's not really a device.
04:30:57 <Jafet> That is such a bad analogy
04:31:21 <Bike> Rhetorical device.
04:31:30 <monqy> `delquote 499
04:31:32 <monqy> "an agreement"
04:31:34 <HackEgo> ​*poof* <NihilistDandy> Also Perl, but I don't really consider that a programming language so much as a really heavy implementatino of awk
04:31:41 <coppro> also wtf is hussie doing in th emost recent update?
04:31:58 <coppro> `quote
04:31:59 <HackEgo> 681) [...] <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:32:18 <Bike> monqy: http://www.amazon.com/Combinatorics-Traces-Lecture-Computer-Science/dp/3540530312 kinda cool lookin
04:32:34 <Bike> "Chapter 4 provides a new bridge between the theory of string rewriting and formal power series." hee
04:32:44 <monqy> mmm mmmm 70 bucks lecture notes
04:32:55 <Bike> Why would you even look at the price new
04:33:18 <monqy> this had better be more than just lecture notes, alt. dang good lecture notes
04:35:14 <Bike> i wonder how many of the people selling for twenty bucks actually have a copy
04:37:44 <monqy> maybe they're just bad copies
04:37:55 <monqy> paperweight gone chewtoy
04:38:12 <Bike> They're robot sellers, they're usually pretty good.
04:38:18 <Bike> I got a book on complex analysis for like two cents once.
04:38:31 <Bike> Arrived hardly on fire at all!
04:41:18 <shachaf> should i learn complex analysis
04:41:34 <shachaf> monqy: ☝
04:41:45 <Bike> Hell yes you should.
04:41:54 <Bike> Maybe you could even understand what homotopy type theory is!!!!!
04:41:56 <shachaf> i heard it's "real cool"
04:42:15 <Bike> Also imaginary cool!!!!
04:42:17 <Bike> see, that's a joke.
04:42:38 <shachaf> wow, that's complex
04:42:57 <Bike> :-0
04:42:58 <shachaf> (that was a joke too i was highlighting it for you)
04:42:59 <monqy> there's lots of math i should know and it's upsetting that i dont know it
04:43:01 <shachaf> (in case you missed it)
04:43:12 <Bike> monqy: do you know if there are mathematicians who don't feel that way?
04:43:17 <shachaf> monqy: "do you know topology"
04:43:19 -!- aloril has joined.
04:43:31 <monqy> shachaf: topology's near the top of the list of things i really should know but don't
04:43:49 <shachaf> what else is on the list
04:43:52 <shachaf> what's at the top
04:44:07 <monqy> category theory :'( :'( :'(
04:44:18 <shachaf> category theory? more like stupid theory
04:44:22 <Sgeo> 4 more minutes and I can eat
04:44:25 <Sgeo> so happy ;)
04:44:35 <ion> I’m out of food.
04:44:37 <Sgeo> That was supposed to be crying happily, not winking
04:44:38 <shachaf> monqy: also people say you should learn other things before you learn category theory
04:44:40 <monqy> it's everywhere and i always feel awful when theres something haven't encountered in it
04:44:41 <Sgeo> :')
04:44:47 <Bike> it's pretty cool that one of the big category theory guys lives in a shack in the pyrenees now
04:44:49 <monqy> shachaf: i know other things!!!!
04:44:52 <shachaf> like what
04:44:54 <Bike> and when i say "pretty cool" i mean "what
04:44:55 <shachaf> algebra?
04:44:56 <Bike> it's what cool.
04:45:12 <Jafet> `run sed -ie '3 s,.*,if ! expr "$id" ">=" 0 "\&" "$id" "<" $(wc -l <quotes) >/dev/null; then id=$(expr $RANDOM % $(wc -l <quotes); fi,' bin/delquote
04:45:15 <HackEgo> No output.
04:45:21 <monqy> i at least know some algebra!!
04:45:57 <monqy> not completely algebra-dumb
04:46:21 <shachaf> i'm pretty algebra-dumb :'(
04:46:25 <shachaf> i don't even know what a monoid is
04:46:36 <shachaf> i still love them tho!!!!
04:46:42 <Bike> A thing where you have multiplication and 1.
04:47:00 <shachaf> ah
04:47:04 <shachaf> monoids are so easy :D
04:47:16 <Bike> p. much
04:47:24 <shachaf> what about monoidoids
04:47:26 <monqy> q is there anything that isn't easy
04:47:36 <Bike> Monoidoids are like monoids, but less so.
04:47:40 <shachaf> monqy: getting answers out of you :'(
04:48:12 <shachaf> monqy: btw i thought you were one of the "cool people but it" turns out you don't even know category theory??
04:48:13 <ion> Dude! If you only have multiplication and 1, you only have const id and unit!
04:48:55 <Bike> like, whoa, man.
04:49:02 <monqy> shachaf: i know a few category theory things!!!but i've never bothered to pick up a book and learn it, and nobody teaches it
04:49:54 <monqy> it's upsetting
04:50:15 <shachaf> monqy: some people teach it..........
04:50:22 <quintopia> bikeoids
04:50:22 <monqy> nobody i know
04:50:25 <ion> ……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
04:50:28 <Bike> shachaf: btw learn matroids
04:51:45 <shachaf> Bike: I've already learned Matryushkas. Is that enough?
04:52:01 <Bike> Matryoshka brains?
04:52:21 <Jafet> Matryoshkoids
04:57:34 <Bike> http://www.sciencedirect.com/science/article/pii/0304397581900578 oooooh
04:57:39 <Bike> so easy!
04:58:48 -!- TeruFSX has quit (Ping timeout: 276 seconds).
04:59:15 <shachaf> Bike: what about groups are they easy
04:59:30 <Bike> You've heard how long the classification of groups is, right
04:59:48 <Bike> "The proof of the theorem consists of tens of thousands of pages in several hundred journal articles written by about 100 authors, published mostly between 1955 and 2004."
05:00:35 <Bike> So, ,yes.
05:00:48 <scarf> how long is the /statement/ of the theorem?
05:00:48 <Jafet> By yes Bike meant no
05:00:50 <Jafet> hth
05:00:51 -!- TeruFSX has joined.
05:01:35 <Bike> scarf: Wikipedia's article on such is like... ten pages long? Somewhere around there.
05:01:47 <Bike> https://en.wikipedia.org/wiki/List_of_finite_simple_groups
05:02:02 <Bike> The theorem being "that's it"
05:02:08 <scarf> :)
05:02:22 <scarf> I wonder how useful the result is
05:02:35 <Jafet> Theorem prover stress testing
05:02:45 <Bike> I think somebody called it the greatest thing in group theory in bla bla long period of time bla bla bla
05:03:06 <shachaf> Bike: did you hear the odd order theorem was proved in coq
05:03:14 <Jafet> How long has group theory been around
05:03:14 <shachaf> monqy did you help
05:03:20 <monqy> no i didnt help :(
05:03:32 <shachaf> roconnor helped
05:03:34 <Bike> Jafet: I think like two hundred years?
05:03:47 <shachaf> he came to california to tell us about it!!
05:03:54 <Bike> I think it was Abel's fault.
05:03:58 <Bike> or something.
05:04:44 <monqy> The end of the 19th and the beginning of the 20th century saw a tremendous shift in the methodology of mathematics. Abstract algebra emerged around the start of the 20th century, under the name modern algebra.
05:04:52 <Bike> Also, apparently this guy Gorenstein has written articles about how long the proof is.
05:04:58 <Bike> That's how you know it's a good proof.
05:05:01 <monqy> there's of course a bunch of group theory before that
05:05:13 <monqy> The abstract notion of a group appeared for the first time in Arthur Cayley's papers in 1854.
05:05:25 <Bike> monqy: it was a ballpark estimate in that i threw a baseball and broke a window
05:05:25 <Jafet> https://en.wikipedia.org/wiki/Classification_of_finite_simple_groups#Timeline_of_the_proof
05:05:38 <shachaf> groups are so easy :')
05:05:50 <Jafet> I guess it is technically the greatest thing in group theory
05:06:02 <scarf> Bike: I don't think that's how ballpark estimates work
05:06:05 <Bike> The theorem is, in fact, most of group theory.
05:06:08 <Bike> "deep"
05:06:17 -!- WeThePeople has quit (Quit: Leaving).
05:06:23 <Bike> scarf: I don't think you know how baseball works!
05:07:01 <scarf> Bike: I used to watch baseball quite a lot until they stopped showing it in the UK
05:07:05 <scarf> then it became quite difficult
05:07:26 <Bike> Is there any baseball presence in the UK?
05:07:28 <scarf> the hilarious thing was, the UK coverage was just the US coverage except they put their own commentary and such in the US ad breaks
05:07:35 <scarf> and still had plenty of time left over for ad breaks of their own
05:07:41 <scarf> the ad ratio between the two TV networks was so large
05:07:45 <Bike> nice.
05:07:57 <scarf> and there's a slight amount, but it's nowhere near as large as in the US or Canada or Japan
05:08:05 <Bike> " Thompson (1979) showed that its uniqueness (as a simple group satisfying certain conditions coming from the classification of finite simple groups) would follow from the existence of a 196883-dimensional faithful representation."
05:08:10 <scarf> like, people will have heard of it, and some of them might know some of the rules
05:08:15 <Bike> I think the best thing about math is that somebody wrote this sentence in all seriousness.
05:08:41 <Bike> scarf: would it be apropos to make a joke about cricket?
05:08:53 <monqy> 196883-dimensional is a lot of dimensional
05:08:54 <scarf> Bike: sort-of, although most foreigners' jokes about cricket end up not working
05:09:05 <scarf> unless there's a heavy cricket presence in the country
05:09:27 <monqy> i almost made a joke about cricket, but it was just something like "what about cricket"
05:09:31 <monqy> the joke being cricket, of course
05:09:35 <Bike> monqy: almost as many as graham's number!!
05:09:55 <Bike> scarf: i seriously don't know anything about cricket beyond that it's maybe sort of like baseball and also british
05:10:06 <Bike> so, same as most americans, probably
05:10:08 <Jafet> Knuth up-yours notation
05:10:11 <scarf> the standard joke about graham's number is that it's only the best known upper bound on a value that's believed (but not proved) to be 6
05:10:30 <scarf> Bike: it's really quite different from cricket in the way it works out
05:10:31 <Bike> Yes but it's also a number of dimensions, so mentioning it is totally relevant.
05:10:41 <scarf> in both games, you hit a ball with a bat
05:10:47 <Bike> Close enough!
05:10:49 <shachaf> wait cricket has bats?
05:10:51 <quintopia> scarf: actually there is a better upper bound
05:10:52 <scarf> the really major difference is that in cricket, nothing's forcing you to run
05:10:57 <Bike> we know, quintopia.
05:11:10 <scarf> so unless it's completely safe, the batsman will just stand there
05:11:13 <Bike> well probably. i know. you're all basically me.
05:11:14 <scarf> this makes it a lot harder to get people out
05:11:22 <Bike> scarf, this sounds awkward.
05:11:23 <quintopia> Bike: scarf isnt you.
05:11:37 <scarf> quintopia: I wrote it as "the standard joke" for a reason
05:11:49 <scarf> Bike: well you only have to get everyone out once, rather than three of the people out nine times
05:11:51 <shachaf> wait cricket /= croquet??????????????????????????????????
05:11:52 <Bike> There's also a better upper bound, but did you mention that? Hmmmmm?
05:11:52 <scarf> but even so, it can take days
05:11:55 <shachaf> why did no one tell me
05:12:10 <Bike> scarf: baseball can also take days, luckily
05:12:13 <quintopia> scarf: i'm sobering up
05:12:22 <Bike> Er, also a better lower bound.
05:12:25 <Bike> Derrrr.
05:12:27 <scarf> there were a few games that were weeks long before they added a rule that made it a draw after five days
05:12:35 <Bike> nice.
05:12:41 <scarf> (that was ages ago)
05:12:47 <Bike> 19th century?
05:12:51 <scarf> yeah, around then
05:13:00 <Gregor> shachaf: Please tell me you're kidding >_>
05:13:06 <shachaf> Gregor: Nope.
05:13:10 <scarf> also they have "one-day" matches where each innings is automatically over after 300 balls bowled (= pitches)
05:13:12 <shachaf> I always assumed they were the same thing.
05:13:24 <scarf> which encourages the batsmen to play riskier because getting out is less of a problem
05:13:27 <Gregor> Based on the fact that they're both sports that start with 'c'?
05:13:39 <scarf> they sound kind-of similar
05:13:42 <scarf> but they play rather differently
05:13:43 <shachaf> Gregor: They both have the consonants krkt
05:13:49 <scarf> croquet is about hitting balls through hoops using mallets
05:13:51 <shachaf> And I've played Croquet, I think.
05:13:58 <scarf> I don't have the rules down as well as I have the rules of cricket down
05:14:00 <Gregor> shachaf: Croquet does not end with the consonant 't'.
05:14:15 <Bike> I actually used to confuse croquet and cribbage, if that makes you feel better.
05:14:23 <Gregor> Croquet is also infinitely simpler than cricket X-D
05:14:23 <scarf> yeah, it's pronounced "crokay"
05:14:24 <shachaf> Gregor: Yes it does?
05:14:34 <scarf> Gregor: and cricket is orders of magnitude simpler than gold
05:14:37 <Bike> shachaf: he meant the sound
05:14:37 <Gregor> shachaf: A consonant is a sound, not a letter.
05:14:37 <scarf> *golf
05:14:40 <Sgeo> http://www.reddit.com/r/ProgrammerHumor/comments/1738du/a_hilarious_thread_from_a_programming_forum_i/
05:14:41 <shachaf> The Hebrew pronunciation is "kroket" according to Wikipedia.
05:14:55 <Bike> Oh, in English it's krokay.
05:14:56 <scarf> there are only, what, 11 ways to get out, something like that
05:14:58 <shachaf> Or that's the spelling. And Hebrew doesn't ahve silent letters.
05:15:02 <scarf> that's comparable with baseball
05:15:12 <scarf> and few rules apart from getting out and scoring
05:15:28 <scarf> batsmen try to score as many runs as possible without getting out
05:15:40 <quintopia> wickets are the weirdest idea in sports
05:15:44 <Sgeo> Krikkit?
05:15:47 <scarf> the fielding team try to get them out (when they can), or (most of the time) stop them scoring
05:15:55 <scarf> and wickets are a reasonably simple idea, really
05:16:03 <Bike> "The best advice I can give is pick up this book: Beginning Programming for Dummies 2nd Edition "
05:16:04 <scarf> make it clear from the hardware point of view whether the target was hit or not
05:16:09 <scarf> except when it doesn't
05:16:18 <scarf> nowadays they put microphones inside the wickets so that they can tell when they were hit
05:16:35 <Sgeo> I learned a lot from For Dummies books when I was a kid
05:16:38 <scarf> and compare the microphone recordings with camera recordings of the wicket, so they don't get confused by loud noises that happened at approximately the right time
05:16:49 <scarf> also they record the sound of the ball hitting the bat, too
05:16:57 <Bike> Sgeo: i learned what defragmentation was from one about macbooks :D
05:17:23 <scarf> which is relevant when trying to work out whether someone's been caught out (think flyout in baseball), or whether the ball just bounced off their kneepads (you aren't out if you're caught after that, unless you would have been out anyway)
05:17:25 <Bike> other highlights: complaints that Microsoft Word took up 2 MB of RAM
05:17:26 <quintopia> any game that requires audio recordings to ensure the rules are enforced properly is weird
05:17:46 <Sgeo> Better than requiring video recordings
05:17:47 <scarf> quintopia: you don't have those in more casual matches, the game still works, just the decisions are a little less accurate as a result
05:17:49 <Sgeo> Kind of
05:17:56 <quintopia> Bike: i agree. wtf is up with a text editor that large?????
05:18:13 <Bike> quintopia: "takes up half of memory"!!!
05:18:19 <quintopia> scarf: video replay should suffice for anything
05:18:21 <Bike> also it's a word processor not a text editor hth
05:18:21 <scarf> word mostly isn't a text editor
05:18:53 <scarf> quintopia: it's very hard to work out whether a ball that might be travelling at 100mph or so has collided with a wooden stick, from video evidence alone, given that it might graze by just a couple of millimetres
05:19:02 <quintopia> what is the difference? is the difference something i care about using?
05:19:08 <Jafet> Word is a Word editor
05:19:09 <monqy> word is for word art and using wacky fonts for the bbq flyer that's about it
05:19:15 <Jafet> (except when it isn't)
05:19:24 <quintopia> i suspect that i've never used the features of word that aren't found in, say, kate
05:19:38 <scarf> scarf: Word is a word processor, the main difference is the existence of formatting
05:19:41 <scarf> err
05:19:43 <Bike> quintopia: yeah, Word would be shitty for writing code, and kate would be shitty for the bbq flyer
05:19:50 <scarf> quintopia: Word is a word processor, the main difference is the existence of formatting
05:20:14 <scarf> in order to get formatted text in something like kate, you need to write, say, HTML or LaTeX directly, and it doesn't give a WYSIWYG view
05:20:22 <quintopia> Bike: yeah but bbq flyer who cares wtf
05:20:23 <monqy> http://www.homeandlearn.co.uk/mw/images/wordArtDB.jpg just look at this beauty
05:20:27 <scarf> which is not a problem for people experienced in writing formatting as programs
05:20:29 <scarf> but is for many people
05:20:33 <Bike> quintopia: see, this is why you use kate.
05:20:42 <Sgeo> I hate formatting
05:20:49 <Sgeo> I hate dealing with it, thinking about it
05:20:52 <Bike> most people in the world are more concerned with bbq flyers than with irssi plugins.
05:21:05 <Bike> well, more people. i suppose most people in the world don't give a damn about bbqs.
05:21:10 <Sgeo> WTF how does one make text "look good"
05:21:13 <quintopia> Bike: i'm exaggerating of course. i use lyx. lyx probably uses well over 2MB of RAM
05:21:17 <kmc> uhm a bbq flyer is quite trivial with \documentclass{bbqflyer}
05:21:22 <evincar> Sgeo: That is a big question. :|
05:21:26 <Bike> laughed out loud
05:21:28 <scarf> LyX does the same job as Word, rather than as Kate
05:21:36 <ion> sgeo: WordArt.
05:21:48 <Jafet> scarf: namely, to annoy the hell out of you
05:21:52 <quintopia> kmc: i use that doc class for research paper cover pages
05:21:53 <shachaf> i love wordart
05:21:59 <evincar> By big question I mean small question with big complex answer.
05:22:03 <scarf> Jafet: LyX is less annoying than Word
05:22:07 <evincar> Which is possibly the best kind of question.
05:22:21 <scarf> an alternative way of looking at it is, Kate does the same job as Notepad (just it does it a lot better)
05:22:40 <Bike> yeah i kind of think of notepad as "the text editor" and Word as "the word processor"
05:22:44 <Bike> i'm not a true linuxite :(
05:22:45 <quintopia> notepad was a quality piece of software man
05:22:49 <Bike> "was"
05:22:55 <scarf> Notepad is basically just a multiline text input field with a menu attached
05:22:58 <monqy> what happened to notepad :(((
05:23:20 <quintopia> scarf: are you not a fan of minimalism
05:23:24 <Bike> What is notepad.exe? How to remove notepad.exe virus? The fast and easy way to solve notepad.exe errors or problems. Download now.
05:23:46 <scarf> Bike: real web page?
05:23:52 <Bike> Well, autogenerated, but yes.
05:24:00 <scarf> ah
05:24:10 <scarf> I can believe notepad.exe would be a plausible name for a virus
05:24:12 <monqy> notepad.exe is important for Windows 7/XP/Vista. Click here to know what notepad.exe is doing, its safeness and how to avoid problems.
05:24:21 <scarf> well, worm
05:24:22 <Jafet> Is a webpage that is only ever shown to googlebot a real web page
05:24:28 <kmc> it's all about the calc.exe
05:24:32 <scarf> I've seen them call themselves iexplore.exe (but hide in a different and obviously wrong directory)
05:24:36 <monqy> Jafet: good question
05:24:44 <Bike> I bet you could say something actually interesting about different operating environments by comparing their text editors. Linux has ed since it was originally built on dumb terminals and with mainframes. Windows has Notepad since that's pretty easy for demonstrating your graphical system and stuff.
05:24:49 <scarf> I'd say it's a real web page, but it's not on the real web
05:25:00 <monqy> 21:24:10 <scarf> I can believe notepad.exe would be a plausible name for a virus
05:25:01 <Bike> the platonic ideal of a web page
05:25:14 <monqy> scarf: half of the results for notepad.exe are about a trojan distributed as notepad.exe
05:25:20 <scarf> Bike: Linux has some vi and nano pretty much everywhere nowadays
05:25:37 <Bike> i know, but i probably couldn't have fit anything about those in that line
05:25:44 <Bike> windows also has wordpad and well word
05:25:44 <scarf> (where by some vi, I mean vi, vim, or one of the cut-down vim variants)
05:25:51 <Bike> and... i have no idea what's on OS X
05:26:02 <scarf> back in windows 3.1, wordpad was called write, I think
05:26:17 <monqy> osx probably has something flashy
05:26:20 <Bike> "Notepad is a common text-only (plain text) editor. The resulting files—typically saved with the .txt extension—have no format tags or styles, making the program suitable for editing system files that are to be used in a DOS environment"
05:26:41 <Bike> Oh, it does support right to left text. Cool.
05:26:50 <evincar> "Plain text".
05:26:52 <monqy> http://www.notepad.org/
05:26:57 <scarf> Notepad also screws up line ending encodings
05:26:58 <monqy> this is a good website
05:27:01 <scarf> and BOMs
05:27:13 <Bike> bush hid the facts
05:27:17 <Bike> best bug ever? probably.
05:27:18 <scarf> like, it always BOMs UTF-8, and uses \r\n newlines, and won't understand just-\n newlines
05:27:41 <scarf> Bike: it triggered off any sequence of lowercase letters separated by spaces with word lengths 4 3 3 5
05:27:53 <evincar> I've never seen a text editor fail the way I expect with \n when it wants \r\n.
05:27:54 <scarf> so it's just a case of finding an amusing sentence that fits that restriction
05:27:57 <Bike> Yes, but I love conspiracy theories.
05:28:04 <monqy> http://www.notepad.org/logo.htm this is good too
05:28:23 <Bike> That's beautiful.
05:28:40 <scarf> Bike: the other common sentence I saw was "this app can break"
05:28:54 <Bike> not bad
05:29:32 <evincar> All of the images at the bottom are separated by &nbsp;\n
05:29:54 <evincar> Also <font> is the greatest tag.
05:30:04 <monqy> um itym <marquee>
05:30:13 <evincar> Um <blink> ftfy.
05:30:18 <scarf> evincar: Notepad just shows all the \ns as a literal control-j character
05:30:22 <scarf> which looks like a weird box thing
05:30:24 <Bike> Courtesy of Miles Prower- http://tails.kicks-ass.net
05:30:25 <monqy> blink is lame. marquee "the only way to go"
05:30:49 <evincar> scarf: Oh I misremembered. I thought it just omitted the linebreaks altogether.
05:31:05 <scarf> it looks much like that, the literal newlines can be invisible in some configurations
05:31:09 <scarf> although they're /there/
05:31:44 <evincar> So what \n ought to do is be a line feed.
05:31:45 <Sgeo> o.O at the Any browser logo on there
05:31:53 <evincar> I.e., foo\nbar should render as:
05:31:54 <evincar> foo
05:31:55 <evincar> bar
05:31:58 <Sgeo> You can certainly make pages intended for a subset of browsers by using Notepad
05:32:08 -!- sebbu has quit (Read error: Connection reset by peer).
05:32:19 <Sgeo> I've done that deliberately. (The subset of browsers thing)
05:32:38 -!- sebbu has joined.
05:32:39 <Sgeo> I guess technically everyone does. Who TF writes to be compatible with ViolaWWW or Mosaic?)
05:32:53 <Bike> Did you hear you can get Mosaic on Linux now?
05:33:03 <scarf> Sgeo: Wikipedia doesn't work in Mozilla 1.2 :(
05:33:16 <scarf> (I famously blanked the main page talk like that once, people assumed I was vandalizing)
05:33:37 <scarf> (and even when it worked, it introduced spurious newlines into pages by line-wrapping their entire contents)
05:33:53 <scarf> (like, the same operation that fmt(1) performs)
05:34:54 <Bike> hm, so were you active in wikipedia's community?
05:35:01 <Bike> i'm suddenly curious how they deal with people with autocensors.
05:36:08 <scarf> Bike: I used to be an admin there
05:36:20 <scarf> occasionally we told people to stop editing because a proxy or something was screwing up the page
05:36:29 <scarf> and blocked them temporarily if they didn't
05:36:39 <scarf> most common was some sort of misconfigured software adding backslashes before apostrophes
05:36:44 <scarf> and other backslashes
05:36:50 <Bike> it was funny when people would edit a page and suddenly all occurences of "fuck" were replaced with asterisks, and by funny i mean instant ban
05:37:06 <scarf> (which grows exponentially, so it becomes very noticeable very quickly)
05:37:27 <Bike> i wonder how apostrophes ended up used for quotation anyway
05:37:50 <scarf> well it's a problem even in things like "don't", because smart quotes are hard to edit and so people tend to use regular apostrophes instead
05:38:32 <Bike> i know, i was just wondering
05:38:49 <evincar> The state of input methods is tragic.
05:38:54 <Sgeo> Hmm, now I wonder if you could make a filter that filters the text even in the textarea, but puts the words in question back when submitting the page
05:39:10 <Jafet> hunter2
05:39:11 <Sgeo> diff-y stuff I guess
05:39:15 <scarf> evincar: well “smart quotes” should be easy to type through any sensible input method
05:39:16 <Bike> You should make a startup that does that.
05:39:26 <scarf> just, Windows doesn't come with a compose key by default, nor an easy way to configure one
05:39:53 <evincar> scarf: I use a “compose key” which still isn’t—really—good enough.
05:40:08 <scarf> evincar: yeah, although most of the common stuff is there, and most is guessable
05:40:10 -!- ogrom has joined.
05:40:21 <evincar> In terms of discoverability, a compose key is pretty good.
05:40:24 <scarf> alternatively or additionally, you can use altgr combinations, unless you have a US keyboard
05:40:30 <scarf> I use those for, say, ü out of habit
05:40:33 <Jafet> Look at the big picture, do you want every lolcat uploader on instagram using unicode captions
05:40:46 <Jafet> Actually that doesn't sound too bad
05:40:51 <Gregor> I ♥ the compose key.
05:41:03 <scarf> Gregor: just tried it, <3
05:41:12 <scarf> I guess that was reasonably obvious
05:41:13 <evincar> Trouble is when there isn't a mapping for a thing you think should be there.
05:41:16 <scarf> yeah
05:41:21 <evincar> And you are a nontechnical user who has no idea where to go edit that.
05:41:34 <evincar> And you are on Microsoft Windows.
05:41:40 <evincar> Somehow.
05:42:01 <Jafet> linux is harder to configure than windows
05:42:12 <evincar> Not sure about that.
05:42:18 <Bike> it really is.
05:42:24 <evincar> My mother is *employed* because Windows is hard to "configure".
05:42:31 <scarf> they're both really hard to configure when they don't have a reasonable GUI for the task
05:42:32 <evincar> (Being in IT.)
05:42:50 <scarf> I think Windows is easier to misconfigure by mistake in cases where the defaults are sane
05:43:20 <Jafet> ~/.gnome/config/meaninglessname/this/was/in/a/different/directory/two/weeks/ago/ui.xml
05:44:06 <Jafet> Also linux desktops have a "registry" now?
05:44:09 <evincar> Jafet: Even XML would be better than a different unique format every time.
05:44:40 <Jafet> XML is a different unique format every time.
05:44:58 <evincar> Yes, and it never ceases to amaze me what people do with the stuff.
05:45:04 <evincar> Exhibit A: plist.
05:45:59 <Sgeo> http://forums.thedailywtf.com/forums/p/4361/99615.aspx
05:46:09 <evincar> <dict><key>CFBundleIdentifier</key><string>com.example.foo</string></dict>
05:47:39 <Bike> "and then execute the command thats in the xml"
05:49:08 <evincar> So like XSLT. :D
05:49:32 <Bike> serious question, are there computer jobs that aren't miserable
05:49:41 <Sgeo> Bike, that was an OSS project
05:50:03 <Bike> The WWII-era intelligence agency?
05:50:04 <evincar> Bike: I have a computer job which is not miserable.
05:50:10 <evincar> QED
05:50:13 <Bike> What is your computer job which is not miserable?
05:50:54 <evincar> I maintain a compiler and a build system.
05:50:59 <evincar> And random other stuff that needs doing.
05:51:06 <Bike> oooooh cool.
05:52:16 <evincar> Eh...the code is in need of love that we don't have time to give. :(
05:52:34 <Bike> nope i've already decided your job doesn't suck sorry
05:55:07 <scarf> Jafet: Gnome has something registry-like (but it mostly reserves it for configuration, rather than the Windows registry which was originally intended for something entirely different and which is nowadays used for all sorts of random stuff)
05:55:13 <scarf> I think it's used specifically by Gnome, though
05:56:10 <evincar> (The compiler is about 20kloc, build tool 8kloc, both Haskell.)
05:56:29 <Bike> compilers are pretty cool
05:57:37 <scarf> with Verity I wrote the build tool into the compiler
05:57:56 <scarf> separate build tools break so easily, and are more work to maintain
05:58:02 <evincar> That's probably a good idea for new work.
05:58:21 <evincar> In our case the build thing does way more than just run the compiler though.
05:58:43 <evincar> The compiler does code dependencies within a project.
05:58:56 <scarf> yeah
05:59:01 <evincar> The build system runs the compiler and a bunch of conversion utilities.
05:59:06 <scarf> in my case, dependencies have to be declared with import statements
05:59:32 <evincar> And deploys updates over a network. :P
05:59:41 <scarf> and it looks at the object files matching the imports you state to make sure that things like types match
05:59:52 <scarf> it can do 100% separate compilation if you don't care about cross-module type checking, though
05:59:56 <evincar> That's cool.
06:00:06 <scarf> this also means that the other modules can be written in other languages
06:00:16 -!- sebbu has quit (Read error: Connection reset by peer).
06:00:25 <scarf> you just have to provide it with a description of what types things have, because it can't figure it out automatically in that case
06:01:01 -!- sebbu has joined.
06:01:01 -!- sebbu has quit (Changing host).
06:01:01 -!- sebbu has joined.
06:02:53 <evincar> Well that is how an FFI usually works.
06:13:30 <scarf> well, yeah
06:13:48 <scarf> one problem is that at the moment, you have to specify the types in its object file format
06:17:47 -!- TeruFSX has quit (Ping timeout: 255 seconds).
06:36:03 <shachaf> monoids monoids monoids
06:36:04 <shachaf> so easy
06:36:16 <shachaf> monqy: so what are you going to learn first
06:36:30 <monqy> hi??
06:36:42 <Bike> imo start with morphisms and then move on to categories
06:37:02 <monqy> i already know about morphisms and categories.......
06:37:30 <Bike> r u sure
06:40:05 <monqy> whats this about anyway
06:40:31 <Bike> i dunno, i think shachaf was couching a serious question about your mathematical interests in the surreal form of discourse common in this channel
06:41:27 <shachaf> Bike: It's the only way to talk to monqy.
06:41:32 <Bike> right
06:42:13 <monqy> the list is less interests, more split between things i really should know near the top and curiosities near the bottom. the middle is a mixture of things i probably know enough about and things i secretly know but don't realize it
06:42:48 <monqy> i discovered recently i know more about type theory than i gave myself credit??? who would have guessed
06:43:04 <shachaf> monqy: how does that work
06:43:09 <monqy> like that
06:43:12 <Bike> so what are the things near the top
06:43:28 <monqy> um category theory
06:43:47 <shachaf> monqy: i mean!! what did you know about type theory that you didn't think you knew
06:43:58 <shachaf> or did you know something but you thought it wasn't related to type theory but actually it was
06:43:59 <Bike> something other than category theory imo not category theory
06:44:07 <shachaf> or what
06:44:57 <monqy> more on the side of i knew all this type theory stuff and i guess i thought it was just sorta related to type theory and i was missing out on all the details? but it turns out not really
06:45:26 <shachaf> i should know more about type theory
06:45:32 <shachaf> i know basically nothing??
06:45:45 <monqy> shachaf: maybe that's just what you think!
06:45:58 <Bike> there are shittons of books about martin-lof on the internet
06:46:00 <monqy> Bike: probably i should know topology? maybe??? maybe it's just one of those things i think i should maybe know but it's just a curiosity
06:46:13 <Bike> hm ok
06:46:17 <shachaf> monqy: well maybe i should read tapl or something??
06:46:26 <shachaf> or like know anything idk
06:46:30 <monqy> tapl's a pretty easy read
06:46:34 <Bike> knowing things is hard
06:46:39 <shachaf> all i read of tapl was the first page
06:46:46 <shachaf> which was a directed graph of chapter dependencies??
06:46:49 <shachaf> "p. cool imo"
06:46:50 <Bike> it really picks up around the second page
06:46:57 <monqy> there's a bunch of proofs you can do if you really want to engage yourself. do them in coq or agda or something for super engagement???
06:47:13 <Bike> oh, i remember posting a photo of the chapter dependencies
06:47:13 <shachaf> monqy: also i don't really know coq or agda???? and maybe i should
06:47:16 <Bike> "yes, a book is really doing this"
06:47:22 <shachaf> Bike: did you read tapl
06:47:28 <Bike> yeah
06:47:32 <Bike> probably not that engaged though
06:47:47 <shachaf> wow does everyone know more about types than i do!
06:47:54 <monqy> something along the lines of coq or agda is "worth knowing" imo
06:47:56 <Bike> i do this thing where i read textbooks but don't do many of the exercises and then i suck
06:48:04 <Bike> maybe i should get a proof assistant
06:48:07 -!- Nisstyre-laptop has joined.
06:48:16 <Bike> and then use it with TAOCP first to be a rebel
06:48:36 <Bike> ("second order logic: good for proving how fast you can't multiply")
06:49:34 <monqy> who needs second order logic when you have the higher order stuff
06:49:56 <Bike> 2 is a higher order than 1 monqy.
06:50:07 <monqy> higher is a higher order than 2!!!
06:50:11 <shachaf> monqy: well i "kind of know a little bit of agda??"??
06:50:15 <Bike> orly
06:50:19 <shachaf> but not really
06:50:30 <Bike> I actually don't know what "higher-order logic" means.
06:50:35 <Bike> Is it like... what is it like.
06:50:43 <shachaf> > let fac n = product [1..n] in fac (fac (fac 2))
06:50:45 <lambdabot> 2
06:50:51 <shachaf> zomg
06:50:52 <Bike> Genius.
06:51:02 <shachaf> v.clever monqy
06:51:03 <monqy> i know....about....agda..... sometimes i feel i should know more agda but i don't really have a use for it
06:51:12 <shachaf> i've never even done anything with coq
06:51:18 <Bike> Telling shachaf about TAPL is a use imo.
06:51:19 <shachaf> which i think all the "cool people have"?
06:51:27 <monqy> i've done plenty with coq
06:51:44 <Bike> «The term "higher-order logic", abbreviated as HOL, is commonly used to mean higher order simple predicate logic. Here "simple" indicates that the underlying type theory is simple, not polymorphic or dependent.»
06:51:45 <shachaf> aren't you doing some type theory thing in coq or something
06:51:50 <Bike> ok but coq uses dependent logic
06:51:54 <Bike> monqy are you lying
06:51:55 <Bike> to me
06:51:56 <monqy> shachaf: i was, yes
06:52:06 <shachaf> monqy: what was it
06:52:24 <monqy> Bike: Examples of higher order logics include HOL, Church's Simple Theory of Types, Thierry Coquand's calculus of constructions, which allows for both dependent and polymorphic types.
06:52:39 <Bike> Well gosh, that's confusing.
06:53:00 <Bike> I know what second-order logic and church logic is but this just seems so vague
06:53:06 <Bike> maybe i should just figure out CoC and shut the fuck up.
06:53:46 <monqy> CoC is easy
06:54:00 <Bike> Probably.
06:54:21 <monqy> it's even in the lambda cube???how much easier can you get
06:54:27 <monqy> shachaf: nothing much.....
06:54:43 <monqy> shachaf: there's a "story" behind it but it's the sort of thing i don't really feel like talking about
06:55:00 <Bike> fucking lambda cubes.
06:55:06 * Bike glances at topic
06:55:30 <monqy> the important part is that it gave me more experience with coq and how to manage large proofs and so on
06:55:44 <shachaf> monqy has started the avant-garde art movement of "lambda cubism"
06:55:53 <monqy> the type theory was "not particularly interesting"
06:56:08 <monqy> ive done some pure type systems stuff recently but that's not in coq...
06:56:14 <monqy> maybe i should move it to coq?? who knows
06:56:49 <shachaf> imo i wonder what the "story" is
06:56:51 <shachaf> i bet it's good
06:56:53 <monqy> no
06:57:41 <Bike> hm maybe i should try reading jshutt's thesis again, there was lots of lambda calculus provey theoryy stuff i honestly didn't get
06:57:51 <Bike> he still had a whole appendix on how he chose letters though
06:58:11 <monqy> do you at least get curry-howard?
06:58:30 <Bike> not that well but sorta
06:59:21 <shachaf> Bike: imo you should get curry-howard
06:59:27 <shachaf> it's "basically the" best thing??
06:59:32 <monqy> curry-howard is easy and it starts popping up when you look into these things
06:59:39 <monqy> easy and powerful and good for you
06:59:40 <Bike> I probably would "really get it" if I fucked around with an actual system, like coq.
06:59:49 <shachaf> oh no
06:59:49 <Bike> Instead of just reading shit constantly.
06:59:52 <shachaf> i haven't done that
06:59:59 <Bike> !!!!!
07:00:01 <shachaf> maybe i don't "really get it"
07:00:06 <Bike> Wow, I kind of hate talking like that.
07:00:08 <monqy> Bike: imo you don't even need to do that you just need to think about it a little bit and it makes sense
07:00:25 <monqy> or maybe thats just for me
07:00:32 <shachaf> not everyone can be a monqy
07:00:36 <monqy> =/
07:00:43 <Bike> Whenever I read about it I get stuck on product types. True story.
07:00:49 <monqy> what really?
07:00:52 <shachaf> product types?
07:01:00 <shachaf> which part
07:01:08 <Bike> http://en.wikipedia.org/wiki/Intuitionistic_type_theory#Connectives_of_type_theory like i just look at it and "uhhhhh"
07:01:10 <monqy> the correspondence between products and conjunction?
07:01:26 <shachaf> oh dependent products?
07:01:35 <monqy> pi-types aren't quite what i'd call "product types"
07:01:37 <shachaf> i thought you "meant conjunction"
07:01:39 <Bike> wait no
07:01:42 <Bike> i meant pi types yeah, fuck
07:01:49 <Bike> product types are so easy etc etc shachaf
07:01:54 <shachaf> pi types are "p. cool too"
07:02:07 <shachaf> it took me a bit to understand why they're called that
07:02:24 <shachaf> but it makes perfect sense
07:02:25 <Bike> probably it's something Exciting and Deep like euler's primality thingie.
07:02:28 <Bike> buuuuut i'm slow.
07:02:59 <shachaf> are sigmas confusing too?
07:03:08 <shachaf> or are you "ok with them"
07:03:15 <Bike> oh, wait, i suppose pi types are sort of like the "reals are functions N -> N" thingie
07:03:33 <shachaf> not sure about that
07:03:40 <shachaf> maybe??
07:03:48 <shachaf> reals are functions N -> Bool imo
07:03:56 <Bike> sure if you're a poser
07:04:02 <monqy> Bike: weeelllllll do you at least get non-dependent functions
07:04:25 <shachaf> yes that's the important first step
07:04:38 <Bike> probably
07:04:56 <Bike> maybe i should just read tapl more thoroughly instead of bugging irc
07:05:09 <monqy> tapl doesn't really go over this much
07:05:14 <Bike> god damn it
07:05:28 <shachaf> i just learned about it "from the internet"
07:05:55 <Bike> fuck you internet
07:06:00 <monqy> maybe attapl does? but yeah it's everywhere
07:06:17 <monqy> e.g. any self-respecting introduction to coq or agda will have it
07:06:23 <shachaf> well sure
07:06:25 <Bike> i thought curry-howard was super basic as type theory goes
07:06:33 <shachaf> that's "basically what agda is all about??"
07:06:38 <monqy> yes
07:08:13 <shachaf> Bike: btw sigma and pi types are good too
07:08:16 <shachaf> so you should learn them
07:08:22 <Bike> ok
07:09:05 <shachaf> imo sigma types are maybe simpler?
07:09:11 <monqy> sigma types are simpler yes
07:09:18 <monqy> there's a good analogy with stuff like
07:09:27 <monqy> {n : nat | n < 5}
07:09:51 <monqy> natural numbers less than 5 ~ natural number /\ a proof it's less than 5
07:10:11 <shachaf> sure
07:10:12 <Bike> oooooh
07:10:53 <shachaf> a sigma type is just a tuple where the type of the second element depends on the value of the first element
07:11:09 <shachaf> (if that wasn't clear¿¿)
07:11:15 <monqy> pi types are just functions where the result type depends on the value of the argument!
07:11:33 <monqy> like you can have something like
07:11:35 <shachaf> right
07:11:50 <shachaf> the reason they're called that wasn't obvious to me when i first heard of them
07:12:01 <shachaf> btw i actually first heard of them when i went to a talk about homotopy type theory??
07:12:03 <monqy> `forall n, n + 1 > 0` is the type of functions fron natural numbers to proofs that their successors are greater than 0
07:12:07 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: forall: not found
07:12:11 <monqy> Bike: ^
07:12:12 <shachaf> it was a bit "over my head" at that point even though i followed a little bit
07:12:18 <monqy> i want to know more about homotopy type theory :( is it good
07:12:23 <shachaf> should i find the slides
07:12:31 <shachaf> it sounded good
07:12:34 <Bike> is it because they're a product of like, 0, 0+1 > 0 and 1, 1+1 > 1 and 2, 2+1 > 1, and so on
07:12:47 <shachaf> monqy: http://comonad.com/reader/wp-content/uploads/2011/10/slides.pdf
07:13:01 <shachaf> actually there isn't very much on the slides
07:13:04 <shachaf> it was "mostly talking"
07:13:26 <shachaf> Bike: yes
07:13:50 <Bike> glad i'm far enough in math that saying a product of that makes any sense makes any sense
07:13:56 <shachaf> like when you have forall epsilon exists delta blah(epsilon,delta)
07:14:03 <shachaf> that's like a function that takes epsilon as an argument
07:14:09 <shachaf> and gives you back a delta along with a proof about the delta
07:14:30 <Bike> hm maybe i should go over this and churchill at the same time
07:14:35 <Bike> epsilons all over that fucking thing
07:14:37 <shachaf> foo : (epsilon:R) -> (delta:R, blah epsilon delta)
07:15:07 <Bike> and probably that ties into grothendieck or homotopy or whateverthefuck
07:15:08 <shachaf> where blah is a proof
07:15:41 <monqy> let's see how far i can follow these slides without any talky.....
07:15:56 <shachaf> monqy: btw those slides were by dolio he knows some things about this??
07:24:35 -!- ogrom has quit (Quit: Left).
07:27:08 -!- yorkdove has quit (Ping timeout: 256 seconds).
07:28:04 <evincar> Hey if I'm inferring types for function definitions
07:28:12 <evincar> and those can be in any order and possibly mutually recursive
07:28:34 <evincar> then I can't just assign each definition a type variable up front
07:28:41 <evincar> and instantiate them after the fact
07:28:44 <monqy> read up on coinduction, evincar
07:28:52 <evincar> because each usage site can have a different type
07:29:04 <monqy> or is that not what youre asking about...
07:29:21 <monqy> uhhh
07:29:38 <monqy> read up on polymorphism? gosh, what are you doing
07:29:46 <evincar> I'm asking about how best to have terms associated with type schemes that are not computed yet.
07:30:13 <evincar> Laziness seems like the wrong approach here.
07:30:17 <monqy> ok do you know about hindley-milner?
07:30:25 <evincar> Yes.
07:30:26 <monqy> and extensions thereof?
07:30:28 <evincar> Yes.
07:30:30 <monqy> ok
07:31:11 <monqy> so you know about the whole generate-constraints-on-your-types-and-then-unify thing?
07:31:18 <evincar> Yes, that's what I'm doing.
07:31:22 <monqy> ok
07:32:12 <monqy> i don't get what your problem is??
07:32:56 <evincar> I don't know if it's a problem...
07:32:56 -!- ogrom has joined.
07:33:38 <evincar> What I'm doing now to allow arbitrary order is first associate each definition with a fresh type variable.
07:33:54 <monqy> ok
07:33:55 <evincar> Specifically a type scheme with no quantified variables.
07:34:16 <evincar> Then run inference on those definitions.
07:34:43 <evincar> Take the resulting type schemes and instantiate each one then unify the result with the corresponding variable.
07:34:55 <evincar> I feel like this isn't right.
07:35:25 <evincar> Because separate invocations get the same type variable which is unified with the result of instantiating the type scheme *once*.
07:35:31 <monqy> what do you feel isn't right about it and what do you mean by "type scheme"
07:36:23 <evincar> I mean a type + quantified type variables.
07:36:30 <evincar> A forall.
07:36:53 <monqy> so just a plain ol rank-1 universal type?
07:36:57 <evincar> Yup.
07:36:59 <monqy> ok
07:38:09 <evincar> But it seems to not exhibit the problem I thought it would, or my test case is wrong.
07:38:53 <monqy> i still don't quite understand your problem
07:39:37 <evincar> Different invocations of the same function can be given different types.
07:39:40 <evincar> I want to make sure I don't break that.
07:40:54 <monqy> well how would it break it? if your function gets a universal type and your stuff isn't TOTALLY BROKEN then you shouldn't be unifying it with any instantiated stuff
07:40:59 <monqy> if that's what you're saying
07:41:32 <monqy> your rules for function application and so on should handle it??
07:41:54 <shachaf> monqy: btw why doesn't ghc support existentials
07:42:09 <shachaf> it should imo
07:42:13 <Sgeo> I keep seeing things like files that state how many lines they have (in programming competitions), and thinking that it's for the benefit of C programmers
07:42:18 <monqy> shachaf: what sort of existentials? there's that one LANGUAGE thing!
07:42:20 <Sgeo> Do I have an unreasonably low opinion of C?
07:42:25 <Bike> yep
07:42:48 <Bike> what is even with existential types, they were in tapl but they were really weird
07:43:08 <monqy> well there's lots of different things that fall under the umbrella of sigma types
07:43:11 <shachaf> monqy: no first-class existentials
07:43:36 <Bike> er assuming you mean existential quantification
07:46:35 <monqy> the "easy" cases of sigma types are the ones where the left thingy is a type and you use it in the right thingy, like what happens in tapl where it's used for encapsulation or something like that, and where the left thingy is a value and the right thingy is some curry-howarded proof about it like in my example with {n : nat | n < 5}
07:46:48 <monqy> if you're really fancy you can care about both projections!!
07:46:53 <Bike> yeah it's the encapsulation that was weirding me out
07:47:02 <Bike> do programming systems actually use that?
07:47:36 <monqy> ask elliott for opinions about existentials :-)
07:47:55 <Bike> is this like when you had me ask ais about feather
07:48:03 <evincar> Isn't it also an existential when you have, say, data Box = forall a. (HasFoo a) => Box a
07:48:14 <monqy> shachaf: don't know!! woops
07:48:21 <evincar> Then a heterogeneous list of boxen which all HasFoo.
07:48:22 <monqy> Bike: did I? it's....similar :-)
07:48:35 <Bike> well when I say "you" i mean "the multiheaded demon that is #esoteric"
07:48:40 <Bike> that is a very cruel smile you have there
07:48:57 <monqy> well when I say elliott has opinions about existentials
07:49:01 <monqy> i mean elliott has opinions about existentials
07:49:06 <Bike> right...
07:49:51 <monqy> evincar: sure
07:49:56 <shachaf> monqy: apparently it has to do with how you can't express them in Core??
07:49:57 <evincar> (That being [exists a. HasFoo a => a])
07:50:05 <shachaf> which is also why you don't have existential newtypes (even though you have data types)
07:50:20 <monqy> i don't know much about core, :0
07:50:25 <shachaf> evincar: type classes are the devil....................
07:50:33 <shachaf> monqy: well it's pretty much system f??
07:50:40 <evincar> shachaf: I agree.
07:50:42 <monqy> shachaf: ah !
07:50:44 <shachaf> system fc "aka system f with coercions"
07:50:58 <Bike> What's wrong with type classes?
07:51:00 <monqy> evincar: you should ask elliott about existentials too
07:51:10 <monqy> we can have an asking elliott about existentials party
07:51:16 <shachaf> existentials are good imo
07:51:20 <Bike> I'll bring the punch.
07:51:22 <shachaf> but most things people want to do with them are bad
07:51:27 <shachaf> Bike: no, elliott will bring that
07:51:31 <evincar> monqy: elliott does not like it when I ask him things
07:51:32 <shachaf> if you ask him about existentials
07:51:37 <Bike> oh
07:51:40 <Bike> can i bring chips
07:51:47 <shachaf> "its a pun about elliott's violent tendencies where existential are concerned"
07:51:58 <Bike> yes i got that can we move on to chips
07:52:09 <monqy> i'm bringing the pop corn
07:52:13 <evincar> Chips on shoulders.
07:52:15 <monqy> it's a joke about how this will be fun to watch
07:52:29 <shachaf> monqy: good joke
07:52:52 <shachaf> we should have a joke party
07:52:56 <shachaf> if we survive the other party
07:52:57 <monqy> good idea !
07:53:05 <Bike> so who else do i ask about things
07:53:06 <monqy> i'll bring the punch
07:53:11 <shachaf> monqy: so i don't know that much about system f except for the things i do know
07:53:17 <shachaf> why can't it have existentials
07:53:18 <Bike> ais about feather, elliott about existentials, sgeo about... i dunno J probably
07:53:22 <Bike> what do i ask monqy?
07:53:25 <monqy> shachaf: system f is easy
07:53:43 <shachaf> monqy: right but apparently making ghc core work with existentials is "really hard????"
07:53:55 <shachaf> so why is making system f work with existentials "really hard????"
07:54:02 <Sgeo> I don't know much about J
07:54:13 -!- DH____ has quit (Read error: Connection reset by peer).
07:54:13 <Sgeo> Other than it's a little like APL I think
07:54:26 <Bike> typed APL, just picture it
07:54:31 -!- DHeadshot has joined.
07:54:34 <Bike> APL with subtyping and polymorphism
07:54:51 <Sgeo> You know, someone made a comment and I saw it, years ago, this person liked Factor and J but those names were hard to Google.
07:55:05 <Sgeo> I wonder if it was elliott who made that comment and is therefore to blame for me getting into Factor.
07:55:13 <Bike> also does system f even have existtential quantification
07:55:42 <Sgeo> oO
07:55:51 <Sgeo> "J is a modern, high-level, general-purpose, high-performance programming language."
07:55:55 <Bike> i don't know what that means, sgeo.
07:55:56 <Sgeo> It's "general-purpose" now?
07:56:02 <Bike> does it mean you'll tell me what to ask monqy?
07:56:06 <monqy> Bike: you have to "encode" existentials in system f
07:56:15 <Bike> oh boy i love encoding things into other things
07:56:15 <Sgeo> I don't know APL either.
07:56:37 <Bike> that would pretty much explain why Core doesn't have them though
07:57:01 <monqy> there's a section on it in tapl!
07:57:15 <Bike> god damn it
07:57:18 <Sgeo> Oh hey "monad" is another word that varies from language to language.
07:57:26 <Sgeo> Or, well, "J" has a different-from-standard meaning
07:57:42 <Sgeo> ...why did I quote J?
07:57:42 <Bike> doesn't it just mean a word that only has one uh argument
07:57:45 <zzo38> I thought something about extension of SQL to define new functions and aggregates, including anonymous, and which could be done without modifying SQLite, as far as I can tell.
07:57:50 <Bike> instead of a "dyad"
07:57:51 <Sgeo> Yes, I think
07:57:51 <Bike> which has two
07:58:13 <Bike> that usage actually predates haskell so Check And Mate
07:58:31 <Bike> haskell and/or whatever introduced monads to programming*
07:58:36 <Sgeo> Fuck words.
07:58:43 <Bike> embrace descriptivism, my son
07:58:49 <monqy> [tapl] exists X, T(X) =def= forall Y, (forall X, T(X) -> Y) -> Y. looks like one of those silly church encoding tricks
07:58:59 <Bike> eugh.
07:59:35 <Bike> Pfhaha, Wiktionary actually defines monad as "(mathematics, computing) A monoid in the category of endofunctors."
07:59:37 <Sgeo> Dear god why would I even glance at J again if you learn J and then walk away for a while you forget everything all code becomes unreadbal
07:59:39 <Sgeo> unreadable
07:59:40 <Bike> after leibniz of course.
07:59:49 <Sgeo> At least, I assume that's the case
07:59:58 <Bike> have you tried it
08:00:19 <Bike> this will be your greatest challenge yet. rather than learning a language, you will be unlearning it.
08:00:41 <zzo38> Once someone told me exactly how it means, "monoid in the category of endofunctors", then I can see, yes and that seem like it might be a simple definition of a monad.
08:01:22 <Bike> It's pretty simple if you know what a monoid and an endofunctor are. Which most people don't. Go math!
08:02:34 <monqy> well this is monoid in the category-theoretical sense right?
08:02:46 <Sgeo> I mean, most functions don't have clear names
08:02:52 <zzo38> The part I didn't quite understand at first was "category of endofunctors" but once explained then it makes sense, since I already understand monoid, category, endofunctors.
08:02:59 <Sgeo> Well, they have names, the names just don't show up in source
08:03:23 <Bike> monqy: they're "the same" aren't they
08:03:45 <Sgeo> Does J have the sort of metaprogramming stuff that I heard APL has?
08:04:00 <Bike> APL has eval, does that count
08:04:44 <monqy> Bike: https://en.wikipedia.org/wiki/Monoid_(category_theory)
08:05:10 <Sgeo> "The effort required to become an expert J programmer is closer to that required to become an expert C++ programmer."
08:05:18 <Sgeo> Is that intended to be a good thing?
08:05:19 <monqy> Bike: idk if that's what you'd call "the same"
08:05:45 <Bike> looks the same to me!!
08:07:26 <Bike> i like how they still call it "multiplication"
08:12:22 <monqy> https://en.wikipedia.org/wiki/Category:Monoidal_categories what a good category
08:12:51 <Bike> i think mediawiki allows categories to contain themselves though
08:12:55 <Bike> can Categories contain themselves
08:13:22 <zzo38> Mathematical categories do not contain themselfs in ordinary set theory, I think.
08:13:36 <Bike> ordinary set theory doesn't have categories, category theory does
08:14:14 <monqy> shocking
08:14:21 <Bike> i know right
08:14:46 <Sgeo> 6!:0 ''
08:14:52 <Sgeo> That is a thing to get the date+time
08:14:55 <Sgeo> In J
08:15:04 <Bike> cool.
08:15:22 <Sgeo> It's.... there's concision, and there's concision to the point of unreadability
08:15:24 <Bike> by the way did you seriously start reading about J because i mentioned you and it in a joke that took half a second to come up
08:15:27 <Bike> with
08:15:34 <Bike> not even a good joke!
08:15:41 <Bike> And I still don't know what to ask monqy.
08:15:52 <monqy> i'm sure there's some stuff to ask me, but i won't tell you
08:16:00 <Bike> god fucking damn it
08:16:01 <monqy> maybe ask elliott
08:16:37 <Bike> what's the fuckin command
08:16:41 <Bike> @ask bike hello??
08:16:42 <lambdabot> You can tell yourself!
08:16:48 <Bike> @ask elliott what do i ask monqy
08:16:49 <lambdabot> Consider it noted.
08:17:38 <Bike> by the way
08:17:55 <Bike> why is category theory called category theory when as far as i can tell the relations between categories are like a trillion times as important as categories
08:18:23 <monqy> relations between categories theory
08:18:29 <monqy> it'll catch on im sure
08:19:28 <Sgeo> "x+.y is the greatest common divisor of x and y . If the arguments are boolean (0 or 1), the functions +. and *."
08:19:30 <Bike> functor theory i'm telling you
08:19:33 <Bike> or morphism theory
08:19:40 <Bike> you could sound like moronic biologists!!!
08:19:56 -!- glogbackup has quit (Remote host closed the connection).
08:19:57 <Sgeo> It.... almost makes sense to use +. and *. for GCD and LCM. In an insane sort of way
08:20:02 <Bike> Sgeo: did that cut off
08:20:21 <Sgeo> Oh, I forgot to paste the rest
08:20:22 <Sgeo> "are equivalent to logical or and and. "
08:20:28 <Bike> yeah that's what i thought
08:20:37 <Bike> hey you know what would be cool? APL but with category theory instead of matrices and arrays.
08:20:46 <Bike> new life goal, learn enough cat theory to make that esolang
08:21:32 <monqy> there are a whole bunch of languages grounded in category theory aren't there? just none off the top of my head
08:21:46 <shachaf> it should be called monoidoid theory
08:21:57 <monqy> maybe not to the extent apl is "grounded" in arrays...but what would that even mean for categories
08:22:01 <monqy> shachaf: imo yes
08:22:09 <shachaf> or monoidoidoid theory?
08:22:14 <shachaf> "xtreem version"
08:22:15 <monqy> no that's too far
08:22:21 <shachaf> monqy isn't xtreem enough
08:22:29 <shachaf> for monoidoidoid theory
08:22:48 <Bike> monqy: but do any of those languages use ⍋?
08:22:50 <monqy> are you xtreem enough for monoidoidoidoid theory???
08:22:54 <monqy> Bike: who knows
08:23:40 <Sgeo> If Perl is line noise, is J highly compressed Perl?
08:23:56 <Bike> anyway so i'm going to take my copy of A Programming Language and my copy of Categories for the Working Mathematician and I'm going to use the cut-up technique to make a novel about ninja pornographers, and then burn the result and smoke it
08:25:40 <monqy> sounds like a plan
08:28:01 <Bike> "Categorical quantum mechanics can also be seen as a type theoretic form of quantum logic that, in contrast to traditional quantum logic, supports formal deductive reasoning."
08:31:16 <Sgeo> 2 * 4 + 5
08:31:17 <Sgeo> 18
08:31:31 <monqy> hi??
08:31:57 <Bike> right, apl doesn't have operator precedence
08:32:02 <Bike> and... i guess j is right to left? ok.
08:32:22 <monqy> theres all sorts of right-associativity going on yes
08:32:53 <shachaf> 𝔥𝔦 𝔪𝔬𝔫𝔮𝔶
08:34:39 <Sgeo> We used 3 : 0 to define the verb. The phrase verb define is equivalent and some find it easier to read. However, it hides information and we will use the 3 : 0 form.
08:34:42 <Sgeo> Oh, ok
08:34:49 <Sgeo> This helps preserve my sanity a little
08:36:26 <monqy> Bike: maybe you were right about this asking sgeo about j thing....
08:37:02 <Bike> i'd like to deny all responsibility for this now. thanks
08:40:17 -!- glogbackup has joined.
08:56:36 -!- epicmonkey has joined.
08:57:27 <Sgeo> "Control structures are only allowed in definitions and you cannot type one directly into the ijx window for execution."
08:57:33 <Sgeo> Reminds me of Forth :/
08:58:34 -!- Taneb has joined.
09:02:17 <shachaf> Haneb
09:02:45 <Taneb> shachello
09:06:38 -!- Bike has quit (Quit: leaving).
09:12:31 -!- scarf has quit.
09:13:05 -!- Nisstyre-laptop has quit (Ping timeout: 246 seconds).
09:15:38 -!- evincar has quit (Ping timeout: 255 seconds).
09:22:13 * Sgeo gets irritated at J apparently using floating-point
09:22:31 <Sgeo> "The 0.5 and 0.25 are stored exactly, but the 0.1 is stored inexactly, and when displayed with maximum precision shows as 0.10000000000000001 .
09:22:31 <Sgeo> These are facts of life with the way computers store floating point numbers and apply to all computer languages, not just J. "
09:23:17 -!- evincar has joined.
09:26:36 <Sgeo> http://news.ycombinator.com/item?id=4622163
09:26:39 <Sgeo> Can I punch this person?
09:26:40 <Sgeo> Please?
09:26:55 <Sgeo> Actually, hmm, I guess it could be accurate
09:26:56 <Sgeo> n/m
09:27:15 <Sgeo> "In binary" isn't the same as "Using bits to encode it"
09:28:36 -!- evincar has quit (Ping timeout: 256 seconds).
09:30:13 <shachaf> Punch first, ask questions later.
09:37:55 -!- fungot has joined.
09:38:05 <fizzie> A fungot.
09:38:05 <fungot> fizzie: sorry, wrong channel. still makes the exact same
09:38:06 <lambdabot> fungot: You have 2 new messages. '/msg lambdabot @messages' to read them.
09:38:25 <monqy> ^echo @messages
09:38:25 <fungot> @messages @messages
09:38:25 <lambdabot> RocketJSquirrel said 11m 5d 19h 35m 53s ago: You are a gentleman and a scholar.
09:38:25 <lambdabot> shachaf said 7h 43m 22s ago: hi
09:38:48 <monqy> almost a year, wow
09:38:48 <fizzie> That's... interesting.
09:38:57 <FreeFull> > 0.1
09:38:59 <shachaf> monqy++
09:38:59 <lambdabot> 0.1
09:39:08 <FreeFull> > 1 - 0.9
09:39:08 <shachaf> FreeFull: we're having a moment of silence don't ruin it!!
09:39:09 <lambdabot> 9.999999999999998e-2
09:39:19 <Taneb> @karmy monqy
09:39:19 <lambdabot> monqy has a karma of -12
09:39:27 <Taneb> @karmy shachaf
09:39:27 <lambdabot> shachaf has a karma of 5
09:39:31 <monqy> i used to have -13 but then shachaf ruined it
09:39:32 <shachaf> monqy++ monqy++ monqy++ monqy++ monqy++ monqy++ monqy++ monqy++ monqy++ monqy++ monqy++ monqy++
09:39:39 <shachaf> "sorry"
09:39:42 <shachaf> @karma monqy
09:39:42 <lambdabot> monqy has a karma of 0
09:39:48 <monqy> zen
09:39:56 <monqy> (thats what zen means right)
09:40:06 <shachaf> it might
09:40:08 <shachaf> zen again, it might not
09:40:19 <monqy> :-)
09:40:24 <shachaf> :·)
09:41:04 <Taneb> :o)
09:41:13 <monqy> : )
09:41:23 <Taneb> :^)
09:41:27 <monqy> :()
09:41:44 <Taneb> :0)
09:41:48 <shachaf> monqy: help i don't know how to think
09:41:54 <shachaf> data Step k o r = Stop | Yield o r | forall t. Await (t -> r) (k t) r
09:41:55 <monqy> shachaf: ????help
09:41:59 <monqy> uh oh
09:42:06 <shachaf> how can you simplify Await
09:42:11 <monqy> is this one of those things
09:42:21 <shachaf> at first i thought::::: forall t. (t -> r) ((k :+: Proxy) t)
09:42:25 <shachaf> except that doesn't work
09:42:26 <Sgeo> <cfa> it has an extended precision implementation
09:42:26 <Sgeo> <Sgeo> ?
09:42:26 <Sgeo> <cfa> and yes, you can use rationals instead of floating point
09:42:26 <Sgeo> <cfa> 3r5 etc.
09:42:32 <shachaf> so "what can you do"
09:42:37 <shachaf> monqy: imafraid itis
09:43:17 <monqy> imo ask elliott he knows everything about existentials
09:43:46 <shachaf> monqy: imo the Await part is like (r,CoYoneda k r)
09:43:51 <shachaf> by imo i mean edwardk said so
09:43:57 <shachaf> but it makes sense
09:44:24 <shachaf> monqy: btw are you a CoYoneda expert
09:45:00 <monqy> not to my knowledge
09:45:12 <shachaf> monqy: well you know how CoYoneda IORef = a read-only IORef
09:45:50 <monqy> help which coyoneda should i be looking at
09:46:53 <monqy> these haskell searchy things aren't working so great but they turned up a result at least
09:47:14 <monqy> from zzo's package??
09:47:18 <shachaf> no
09:47:24 <shachaf> CoYoneda f a = forall r. CoYoneda (r -> a) (f r)
09:47:48 <monqy> zzo's coyoneda uses different letters...
09:48:32 <shachaf> does it use z
09:48:36 <shachaf> i heard zzo likes that letter
09:48:49 <monqy> instead of a it uses x, and instead of r it uses z
09:49:22 <shachaf> imo it should use z and o
09:49:27 <monqy> good idea
09:49:50 <shachaf> monqy: anyway when f is a functor CoYoneda f is isomorphic to f??
09:49:58 <shachaf> but when it's not a functor you can get "weird things"
09:50:02 <monqy> aight
09:50:10 <monqy> sounds cool
09:50:31 -!- azaq23 has joined.
09:50:34 <shachaf> by cool you mean boring right
09:50:44 -!- azaq23 has quit (Max SendQ exceeded).
09:50:51 <shachaf> maybe THIS CoYoneda will be more to your liking!!!!!!!!!! http://ncatlab.org/nlab/show/co-Yoneda+lemma
09:51:00 <monqy> no!!!! and edwardk was right about that Await part being like (r,CoYoneda k r)
09:51:06 -!- azaq23 has joined.
09:51:19 <monqy> mm mm i'll read this maybe it will be more to my liking
09:51:25 <shachaf> monqy: i know he was right
09:51:41 <shachaf> but i was wondering whether you can express it like the way i said
09:51:46 <shachaf> but i guess not??
09:51:53 <shachaf> «every presheaf is a colimit of representables and more precisely that it is the “colimit over itself of all the representables contained in it”.»
09:52:06 <shachaf> monqy: do you know what a limit is
09:52:10 <shachaf> "in a category"
09:52:29 <monqy> i think maybe i used to?
09:52:42 <shachaf> can you explain it
09:52:50 <shachaf> i have ct homework
09:52:54 <monqy> well i forgot what it is!!! are you just testing me
09:53:05 <shachaf> except instead of school homework it's "someone giving you an exercise in irc homework"
09:55:57 <monqy> :|
09:56:51 <shachaf> do you have a no "homework policy"
09:57:36 <monqy> i have a no-shachaf-asking-me-to-explain-things-he-probably-already-understands-and-knows-i-don't policy
09:58:20 <monqy> limits are probably really easy too but i just really don't know much category theory at all
09:59:02 <shachaf> monqy: actually i don't understand at all : (
09:59:14 <shachaf> i guess first i need to understand:
09:59:19 <shachaf> index categories
09:59:20 <shachaf> diagrams
09:59:20 <shachaf> cones
09:59:33 <shachaf> factorizations
09:59:41 <shachaf> "other stuffs"
09:59:44 <Jafet> You first need to understand everything
09:59:48 <Jafet> Then it's easy
09:59:56 <shachaf> do i need to bake an apple pie first
09:59:59 <shachaf> i heard that's hard
10:00:05 -!- Phantom_Hoover has joined.
10:00:19 <Jafet> No, no, you want a soft apple pie.
10:00:30 <monqy> well afaiui a diagram is just another name for functor if you're meant to think of it as some category indexed by another category
10:00:30 <oklopol> "<Bike> can Categories contain themselves" small categories can contain only sets, big categories can contain categories, but only small ones. afaiu. there are no inherent problems with having a category that contains itself but usually you want to have some kind of set theory as well so the usual restrictions apply.
10:00:59 <Taneb> mystery solved
10:01:00 <shachaf> well a diagram is mapping a category to particular kind of other category right
10:01:08 <shachaf> oh hi oklopol
10:01:12 <shachaf> you know limits right
10:01:27 <shachaf> wait i got it backwards
10:01:29 <Jafet> I no know limits
10:02:15 <oklopol> and ordinary set theory has categories. it just doesn't have very large categories. if you restrict to a megahuge set of your choice, you still get categories buildable from those.
10:03:16 <shachaf> oklopol: Is megahuge set a technical term?
10:04:07 <shachaf> monqy: wow am i bad at types or what
10:04:13 <monqy> shachaf: ??
10:04:13 <shachaf> this is hard :'(
10:04:16 <shachaf> Machines
10:04:23 <shachaf> the "Await" thing
10:04:33 <monqy> yeah i thought it smelled like 'machines'
10:04:39 <shachaf> maybe i should learn coq to be good at types
10:05:51 <oklopol> "<shachaf> you know limits right" i suppose
10:06:04 <oklopol> i have to check which is limit and which is colimit tho
10:06:41 <shachaf> btw my exercise is (no spoilers!!)
10:06:51 <shachaf> prove that every category which is small and complete is also cocomplete
10:07:06 <shachaf> and usually i forget about it but sometimes i remember??
10:08:12 <oklopol> so i suppose you have to take the definition of cocomplete and write it in terms of a limit, which will be small if the category is, so that the limit exists due to completeness.
10:08:26 <shachaf> and apparently this exercise has a "dark secret"
10:08:29 <oklopol> is my take without giving this the least amount of thought
10:08:34 <oklopol> i see
10:08:48 <monqy> what sort of dark secret
10:09:59 <shachaf> <ddarius> @tell shachaf Exercise: Any category that is small and complete is also cocomplete. Hint: This is a direct generalization of the lattice theoretic result, e.g. the supremum of the empty set is the infimum of the whole lattice. Extra credit: What is the dark secret of this exercise?
10:10:04 <shachaf> oh there was also a hint
10:10:29 <c00kiemon5ter> is a "dark secret" made of "dark matter" ?
10:11:04 <oklopol> yeah that sounds about right
10:11:11 <oklopol> regarding the hint i mean
10:11:34 <oklopol> dunno what the secret is. something about categories being ordered classes maybe.
10:11:36 <monqy> dark secret sounds like you might have to assume some nasty ol axioms
10:11:57 <shachaf> monqy: i think it might a kind of dark secret that means "this has to do with a haskell thing"
10:12:03 <shachaf> because of "something i heard"
10:12:07 <shachaf> but that's just a guess
10:13:50 <shachaf> monqy: remember when ddarius was in #haskell
10:13:55 <monqy> no
10:14:00 <shachaf> what!!
10:14:07 <monqy> i'm not a "#haskell guy"
10:14:10 <shachaf> ddarius was the best
10:14:26 <shachaf> monqy: "then yru in it"
10:14:34 <monqy> idk
10:14:45 <shachaf> well #haskell is terrible
10:14:50 <shachaf> except when ddarius is in it??
10:14:56 <monqy> maybe because sometimes people say funny things
10:15:08 <monqy> and occasionally i look over there when someone says a funny thing
10:15:14 <monqy> usually i just don't pay attention though
10:15:26 <monqy> by funny i mean funny in a bad way
10:16:11 <oklopol> "<shachaf> oklopol: Is megahuge set a technical term?" not afaik, although i wouldn't be that surprised if it were.
10:16:17 <monqy> like that one time that guy had that thing about learning monads from the wikipedia page and not doing any other haskell until he grokked it
10:16:28 <shachaf> i remember that tiem!!
10:16:32 <oklopol> i seem to remember that some of the cardinal terms are somewhat silly
10:16:40 <shachaf> did he ever succeed "in his quest"
10:16:44 <monqy> i forget
10:16:51 <monqy> but he has said other funny things since then
10:16:55 <monqy> which i also forget
10:17:04 <shachaf> who was it
10:17:31 <monqy> hrumph iirc
10:17:55 <shachaf> oh maybe we're thinking of different ones
10:18:17 <shachaf> what kind of "channel guy" are you
10:18:23 <shachaf> #esoteric?
10:18:35 <monqy> i'm not really a channel guy?
10:20:17 <shachaf> o
10:20:24 <monqy> maybe i secretly am
10:20:27 <monqy> and i don't know it
10:20:29 <shachaf> o
10:21:28 <shachaf> (<~) :: Monad m => ProcessT m b c -> MachineT m k b -> MachineT m k c
10:21:31 <shachaf> mp <~ ma = MachineT $ runMachineT mp >>= \v -> case v of
10:21:33 <shachaf> Stop -> return Stop
10:21:36 <shachaf> Yield o k -> return $ Yield o (k <~ ma)
10:21:38 <shachaf> Await f Refl ff -> runMachineT ma >>= \u -> case u of
10:21:41 <shachaf> Stop -> runMachineT $ ff <~ stopped
10:21:43 <shachaf> Yield o k -> runMachineT $ f o <~ k
10:21:46 <shachaf> Await g kg fg -> return $ Await (\a -> MachineT (return v) <~ g a) kg (MachineT (return v) <~ fg)
10:21:49 <shachaf> this is ridiculous
10:21:58 <monqy> yes
10:22:26 <shachaf> full of "fiddly bits"
10:22:29 <monqy> what does it do
10:22:44 <shachaf> -- | Build a new 'Machine' by adding a 'Process' to the output of an old 'Machine'
10:22:50 <monqy> ah
10:23:04 <shachaf> Process a b ~ Stop | Yield b (Process a b) | Await (a -> Process a b) (Process a b)
10:23:16 <shachaf> the second part of Await is the "failure case......"
10:23:34 <shachaf> so it's like a weird free monad
10:23:44 <shachaf> which isn't a monad come to think of it
10:23:57 <shachaf> or maybe it's just a coroutine monad applied to ()??
10:24:27 <monqy> looks like a thing alright
10:24:46 <shachaf> monqy: are you a "free monad expert"
10:24:53 <shachaf> are you even an expert in anything??
10:24:56 <shachaf> other than type theory i guess
10:25:08 <monqy> idk probably not??? :(
10:25:16 <monqy> i know some free monad stuff maybe??
10:25:20 <shachaf> you kind of sound like an expert
10:25:52 <shachaf> monqy: btw you know the STT thing?
10:26:33 <monqy> something type theory? im blanking on what the s is
10:27:11 <shachaf> no ST transformer
10:27:15 <shachaf> "boring haskell sorry"
10:27:19 <monqy> ah....
10:27:28 <shachaf> mr.hird was trying to work out what a good primitive was
10:27:33 <shachaf> maybe he didn't mention it in here
10:27:40 <monqy> i dont recall it
10:28:28 <shachaf> monqy: so what's this Stop thing
10:28:33 <shachaf> it seems "really final"
10:28:52 <monqy> i dont know much about 'machines'
10:29:26 <monqy> im guessing it means "Stop" though
10:32:22 <oklopol> why is it co-cone and not ne
10:33:00 <monqy> maximal confusion
10:33:18 <oklopol> resist... urge... to say nfusion
10:33:29 <oklopol> i'm sorry
10:34:03 <shachaf> oklopol: What do you call foo :: p b a -> Either (p b x) (p x a)?
10:34:57 <oklopol> i do not know.
10:35:46 <oklopol> what do you call it?
10:37:03 <shachaf> mpose
10:37:13 <shachaf> Even though it's not quite the right name.
10:56:55 <shachaf> tee :: Monad m => ProcessT m a a' -> ProcessT m b b' -> TeeT m a' b' c -> TeeT m a b c
10:56:58 <shachaf> tee ma mb m = MachineT $ runMachineT m >>= \v -> case v of
10:57:01 <shachaf> Stop -> return Stop
10:57:03 <shachaf> Yield o k -> return $ Yield o $ tee ma mb k
10:57:06 <shachaf> Await f L ff -> runMachineT ma >>= \u -> case u of
10:57:08 <shachaf> Stop -> runMachineT $ tee stopped mb ff
10:57:11 <shachaf> Yield a k -> runMachineT $ tee k mb $ f a
10:57:13 <shachaf> Await g Refl fg ->
10:57:16 <shachaf> return $ Await (\a -> tee (g a) mb $ encased v) L $ tee fg mb $ encased v
10:57:19 <shachaf> Await f R ff -> runMachineT mb >>= \u -> case u of
10:57:21 <shachaf> Stop -> runMachineT $ tee ma stopped ff
10:57:24 <shachaf> Yield b k -> runMachineT $ tee ma k $ f b
10:57:26 <shachaf> Await g Refl fg ->
10:57:29 <shachaf> return $ Await (\b -> tee ma (g b) $ encased v) R $ tee ma fg $ encased v
10:57:32 <shachaf> help
10:58:40 <monqy> what does that do
10:58:47 <monqy> did someone woops something
10:59:00 <shachaf> it "tee's" 2 'machines' together
10:59:04 <shachaf> or something??
10:59:08 <shachaf> no that's backwards..
10:59:24 <monqy> it looks like it uhhhh
10:59:29 <monqy> something about two processes and a tee
10:59:34 <monqy> then you get a tee
10:59:43 <monqy> something with composing some stuff maybe
10:59:51 <shachaf> yes
10:59:59 <shachaf> but look at that implementation
11:00:03 <monqy> yeah uh
11:00:04 <shachaf> "it'sc razy"
11:00:14 <monqy> i don't really want to look at that too much
11:00:25 <monqy> im not crazy enough for it
11:01:21 <shachaf> um me neither............
11:01:39 <shachaf> i think you have to be "real crazy" for it
11:01:47 <shachaf> like even more than mr.hird??
11:01:59 <monqy> who wrote it, mr.kmett????????
11:02:13 <monqy> being 'machines' and all
11:03:36 <shachaf> yes..
11:03:41 <shachaf> well thats what "git blame" says
11:04:39 <shachaf> but maybe it was one of the"other people"
11:04:49 <monqy> maybe it was me
11:05:04 <shachaf> like mr.bjarnason or mr.chiusano??????????????????????
11:05:21 <Sgeo> J forks remind me a little of Caleskell
11:05:32 <Sgeo> Or, well, the sin+cos thing,
11:07:14 -!- ogrom has quit (Quit: Left).
11:12:49 <shachaf> monqy: btw did you read those slides
11:13:24 <monqy> yeah..it made perfect sense up to the homotopys part and then it started losing me
11:13:49 <monqy> but i opened up some tabs with the stuff in it
11:14:10 <shachaf> the first word in the slides is "Homotopy".. didnt make it very far imo
11:14:45 <shachaf> btw do you know about "axiom K" and all that
11:14:57 <monqy> i've seen "axiom K" but never used it
11:15:09 <shachaf> k
11:15:17 <shachaf> (no that wasn't
11:15:25 <shachaf> just a lead up to a pun!!!!!!)
11:15:51 <monqy> my experience with it is limited to that chapter of "cpdt" about equality proofs. i think there's a section on axiom k in there?
11:16:15 <shachaf> i haven't read "cpdt" :'(
11:16:21 <shachaf> shold i read that
11:16:26 <monqy> it's my preferred coq book
11:16:43 <monqy> so if you want to learn coq and want to learn it from a book
11:16:51 <monqy> i guess that's what i'd recommend
11:17:07 <shachaf> what about ´software foundations´
11:18:09 <monqy> software foundations goes into some pl theory stuff but sorta skimps on the coq, so it's maybe a good introduction to some of that stuff and in particular working with it in coq but
11:19:32 <monqy> i don't feel it's satisfactory if you want to get a taste from your book of the sorta stuff cpdt offers
11:19:53 <shachaf> so if i know nothing about anything
11:19:57 <shachaf> which one should i read!!
11:20:03 -!- mig22 has joined.
11:21:30 <monqy> i'd suggest read cpdt and tapl but keep sf around in case you want a "second opinion". it's only second and not third because of that Benjamin Pierce intersection
11:22:14 <monqy> I also recall sf having more exercises than cpdt that are interspersed throughout the text so you might want to follow along with it too if needed
11:23:01 <monqy> in particular if you want some pl-y exercises catered to coqwork; tapl's are more pen-and-papery unless you build the coq ground-up which is entirely reasonable if you want to I won't judge you if you do that
11:23:45 <shachaf> hmm ok
11:23:56 <monqy> and by read tapl i guess i mean read however much into it as it helps you understand the theory and how to work with it (proofs, etc)...no need to read it cover to cover and reabsorb all the details you're already familiar with
11:24:38 <monqy> i guess the chapter dependency list might help there...
11:25:14 <monqy> if you really want to be thorough you could also learn agda and read attapl, neither of which i have experience with...
11:27:49 <shachaf> ok
11:27:58 <shachaf> that could be a lot of reading
11:28:12 <monqy> no need to be that thorough!!! I sure wasn't
11:28:27 <shachaf> well but you already know everything right
11:28:27 <monqy> though i often feel i should be that thorough..........
11:28:33 <monqy> i don't know agda :'(
11:28:47 <shachaf> monqy "already knows everything except agda and some math stuff" monqy
11:29:05 <monqy> in particular there are some things that i'm curious as to how agda handles, not having tactics and all
11:29:26 <monqy> like tactics are gross but they can sorta help with a few really gross things and if agda can handle them nicely that'd be really great
11:30:25 <monqy> and some other agda proofy stylistic things that i'm interested in but not as interested
11:31:56 -!- copumpkin has quit (Ping timeout: 256 seconds).
11:32:27 -!- copumpkin has joined.
11:33:06 -!- azaq23 has quit (Remote host closed the connection).
11:33:40 -!- azaq23 has joined.
11:36:16 -!- azaq23 has quit (Client Quit).
11:36:45 -!- azaq23 has joined.
11:37:15 -!- azaq23 has quit (Client Quit).
11:40:09 -!- azaq23 has joined.
11:51:07 -!- zzo38 has quit (Remote host closed the connection).
11:57:23 -!- mig22 has left.
12:03:40 -!- epicmonkey has quit (Ping timeout: 256 seconds).
12:05:50 <shachaf> https://en.wikipedia.org/wiki/Apartness_relation
12:07:00 <shachaf> monqy: ☝
12:07:06 <shachaf> do you know anything about "that stuff"
12:07:55 <monqy> uhh i think iv'e seen it maybe once?
12:08:00 <monqy> don't know much about it at all
12:08:06 <monqy> aside from well it exists
12:08:21 <monqy> and the thing with constructive logic
12:08:26 <shachaf> monqy: well that's like a cocategory!!!!
12:08:37 <shachaf> except it's "also commutative"
12:08:55 <shachaf> so i guess it's not quite it??
12:09:16 <shachaf> but you know about "constructive stuff" so maybe you know about it
12:09:37 <monqy> i've never seen apartness relations outside of wikipedia woops woops
12:09:42 <monqy> co-transitivity is kinda wacky tho
12:10:00 <shachaf> co-transitivity is what you get when you "bbiizzaarroo"ify composition
12:10:07 <monqy> ye
12:10:18 <shachaf> if you remember how bizarrification went
12:10:27 <monqy> "reverse the arrows"
12:10:37 <shachaf> well it's not just plain old reversing the arrows
12:10:46 <shachaf> dolio said this is called a cointernal category??
12:10:54 <shachaf> but you don't have to switch from products to sums
12:10:58 <shachaf> if you don't want to
12:11:06 <shachaf> do you know about that
12:11:11 <monqy> :0
12:19:42 -!- carado has joined.
12:38:53 -!- DHeadshot has quit (Read error: Connection reset by peer).
12:38:58 -!- DH____ has joined.
12:42:03 -!- monqy has quit (Quit: hello).
12:46:37 -!- oerjan has joined.
12:50:56 -!- copumpkin has quit (Ping timeout: 252 seconds).
12:51:27 -!- copumpkin has joined.
12:51:54 <Phantom_Hoover> disconcerting discovery of the day: there is a duran duran wikia
12:52:33 <shachaf> Hantom_Hoover
12:53:02 <Phantom_Hoover> hampton hoover?
12:53:21 <shachaf> `?hh Phantom_Hoover
12:55:07 <oerjan> Phantom_Hoover: the band or the barbarella character, and which would be more disconcerting?
12:57:08 <Phantom_Hoover> oerjan, well it'd be a bit of a stretch to have a whole wiki about a barbarella character
12:57:21 <oerjan> if you say so.
12:57:27 <shachaf> hoerjan
12:57:49 <oerjan> shachi
13:01:56 -!- Taneb has quit (Ping timeout: 252 seconds).
13:02:54 <Jafet> SHA chaff
13:04:54 <oerjan> `cat bin/?
13:07:28 <oerjan> `echo hi
13:08:39 <Jafet> Hm, I didn't expect hackego would be broken this long
13:09:11 <oerjan> Jafet: wtf were you doing in there. also i don't think reverts are cumulative.
13:09:57 <Jafet> Wellll I did learn something
13:10:04 <Jafet> iconv hangs if it can't find the BOM
13:11:44 <oerjan> oh no i realize why there was that strange delquotee file
13:12:02 <oerjan> Jafet: sed -ie doesn't work as sed -i -e, it does -i with e as backup file suffix
13:12:08 <oerjan> *oh now
13:12:31 <shachaf> imo delquotee sounds like a "good idea"
13:12:43 <shachaf> for most of the quotes in here
13:13:05 <Jafet> I don't think it's "easy"
13:13:26 <oerjan> wat
13:15:40 <Jafet> Oh `revert is like emacs undo
13:15:51 <Jafet> I never understood emacs undo
13:16:10 <shachaf> Emacs undo is where a second undo undoes the first undo?
13:16:44 <shachaf> Hmm, no.
13:16:47 <shachaf> What's emacs undo?
13:17:14 <Jafet> It's... complicated
13:17:15 <oerjan> @gregor HackEgo is dead, also please tell me there is a way to get the HackEgo website to show diffs between a particular revision and the tip
13:17:16 <lambdabot> Unknown command, try @list
13:17:21 <oerjan> @tell gregor HackEgo is dead, also please tell me there is a way to get the HackEgo website to show diffs between a particular revision and the tip
13:17:22 <lambdabot> Consider it noted.
13:17:45 <shachaf> class Dipointed a where tip :: p a a
13:23:52 <oerjan> Jafet: you were messing around with HackEgo so much i'm paranoid about what you actually achieved...
13:25:57 <oerjan> <Bike> it's pretty cool that one of the big category theory guys lives in a shack in the pyrenees now <-- maybe i should move to a shack in the pyrenees. i might actually get more done that way.
13:27:13 <oerjan> getting suitable broadband might be a bitch, though.
13:30:04 <oerjan> @tell OeRjAn is lambdabot case sensitive about nicks?
13:30:05 <lambdabot> You can tell yourself!
13:30:11 <oerjan> apparently not.
13:30:58 <oerjan> @tell Gregor Because checking if someone messed up horribly with a long row of commands is a bitch.
13:30:58 <lambdabot> Consider it noted.
13:33:56 <oerjan> <shachaf> i don't even know what a monoid is <-- a monoid is a member of the variety of universal algebras with two operations (*) (binary) and e (constant) given by the equations a*(b*c) = (a*b)*c, e*a = a, a*e = a. hth.
13:34:40 <oerjan> (a variety is a family of universal algebras given by such equations.)
13:34:41 <shachaf> oerjan: oh
13:34:44 <shachaf> that's easy :D
13:34:47 <shachaf> i love it!
13:35:54 <oerjan> (the equations are supposed to hold for all a,b,c.)
13:38:18 <oerjan> other well-known varieties are the varieties of semigroups, groups and rings. fields are not a variety because one of the rules of fields (x invertible if x /= 0) cannot be expressed with such equations.
13:38:39 <oerjan> s/rules/axioms/
13:39:16 <oerjan> vector spaces can be a variety if you're willing to have one operation for multiplying by each scalar.
13:40:42 -!- Taneb has joined.
13:41:49 <oerjan> perhaps even d-modules are a variety in that way.
13:42:18 <oerjan> (ordinary modules over a fixed ring are. that's just a minor generalization of vector spaces.)
13:42:27 <Taneb> Can we give timwi a warning?
13:42:53 <Taneb> For nominating his own language for featured language
13:45:45 <oerjan> you just did.
13:46:10 <Taneb> I meant a Warning
13:49:25 <oerjan> otoh the Process section seems not to be clear enough that you're only allowed to suggest _one_ language.
13:53:54 <oerjan> Funciton _is_ nice though, someone should nominate it :P
13:54:43 <Taneb> I haven't currently nominated a language, but personally I don't like Funciton, so I won't
13:54:55 <oerjan> ok
13:55:23 <oerjan> hm Ziim also looks pretty
13:56:37 <oerjan> also ridiculously hard to program
14:04:48 <oerjan> `addquote <shachaf> wait cricket /= croquet??????????????????????????????????
14:04:53 <oerjan> oops
14:15:24 -!- ogrom has joined.
14:26:57 <shachaf> oerjan.........
14:41:22 <elliott> I wake up and shachaf is still doing it.
14:41:22 <lambdabot> elliott: You have 2 new messages. '/msg lambdabot @messages' to read them.
14:41:39 <shachaf> Doing what?
14:41:45 * shachaf tried to sleep and didn't manage it.
14:45:28 <oerjan> it's because doing it is s*hit by falling anvil*
14:47:21 <elliott> doing it is shit?
14:47:28 <oerjan> oops
14:48:06 <oerjan> the anvil is supposed to punish horrible puns, not make them
14:53:49 <elliott> "Nominating two of my own languages and one other."
14:53:56 <elliott> "Any user (whether registered or anonymous) can suggest a language to be featured by listing it on this page; however, *suggesting your own languages is forbidden*."
14:54:03 <elliott> A+
14:54:41 <oerjan> elliott: i also edited that "a" to a bolded "one"
14:54:52 <oerjan> i don't think it was quite clear before
14:54:58 <elliott> fair enough.
14:57:13 * oerjan finds r/AskHistorians dangerously addictive
14:57:51 <shachaf> are you readinggit oerjan?
14:57:55 <oerjan> yep
14:57:59 <shachaf> bad idea
14:58:30 <oerjan> although i'm considering closing the subreddit after reading the tabs i've already opened
14:58:53 <oerjan> let's s/after/before/ just to be sure
15:01:13 -!- TeruFSX has joined.
15:02:15 <oerjan> they have a policy in top comments against speculation, and also a policy against quoting wikipedia. you just know it's high quality.
15:02:15 -!- yorkdove has joined.
15:04:04 -!- yorkdove has left.
15:09:48 -!- TeruFSX has quit (Ping timeout: 276 seconds).
15:15:52 -!- DH____ has quit (Read error: Connection reset by peer).
15:24:35 -!- TeruFSX has joined.
15:25:05 -!- ogrom has quit (Quit: Left).
15:45:20 -!- sirdancealot7 has quit (Ping timeout: 255 seconds).
15:57:58 -!- sirdancealot7 has joined.
16:06:04 -!- oerjan has quit (Quit: leaving).
16:07:55 <shachaf> goodbyerjan
17:33:34 <kmc> Sgeolang is J now?
17:34:26 <shachaf> Sgeolang has always been J.
17:34:28 <shachaf> War is peace.
17:36:54 -!- sebbu has quit (Read error: Connection reset by peer).
17:37:32 -!- sebbu has joined.
17:47:17 -!- Bike has joined.
18:07:43 -!- Nisstyre-laptop has joined.
18:09:34 -!- Phantom_Hoover has left ("Leaving").
18:09:41 -!- Phantom_Hoover has joined.
18:23:29 -!- AnotherTest has joined.
18:23:35 <AnotherTest> Hello
18:26:44 <kmc> hello
18:27:25 -!- Taneb has changed nick to Taneb|Away.
18:33:44 <fizzie> PLOOOOTS http://zem.fi/esostats/people_tod.html (disclaimer: is beta)
18:34:43 <Bike> Loading data. (Probably...)
18:34:53 <fizzie> Yes, well, it's probably loading.
18:34:57 <fizzie> Possibly not.
18:34:59 <Vorpal> fizzie, yay
18:35:04 <Vorpal> why right now though
18:35:13 <Vorpal> fizzie, and it loaded finally
18:35:22 <fizzie> Bike: But it would say "hopefully" if it didn't run scripts at all.
18:36:42 <fizzie> Vorpal: Well, I mean, I think it was shachaf that told me to make http://zem.fi/esostats/charfreq_h.html when there was discussion about the h-index of yesterday, and it just sort of went from there.
18:36:43 <Vorpal> fizzie, is there number of characters per message?
18:36:55 <Vorpal> fizzie, I want to see if I write longer messages at certain times of the day
18:36:55 <fizzie> Not yet. It's all very preliminary.
18:37:16 <Vorpal> probably not, but it would certainly be an interesting result if that varied widely
18:38:48 <fizzie> Also it should be probably possible to deselect "other" if you just want to see your own numbers and aren't prolific enough for that to be a large fraction.
18:39:08 <elliott> fizzie: How did you pickify the list of people?
18:39:15 <elliott> I like how I am on that list ~50 times.
18:39:25 <elliott> I also like how can you please let that list be resized or make it bigger?
18:40:06 <elliott> I like how that plot shows me being awake roughly 24 hours a day.
18:40:27 <fizzie> elliott: By an impartial method, I forget how exactly. Something about taking some kind of a top-100 list and then grouping duplicates I noticed. (I don't really know all your various names.)
18:40:46 <FreeFull> It shows me as being the most active around 9pm
18:41:02 <Bike> elliott: is that inaccurate
18:41:15 <elliott> Bike: No.
18:41:25 <Bike> elliott: what do i ask monqy
18:41:27 <elliott> fizzie: Why is fax "fax:" on that list?
18:41:45 <fizzie> I probably typoed.
18:42:01 <elliott> fizzie: OK, I'm actually on the list twice.
18:42:06 <elliott> You can merge zuff in.
18:42:16 <shachaf> zomg fancy graphs
18:42:23 <shachaf> fizzie: Can you run this on #haskell?
18:42:45 <fizzie> shachaf: I don't have #haskell logs in my postgres db. I'd need to write an importer first. :/
18:44:01 <fizzie> elliott: I have merged it (and fixed fax), but it'll take a while before I can be bothered rerunning the whole people-activity deal. It's written so that it's cheap to update incrementally, but processing the whole thing takes maybe twenty minutes if I change the list-of-collected-nicks.
18:44:02 <elliott> http://zem.fi/esostats/fig/bots_20y.png
18:44:11 <elliott> fizzie: How come lambdabot-or-maybe-fungot started existing in 2002?
18:44:12 <fungot> elliott: the best way would be to interpret them as it wants, evaluating them at macroexpansion time, i decided i'd make an asian pregnant one. or something.
18:44:17 <elliott> That one-pixel line.
18:44:22 -!- Vorpal has set topic: WHYH HHHHHHELLOHH THEHRE | FOUR SIMULTANEOUS TYPE SYSTEMS IN A SINGLE ROTATION OF THE LAMBDA CUBE | concealed in fold of goat-time lumber | http://codu.org/logs/_esoteric/ | Graphs! http://zem.fi/esostats/index.html.
18:44:29 <Bike> fungot, how do you feel about this?
18:44:30 <fungot> Bike: i just had more pieces. and then, do so
18:44:40 <fizzie> elliott: That's just it defaulting to zero from the beginning of the logs. :/
18:45:09 <Bike> i think the topic is making progressively less sense...
18:45:49 -!- elliott has set topic: STOP STOP STOP STOP STOP http://codu.org/logs/_esoteric/ START AGAIN.
18:45:55 <Vorpal> fizzie, selecting a normalized plot for 2002 looks REALLY weird
18:45:56 <elliott> HTH.
18:46:00 <Vorpal> is there no data for most of it?
18:46:23 <elliott> Well, the channel only existed for, like, a few weeks in 2002.
18:46:38 <Vorpal> yeah hm
18:46:47 <fizzie> Vorpal: Yes, it's really quite sparse.
18:46:59 <fizzie> Vorpal: I suppose it does end up as zeros for most of it.
18:47:15 <Vorpal> fizzie, there are gaps up until 2006 I think you do a single year
18:47:25 <Vorpal> less and less gaps for each year
18:48:23 <fizzie> Vorpal: The gaps go (partially) away if you add some smoothing. I suppose it's just hitting particular two-minute intervals for which the total numbers end up as zero.
18:48:44 <Vorpal> yeah
18:58:39 -!- ogrom has joined.
18:59:17 -!- FreeFull_ has joined.
18:59:41 -!- FreeFull has quit (Read error: Connection reset by peer).
19:00:49 -!- FreeFull_ has changed nick to FreeFull.
19:03:23 -!- Taneb|Away has changed nick to Taneb.
19:10:48 <AnotherTest> elliott seems to be quite active
19:11:09 <AnotherTest> according to these graphs
19:12:57 <Taneb> There are graphs charting individual people?
19:13:50 <AnotherTest> Well it shows elliott in yellow, ais523 in red, oerjan in blue, fizzie in green etc. for me
19:13:52 <Phantom_Hoover> fizzie, why do the graphs go back 20 years...
19:14:29 <AnotherTest> and elliott alone seems to produce about 1/4 of the messages
19:14:52 <elliott> Phantom_Hoover: weren't you here in 1993
19:15:00 <elliott> (1993 was 20 years ago???????????????)
19:15:16 -!- ogrom has quit (Ping timeout: 256 seconds).
19:15:26 <Phantom_Hoover> omg i was only born 2 years after 20 years ago!
19:16:16 <shachaf> wow Phantom_Hoover is old
19:16:24 <Phantom_Hoover> don't be silly
19:16:28 <shachaf> past your ʹ Phantom_Hoover
19:16:30 <shachaf> "sry"
19:16:35 <Phantom_Hoover> i'm at the threshold of old
19:16:46 <Phantom_Hoover> shit i'm only a year younger than Sgeo used to be
19:16:53 <shachaf> threshold
19:16:57 <shachaf> coïncidence?
19:17:00 * Gregor shakes his cane at you.
19:17:01 <lambdabot> Gregor: You have 3 new messages. '/msg lambdabot @messages' to read them.
19:17:04 <Gregor> Join me, oerjan.
19:17:18 <Phantom_Hoover> please Gregor
19:17:28 <Phantom_Hoover> only oerjan and cpressey are proper old
19:17:54 <shachaf> i'm proper old :'(
19:17:57 -!- ais523 has joined.
19:18:03 -!- HackEgo has quit (Remote host closed the connection).
19:18:13 -!- HackEgo has joined.
19:18:44 <Taneb> shachaf, you're stupid fake old
19:18:50 <AnotherTest> Why did the use of "x" boom in 2005?
19:19:03 <AnotherTest> A new esolang with that had an x in it?
19:19:11 <Phantom_Hoover> fizzie seems old but i think he just acts his age
19:19:13 <Taneb> I blame elliott
19:19:25 -!- sebbu has quit (Read error: Connection reset by peer).
19:19:35 <ais523> the word "fuck" has a meaning that depends heavily on context, and arguably doesn't have a meaning in its own right nowadays
19:19:43 <ais523> as a result, can it actually be considered a swearword?
19:19:47 <ais523> ("shit" is in a similar situation)
19:19:53 <Taneb> It's a swearthingy
19:20:19 <AnotherTest> ais523: not if prefixed by "brain" :D?
19:20:22 -!- sebbu has joined.
19:20:29 <ais523> "brainfuck" is its own entity
19:20:38 <olsner> it's a swearword when you use it for swearing? whatever swearword is supposed to mean
19:20:54 <ais523> yeah, that's a good point
19:21:13 <ais523> I guess the definition of a swearword is a word whose actual meaning is irrelevant, you just say it when annoyed or for shock value
19:21:36 -!- ogrom has joined.
19:21:39 <shachaf> Taneb: um no
19:21:44 <shachaf> Taneb: proper
19:22:10 <Taneb> stupid fake
19:22:18 <Taneb> You're really 12
19:22:30 <Phantom_Hoover> ais523, and why doesn't the same apply to 'damn'
19:22:32 <shachaf> i wish
19:22:52 <olsner> ais523: I think that definition makes "fuck" clearly a swearword
19:23:06 <ais523> Phantom_Hoover: when used as a swearword, it does; "damn" without context is without context
19:23:08 <ais523> olsner: yeah, I guess so
19:23:25 <ais523> I think the argument is more that they aren't swearwords unless they're being used as swearwords
19:23:25 <Phantom_Hoover> ais523, so do you interpret 'fuck you' the same as you do 'damn you'.
19:23:30 <shachaf> did you know: voltage is a swearword
19:23:46 <shachaf> people say it for shock value all the time
19:23:47 <ais523> Phantom_Hoover: yeah, but "fuck you" is a compliment rather than an insult if you interpret it that way
19:24:17 <Phantom_Hoover> Er, some people would disagree strongly on that point.
19:24:46 <elliott> nonconsensual sex is not generally agreed to be complimentary
19:24:51 <elliott> or do I completely misunderstand the interpretation here
19:25:13 <shachaf> (THAT WAS A PUN BTW)
19:25:18 <Jafet> Swearing is what happens when I break hackego
19:26:49 <Jafet> We had an impedance mismatch with that pun, try a more current one.
19:27:09 <ais523> elliott: hmm
19:27:17 <ais523> there's nothing about the word "fuck" that implies nonconsensual, though
19:27:33 <ais523> when it's actually being used with its original meaning, it normally refers to consensual sex
19:27:42 <Phantom_Hoover> no it doesn't
19:28:38 <FreeFull> Fuck is actually a pretty ancient word
19:28:39 <ais523> Phantom_Hoover: well I rarely hear it used with its original meaning
19:28:43 <Bike> haha "original meaning"
19:28:49 <elliott> well surely if you interpret "fuck you" hyperliterally like that it is an unsolicited sexual advance
19:28:52 <elliott> just saying!!!!!
19:29:03 <elliott> this interpretation seems pretty hopelessly tortured in general though
19:29:08 <elliott> since it's not even really grammatical
19:29:11 <ais523> indeed
19:29:12 <Phantom_Hoover> ais523, be honest, how often do you hear damn used with its original meaning
19:29:14 <Taneb> It should be "fuck yourself"
19:29:20 <olsner> "It may go back to the Proto-Indo-European *pug-, *puǵ- ("to strike"; source of Latin pūgnus (“fist”) among many others) ..."
19:29:31 <Bike> fuckilistics
19:29:41 -!- sebbu2 has joined.
19:29:44 <Phantom_Hoover> olsner, wouldn't there be cognates then...
19:29:56 <ais523> Phantom_Hoover: hmm
19:29:59 <ais523> it's not zero, but it's quite low
19:29:59 <shachaf> `?hh elliott
19:30:00 -!- sebbu2 has quit (Changing host).
19:30:00 -!- sebbu2 has joined.
19:30:02 <shachaf> Hmm.
19:30:25 <Bike> Phantom_Hoover: like german ficken?
19:30:43 <Bike> oh, that's not actually cognate
19:30:53 <Bike> false fuckbuddies
19:31:00 <elliott> `help
19:31:00 <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/
19:31:07 <elliott> `?hh elliott
19:31:13 <elliott> `run ls bin
19:31:14 <Bike> oh it might be cognate
19:31:18 <elliott> I like how it's broken
19:31:19 <Bike> god i love historical linguistics
19:31:23 <shachaf> elliott: Jafet's fault
19:31:26 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
19:32:02 <elliott> what did Jafet do
19:32:04 <FreeFull> What stops me with flooding $pwd with files until it's full
19:32:17 <Bike> your highly developed sense of ethics
19:32:39 -!- tromp has quit (Remote host closed the connection).
19:32:59 <Phantom_Hoover> FreeFull, it's version controlled.
19:33:03 -!- sebbu has quit (Ping timeout: 245 seconds).
19:34:13 -!- tromp has joined.
19:39:19 <FireFly> On the topic of "to fuck": http://douglemoine.com/english-sentences-without-overt-grammatical-subjects/
19:43:31 -!- noam__ has joined.
19:44:54 <ais523> wow, I think I discovered a new level of YouTube comment stupidity
19:44:56 <ais523> "How on earth did you record video/audio in 2006?"
19:45:52 <FreeFull> .
19:46:21 <Taneb> 2006 was the year when they banned cameras
19:46:53 -!- noam_ has quit (Ping timeout: 255 seconds).
19:47:55 <ais523> I had to double-check the year to make sure it didn't say 1996 (which would have been slightly less stupid)
19:48:16 <Taneb> 1726
19:48:25 <FreeFull> You still could record video and audio in 1996
19:49:06 <ais523> indeed
19:49:17 <ais523> but I could excuse not knowing that, due to the primitive state of the Web at the time
19:49:31 <ais523> and, as a result, the disconnect in hardware knowledge between different people
19:49:55 <shachaf> Maybe you could, in 1996.
19:50:27 <ais523> hmm… in 1986, you could definitely record it, but not digitally
19:50:37 <ais523> you'd need to use film and tape
19:50:45 <AnotherTest> ais523: You just disappointed me. I always though you were a timetraveler :(.
19:50:51 <AnotherTest> *thought
19:51:57 <ais523> btw, a hilarious thought: I saw an advert for the Nokia Lumia (their windows 8 phone thing), and the vast majority of the things advertised in the advert were hardware features, and unrelated to the OS
19:52:30 <AnotherTest> Did you see that in the future, past or present?
19:52:32 <FreeFull> ais523: I saw an advert for the lumia, and went bleck at all parts where you could see windows 8
19:52:51 <ais523> AnotherTest: past, /obviously/
19:53:09 <AnotherTest> ais523: You never know
19:55:20 <ais523> if I never know, why would you ask me?
19:55:45 <AnotherTest> s/you/one && s/know/knows
19:56:29 <AnotherTest> hm I guess s/you(.*)knows/one\1knows would do that
19:57:37 <Vorpal> <ais523> wow, I think I discovered a new level of YouTube comment stupidity <ais523> "How on earth did you record video/audio in 2006?" <-- yeah that is pretty random.
19:57:45 <AnotherTest> Also, assuming you was referring to you, ais523, you might know it in the future
19:57:49 <Vorpal> stupid? maybe. It just seems totally random to me
19:57:51 <AnotherTest> although I guess never includes future
19:58:17 <AnotherTest> Although I should perhaps have said "will never know" to avoid that situation
19:59:34 <AnotherTest> ais523: I think I finally figured out what 523 is referring to
19:59:40 <ais523> AnotherTest: it's a random number!
19:59:52 <ais523> I tell this to anyone who asks, because it's true
19:59:57 <ais523> just people don't ask very oftne
19:59:58 <AnotherTest> Not it's not, it's you keeping track of the instances there exist of yourself!
20:00:02 <ais523> *often
20:00:42 <AnotherTest> This is why you didn't want me to use ais521 - your good prime twin brother -: it was you but in a different time!
20:03:17 -!- zzo38 has joined.
20:05:09 <AnotherTest> seems like ais523 is actually a pointer to ais
20:05:23 <ais523> "ais" is pretty ambiguous by itself
20:06:28 <AnotherTest> Are you actually an Artificial Intelligence System from the 523st century?
20:07:16 <Gregor> AWAY! TO THE FIVE HUNDRED TWENTY THIRST CENTURY!
20:16:51 <Phantom_Hoover> ais523, don't you always tell everyone about how it was your university account name or something
20:17:09 <ais523> Phantom_Hoover: yeah
20:17:11 <Vorpal> hm it seems ssh has an escape char in the form of ~ (try ~?<enter>). I knew of ~.<enter> before to kill a broken ssh connection
20:17:12 <ais523> that's where the random number came from
20:17:17 <Vorpal> but the rest of it was new to me
20:17:22 <ais523> Vorpal: it's <enter>~.
20:17:25 <Vorpal> seems you can add port forwarding on the fly
20:17:33 <Vorpal> and what not
20:17:34 <ais523> and yeah, there are a bunch of other commands there
20:17:35 <Vorpal> ais523, hm is it?
20:17:40 <ais523> <enter>~ is the escape char
20:17:46 <Vorpal> I always had to add a new line at the end to make it work
20:17:48 <ais523> otherwise it'd be triggered by accident too often
20:17:56 <Vorpal> is it because my ~ is a dead key?
20:18:24 <ais523> Vorpal: oh, yeah, probably
20:18:24 <Vorpal> ais523, but yeah I need enter at the start too
20:18:34 <ais523> so ~<enter> is how you type the ~
20:18:51 <Vorpal> ais523, no I mean I go: <enter>~<space>.<enter>
20:18:54 <Vorpal> to make it work
20:19:06 <ais523> oh, huh
20:19:11 <Vorpal> the space to deal with the dead key
20:19:45 <Vorpal> ais523, enter altgr+~ altgr+~ . seems to work too
20:20:04 <Vorpal> ~~ - send the escape character by typing it twice
20:20:05 <Vorpal> hm
20:20:11 <Vorpal> 4 times for me?
20:20:32 <Vorpal> yeah XD
20:21:08 <Vorpal> ~R - Request rekey (SSH protocol 2 only)
20:21:11 <Vorpal> what does that mean
20:21:25 -!- oerjan has joined.
20:23:18 -!- ogrom has quit (Ping timeout: 256 seconds).
20:25:12 <mroman> http://golf.shinh.org/p.rb?shortest+non+occuring+sequence
20:25:20 <mroman> There are two algorithms to solve that problem.
20:25:29 <mroman> One is to generate all possible solution
20:25:34 <mroman> wich is exponential
20:25:48 <mroman> however, not exponential to the length of the input but exponential to the length of the solution.
20:26:04 <mroman> the other algorithm is polynomial to the length of the input.
20:26:15 <mroman> now
20:26:44 <mroman> obviously If you want a longer solution you have to cover more subsequences therefore the length of the input increases
20:27:05 <mroman> probably the length of the input increases exponentially to the length of the solution.
20:27:20 <mroman> which states the question
20:27:27 <mroman> are both algorithms exponential?
20:27:42 <mroman> or simplified
20:28:41 <mroman> given there is an algorithm a which can solve a problen in a^b which is independent of the input size
20:29:32 <mroman> and an algorithm b with O(n^c) which is dependent on the input size and the input size increases probably somewhere near a^b
20:29:40 -!- ogrom has joined.
20:30:16 <Vorpal> mroman, hm interesting point
20:30:35 <mroman> You can generate all possible substrings, sort them and find the first missing
20:30:42 <mroman> which is all in P.
20:31:10 <mroman> but I'm not sure if that is actually slover than the brute force algorithm.
20:31:14 <mroman> *slower
20:33:14 <mroman> esentially
20:33:17 <mroman> as an example
20:33:30 <mroman> aaaaaaaaaaaaaaaaaaaaaaaaaa
20:33:44 <mroman> the brute force algorithm will find a solution in O(1)
20:33:53 <mroman> because the result is a sequence of length 1
20:34:04 -!- ogrom has quit (Ping timeout: 256 seconds).
20:34:15 <oerjan> hm if x is the solution then xa...a is the solution to the similar problem with a fixed length
20:34:18 <mroman> the generate all substring algorithm takes a long time to solve it.
20:34:43 <oerjan> wait no
20:34:52 <oerjan> scratch that
20:35:58 <mroman> Is there a classification for algorithms which do not depend on the size of the input but on the size of the output :D?
20:36:47 <Bike> the size of the output is a function of the input, isn't it
20:36:53 <mroman> well, you have to check your solution against the input
20:36:54 -!- ogrom has joined.
20:36:57 <mroman> so it does depend on the input
20:37:01 <Bike> just not one that's linear in the length of the input, in this case
20:37:16 <mroman> but its linear
20:37:19 <mroman> its probably
20:37:36 <mroman> O(n*a^b) where a is the alphabet size and b the size of the output.
20:38:22 <mroman> Bike: But you don't know the size of the output yet
20:38:37 <mroman> well, b <= n obviously
20:38:58 <Bike> so what, we're talking about the complexity of an algorithm, not finding the output itself!
20:39:36 <Bike> the complexity of euclid's algorithm depends on a shitload of insane stuff that's harder to find than the gcd~
20:40:52 <mroman> I guess one has to calculate how big n has to be to generate a solution of at least size b.
20:41:10 <Vorpal> mroman, what is the average running time of these algorithms though?
20:41:17 -!- Arc_Koen has joined.
20:41:42 <mroman> I don't know.
20:41:56 <Vorpal> hm
20:42:32 <mroman> For a solution of length two you need at least an input of size 3
20:42:35 <mroman> that's all I know :)
20:43:34 <mroman> also
20:44:03 -!- AnotherTest has quit (Quit: Leaving.).
20:44:04 <mroman> well
20:44:05 <mroman> abc
20:44:16 <mroman> It's difficult to calculate
20:44:22 <mroman> because abc covers bc
20:44:26 <mroman> and abc
20:45:13 <mroman> abccaacbabb has aaa as a solution.
20:46:10 <mroman> now you'd have to calculate how many characters you need to add to increase the solution to aaaa ;)
20:46:21 <Vorpal> mroman, wasn't it the shortest solution?
20:46:31 <mroman> (assuming the alphabet is abc)
20:47:06 -!- ogrom has quit (Ping timeout: 256 seconds).
20:47:15 <mroman> Vorpal: yes.
20:47:22 <mroman> there is exactly one solution if that's what you mean.
20:47:52 <mroman> I'm pretty certain that the required input size increases exponential.
20:47:53 <Vorpal> mroman, well there could be several. both bc and ac could be missing from the string for example
20:48:00 <mroman> All empiric data suggests so.
20:48:13 <mroman> but I have no formal proof whatesoever to back it up :)
20:48:39 <Sgeo> :( why aren't J verbs closures?
20:48:54 <Bike> does J even have lexical binding
20:49:54 <Sgeo> It has a form of local variables
20:50:06 <Sgeo> =. inside a verb defines a variable local to that verb
20:50:47 <kmc> 'The tempest prognosticator, also known as the leech barometer, is a 19th-century invention by George Merryweather in which leeches are used in a barometer. The twelve leeches are kept in small bottles inside the device; when they become agitated by an approaching storm they attempt to climb out of the bottles and trigger a small hammer which strikes a bell. The likelihood of a storm is indicated by the number of times the bell is str
20:51:10 <Bike> The likelihood of a storm is indicated by the number of times the bell is str
20:51:37 <mroman> striken?
20:54:25 <Sgeo> Of course J control structures aren't expressions
20:54:28 <Sgeo> *facepalm*
20:55:41 <Bike> hey foul, you already complained about that yesterday!
20:55:54 <Bike> also i thought a large part of j was mapping things over things instead of control flow
20:57:17 <Sgeo> I complained about a different but related thing yesterday
20:57:26 <Bike> convolute with the step function instead of conditionalizing on <, or some shit
20:57:51 <Sgeo> Wouldn't be surprised
21:02:14 -!- monqy has joined.
21:07:25 -!- ogrom has joined.
21:08:19 <oerjan> @tell evincar The haskell solution to type inferencing arbitrarily ordered function definitions is to do an initial dependency graph calculation and infer strongly connected components together in an order such that everything they depend on is inferenced first. so functions in the same strongly connected component can only call each other with one type. you can use explicit type annotations to break this restriction ("polymorphic recursion")
21:08:19 <lambdabot> Consider it noted.
21:15:43 -!- WeThePeople has joined.
21:17:35 -!- carado has quit (Ping timeout: 246 seconds).
21:17:54 -!- carado has joined.
21:22:29 -!- carado has quit (Ping timeout: 246 seconds).
21:35:34 <oerjan> `echo test
21:35:47 <oerjan> `help
21:35:48 <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:36:18 <oerjan> `revert 1871
21:36:36 <oerjan> huh
21:36:42 <oerjan> `help
21:36:43 <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:37:18 <oerjan> weird how `help works
21:37:33 <oerjan> `fetch http://google.org/
21:37:40 <oerjan> oops
21:37:42 <oerjan> `fetch http://google.com/
21:37:49 <oerjan> but nothing else
21:38:03 <kmc> i have a file named /.pulse-cookie :(
21:38:17 <oerjan> Gregor: HackEgo THE BROKEN
21:39:23 <Bike> kmc: well what is it
21:39:34 <kmc> some pulseaudio bullshit
21:39:36 <kmc> either that or a rootkit
21:40:40 <Bike> oh hey i have it too
21:41:24 <Bike> it is an "authentication cookie"
21:42:13 -!- sebbu2 has quit (Ping timeout: 245 seconds).
21:42:42 <oerjan> an authentic cookie
21:48:51 -!- asiekierka has quit (Excess Flood).
21:49:59 -!- asiekierka has joined.
21:53:12 -!- sebbu has joined.
21:53:12 -!- sebbu has quit (Changing host).
21:53:12 -!- sebbu has joined.
22:01:21 -!- Taneb has quit (Quit: Leaving).
22:02:33 <ais523> `run cat `which help`
22:03:34 <Bike> `ls bin
22:03:38 <Bike> hell is anything working
22:03:55 <oerjan> `help is not inside the sandbox, but then neither is `revert or `fetch
22:04:14 <Sgeo> abs =: + ` - @. (< & 0)
22:05:13 <Bike> that seems overcomplicated
22:05:20 <Bike> don't you have the sign function?
22:05:56 <ais523> oerjan: `help /could/ be inside the sandbox, so I was trying to determine whether it was or not
22:05:59 <ais523> ^show help
22:05:59 <fungot> (^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool)S
22:06:01 <Sgeo> There probably is, but I just took that definition from the book
22:06:27 -!- sebbu has quit (Ping timeout: 276 seconds).
22:07:07 <Bike> imo just :sign dup sgn *;
22:07:29 <Sgeo> abs =: * * ]
22:07:35 -!- ogrom has quit (Ping timeout: 256 seconds).
22:07:45 <Bike> er :abs
22:07:52 <Bike> whatever, i don't actually know forth
22:08:45 <Sgeo> Actually, don't need a fork, I can do the other thing
22:08:48 <Sgeo> abs =: * *
22:09:15 <Bike> what's *
22:09:25 <Sgeo> As a monad it's signum
22:09:33 <Sgeo> As a dyad it's multiplication
22:09:37 <Bike> beautiful.
22:11:19 -!- sebbu has joined.
22:11:19 -!- sebbu has quit (Changing host).
22:11:19 -!- sebbu has joined.
22:34:49 <FreeFull> What is it as a quadrad?
22:36:48 <monqy> good question
22:45:41 <zzo38> I have idea of a small header NSF variant, which may be used when storing the music in a SQLite database used with some game, for example. It is fourteen bytes, consisting of the bankswitches, load, init, play. The high four bits of the load address are used to control the VRC6, VRC7, FDS, and Sunsoft-5B expansions (the MMC5 and Namco-163 are always enabled).
22:49:09 <Sgeo> mean =. +/ % #
22:49:16 <Sgeo> How can that be written in pointfree Haskell?
22:49:37 <monqy> what sort of stuff are you allowing
22:49:52 -!- azaq23 has quit (Quit: Leaving.).
22:50:02 <olsner> @pl mean =. +/ % #
22:50:02 <lambdabot> (line 1, column 9):
22:50:02 <lambdabot> unexpected "+"
22:50:02 <lambdabot> expecting space or simple term
22:50:17 <zzo38> If the blob length is exactly twelve bytes, then it is instead a 64-bit rowid of the actual NSF data, followed by the A, X, Y, and flags. X must be zero or one, and this is also used to control NTSC/PAL. (For the format described above, A and X are zero, and the Y and flags are undefined.)
22:50:47 <Sgeo> > sum [1, 2, 3]
22:50:49 <lambdabot> 6
22:51:06 <Sgeo> @pl (\arg -> (sum arg)/(length arg))
22:51:06 <lambdabot> liftM2 (/) sum length
22:51:08 <oerjan> > (/) <$> sum <*> genericLength $ [1,2,3]
22:51:10 <lambdabot> 2.0
22:51:57 <Sgeo> hm
22:53:25 <Bike> :t <$>
22:53:26 <lambdabot> parse error on input `<$>'
22:53:31 <Bike> :t (<$>)
22:53:32 <Sgeo> Not quite like the J version though. +/ is Haskell sum, but it's not primitive, / is sort of like a fold
22:53:32 <lambdabot> Functor f => (a -> b) -> f a -> f b
22:53:50 <Sgeo> (Also the J version has that whole built-in mapping thing going)
22:54:30 <Bike> i imagine sum is defined as foldr (+) or whatever
22:54:40 <Bike> sooooo pretty well the same
22:54:51 <oerjan> foldl (+) 0
22:54:59 <Bike> close enough
22:55:24 <Sgeo> I don't entirely understand how / knows what identity to use
22:55:35 <elliott> operations encode their identity in J
22:55:38 <elliott> also their inverse
22:55:41 <elliott> except when they don't
22:55:51 <monqy> isnt the term something like "obverse"
22:56:01 <elliott> yeah
22:56:07 <elliott> I had to look that up how do you know that
22:56:18 <monqy> memory for silly things like that
22:56:20 <Bike> been starin' at too many coins
22:56:23 <elliott> now I'm looking at the J vocabulary again and remembering how beautiful a language it is
22:58:48 <Sgeo> elliott, is it your fault for getting me into Factor and J with some comment somewhere about how they're your favorite languages but annoyingly ungoogleable?
22:58:58 <elliott> um
22:59:01 <elliott> I don't know
22:59:19 <elliott> monqy: have you written any cute J programs. I love cute J programs
22:59:27 <monqy> i dont think so?
22:59:50 <elliott> :(
22:59:52 <elliott> im disappointed
23:00:03 <monqy> maybe i should write a roguelike in j
23:00:10 <monqy> (haaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaah)
23:00:32 <elliott> imo yes
23:00:46 <elliott> Sgeo: btw there are aliases for the magic numbers foreign uses in the J library
23:00:49 <elliott> fyi
23:01:00 <Sgeo> Oh, cool
23:01:13 <Sgeo> What about other magic numbers, like the Extract Gerund thingy?
23:01:44 <elliott> dunno
23:01:48 <elliott> you can poke around the code and see
23:05:07 <zzo38> Write a roguelike in RogueVM.
23:05:37 <Bike> write a J->RogueVM compiler
23:07:22 <Sgeo> "The result of 0: is a boolean 0 ; previously it was an integer 0 . Likewise 1: ."
23:07:36 <Sgeo> I ... what's the difference? Internal representation?
23:08:32 <zzo38> Bike: You can try if you want to.
23:10:22 <Bike> maybe it has types
23:11:36 <Bike> also when i google "j language dictionary" i get a karen-english dictionary. what does this mean
23:13:10 -!- Bike has quit (Quit: dead).
23:14:47 <oerjan> anna j karenina
23:17:13 -!- Bike has joined.
23:18:54 -!- evincar has joined.
23:30:05 -!- Cryovat has quit (Quit: BOOM).
23:31:54 <kmc> woah people are talking about J
23:32:18 <Sgeo> I blame Bike for reminding me about J.
23:32:36 <Bike> i already denied responsibility
23:32:55 <monqy> it's too late
23:33:23 <Bike> no i did it yesterday
23:33:26 <Bike> opposite of late
23:33:40 <elliott> kmc: I hope you like J!!!
23:33:44 <Sgeo> Actually, it's also a little Gilad Bracha's fault. In a talk about mirrors, he briefly mentioned APL as a language that has a lot of ... metaprogrammingness. APL makes me think J.
23:33:50 <elliott> oerjan: what does it mean that I read that as anna j ketamine
23:33:51 <elliott> am I kmc
23:34:05 <elliott> Sgeo: wow you still listen to things gilad bracha says...
23:35:20 <oerjan> elliott: possibly
23:38:11 <tswett> nooga is someone we know, aren't they?
23:38:24 <monqy> no
23:39:14 <tswett> Looks like yes.
23:41:28 <elliott> who's nooga
23:42:43 <oerjan> no oga here
23:43:02 -!- DHeadshot has joined.
23:55:50 -!- DHeadshot has quit (Read error: Connection reset by peer).
23:55:59 -!- DH____ has joined.
2013-01-28
00:05:12 <fizzie> http://zem.fi/esostats/people_summary.html PLOOOOTS (also beta)
00:10:36 <quintopia> i'm pretty sure my activity level spikes iff interest in bfjoust spikes
00:10:49 <quintopia> but thanks fizzie you're the best
00:14:06 <ais523> quintopia: mine probably falls, as I spend more time thinking BF Joust and less talking on IRC
00:15:01 <quintopia> ais523: your baseline activity level is higher than mine i think
00:15:21 <ais523> yes
00:15:42 <quintopia> yeah definitely
00:16:06 <quintopia> so
00:16:23 <quintopia> bfjoust spikes are the one time i am more activious than you
00:16:41 <quintopia> (activious is now a word)
00:21:05 <Phantom_Hoover> I like the chart for optbot.
00:21:30 <Bike> oh i just realized "ploooots" was supposed to be the plural of "plot"
00:21:37 <Bike> and not a bunch of ploots (what's a ploot)
00:22:32 <elliott> fizzie: I'm still not merged with zuff!!
00:22:57 <elliott> I like how it doesn't say what the colours are
00:23:38 <Phantom_Hoover> fax, j-invariant and soupdragon are all separate too
00:23:46 <fizzie> It's still not recalculated. And the colours are obviously obvious.
00:24:02 <elliott> i don't know what the colours mean !!!
00:24:20 <fizzie> Blue is the overall activity, and red is the selected nick.
00:24:26 <elliott> thanxe
00:24:55 <elliott> why does it show me as not being active in 2007 at all
00:24:58 <monqy> wow elliott has ungodly huge activity
00:25:24 <Phantom_Hoover> so what happened on those two massive 6000+ spikes
00:25:32 <ais523> elliott: did you use the nick "elliott" ever then?
00:25:37 <elliott> monqy: iirc i have more than twice the lines said in #esoteric than the second person......
00:25:41 <ais523> it's likely a failure in nick merging
00:25:44 <elliott> ais523: no but it's meant to be merged and stuff
00:25:56 <fizzie> Phantom_Hoover: Which one of those three would be the "canonical" name?
00:25:57 <ais523> is that when you were using "alise"?
00:26:11 <elliott> 2007 nick was ehird
00:26:12 <elliott> or was it ehird`
00:26:18 <ais523> no, it wasn't
00:26:21 <elliott> it was ehird and then maybe a `
00:26:23 <ais523> "alise" was 2010
00:26:23 <elliott> yes it was
00:26:26 <elliott> oh
00:26:30 <ais523> sorry, context fail
00:26:30 <fizzie> ais523: 'elliott': ['elliott', 'ehird', 'alise', 'tusho', 'aliseiphone', 'ehirdiphone', 'zuff'],
00:26:31 <ais523> not disagreement
00:26:35 <ais523> elliott: aha
00:26:40 <ais523> *fizzie: aha
00:26:43 <elliott> fizzie: well it's still in that menu at least
00:26:47 <elliott> anyway you need ehird` in there SORRY
00:26:47 <ais523> fizzie: 'ehird`' is the nick you're missing
00:26:54 <fizzie> elliott: Yes, it's old datta.
00:26:57 <elliott> also um
00:26:59 <elliott> estoppel
00:27:01 <Phantom_Hoover> <fizzie> Phantom_Hoover: Which one of those three would be the "canonical" name?
00:27:02 <elliott> and a handful of others
00:27:05 <Phantom_Hoover> go with fax, it was first
00:27:07 <ais523> you didn't use estoppel very much
00:27:11 <ais523> fizzie: what list do you have for me?
00:27:15 <elliott> imo leave fax separated so you don't have to deal with the mess of who is fax or not
00:27:24 <monqy> `seen2 estoppel
00:27:38 <fizzie> ais523: It was supposed to remove all trailing non-alphanumerics, but maybe it didn't.
00:27:53 <ais523> but ais523 and ais523_ are different computers!
00:28:07 <ais523> and as a result, may talk about different topics
00:28:09 <monqy> how about alphanumerics in the middle
00:28:18 <ais523> ais523_ is substantially more likely than me to bitch about Java, for instance
00:28:19 <monqy> i mean
00:28:20 <monqy> non-alphanums
00:28:22 <shachaf> You're also missing "shachaf".
00:28:28 <monqy> cf phantom____________________________________hoover
00:28:29 <shachaf> "elliott's gr8st pseudonym"
00:28:48 <fizzie> ais523: For you I just have "ais523" and "ais523\unfoog". I made these by getting a top-100 list of overall activity.
00:28:48 <shachaf> monqy: uve been shachaffed!!
00:28:53 <elliott> monqy: i thought it was a "joek"
00:29:06 <fizzie> monqy: I have _, __ and ___ manually listed for that.
00:29:06 <ais523> fizzie: "scarf", "callforjudgement"
00:29:22 <monqy> fizzie: but think about how phantom____hoover feels
00:29:29 <fizzie> ais523: I see "scarf" ended up on the list, too.
00:29:32 <ais523> also "this", though I don't have it registered
00:29:39 <ais523> and only use it for the purpose of trolling myself
00:30:41 <shachaf> ais523 is a silly thing to do.
00:31:10 * ais523 sort of thing is more legible when it starts "this" not "ais523"
00:34:01 -!- Phantom_Hoover has quit (Remote host closed the connection).
00:54:09 <shachaf> kmc: Are you the "turn in crypto challenges in asm" person?
01:10:17 <kmc> yes
01:41:53 -!- ais523 has quit.
02:29:32 -!- Nisstyre has joined.
02:32:05 -!- Nisstyre_ has quit (Ping timeout: 252 seconds).
02:35:35 -!- Nisstyre has quit (Ping timeout: 255 seconds).
02:36:47 -!- Nisstyre has joined.
02:45:15 <tswett> Wait, I just realized something.
02:45:20 <tswett> Mirrors are Turing-complete, aren't they?
02:45:40 <tswett> Like, you can store an arbitrary amount of accessible information in the position of a beam of light.
02:47:43 <tswett> In particular, if you consider a beam of light to have x and y coordinates (and it's traveling in the z direction), you can use mirrors to perform scaling and translation on x and y, as well as conditionals.
02:48:08 <zzo38> Yes I can understand now how you mean.
02:48:14 <Bike> is this a billiard ball computer?
02:48:40 <tswett> Nope. There's just a single "ball"; it doesn't interact with other moving objects.
02:48:47 -!- copumpkin has quit (Ping timeout: 245 seconds).
02:49:18 -!- copumpkin has joined.
02:49:36 -!- Nisstyre_ has joined.
02:49:45 <tswett> The ball just moves in a constant direction until it hits a mirror, at which point it bounces off and continues moving in the appropriate new direction.
02:50:05 <tswett> If your space is three-dimensional, this configuration is Turing-complete.
02:50:25 -!- evincar has quit (Quit: leaving).
02:51:25 -!- Nisstyre has quit (Ping timeout: 252 seconds).
02:51:28 <tswett> Of course, this wouldn't work in the real world, for many reasons, one of which is that real light diffracts.
02:52:05 <tswett> What if you use an electron instead? I guess electrons also diffract.
02:52:46 <oerjan> all objects diffract, in principle
02:52:54 <Bike> i feel like i should say something about heisenberg but then i'd be pretending to know quantum physics, which i do not
02:53:08 <elliott> Bike: whoa hw man thats so QUNAutm
02:53:12 <elliott> s/$/ /
02:53:26 <tswett> Yeah, I think Heisenberg's principle applies here. A photon does not have one distinct position.
02:53:36 <shachaf> Quantum? I don't even know 'em!
02:54:44 -!- zzo38 has quit (Remote host closed the connection).
02:56:14 -!- Bike_ has joined.
02:57:10 <Sgeo> elliott, why is *: defined when *~ is the same thing?
02:57:28 <Sgeo> (at least monadic *: )
02:58:08 <elliott> does *~ have the inverse that *: does
02:58:20 <elliott> the real answer is that i don't know tho
02:58:26 <elliott> try #jsoftware
02:59:11 -!- Bike has quit (Ping timeout: 245 seconds).
03:02:28 <monqy> *~ is the 'reflexive' of * (~ being the 'reflex' adverb); i can't recall how that interacts with obverses
03:03:46 <monqy> ahh, the obverse of *~ is specially specified to be %:
03:03:57 <monqy> i.e. sqrt i.e. same as the obverse of *:
03:04:19 <kmc> tswett: you've reminded me of the optical computer for solving traveling salesman problem
03:04:45 <kmc> you have a bunch of beamsplitters and you connect them with optical fibers whose lengths correspond to the distances between cities
03:04:53 <kmc> then you use interferometry (somehow) to find the shortest path
03:07:16 <elliott> I like that (somehow)
03:07:30 <Bike_> hm, what's a good academic who does weird-ass computation stuff
03:07:43 <Bike_> i checked for adamatzky doing things like this but he's too busy getting stoned on BZ
03:08:36 <kmc> getting stoned on BZ is a bad idea
03:08:54 <Bike_> no the other BZ
03:09:04 <monqy> the one it's a good idea to get stoned on
03:09:05 <kmc> so not the chemical weapon
03:09:25 <Bike_> no, although i've heard apparently people have tried to use that recreationally...
03:09:30 <Bike_> i mean the clock reaction
03:09:43 <kmc> i don't know what that is
03:10:03 <Bike_> http://en.wikipedia.org/wiki/Belousov-Zhabotinsky_reaction
03:10:15 <Bike_> observe: pretty colors!
03:10:16 <kmc> oh those are neat
03:10:31 <Bike_> http://arxiv.org/abs/1212.1344 so, adamatzky does things like this with 'em
03:10:42 <kmc> http://upload.wikimedia.org/wikipedia/commons/d/d9/The_Belousov-Zhabotinsky_Reaction.gif
03:10:56 <kmc> cool
03:11:41 <Bike_> also a clock reaction is just a reaction that does something periodic, so you could use it as a clock if you wanted your clock to be made of acids.
03:12:00 <Bike_> anyway so not tswett lightmachines
03:12:13 <kmc> oh i heard about this slime mould computer too
03:12:59 -!- DH____ has quit (Read error: Connection reset by peer).
03:13:05 -!- DHeadshot has joined.
03:13:12 <Bike_> oh, there's a journal or something called "unconventional computing", that's more like it!
03:14:09 <kmc> "The denizens of Carlisle, meanwhile, may wonder what objection slime moulds have towards their fine city."
03:14:12 <Bike_> 'Abstract Geometrical Computation 6: A Reversible, Conservative and Rational Based Model for Black Hole Computation' i think i'm going to be distracted
03:16:12 -!- oerjan has quit (Quit: leaving).
03:16:15 -!- Arc_Koen has quit (Quit: Arc_Koen).
03:18:39 <kmc> if you drop a supermassive computer into a rotating black hole while traveling at the speed of light then you meet god and can just ask him to solve your dumb problem
03:22:04 <elliott> `addquote <kmc> if you drop a supermassive computer into a rotating black hole while traveling at the speed of light then you meet god and can just ask him to solve your dumb problem
03:23:56 <elliott> i have hackego withdrawal
03:24:26 <Bike_> kmc: "O father who art in heaven, I really need to win this CTF"
03:27:36 <Bike_> 'Can a Computer be “Pushed” to Perform Faster-Than-Light?' i love how far out these questions are
03:27:55 <Bike_> "Let us assume that Alice, Bob, and Charlie, the three classical people of cryptography are not limited anymore to perform a finite number of computations on real computers, but are limited to α computations and to α bits of memory, where α is a fixed infinite cardinal."
03:27:59 -!- Bike_ has changed nick to Bike.
03:28:57 -!- WeThePeople has quit (Quit: Leaving).
03:29:04 <elliott> lucky them
03:29:26 <Bike> good assumption i think
03:29:53 <Bike> Oh, hey, I think this one is actually vaguely sort of near what tswett was saying.
03:29:56 <Bike> «We propose to “boost” the speed of communication and computation by immersing the computing environment into a medium whose index of refraction is smaller than one, thereby trespassing the speed-of-light barrier.»
03:32:07 <kmc> you can have fairly mundane materials whose index of refraction is less than one
03:32:21 <kmc> because IoR is defined according to the phase velocity
03:32:31 <kmc> but this doesn't imply superluminal transfer of information
03:32:37 <Bike> want the paper?
03:32:41 <kmc> no
03:32:44 <kmc> thanks
03:32:57 <Bike> heh
03:34:48 <shachaf> heegan
03:34:52 <shachaf> how are the monoids today
03:35:32 <kmc> summertime and the monoids are easy
03:36:09 <kmc> i downgraded my old laptop from a SSD to a spinny disk
03:36:21 <shachaf> Why?
03:36:21 <kmc> have to remember not to throw that one at sofas anymore
03:36:28 <kmc> so that i can give the SSD to a friend
03:36:28 <shachaf> To put the SSD elsewhere?
03:36:30 <kmc> yes
03:41:11 -!- Nisstyre_ has quit (Ping timeout: 255 seconds).
03:42:30 -!- Nisstyre has joined.
03:46:58 -!- glogbackup has quit (Remote host closed the connection).
03:51:00 -!- glogbackup has joined.
03:55:35 -!- glogbackup has quit (Ping timeout: 260 seconds).
04:03:21 -!- glogbackup has quit (Remote host closed the connection).
04:14:18 <shachaf> kmc: Did you read _Cat's Cradle_?
04:14:50 <Bike> vonnegut?
04:15:21 <Jafet> Vonnegut time?
04:15:22 -!- glogbackup has quit (Ping timeout: 276 seconds).
04:17:26 -!- WeThePeople has joined.
04:20:36 <kmc> no
04:21:06 <shachaf> You should read it!
04:21:14 <kmc> ok
04:24:45 -!- Nisstyre has quit (Ping timeout: 260 seconds).
04:26:48 -!- Nisstyre has joined.
04:40:34 <shachaf> City on fire! / Rats in the grass / And the lunatics yelling in the streets! / It's the end of the world! Yes!
04:41:01 -!- Nisstyre_ has joined.
04:41:19 <kmc> aren't there always rats
04:41:53 -!- Nisstyre has quit (Disconnected by services).
04:42:01 -!- Nisstyre_ has changed nick to Nisstyre.
04:44:51 <Sgeo> Hmm. J seems like it might be a reasonable language to implement Befunge-98 in
04:46:33 -!- Nisstyre has quit (Ping timeout: 252 seconds).
04:46:36 -!- Nisstyre-laptop has joined.
05:02:02 -!- WeThePeople has quit (Quit: Leaving).
05:14:31 -!- sirdancealot7 has quit (Ping timeout: 276 seconds).
05:15:03 -!- zzo38 has joined.
05:17:19 -!- TeruFSX has quit (Quit: Leaving).
05:27:29 -!- sirdancealot7 has joined.
05:37:44 <shachaf> kmc: By the way, you know ho CoYoneda IORef gives you a "read-only IORef" that can't do any other effects?
05:37:50 <shachaf> As opposed to "IO a"
05:38:15 <shachaf> That can either be a good thing or a bad thing.
05:38:28 <Sgeo> Is APL more readable than J?
05:38:42 <shachaf> And how do they both compare to Clojure?
05:39:12 <Bike> "Is APL more readable than J" should be the PLT version of "How many angels can dance on the head of a pin".
05:40:12 <shachaf> are monoids more lovable than categories
05:40:13 <shachaf> imo yes
05:40:46 <monqy> how long until you get tired of this beaky thing
05:41:13 <shachaf> monqy: how long until you get tired of the "monqy style"
05:41:32 <monqy> what's that
05:41:52 <shachaf> a thing
05:41:53 <shachaf> imo monoids
05:41:54 <shachaf> imonoids
05:45:01 <kmc> monoids mo problems
05:45:51 <shachaf> monoids mo annoyed
05:52:45 -!- quintopia has quit (Ping timeout: 240 seconds).
05:59:37 -!- quintopia has joined.
06:21:59 <kmc> the noid ruins pizzas
06:24:10 <shachaf> I crashed someone's Haskell bot with a GHC type system bug.
06:24:17 <shachaf> By crashed I mean unsafePerformIO-then-segfault
06:24:18 <monqy> congratulations
06:24:29 <shachaf> monqy: thx
06:24:32 <kmc> you should own their computer
06:24:46 <shachaf> Instead of that I told them about -dcore-lint.
06:25:55 <Jafet> chmod +s /usr/bin/ghc
06:25:56 <kmc> 'On January 30, 1989, Kenneth Lamar Noid, a mentally ill customer who thought the ads were a personal attack on him, held two employees of an Atlanta, Georgia, Domino's restaurant hostage for over five hours.'
06:26:07 <Bike> :(
06:26:17 <kmc> -dcore-lint is like a condom for your haskell bot
06:28:08 <kmc> it's pretty easy to go from unsafePerformIO to an arbitrary memory read/write yeah?
06:28:12 <kmc> er
06:28:14 <kmc> unsafeCoerce
06:31:14 <shachaf> I just crashed it again!
06:31:20 <shachaf> This time by defining a custom Typeable instance.
06:31:25 <shachaf> He should probably turn on SafeHaskell
06:31:27 <Bike> Is this with -dcore-lint?
06:31:32 <shachaf> Yes.
06:31:35 <Bike> neat.
06:31:40 <shachaf> But this is a know thing.
06:31:46 <kmc> read :: Word64 -> Word64; word addr = fromJust (unsafeCoerce (addr - 8) :: Maybe Int)
06:31:46 <Bike> A know thing?
06:31:49 <kmc> or something?
06:32:14 <shachaf> Well, you can run arbitrary IO easily.
06:32:21 <kmc> how's that?
06:32:21 <shachaf> But I guess all the Foreign functions might not be in scope.
06:32:29 <kmc> right
06:32:47 <shachaf> IO a = State# RealWord -> (# State# RealWorld, a #)
06:32:50 <kmc> you run IO by unsafeCoercing to something operationally isomorphic to... yeah
06:32:59 <shachaf> So you can cast to () -> () or something.
06:33:06 <kmc> that's tricky though because State# t has a weird STG-type
06:33:10 <shachaf> Right.
06:33:15 <kmc> but it probably works out
06:33:20 <shachaf> I managed to run IO both times so far, but I segfaulted it too.
06:33:29 <shachaf> Or actually illegal-instructioned it.
06:33:33 <kmc> woo
06:33:37 <shachaf> I guess it tried to evaluate the () and jumped to some invalid code.
06:33:54 <kmc> so how would you do a memory write, assuming Foreign stuff isn't in scope?
06:34:01 <shachaf> Hmm.
06:34:20 <shachaf> That seems tricky, actually.
06:34:37 <shachaf> Well, you can probably jump to arbitrary code?
06:34:59 <shachaf> That doesn't necessarily help you that much.
06:35:46 <kmc> does GHC's allocator set page permissions? you might be able to just create a ByteString and then jump into it
06:36:24 <shachaf> I think pages should be nonexecutable by default?
06:36:31 <shachaf> mauke has a "hello world" that works that way.
06:36:37 <shachaf> But it's for 32-bit x86
06:37:20 <kmc> ok
06:37:44 <shachaf> GHC only sets page permissions explicitly for foreign import wrapper, as far as I know.
06:38:41 <kmc> hm I didn't have to do anything with page permissions for http://mainisusuallyafunction.blogspot.com/2010/09/executing-bytestring.html
06:39:01 <shachaf> Huh.
06:39:07 <shachaf> Well, it just allocates bytestrings with malloc.
06:39:47 <shachaf> Huh, it works.
06:40:54 <shachaf> Maybe it has to do with the FFI?
06:41:14 * shachaf straces
06:41:35 <kmc> did you get a PoC executing bytestring using only unsafeCoerce?
06:41:46 <Sgeo> Hmm. Apparently any single-line pointful verb definition can be converted into pointfree
06:41:47 <Sgeo> in J
06:42:00 <Sgeo> Are there expressions that @pl cannot convert in Haskell>
06:42:06 <kmc> can we have a poll to decide what the next Sgeolang is?
06:42:19 <shachaf> No.
06:42:24 <shachaf> It might not be as easy as I said.
06:42:25 <Sgeo> Does J really count as a current Sgeolang?
06:43:10 <pikhq> I vote Sgeolang.
06:43:25 <kmc> shachaf: I guess you would use a second ByteString to build a fake heap object, whose first word points to the code you want to execute
06:44:04 <kmc> then you get the address of that bytestring into a constructor field and force it
06:44:19 <shachaf> kmc: Oh.
06:44:24 <shachaf> I bet the ByteString is allocated statically?
06:44:29 <shachaf> Wait, maybe not.
06:47:42 -!- Nisstyre has joined.
06:49:21 <shachaf> 7ffff6e00000-7ffff6f00000 rwxp 00000000 00:00 0
06:49:26 <shachaf> I guess it does allocate w+x memory
06:49:52 <kmc> good times
06:52:01 <Jafet> rwxp
06:52:11 <kmc> the p is for profit
06:52:13 <Jafet> "Um cool"
06:53:19 <shachaf> Now they turned on SafeHaskell but also left GeneralizedNewtypeDeriving on.
06:53:24 <shachaf> So I can still write unsafeCoerce. :-(
06:53:25 <kmc> :(
06:53:27 <shachaf> SafeHaskell is hard.
06:53:48 <Jafet> You should just root their system and fix it properly.
06:57:34 <Sgeo> whoisthey
06:57:49 <shachaf> I don't see it allocating any w+x memory in strace
06:57:50 <Bike> Beaky.
06:58:13 <kmc> for real? haha
06:58:22 <shachaf> ?
06:58:25 <shachaf> No, this isn't beaky
06:58:27 <kmc> oh
06:58:33 <shachaf> Bike is making things up.
06:58:34 <Bike> It's beaky in my shachaf fanfiction.
06:58:46 <shachaf> Please don't tell me about shachaf fanfiction.
06:58:56 <shachaf> You can write whatever you want, just don't tell me about it.
06:58:58 <Bike> It's titled "Coercion Ain't Easy"
06:59:13 <shachaf> i love monoids
06:59:19 <Bike> You like BDSM, right?
07:04:54 <shachaf> I prefer SDSM.
07:05:39 <Bike> ...is that even legal nowadays?
07:06:04 <shachaf> I like my SDSM blessed greased
07:06:16 <shachaf> I'm sure Jafet can empathize.
07:06:30 <Bike> tch, I bet you use scrolls of genocide too.
07:09:30 <Jafet> shachaf's gaze penetrated through the slits of the balustrade, as the excited crowd of algebra neophytes struggled to grab the professor by any wrinkled limb or lineament they could find. Here, he knew, was a master of the group action.
07:12:49 -!- FreeFull has quit.
07:13:42 <kmc>
07:13:53 <Bike> I think that went well.
07:19:28 <shachaf> kmc: 7fff5a4ea000-7fff5a50b000 rwxp 00000000 00:00 0 [stack]
07:19:41 <shachaf> I don't quite see what's going on. :-(
07:20:21 <shachaf> Maybe it's the ELF file somehow?
07:21:15 <kmc> [stack]
07:21:19 <shachaf> Right.
07:21:27 <shachaf> I doubt it's remapping the stack.
07:21:48 <kmc> yeah the file may set initial permissions for the stack
07:22:06 <shachaf> It's not just the stack, though.
07:22:27 <shachaf> 7eff280e9000-7eff28269000 r-xp 00000000 08:03 1448930 /lib/x86_64-linux-gnu/libc-2.13.so
07:22:35 <shachaf> Er.
07:22:39 <shachaf> That's not w, sorry.
07:22:49 <shachaf> 7eff28f90000-7eff28f91000 rwxp 00020000 08:03 1452451 /lib/x86_64-linux-gnu/ld-2.13.so
07:22:56 <shachaf> 7eff28d68000-7eff28d70000 rwxp 00067000 08:03 658337 /usr/lib/x86_64-linux-gnu/libgmp.so.10.0.5
07:24:44 <shachaf> How do I figure this out from the ELF file?
07:24:48 <shachaf> GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000
07:24:48 <shachaf> 0x0000000000000000 0x0000000000000000 RWE 8
07:26:05 <olsner> it should be documented somewhere, maybe the linker option to set the stack non/executable says how it does it
07:26:52 <shachaf> I'm looking at the flags GHC linked with.
07:28:22 <shachaf> Hmm.
07:28:35 <shachaf> Apparently GHC has some code to mark the stack non-executable.
08:01:22 -!- Nisstyre_ has joined.
08:02:07 -!- Nisstyre has quit (Disconnected by services).
08:02:16 -!- Nisstyre_ has changed nick to Nisstyre.
08:02:44 -!- Nisstyre-laptop has quit (Ping timeout: 240 seconds).
08:06:53 <Sgeo> <Sgeo> ) 0 = 1 o. o. 2 * i. 5
08:06:53 <Sgeo> <jconn> Sgeo: 1 0 0 0 0
08:06:54 <Sgeo> :/
08:10:35 <Sgeo> * for signum actually obeys tolerance rules, hmm
08:10:45 <Sgeo> <Sgeo> ) * 1 o. o. 2 * i. 5
08:10:46 <Sgeo> <jconn> Sgeo: 0 0 0 0 0
08:15:52 -!- Nisstyre has quit (Ping timeout: 276 seconds).
08:24:37 -!- Taneb has joined.
08:29:51 -!- Nisstyre has joined.
08:33:55 -!- Taneb has quit (Quit: Leaving).
09:01:34 -!- zzo38 has quit (Remote host closed the connection).
09:01:38 -!- carado has joined.
09:24:32 -!- carado has quit (Ping timeout: 246 seconds).
09:31:45 -!- epicmonkey has joined.
09:35:29 -!- ais523 has joined.
09:37:25 -!- copumpkin has quit (Ping timeout: 260 seconds).
09:38:50 -!- copumpkin has joined.
09:51:42 -!- ais523 has quit (Ping timeout: 276 seconds).
09:51:54 -!- Bike has quit (Quit: bye).
09:56:04 <Sgeo> `list
09:56:31 <Sgeo> 'list
09:58:36 <Sgeo> HackEgo?
09:58:46 <Sgeo> `cat bin/list
09:58:49 <Sgeo> `quote
09:58:51 <Sgeo> `asjdflasjdfk
10:04:29 <Sgeo> *sigh*
10:04:54 <Sgeo> GREGOR!
10:05:02 -!- glogbackup has quit (Ping timeout: 256 seconds).
10:05:09 <Sgeo> atriq Taneb I forget Fiora someone someonelese
10:12:23 -!- glogbackup has quit (Remote host closed the connection).
10:14:09 <fizzie> You should put that thing in fungot, that's clearly the most stable bot available.
10:14:09 <fungot> fizzie: i mean... what if it gets a 87% grade when i found a solution to the problem
10:15:44 <fizzie> ^def list ul (Taneb atriq Ngevd Fiora nortti Sgeo alot)S
10:15:44 <fungot> Defined.
10:15:52 <fizzie> ^list
10:15:52 <fungot> Taneb atriq Ngevd Fiora nortti Sgeo alot
10:16:02 <Sgeo> ty
10:16:09 <fizzie> ^save
10:16:10 <fungot> OK.
10:21:49 -!- glogbackup has quit (Remote host closed the connection).
10:43:55 -!- DHeadshot has quit (Ping timeout: 260 seconds).
10:55:47 -!- azaq23 has joined.
10:55:56 -!- azaq23 has quit (Max SendQ exceeded).
10:56:27 -!- azaq23 has joined.
11:11:44 -!- monqy has quit (Quit: hello).
11:15:20 -!- glogbackup has joined.
11:20:05 -!- glogbackup has quit (Ping timeout: 260 seconds).
11:23:55 -!- copumpkin has quit (Ping timeout: 244 seconds).
11:24:25 -!- copumpkin has joined.
11:49:37 -!- epicmonkey has quit (Ping timeout: 245 seconds).
11:53:35 -!- Frooxius has quit (Ping timeout: 255 seconds).
12:08:08 -!- DHeadshot has joined.
12:09:11 -!- Phantom_Hoover has joined.
12:12:37 -!- oerjan has joined.
12:15:46 -!- Frooxius has joined.
12:17:06 <oerjan> `echo hi
12:17:42 <shachaf> ^echo ^echo
12:17:42 <fungot> ^echo ^echo
12:17:47 <shachaf> hello oerjan
12:17:48 <shachaf> welcome
12:18:16 <oerjan> good afternoon shachaf
12:18:38 <shachaf> Not hardly!
12:18:40 <shachaf> @localtime
12:18:43 <lambdabot> Local time for shachaf is Mon Jan 28 04:18:40 2013
12:21:03 <oerjan> ha ha you people keep faking that timezone thing
12:22:14 -!- DHeadshot has quit (Ping timeout: 252 seconds).
12:24:30 <fizzie> "^echo ^echo" is the best quine in the fungot-^echo-language.
12:24:30 <fungot> fizzie: you can tell
12:24:48 <shachaf> fungot: hi
12:24:48 <fungot> shachaf: then one could write ( loop-safety on) or ( x ( get-value) block) will expand to the same event at the same time
12:25:51 <shachaf> (DECLAIM '(OPTIMIZE (LOOP-SAFETY ON)))
12:25:55 <oerjan> sadly it's also the _only_ quine, i think.
12:26:11 <fizzie> @localtime fungot
12:26:11 <fungot> fizzie: there are a bazillion definitions per item with no discernable purpose and reside in a different order
12:26:30 <oerjan> x ++ x == "^echo " ++ x doesn't have a lot of solutions
12:26:32 <lambdabot> Local time for fungot is ITS NOT A FAKE
12:26:59 <oerjan> um
12:27:08 <oerjan> * x ++ " " ++ x == "^echo " ++ x doesn't have a lot of solutions
12:27:44 <shachaf> oerjan: Do empty programs count?
12:27:52 <oerjan> ^echo
12:27:53 <fungot>
12:27:55 <oerjan> no.
12:27:59 <shachaf> That's not an empty program.
12:28:01 <shachaf> It's ^echo
12:28:17 <oerjan> shachaf: he said "in the fungot-^echo-language"
12:28:18 <fungot> oerjan: ais523 suggested it x-p you win!!! eheheheeheh trying to find a way to see where one can look at the number of
12:28:46 <shachaf> Do all programs in that language start with ^echo?
12:28:51 <shachaf> In that case I guess it's the only quine.
12:29:08 <fizzie> They all do start with "^echo ".
12:30:08 <shachaf> ^echo
12:30:08 <fungot>
12:30:14 <shachaf> That's not a ^echo-program?
12:32:21 <oerjan> ^show echo
12:32:21 <fungot> >,[.>,]<[<]+32[.>]
12:32:50 <fizzie> Hrm, for some reason I confused ^echo with one of the commands where the space is mandatory.
12:33:39 <oerjan> i think the space is handled by fungot's pre-bf parsing
12:33:39 <fungot> oerjan: remembered. i'll tell riastradh when he/ she
12:34:03 <oerjan> the one on input, that is
12:34:27 <fizzie> Yes, it's only the fixed commands that sometimes check also that there is a space.
12:34:32 <shachaf> i love fungot
12:34:32 <fungot> shachaf: like calories. a
12:34:36 <oerjan> so ^command<return> is equivalent to ^command<space><return>
12:34:36 <shachaf> fungot is so easy
12:34:36 <fungot> shachaf: actually i'll probably change and to and, although it would eventually segfault.
12:35:00 <oerjan> only fungot can make a segfault by changing and to and
12:35:00 <fungot> oerjan: whichever is closer to most module systems, is it
12:36:59 <fizzie> Everyone loves fungot like calories.
12:36:59 <fungot> fizzie: i have to, as the compiler is correct? maybe the implementations of " reverse"
12:37:22 <shachaf> i love fungot like calories. a
12:37:22 <fungot> shachaf: thanks. your new nick? hehe ( sometimes i make too long sentenced to avoid being eaten by a grue.
12:37:31 <shachaf> fungot++
12:37:31 <fungot> shachaf: ( i think)."
13:00:13 -!- epicmonkey has joined.
13:07:25 -!- sebbu has quit (Ping timeout: 260 seconds).
13:22:50 -!- Arc_Koen has joined.
13:33:39 <shachaf> Did elliott take my quote out of the topic?
13:33:44 <shachaf> "it was a good run"
13:34:33 <oerjan> i dunno
13:35:22 <oerjan> unless you mean the lambda cube, in which case yes
13:35:35 <Jafet> Six simultaneous rotations of the lambda tesseract
13:35:46 <shachaf> I should go to sleep.
13:40:40 <fizzie> Food for thought: NaNoWriMo requires 50000 words in order for something to qualify as a novel; W|A says average English word length is 5.1 characters; allowing for some whitespace and punctuation, 6.5*50000 = 325000 characters. Compare this with http://zem.fi/esostats/fig/activity_chars_20year.png -- since mid-2008, the channel seems to average around 1-2.5 novels a week.
13:41:40 <oerjan> the plot is horrendous, though
13:42:17 <fizzie> And the characters are, frankly, stupid and unbelievable.
13:42:29 <oerjan> except for fungot and zzo38, they'll obviously go on to start spinoff series
13:42:29 <fungot> oerjan: wiliki sure looks a lot like the inverse of f(n) a(n,n)? would it run the other schemes will do something with
13:43:35 <fizzie> Also, total characters over all time: 127,714,454 i.e. 393 novels, which again reminds me that I'd like to see the #esoteric bookshelf as a physical thing.
13:44:11 -!- copumpkin has quit (Ping timeout: 252 seconds).
13:44:42 -!- copumpkin has joined.
13:45:31 -!- augur has quit (Remote host closed the connection).
13:56:07 -!- Jafet has quit (Quit: Leaving.).
13:56:34 -!- Jafet has joined.
14:19:04 <elliott> fizzie: is #esoteric bookshelf just printed logs of #esoteric
14:20:17 <fizzie> Yes. Well, not just "printed", but bound to something for which the word "tome" is appropriate.
14:20:43 <fizzie> Possibly also "copied by a cloisterful of monks" as opposed to "printed".
14:22:43 <oerjan> i guess illumination is mandatory as well.
14:23:30 <elliott> fizzie: well here I was considering giving Lulu a bunch of money to make that dream a reality
14:23:33 <elliott> I WON'T BOTHER NOW
14:23:40 <fizzie> http://www.flickr.com/photos/darrellg/6822994478/ I mean something like this maybe?
14:24:49 <elliott> I nominate fizzie to be the monk.
14:25:33 <shachaf> but who would be the monq
14:25:39 <shachaf> btw why am i awake
14:25:42 <shachaf> Good night!
14:25:49 <shachaf> May all your monoids be easy!
14:31:10 -!- boily has joined.
14:45:13 <Jafet> Is the monq monqy?
14:46:27 -!- WeThePeople has joined.
14:47:00 -!- augur has joined.
14:54:02 -!- oerjan has quit (Quit: leaving).
15:18:57 -!- Lumpio- has quit (Ping timeout: 248 seconds).
15:24:35 -!- Taneb has joined.
15:44:15 -!- FreeFull has joined.
16:00:20 -!- glogbackup has joined.
16:02:45 -!- ais523_ has joined.
16:17:11 -!- glogbackup has quit (Remote host closed the connection).
16:44:48 <Phantom_Hoover> "In 2007, Niven, in conjunction with a group of science fiction writers known as SIGMA, led by Pournelle, began advising the U.S. Department of Homeland Security as to future trends affecting terror policy and other topics.[8] One of his suggestions as a member of SIGMA was that hospitals stem financial losses by spreading rumors in Spanish within the Latino community that emergency rooms are killing patients in order to
16:44:48 <Phantom_Hoover> harvest their organs for transplants, in order to reduce illegal immigrants' use of emergency rooms.[9]"
16:44:53 <Phantom_Hoover> larry niven.....................................................
16:45:12 <elliott> Phantom_Hoover: yikes
16:45:30 <Phantom_Hoover> that's another sci-fi author on the crazy list
16:46:55 -!- desty has joined.
16:47:00 <elliott> According to author Michael Moorcock, in 1967 Niven was among those Science Fiction Writers of America members who voiced opposition to the Vietnam War.[5] However, in 1968 Niven's name appeared in a pro-war ad in Galaxy Science Fiction magazine.[6]
16:47:04 <elliott> Niven was an adviser to Ronald Reagan on the creation of the Strategic Defense Initiative anti missile policy, as covered in the BBC documentary Pandora's Box by Adam Curtis.[7]
16:47:11 <elliott> hmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm
16:48:16 <Phantom_Hoover> maybe he got sick of the government asking him to join in with their idiotic initiatives and decided to take the piss
16:48:23 <Phantom_Hoover> (hahahaha)
17:06:17 <pikhq> That sounds like him.
17:10:14 -!- copumpkin has quit (Ping timeout: 240 seconds).
17:10:44 -!- copumpkin has joined.
17:27:03 <Taneb> Wow, I just rage-parted a channel
17:27:05 <Taneb> That's a first
17:27:55 <quintopia> raaaaaaaage
17:28:02 <fizzie> Rage against the channel.
17:28:50 <quintopia> PARTING IN THE NAME OF *riff*
17:29:27 -!- sebbu has joined.
17:30:44 <Taneb> There were two people who differed on opinions regarding GNU very loudly
17:32:46 -!- Taneb has changed nick to Taneb|Away.
17:37:40 <fizzie> http://zem.fi/esostats/charfreq_brainfuck.html it's probably partially BFJoust days?
17:41:49 <quintopia> fizzie: then do a search for "bfjoust" and overlay it
17:45:00 <fizzie> There are so many possible THINGS. But I suppose I'll add a straight-forward keyword-frequency thing similar to those charfreq things. Though I don't know what else than "bfjoust" to include.
17:45:22 <quintopia> that should be enough
17:45:46 <quintopia> case insensitive "bfjoust" should catch just about every day that it was discussed
17:46:13 <fizzie> Yes, but, I mean, maybe there are other things in the world in addition to bfjoust too.
17:46:27 <fizzie> I suppose I can run some kind of a TF-IDF keyword extraction on my dataset, though.
17:50:58 <Phantom_Hoover> fizzie, augur and psygnisfive are the same.
17:51:15 <fizzie> OIC.
17:51:29 <augur> oh hi
17:51:56 <fizzie> I'd rerun the people-statistics bit, but my computar is so noisy when it's doing things. :/
17:52:04 <augur> who was talking about other me?
17:52:24 <fizzie> The other you ended up in my list of "important" people for some plots plots plots.
17:53:14 <quintopia> is the list of important people the set of all people who posted more than x times in this channel?
17:53:32 <fizzie> Yes.
17:53:49 <fizzie> Where 'x' was somewhere between two and three thousand.
17:53:56 <augur> Phantom_Hoover: where did fizzie mention my other username? :|
17:54:06 <Phantom_Hoover> It's in the charts.
17:54:09 <augur> o
17:54:26 <augur> where
17:54:36 <fizzie> http://zem.fi/esostats/ "individual activity charts"
17:55:07 <augur> oookay...
17:55:42 <augur> oic
17:56:01 <fizzie> They will be merged after the next recomputamation.
17:57:23 <augur> ive been pretty inactive in here lately
18:04:38 <boily> meh. I'm not important yet.
18:05:52 -!- sirdancealot7 has quit (Ping timeout: 245 seconds).
18:06:28 <quintopia> boily: then chat more!
18:08:28 <fizzie> boily: You've been made important for the next run. (But you should indeed chat more; your linecount in my logs is just 505.)
18:09:02 -!- sirdancealot7 has joined.
18:09:36 <boily> I need to chat more indeed.
18:09:56 <quintopia> boily: are you france
18:09:56 -!- ais523_ has quit (Quit: Page closed).
18:10:25 <boily> quintopia: nope. still canadaing, even if I think its existence hasn't been yet formalized, let alone proved.
18:10:43 <quintopia> lets all go to canada and chat boily
18:10:43 <boily> I wonder who's the nearest member from me in this channel.
18:10:56 <quintopia> zzo38 is west coast canadia
18:11:09 <quintopia> what province?
18:11:14 <boily> montréal, québec.
18:11:23 <quintopia> hmm. i'm gonna gues sgeo
18:11:29 <boily> east coast US?
18:11:31 <quintopia> sgeo is new york
18:11:38 <Gregor> Indiana
18:11:38 <boily> definitely nearer.
18:11:51 <boily> BC is like 5000 km away from me.
18:12:21 <boily> say, does anyone here have experience with OpenGL ES 2.0?
18:12:57 <quintopia> no. i like esolangs, but that one is just too esoteric
18:13:54 -!- surma has joined.
18:16:21 <surma> Hey guys, I need a language where every combination of <whatever> is a valid and executable program. Does anything come to mind? I was thinking of SUBLEQ (or any OISC for that matter), but I was hoping you guys would know something more abstract
18:18:06 <desty> it's like that in many genetic programming implementations, where everything must be valid and defined (even if meaningless or NOP in most cases) since the code is generated by random process
18:18:40 <desty> so, for example, the PushGP language probably allows any input?
18:19:39 <elliott> boily: your use of the fake letter "é" proves you must be french
18:24:09 -!- Bike has joined.
18:26:32 <fizzie> surma: http://esolangs.org/wiki/Jot is one example. (Every string in [01]* is a valid Jot program.)
18:27:23 <boily> elliott: sincé whén is é a faké léttér?
18:30:19 <surma> desty: Ha, the genetic programming application slipped my mind. Makes a lot of sense to look there.
18:30:22 <surma> Thanks fizzie !
18:33:12 <fizzie> TF-IDF top-16 terms for 2005-03-05: "brainfuck he bf really org than languages possible name tutorial programming hehe ah how bfasm p" ... and for 2005-03-06: "esoapi pesoix easel h will dialect cpressey api up has they level bos o check switch"; well look at that, it actually does sort of hint as to what was the topic of discussion that day. (Disclaimer: IDF computed over a total of three ...
18:33:18 <fizzie> ... days; larger thing now in progress.)
18:34:39 <desty> "brainfuck he bf really org" <- sure it isn't from some S&M chatroom? :P
18:34:46 <boily> serendipitous reddit link: http://www.primaryobjects.com/CMS/Article149.aspx
18:35:34 <elliott> Advantages of Brainf-ck as an AI Programming Language
18:35:40 <elliott> this is certainly something
18:36:20 -!- Taneb|Away has changed nick to Taneb.
18:36:23 <Gregor> http://blog.bitbucket.org/2013/01/28/signup-to-bitbucket-via-google-or-github/ You can now sign in to BitBucket with your GitHub account.
18:36:57 <Bike> why are people so obsessed with self-modifying code -> AI...
18:37:40 <fizzie> Aw dagnabbit, I forgot to filter out initial nick-attributions, this whole output is now just mostly list of people who've been talked to -- http://sprunge.us/iTii -- will have to redo.
18:37:45 <elliott> I see they don't even give any examples of evolving programs to compute a function... just constant output.
18:37:50 <boily> from experience, genetic algos are slow, computation intensive, and they don't work.
18:38:01 <desty> boily: yes, very slow and inefficient
18:38:07 <elliott> fizzie: Might want to ignore lines starting with ! and ` too.
18:38:13 <elliott> Except I guess !bfjoust would be Relevant(tm).
18:38:49 <desty> I wrote a genetic programming engine to try to evolve strings of input to vim (for vimgolf)... it was awful :)
18:39:06 <fizzie> Maybe the command names can stay. But people are boring, I'll get rid of them.
18:39:27 <elliott> "ehird compile cube shit" "sexy ehird bitch" Um, okay.
18:40:01 <fizzie> Hey, that's just what the machine tells me. :p
18:40:25 <kmc> surma: brainfuck and the uncountably many brainfuck derivatives have that property
18:40:47 <kmc> most bytes (or is it characters?) are no-ops
18:40:48 <elliott> kmc: ] is an invalid bf program
18:40:58 <elliott> < too, under most interpretations
18:41:00 <kmc> ok fair enough
18:41:48 <elliott> fizzie: Can you pad every Jot program out to be byte-sized?
18:41:58 <elliott> Or are there hypothetically functions which can only be expressed as Jot programs of a non-integral number of bytes?
18:44:27 <fizzie> I'm not qualified to tell, but I'd hazard a guess you can always at least pad to some multiple of 8.
18:48:32 <fizzie> http://sprunge.us/aBZV <- nick-attribution-filtered tfidf output. Apparently there's still quite a few nicks, possibly since people in fact mention other people also inside their comments.
18:48:45 <fizzie> 2012-12-26's topic: "rape switzerland"
18:55:28 <Taneb> fizzie, does the people one combine Taneb, Ngevd, and atriq?
18:55:45 <coppro> fizzie: how do you feel to have been in this channel for over a decade
18:58:18 <fizzie> Taneb: It does.
18:58:35 <fizzie> coppro: I don't think I really "get" it.
18:59:05 <coppro> get what? this channel?
18:59:10 -!- epicmonkey has quit (Ping timeout: 260 seconds).
18:59:59 -!- desty has left ("Leaving").
19:00:40 <fizzie> The ten years.
19:00:56 <kmc> 'Shipment of 18 human heads found at Chicago's O'Hare airport'
19:01:03 <coppro> fizzie: http://codu.org/logs/_esoteric/2003-01-19.txt
19:01:07 <coppro> that was more than 10 years ago
19:01:26 <Bike> kmc: destined for what?
19:01:46 <kmc> greatness
19:01:49 <elliott> coppro: fizzie has been here since before 2003-01-19.
19:02:07 <coppro> elliott: I know
19:02:11 <coppro> but that's how far back the logs go
19:02:31 <coppro> so I dispute your claim and demand evidence otherwise
19:02:33 <elliott> Actually they go back to http://codu.org/logs/log/_esoteric/2003-01-18. But it's interesting that fizzie's private logs that are in the rsync thing aren't in the web interface.
19:02:52 <elliott> (From 2002.)
19:03:33 <kmc> http://www.borderagencyscotland.com/
19:06:41 -!- AnotherTest has joined.
19:06:45 <AnotherTest> greetings
19:06:54 <coppro> lies
19:09:32 <Taneb> Esolang the movie staring Elijah Wood as Elliott Hird and Viggo Mortensen as rjan Johansen.
19:10:23 <coppro> +1
19:10:34 <Taneb> coppro, who would play you?
19:10:36 <Taneb> Or me?
19:10:40 <coppro> Taneb: Andy Serkis obv
19:10:56 <Taneb> I didn't mean to restrict it to LOTR actors
19:11:03 <coppro> it's all right
19:11:08 <coppro> you can be played by Anne Hathaway
19:11:11 <Taneb> I think I'd be played by Zachary Quinto
19:12:00 <Gregor> fizzie and oerjan are the olde hats.
19:12:24 <elliott> Taneb: sorry but we have to get Dijkstra to play oerjan.
19:12:27 <elliott> It was agreed.
19:12:46 <Taneb> ...isn't he kind of dead?
19:13:00 <elliott> I DON'T CARE
19:13:03 <Gregor> Not only is he kind of dead, he's entirely dead.
19:13:03 <elliott> Use necromancy if you have to!
19:13:19 <boily> I like necromancy. all those shiny zombies :D
19:14:09 <Bike> no need for necromancy, you could just prop up his rotten corpse like a puppet
19:14:25 <Bike> cost effective
19:14:35 <AnotherTest> today is privacy day
19:14:41 <AnotherTest> NSA is watching you
19:15:08 <Taneb> AnotherTest, should I...
19:15:17 <Taneb> should I do a song and dance routine or something?
19:15:21 <Taneb> Is this a talent contest?
19:15:31 <Bike> only if you're prepared to have it uploaded to youtube
19:26:00 <FreeFull> Is there any number argument to genericTake, where an input of an infinite list will produce an infinite list
19:28:03 <kmc> yes
19:28:35 <elliott> (fix Succ)
19:28:38 <kmc> if you define inductive natural numbers then you can define ω which is an infinite number
19:29:03 <elliott> *conatural
19:29:06 <kmc> as elliott said, ω = Succ ω
19:29:08 <kmc> elliott: ;P
19:30:11 <kmc> you could also just define a "numeric" type which is always infinite
19:30:26 <elliott> well then your fromInteger has to lie
19:30:31 <kmc> that's fine
19:30:59 <elliott> not really :P
19:31:07 <kmc> fuck tha police
19:31:11 <Bike> do you need a fromInteger in a Numeric type?
19:31:15 <elliott> @src Num
19:31:15 <lambdabot> class (Eq a, Show a) => Num a where
19:31:15 <lambdabot> (+), (-), (*) :: a -> a -> a
19:31:15 <lambdabot> negate, abs, signum :: a -> a
19:31:15 <lambdabot> fromInteger :: Integer -> a
19:31:20 <elliott> Bike: behold the worst class in the universe
19:31:27 <elliott> Bike: it gets better though
19:31:29 <elliott> @src Real
19:31:29 <lambdabot> class (Num a, Ord a) => Real a where
19:31:29 <lambdabot> toRational :: a -> Rational
19:31:34 <Bike> that's not better
19:31:38 <Bike> that's not better at all D:
19:31:38 <elliott> ponder that for a moment
19:31:59 <Bike> christ is there any good way to make numbers in programming remotely like they are in math
19:32:03 <Bike> "no"
19:32:16 <elliott> abstract algebra is kinda unwieldy to do via typeclasses
19:32:28 <Bike> where's class Group huh
19:32:31 <Bike> where's class Monoid
19:32:35 <Bike> WHERE'S BEAKY
19:32:35 <elliott> @src Monoid
19:32:36 <lambdabot> class Monoid a where
19:32:36 <lambdabot> mempty :: a
19:32:36 <lambdabot> mappend :: a -> a -> a
19:32:36 <lambdabot> mconcat :: [a] -> a
19:32:39 <Bike> oh, there it is
19:32:40 <elliott> they are so easy, even typeclasses can do them
19:32:56 <Bike> still think it's weird that the operation is called "append"
19:33:04 <Bike> also is mconcat really just there for efficiency
19:33:19 <Bike> wait...
19:33:21 <Bike> @src Monad
19:33:22 <lambdabot> class Monad m where
19:33:22 <lambdabot> (>>=) :: forall a b. m a -> (a -> m b) -> m b
19:33:22 <lambdabot> (>>) :: forall a b. m a -> m b -> m b
19:33:22 <lambdabot> return :: a -> m a
19:33:22 <lambdabot> fail :: String -> m a
19:33:28 <kmc> mconcat has a default definition, yeah
19:33:42 <Bike> oh, type classes don't have inheritance or nuthin, do they
19:34:01 <elliott> they have superclasses
19:34:03 <FreeFull> @src Monoid
19:34:04 <lambdabot> class Monoid a where
19:34:04 <lambdabot> mempty :: a
19:34:04 <lambdabot> mappend :: a -> a -> a
19:34:04 <lambdabot> mconcat :: [a] -> a
19:34:14 <Bike> monads aren't monoids!
19:34:18 <Bike> where are the endofunctors
19:34:20 <Bike> is my life a lie?
19:34:28 <kmc> it's all obfuscated
19:34:29 <FreeFull> I think the default definition for mconcat is something like foldr mappend mempty
19:34:36 <Bike> so i would assume
19:35:14 <Bike> @src Group
19:35:14 <lambdabot> Source not found. It can only be attributed to human error.
19:35:18 <Bike> :(
19:35:26 <elliott> Bike: class Category cat => Monoid cat unit product mon where mempty :: unit `cat` mon; mappend :: product mon mon `cat` mon
19:35:33 <elliott> or, with infix syntax that is sadly no longer allowed:
19:35:49 <elliott> class Category (~>) => Monoid (~>) unit (**) mon where mempty :: unit ~> mon; mappend :: (mon ** mon) ~> mon
19:35:55 <kmc> THEY GOT RID OF THAT SYNTAX?!?
19:35:57 <elliott> now if you let (~>) = (->), unit = (), (**) = (,), you get
19:35:58 <kmc> noooooo
19:36:03 <elliott> mempty :: () -> mon; mappend :: (mon, mon) -> mon
19:36:05 <elliott> which is Monoid
19:36:07 <kmc> whyyyyyyyyyyyy
19:36:14 <elliott> if you let f ~> g = (forall a. f a -> g a) (<-- natural transformation)
19:36:16 <elliott> unit = Identity
19:36:24 <elliott> (**) = functor composition i.e. (f ** g) a = f (g a)
19:36:26 <elliott> you get
19:36:31 <elliott> mempty :: Identity a -> mon a
19:36:36 <elliott> mappend :: mon (mon a) -> mon a
19:36:45 <elliott> which is a Monad (return and join respectively), if mon is a Functor!
19:36:55 <elliott> now you actually need to wrap those latter definitions up into data types and stuff to get it work
19:37:03 <elliott> but with the PolyKinds extension you can actually define a generic Monoid in this way
19:37:10 <elliott> kmc: that syntax is now used for actual infix types, rather than type variables
19:37:16 <kmc> sucks
19:37:17 <elliott> kmc: i.e. you can define data a * b = Product a b or whatever
19:37:20 <FreeFull> You know, the full name for football is associative football
19:37:26 <FreeFull> Does that mean football can be a monoid?
19:37:29 <kmc> so close yet so far
19:37:41 <FreeFull> Or a semigroup
19:37:43 <elliott> kmc: not being able to use infix type variables is annoying, but having to prefix infix types with : is arguably worse
19:38:34 <FreeFull> Nevermind, it's actually association football
19:39:52 <Bike> imo football is a magma at best
19:41:21 <kmc> now i'm picturing a football variant with obstacles in the form of holes filled with molten rock
19:43:39 <Bike> i'd watch it
19:44:03 <fizzie> http://zem.fi/esostats/charfreq_brainfuck.html Aw, the word "bfjoust" doesn't correlate all that well with brainfuck characters. (Though that peak in 2009 followed by a longish bump for the rest of the year probably qualifies.) ((Also there are some other terms plotted in the index.))
19:53:13 <Bike> http://docs.python.org/3/c-api/init.html#threads kmc, is this part of why you were complaining about pythong threads?
19:54:46 <kmc> yes the Global Interpreter Lock is one of the problems
19:56:28 <Sgeo> I thought GIL just prevents good parallelism but not concurrency?
19:56:52 <kmc> did anyone say anything to the contrary?
19:57:07 <kmc> that said I don't think there are provisions for good concurrent I/O either
19:57:12 -!- augur has quit (Read error: Connection reset by peer).
19:57:22 <kmc> despite not supporting parallelism, CPython threads are OS threads and will block in individual system calls
19:57:31 <kmc> rather than having something like the GHC IO manager
19:57:36 -!- augur has joined.
19:57:44 * Sgeo personally cares about concurrency more than parallelism
19:57:59 <Sgeo> Although I guess being OS threads means annoying heavyweight threads
19:58:39 <kmc> the heaviness of OS threads is also sometimes overstated
19:58:49 -!- Taneb has changed nick to Taneb|Away.
19:59:01 <kmc> Linux can definitely support a whole lot of threads
19:59:07 <kmc> it depends on things like how much stack you allocate for each
19:59:31 <kmc> oh also some of it is carryover from 32-bit days
19:59:52 <kmc> because even if the actual stack memory is allocated on demand, you need to reserve address space for each stack
20:00:09 <kmc> which can be a problem when you only have 3GB of address space
20:00:16 -!- ogrom has joined.
20:00:36 * Sgeo is using a 32-bit Linux OS although the machine is 64-bit
20:00:41 <Sgeo> 64-bit but only has 2GB memory
20:00:47 <kmc> why 32-bit OS?
20:02:00 <Sgeo> Not sure, installed it 2010 I think. I guess I figured since I don't have enough memory to really make 64-bit relevant and since I had the impression that 64-bit OS would be incompatible with stuff
20:02:43 <kmc> ok well you don't need lots of physical memory to make a 64-bit address space useful
20:03:06 <AnotherTest> Sgeo: you can make most 32bit programs run on 64bit operating systems
20:03:16 <kmc> also the AMD64 architecture has lots of improvements over i386 that are unrelated to the word size change
20:03:43 <kmc> yeah the compatibility story is pretty good these days
20:03:51 <kmc> you can always install a 32-bit userland in a chroot, but it's rarely necessary
20:04:30 <elliott> well also if you only have 2 gigs of ram running a 64 bit OS will reduce your effective RAM
20:04:36 -!- augur has quit (Ping timeout: 245 seconds).
20:04:53 <kmc> because pointers are twice as big?
20:04:54 <kmc> that's true
20:05:16 <elliott> yeah
20:05:17 <kmc> you could run a 64-bit kernel and a mostly-32-bit userland, but i think that's not generally that worthwhile on x86
20:05:19 <elliott> and words in general
20:05:34 <AnotherTest> You could add more RAM!
20:05:35 <kmc> maybe once x32 is mainstream you would run a 64-bit kernel and a mostly-x32 userland
20:05:45 <kmc> elliott: well int is still 32 bits
20:05:56 <elliott> sure
20:06:43 <Sgeo> help I need to get my brain fully functional in less than an hour I didn't get enough sleep since I was reading about J and EVE all night
20:06:48 <kmc> i think having twice as many registers and convenient position-independent code beats the word size increase for many tasks
20:06:54 <Bike> drugs? drugs
20:08:36 -!- epicmonkey has joined.
20:11:14 <boily> functional position-independent drugs?
20:13:06 <kmc> 32 bit architectures may have killed the idea of memory mapped files :(
20:13:22 <kmc> like, how many apps have some ad hoc caching layer where they read stuff from disk and keep it in memory for a while?
20:13:28 <kmc> wouldn't it be great to make the OS do that for you?
20:13:39 <elliott> kmc: something about @
20:14:10 <kmc> i'm not sure the Kids These Days starting as programmers really appreciate what virtual memory can do
20:17:12 * kmc wonders what the mincore() syscall is good for
20:17:32 <AnotherTest> mroman: Nice brainfuck interpreter you got there.
20:17:49 <AnotherTest> very nice.
20:19:10 <mroman> :)
20:19:12 <mroman> thx.
20:19:26 <AnotherTest> It made we write a Collatz program :D
20:19:32 <AnotherTest> *me
20:20:10 <AnotherTest> I sort of like the language because it allows you to write small programs that do quite a lot
20:20:41 <AnotherTest> In that way, it reminds me a little bit of zetaplex (and its variants)
20:26:40 -!- oerjan has joined.
20:28:16 -!- augur has joined.
20:30:44 <tromp> where's the brainfuck interpreter?
20:31:05 <oerjan> <boily> quintopia: nope. still canadaing, even if I think its existence hasn't been yet formalized, let alone proved. <-- someone formalize it, please
20:31:07 <AnotherTest> ".""X"r~"-""\/^^{vvvv}c!!!-.256.%{vvvv}c!sa\/"r~"+""\/^^{vvvv}c!!!+.256.%{vvvv}c! sa\/"r~"[""{"r~"]""}{\/^^{vvvv}c!!!}w!"r~">""+."r~"<""-."r~"X""\/^^{vvvv}c!!!L[+] \/+]\/+]^^3\/.+1RAp^\/+]\/0RA1RA^^-]\/0RA\/"r~"\'\'1 128r@{vv0}m[0"\/.+pse!vvvv<-sh
20:31:10 <AnotherTest> there it is
20:31:46 <tromp> in what language is that?
20:31:52 <AnotherTest> http://esolangs.org/wiki/Burlesque
20:32:12 <tromp> that explains:)
20:32:54 <oerjan> and burlesque it is
20:32:59 <Sgeo> Looks like J.
20:33:08 <Sgeo> (Note: Does not actually look like J)
20:34:02 <boily> not enought punctuation marks to look like J.
20:34:53 <Sgeo> Why is J considered a productive language and Burlesque isn't?
20:35:00 <quintopia> what would constitute a rigorous proof of the existence of canada?
20:35:06 <oerjan> `echo hi
20:35:22 <Sgeo> GREGOR!
20:35:30 <oerjan> Gregor: IS BROKEN
20:35:36 <Gregor> Your face is broken.
20:35:57 <boily> I'd have to submit a solid sample of a chunk of canada to a comittee.
20:36:16 <AnotherTest> what does that look like
20:36:17 <boily> but then, there's always the possibility that I'd fake that sample.
20:36:19 <AnotherTest> a broken face
20:37:01 <boily> therefore, one of you will have to sacrifice him/her/itself to go to canada, and witness its existence.
20:37:19 <tromp> you have to express cancada in Zermelo Fraenkel Set theory
20:37:49 <boily> darn. I feared that I'd have to do that. can't I just handwave it?
20:38:20 <tromp> not sure if you need the axion of choice...
20:38:24 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
20:39:08 <tromp> ZFC would do it; Zermelo Fraenkel with the axion of Canada
20:39:23 <quintopia> perhaps there is a consistent formal theory in which canada does not exist!
20:39:44 <quintopia> in which case the axiom of canada is necessary for a consistent theory that includes canada
20:40:05 -!- Phantom_Hoover has joined.
20:40:20 <quintopia> let's assume it doesn't exist and see what that implies
20:40:27 -!- Taneb|Away has changed nick to Taneb.
20:41:33 <boily> does the non-existence of canada implies provinces and territories don't exist too?
20:42:12 <quintopia> not necessarily. but they will probably be member states of the U.S.
20:42:44 <Gregor> The Yukon: Lone star state of the far northwest.
20:42:46 -!- DHeadshot has joined.
20:42:53 <ogrom> or the united states would be member states of canada, but canada would have some other name
20:43:01 <ogrom> such as japan
20:43:03 <Gregor> Such as "The United States of America"
20:43:08 <Phantom_Hoover> wtf are you people talking about
20:43:17 <Phantom_Hoover> canada?
20:43:37 <Phantom_Hoover> the... nonexistence of canada?
20:43:47 <Bike> the axiomatic independence of canada.
20:43:55 <boily> it's a long-standing open problem.
20:45:42 <oerjan> <elliott> fizzie: Can you pad every Jot program out to be byte-sized? <-- yes, any prefix representing I can be removed, and the article's conversion turns SKS into the 23-bit 11111110001110011111000 (i tried SKK first but that was even length)
20:46:24 <quintopia> why would one want jot to be byte sized? compression?
20:46:52 <oerjan> presumably.
20:47:20 <olsner> hmm, surely someone must have already made a Brainfuck backend for LLVM?
20:47:22 <quintopia> oerjan: so that means you'd have to add 7 bytes to it that do nothing just to make the encoding work sometimes. so wasteful!
20:48:25 <quintopia> better to just have 1 extra byte that says X if only first X bits of the last byte are part of the jot program
20:48:51 <Sgeo> I thought what I'd do was, I'd pretend I was one of those deaf-mutes
20:49:09 <Sgeo> Hmm, got the quote wrong
20:49:23 <quintopia> s/7 bytes/20 bytes/
20:49:24 <Sgeo> ...actually, I'm not entirely sure what the exact quote is
20:52:22 <Sgeo> Maybe I shouldn't have looked up the quote
20:52:30 <Sgeo> Spoilers for GitS really
20:52:49 -!- carado has joined.
20:52:59 -!- AnotherTest has quit (Quit: Leaving.).
20:53:10 <Sgeo> I am so nervous
20:53:12 <boily> it kinda has become a 'it was its sled', seeing that every other cosplayer has had the spinning face once on their head.
20:53:14 <Sgeo> And I didn't eat yet :(
20:53:36 <tromp> oerjan, how can you remove a prefix representing I without changing the meaning?
20:53:41 <Sgeo> boily, well, the logo itself isn't spoilery, but seeing a name associated with it presumably is
20:53:52 <boily> indeed.
20:54:08 <Sgeo> ...even saying "a name" is spoilery, sorry everyone
20:54:20 <Sgeo> (At least I think it's spoilery)
20:54:28 <Sgeo> 6 MINUTES
20:54:33 * Sgeo is going to go briefly insane
20:54:50 <boily> what's in a name? a deaf-mute by any other name would spoiler as much :p
20:55:27 <Sgeo> 5 minutes
20:55:28 <tromp> you can remove 1 followed by a rep of I
20:55:29 <Sgeo> So nervous
20:55:31 <Sgeo> Wish me luck
20:55:40 <Sgeo> Although I don't know if it's really an "interview"
20:56:43 <boily> don't worry. the worst that can happen is... oh, you mentioned interview. anything is permitted.
20:56:57 <oerjan> tromp: no, you can remove the rep of I itself because the semantics of FG depends on the string G but only on the semantics of F, so if F has the same semantics as the empty string (i.e. I) then [FG] = [G]
20:57:06 -!- augur has quit (Remote host closed the connection).
20:57:41 -!- augur has joined.
20:57:59 -!- augur has quit (Read error: Connection reset by peer).
20:58:21 -!- augur has joined.
20:59:47 <tromp> the jot page says that [AB] = 1[A][B]
21:00:07 <oerjan> yes, so what you said is also true
21:00:26 <oerjan> oh hm
21:01:43 <tromp> so code [A] is equivalent to code 1[I][A]
21:02:56 <tromp> and [I] could be [SKK]=1[SK][K] = 11[S][K][K]
21:03:17 <oerjan> tromp: that's not the _definition_ of Jot though
21:04:03 -!- DHeadshot has quit (Ping timeout: 252 seconds).
21:04:04 <tromp> no, it's the implied coding rules from CL to jot
21:04:24 <oerjan> argh http://idiom.ucsd.edu/~barker/Iota/ is a 404 _and_ has been a 404 for as long as wayback has archived it D:
21:06:40 <oerjan> oh hm...
21:06:48 <oerjan> that page was redirected
21:07:17 <tromp> yes, i see you're right too
21:08:57 <tromp> although it seems inconsistent
21:11:06 <tromp> it makes one wonder what is the shortest non empty jot program for identity
21:16:49 <tromp> i think it's 010
21:19:59 <tromp> no wait, it's simply 1
21:21:36 <oerjan> no, 1 is S(KI)
21:22:29 <tromp> isn't 1 ^xy. I (xy) ?
21:22:37 <oerjan> the representations on the article page are restricted to starting with 1, btw, because he wanted to have things give direct binary numbers by concatenation
21:23:12 <Sgeo> If an interviewer keeps saying "interesting" is that a good thing?
21:23:34 <kmc> it depends, that is sometimes just a meaningless filler word
21:23:38 <tromp> it's not good. but it is interesting
21:24:27 <Sgeo> help interviewer wants to see code for one of the projects I mentioned on resume. The code is horribly ugly
21:24:45 <kmc> do you have time to clean it up?
21:24:47 <oerjan> tromp: hm i guess S(KI) = I except that it requires two arguments
21:24:57 <Sgeo> kmc, I didn't think to ask for time to clean it up
21:24:59 <kmc> also what stage is this? phone interview?
21:25:07 <Sgeo> Well, phone conversation
21:25:12 <Sgeo> Not sure if it counts as an interview
21:25:47 <Bike> are you ircing while phone conversing
21:26:21 <Sgeo> No, I'm off phone
21:26:39 <Sgeo> I have IRCed while video chat sexing once
21:26:47 <Sgeo> </tmi>
21:27:06 <Bike> were you ircing here? did you spread cooties in the channel?
21:27:32 <tromp> ok, so 1 = I only with eta equivalence, but 010 = I regardless, right?
21:28:15 <Sgeo> Another channel
21:28:42 * oerjan wonders how that [AB] = 1[A][B] rule can possibly be true
21:28:48 <boily> Sgeo: oh, you're still alive! that's interesting!
21:29:01 <tromp> i was wondering that myself...
21:29:09 <tromp> i just took it for granted
21:29:34 <Sgeo> ....I used bad language in the source code
21:33:03 <tromp> only in the comments?
21:33:04 <boily> public static void longLiveVisualBasicSix() ?
21:33:56 <tromp> fsck(that,sh*t); ?
21:34:04 <Sgeo> tromp, as a variable name for a variable only used in debugging
21:34:29 -!- zzo38 has joined.
21:35:14 <tromp> must be in the later stages of debugging, after frustration mounted
21:37:59 <Bike> wait, is tromp a curse
21:40:00 <boily> Bike: google translate isn't much of a help on that matter, sadly.
21:40:08 <kmc> wow another rails vulnerability: https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/1h2DR63ViGo
21:40:11 <Bike> oh
21:40:23 <Bike> I thought sgeo said ««tromp», as a variable name»
21:40:26 <kmc> 'The JSON Parsing code in Rails 2.3 and 3.0 support multiple parsing backends. One of the backends involves transforming the JSON into YAML"
21:40:45 <Bike> that sounds like a pretty weird way to parse, uh, anything
21:41:54 <ion> kmc: nice
21:43:16 <Sgeo> sent the email
21:43:22 <Sgeo> :/
21:45:29 <Sgeo> I also mentioned some Haskell code I've written, but not sure if it's appropriate to send it along
21:45:33 <Sgeo> (It's about speed dating)
21:45:40 <Bike> pff
21:49:52 <olsner> Sgeo: your job interview was about speed dating?
21:50:22 <Sgeo> The actually not horrifically ugly code I've written last year was about speed dating
21:50:36 <oerjan> tromp: ah mystery solved. the CL -> Jot conversion satisfies a rather stronger property which makes it work, namely [F[A]] = [F][A]
21:51:38 <oerjan> so it's not enough to plug in an arbitrary Jot program in the 1[A][B] rule, it has to also satisfy that
21:52:26 <tromp> yes, i realized that [AB] = 1[A][B] failes for even simple cases like A=B=0
21:53:11 <tromp> and it doesn't help that [] is used in two ways:(
21:53:30 <oerjan> indeed. maybe i should disambiguate them
21:55:01 <tromp> use {} for encoding function
21:55:14 <oerjan> i already did
21:56:22 <tromp> not in [F[A]] = [F][A]
21:56:32 <oerjan> of course
21:58:00 <tromp> i prefer self-delimiting languages :)
21:58:10 <tromp> like iota
21:58:30 <tromp> or BLC :)
21:59:13 <oerjan> article changed
21:59:18 <oerjan> or Unlambda :)
22:01:22 <Sgeo> You know what would be cool? A readable J
22:01:29 <tromp> did anyone write a brainfuck interpreter in Unlambda?
22:02:21 <oerjan> well i didn't, although i've pondered it a bit.
22:02:38 <elliott> j is perfectly readable
22:02:48 <oerjan> it has the usual "needs a complete character table to convert I/O" annoyance
22:03:19 <oerjan> which showed up in my unlambda in unlambda
22:03:47 <boily> elliott: readable, yes. its understandability still remains a completely different matter.
22:04:24 <oerjan> http://oerjan.nvg.org/esoteric/interpreter.unl
22:05:00 * Sgeo just made his first commit in years to PSOX
22:05:21 <Sgeo> http://trac.assembla.com/psox/changeset/98
22:06:06 -!- WeThePeople has quit (Quit: Leaving).
22:06:08 <tromp> to make J more readable, just expand the single letter names according to http://www.jsoftware.com/help/dictionary/vocabul.htm
22:06:45 <tromp> it has 3 operators devoted to taylor series alone:(
22:07:36 <Bike> why is that a :(?
22:07:59 <tromp> actually it has 1 and 2-char operators
22:08:01 <Bike> oh dang they have hypergeometric functions in the base, huh
22:08:02 <boily> tromp: 3 operators for taylor series? that's completely insane! and lovable!
22:08:29 <Bike> "
22:08:31 <Bike> u T. n is the n-term Taylor approximation to the function u . " i love it
22:09:17 <Bike> wow, automatic differentiation too
22:09:51 <Sgeo> Wait, it has automatic differentiation?
22:09:57 <Sgeo> I thought it only had numeric and symbolic
22:10:05 <tromp> the only thing missing is the Kitchen Sink operator
22:10:13 <Sgeo> tromp, that's !:
22:10:27 <Bike> I'm just looking at http://www.jsoftware.com/help/dictionary/ddcapdot.htm
22:10:37 <Bike> only for polynomials and their inverses by default
22:10:38 <Sgeo> (Well, ok, that's Foreign, not Kitchen Sink)
22:10:47 <Sgeo> But it's for all the other stuff like file access
22:10:49 <tromp> i want a domestic kitchen sink
22:11:09 <Bike> er, polynomials plus exp, i guess
22:11:41 <tromp> Evoke Gerund sounds like a powerful spell
22:11:49 <Bike> jesus it has exponential generating functions
22:13:15 <tromp> the big question is: why do many alphabet letter go unused?
22:13:27 <Bike> imo needs more coptic
22:16:34 <oerjan> tromp: hm {SK} = 10 satisfies the conversion property
22:22:01 -!- ogrom has quit (Quit: Left).
22:25:07 <oerjan> ah of course, you can read things like a stack language from the right. 0 pushes S and K, 1 pops two elements combining them into one. when you have one element on the stack, the program you used to get there is a conversion to that element.
22:25:58 <oerjan> 0 -- S K, 10 -- (SK)
22:26:32 -!- SirCmpwn has quit (Excess Flood).
22:26:52 <oerjan> 00 -- S K S K, 11100 -- SKSK = K
22:27:26 <oerjan> 000 -- S K S K S K, 11111000 -- SKSKSK = KSK = S
22:28:11 <oerjan> looked at that way, it's not that mysterious how to find representations.
22:30:39 -!- SirCmpwn has joined.
22:30:39 <oerjan> tromp: oh and it means that {11010} = SK(SK) = I
22:32:04 <oerjan> as a conversion which can be used in the conversion rule
22:34:06 <oerjan> this is probably a context-free language of some sort, similar to parenthesis matching. actually translating 1 = ( and 0 = )) and then adding one more ( to the left turns it into an actual parenthesis matching problem
22:38:34 <oerjan> ok it must be CF since this can be trivially seen to be recognizable with a pushdown automaton
22:45:38 <oerjan> :t genericTake
22:45:39 <lambdabot> Integral i => i -> [a] -> [a]
22:46:52 <oerjan> @src Integral
22:46:52 <lambdabot> class (Real a, Enum a) => Integral a where
22:46:52 <lambdabot> quot, rem, div, mod :: a -> a -> a
22:46:52 <lambdabot> quotRem, divMod :: a -> a -> (a,a)
22:46:52 <lambdabot> toInteger :: a -> Integer
22:47:12 <oerjan> i think Integral is not meant to have members not subsets of Integer
22:47:54 -!- Taneb has quit (Quit: Leaving).
22:48:54 <oerjan> <Bike> monads aren't monoids! <-- alas, kind mismatch
22:49:06 <Bike> weak
22:50:00 <oerjan> you _could_ make all monad value types monoids, but then you wouldn't be able to have any other monoids of form t a without overlappinginstances
22:50:34 <oerjan> oh and of course it would conflict with the instance for [a]
22:52:25 <Sgeo> I really would like this Transcriptic job (if it's telecommute)
22:53:28 <Sgeo> Going to watch some TV to take my mind off of having sent an employer the worst code I have ever written
22:53:55 <Sgeo> And by TV I mean Ghost in the Shell on Hulu
22:53:56 <oerjan> `echo hi
22:54:28 <oerjan> Gregor: STILL BROKKEM
22:55:38 <tromp> oerjan, what is the conversion property expressed with {} ?
22:56:06 <oerjan> [F{A}] = [F](A)
22:56:53 <tromp> so F is a string, and A a combinator?
22:56:57 <oerjan> yes
23:01:04 -!- Lumpio- has joined.
23:03:19 -!- WeThePeople has joined.
23:03:28 <Sgeo> GitS is getting on my nerves
23:03:37 <Bike> why
23:03:50 <Sgeo> "We suspect XYZ" "Do you have any evidence for that?" ... the topic of any reasoning for suspecting XYZ is dropped
23:03:55 <Sgeo> And no one complains
23:04:23 <Lumpio-> They can't waste time for things with no evidence!
23:05:08 <Sgeo> They don't drop XYZ, just the topic of why XYZ is suspected
23:05:49 <boily> "We suspect Canada" "Do you have any evidence for that?" "Not yet."
23:05:53 <tromp> oerjan, now all makes sense:)
23:09:24 -!- ogrom has joined.
23:10:11 -!- carado has quit (Ping timeout: 246 seconds).
23:14:23 <kmc> that sounds like TV news
23:14:50 <kmc> "Are teenagers inhaling bees for a cheap high?" "Well, are they?" "Beats us, but we got you to sit through the last commercial break"
23:17:06 <Phantom_Hoover> haha
23:20:14 <Phantom_Hoover> jesus christ, what is with all these screams outside
23:27:31 <oerjan> it's the beginning of the great edinburgh zombie cataclysm.
23:28:01 <Phantom_Hoover> Pretty loud zombies if I can hear them from here.
23:28:30 <oerjan> that's not the zombies, that's their victims hth
23:28:56 <oerjan> or wait are you implying you're not in edinburgh any longer
23:30:26 <Phantom_Hoover> I'm in England now.
23:30:53 <oerjan> shocking
23:31:35 <Phantom_Hoover> I'm not even in Hexham.
23:31:41 <oerjan> gasp.
23:34:15 <oerjan> oh well i guess it's not zombies then. maybe hooligans?
2013-01-29
00:00:31 -!- boily has quit (Quit: Poulet!).
00:03:38 <elliott> 22:50:00 <oerjan> you _could_ make all monad value types monoids, but then you wouldn't be able to have any other monoids of form t a without overlappinginstances
00:03:51 <elliott> oerjan: um but the idea is to express the monoids-in-the-category-of-endofunctors thing
00:03:57 <elliott> which you can do, with PolyKinds
00:04:14 -!- HackEgo has quit (Remote host closed the connection).
00:04:24 -!- HackEgo has joined.
00:04:26 <Gregor> `echo What is love?
00:04:29 <HackEgo> What is love?
00:04:33 <Gregor> Hm
00:06:06 <oerjan> elliott: OKAY
00:06:12 <oerjan> `echo yay!
00:06:13 <HackEgo> yay!
00:07:01 <Jafet> `echo I'm still broken!
00:07:01 <HackEgo> I'm still broken!
00:07:41 <Gregor> `echo Your MOM is still broken.
00:07:43 <HackEgo> Your MOM is still broken.
00:24:54 <c00kiemon5ter> fungot: define love
00:24:56 <fungot> c00kiemon5ter: what is smerdyakov? :) taken me all night if i actually ever remember to watch introducing python to make something like srfi-49 afaik
00:25:20 <c00kiemon5ter> fungot: define cookie
00:25:21 <fungot> c00kiemon5ter: they gotta teach her how to conjugate verbs
00:25:52 <Bike> that they do
00:25:58 <kmc> 'US senate special election to replace John Kerry will be June 35'
00:27:08 <Phantom_Hoover> why's he being replaced
00:27:17 <kmc> becoming secretary of state
00:27:22 <Bike> offense to the gregorian calendar
00:27:32 <Phantom_Hoover> oh, i thought he died
00:27:41 <kmc> then the photo caption says "June 325" which is April 21, 2014
00:27:50 <Bike> Oh, what's happening to Clinton?
00:27:57 <kmc> stepping down
00:27:59 <Phantom_Hoover> he died
00:28:01 <elliott> she's dying rip
00:28:05 <kmc> nobody's dying
00:28:08 <Bike> Geez, I missed it
00:28:10 <elliott> are you sure
00:28:14 <kmc> except for all of those people you don't know
00:28:14 <Phantom_Hoover> kmc, don't be so insensitive
00:28:16 <elliott> it was my understanding that everyone is dying and hence will eventually die
00:28:29 <Phantom_Hoover> elliott, no nobody's dying right now
00:28:29 <ion> Rip already has a nice color, please don’t dye it.
00:28:29 <kmc> "nobody's dying except the people on the other end of those drone strikes" <--- POLITICAL HUMOR
00:28:36 <Phantom_Hoover> we all stopped dying for a bit
00:28:41 <elliott> kmc: *HUMOUR
00:28:47 <elliott> NATIONALITY-BASED HUMOUR
00:28:50 <ion> kmc: *HUMOURE
00:28:55 <elliott> *HUMER
00:28:57 <kmc> HÜMØR
00:29:03 <elliott> good metal band name
00:29:04 <ion> HUUMORI
00:30:06 <Phantom_Hoover> HUMMER
00:30:21 <oerjan> humøret i dag
00:30:35 <kmc> clinton is taking time off to prepare to run for president, and/or to be old and really tired from being the hardest working SecState in forever
00:30:38 <kmc> nobody is quite sure which
00:31:09 <oerjan> she does look damn old
00:31:09 <Phantom_Hoover> wait
00:31:17 <Phantom_Hoover> don't us presidents alternate in party
00:31:20 <kmc> she would be the oldest first term president except for reagan
00:31:31 <kmc> Phantom_Hoover: often but it's not in the constitution or anything ;P
00:32:17 <oerjan> bush followed reagan, so no.
00:32:25 <kmc> i think she would be too old in 2021 so this is her shot
00:32:56 -!- sebbu has quit (Ping timeout: 276 seconds).
00:33:17 <kmc> also http://jezebel.com/5959154/is-america-ready-for-a-white-male-secretary-of-state
00:34:17 -!- augur has quit (Remote host closed the connection).
00:34:50 -!- augur has joined.
00:35:04 <kmc> http://en.wikipedia.org/wiki/List_of_Presidents_of_the_United_States is conveniently color-coded if you want to see about alternation or not
00:35:41 <Bike> i thought washington was considered a whig, huh
00:35:56 <kmc> a lot of the non-alternation comes from VPs taking over after the previous guy dies or resigns
00:36:15 <kmc> sometimes they subsequently win a term on their own, sometimes not
00:36:16 <Phantom_Hoover> ah, the whigs
00:36:19 <elliott> what i want to know is how do you be the potus without going insane
00:36:22 <elliott> well i guess you just go insane
00:36:37 <Phantom_Hoover> did they eventually just die out because their name was so dumb
00:36:41 <Bike> That's what the election is for, they go insane while finding votes.
00:36:51 <Bike> To streamline things, I mean.
00:36:53 <kmc> elliott: yes
00:37:00 <kmc> elliott: it's a very efficient system
00:37:18 <elliott> clinton running for president would be like... I'm not sure how she is even still alive
00:37:22 <elliott> zombie president
00:37:25 <kmc> stem cells
00:37:31 <kmc> like that episode of south park
00:37:34 <elliott> like how has she not worked herself to death
00:37:37 <Bike> how old is she, hm...
00:37:59 <Bike> ...well, at least she wasn't alive during WWII
00:38:03 -!- Phantom_Hoover has quit (Remote host closed the connection).
00:38:04 <elliott> hmm I guess that might be ingrained sexism because I don't really think the same about obama or whatever who obviously does unreasonable fuckloads of stuff too
00:38:10 <elliott> Bike: haha
00:38:19 <elliott> "it's the little things"
00:38:23 <Bike> well obama was a senator
00:38:30 <kmc> so was clinton
00:38:40 <Bike> yeah, but she's done lots of other stuff
00:38:45 <kmc> yeah
00:38:50 <Bike> is what i meant
00:38:57 <elliott> s/obama/anyone who works a lot/ really
00:39:04 -!- augur has quit (Ping timeout: 244 seconds).
00:39:11 <Bike> for example that whole "secretary" gig
00:39:18 <elliott> wasn't clinton kind of bad when she ran for president last time
00:39:24 <elliott> memories are hard
00:39:28 <Bike> You mean in 2008?
00:39:47 <kmc> her advisors did not seem to have a full grasp of the primary / caucus system
00:39:59 <Bike> does anyone? (I sure don't)
00:40:22 <kmc> most of my friends were pretty pissed at her because we all wanted Obama to get the nomination, but then we pretty much didn't care once that was over
00:40:35 <kmc> Bike: hopefully paid political advisors at the highest level of national politics do
00:40:42 <kmc> ;P
00:40:50 <kmc> anyway, they had a much worse understanding than obama's people
00:41:06 <Bike> personally i can barely grasp the electoral college...
00:41:19 <kmc> i made some decent money day-trading primary election contracts on InTrade
00:42:00 <elliott> kmc: right it is like the other candidate for the same party with the same general policies is satan because they are opposing your preferred candidate :P
00:42:13 <kmc> yeah
00:42:20 <elliott> but then your candidate gets picked and they're a valuable ally in the fight against satan (the other party)
00:42:24 <kmc> their policies were pretty amusingly close really
00:42:40 <kmc> the main difference I guess is that Obama was opposed to the Iraq War early on
00:42:57 <Jafet> Something something Nader something
00:43:03 <kmc> important because 2008 was all about who could be the least like George W. Bush
00:43:13 <Bike> something something ron pauuuuul something
00:43:22 <kmc> i wanna be the very best, like no-one ever was
00:43:26 <kmc> RON PAUL gotta catch em all
00:43:33 <kmc> Ron Paul: apply directly to the forehead
00:43:42 <kmc> ok i'm done
00:43:48 <kmc> L
00:43:48 <kmc> A
00:43:49 <kmc> T
00:43:49 <kmc> E
00:43:50 <kmc> R
00:43:52 <kmc> S
00:43:55 <kmc> *mic drop*
00:44:03 <elliott> what would we do without you kmc
00:44:05 <Bike> i'm sorry
00:48:22 <Sgeo> I am going to eat dinner now rather than later because I did not eat breakfast
00:48:27 <Sgeo> I think I might have food issues
00:49:13 <Bike> wait didn't you already do college, shouldn't you be used to a shitty dietary schedule
00:53:21 <Sgeo> College helped me. There's a sandwich place where I would go buy a sandwich
00:53:33 <Sgeo> When I had school
00:54:01 <olsner> oh, there's an IIS workalike for mod_rewrite, I wonder if it's similar enough that my rewrite stuff works
00:59:35 -!- epicmonkey has quit (Ping timeout: 252 seconds).
01:00:15 -!- ogrom has quit (Quit: Left).
01:06:51 <kmc> http://images.dailykos.com/images/user/3/Barry_Obama_lg.jpg NB: "choom" is hawaiian slang for "smoking the marijuana dope"
01:08:22 <Jafet> "not bad"
01:15:13 <kmc> you should all be saving screenshots of embarassing stuff from your friends' facebook pages, in case one of them ever becomes president
01:15:30 <kmc> either that, or don't do that at all and never log into facebook because it's terrible
01:15:31 <ion> I fail to see the embarrassing in that image.
01:18:05 -!- sebbu has joined.
01:18:06 -!- sebbu has quit (Changing host).
01:18:06 -!- sebbu has joined.
01:20:01 <Lumpio-> oh no presidents that have been normal people once D:
01:20:05 <Bike> uh hello?? drugs??
01:23:48 <ion> bike: I’m sure plenty of presidents have used alcohol, too.
01:24:21 <kmc> but alcohol is a good american drug
01:24:28 <Bike> ion, you're not american, are you.
01:24:52 <Bike> we have all these exciting insane mores that you guys just don't GET, man
01:26:33 <elliott> imo we should circlejerk about this some more
01:26:47 <pikhq> I'd prefer an actual circlejerk.
01:27:40 <Bike> maaaaan
01:28:28 <kmc> hard to do that over IRC
01:28:34 <Jafet> If your friends have any remote chance of becoming president of the united states, you should find better friends
01:29:00 <kmc> oh well, by the time obama leaves office, support for legalization could be close to 2/3
01:29:32 <Bike> huh, really?
01:29:58 <pikhq> Marijuana legalization has been making rather profound progress in the court of public opinion.
01:30:37 -!- augur has joined.
01:32:24 <kmc> http://graphics8.nytimes.com/images/2011/10/19/us/politics/fivethirtyeight-1019-firstpot/fivethirtyeight-1019-firstpot-blog480.png
01:33:08 <kmc> 2/3 might be a stretch but maybe 60%+
01:33:56 <Bike> cool
01:34:45 <kmc> i think [UNINFORMED SPECULATION BY PROGRAMMER ABOUT SOCIAL SCIENCE AHEAD!] there may be a cascade effect with these kind of social norms
01:35:29 <kmc> you're more likely to support legalization if you have a few friends who openly support it and aren't degenerate dope-addled hippies
01:35:46 <elliott> i need more degenerate dope-addled hippie friends
01:35:50 <elliott> kmc: wanna be one
01:35:58 <kmc> i'm a phony :(
01:36:06 <kmc> but yes i will be your friend elliott
01:36:23 <elliott> oh boy
01:36:26 <elliott> I've never had a friend before!!
01:37:09 <kmc> also i love the dip on that graph as the baby boomers get old and start deciding that all the stuff /they/ enjoyed as kids is now scary and wrong when their own kids do it
01:37:13 <kmc> truly, the worst generation
01:38:11 <oerjan> the hypocrates
01:38:16 <oerjan> *-e
01:39:14 <elliott> kmc: almost as bad as every other generation
01:40:22 <kmc> well in the american popular conception of generations, the boomers didn't do anything worthwhile like fight nazis
01:40:27 <kmc> however this might be grossly unfair
01:41:41 <elliott> well ai gree baby boomers are shit
01:41:51 <elliott> but I'm not sure I can extend that to agreeing that not everything else is shit
01:41:56 <kmc> yeah
01:42:20 <kmc> "generations" concept is pretty bullshit
01:42:33 <kmc> every time i see a NYT article about "millenials" i puke a little in my mouth
01:43:02 <Bike> is the cut off date for millenials 2000? or if you're a bit older do you still count as Today's Mixed-Up Teens
01:43:23 <kmc> i think millenials are 20something now
01:43:47 <kmc> stereotypically, unemployed overeducated 20somethings who live with their parents after college
01:44:16 <kmc> current generation is "Generation Z" and they are zombies
01:44:34 <elliott> i'm a zombie
01:44:35 <elliott> sounds accurate
01:44:38 <elliott> do i count as generation z
01:45:27 <Bike> Did they seriously just count up from "Generation X"?
01:45:33 <pikhq> Bike: Yes.
01:46:04 <Bike> god, if you're going to use some bizarre-ass model of human growth at least have cool names for it
01:46:21 <kmc> blame douglas coupland
01:46:25 <elliott> what comes after generation z
01:46:30 <oerjan> ñ
01:46:31 <kmc> nuclear annihilation
01:46:33 <elliott> also isn't douglas coupland an anarchocapitalist
01:46:41 <elliott> that is like the one thing i know about douglas coupland & i don't even know if it's true
01:46:44 <Bike> oh man i am so up for blaming ancaps for things
01:46:49 <elliott> yes
01:46:53 <elliott> good life principles
01:47:56 <Bike> "A specific feature of Coupland's novels is their synthesis of postmodern religion, Web 2.0 technology, human sexuality, and pop culture."
01:48:08 <Bike> "He published his twelfth novel Generation A in 2009." oh /shit/
01:48:25 <elliott> i don't eactually know if he is an anarchocapitalist or bad or whatever
01:48:29 <elliott> my memory is not terribly great
01:48:31 <elliott> except about useless things
01:48:40 <kmc> "It takes place in a near future, in a world in which bees have become extinct."
01:48:40 <Bike> yeah it doesn't look like he is
01:49:18 <Bike> so we're all dead or what
01:49:22 <Bike> http://en.wikipedia.org/wiki/File:Couplandart.jpg this is actually kinda neat
01:49:39 <Bike> though it's kind of weird to sculpt something about that war in 2008?
02:11:41 -!- WeThePeople has quit (Quit: Leaving).
02:19:31 -!- oerjan has quit (Quit: leaving).
02:24:33 <elliott> Bike: what about existential types. comments on a postcard because I am leaving NOW lambdabot messages is @tell
02:25:10 <Bike> @tell elliott i don't know, monqy said to ask you about them? i was wondering what they were for. also this may be some kind of plot
02:25:11 <lambdabot> Consider it noted.
02:28:37 <kmc> @tell elliott. @telliott.
02:28:37 <lambdabot> Consider it noted.
02:33:44 -!- ogrom has joined.
02:35:48 <ion> @telliott
02:35:48 <lambdabot> Unknown command, try @list
02:45:26 -!- DHeadshot has joined.
03:11:03 -!- ogrom has quit (Quit: Left).
03:36:54 <zzo38> SQLite cannot create triggers on virtual tables, and cannot use ALTER TABLE and so on to rename views and triggers.
03:37:31 <shachaf> hi zzo38
03:38:57 <ion> ho38
03:39:03 <zzo38> But it might still be possible to do some of these things using the sqlite_master table.
03:43:45 -!- azaq23 has quit (Quit: Leaving.).
03:45:07 <quintopia> i didnt know azaq23 hung out here also
03:46:18 <zzo38> Such things, as well as ADD COLUMN triggers on views, may be useful if you are making a view to override a table, and want to allow it to be further overridden.
03:55:41 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:55:46 -!- DH____ has joined.
03:58:50 -!- md_5 has quit (Ping timeout: 255 seconds).
03:58:59 <zzo38> I suppose a lot of these things aren't that important and may be a bit difficult to implement, but you really should be allowed to rename a view.
04:00:29 -!- monqy has joined.
04:03:49 -!- md_5 has joined.
04:19:59 <kmc> wow, apparently even if you have perfectly working internet, pidgin will refuse to connect to anything if network-manager thinks you don't have internet
04:21:03 <zzo38> That doesn't make sense, especially if you will want to connect to your own computer.
04:21:24 <pikhq> Why does Pidgin even know about network-manager?
04:22:17 <Sgeo> I remember having problems of some kind that were fixed by switching network managers
04:22:31 <Sgeo> I think it wasn't Pidgin related though. I was having connection trouble period
04:22:38 <Sgeo> Using a different network manager fixed it
04:23:26 <kmc> pikhq: beats me
04:23:36 <kmc> probably so that it can do clever things like reconnect when you switch wifi access points
04:25:44 -!- Arc_Koen has quit (Quit: Arc_Koen).
04:31:21 -!- monqy has quit (Quit: hello).
04:35:58 <kmc> also if the rfkill switch for the PCIe WiFi card is enabled, then network-manager refuses to touch the USB WiFi card even though the linux rfkill subsystem says it's fine
04:36:23 <kmc> which is bad news because on this system the PCIe rfkill switch is stuck on, which is why the USB WiFi in the first place ;P
04:37:16 <shachaf> Not using network-manager sounds like a good solution.
04:38:07 <kmc> yeah
04:39:35 -!- sirdancealot7 has quit (Ping timeout: 252 seconds).
04:40:41 <kmc> not to be all 90s Linux Guy but this shit is just broken, time and time again
04:41:01 <Bike> doesn't complaining about things in ubuntu make you 90s Linux Guy by default
04:41:28 <kmc> actually this is debian :/
04:41:40 <Bike> it's all the same shit
04:41:59 <shachaf> network-manager is always broken.
04:42:01 <kmc> of course the flip side is that now the user of this system (not me) has to learn about ifupdown and wpa_supplicant, which definitely are less friendly to casual users than nm-applet
04:42:20 <Bike> oh i remember giving up on learning wpa_supplicant once
04:42:20 <kmc> but it's not a big deal for someone who's comfortable with the command line
04:42:53 <shachaf> kmc: What about wicd?
04:42:56 <shachaf> I heard it was OK once.
04:43:00 <kmc> i didn't try it
04:43:02 <Bike> i use wicd, it's ok
04:43:12 <Bike> takes forever for the curses interface to boot up for what i imagine are stupid reasons
04:43:34 <Bike> the dbus stuff is kinda nice though.
04:43:56 <shachaf> monoids are kinda nice imo
04:44:30 <kmc> my friend said monoids make you impotent
04:44:37 <kmc> i don't believe him but, please prepare a 3-page rebuttal
04:45:02 <Bike> shachaf do you remember that time i looked up monoids and found a groups-but-less-so-but-still-not-monoids formalism used in describing concurrency?
04:45:13 <Bike> you should use those for a network manager gizmo.
04:45:18 <Bike> imo.
04:45:29 <shachaf> Bike: No.
04:45:54 <Bike> Wait, what am I thinking, they're monoids but less so, rather than groups but less so.
04:45:59 <Bike> So probably easier, right?
04:46:06 <shachaf> or harder????????
04:46:15 <shachaf> imo let's just stick with monoids
04:46:19 <shachaf> we understand them
04:46:23 <shachaf> we love them
04:46:27 <shachaf> we know how easy they are
04:46:31 <Bike> It's commutative "sometimes"!!
04:46:41 <shachaf> Associative?
04:46:51 <Bike> Always, shachaf. Always.
04:47:21 <Bike> http://en.wikipedia.org/wiki/Monoid#Partially_commutative_monoid good description imo
04:47:35 <shachaf> Oh.
04:47:39 <shachaf> That's more than a monoid, then.
04:47:54 <Bike> Even easier!
04:48:10 <shachaf> imo nothing is easier than monoids
04:48:33 <Bike> but i like commutativity :(
04:49:56 <kmc> i propose we give shachaf the old Ludovico treatment, where the film is just beaky quotes over and over
04:51:35 <shachaf> kmc: beaky gave me that treatment long enough
04:51:40 <shachaf> I used to be very annoyed by beaky
04:51:46 <shachaf> Eventually I flipped.
04:52:14 <Bike> Is he some kind of criminal mastermind?
04:52:21 <Bike> He's corrupted you...
04:53:34 <shachaf> i have joined the cult of beaky
04:53:47 <shachaf> it was easy so easy
04:53:50 <shachaf> i love it
04:54:00 * Bike backs away slowly, forming the sign of the cross
04:54:43 <kmc> shachaf is cured all right
04:55:34 <Sgeo> I'm addicted to reading about EVE
04:55:44 <kmc> EVE is the new Sgeolang
04:56:25 <Bike> Does EVE have a scripting language? It should have a scripting language based on the stock market.
04:57:07 <shachaf> <kmc> ah, i do love cargo cult technical analysis
04:57:09 <shachaf> it is so easy
04:57:38 <Bike> When's that quoted from?
04:57:57 -!- WeThePeople has joined.
04:58:05 <shachaf> the past
04:58:13 <Bike> Whoa.
04:58:28 <shachaf> I was looking for a thing kmc said once but I guess it must've been in -blah
04:58:52 <shachaf> <kmc> i `love` infix
04:59:16 <shachaf> Wow, this is like reading beaky logs.
04:59:17 <Bike> not bad
04:59:24 <shachaf> i love (===)
04:59:30 <shachaf> i love counterexamples :)
04:59:34 <shachaf> i love <(...) redirection
04:59:43 <shachaf> i love lightweight threads
04:59:45 <Bike> kmc.........
04:59:55 * shachaf stops
05:00:05 <shachaf> I guess we've uncovered beaky's secret identity.
05:00:19 <shachaf> Or maybe that's beaky's non-secret identity.
05:00:35 <Bike> I'm going to have to burn down this whole channel to remove the taint.
05:06:12 <Sgeo> i love burning irc channels
05:12:33 -!- Bike has quit (Ping timeout: 256 seconds).
05:14:17 -!- Bike has joined.
05:19:49 -!- RodgerTheGreat has joined.
05:20:18 <RodgerTheGreat> howdy folks
05:20:23 <RodgerTheGreat> it's been a while
05:20:36 <shachaf> `wehlcohme RodgerTheGreat
05:20:38 <HackEgo> RohdgehrThehGreaht: Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
05:20:57 <RodgerTheGreat> hilarious
05:24:20 <Sgeo> Hi RodgerTheGreat
05:24:29 <RodgerTheGreat> how's it going, Sgeo?
05:24:55 <Sgeo> Good. I have been paying attention in another channel where you happen to be
05:25:03 <Sgeo> There is no non-weird way to phrase that, is there
05:25:41 <RodgerTheGreat> well I mean what's not to like about concatenative languages amirite
05:26:17 <Sgeo> stack shuffling
05:26:26 <RodgerTheGreat> ::
05:26:56 <Sgeo> This kills the space=composition
05:27:12 <RodgerTheGreat> I used to hang out in this channel a few years ago and it just occurred to me that the only reason I stopped was because I was too lazy to log into freenode in addition to the other server I frequent. Except now I'm on freenode all the time too.
05:27:47 <RodgerTheGreat> alternate answer to stack shuffling: factor better
05:29:05 <RodgerTheGreat> it's not even that hard to write stack code
05:29:13 <RodgerTheGreat> I think I've written like 600 lines of forth today
05:29:18 <RodgerTheGreat> naturally that means it's crap
05:29:22 <RodgerTheGreat> but it does work
05:30:10 <RodgerTheGreat> it is surprising how often my code does work
05:30:34 <Bike> Maybe random Forth programs have a better chance of working than random Clojure programs.
05:31:07 <RodgerTheGreat> at the very least I can say that random strings have a better chance of being valid forth programs than valid clojure programs
05:31:54 <Sgeo> Creatures SVRules was designed with that in mind I think
05:32:15 <Sgeo> A programming language where random mutations shouldn't cause syntax errors
05:33:04 <Sgeo> http://creatureswiki.net/wiki/Brain#A_note_from_the_programmer
05:33:13 <RodgerTheGreat> yeah, I just found that page
05:33:34 <Bike> Are there any esolangs on the wiki based off of DNA transcription?
05:34:26 <Bike> I guess you need all the proteins and general systemic systemitude to get "the full unbrittle experience"
05:34:39 <RodgerTheGreat> well there are quite a few fungeoids which might be suitable
05:34:55 <Bike> Suitable for what?
05:35:11 <RodgerTheGreat> for being evolved via random mutation without utterly exploding
05:35:31 <RodgerTheGreat> at least not *always* utterly exploding
05:35:31 <Bike> Oh.
05:36:09 <Bike> Sgeo: An assemblyish language doesn't seem like the best way to do that, but it's way better I guess. And apparently worked.
05:36:25 <RodgerTheGreat> I think it would be nice to have a graphical hill-climbing demo generating piet programs
05:36:44 <Sgeo> Later Creatures engines don't seem to allow for brain mutations :(
05:37:17 <Sgeo> Once made a genome where I set the brain genes to be allowed to mutate... the brain never mutated... wait, those are the genes, not the SVRules on the genes that I was looking at mutationwise
05:38:21 <RodgerTheGreat> so if you had brain mutations what are the odds that you end up with a norn who just spins around in a circle until he dies or something like that
05:38:34 <RodgerTheGreat> or is incapable of learning the word for food
05:38:57 <Bike> Well they're still based on neurons aren't they? Shitloads of redundancy.
05:39:08 <Sgeo> I don't think vocab stuff is stored in the brain as such
05:39:41 <Bike> So you'd get a norn that just spun around in a circle on alternate tuesdays.
05:39:42 <Sgeo> It's easy to modify the brain to, say, make them blind, or make them killing machines enslaved by a dendrite in their brain that, no matter what they want to do, forces them to "hit norn"
05:40:01 <Sgeo> Don't know the chance of a random mutation doing that though
05:40:14 <RodgerTheGreat> Sgeo: I'm torn between thinking that's terrible and thinking that's fucking great
05:41:02 <Sgeo> I've done it. Watched two of them fight. Often one would be terrified but they couldn't run away.
05:41:14 <Bike> Fun game, huh.
05:41:25 <RodgerTheGreat> this is some doctor moreau shit right here
05:42:07 <RodgerTheGreat> arguably much darker than the way people generally play The Sims, because at least in that case you aren't prying open their skulls and rewiring their brains
05:42:14 <Sgeo> Also fun: Trying to make them produce ATP exponentially and seeing how much ATP Decoupler it now takes to kill them
05:42:25 <RodgerTheGreat> ahahaha
05:42:32 <Bike> What the hell, man.
05:42:44 <Sgeo> Lemme see if I still have a pic
05:43:13 <RodgerTheGreat> it simply never occurred to me to try these things
05:43:30 <Sgeo> RodgerTheGreat, you're a Creatures fan?
05:43:46 <RodgerTheGreat> I played Creatures 2 a fair bit many years ago
05:44:10 * Sgeo is C3/DS focused
05:44:17 <Sgeo> Never tried the other games
05:45:50 <RodgerTheGreat> have you tried using these surgically-altered supersoldier norns to kill grendels?
05:46:09 <Sgeo> http://i.imgur.com/CcRPqzy.png
05:47:11 <Sgeo> I don't know if the latest versions I have lying around are set to hit all creatures or just norns
05:47:14 <Sgeo> I think all creatures
05:47:36 <Sgeo> I also made them stronger (in terms of being less vulnerable), not sure if they're perfect though
05:47:44 <Sgeo> So they should be able to defeat grendels
05:47:59 <RodgerTheGreat> can you make them incapable of feeling pain
05:48:42 <Sgeo> Yes, although I'm not sure whether trying to keep the chemical at 0 is sufficient, or if I'd need to clear the relevant neuron before the brain processes, or what
05:49:08 <Sgeo> But why would I want to do that? It's not like the brain is going to process pain significantly differently from, say, severe boredom
05:49:28 <Sgeo> Arguably pain feels better than boredom, because pain and fear cause the other drives to go down
05:49:46 <RodgerTheGreat> hunh
05:50:23 <RodgerTheGreat> do they just curl up in a ball if you wire them to always be in pain, then?
05:50:36 <Sgeo> They make the "ow" sound repeatedly
05:50:40 <Sgeo> And have a sad look on their face
05:50:46 <RodgerTheGreat> man
05:51:13 -!- Sgeo has changed nick to Antinorn.
05:51:19 <Antinorn> (Note: Not the real AntiNorn)
05:51:33 <Bike> Are there sim games that don't bring out the Milgram in all of us
05:51:47 <RodgerTheGreat> I think that when brain-uploading becomes feasible at some point in the distant future there are going to be some absolutely monstrous games made as a result
05:52:13 <Antinorn> People have made death threats to norn torturers
05:52:21 <RodgerTheGreat> I believe it
05:52:32 <RodgerTheGreat> they are cute and good at eliciting empathetic responses in humans
05:52:54 <RodgerTheGreat> presumably on some level to discourage players from torturing them to death
05:53:27 <Antinorn> Which do you feel would cause more of a response: Commands to cause norns to make sounds like they're miserable and in pain but don't actually feel it, or commands to cause pain in the norns that doesn't get expressed outwardly?
05:54:21 <Antinorn> Breed I made once: The badniks. (Took name suggestion from someone). Basically a norn in a toy robot body
05:54:39 <Antinorn> They can't eat or play with toys, for all the world they are a toy, but their brain is still active, suffering
05:55:10 <pikhq> ... Jebus.
05:55:11 <RodgerTheGreat> Antinorn: maybe your username should be "AM"
05:55:33 <Antinorn> I don't get it?
05:55:58 <RodgerTheGreat> http://en.wikipedia.org/wiki/I_Have_No_Mouth,_and_I_Must_Scream
05:57:44 <Bike> Seriously though, what the hell.
05:57:54 <Bike> Did you pick the wings off of flies?
05:59:51 <Antinorn> Their brains are very simple, I find it unlikely that there's actually a conscious experience
06:00:29 <Antinorn> Although admittedly I am uncertain as to what sort of programming it would take before there's a real moral question
06:00:35 <Bike> I still don't pick the wings off of flies.
06:00:48 <Antinorn> I'm talking about norn brains, not fly brains
06:01:04 <Bike> You think flies are conscious?
06:01:06 <RodgerTheGreat> fly brains are admittedly many orders of magnitude more complex than norn brains
06:03:18 -!- monqy has joined.
06:03:39 <Antinorn> Hi monqy. The entire channel seems to think I'm a sociopath.
06:03:50 <monqy> hi
06:04:01 <Bike> Do you torture ancient Chinese friendship monqys?
06:04:15 <monqy> not to my knowledge
06:04:16 <Bike> I think a Han emperor shot for immortality that way.
06:04:20 <RodgerTheGreat> I'm not really taking a stance either way
06:05:51 <Antinorn> I've done good things to norns
06:06:06 <RodgerTheGreat> feel free to provide examples
06:06:16 <Antinorn> Wrote an agent that stops them from using the Holistic Learning Machine more than once, which is good because they tend to get addicted
06:06:50 <Antinorn> http://exploringtheark.livejournal.com/2840.html
06:06:54 <Antinorn> (Search for Sgeo)
06:07:46 <Bike> I think the Xia dynasty is more interesting than the Han though.
06:08:06 <Antinorn> I've made norns incapable of hitting norns, and norns incapable of hitting any creature
06:08:11 <Bike> I should probably know more about Creatures. My friends played it when I was a kid and it's all very noncognitivistish AI.
06:08:35 <Antinorn> It's not too late to start playing (it is too late to get an account)
06:08:40 <Bike> Doesn't one of the guys behind it have a reasonably high-traffic blog? I think I remember reading one of his entries about today's mixed-up teens.
06:08:44 <Bike> What systems is it for?
06:08:48 <Bike> And why would I need an account.
06:08:53 <RodgerTheGreat> Antinorn: does the process to make them abhor violence involve classical music and eyedrops?
06:09:10 <Antinorn> http://creaturesdockingstation.com/
06:09:13 <pikhq> RodgerTheGreat: ^5
06:09:15 <Bike> Two independent clockwork references in one night! Whoa, man.
06:09:39 -!- aloril has quit (Ping timeout: 252 seconds).
06:09:54 <Antinorn> You'd need an account to let norns travel the warp: That is, sending norns to others, receiving them, or making portals that let norns choose to leave for other worlds on their own
06:10:08 <Bike> Antinorn: Oh, cool link, thanks.
06:10:13 <Antinorn> yw
06:10:15 -!- Antinorn has changed nick to Sgeo.
06:10:46 <pikhq> RodgerTheGreat: Also, welcome back to the magical land of #esoteric. Some people no doubt missed you. :P
06:11:07 <RodgerTheGreat> I suppose that is vaguely possible
06:11:09 <Sgeo> Bike, you'll need the DS Offline Option (which is linked on the page)
06:11:38 -!- noam__ has quit (Read error: Connection reset by peer).
06:12:01 -!- noam__ has joined.
06:12:04 <Bike> Oh boy, I love applying patches.
06:12:34 <pikhq> RodgerTheGreat: Don't know if I've kept you updated on the sheer madness that Egobot has become.
06:12:41 <pikhq> Well, more to the point, HackEgo.
06:12:52 <Sgeo> It's really simple, it's just putting the files in the correct directories
06:12:53 <RodgerTheGreat> it said hello earlier
06:13:07 <Sgeo> Although the readme seems to assume you're on Windows
06:13:16 <RodgerTheGreat> Sgeo: "the trick is to bang the rocks together, guys"
06:13:18 <pikhq> `run echo `which welcome`
06:13:19 <HackEgo> ​/hackenv/bin/welcome
06:13:25 <pikhq> BLAH
06:13:28 <pikhq> `run cat `which welcome`
06:13:29 <pikhq> XD
06:13:30 <HackEgo> ​#!/usr/bin/perl -w \ if (defined($_=shift)) { s/ *$//; s/ +/ @ /g; exec "bin/@", $_ . " ? welcome"; } else { exec "bin/?", "welcome"; }
06:13:31 <Bike> Well, I'm also used to software not working on Linux.
06:13:39 <Sgeo> Bike, this should work on Linux
06:13:45 <pikhq> I think that says it all.
06:13:48 <Bike> I mean in relation to your readme comment.
06:13:53 <Sgeo> Oh
06:14:03 <Bike> So, I'll try it later.
06:14:13 <Bike> I wonder if 90s vintage software will actually function on this thing.
06:14:18 <shachaf> monoids are so easy :')
06:14:30 <monqy> hi shachaf
06:14:35 <Bike> shachaf, norns aren't associative in that way!
06:14:35 <shachaf> oh no
06:14:36 <Sgeo> On Windows, it insists on being High Color (16-bit)
06:14:44 <shachaf> monqy: that one was dispproval wasn't it
06:14:49 <monqy> shachaf: : )
06:14:58 <shachaf> was that a : ) of yes
06:15:01 <RodgerTheGreat> Gregor: still writing horrifying and amazing things in javascript?
06:15:06 <Bike> Sgeo: hah.
06:15:09 <monqy> shachaf: yes
06:15:20 <shachaf> was that a yes of yes
06:15:20 <Sgeo> This is more 2001 vintage software I think
06:15:22 <shachaf> or a yes of no
06:17:59 <pikhq> RodgerTheGreat: Since he seems to not be around right now: short story "yes, but not all Javascript".
06:18:07 <pikhq> https://bitbucket.org/GregorR His bitbucket is fun.
06:19:03 <Bike> "The necessary components, adapted from OpenSolaris, to build working binaries for AT&T UNIX System V/386 Release 4.0 with no original C compiler system (i.e., no headers, no .a files, no crt files)." what
06:19:47 <pikhq> RodgerTheGreat: You may also like his IOCCC winner: http://www.ioccc.org/2011/richards/richards.c
06:20:19 <Bike> Oh, christ, that was him?
06:20:20 <Sgeo> I'm wondering if/when someone looking for Haskell monad tutorials will accidentally stumble on the APL/J description of monads
06:20:24 <pikhq> Yes.
06:20:34 <Bike> Sgeo: god, i hope so
06:21:11 <RodgerTheGreat> nice
06:21:57 <monqy> 'monad' is so horribly overloaded im confident someone has heard about 'monads in haskell' and thought it's some philosophy junk
06:22:21 <monqy> horribly confused but probably at a less harmful level than the result of a bad monad tutorial?
06:22:52 <Bike> hey, nuthin wrong with some random nerd learning about Leibniz, right?
06:24:00 <monqy> a term for Divinity or the first being, or the totality of all beings,[citation needed] Monad being the source or the One meaning without division.
06:24:38 <shachaf> monqy: are you divinity
06:24:42 <monqy> no
06:25:11 -!- copumpkin has quit (Ping timeout: 252 seconds).
06:25:24 <monqy> https://upload.wikimedia.org/wikipedia/commons/c/c2/Leibniz_Monadology_2.jpg manuscript on "monadology", by leibniz
06:25:42 -!- copumpkin has joined.
06:25:52 <shachaf> is that leibniz's handwriting
06:25:59 <shachaf> i can't even read it
06:26:06 <shachaf> imo dijkstra's was better
06:26:44 <shachaf> for example: http://www.cs.utexas.edu/users/EWD/ewd10xx/EWD1094.PDF
06:26:45 <RodgerTheGreat> dijkstra's was great from a fairly objective standpoint
06:26:46 <monqy> Monads are manifest, since they are everywhere, and there is no extension without monads
06:27:06 <shachaf> monqy: no that's comonads.............
06:27:07 <pikhq> That is a ridiculously neat hand.
06:27:14 <RodgerTheGreat> fountain pens, man
06:27:21 <RodgerTheGreat> fountain pens and giving a damn
06:27:54 <shachaf> Sometimes I wish I had handwriting as good as EWD's.
06:28:32 <shachaf> But even if I got a fountain pen, I wouldn't be able to do the other half for very long
06:29:09 <Bike> The monadology thing is pretty hilarious actually
06:29:30 <Bike> it's like atomic theory if atoms were sapient and couldn't talk and took up no space ("extension")
06:30:21 <RodgerTheGreat> 'later folks
06:30:35 -!- RodgerTheGreat has quit (Quit: RodgerTheGreat).
06:33:52 * pikhq spends more time in awe at EWD's handwriting
06:52:22 -!- sebbu has quit (Ping timeout: 256 seconds).
06:53:04 -!- DH____ has quit (Read error: Connection reset by peer).
06:53:10 -!- DHeadshot has joined.
07:10:30 -!- WeThePeople has quit (Ping timeout: 256 seconds).
07:19:14 -!- zzo38 has quit (Remote host closed the connection).
07:24:52 -!- aloril has joined.
07:49:44 -!- DHeadshot has quit (Read error: Connection reset by peer).
07:49:49 -!- DH____ has joined.
08:01:05 -!- Bike has quit (Quit: leaving).
08:05:28 -!- DH____ has quit (Ping timeout: 256 seconds).
08:39:42 <FreeFull> Aw shit, I just saw how difference lists are implemented
08:39:49 <FreeFull> Or at least, one implementation
08:40:07 <shachaf> Uh oh.
08:40:10 <shachaf> Everyone stand back.
08:40:38 * FreeFull eats a sandwich
08:44:05 <shachaf> monqy: what does sky mean
08:44:14 <shachaf> is it good
08:44:17 <monqy> hi
08:44:35 <shachaf> oh no
08:45:48 <FreeFull> shachaf : monqy : []
08:45:58 <monqy> hi???
08:46:09 <FreeFull> Trapped you in a list
08:51:25 -!- FreeFull has quit.
08:52:55 -!- carado has joined.
08:58:48 <Sgeo> Maybe looking at the list of languages on RosettaCode may not be a good idea for me
08:58:56 <monqy> oh?
08:59:55 <Sgeo> Feed my language addiction
09:00:39 <shachaf> Maybe you should quit, Sgeo.
09:11:01 <monqy> most of those languages are probably bad anyway
09:11:22 <shachaf> All languages are bad.
09:11:27 <shachaf> Except Ada???????
09:11:35 <shachaf> Sgeo: imo ada should be your next language
09:12:55 <fizzie> Tip of the day: languages that a Sgeo uses are commonly called "Sganguages".
09:13:34 <shachaf> What do we call the languages Sgeo talks about but never actually uses for anything?
09:19:03 <fizzie> Sgunges, I think.
09:19:24 <fizzie> I mean, I think I've seen a few papers on the evolution of the sganguage-sgunge ratio.
09:25:59 -!- epicmonkey has joined.
09:43:22 <Sgeo> "As concurrency is part of the language specification, the compiler can in some cases detect potential deadlocks."
09:44:01 <Sgeo> "Ada also supports run-time checks to protect against ... off-by-one errors"?
09:44:04 <Sgeo> o.O
09:44:22 <Sgeo> Presumably just those that result in out-of-bounds access, or ... what?
09:44:37 <shachaf> i dunno man it's p.crazy
09:45:09 <shachaf> you can say "stuff like" type T is range 1 .. 100;
09:45:14 <shachaf> "lets see haskell do that??"
09:46:28 <Sgeo> "Ada is a structured programming language, meaning that the flow of control is structured into standard statements."
09:46:44 <Sgeo> Is this Wikipedia article written from the point of view of a person in the ancient past?
09:46:48 <shachaf> maybe
09:46:57 <shachaf> ada is modern though!!!
09:46:59 <Sgeo> Are you from the past?
09:47:06 <shachaf> guess what the latest version of ada is
09:47:10 <Sgeo> ^^apply British accent
09:47:13 <shachaf> answer ada 2012
09:47:28 <shachaf> c++ is only at 11
09:47:32 <Sgeo> Also I should watch more IT Crowd
09:47:35 <shachaf> this one goes up to 12
09:49:21 <Jafet> 2012 and it still doesn't have a turing-complete type system
09:49:35 <Jafet> Son I'm disappoint
09:50:48 <Sgeo> So GNAT Programming Studio is a well-known IDE for Ada but it can also be used for Python
09:50:48 <Sgeo> hmm
09:52:06 <shachaf> Your next language should totally be Ada.
09:52:10 <shachaf> That would be great.
09:52:41 <Sgeo> shachaf, if it is, it is entirely your fault
09:56:43 -!- oerjan has joined.
10:03:22 -!- Nisstyre has quit (Ping timeout: 245 seconds).
10:09:26 -!- Phantom_Hoover has joined.
10:23:44 -!- epicmonkey has quit (Ping timeout: 256 seconds).
10:26:46 -!- monqy has quit (Quit: hello).
10:39:22 <shachaf> coppro: So can you tell me about things that are corepresentable by a costrong copprofunctor?
10:39:41 <oerjan> he uld
10:40:02 <shachaf> coerjan
10:40:35 <Jafet> Type coerjan
10:42:27 <oerjan> no mment
10:43:00 <shachaf> @quote \bco
10:43:00 <lambdabot> lispy says: I think communicating with aliens will make unicode obsolete :(
10:43:12 <shachaf> @quote \bco.*\bco
10:43:12 <lambdabot> ddarius says: Alternatively, it could be arrived at from the continuity properties of exponentials.
10:43:22 <shachaf> @quote \bco.*\bco.*\bco
10:43:22 <lambdabot> ndm says: i once had a boss who complained because some code someone had written crashed, and yet "it clearly says in the company coding guidelines not to write code that crashes"
10:43:24 -!- ais523_ has joined.
10:43:33 <shachaf> @quote \bco.*\bco.*\bco.*\bco
10:43:33 <lambdabot> quicksilver says: < quicksilver> C++ templates can embed arbitrary computation at compile time < quicksilver> that alone tells you something about the complexity of the compiler < edwardk> yeah.
10:43:33 <lambdabot> they were accidentally turing complete. (whoops!) ;) < quicksilver> edwardk: OOPS I ACCIDENTALLY THE WHOLE TARPIT
10:43:52 <shachaf> @quote \bco.*\bco.*\bco.*\bco.*\bco
10:43:52 <lambdabot> <Berengal> says: From "Inventing computer games with Python": "Copying and pasting text is a very useful computer skill, especially for computer programming. There is a video tutorial on copying and
10:43:52 <lambdabot> pasting at this book's website at http://inventwithpython.com/videos/."
10:44:07 <shachaf> @quote \bco.*\bco.*\bco.*\bco.*\bco.*\bco
10:44:07 <lambdabot> <Berengal> says: From "Inventing computer games with Python": "Copying and pasting text is a very useful computer skill, especially for computer programming. There is a video tutorial on copying and
10:44:07 <lambdabot> pasting at this book's website at http://inventwithpython.com/videos/."
10:44:11 <shachaf> @quote \bco.*\bco.*\bco.*\bco.*\bco.*\bco.*\bco
10:44:11 <lambdabot> No quotes match. And you call yourself a Rocket Scientist!
10:44:17 <shachaf> That's too many cos. That's just ridiculous.
10:44:49 <oerjan> @quote \bco[^m].*\bco[^m].*\bco[^m]
10:44:49 <lambdabot> luite says: *amacleod started excising GOTOs from his BASIC code when he was 10. *roconnor started excising GOTOs from his Pascal code when he was 11. *luite used goto's in his C code last year.
10:45:04 <Jafet> Is that a sin?
10:46:03 <shachaf> GO TO, I'LL NO MORE ON'T
10:47:23 <Jafet> @quote shift.reset
10:47:24 <lambdabot> therp says: good morning. I think I have been dreaming of shift/reset continuations...
10:47:33 <Jafet> @quote shift.*reset
10:47:33 <lambdabot> therp says: good morning. I think I have been dreaming of shift/reset continuations...
10:47:55 <shachaf> @quote \bco[^d].*\bco[^d].*\bco[^d]
10:47:55 <lambdabot> edwardk says: People are strange, when you're a shapr, faces look ugly when you're alone, women seem wicked when you're unwanted, streets are all uphill when you're a clown. when you're straaaange
10:47:55 <lambdabot> no one remembers your name... coz its changed...coz its changed.. coz its... chaaannnngeed.
10:48:36 <shachaf> @quote \bco[^d].*\bco[^d].*\bco[^d]
10:48:37 <lambdabot> CharlesBabbage says: On two occasions I have been asked, 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind
10:48:37 <lambdabot> of confusion of ideas that could provoke such a question.
10:48:45 <shachaf> @quote \bco[^du].*\bco[^du].*\bco[^du]
10:48:46 <lambdabot> Igloo says: Did hugs' ./configure always end with "config.status: executing ultra-evil commands"?
10:49:04 <Jafet> @quote \bco[a-z]+\s+co[a-z]+\s+co
10:49:04 <lambdabot> No quotes match. Have you considered trying to match wits with a rutabaga?
10:49:16 <Jafet> @quote \bco[a-z]+\s+co
10:49:16 <lambdabot> elliott says: i'm here to prove theorems and compile code and I'm all out of code
10:50:27 -!- oerjan has quit (Quit: Coearlier).
10:55:03 <ais523_> I remember reading through some C code recently and thinking "this would be much clearer with goto"
10:55:17 <ais523_> (it was a break out of a multilevel for loop by setting the control variables)
10:55:36 <ais523_> I think the more refined rule of "never use gotos to jump backwards or into blocks" is probably a better one to teach people
10:55:41 <ais523_> forwards and out of blocks is OK
10:56:23 <Jafet> goto is so good that you have to train people not to use it.
11:10:48 -!- DHeadshot has joined.
11:10:50 -!- DHeadshot has quit (Remote host closed the connection).
11:11:19 -!- DHeadshot has joined.
11:25:57 -!- epicmonkey has joined.
11:53:21 <ais523_> wow, I just saw some of the most muddled Java code ever
11:53:49 <ais523_> it opened the same file for both read and (non-append) write, then attempted to do a cat from one to the other at the same time as attempting to do the actual exercise
11:54:27 <ais523_> and contained about three nested loops, two of which both looped over lines of the file, and one of which was a standard "i=0;i<n;i++" style for loop except it didn't have a termination condition
11:54:35 <ais523_> and nothing in the body but a single print statement
11:54:53 <ais523_> (ofc it was unreachable, because a file opened for write doesn't contain any lines)
12:03:23 <Lumpio-> Sounds like an enterprice data migration solution
12:08:17 -!- sebbu has joined.
12:08:17 -!- sebbu has quit (Changing host).
12:08:17 -!- sebbu has joined.
12:44:45 -!- ais523_ has quit (Quit: Page closed).
14:02:28 -!- sebbu has quit (Ping timeout: 256 seconds).
14:07:35 -!- ais523 has joined.
14:13:12 -!- Arc_Koen has joined.
14:16:30 -!- sebbu has joined.
14:16:30 -!- sebbu has quit (Changing host).
14:16:30 -!- sebbu has joined.
14:29:50 -!- boily has joined.
15:00:07 -!- ais523 has quit.
15:18:09 <Phantom_Hoover> http://en.wikipedia.org/wiki/Marcus_Brigstocke
15:18:10 <Phantom_Hoover> wow
15:18:14 <Phantom_Hoover> good photography there wp
15:33:35 -!- DHeadshot has quit (Read error: Connection reset by peer).
15:33:54 -!- DHeadshot has joined.
15:48:42 -!- copumpkin has quit (Ping timeout: 240 seconds).
15:49:13 -!- copumpkin has joined.
16:00:46 -!- ais523 has joined.
16:53:36 -!- epicmonkey has quit (Ping timeout: 256 seconds).
17:09:55 -!- Taneb has joined.
17:14:47 <oklopol> ais523: i don't think anyone disagrees with that use of goto
17:27:42 -!- sebbu has quit (Ping timeout: 240 seconds).
17:31:21 <mroman> !bf_txtgen Bye
17:31:27 <EgoBot> ​60 +++++++++++[>++++++>+++++++++++>+++++++++>+<<<<-]>.>.>++.>-. [238]
17:32:29 <mroman> boring.
17:32:34 <mroman> !bf_txtgen nowadays
17:32:36 <EgoBot> ​82 +++++++++++[>+>++++++++++>+++++++++><<<<-]>>.+.++++++++.>--.+++.---.<++.------.<-. [247]
17:32:52 <mroman> does it even produce nested loops?
17:32:57 <mroman> !bf_txtgen produce
17:33:00 <EgoBot> ​72 ++++++++++[>+++++++++++>++++++++++>+><<<<-]>++.++.---.>.<++++++.>-.++.>. [760]
17:33:10 <mroman> !bf_txtgen The producer produced
17:33:12 <EgoBot> ​177 ++++++++++++++[>++++++>++++++++>++++++++>++<<<<-]>.++++++++++++++++++++.---.>>>++++.<.++.<-.-----------.>+++.<-.<.>>---.>.<--.++.---.<+.>++++++.<-.++.-.>>----------------------. [447]
17:41:55 -!- sebbu has joined.
17:41:55 -!- sebbu has quit (Changing host).
17:41:55 -!- sebbu has joined.
17:47:30 <fizzie> No.
17:49:09 <fizzie> It's always (+)*n [>(+)*a >(+)*b >(+)*c >(+)*d] and then a sequence of <>+-.
17:49:23 <fizzie> Er, with <<<<- in the (only) loop too.
17:49:40 <fizzie> Quite often that means there's a >><< in the loop.
17:49:55 <fizzie> (The Java program it's based on has the number of cells used as a configurable option.)
17:50:01 <fizzie> !bf_txtgen aaaaaaaaaaaaaaaaa
17:50:03 <EgoBot> ​68 ++++++++++++[>++++++++>++++++++>+>+<<<<-]>+......>+...<......>..>--. [458]
17:50:30 <fizzie> Well, that was unexpectedly bad.
17:50:35 <fizzie> !bf_txtgen aaaaaaaaaaaaaaaaa
17:50:37 <EgoBot> ​65 ++++++++++++[>++++++++>++++++++>+><<<<-]>+....>+.............>--. [723]
17:50:44 <fizzie> And that's not much better.
17:50:54 <fizzie> The version in the bot has quite a low count of generations.
17:59:35 -!- FreeFull has joined.
18:20:13 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
18:21:08 <boily> !bf_txtgen é?
18:21:11 <EgoBot> ​71 +++++++++++++[>+++++++++++++++>+++++++++++++>+++++>+<<<<-]>.>.>--.>---. [789]
18:21:25 <boily> !bf +++++++++++++[>+++++++++++++++>+++++++++++++>+++++>+<<<<-]>.>.>--.>---.
18:21:27 <EgoBot> ​é?
18:21:31 <boily> ah! :D
18:21:38 <boily> it works even with fake letters!
18:22:28 -!- DH____ has joined.
18:22:31 -!- Phantom_Hoover has joined.
18:22:45 -!- DHeadshot has quit (Read error: Connection reset by peer).
18:27:34 -!- Nisstyre-laptop has joined.
18:32:12 -!- Nisstyre-laptop has quit (Max SendQ exceeded).
18:32:55 -!- epicmonkey has joined.
18:33:58 <mroman> !bf_txtgen ー
18:34:02 <EgoBot> ​86 ++++++++++++[>+++++++++++++++++++>+++++++++++>++++++++++++++++>+<<<<-]>-.>-.>----.>--. [899]
18:34:43 <boily> !bf_txtgen 私のホバークラフトは鰻で一杯です.
18:34:45 <EgoBot> ​854 ++++++++++++[>+++++++++++++++++++>+++++++++++>++++++++++++++>+++++++++++++++<<<<-]>+++.>>-.<---.<----.>.>>------.<<<.>++.>------------.<<.>.>-----------.<<.>.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++.+++++++++++++++++++++++++++++++++++++++.>--------------.>+.++++++++++++++++++++++++++++++++++++++++++++++++++++.<+.<<----------------------------------------------------------.>>>.<.++++++++++++++++++.<.>------------------.+++++.<.>-------.++++++
18:34:54 <boily> not bad.
18:36:42 -!- Nisstyre-laptop has joined.
18:36:56 <mroman> Your hovercraft is full of eels?
18:37:47 -!- copumpkin has quit (Ping timeout: 252 seconds).
18:38:18 -!- copumpkin has joined.
18:38:55 <pikhq> One would generally write that without the kanji for "unagi" FWIW.
18:39:29 <pikhq> So, 「私のホバークラフトはウナギで一杯です。」
18:39:52 <pikhq> Maybe also いっぱい instead of 一杯, but eh
18:40:22 <pikhq> !bf_txtgen 私のホバークラフトはウナギで一杯です。
18:40:24 <pikhq> Thaaar
18:40:25 <EgoBot> ​744 ++++++++++++++[>++++++++++++++++>++++++++++++>+++++++++>++++++++++++<<<<-]>+++++++.>-.>+++.<<----.>>.>++++++.+++++++++++++++++++++++++++++++++++++++++++++++++++++.<++.<------------.<.>>.<-----------.>>.<.<<---------------------------------------.>>>.<<--------------.<-------------.>>>.<.<<------.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.>>.++++++++++++++++++.<<.>+.+++++.<.>-------.>++++++++++++++++++++++++++.<<.>+.>---------.<<.>+.+++++++.<.
18:42:01 <mroman> !bf_txtgen おいししそう
18:42:05 <EgoBot> ​144 ++++++++++++++[>++++++++++++++++>+++++++++>++++++++++>+<<<<-]>+++.>+++.>--.<<.>.+++.<.>---.>+++++++++++++.<<.>.>.<<.>.>++++++.<<.>.+++++.>>----. [965]
18:42:07 <mroman> -typo
18:42:28 <pikhq> Two; that sucker's usually kanji: 美味しそう
18:43:58 <fizzie> http://zem.fi/esostats/people_stats.html PLORTS
18:44:18 <fizzie> Whoops, I forgot to update the <h1>.
18:46:44 -!- Nisstyre-laptop has quit (Remote host closed the connection).
18:47:56 <mroman> somebody wanted to screw up your x statistics.
18:47:57 <fizzie> It Must Be A Coincidence[tm]: HackEgo has a giant peak at characters-per-message = 10; the string "No output." has ten characters.
18:48:05 <mroman> http://zem.fi/esostats/charfreq_x.html
18:48:45 <kmc> 'Whenever I see people say "lib/lab/con parties are the same, I'm voting UKIP" I read it as "coke and pepsi are the same, I'm drinking piss"'
18:49:19 <fizzie> mroman: The peaks there are things like http://codu.org/logs/log/_esoteric/2012-10-25#163851fungot for example.
18:49:19 <fungot> fizzie: i'm not such fan of stacks, probably because he was expelled and couldn't sit his exam that he was going to
18:50:09 <ais523> stacks proved that he was unable to form an orderly queue
18:53:40 <boily> pikhq: I like my eels kanjied, even if common usage disagrees.
18:53:57 <pikhq> Fine, whatevs.
18:54:24 <pikhq> I just like having an excuse to not remember the animal kanji. :P
18:55:41 <boily> when I handwrite it, I use katakanas cause my penmanship is abysmally bad.
18:56:00 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
18:56:44 <pikhq> Oddly, my Japanese handwriting is halfway decent.
18:57:24 <boily> I have this handicap called "left handedness".
18:57:29 <pikhq> Aaaah.
18:59:14 <Gregor> (Burn the witch!)
18:59:49 <pikhq> 魔女燃やして!
19:03:13 <boily> eeeh... I think, last time I checked, that I'm far from being on the 女 side of humanity.
19:03:38 <pikhq> Could be trans and not know it? :P
19:06:42 -!- monqy has joined.
19:11:49 * boily はpikhqを大きなニジマスでひっぱたく。
19:12:38 <pikhq> Smartass.
19:14:29 * boily whistles innocently... ♪
19:15:53 <Gregor> 共産主義の話をやめる、我々は戦争に勝った。
19:16:34 <pikhq> Google Translate I assume?
19:16:47 <Gregor> ARE YOU CHALLENGING MY JAPANESE PROWESS
19:17:13 <pikhq> Yes, but that ended up being a remarkably understandable translation.
19:17:35 <pikhq> Not quite *right*, but remarkably understandable.
19:18:03 <pikhq> "Stop the communist talk; we beat you in the war." or some such
19:18:49 <mroman> boily: So.
19:18:53 <mroman> @left handed
19:18:53 <lambdabot> TemplateHaskell is not enabled
19:19:02 <mroman> I am too.
19:19:09 <Gregor> pikhq: Considering that what I entered was grammatically incorrect, that's pretty good.
19:19:13 <mroman> it's actually pretty awesome that they write from right to left.
19:19:14 <Gregor> "Stop talking communist, we won the war."
19:19:28 -!- AnotherTest has joined.
19:19:36 <mroman> the stroke order however is right handed.
19:19:45 <pikhq> Gregor: What it jacked up was it didn't use the imperative at all.
19:20:12 <pikhq> Gregor: "(someone) stops talking communist, we won the war" is more what the Japanese actually says.
19:20:25 <Gregor> If it didn't use the imperative, then didn't it really say something more like "You st—right.
19:27:10 <AnotherTest> let a = max {n, m} and b = min {n, m}
19:27:10 <AnotherTest> find q and r in a = q*b + r ; now compute the same with b = a and a = r until r = 0
19:27:30 <AnotherTest> Is this a recursive or iterative way of writing the Euclidean algorithm?
19:38:01 -!- oerjan has joined.
19:42:23 -!- Nisstyre-laptop has joined.
19:42:32 -!- Bike has joined.
19:57:30 <mroman> does that matter?
19:57:41 <mroman> you can implement it recursive
19:57:43 <mroman> or iterative
19:57:49 <AnotherTest> But the way I formulated it
19:57:55 <AnotherTest> was that recursive or iterative
19:57:59 <mroman> these are bijective.
19:58:07 <mroman> well
19:58:10 <mroman> until sounds iterative
19:58:35 <AnotherTest> hm, edge condition for recursion?
19:59:03 <AnotherTest> actually I think it is somehow iterative in that way, but on the other hand it seems recursive
19:59:16 <mroman> the are the same as far as I'm concerned.
19:59:18 <mroman> *they
19:59:40 <mroman> for i = 0; i < 10; i ++ { i++;}
19:59:46 <mroman> is that recursive or iterative?
19:59:55 <AnotherTest> iterative
20:00:09 <mroman> ok
20:00:19 <mroman> oh
20:00:22 <mroman> *j++
20:00:23 <AnotherTest> you clearly wrote the interation step: i++
20:00:27 <AnotherTest> *iteration
20:00:32 <mroman> so
20:00:39 <mroman> let i = 0;
20:01:08 <AnotherTest> yes, but now you could formulate it different
20:01:12 -!- DH____ has quit (Ping timeout: 272 seconds).
20:01:15 <AnotherTest> and it would do the same thing, only in a recursive way
20:01:35 <mroman> increment j and i as long as i is smaller than 10
20:01:40 <mroman> is that recursive or iterative?
20:01:43 -!- DHeadshot has joined.
20:01:47 <AnotherTest> According to wikipedia, you need:
20:01:48 <AnotherTest> A simple base case (or cases), and A set of rules which reduce all other cases toward the base case.
20:02:13 <AnotherTest> although mathematical iteration is defined as applying a function to itself
20:02:36 <oerjan> AnotherTest: iterative == tail recursive, essentially
20:02:42 -!- augur has quit (Remote host closed the connection).
20:03:02 <mroman> I'd go with an algorithm is an algorithm and you can implement it either recursive or iterative
20:03:19 <AnotherTest> oerjan: aha, and the example I gave was tail recursive
20:03:36 <AnotherTest> that would explain my confusion
20:04:19 <mroman> although it should be noted that usual I don't know what I'm talking about
20:04:19 <AnotherTest> mroman: I agree, but I was just wondering about this particular formulation of the algorithm
20:04:24 <mroman> *usually
20:05:33 <AnotherTest> suppose the following algorithm:
20:05:33 <AnotherTest> compute b = a + 1 and then make the same calculation with b
20:06:11 <AnotherTest> I guess that would be f(x) = x+1, f(f(f(...(x)...)))
20:06:24 <AnotherTest> So it can be seen as iterative
20:06:55 <AnotherTest> But you can also see it as f(x) = f(x -1) + 1
20:07:05 <AnotherTest> which is recursive
20:07:27 <AnotherTest> and the way I formulate didn't really tell whether or not I mean the former or the latter
20:07:54 <AnotherTest> although would it be a problem if the function took 2 parameters?
20:08:08 <AnotherTest> Well I guess you could still do function composition
20:18:19 -!- Nisstyre-laptop has quit (Quit: Leaving).
20:43:26 -!- augur has joined.
20:50:18 -!- AnotherTest has quit (Quit: Leaving.).
21:10:35 -!- j4kudl4ty has joined.
21:10:36 -!- j4kudl4ty has quit (Excess Flood).
21:20:27 <kmc> #django is like 10:1 questions:answers :(
21:22:57 -!- augur has quit (Remote host closed the connection).
21:22:58 <Gregor> ##questionsonly is 10:0 questions:answers.
21:23:33 -!- augur has joined.
21:23:40 <myndzi> ##answersonly is 42
21:24:01 <ion> I see what you did there.
21:27:57 -!- augur has quit (Ping timeout: 245 seconds).
21:30:26 -!- copumpkin has quit (Ping timeout: 245 seconds).
21:31:06 -!- copumpkin has joined.
21:43:16 -!- monqy has quit (Quit: hello).
21:45:44 <oerjan> > chr . read <$> words "72 101 108 108 111 44 32 119 111 114 108 100 33 10"
21:45:46 <lambdabot> "Hello, world!\n"
21:46:40 <boily> > chr <$> [0xC3, 0xA9]
21:46:42 <lambdabot> "\195\169"
21:50:25 -!- ElisaL has joined.
21:51:28 <oerjan> `welcome ElisaL
21:51:34 <ElisaL> hola
21:51:35 <HackEgo> ElisaL: 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:52:18 <ElisaL> hello
21:53:34 <oerjan> it's a bit quiet here at the moment
21:55:24 -!- Phantom_Hoover has joined.
21:55:39 * kmc shouts
21:55:50 <boily> plenty of voids, of unanswered mythical questions, of puzzlements, of weirdness (even if we aren't going to reach next Friday in a while), and kmces who shout.
21:56:00 * kmc shouts at fungot
21:56:01 <fungot> kmc: doesn't r5rs define core features and then library functions?
21:56:06 <kmc> fungot: does it?
21:56:07 <fungot> kmc: yep. i'm using drscheme)?
21:56:11 <kmc> ^style
21:56:11 <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
21:56:14 <kmc> ^style c64
21:56:15 <fungot> Selected style: c64 (C64 programming material)
21:56:16 * kmc shouts at fungot
21:56:17 <fungot> kmc: flag1 is a one's place, then you'll be able to understand. beginning and advanced programmers leave let out because it's the lowest location used. it concludes with the crsr keys.
21:56:39 <kmc> nice alliteration there
21:57:52 -!- azaq23 has joined.
21:58:01 -!- azaq23 has quit (Max SendQ exceeded).
21:58:34 -!- azaq23 has joined.
22:04:40 -!- ElisaL has left.
22:15:10 <ion> echo $((-2**63/-1))
22:16:04 <kmc> yep
22:16:20 <kmc> > -2**63/-1
22:16:21 <lambdabot> Not in scope: `/-'
22:16:21 <lambdabot> Perhaps you meant one of these:
22:16:21 <lambdabot> `-' (imported from P...
22:16:27 <kmc> > -2**63 / -1
22:16:29 <lambdabot> Terminated
22:16:40 <kmc> `run echo $((-2**63/-1))
22:16:41 <HackEgo> Floating point exception
22:17:01 <fizzie> Ooh, that was nasty.
22:18:46 -!- Nisstyre has joined.
22:19:01 <fizzie> fungot: You're not paying by the character, you can say "cursor" and not have to abrv it as "crsr".
22:19:01 <fungot> fizzie: one of the easiest way to translate sheet music for your statements might not otherwise run in the
22:19:08 <boily> lambdabot's running on a 32bit machine?
22:19:18 -!- Taneb has quit (Remote host closed the connection).
22:20:19 <kmc> > maxBound :: Int
22:20:20 <lambdabot> 9223372036854775807
22:20:23 <kmc> 64-bit
22:20:28 <ais523> "terminated"?
22:20:52 <ais523> hmm… is that parsed as -(2**63) or (-2)**63?
22:20:55 <ais523> I guess it has to be the latter
22:21:24 <ais523> boily: well (-2)**63 == (-2)**31 on a 32-bit machine
22:22:16 <fizzie> (-2)**63 Haskellwise is a Floating, anyway?
22:22:25 <oerjan> > -2**63 / -1
22:22:27 <lambdabot> Precedence parsing error
22:22:27 <lambdabot> cannot mix `GHC.Real./' [infixl 7] and prefix...
22:22:43 <oerjan> Terminated just means lambdabot timed out for whatever reason
22:23:20 <oerjan> > -2**63
22:23:21 <lambdabot> -9.223372036854776e18
22:24:33 <fizzie> http://kqueue.org/blog/2012/12/31/idiv-dos/ -- oh ho, that's been even in PostgreSQL.
22:25:13 <kmc> it was a level in the io wargame too
22:25:40 <boily> > let x = x in x
22:25:43 <lambdabot> mueval-core: Time limit exceeded
22:26:12 <kmc> in this case it's Terminated because it got a SIGFPE signal
22:26:23 <kmc> possibly caught by GHC runtime, possibly not
22:26:35 <oerjan> kmc: um no it isn't, it doesn't parse hth
22:26:39 <kmc> hm
22:26:40 <kmc> ok
22:26:43 <kmc> so why that result
22:26:48 <kmc> > (-2**63) / (-1)
22:26:49 <lambdabot> 9.223372036854776e18
22:26:53 <kmc> hm ok
22:26:58 <kmc> > ((-2**63) / (-1)) :: Int
22:26:59 <lambdabot> No instance for (GHC.Float.Floating GHC.Types.Int)
22:26:59 <lambdabot> arising from a use of...
22:27:02 <kmc> duh
22:27:05 <oerjan> because sometimes lambdabot gives Terminated just when it's too busy
22:27:06 <kmc> > ((-2**63) `div` (-1)) :: Int
22:27:08 <lambdabot> No instance for (GHC.Float.Floating GHC.Types.Int)
22:27:08 <lambdabot> arising from a use of...
22:27:21 <kmc> > ((-2^63) `div` (-1)) :: Int
22:27:22 <lambdabot> *Exception: arithmetic overflow
22:27:24 <kmc> ok
22:27:34 <kmc> there we are
22:27:54 <Bike> kmc: fiora mentioned that there are processors that give you 0x8fffffff and 0x80000000
22:27:59 <kmc> > ((-2^63) - 1) :: Int
22:28:01 <lambdabot> 9223372036854775807
22:28:04 <kmc> Bike: heh
22:29:12 <fizzie> What about processors that give you 0x100000000 except somehow stuffed in 32 bits, maybe by making the 0s a bit less wide than usual?
22:29:27 <Bike> are there such processors
22:29:27 <kmc> they might burst
22:29:38 <olsner> ooh, compressed integers?
22:29:45 <fizzie> Blorp, goes the processor, bit juice leaking all over the place.
22:29:49 <Bike> most processors can't handle more than 1:1 bitcompression
22:29:55 <kmc> that reminds me of the old microcomputer trick: format your tapes several times, not just one
22:30:03 <kmc> each time the tape stretches a bit and you get more storage
22:30:29 <oerjan> and then *snap*?
22:30:40 <kmc> right that was for the ZX Microdrive
22:31:26 <olsner> or maybe the tapes could become vulcanizing if you stretch them, so that if you do that one time too many you end up with a solid puck of tape
22:33:24 <fizzie> Regular 1440k floppies you could (FSVO "could") quite well format at 1600k or 1680k for a bit of extra space.
22:34:23 <fizzie> (Sadly, it probably wouldn't stretch anything.)
22:34:24 <olsner> I once had some 2.88MB floppies that I accidentally reformatted as 1.44MB and I had no tools that could add back the 2.88MB magic
22:34:33 <olsner> then I was slightly sad
22:35:08 <tswett> So does formatting a floppy drive actually redraw the lines between bits?
22:35:11 <tswett> Er, floppy disk.
22:35:20 <tswett> Floppy disks have little lines painted in between the bits, right?
22:35:45 -!- DHeadshot has quit (Ping timeout: 272 seconds).
22:35:55 <olsner> the humunculus with the chalk walks out and redraws the lines, yeah
22:35:56 <oerjan> you have to draw the line somewhere
22:36:24 <tswett> I guess I kinda expected the lines to be permanent somehow.
22:37:07 <tswett> I suppose this means that a formatted floppy disk necessarily has a finite lifespan, since every time you write to it, the bits move around a little bit, and eventually some of the bits will get too close together.
22:37:11 <tswett> ...right?
22:37:43 <olsner> I don't think the bits actually move around, they just change magnetization
22:38:13 <tswett> Well, I mean, if you draw new bits on top of old bits, you're not going to get them in exactly the same place that you did before.
22:39:34 <oerjan> magnets, how do they work
22:40:06 <olsner> http://en.wikipedia.org/wiki/Floppy_disk_format
22:42:59 <fizzie> In Linux you could just access/fdformat the /dev/fd0H{1600,1680,1722,1743,1760,1840,1920} device -- going as high up as you dare.
22:55:36 <boily> 1743? why an ugly odd number between all those beautiful evens?
22:56:33 <kmc> that's parityist
22:58:19 <oerjan> > 1743/3
22:58:21 <lambdabot> 581.0
22:58:39 <oerjan> `factor 1743
22:58:40 <HackEgo> 1743: 3 7 83
22:59:48 -!- atehwa has quit (Ping timeout: 272 seconds).
22:59:50 <Bike> what's the rule for determining divisibility by seven? i forget.
22:59:54 <oerjan> `run echo "1600,1680,1722,1743,1760,1840,1920" | xargs -d, -1 factor
22:59:55 <HackEgo> xargs: invalid option -- '1' \ Usage: xargs [-0prtx] [--interactive] [--null] [-d|--delimiter=delim] \ [-E eof-str] [-e[eof-str]] [--eof[=eof-str]] \ [-L max-lines] [-l[max-lines]] [--max-lines[=max-lines]] \ [-I replace-str] [-i[replace-str]] [--replace[=replace-str]] \ [-n max-args] [--max-args=max-args] \ [-s
23:00:26 <oerjan> `run echo "1600,1680,1722,1743,1760,1840,1920" | xargs -d, -n 1 factor
23:00:28 <HackEgo> 1600: 2 2 2 2 2 2 5 5 \ 1680: 2 2 2 2 3 5 7 \ 1722: 2 3 7 41 \ 1743: 3 7 83 \ 1760: 2 2 2 2 2 5 11 \ 1840: 2 2 2 2 5 23 \ factor: `1920\n' is not a valid positive integer
23:00:40 <oerjan> `run echo -n "1600,1680,1722,1743,1760,1840,1920" | xargs -d, -n 1 factor
23:00:42 <HackEgo> 1600: 2 2 2 2 2 2 5 5 \ 1680: 2 2 2 2 3 5 7 \ 1722: 2 3 7 41 \ 1743: 3 7 83 \ 1760: 2 2 2 2 2 5 11 \ 1840: 2 2 2 2 5 23 \ 1920: 2 2 2 2 2 2 2 3 5
23:01:16 -!- DHeadshot has joined.
23:01:41 <boily> 'night everyone!
23:01:43 -!- boily has quit (Quit: Poulet!).
23:02:31 <oerjan> looks like several of them are multiples of 21
23:02:33 <fizzie> I'm going to go ahead and suspect it had 83 tracks and 21 sectors/track.
23:03:54 <fizzie> (Because the standard 1440 comes from 80*18.)
23:05:36 -!- atehwa has joined.
23:06:41 <oerjan> > [1660 == 80*20, 1680 == 80*21, 1722 == 82*21, 1743 == 83*21, 1760 == 80*22, 1840 == 80*23, 1920 == 80*24]
23:06:43 <lambdabot> [False,True,True,True,True,True,True]
23:06:48 <oerjan> oops
23:06:48 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
23:06:55 <oerjan> > [1600 == 80*20, 1680 == 80*21, 1722 == 82*21, 1743 == 83*21, 1760 == 80*22, 1840 == 80*23, 1920 == 80*24]
23:06:56 <lambdabot> [True,True,True,True,True,True,True]
23:07:50 <Bike> huh, the seven rule is weird.
23:08:28 <oerjan> divisibility by seven?
23:08:30 <fizzie> > and [1600 == 80*20, 1680 == 80*21, 1722 == 82*21, 1743 == 83*21, 1760 == 80*22, 1840 == 80*23, 1920 == 80*24] -- OPTOMIZED FOR HUNAM PROCESSING OF OUTPUT
23:08:32 <lambdabot> True
23:08:36 <coppro> seven rule?
23:08:52 <Bike> oerjan: yeah, like the "add up the digits, if the sum is divisible by three it is" rule for three
23:09:12 <oerjan> the thing is, that works because 3 divides 10-1
23:09:29 <oerjan> and the rule for 11 works because 11 divides 10+1 (duh)
23:09:45 -!- atehwa has quit (Read error: Operation timed out).
23:09:46 <oerjan> the rules for 2 and 5 work because they divide 10
23:09:49 <Bike> so what you're saying is we need more octal
23:10:00 <oerjan> but 7 doesn't divide anything before 1001 afair
23:10:11 <oerjan> > 1001/7
23:10:13 <lambdabot> 143.0
23:11:59 <oerjan> > 999/7
23:12:01 <lambdabot> 142.71428571428572
23:12:16 <oerjan> um duh.
23:12:42 <Bike> imo should be 141, just to make sevens more unique
23:12:51 <oerjan> OKAY
23:13:08 <olsner> and n/7 for non-multiples of 7 are all rotations of 285714
23:13:38 <Sgeo> Last digit multiply by 2 subtract from rest test that for div by 7
23:13:39 <Sgeo> iirc
23:14:16 <oerjan> > 999999/7
23:14:18 <lambdabot> 142857.0
23:14:47 <Bike> Sgeo: yep
23:15:13 <elliott> qqqqqqqqq
23:15:13 <lambdabot> elliott: You have 3 new messages. '/msg lambdabot @messages' to read them.
23:15:18 <elliott> aaaaah
23:15:35 <elliott> Bike: they're for stuff
23:15:50 <Bike> ugh can't you at least yell at me or something
23:16:17 -!- atehwa has joined.
23:16:21 <elliott> Bike: FUCK FUCK SHIT SHIT FUCK
23:16:23 <elliott> hope this helps
23:16:32 <Bike> thx
23:16:32 <oerjan> binary swearing
23:16:44 <Bike> oerjan: 132
23:17:19 <oerjan> no, just 25 afaict
23:20:11 -!- Phantom_Hoover has joined.
23:23:57 -!- atehwa has quit (Ping timeout: 256 seconds).
23:42:16 * Sgeo has a feeling Gregor would agree with it
23:42:17 <Sgeo> http://www.reddit.com/r/programming/comments/17hz0y/git_ui_is_a_nightmare_of_mixed_metaphors/
23:42:36 <kmc> yeah the git UI is awful
23:42:46 <kmc> but the data model is elegant and the tools compose
23:42:47 <kmc> it's like UNIX
23:42:57 <kmc> except the UNIX data model is not actually elegant
23:43:34 <ais523> the data model is broken in git
23:43:46 <kmc> how so?
23:43:50 <ais523> see: any #esoteric discussion about scapegoat
23:44:00 <ais523> I like breaking broken data models down to "the simplest thing you can't do"
23:44:14 <kmc> what's scapegoat?
23:44:16 <ais523> in git, that's pulling some but not all patches from an upstream branch
23:44:35 <ais523> and scapegoat is a VCS (which #acehack have branded "the #esoteric VCS"), which nobody has made a serious attempt at writing
23:44:55 <kmc> you can do that easily, but you lose the link between the upstream patches and your patches
23:44:59 <ais523> but the basic concepts, we've got down
23:45:23 <ais523> kmc: no, you can diff and apply patches (and there's a command to do that automatically)
23:45:28 <ais523> this isn't the same as tracking upstream if it's not linear
23:45:44 <kmc> you can rebase preserving merges, although it is pretty nasty
23:45:58 <ais523> yeah, and I don't want to do all this manual work
23:46:12 <ais523> darcs gets this particular problem right, incidentally, although it fails on others
23:46:13 <kmc> anyway i wouldn't say that the Git data model is 'broken'; of course there are some things it doesn't support well, but it provides a pretty good ratio of power to complexity
23:46:46 -!- atehwa has joined.
23:47:16 <ais523> basically the problem is that it has no concept of anything but snapshots
23:47:23 <ais523> it doesn't understand the notion of a change
23:47:28 <ais523> and so has to run crazy merging algorithms each time
23:47:47 <kmc> opinions differ on whether this is a good or a bad thing
23:47:53 -!- RodgerTheGreat has joined.
23:48:00 <kmc> it makes it much easier to understand what you actually have in your repository and how it relates to other stuff
23:48:39 -!- olsner has quit (Ping timeout: 276 seconds).
23:48:50 <kmc> which helps when your UI is broken
23:48:57 <kmc> perhaps if Git's UI were better, it could support a more complex data model
23:49:42 <kmc> afk
23:53:09 <ais523> `? monad
23:53:11 <HackEgo> Monads are just monoids in the category of endofunctors.
23:53:32 <RodgerTheGreat> well obviously
23:53:47 <RodgerTheGreat> they picked the name to be intuitive like that
23:53:51 -!- olsner has joined.
23:54:19 <Bike> Why did they pick that name, anyway?
23:55:11 <RodgerTheGreat> because they are category theory fetishists
23:56:22 <Bike> No, I mean the category theorists.
23:57:57 <RodgerTheGreat> because category theory is a ruse to overload normal words and combinations of everyday prefixes and suffixes with complex and arcane meanings
23:58:11 <Bike> I thought that was math generally.
23:58:52 <RodgerTheGreat> not generally to the extent that category theory and other forms of abstract algebra do
23:59:12 <Bike> no i'm sure we'll never run into issues with "group"
2013-01-30
00:00:51 <RodgerTheGreat> I had a haskellion tell me vehemently that I shouldn't implement a type system in a language by referring to things as having a "kind", because "kinds" are an utterly distinct thing from a "type" in haskell
00:01:28 <oerjan> i don't think it's just haskell, but type theory in general
00:01:29 <Bike> well that's type theory generally
00:01:47 <RodgerTheGreat> they're fucking words
00:01:48 <Bike> though yeah those words are kind of. vague
00:02:09 <RodgerTheGreat> and it doesn't matter what the words mean in haskell when you are writing a language which is not haskell
00:02:13 <Bike> it's just that if you say "kind" to mean what people would think of as a "type" then you'll probably confuse people, so just stick with the shitty language we've got and hope things work out
00:02:30 <elliott> RodgerTheGreat: "kind"'s meaning is well agreed upon in PLT in general, not just Haskell.
00:02:45 <elliott> (Well, relatively well-agreed; ambiguity arises when you get to types-of-kinds.)
00:03:02 <RodgerTheGreat> an ieee-754 double does not have enough granular precision to express how little I care
00:03:10 <Bike> type three: revenge of the meta
00:03:14 <elliott> okay well maybe you should just shut up
00:03:27 <elliott> since you clearly know nothing about either category theory or type systems
00:04:22 <Bike> no, no, throw in a nerdy insult
00:04:29 <Bike> make this as horrible as possible for everybody
00:05:03 -!- epicmonkey has quit (Ping timeout: 272 seconds).
00:05:42 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
00:05:56 <elliott> no I think I will just make it simple by telling the person who has joined and then done nothing other than shout loudly about how proud they are about how little they know to shut up and see how it goes from there
00:06:10 <elliott> that everything is horrible should be self-evident
00:06:28 <Bike> he was talking about creatures with sgeo yesterday!
00:06:32 -!- Phantom_Hoover has joined.
00:06:39 <Bike> they were comparing strategies for making small fictional animals miserable
00:06:58 <RodgerTheGreat> disagree with the importance of terminology -> knows nothing, obviously
00:08:02 <Sgeo> Clearly the people who made Haskell should have used a term other than "monad", to avoid stepping on APL's toes
00:08:37 <Bike> the ghost of leibniz will venge them all
00:08:44 <elliott> RodgerTheGreat: I think it's fairly clear that if you think category theory is dedicated to making up a bunch of words to confuse people you're probably just scared of them because you don't know what any of them mean.
00:08:50 <kmc> `addquote <RodgerTheGreat> an ieee-754 double does not have enough granular precision to express how little I care
00:08:59 <HackEgo> 941) <RodgerTheGreat> an ieee-754 double does not have enough granular precision to express how little I care
00:09:05 <Sgeo> There seems to be no such thing as a word that has a consistent meaning across every programming language. I do not know whether this is a terrible thing or not.
00:09:12 <RodgerTheGreat> kmc: awesome
00:09:32 <kmc> it's great when two communities have two different, completely incomprehensible terms for the same idea
00:09:40 <kmc> like "flyweight pattern" and "hash consing"
00:09:56 <kmc> it's hard to think of a worse name for this idea, let alone two
00:10:14 * Sgeo has mostly noticed the other way, two completely different ideas for the same word
00:10:31 <Sgeo> wtf is flyweight pattern
00:10:36 <Bike> bla bla descriptivism bla logic bla bla nihilism bla
00:10:59 <kmc> say what you will about the tenets of Java, at least it's an ethos!
00:11:01 <elliott> Sgeo: hash consing!!
00:11:05 <Bike> "In computer programming, flyweight is a software design pattern. A flyweight is an object that minimizes memory use by sharing as much data as possible with other similar objects; it is a way to use objects in large numbers when a simple repeated representation would use an unacceptable amount of memory"
00:11:11 <Bike> Wait, are you serious.
00:11:41 <Sgeo> Clojurists call that "persistent data structures", I think
00:11:52 <kmc> i think it's a bit different
00:12:07 <kmc> it's like if you have a word processor and an object for every character
00:12:23 <kmc> you probably don't want a different object in memory for every instance of a normal-weight 12pt times new roman 'e'
00:12:28 <Bike> Sgeo: doesn't persistence usually mean it persists across invocations of the runtime and shit
00:12:34 <kmc> 'interning' is another term for this
00:12:39 <elliott> Sgeo: does the clojure meaning differ from the usual http://en.wikipedia.org/wiki/Persistent_data_structure ?
00:12:40 <kmc> Bike: different definition of persistent
00:12:45 <elliott> not quite the same thing as hash consing, if so
00:12:47 <RodgerTheGreat> kmc: smalltalk "smallInteger" comes to mind
00:12:48 <Bike> right. right, of course
00:12:59 <Bike> SILLY ME
00:13:11 <RodgerTheGreat> although in that case they're baked very deeply into the vm implementation
00:13:24 <Sgeo> elliott, that seems to be the same as the Clojure meaning, except I think the Clojure meaning also implies some efficiency in the process, not sure
00:13:24 <kmc> this idea of interning is somewhat different from the persistent data structures idea, which is like "if we insert into a binary tree to get a new tree, we can point back into most of the nodes of the old tree"
00:13:54 <Bike> oh, i thought flyweight was more of the latter
00:13:56 <kmc> a lot of langugaes have interning for small integers
00:14:03 <kmc> python:
00:14:03 <kmc> >>> 256 is 255+1
00:14:04 <kmc> True
00:14:04 <kmc> >>> 257 is 256+1
00:14:05 <kmc> False
00:14:06 <RodgerTheGreat> even java does it
00:14:22 <Bike> that's more because of machine convenience isn't it
00:14:28 <kmc> well in Java you also have primitive ints, it wouldn't make sense to intern those
00:14:33 <Bike> kmc: er, they use bignums past 256, or what?
00:14:35 <kmc> but maybe it interns Integer objects for all I know
00:14:36 <RodgerTheGreat> kmc: I meant the boxed types
00:14:48 <kmc> Bike: don't think so
00:14:58 <RodgerTheGreat> it interns boxed integer types from like -127 to 128
00:15:05 <kmc> but they statically allocate the heap object for small integers
00:15:13 <Bike> oh, huh
00:15:15 <kmc> even if they may contain a machine integer
00:15:17 <elliott> Bike: python stores integers on the heap and stuff
00:15:22 <elliott> but it caches teeny ones
00:15:36 <Bike> "cool"
00:15:39 <kmc> ints are objects, they have attrs and shit
00:16:05 <kmc> In [4]: (99).bit_length()
00:16:06 <kmc> Out[4]: 7
00:16:09 <oerjan> ghc interns small Chars, i recall
00:16:12 <kmc> although stupidly you can't write 99.bit_length
00:16:19 <Bike> why not
00:16:23 <kmc> syntactic stupidity
00:16:28 <Bike> yay!
00:16:38 <Bike> Oh, because it could interpret it as a number with a radix point.
00:16:43 <kmc> Ruby and Rails take this to the extreme, of course, and monkeypatch all kinds of nonsense methods onto the number class
00:17:09 <kmc> because writing "3.sexy_goats" reads so much better than "sexy_goats(3)"
00:17:18 <RodgerTheGreat> kmc: the "smoke 'em if you've got 'em" principle of language and API design
00:17:44 <Sgeo> kmc, Smalltalk too, to some extent
00:17:56 <kmc> who cares if you gratuitously modify the core language, as long as your client code looks superficially nice in huge font on a meticulously styled webpage
00:18:10 <kmc> that sentence has too many adverbs
00:18:14 <Bike> are you mad
00:18:24 <Sgeo> I don't see anything inherently wrong with modifying the core language as long as it doesn't disrupt other parts
00:18:31 <RodgerTheGreat> kmc: it's not code, it's ~poetry~
00:18:34 <elliott> oerjan: if only unicode was small enough to cache them all
00:18:45 <kmc> "I don't see how that could go wrong, unless the monkeys started hurting people. Which they almost certainly would."
00:18:48 <Sgeo> If that sexy_goats had some sort of namespace, so other things could add their own sexy_goats method to Object or whatever to do something different, I would have no complaint
00:19:07 <kmc> RodgerTheGreat: right yeah
00:19:42 <kmc> i would never understand, i'm just a software engineer, not a rockstar code-poet painter hacker
00:19:53 <Sgeo> Although I guess in that case if the equiv. of doesNotUnderstand ... hm
00:19:55 <RodgerTheGreat> ninja hustler
00:19:59 <kmc> how terrible to have the self image of a well-paid highly skilled engineer
00:20:06 <kmc> no kid wants to be that when they're growing up right
00:20:26 <Bike> it's just so boring and middle class!
00:20:28 <kmc> what's a doesNotUnderstand
00:20:30 <Bike> unlike having a job typing
00:20:45 <fizzie> RodgerTheGreat: According to the API docs, Integer.valueOf will "always cache values in the range -128 to 127, inclusive, and may cache other values outside of this range". (new Integer(0) will of course always make a new Integer.)
00:20:47 <Sgeo> kmc, the Smalltalk equivalent of method_missing
00:20:49 <kmc> ok
00:21:00 <Sgeo> although it's doesNotUnderstand: not doesNotUnderstand
00:21:18 <kmc> Ruby and Python support basically the same kinds of fancy dynamic shit, but the communities have vastly different norms for when it's appropriate to use them
00:21:30 <RodgerTheGreat> fizzie: right, got the ranges backwards
00:21:32 <kmc> community norms >>> hard language rules
00:21:42 <kmc> even Haskell's supposed purity is a community norm
00:22:04 <Bike> kmc you sound like an anthropologist what's wrong ;_;
00:22:05 <pikhq> Combined with some minor awkwardness in impure syntax.
00:22:05 <elliott> to be fair Python makes monkeypatching a hell of a lot more painful than Ruby in general
00:22:12 <elliott> language structure dictates community norms
00:22:18 <elliott> to some degree
00:22:26 <pikhq> (imperative programming in Haskell is quite doable, but it's also syntactically awkward, y'know?)
00:22:32 <fizzie> It's a kind of an arbitrary range anyway, since there doesn't seem to be a very strict reason for it to be a particular amount of bits, except perhaps for a slightly more micro-optimized range test.
00:22:40 <kmc> pikhq: aww, I like imperative programming in Haskell!
00:22:45 <kmc> it's such a good imperative language
00:22:54 <oerjan> `addquote <Sgeo> If that sexy_goats had some sort of namespace, so other things could add their own sexy_goats method to Object or whatever to do something different, I would have no complaint
00:22:56 <kmc> highly expressive, precise control over who can touch what state, good threads, fast
00:22:58 <pikhq> kmc: Not saying it's bad or anything, just that the syntax for it ain't the cleanest thing. :)
00:22:59 <HackEgo> 942) <Sgeo> If that sexy_goats had some sort of namespace, so other things could add their own sexy_goats method to Object or whatever to do something different, I would have no complaint
00:23:00 <kmc> STM
00:23:02 <kmc> yeah it's not the best
00:23:13 <fizzie> I like imperative programming in Prolog. (It's so easy?)
00:23:16 <pikhq> Whiiich is why you tend do imperative when necessary and functional otherwise. :)
00:23:18 <kmc> "no"
00:23:20 <RodgerTheGreat> fizzie: I think it was something like "we need a reasonably small number of these to not be ridiculous. How 'bout the range of a byte? Cool, let's break for lunch."
00:25:41 <kmc> bonghits for everyone
00:26:23 <elliott> today on great images of wikipedia http://upload.wikimedia.org/wikipedia/commons/e/ed/BRDF_Diagram.svg
00:26:39 <RodgerTheGreat> I don't even
00:26:43 * Sgeo misses Encarta
00:27:11 <kmc> i miss Microsoft's special purpose mini encyclopedias
00:27:14 <kmc> like if you like dogs
00:27:18 <kmc> there was a CD you could buy
00:27:21 <kmc> that had some stuff about dogs on it
00:27:24 <kmc> not a lot, just one CD worth
00:28:01 <Bike> elliott: what the hell?
00:28:13 <elliott> Bike: submit to BRDF diagram. BRDF diagram now owns your existence
00:28:22 <Bike> ._.
00:28:27 <Sgeo> Not a part of Encarta I think, but there was this one CD that had a thing that let you fly around the Earth
00:28:32 <kmc> was it
00:28:34 <kmc> flight simulator
00:28:41 <elliott> earth simulator
00:29:11 <kmc> Microsoft Crash Into The Willis Tower Immediately Simulator
00:29:28 <kmc> Microsoft Holy Damn This 747 Has A Lot Of Switches Simulator
00:29:32 <fizzie> I have here in my bookshelf a "Microsoft Encarta 1994 Edition", "For Distribution Only With a New PC".
00:29:42 <elliott> kmc: does that just simulate the lone emotion of the 747 having a lot of switches
00:29:46 <kmc> yes
00:29:48 <elliott> and not any other aspects of the 747 flight experiecne
00:29:49 <elliott> good
00:29:51 <elliott> I would play that
00:29:55 <ion> Microsoft Surgery Simulator 2013
00:29:58 <fizzie> If I recall correctly, it had something like six or a dozen articles with video (!) in them.
00:30:06 <kmc> microsoft sugary simulator
00:30:18 <elliott> microsoft actually being bill gates simulator
00:30:25 <kmc> it's a jewel case with a CD-shaped wafer of aspartame inside
00:30:31 <ion> Microsoft Actually Being Steve Ballmer Simulator
00:30:36 <elliott> x = microsoft working at microsoft on the x simulator simulator
00:30:39 <fizzie> The video clips were in some 288x216 15fps format. But they were still terribly exciting.
00:30:41 <ion> Now with a hotkey for DEVELOPERS
00:30:53 <kmc> > cycle "DEVELOPERS "
00:30:54 <lambdabot> "DEVELOPERS DEVELOPERS DEVELOPERS DEVELOPERS DEVELOPERS DEVELOPERS DEVELOPE...
00:32:00 <fizzie> Next to Encarta there is "Microsoft Cinemania 1994 Edition", which I don't remember what it was like, and "Microsoft Dinosaurs", which presumably has dinosaurs in it.
00:32:13 <fizzie> These are all "For Distribution Only With a New PC".
00:32:56 <kmc> Microsoft Sit On Your Balls Simulator
00:33:45 <RodgerTheGreat> I have encarta '95 in my CD wallet
00:33:56 <fizzie> "Welcome to Microsoft® Dinosaurs! You'll be exploring a world unlike any you've experienced before, discovering amazing facts and long-buried secrets at every mouse click! Now, let's get on with the expedition!"
00:33:58 <kmc> elliott: here is a game about how many switches the A-10 Warthog has: https://www.youtube.com/watch?v=huVi6rdPE4I
00:34:03 <kmc> spoiler alert: a lot of switches
00:34:37 <kmc> i also had some magic eye CD-ROM
00:34:44 <elliott> that looks like too many switches for me
00:35:14 <kmc> where you could MS Paint any drawing you want (read: penis) and then make a magic eye out of it
00:35:18 <Sgeo> verb trains are so easy
00:35:27 <kmc> oh god
00:35:29 <kmc> it's spreading
00:35:45 <ais523> kmc: you needed a separate program for that?
00:35:50 <Bike> no, it's just sgeo
00:35:57 <Bike> milhouse is not a meme, sgeo
00:35:59 <ais523> I used to impress people by quickly implementing a stereogram generator in Excel
00:36:13 <ais523> you can do it in about 10 lines of VBA, it doesn't take long
00:36:28 <kmc> that's cool
00:37:10 <Sgeo> Someone in #clojure just called me a markov train bot
00:37:28 <elliott> markov train
00:37:35 <Bike> everybody get on the markov train!
00:37:44 <Sgeo> They called me a markov chain bot, not a markov train bot
00:38:00 <fizzie> Does the program come with the kind of patterns they put in those books?
00:39:53 <fizzie> fungot: Did you know that in the Markov train, what's in the front coach only depends on the contents of a finite number of the following coaches.
00:39:54 <fungot> fizzie: however, sudh as storing machine language ( in the program g0es to the next screen line set the same shape.
00:40:10 <Sgeo> <Sgeo> juxt is like a J verb train with the concat operator between every given function
00:40:15 <Sgeo> <TimMc> Sgeo: Well, that concludes it -- you're definitely a Markov chain bot of some sort. :-P
00:40:24 <elliott> wow are you really telling #clojure about J
00:41:10 <kmc> did you know: hidden Markov models are named after Hidden Markov, the Soviet Union's equivalent of Where's Waldo
00:41:27 <kmc> HMMs were used in early computer visual search research in the USSR and the analogy stuck
00:41:47 <Bike> haha, gonna have to pass that on
00:41:49 <kmc> tell your friends
00:41:55 <Bike> i know a guy who's a big fan of markov's son (yes really)
00:42:16 <fizzie> Did you know: Conditional Random Fields... aren't that easy to make a pun about.
00:42:31 <Sgeo> They may or may not be random?
00:42:58 <Bike> Is that really a pun so much as a rephrasing
00:43:40 <fizzie> (CRFs are spiffy.)
00:47:13 <oerjan> does markov's son have any sons, or will he break the chain
00:52:21 -!- augur has joined.
00:52:24 <kmc> boo hiss
00:52:58 -!- augur has quit (Read error: Connection reset by peer).
00:53:08 -!- augur has joined.
01:01:20 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:04:32 -!- carado has quit (Ping timeout: 246 seconds).
01:05:26 <shachaf> Sgeo: How's Ada going?
01:05:28 <Sgeo> http://scienceblogs.com/goodmath/2006/11/02/the-c-is-efficient-language-fa/
01:05:39 <Sgeo> shachaf, haven't looked in a bit, will later
01:18:03 <kmc> Ada is the new Sgeolang?
01:18:07 <kmc> does that mean Agda is next?
01:18:59 <Bike> jAgda
01:24:09 <elliott> ajda
01:27:45 <shachaf> @quote shachaf Agda
01:27:45 <lambdabot> shachaf says: Everyone forgets about Agda Lovelace, the first constructivist.
01:41:34 <kmc> hehe
01:45:16 <Sgeo> http://www.reddit.com/r/haskell/comments/17idma/how_to_write_unmaintainable_haskell_code/
01:45:40 <kmc> i'm clicking your link against my better judgement
01:46:35 <Bike> "the Succ (Succ Zeroth) Obfuscated Haskell Code Contest" is peano a Haskell Thing now
01:47:57 <elliott> how to write unmaintainable haskell code: just write any haskell code "trolololo" am i right kmc
01:48:07 <elliott> truly people will think "i mad" upon reading these words
01:48:19 <Bike> Link the trolololo video first.
01:48:44 <elliott> Bike: and what if i don't
01:48:48 <elliott> Bike: will you have a...... problem
01:48:58 <Bike> yes i'll have a not being trolled problem!!!
01:49:19 <elliott> have u considered Bike.... that that is the truest troll of all
01:49:19 <elliott> : )
01:49:45 <elliott> "Haskell's expressiveness allows coding in a very concise style. For example it renders comments redundant and makes you able to call all your types T and typeclasses C and them import them qualified."
01:49:53 <elliott> this is pretty lame but i like the henning thielemann joke
01:51:10 <Bike> "renders comments redundant", i'll have to remember that one
02:08:38 -!- monqy has joined.
03:20:02 -!- jconn has joined.
03:22:09 <Sgeo> `list
03:22:10 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
03:22:13 <Sgeo> ) 1 + 2 3 4
03:22:13 <jconn> Sgeo: 3 4 5
03:26:57 <monqy> what strings did you pull to get that thing in here
03:27:24 <Bike> "hey have your bot join #esoteric" "fuck off sure"
03:27:59 <Sgeo> Not that hostiley
03:28:02 <oerjan> whee ):[)$$7--1[)$3~[)$~!~~%~)]$2<[):]~:]~)~~[)~~~[~)~$7~~:~~([$3~)+[~~~<~()+48]~~~-)~10*)]/]--10):]] [42] [H]
03:29:14 <shachaf> Sgeo: imo use ada
03:29:35 <oerjan> no use fueue, look how simple it is to print a number in decimal!
03:30:15 * oerjan feels obligated to cackle evilly, but somehow doesn't put much feeling into it
03:31:28 <shachaf> I wish Ruby's functions were first-class. :-(
03:31:53 <Bike> ruby has functions?
03:33:17 <shachaf> Good point.
03:35:13 -!- augur has quit (Read error: Connection reset by peer).
03:35:38 <monqy> well there's that thing where you wrap a function in an object!!! ha ha ha ha ha ha ha ha ha ha
03:35:39 -!- augur has joined.
03:35:49 <Bike> i thought it had methods
03:38:17 <shachaf> does ruby have monoids
03:39:01 <Bike> It has + and *!!!
03:40:23 <Sgeo> Do J's verbs count as first-class?
03:40:26 <Sgeo> What is first-class?
03:40:36 <Sgeo> J verbs can only be taken as arguments by adverbs and conjunctions
03:40:49 <Sgeo> (which can also take nouns as arguments)
03:40:52 <Bike> First-class is a thing to make fun of Pascal programmers with.
03:41:03 <Sgeo> ?
03:42:39 -!- Arc_Koen has left.
03:44:31 <kmc> what is love?
03:45:41 <Sgeo> Are there any terms that are completely unambiguous, only one meaning across languages and that there's no room to argue about?
03:46:25 <Bike> hahaha
03:46:39 <kmc> pick one and i'll argue with you about it
03:46:55 <Sgeo> identity comparison
03:46:57 <Bike> sgeo, do you know what "prescriptivism" and "descriptivism" are?
03:47:42 <Sgeo> Um, descriptivism = words have the meaning that they have from common usage, prescrip = words have fixed meanings
03:47:57 <Sgeo> (Sorry, playing Mafia in another channel)
03:48:44 <Sgeo> ) 5 1 $ 'Hello'
03:48:45 <jconn> Sgeo: H
03:48:45 <jconn> Sgeo: e
03:48:45 <jconn> Sgeo: l
03:48:45 <jconn> Sgeo: l
03:48:45 <jconn> Sgeo: o
03:48:46 <Bike> So if you accept descriptivism, your question is ill-posed. If you accept prescriptivism, you're dumb, and also need a dictionary nobody will argue with.
03:50:44 <Sgeo> ) < 'test'
03:50:44 <jconn> Sgeo: +----+
03:50:45 <jconn> Sgeo: |test|
03:50:45 <jconn> Sgeo: +----+
03:51:03 <Sgeo> ) 'hi' CR 'bye
03:51:03 <jconn> Sgeo: |open quote
03:51:03 <jconn> Sgeo: | 'hi' CR 'bye
03:51:03 <jconn> Sgeo: | ^
03:51:06 <Sgeo> ) 'hi' CR 'bye'
03:51:06 <jconn> Sgeo: |value error: CR
03:51:06 <jconn> Sgeo: | 'hi' CR'bye'
03:51:10 <Sgeo> ) 'hi' LF 'bye'
03:51:10 <jconn> Sgeo: |value error: LF
03:51:10 <jconn> Sgeo: | 'hi' LF'bye'
03:51:15 <Sgeo> ) 'hi',LF,'bye'
03:51:16 <jconn> Sgeo: |value error: LF
03:51:16 <jconn> Sgeo: | 'hi', LF,'bye'
03:51:20 <Sgeo> ) 'hi',CR,'bye'
03:51:20 <jconn> Sgeo: |value error: CR
03:51:21 <jconn> Sgeo: | 'hi', CR,'bye'
03:51:21 <Sgeo> bah
03:51:34 <Bike> "thanks"
03:52:20 <Sgeo> I don't get how it's ill-formed in descriptivism
03:53:06 <Bike> hm maybe i don't agree with your summary of descriptivism
03:53:32 <Bike> i think it's more like "words have meaning in the context of whoever you're communicating with", that is, you're describing how people view words
03:53:42 <Bike> not just saying "it's common (whatever that means) for X to mean Y so X means Y"
03:53:51 <Bike> maybe i'm just too radical for the dictionaries
03:54:10 <Sgeo> I like your description better
03:54:33 <Sgeo> But still don't see how it's ill formed. if everyone who bothers to use the term uses it for the same thing or not, is still a valid question
03:54:51 <Bike> well i suppose you'd need everyone to think the same about that term then
03:54:57 <Bike> so maybe not ill-posed, i dunno
03:56:56 <kmc> the feeling of watching a YouTube video and then realizing you already saw it while super drunk
03:56:59 <Sgeo> `list
03:57:01 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
03:57:10 <Sgeo> oh hey yay
03:59:12 <Bike> https://www.youtube.com/watch?v=3PCOcyt7BPI so, i now know true fear
04:04:54 <kmc> o_O
04:05:09 -!- monqy has quit (Quit: hello).
04:05:35 <kmc> it's really a testament to how safe air travel is
04:05:44 <kmc> that they could do this hundreds of times a day (at that one airport) and only occasionally crash
04:06:25 <Bike> i didn't even know you could do that with 747s
04:09:03 <kmc> i want to go to hong kong
04:09:34 <Bike> you won't be using that airport, of course
04:09:37 <kmc> right
04:09:43 <kmc> they built an island and put a new airport on it
04:09:48 <kmc> extended an island, anyway
04:09:50 <Bike> apparently the new one is on a - yeah, and a twenty minute drive
04:09:51 <Bike> kinda sucks
04:09:58 <kmc> i assume there is public transit
04:10:06 <Bike> twenty minute busing
04:10:15 <kmc> 20 min from airport to city center is pretty good
04:10:41 <Bike> is it? huh, i must not be cosmopolitan enough
04:11:07 <kmc> it varies a lot but 20 min is on the low end for cities i've been to
04:12:08 <Bike> i suppose it is a very common destination
04:12:11 <kmc> JFK to manhattan is like a 30 min drive with no traffic
04:12:29 <kmc> and like an hour on the subway :(
04:13:24 <kmc> ditto EWR
04:14:16 <kmc> ORD to downtown Chicago is like 45 minutes on the train
04:21:40 <Sgeo> Do they use Ada on planes?
04:22:59 <shachaf> Sgeo: Yep.
04:23:53 <kmc> ada on aeroplanes
04:26:20 <shachaf> Sgeo: you'll be hard-pressed to find a "language as cool as ada"
04:40:40 -!- oerjan has quit (Quit: leaving).
04:44:57 <kmc> http://vooza.com/videos/culture/
04:49:43 <Sgeo> There's a yandere theme and a yandere02 theme
04:50:04 <kmc> in ada?
04:50:21 <Sgeo> Wrong channel
04:50:46 <Bike> should be in ada
04:52:56 -!- WeThePeople has joined.
04:55:24 <kmc> "Spotify meets Grindr, but for rental cars, but run as if it were for a hotel"
05:17:28 <shachaf> Something should be Done about people who listen to music so loud in their headphones that you can hear it from across the room.
05:17:45 <kmc> better headphones
05:20:27 <shachaf> "earphones" in this case, I suppose.
05:21:31 <shachaf> It's annoying how with cryptography things, you don't get any useful debugging information when something goes wrong.
05:21:34 <ais523> you'd expect earphones to be less leaky than headphones, but they tend to be leakier
05:21:49 <ais523> best headphones in terms of low leak I ever got were in-flight on Air Canada
05:22:05 <ais523> it makes a lot of sense that those wouldn't leak, if they were designed for use on aeroplanes with people sitting right next to you
05:24:19 <kmc> airplanes are loud
05:24:27 <kmc> it's hard to hear leak
05:24:40 <ais523> only sometimes
05:24:52 <ais523> and depending on where you're sitting
05:24:57 <ais523> but it didn't leak even when not on the aeroplane
05:25:30 <shachaf> The noise of drums beating etc. breaks my concentration.
05:25:36 <shachaf> I don't mind the hum of airplanes so much.
05:26:10 <kmc> i find that even the quiet bits of airplanes have a lot more leak-masking noise than, say, an office
05:26:21 <kmc> unless you are the secretary of state and your office is an airplane
05:26:24 <kmc> then it's probably about the same
05:27:43 -!- DH____ has joined.
05:27:53 -!- DHeadshot has quit (Read error: Connection reset by peer).
05:29:48 <ais523> air force 1 is smaller than a typical commercial airliner, isn't it?
05:29:59 <ais523> also probably more manoeuvrable
05:35:14 <kmc> air force 1 is a 747
05:35:28 <kmc> well technically it's whatever airplane happens to be carrying the president at the moment
05:35:41 <kmc> but it's /usually/ a 747
05:36:44 <Sgeo> I feel like (A.~[:i.[:!#) is verbose
05:37:03 -!- azaq23 has quit (Quit: Leaving.).
05:37:22 <Bike> hm let's see if i can do this
05:37:26 <Bike> `addquote < Sgeo> I feel like (A.~[:i.[:!#) is verbose
05:37:30 <HackEgo> 943) < Sgeo> I feel like (A.~[:i.[:!#) is verbose
05:37:34 <Bike> wait, no
05:37:37 <Bike> `delquote 943
05:37:38 <HackEgo> ​/hackenv/bin/delquote: 3: Syntax error: "fi" unexpected (expecting ")")
05:37:49 <kmc> fucked
05:37:50 <Bike> why must everything i touch die...........
05:38:00 <Bike> `cat bin/delquote
05:38:01 <HackEgo> ​#!/bin/sh \ id=$1 \ if ! expr "$id" ">=" 0 "&" "$id" "<" $(wc -l <quotes) >/dev/null; then id=$(expr $RANDOM % $(wc -l <quotes); fi \ 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
05:38:12 <Bike> hmmmmm nope gonna go with fuck it
05:38:40 <Sgeo> It is, it just lists all permutations of the input list
05:38:49 <Sgeo> Should really be some simpler way imo, not sure if there is
05:39:27 <Bike> have you read your taocp today?
05:39:41 <Sgeo> Well, besides other variations and besides the explicit 3 : '(!#y)A.y'
05:39:50 <Sgeo> Erm, that's wrong
05:40:03 <Sgeo> 3 : '(i.!#y)A.y'
05:40:15 <shachaf> Sgeo: That syntax is confusing.
05:40:22 <shachaf> Can you show it in Ada instead?
05:40:48 <Bike> ^
05:41:08 <Sgeo> Does it help to know in that 3 : thing that y means the argument on the right?
05:41:51 <Sgeo> # is number of items in a list. ! is factorial. i. is list from 0 to argument - 1
05:42:04 <shachaf> Sgeo: Nope, doesn't help.
05:42:09 <shachaf> I'd rather see the Ada.
05:42:19 <Bike> yeah i'm gonna need to see ada. or ideally, a j->ada compiler.
05:42:21 <Sgeo> I assume that Ada would involve an explicit loop
05:42:31 <shachaf> Maybe...
05:42:37 <Bike> I guess an Ada->J compiler would also work!
05:42:39 <kmc> Bike: what, you're not up to debugging a hairy shell script inside many-worlds linux over IRC
05:42:59 <Bike> mostly i just don't understand the qdbformat
05:43:08 <Bike> even though < name> actually does bug me aesthetically
05:43:15 <shachaf> Bike: did you mess with `delquote...................................................
05:43:23 <Bike> no, it's just fucked.
05:43:25 <kmc> you can also fix it with sed but i too don't know what i'm doing plus i'm drunk
05:43:27 <coppro> oh my god
05:43:30 <coppro> thank you randall
05:43:33 <Bike> see: 21:37 < kmc> fucked
05:43:34 <shachaf> `run sed 's///' quotes | tail -n 1
05:43:35 <HackEgo> sed: -e expression #1, char 0: no previous regular expression
05:43:40 <shachaf> `run sed 's/a/a/' quotes | tail -n 1
05:43:42 <HackEgo> ​< Sgeo> I feel like (A.~[:i.[:!#) is verbose
05:43:45 <kmc> s/exy/tim/e
05:43:55 <shachaf> `run sed 's/< Sgeo>/<Sgeo>/' quotes | tail -n 1
05:43:56 <HackEgo> ​<Sgeo> I feel like (A.~[:i.[:!#) is verbose
05:44:01 <shachaf> `run sed -i 's/< Sgeo>/<Sgeo>/' quotes
05:44:05 <HackEgo> No output.
05:44:13 <shachaf> "lets hope there were no "casualties""
05:44:39 <Bike> shachaf you're my hero except I don't know what you did exactly? could you write what you did in some other language, like one for airplanes maybe, airplanes are nice.
05:44:57 <shachaf> Bike: imo Sgeo is the expert
05:45:11 <Bike> sgeo: help?
05:45:15 <shachaf> Sgeo: ada plz
05:45:18 <Bike> `quote 943
05:45:20 <HackEgo> 943) <Sgeo> I feel like (A.~[:i.[:!#) is verbose
05:45:47 <shachaf> `run sed s/se/ten/ quotes | tail -n1
05:45:48 <HackEgo> ​<Sgeo> I feel like (A.~[:i.[:!#) is verboten
05:45:50 <Bike> it's.... beautiful...........
05:46:02 <Bike> shachaf: good fix imo
05:47:46 <kmc> music for airports
05:47:53 <kmc> Bike: they should have sent a poet
05:47:54 <Bike> good album
05:48:40 <Bike> coppro: randall?
05:48:53 <kmc> coppro: redbull?
05:49:02 <ais523> `pastequotes Sgeo
05:49:07 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.3314
05:50:06 <Sgeo> shachaf, are you still a Forth?
05:50:14 <Bike> <Sgeo> HOT TENXY TENX BITS
05:50:31 <shachaf> Sgeo: Forth?
05:50:51 <Bike> `quote 869
05:50:53 <HackEgo> 869) <sgeo> GreyKnight, shachaf is like a high-level Forth
05:50:55 <Sgeo> Bike, the xkcd person
05:51:06 <coppro> ^
05:51:14 <Bike> are you threatening coppro? is that how you know?
05:51:24 <Bike> don't make coppro conform to your sick whims.
05:52:37 <ais523> `quote N-Gage
05:52:39 <HackEgo> 86) <ais523> (still, whatever possessed anyone to invent the N-Gage?) \ 832) <HackEgo> 88) <ais523> (still, whatever possessed anyone to invent the N-Gage?) [...] <Sgeo_> Is there supposed to be a joke in 88? <Sgeo_> Unless "N-Gage" is some pseudoscientific spiritual mumbo-jumbo, I don't get it. <Sgeo_> Oh, it's a cell phone gaming thing apparent
05:52:51 <ais523> huh, that quote's still there
05:53:04 <kmc> the joke is that it's bad hth
05:53:36 <ais523> `pastequotes monqy
05:53:41 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.32023
05:53:45 <ais523> kmc: it wasn't intended for the purpose of getting quoted
05:53:46 <Bike> oh for a second i thought that quote 88 was a quote about quote 88
05:54:01 <ais523> `pastlog `addquote <ais523> (still,
05:54:04 <HackEgo> grep: missing )
05:54:06 <ais523> probably needs a backslash
05:54:10 <ais523> `pastlog `addquote <ais523> \(still,
05:54:12 <kmc> 88 is a common neo-nazi codeword and also a lucky number in chinese
05:54:15 <kmc> is that part of it
05:54:22 <Bike> whoa
05:54:39 <Bike> isn't it just 8 though? you can't just like, make more eights for more luck
05:54:41 <HackEgo> No output.
05:56:00 <ais523> 390 is glorious, btw
05:56:01 <ais523> `quote 390
05:56:03 <HackEgo> 390) * Sgeo mutters about broken toilets <Sgeo> #toilet is useless <monqy> is #toilet even a thing <Sgeo> I'm looking for help with toilets
05:56:15 <kmc> hahahaha
05:56:26 <kmc> Bike: more 8s is more lucky duh
05:56:38 <kmc> a lot of chinese grocery stores have names like "Super 88"
05:57:05 <Bike> where does the madness end!
05:57:50 <Sgeo> help i'm addicted to mafia
05:58:49 <ais523> Sgeo: IRC mafia or forum mafia?
05:58:54 <Sgeo> IRC
05:58:55 <ais523> `pastequotes oerjan
05:59:01 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.28766
05:59:03 -!- Bike_ has joined.
05:59:06 <ais523> the forum version's better, and moves slowly enough that it's less addictive
05:59:36 <Sgeo> I doubt I have the attention span for forum version
06:00:03 -!- Bike has quit (Disconnected by services).
06:00:05 -!- Bike_ has changed nick to Bike.
06:00:10 <Bike> don't underrate your ability to play games sgeo
06:00:46 <kmc> the forum version of #toilet
06:03:07 <ais523> `pastequotes elliott
06:03:12 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5421
06:03:26 <ais523> btw, this is a degrees of separation thing
06:03:28 <ais523> read someone's quotes
06:03:38 <ais523> based on them, choose someone it would be interesting to read the quotes of
06:03:45 <ais523> see how many steps it takes to reach elliott
06:03:47 <Bike> Wait, why do you make fun of Sgeo for living in Farmington with that Gregor quote.
06:05:21 <Bike> "245) <elliott> 320 quotes and still not a funny one yet!" gosh this channel is picky
06:07:57 <ais523> `pastequotes zzo38
06:08:03 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.19991
06:10:05 <ais523> bleh, we need a `quotecontext, but it'll be a pain to implement
06:10:56 <coppro> note to self: actually do work this summer
06:11:09 <coppro> there's a prize at the end if I succeed
06:11:20 <coppro> well, two prizes which I value completely wrongly
06:11:52 -!- WeThePeople has quit (Quit: Leaving).
06:12:03 -!- RodgerTheGreat has quit (Quit: RodgerTheGreat).
06:12:04 <Bike> 311) <elliott> AV is better than first-past-the-post, like every voting system apart from the Random Elephant Stomping method <-- i think sortition is probably better than fptp in many situations!!
06:12:30 <ais523> Bike: I was planning to ask elliott what the Random Elephant Stomping method was
06:12:42 <ais523> I sort-of have an idea, but can think of at least two possibilities
06:12:50 <ais523> depending on whether the elephants are aimed at the politicians or the voters
06:12:53 <Bike> it's either sortition or - yeah
06:13:03 <Bike> i see you're well versed in psephology
06:14:13 * ais523 concludes that zzo38 is actually the only sane person on the internet
06:14:25 <Bike> i think we all knew that.
06:15:45 <oklopol> RodgerTheGreat was here? :D
06:16:03 <Sgeo> He left? :(
06:16:23 <Sgeo> `quote 340
06:16:25 <HackEgo> 340) <zzo38> Learn to be Chinese and kill yourself
06:16:33 <Sgeo> I flat out cannot imagine zzo38 saying that.
06:16:41 <ais523> `quote 842
06:16:43 <HackEgo> 842) <zzo38> The reason it isn't more popular is because I wrote it today.
06:16:52 <ais523> that's probably the most typical zzo38 ever
06:17:51 <ais523> `pastequotes fizzie
06:17:56 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.10858
06:18:09 <ais523> btw, reading the zzo38 quotes page made me laugh enough irl I was actually having difficulty breathing
06:18:16 <ais523> let's hope the fizzie quotes page is less potentially fatal
06:19:53 <ais523> OK, 489 is excellent
06:19:55 <ais523> `quote 489
06:19:57 <HackEgo> 489) <fizzie> That's the stupidest thing I've heard all morning. (Though I did wake up five minutes ago, so I haven't had a chance to hear very much.) <fizzie> The "Why are you still asleep? I told the cat to wake you up." comment does come pretty close, though.
06:20:57 <ais523> this was a bad decision I think
06:21:06 <ais523> reading `pastequotes at 30:20am
06:21:09 <coppro> `quote 285
06:21:10 <HackEgo> 285) <zzo38> I think I managed to make Stack Overflow work on gopher, now.
06:21:53 <oklopol> funny how elliott referred to him as the guy who just joined when i think of him as a legendary esolanger of ye olde.
06:24:25 <Sgeo> `pastequotes Bike
06:24:30 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.4035
06:24:41 <Sgeo> ??
06:24:43 <coppro> ok, winner
06:24:46 <coppro> `quote 894
06:24:47 <HackEgo> 894) <fizzie> fungot: Are you the previous version of zzo38? <fungot> fizzie: i run some interactive tex programs
06:24:54 <Bike> Sgeo: i'm too cool for ascii school
06:25:01 <ais523> that one's good but I prefer the quote about the cat
06:25:02 <Sgeo> Why did my browser download it instead of showing it
06:25:20 <coppro> ais523: thank you, you've made my evening^Wmorning
06:25:25 <Bike> because an encoding thing makes pastebot present it as octets instead of text/fuckeverything, I think
06:44:38 <kmc> hm it sends Content-Type: text/plain; charset="ascii"
06:45:05 <kmc> "HTTP/1.1 200 Script output follows"
06:45:12 <kmc> that's a... nontraditional response message
06:45:20 <Bike> lol.
06:45:54 <Bike> also both the weird characters i used actually are ascii so hm
06:49:56 <kmc> which characters are those
06:50:33 <kmc> that server will definitely send charset="ascii" on files containing high-bit bytes :(
06:50:39 <Bike> ^B and ^O
06:50:42 <kmc> heh
06:51:06 <Bike> whippersnapper bitches don't know bout my control characters
06:51:38 <kmc> ahem I think that's called STX and SI
06:52:05 <kmc> Start of Text, Shift In
06:52:18 <kmc> i should start a webdev trend of using ASCII control characters for their original meanings
06:52:22 <kmc> it's like REST but more old school
06:52:51 <Bike> haha oh god yes
06:58:39 <kmc> STAND BY FOR TRANSMISSION
06:59:04 <shachaf> kmc: Do it!
06:59:14 -!- copumpkin has quit (Ping timeout: 272 seconds).
06:59:45 -!- copumpkin has joined.
08:01:26 -!- ais523 has quit.
08:02:22 -!- epicmonkey has joined.
08:11:53 -!- DH____ has quit (Read error: Connection reset by peer).
08:11:59 -!- DHeadshot has joined.
08:18:27 <Sgeo> http://www.python.org/doc/humor/#python-block-delimited-notation-parsing-explained
08:19:41 -!- DHeadshot has quit (Read error: Connection reset by peer).
08:20:18 -!- DHeadshot has joined.
08:26:00 -!- epicmonkey has quit (Ping timeout: 272 seconds).
08:32:10 -!- FreeFull has quit.
09:23:00 -!- Bike has quit (Quit: leaving).
09:33:34 -!- epicmonkey has joined.
09:39:29 -!- Taneb has joined.
09:41:43 <Sgeo> Esolang idea: Normal looking language that makes things like malicious code hidden in plain sight too easy
09:41:57 <Taneb> You mean PHP?
09:43:15 <Jafet> PHP is itself malicious, so it isn't really the same thing.
09:44:00 <shachaf> Sgeo: Hmm, does Ada have that property?
09:45:01 <Sgeo> I doubt it but I don't know Ada and am guessing based on what is effectively Ada marketing.
09:45:59 <shachaf> Sgeo: Well, you should learn Ada.
09:46:02 <shachaf> That way you'd know.
10:00:24 * Sgeo was not expecting Ada to be hard to google
10:00:24 <Sgeo> :/
10:00:35 <Sgeo> Although J is definitely worse
10:00:40 <Sgeo> Google keeps thinking I want Java
10:01:20 <Sgeo> "Pentagon. Hackers are nearly unanimous in observing that, technically, it is precisely what one might expect given that kind of endorsement by fiat; bloated, crockish, difficult to use, and overall a disastrous, multi-billion-dollar boondoggle (one common description was "The PL/I of the 1980s")."
10:01:39 <Sgeo> "It's quite apparent that the evolution of the C family of languages (C, C++, Java, C#) is converging on a language very like Ada, except unfortunately as a kludgepile rather than a clean design.
10:01:39 <Sgeo> "
10:03:34 <Sgeo> "The code name itself was an inside joke: Ada Augusta, Countess of Lovelace, was a famous armchair programmer/system architect who never in her entire life had gotten a single program to compile, link, or run."
10:03:45 <Sgeo> http://bit.csc.lsu.edu/~gb/csc4101/Reading/gigo-1997-04.html (note: humor)
10:06:01 <Sgeo> o.O
10:06:03 <Sgeo> 'Ada initially planted a subconscious Y2K time-bomb: "YEAR: INTEGER range 0..2000;" [Ada79, p.3-12], but then got Third Reich ambitions: "YEAR: INTEGER range 0..4000;" [Ada83, p.3-34], before settling on a Y2.1K time-bomb: "subtype YEAR_NUMBER is INTEGER range 1901..2099;"'
10:06:23 <Sgeo> Does... um... Ada actually come with a YEAR_NUMBER type like that?
10:07:23 <shachaf> http://www.ada-auth.org/standards/12rm/html/RM-9-6.html
10:07:27 <shachaf> subtype Year_Number is Integer range 1901 .. 2399;
10:08:54 <shachaf> Sgeo: You're the Ada expert, though; you should've told me!
10:13:22 <Sgeo> There is an /r/ada
10:13:35 <Sgeo> The motto seems to be "When the software HAS to work"
10:14:11 <shachaf> Sgeo: It might do you good to write software that works.
10:14:34 <Sgeo> I have written software!
10:14:45 <Sgeo> That mostly but not entirely works
10:18:07 <shachaf> That's why you need Ada.
10:18:50 <Sgeo> Yes because a million compile-time checks will totally help when I make a wrong assumption about incoming data
10:19:08 <Sgeo> And when I can't figure out an optimal algorithm for a problem
10:19:26 <Taneb> Hmm
10:19:33 <Taneb> I could like Basshunter
10:19:48 <Sgeo> That's not a could, that's a must. It's mandatory.
10:20:47 <shachaf> Sgeo: Look, first learn Ada, then talk.
10:21:10 <Sgeo> I'm reading one of the wikibooks
10:22:07 <Sgeo> "This book is intended for professional readers."
10:22:14 * Sgeo is totally paid to just sit around and read
10:23:58 <Sgeo> shachaf, is it ok if I read a tutorial written for Ada 2005?
10:24:22 <shachaf> Ada 2012 is better.
10:24:28 <shachaf> But whatever helps you learn the language.
10:26:32 * Sgeo can guess at a few features Ada wouldn't have
10:26:56 <Sgeo> macros, changing stuff around at run-time
10:27:34 <Sgeo> I don't know if it has any functional programming stuff, but wouldn't be surprised either way (as in, doubt it would be there from way back when, but could have been added in later for all I know)
10:30:13 <Sgeo> Oh hey Ada for is a foreach
10:30:21 <Sgeo> Or, wait, no
10:30:36 <Sgeo> for variable in range loop
10:30:46 <Sgeo> Guess I don't know what constitutes a range yet
10:32:27 * Sgeo is shocked that shachaf is not in #ada
10:32:41 <shachaf> I didn't know there was a channel!
10:33:02 <Taneb> It's in aid a' Ada
10:33:18 <shachaf> Hmm, some familiar names.
10:35:14 <Sgeo> http://www.ada2012.org/
10:35:25 <Sgeo> There's a video about Ada 2012
10:38:24 <Sgeo> They're still making comparisons to C++
10:38:25 <Sgeo> :(
10:38:58 <Sgeo> Could they at least _look_ at other languages? Looking at languages that existed decades ago stops you from seeing new ideas, some, if not all, of which may be useful
10:41:48 <shachaf> There aren't many languages that seriously try to compete with C++ in its niche.
10:41:54 <shachaf> (Quite a big niche.)
10:43:15 <Jafet> @quote multi.?paradigm
10:43:15 <lambdabot> No quotes match. BOB says: You seem to have forgotten your passwd, enter another!
10:43:48 <Sgeo> "Conditional expressions provide a compact notation for a common idiom."
10:44:25 <Sgeo> That... a) That seems late to get that, but b) Leaving it out completely makes some sense
10:44:36 <Sgeo> So, adding it in 2012 just... doesn't make sense to me
10:46:24 <Jafet> http://rule34.paheal.net/post/list/LHC-tan/1
10:47:10 <Sgeo> ^ NSFW. And screw the ads on that site. And what character is that?
10:47:27 <Jafet> http://rule34-data-003.paheal.net/_images/d6855b9194279e9cae3087959ee995fd/780128%20-%20LHC-tan%20Ru-Chans%20large_hadron_collider.jpg
10:47:27 <Sgeo> ...large hadron collider?
10:48:30 <Jafet> Yes, it should be noted that the website named "rule34.paheal.net" may contain pornographic images
10:50:41 <shachaf> Sgeo: Axmax6 knows Haskell.
10:54:40 <Sgeo> What's SPARK?
10:56:32 <Sgeo> wtf is jvm-windows
11:01:17 <Sgeo> Ada has goto.
11:02:15 <Sgeo> Oh, SPARK is a restiction of Ada I think
11:02:17 <Sgeo> Restriction
11:15:00 <fizzie> Hmf. This computer is not mounting my phone as a USB mass storage device for some reason. (It did mount a stick a while ago.)
11:20:10 -!- Phantom_Hoover has joined.
11:21:12 <fizzie> Oh, I suppose it's the phone's fault, it says "device storage in use". Curious.
11:36:39 -!- DHeadshot has quit (Read error: Connection reset by peer).
11:37:16 * Sgeo decides that in J, the next number after negative 1 is infinity
11:38:51 <shachaf> Sgeo: What about Ada?
11:39:38 <Sgeo> Would be nice to find an actual tutorial on recent Ada
11:39:46 <Sgeo> Wikibooks does not count as a tutorial as far as I'm concerned
11:40:26 <shachaf> Maybe you should ask in #ada instead of repeating platitudes.
11:45:17 -!- epicmonkey has quit (Remote host closed the connection).
11:45:36 -!- epicmonkey has joined.
11:55:52 <Sgeo> "That said, it really isn't used nearly enough. For instance, it is naturally almost immune to buffer overflow exploits, so it really ought to be the preferred language for OS development."
11:56:04 <Sgeo> Because Ada is the only language immune to buffer overflow exploits
11:59:06 <Taneb> How can I tell emacs that this file with a weird extension is XML and should be syntax-highlighted as such?
11:59:47 <Sgeo> http://www.adapower.com/index.php?Command=Class&ClassID=FAQ&CID=359
11:59:54 <Sgeo> Ada vs. Eiffel flamewars?
12:00:49 <shachaf> Ada > Eiffel, obviously.
12:00:58 <shachaf> Sgeo: You could also learn Sather, though.
12:01:10 <shachaf> sather: better than eiffel????????
12:01:33 -!- oerjan has joined.
12:05:49 <FireFly> Sgeo: J's number literals are sorta weird
12:05:58 <FireFly> Especially negative infinity... "__"
12:06:58 <Sgeo> If a rank _2 verb operates on pieces of 2 ranks lower than its argument, and a rank _1 verb operates on pieces of 1 rank lower than its argument, what rank verb operates on pieces of rank 0 lower than its argument?
12:08:43 * FireFly didn't know about negative ranks
12:09:25 <FireFly> Hmm, didn't elliott dabble with J ages ago?
12:09:47 <Sgeo> Well, nouns can't be negative rank
12:10:09 <Sgeo> ) <"_1 (1 2 3)
12:10:09 <jconn> Sgeo: +-+-+-+
12:10:10 <jconn> Sgeo: |1|2|3|
12:10:10 <jconn> Sgeo: +-+-+-+
12:10:19 <shachaf> ) sqrt 2
12:10:19 <jconn> shachaf: |value error: sqrt
12:10:20 <jconn> shachaf: | sqrt 2
12:10:24 <shachaf> ) sqrt 3
12:10:25 <jconn> shachaf: |value error: sqrt
12:10:25 <jconn> shachaf: | sqrt 3
12:10:26 <Sgeo> ) %: 2
12:10:26 <jconn> Sgeo: 1.41421
12:10:29 <shachaf> ) sqrt 4
12:10:29 <jconn> shachaf: |value error: sqrt
12:10:29 <jconn> shachaf: | sqrt 4
12:10:32 <shachaf> Hmm.
12:10:35 <shachaf> It's broken.
12:10:36 <shachaf> ) sqrt 5
12:10:37 <jconn> shachaf: |value error: sqrt
12:10:37 <jconn> shachaf: | sqrt 5
12:10:40 <FireFly> You're broken
12:10:48 <shachaf> HireFly
12:10:49 <Sgeo> ) sqrt =: %:
12:10:49 <jconn> Sgeo: |ok
12:10:53 <FireFly> Hachaf
12:11:13 <Sgeo> ) sqrt 5
12:11:13 <jconn> Sgeo: 2.23607
12:11:43 <Sgeo> ) sqrt^:(_1) 5
12:11:43 <jconn> Sgeo: 25
12:11:55 <shachaf> > (sqrt 5 + 1) / 2
12:11:57 <lambdabot> 1.618033988749895
12:11:58 <shachaf> ) (sqrt 5 + 1) / 2
12:11:59 <jconn> shachaf: |value error: sqrt
12:11:59 <jconn> shachaf: | ( sqrt 5+1)/2
12:12:01 <shachaf> Hmm.
12:12:03 <shachaf> Still broken.
12:12:19 <Sgeo> ) sqrt
12:12:20 <jconn> Sgeo: %:
12:12:29 <shachaf> ) 1 + 1
12:12:29 <jconn> shachaf: 2
12:12:39 -!- Sgeo|web has joined.
12:12:42 <Sgeo|web> ) sqrt
12:12:43 <jconn> Sgeo|web: |value error: sqrt
12:12:48 <FireFly> / isn't division
12:12:56 <Sgeo> % is divisio
12:13:00 <Sgeo> division
12:13:02 <FireFly> / is (basically) a fold
12:13:06 <Sgeo> And I guess we all have separate sandboxes?
12:13:09 -!- Sgeo|web has quit (Client Quit).
12:13:13 <shachaf> ) 4 / 2
12:13:13 <jconn> shachaf: |domain error
12:13:13 <jconn> shachaf: | 4/2
12:13:16 <FireFly> ) +/ i.10 NB. sum of the first 10 integers
12:13:16 <jconn> FireFly: 45
12:13:19 <shachaf> That should be 2
12:13:24 <Sgeo> ) 4 % 2
12:13:24 <jconn> Sgeo: 2
12:13:26 <shachaf> This language is broken.
12:13:30 <shachaf> Sorry.
12:13:33 <FireFly> No, you can't fold the operator 4 over the list [2]
12:13:44 <shachaf> FireFly: Um, / means division.
12:13:47 <shachaf> Can't you read?!
12:14:06 <FireFly> > 4 ÷ 2
12:14:06 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
12:14:07 <Sgeo> ) / =: % NB. probably won't work
12:14:07 <jconn> Sgeo: |syntax error
12:14:07 <jconn> Sgeo: | /=:%
12:14:10 <FireFly> lambdabot: you're broken
12:14:13 <FireFly> You can't divide :(
12:15:00 <FireFly> Pretty sure / is a solidus btw, not a division operator ^_^
12:15:05 <Jafet> FireFly, your argument is invalid.
12:15:20 <FireFly> :(
12:16:42 <fizzie> > 2 ⟌ 4
12:16:42 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
12:16:51 <fizzie> (U+27CC LONG DIVISION.)
12:17:38 <Sgeo> > let () = (/) in 4 2
12:17:39 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
12:17:41 <Sgeo> aw
12:17:49 <Sgeo> Doubt it could be made to work
12:17:50 <shachaf> fizzie: It should be called AMERICAN LONG DIVISION
12:17:55 <shachaf> We learned it the other way.
12:18:01 <Sgeo> > let = (/) in 4 2
12:18:02 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
12:18:10 <Sgeo> > ""
12:18:11 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
12:18:14 <Sgeo> :(
12:18:20 <fizzie> Unicode character names are always so... Unicodey. U+27C1 WHITE TRIANGLE CONTAINING SMALL WHITE TRIANGLE.
12:18:54 <shachaf> fizzie: That looks like a small white circle to me. :-(
12:21:10 <FireFly> ) (0.5&* @: (] + 2&%))^:(_) 4
12:21:10 <jconn> FireFly: 1.41421
12:21:21 <FireFly> Hm
12:21:26 <Deewiant> > sqrt 2
12:21:28 <lambdabot> 1.4142135623730951
12:21:34 <fizzie> !haskell main = putStrLn $ let bläh = 42 in bläh
12:21:37 <EgoBot> runghc: <stdin>: hGetContents: invalid argument (invalid byte sequence)
12:21:41 <fizzie> EgoBot: You're equally silly. :/
12:22:34 * Sgeo understands a little of what FireFly did
12:22:48 <Sgeo> It uses some sqrt approximation algorithm I guess
12:22:58 <Sgeo> That ^:(_) means repeat until fixed point
12:23:04 <FireFly> It's http://en.wikipedia.org/wiki/Methods_of_computing_square_roots#Babylonian_method
12:23:25 <FireFly> (] + 2&%) is essentially \x -> x + 2/x
12:23:32 <Sgeo> It repeatedly does this: Adds argument to.... I knew that
12:24:12 <Sgeo> Although, couldn't you have used a ... not a fork, the other one
12:24:17 <Sgeo> ) (0.5&* @: ( + 2&%))^:(_) 4
12:24:18 <jconn> Sgeo: 1.41421
12:24:20 <FireFly> hook?
12:24:21 <Sgeo> :p
12:24:24 <Sgeo> yes
12:24:24 <FireFly> Probably, but I forgot how they worked
12:24:34 <FireFly> So I added a ] to be sure
12:25:04 <FireFly> Hm, (f g) y = y f (g y) I guess
12:25:06 <FireFly> So yeah, that'd work
12:25:14 <Sgeo> ) -: 2
12:25:14 <jconn> Sgeo: 1
12:25:20 <Sgeo> ) (-: @: ( + 2&%))^:(_) 4
12:25:20 <jconn> Sgeo: 1.41421
12:25:31 <oerjan> `pastelogs patch
12:25:35 <Sgeo> ) (-: @: ( + +:))^:(_) 4
12:25:36 <jconn> Sgeo: _
12:25:38 <Sgeo> !
12:25:45 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.4986
12:25:58 <Sgeo> What's doubling again, bluh
12:26:01 <FireFly> Um, that's 2/, not 2*
12:26:11 <Sgeo> Oh, derp
12:26:12 <FireFly> or rather, 2%, not 2* :P
12:26:16 <fizzie> `run echo 'main = putStrLn $ show (let (÷) = (/) in 4 ÷ 2)' > /tmp/l.hs && runghc /tmp/l # save us from Unicode problems HackEgo?
12:26:19 <oerjan> `pastelogs hg.*patch
12:26:20 <HackEgo> 2.0
12:26:24 <Sgeo> ) (-: @: ( + +:))^:(_) 4 5 6
12:26:25 <jconn> Sgeo: _ _ _
12:26:26 <fizzie> HackEgo: Thank you!
12:26:29 <Sgeo> ) (-: @ ( + +:))^:(_) 4 5 6
12:26:32 <jconn> Sgeo: _ _ _
12:26:32 <Sgeo> :(
12:26:42 <Sgeo> ) (-: @ ( + +:))^:(_)"0 4 5 6
12:26:42 <jconn> Sgeo: |length error
12:26:42 <jconn> Sgeo: | (-:@(++:))^:(_)"0 4 5 6
12:26:46 <Sgeo> ) (-: @ ( + +:))^:(_)"(0) 4 5 6
12:26:46 <jconn> Sgeo: _ _ _
12:26:54 <Sgeo> Oh, I'm still using the broken one
12:26:56 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.9543
12:26:58 <fizzie> (Maybe there was already a `haskell or something.)
12:26:58 <oerjan> goddammit HackEgo don't quit now, i'm trying to repair you
12:27:12 <Sgeo> ) (-: @: ( + 2&%))^:(_) 4 5 6
12:27:12 <jconn> Sgeo: 1.41421 1.41421 1.41421
12:27:23 <Sgeo> Hmm, I don't think I entirely understand @: vs @
12:27:25 <FireFly> the parameter is the initial guess btw
12:27:32 <Sgeo> oh
12:27:45 <FireFly> the hard-coded 2 is the thing you're sqrt-ing
12:27:52 <Sgeo> I still greatly simplified it
12:27:55 <FireFly> Yep
12:28:25 <Sgeo> Replace composition with a cap ...
12:28:39 <Sgeo> ) ([: -: ( + 2&%))^:(_) 4
12:28:40 <jconn> Sgeo: 1.41421
12:28:59 <Sgeo> ) ([:-:+2&%)^:(_) 4
12:29:00 <jconn> Sgeo: |domain error
12:29:00 <jconn> Sgeo: | ([:-:+2&%)^:(_)4
12:29:07 <Sgeo> buh
12:30:43 <Deewiant> > let sqrt' y = fst . fromJust . find (uncurry (==)) . (zip`ap`tail) $ iterate f y where f x = (x + y/x) / 2 in sqrt' 2
12:30:45 <lambdabot> 1.414213562373095
12:31:08 <oerjan> `run hg diff -r1891:1871 | patch -p1
12:31:10 <Deewiant> Almost as short and equally readable
12:31:14 <HackEgo> patching file 'bin/?' \ patching file 'bin/?e' \ patching file bin/delquote \ patching file bin/delquotee
12:31:36 <FireFly> It's not *that* bad to read J after you get used to it, IMO
12:31:38 <oerjan> `addquote Testing this bitch
12:31:42 <HackEgo> 944) Testing this bitch
12:31:46 <oerjan> `delquote 944
12:31:48 <FireFly> But then again, maybe it's not worth getting used to it..
12:31:51 <HackEgo> ​*poof* Testing this bitch
12:32:21 <oerjan> `quote 943
12:32:22 <HackEgo> 943) <Sgeo> I feel like (A.~[:i.[:!#) is verbose
12:32:38 <oerjan> whee!
12:33:01 <Sgeo> How did delquote break anyway?
12:33:01 <oerjan> (Jafet messed things up just before HackEgo crashed for days)
12:33:21 <Sgeo> That was a very fast answer
12:33:33 <oerjan> yw :P
12:33:38 -!- sebbu has quit (Ping timeout: 272 seconds).
12:37:36 <Sgeo> 1) Tony Hoare severely criticized Ada in his Turing Award lecture,
12:37:37 <Sgeo> saying (literally) that the future of mankind was at stake if we were
12:37:37 <Sgeo> to use Ada, and that Ada was "doomed to succeed." Who's gonna argue
12:37:37 <Sgeo> with Hoare? If he said it, it must be true, right?
12:38:08 <Phantom_Hoover> do people actually use ada
12:38:41 <shachaf> Hoare said so!
12:38:46 <shachaf> Who's gonna argue with Hoare?
12:39:16 <Phantom_Hoover> if hoare said you should jump off a cliff would you do it
12:40:01 <Sgeo> http://www.adapower.com/index.php?Command=Class&ClassID=Advocacy&CID=39
12:40:18 -!- sebbu has joined.
12:40:18 -!- sebbu has quit (Changing host).
12:40:18 -!- sebbu has joined.
12:52:04 <Sgeo> subtypes remind me a little of newtype except without explicit dealing with the constructor (still not sure about that though)
12:52:14 <Sgeo> Explicit casts are needed for them
12:53:02 <fizzie> Blerg, the air is full of wet snow.
12:53:41 <Phantom_Hoover> Sleet, fizzie.
12:53:56 <Phantom_Hoover> We call that sleet.
12:54:22 <Sgeo> more werewolves time
12:54:29 <oerjan> sludd og snøbyger
12:54:57 <fizzie> Phantom_Hoover: That's a silly word.
12:55:24 <Phantom_Hoover> That's what everyone else thinks of finnish words!
12:55:41 <fizzie> https://dl.dropbox.com/u/113389132/Misc/20130130-so_much_snow.jpg though it doesn't really register on-camera.
12:55:47 <Sgeo> Game starting in #wolfgame
12:56:24 <fizzie> `run words --finnish 20 # not silly at all
12:56:28 <HackEgo> korvallesiinsä kiinneperia himoitukemmältä hentäville astaan tihaisemmiltako ahduintämää tiensa ahkeampaamallisemme lipusketilasi kustaville ahdentäviertämmä houkuttumaksenemmäs toisimpiamme hallaan kullanne hankaimmille hyyttävinenikoittelevillä levanne lasi
12:56:41 <Sgeo> Phantom_Hoover, aww :(
12:56:44 <Phantom_Hoover> kustaville!
12:56:59 <Phantom_Hoover> Sgeo, i'm not getting involved in your creepy wolf games!
12:57:35 <Deewiant> 3 meaningful words in that set AFAICT
12:57:53 <shachaf> `run words --portuguese 20
12:57:55 <HackEgo> correal estionis nites vidasterirei esmemos dolarasourizaria vertem abombarbolsa reendalandá apitas autelemos desafá flastes reencatombie frinhado embeijareis infrinhas esqua formelhava engalhar
12:58:03 <shachaf> `run words --hebrew 20
12:58:04 * oerjan wishes vim had a command to go to the matching bracket to the one you just deleted; or alternatively a way to delete two matching brackets _without deleting what's between them
12:58:05 <HackEgo> ​סות ואברכי ממבול פרס העוש לנטות ממקוד גחלת נילוף חצמוד להטתברכה דמליה ומרי היתי בשבישרא בתפלג נקין וחט וציאל ומוכר
12:58:24 <oerjan> *has, i don't really _know_ it doesn't
12:58:34 <oerjan> *_without_
12:58:44 <shachaf> ===oerjan
12:58:46 <shachaf> s/.//
12:58:47 <Deewiant> oerjan: surround.vim
12:58:53 <Phantom_Hoover> `words
12:58:57 <HackEgo> dysfore
12:59:00 <fizzie> Deewiant: Kustaville, hallaan, lasi?
12:59:04 <Deewiant> fizzie: Yep
12:59:19 <Deewiant> oerjan: I.e. AFAIK plain vim doesn't but with that plugin you can do it
12:59:23 <oerjan> shachaf: what?
12:59:35 <shachaf> oerjan: I agree.
13:00:21 <Phantom_Hoover> `words --canadian-english-insane 20
13:00:23 <HackEgo> emsellumit proup machizzlin felladien dochia flambernelo gainvive klat nonucle tumboid priorae ecgoniacean preaniki pastern misdefahda maedialiancialization ster neum previlfuria unrepa
13:00:35 <fizzie> Deewiant: You could argue for "kullanne" to be a dialectal/colloquial form of "kultanne" (in the 'sweetheart' sense), I think.
13:01:01 <Phantom_Hoover> `words --irish 20
13:01:02 <Deewiant> fizzie: I don't think you could, but maybe.
13:01:03 <HackEgo> ninde-sín staí jainn raiméin lánchuladh loineorpair bpolaí heirméaróirín leathghéiseac d'amachta tríoga táit scraigh vótáilte scaothúlaíomaith aithirsteipt héachaiscríoga straíche hiosánta staonadar
13:01:20 <Phantom_Hoover> yeah that pretty much looks like irish
13:02:25 <fizzie> Deewiant: Oh, an also for being a part of the negative present potential tense of "kullata"; hän ei kullanne sitä kirjaa.
13:03:14 <Deewiant> fizzie: Ah, true, no argument there. That's a 20% hit rate for the generator then.
13:07:14 <fizzie> And if you allow for given names of people (e.g. by choosing some some quasi-official source of "valid" "Finnish" names), there's also "astaan". (There are 6074 Finnish women named Asta in the national registry, so it's not a particularly rare one; plus it has an entry in the name day calendars.)
13:08:09 <fizzie> Admittedly it does have the wrong case then.
13:35:59 <Taneb> Is it possible to license a license?
13:37:06 <fizzie> Maybe, if you have a license for it?
13:38:34 <Taneb> Imagine something like GPL where you had to share under the same license, but the license itself was proprietary
13:39:30 <Taneb> Oh dear god I'm in 10 IRC channels on 2 servers
13:39:34 <Taneb> This is unexpected
13:41:03 <oerjan> Taneb is approaching irc singularity
13:41:50 <Taneb> Okay, now I'm only in 9
13:41:53 <Taneb> That's a bit nicer
13:47:18 <fizzie> Speaking of which, does anyone happen to know the freenode channel limit offhand?
13:47:34 <fizzie> ISTR that IRCnet had something like 30.
13:47:58 <fizzie> CHANLIMIT=#:120 hokay.
13:48:05 <fizzie> That's a big number.
13:52:32 <Deewiant> EFnet CHANLIMIT=&#:20, IRCnet CHANLIMIT=#&!+:21.
13:53:26 <Taneb> "the fly species inhabiting North America, Hawaii, Australia, and Papua New Guinea are separated by vast oceanic expanses and dont have Facebook."
13:54:08 <fizzie> Oh, twenty-one.
14:00:47 -!- noam__ has quit (Read error: Connection reset by peer).
14:01:13 -!- noam__ has joined.
14:02:17 <oerjan> > ord '>'
14:02:19 <lambdabot> 62
14:03:21 -!- Phantom_Hoover has quit (Quit: Leaving).
14:03:27 -!- Phantom_Hoover has joined.
14:06:38 <fizzie> ^ord >
14:06:38 <fungot> 62
14:06:41 <fizzie> JUST CHECKING
14:06:54 <oerjan> OKAY
14:07:51 <shachaf> > ord 'ø'
14:07:52 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
14:07:56 <shachaf> ørdjan
14:09:18 <fizzie> ^ord ø
14:09:18 <fungot> 195 184
14:09:26 <fizzie> Oh well.
14:09:39 <shachaf> That don't look right.
14:09:46 <shachaf> ^ord ab
14:09:46 <fungot> 97 98
14:12:35 <fizzie> `ord ø
14:12:36 <HackEgo> 248
14:12:41 <oerjan> <shachaf> "lets hope there were no "casualties"" <-- there wasn't, but still dammit...
14:12:56 <fizzie> ^ord is very byte-oriented.
14:12:56 <fungot> 105 115 32 118 101 114 121 32 98 121 116 101 45 111 114 105 101 110 116 101 100 46
14:13:15 <fizzie> fungot: Yes, thank you, very helpful.
14:13:15 <fungot> fizzie: if for some practical program- ming applications. tod consists of tiny dots called pixels.
14:13:18 <shachaf> oerjan: What?
14:13:27 <shachaf> Should I have not done it?
14:13:29 <oerjan> fizzie: you've noticed my hints that we need a utf-8 version, right?
14:13:36 <shachaf> I guesss I could've just let you do it.
14:13:48 <shachaf> What's the "right way to fix" it?
14:13:48 <oerjan> shachaf: well you could have checked if anything _did_ break.
14:13:52 <fizzie> oerjan: You can just use `ord for your newfangled UTF-8s.
14:14:03 <oerjan> shachaf: to prepend the line number (which is also the quote number)
14:14:13 <oerjan> wa`t
14:14:20 <oerjan> `run which ord
14:14:22 <HackEgo> ​/hackenv/bin/ord
14:14:26 <oerjan> `cat bin/ord
14:14:27 <HackEgo> ​#!/bin/sh \ echo "$@" | perl -C7 -pe 'chomp; $_ = join(" ", map { ord } split //, $_);'
14:14:45 <oerjan> `ord øho
14:14:46 <shachaf> oerjan: But I don't know sed.......................................
14:14:46 <HackEgo> 248 104 111
14:14:48 <fizzie> `ord ☃ ♥ ø
14:14:50 <HackEgo> 9731 32 9829 32 248
14:15:07 <oerjan> shachaf: sad trombone
14:15:13 <shachaf> I bet it's something simple like "prepend the line number".
14:15:16 <oerjan> fizzie: yay!
14:15:23 <shachaf> Just like it is in vim/ex/ed?????????????????????????
14:15:41 <oerjan> shachaf: yep. you may note the name similarity with the last one.
14:16:33 <shachaf> oerjan: For years I thought sed stood for "super ed"
14:17:17 <oerjan> fizzie: wait you rascal you made that just before i asked...
14:17:22 <fizzie> oerjan: Yes, I did.
14:17:34 -!- boily has joined.
14:17:38 <Jafet> `run locale
14:17:39 <HackEgo> LANG=en_NZ.UTF-8 \ LANGUAGE= \ LC_CTYPE="en_NZ.UTF-8" \ LC_NUMERIC="en_NZ.UTF-8" \ LC_TIME="en_NZ.UTF-8" \ LC_COLLATE="en_NZ.UTF-8" \ LC_MONETARY="en_NZ.UTF-8" \ LC_MESSAGES="en_NZ.UTF-8" \ LC_PAPER="en_NZ.UTF-8" \ LC_NAME="en_NZ.UTF-8" \ LC_ADDRESS="en_NZ.UTF-8" \ LC_TELEPHONE="en_NZ.UTF-8" \ LC_MEASUREMENT="en_NZ.UTF-8" \ LC_IDENTIFICATION="en_NZ
14:17:50 <fizzie> There's probably some reason why it's en_NZ?
14:18:38 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
14:19:07 <oerjan> fizzie: i think Gregor got slightly annoyed with our nagging it should have a properly set locale
14:19:16 <fizzie> `run env LC_MESSAGES=fi_FI.UTF-8 rm /dev/null # they sound so hilariously silly
14:19:17 <HackEgo> rm: tiedostoa ”/dev/null” ei voi poistaa: Kirjoitussuojattu tiedostojärjestelmä
14:19:54 -!- Phantom_Hoover has joined.
14:20:18 <boily> fizzie: is that "rm: impossible de supprimer « /dev/null »: Permission non accordée"?
14:20:33 <fizzie> `run env LC_MESSAGES=nb_NO.UTF-8 rm /dev/null
14:20:34 <HackEgo> rm: cannot remove «/dev/null»: Filsystem med kun lesetilgang
14:20:40 <fizzie> That's a nice hybrid.
14:21:05 <fizzie> Or maybe "cannot remove" is Norwegian, who knows.
14:22:19 <Gregor> "cannot remove" is Norwegian, but "cannot" has a meaning close to English's "remove", and "remove" inverts the meaning of the preceding verb, like "cannot".
14:23:17 <fizzie> The Finnish version says "write-protected filesystem", instead of "read-only".
14:27:58 <shachaf> `run env LC_MESSAGES=he_IL.UTF-8 rm /dev/null
14:27:59 <HackEgo> rm: cannot remove `/dev/null': Read-only file system
14:28:04 <shachaf> Hmph.
14:33:57 -!- ogrom has joined.
14:34:46 <oerjan> fizzie: no it isn't.
14:37:19 <fizzie> `run env LC_MESSAGES=ja_JP.UTF-8 rm /dev/null
14:37:20 <HackEgo> rm: cannot remove `/dev/null': 読み込み専用ファイルシステムです
14:37:28 <fizzie> Seems that it's also Japanese.
14:37:47 <fizzie> A rather curious linguistic phenomenon.
14:37:53 <fizzie> `run env LC_MESSAGES=zh_CN.UTF-8 rm /dev/null
14:37:54 <boily> I got `/dev/null' を削除できません: 許可がありません
14:37:54 <HackEgo> rm: 无法删除"/dev/null": 只读文件系统
14:40:25 <Taneb> Phantom_Hoover, is your DF mod with the coal online at all?
14:40:40 <Phantom_Hoover> Er... I don't think so.
14:40:50 <Phantom_Hoover> Having a bad time with mineral distributions?
14:41:10 <Taneb> Having a bad time being bored, want to go on Dwarf Fortress
14:41:21 <Taneb> So, yes
14:41:38 <Phantom_Hoover> I guess I can paste most of the relevant files.
14:42:37 <Phantom_Hoover> http://sprunge.us/DZBh is inorganic_stone_mineral.txt
14:43:03 <Phantom_Hoover> http://sprunge.us/MjgN is reaction_smelter.txt
14:43:18 <Phantom_Hoover> http://sprunge.us/KDLH is entity_default.txt
14:43:28 <Phantom_Hoover> That should do it.
14:44:52 <Taneb> Thanks
14:46:15 -!- augur has quit (Remote host closed the connection).
14:46:41 -!- augur has joined.
14:48:18 -!- augur_ has joined.
14:48:23 -!- augur has quit (Read error: Connection reset by peer).
14:52:41 -!- augur_ has quit (Ping timeout: 240 seconds).
14:59:32 <Sgeo> I hate absolutely everyone in #wolfgame
14:59:38 <Sgeo> They can all suck a burning match
14:59:50 <shachaf> How's Ada going?
15:00:05 <shachaf> Stop h8in', start learnin'.
15:00:07 <Sgeo> Ada is on the back-burner due to my mafia addiction
15:00:39 <Phantom_Hoover> why are you learning ada Sgeo
15:00:58 <shachaf> Phantom_Hoover: because it's "the cool language to" learn??
15:02:04 <Sgeo> Phantom_Hoover, because shachaf told me to
15:02:43 <boily> Sgeo: if you're into ada, may I suggest you VHDL?
15:02:55 <Phantom_Hoover> why on earth would you listen to anything shachaf tells you
15:03:06 <Phantom_Hoover> he's untrustworthy!
15:03:26 <Sgeo> The ... marketing around Ada is interesting at least.
15:03:34 <shachaf> Phantom_Hoover: I thought Sgeo could use some guidance.
15:03:56 <Phantom_Hoover> shachaf don't do that... it's unethical...
15:04:33 <shachaf> Which part?
15:04:47 <Phantom_Hoover> making sgeo do stupid things because he doesn't know any better
15:05:10 <shachaf> If Ada is so stupid, then why do people in #ada say it's good?
15:05:33 <Phantom_Hoover> they're like sgeo!
15:05:51 <Sgeo> There ARE language channels where the people in them don't claim their language is good.
15:05:53 <shachaf> Aimless and in need of guidance?
15:05:55 <Sgeo> ##php
15:06:23 <Phantom_Hoover> shachaf, aimless and in need of guidance by someone who isn't you!
15:06:43 <shachaf> Phantom_Hoover: I was hoping they could all guide each other for a bit.
15:06:51 <shachaf> And maybe Sgeo could go be guided there.
15:07:44 <Phantom_Hoover> But you know what they say, the blind can't lead an elephant into a glass house..
15:10:10 <shachaf> Sgeo: Did you install GNAT yet?
15:10:16 <Sgeo> Not yet
15:10:53 <shachaf> It's in APT, you know.
15:11:25 <shachaf> Phantom_Hoover: After Ada I'm thinking I'll have him learn some MMIX assembly.
15:11:31 <shachaf> That's actually useful!
15:14:54 -!- Lumpio- has quit (Ping timeout: 256 seconds).
15:15:26 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
15:16:35 -!- Phantom_Hoover has joined.
15:17:14 -!- Arc_Koen has joined.
15:20:51 -!- Taneb has quit (Ping timeout: 272 seconds).
15:22:38 <Phantom_Hoover> incidentally, fuck the cross product
15:23:03 <shachaf> What's the matter with cross products?
15:24:06 <Phantom_Hoover> they're too damn chiral
15:24:08 -!- FreeFull has joined.
15:24:14 -!- oerjan has quit (Quit: reilraE).
15:26:09 <shachaf> Phantom_Hoover: do you love monoids
15:26:38 <Phantom_Hoover> i have no strong opinions on them
15:27:03 <shachaf> i love monoids
15:27:05 <shachaf> they are so easy
15:27:28 -!- augur has joined.
15:29:05 -!- impomatic has joined.
15:37:30 <Sgeo> Ok, I apparently can get very mean sometimes
15:37:42 <Sgeo> I don't show it here, but I just said, in someone's channel
15:37:47 <Sgeo> <Sgeo> So, if this channel isn't supposed to have fools, why are you here?
15:39:12 <shachaf> You would never say that in here.
15:39:17 <shachaf> Everyone in #esoteric is a fool.
15:40:52 <boily> I ain't no fool!
15:41:09 <boily> (at least, not your regular, plebeian kind of fool.)
15:42:02 <shachaf> @wn fool
15:42:02 <lambdabot> *** "fool" wn "WordNet (r) 3.0 (2006)"
15:42:03 <lambdabot> fool
15:42:03 <lambdabot> n 1: a person who lacks good judgment [syn: {fool}, {sap},
15:42:03 <lambdabot> {saphead}, {muggins}, {tomfool}]
15:42:03 <lambdabot> 2: a person who is gullible and easy to take advantage of [syn:
15:42:04 <lambdabot> [15 @more lines]
15:42:11 <shachaf> @more
15:42:12 <lambdabot> {chump}, {fool}, {gull}, {mark}, {patsy}, {fall guy},
15:42:12 <lambdabot> {sucker}, {soft touch}, {mug}]
15:42:12 <lambdabot> 3: a professional clown employed to entertain a king or nobleman
15:42:14 <lambdabot> in the Middle Ages [syn: {jester}, {fool}, {motley fool}]
15:42:17 <lambdabot> v 1: make a fool or dupe of [syn: {fool}, {gull}, {befool}]
15:42:18 <lambdabot> [10 @more lines]
15:42:22 <shachaf> boily: You think you have good judgment?
15:42:25 <shachaf> @more
15:42:25 <lambdabot> 2: spend frivolously and unwisely; "Fritter away one's
15:42:25 <lambdabot> inheritance" [syn: {fritter}, {frivol away}, {dissipate},
15:42:25 <lambdabot> {shoot}, {fritter away}, {fool}, {fool away}]
15:42:26 <lambdabot> 3: fool or hoax; "The immigrant was duped because he trusted
15:42:28 <lambdabot> everyone"; "You can't fool me!" [syn: {gull}, {dupe},
15:42:30 <lambdabot> [5 @more lines]
15:42:34 <elliott> is this necessary
15:42:41 <shachaf> hi elliott
15:43:27 <boily> see, I need paragraphs of explanations to make me realise my foolness!
15:44:47 <Jafet> Foolsub and wisdom.
15:45:23 <shachaf> @more
15:45:23 <lambdabot> {slang}, {befool}, {cod}, {fool}, {put on}, {take in}, {put
15:45:23 <lambdabot> one over}, {put one across}]
15:45:23 <lambdabot> 4: indulge in horseplay; "Enough horsing around--let's get back
15:45:23 <lambdabot> to work!"; "The bored children were fooling about" [syn:
15:45:23 <lambdabot> {horse around}, {arse around}, {fool around}, {fool}]
15:48:07 -!- Taneb has joined.
15:56:17 <Gregor> <fizzie> There's probably some reason why it's en_NZ? // Are you not satisfied, you antikiwi?
15:56:31 <shachaf> hi Gregor
15:56:40 <shachaf> `wehlcohme Gregor
15:56:42 <HackEgo> Grehgohr: Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
15:57:17 -!- Gregor has changed nick to TwilightSpockle.
16:02:58 <elliott> `run ls bin/*h*h*
16:02:59 <HackEgo> bin/?hh \ bin/wehlcohme
16:03:02 <elliott> `run ls bin/*h*
16:03:03 <HackEgo> bin/h \ bin/?h \ bin/h! \ bin/hatesgeo \ bin/?hh \ bin/quachaf \ bin/searchlog \ bin/show \ bin/unh \ bin/wehlcohme
16:06:48 <boily> TwilightSpockle: spockle?
16:07:14 <TwilightSpockle> It is a traditional Vulcopony name.
16:07:35 -!- Nisstyre-laptop has joined.
16:10:12 -!- sebbu has quit (Ping timeout: 248 seconds).
16:14:23 -!- Lumpio- has joined.
16:16:12 <Jafet> `hatesgeo
16:16:43 <HackEgo> No output.
16:18:03 <Phantom_Hoover> `hate
16:18:04 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: hate: not found
16:18:08 <oklopol> don't hate
16:18:18 <Phantom_Hoover> `paste bin/hatesgeo
16:18:20 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/hatesgeo
16:18:41 <Phantom_Hoover> help
16:25:58 -!- sebbu has joined.
16:31:22 <oklopol> don't help
16:33:53 -!- RodgerTheGreat has joined.
16:57:48 -!- Nisstyre-laptop has quit (Ping timeout: 264 seconds).
16:59:39 -!- epicmonkey has quit (Ping timeout: 272 seconds).
17:04:30 <Sgeo> Phantom_Hoover, what's so terrible about Ada?
17:04:55 <elliott> 1.6. Release notes for version 7.6.2
17:04:55 <elliott> The 7.6.2 release is a bugfix release. The changes relative to 7.6.1 are listed below.
17:04:58 <elliott> 1.6.1. GHC
17:05:00 <elliott> A long-standing typechecker bug which allowed unsafeCoerce to be written has been fixed.
17:05:03 <elliott> thank's
17:06:31 <shachaf> elliott: DeriveFoo isn't fixed. :-(
17:06:49 <shachaf> "have fun with ur handwritten instances!!"
17:08:37 <Sgeo> elliott, help I can't tell if shachaf is trying to torture me when he tells me to learn Ada
17:08:54 <shachaf> Sgeo: I think it would be better for everyone involved if you learned it.
17:09:16 <Sgeo> I keep reading that it's "large". Are you saying that because it would take a while?
17:09:32 <Sgeo> Although that's not going to stop me from talking about it, so how does it help?
17:09:37 <shachaf> Eh, is it that large?
17:09:48 <Sgeo> Don't know, just read rumors
17:10:05 <shachaf> You should learn it and find out.
17:31:45 <Sgeo> "I OFTEN GET ANGRY WHEN WRITING CODE IN THIS LANGUAGE"
17:31:49 <Sgeo> Ada much more than C#
17:38:39 <Sgeo> The Ada people say it's highly imperative. Why would I look twice at this language?
17:40:02 <shachaf> Sgeo: You haven't given it a fair chance.
17:40:26 <shachaf> Try reading about the language instead of what about what people say about the language.
17:40:45 <Sgeo> I'm doing both
17:41:12 <shachaf> What's another language that lets you do things like define a type for a range of integers?
17:41:33 <Sgeo> Any dependently typed language?
17:42:30 -!- carado has joined.
17:42:39 <kmc> http://i.imgur.com/N60FT3A.png
17:43:07 <shachaf> Sgeo: What actual real-world-usable languages?
17:47:21 <Sgeo> Hmm. Haskell is about as run-time-inflexible as Ada, and I like Haskell a lot except for that. So why Ada when I have Haskell>
17:47:22 <Sgeo> ?
17:47:44 <Sgeo> Ada is totally lacking in the two things that I regret not having when writing Haskell.
17:48:23 <elliott> what are those
17:48:29 <TwilightSpockle> Congratulations, you are the first person in history to compare Ada to Haskell.
17:48:32 <shachaf> What about things like precise control over memory layout?
17:48:33 <elliott> and also what does "run-time-inflexible" mean
17:48:43 <fizzie> Adskell, the ad-funded "freemium" version of Haskell.
17:49:21 <Sgeo> Easy-to-use macros and easy to change the program as it runs. I am aware of Template Haskell and that it's considered annoying to use, and that there are some libraries for plugin-like stuff
17:50:57 <elliott> macros aren't runtime...
17:51:47 <elliott> "change the program as it runs" is too ambiguous to really respond to, but it seems to be either a trivial property (i.e. exhibiting dynamic behaviour in general) or something related solely to a runtime rather than a language
17:58:50 -!- DHeadshot has joined.
17:59:41 <kmc> oh pick a language already
17:59:55 <Sgeo> I try
18:00:03 <shachaf> imo ada
18:00:13 <kmc> spend your time learning about things other than languages
18:00:28 <Sgeo> kmc, why? Other things are boring
18:00:32 <kmc> you're wrong
18:00:58 <shachaf> Languages are interesting but the thing you're doing probably won't give you much of the benefits of that.
18:01:09 <shachaf> And also other things are more interesting than languages.
18:01:55 <kmc> talking to yourself about whether Ada is better than Factor is not interesting
18:01:58 <kmc> not for the rest of us anyway
18:02:39 <elliott> kmc: um it's clojure
18:03:02 <kmc> Sgeo: out of curiosity, what was the last program you wrote for a reason not motivated by the language you were using
18:03:05 <kmc> and what language did you use
18:03:41 <Sgeo> Do programming competitions count?
18:03:45 <kmc> yeah
18:03:47 <Sgeo> I used Python for one problem Haskell for the other
18:03:52 <kmc> cool
18:03:58 <kmc> were they interesting problems?
18:04:21 <Sgeo> Eh. Somewhat
18:04:35 <Sgeo> I think I actually understand how to parse parentheses now, as in, a good understanding
18:04:45 <Sgeo> ...well, I still need recursion
18:06:27 <Sgeo> There was also a bot I wrote for another channel last year but the reasoning behind my choice of language (Tcl) was because it was the language I was interested in
18:07:52 <oklopol> i'm with Sgeo, languages are more interesting than actual programming. that shit sucks.
18:08:09 <Sgeo> <Okasu> Sgeo: Stop that crap, choose task then choose language appropriate for task and start code.
18:08:49 <oklopol> although i do hate it less now that i do it regularly-ish
18:09:13 <oklopol> perhaps i will relearn to love it eventually?
18:11:30 <kmc> it always seems strange and sad when programmers describe to me their experience primarily in terms of what languages they know
18:11:44 <kmc> it's like a carpenter bragging about all the different tools in their shop, rather than what they've built
18:11:55 <kmc> major mark against in an interview, imo
18:12:32 <Sgeo> :/
18:12:55 * Sgeo is totally screwed wrt. that interview
18:14:32 -!- DHeadshot has quit (Read error: Connection reset by peer).
18:14:39 -!- epicmonkey has joined.
18:14:50 -!- DHeadshot has joined.
18:14:52 -!- DHeadshot has quit (Remote host closed the connection).
18:20:40 -!- azaq23 has joined.
18:20:49 -!- azaq23 has quit (Max SendQ exceeded).
18:21:01 -!- AnotherTest has joined.
18:21:06 <AnotherTest> Hello
18:21:10 -!- azaq23 has joined.
18:21:28 -!- Bike has joined.
18:22:03 <boily> >let map mар maр = mар : map mар maр; mаp mар = map mар mар in mаp "map"
18:22:12 <boily> > let map mар maр = mар : map mар maр; mаp mар = map mар mар in mаp "map"
18:22:12 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
18:22:14 <FireFly> kmc: would it be equally bad to descibe one's experience in terms of what paradigms one has experience with?
18:22:32 <kmc> maybe
18:22:38 <kmc> i'd still rather hear about what you've actually done
18:22:40 <FireFly> Damn ;_;
18:22:52 <kmc> and will ask questions about that
18:22:58 <kmc> though i ask questions about languages as well
18:23:14 -!- AnotherTest has left.
18:23:19 -!- AnotherTest has joined.
18:23:42 <FireFly> I could answer that I have tonnes of incomplete toy projects, but I'm not sure if that'd help me
18:23:59 <kmc> do you have course work or something?
18:24:15 <RodgerTheGreat> almost everyone who has completed interesting projects also has many incomplete or abandoned projects
18:24:28 <kmc> if somebody claims to know a language / paradigm but can't explain anything substantial they've done in that language / paradigm, it casts doubt on the original claim
18:24:39 <FireFly> Well, yes, but those are less interesting than the incomplete toy projects
18:24:57 <kmc> don't get me wrong, it's important to know a variety of tools and understand their strengths and weaknesses
18:25:09 <kmc> it's just, i want to know what you can do with those tools as well
18:25:19 <FireFly> Yeah, fair, that makes sense
18:25:56 -!- Bike has quit (Ping timeout: 244 seconds).
18:26:03 -!- ogrom has quit (Quit: Left).
18:26:06 <kmc> and yeah, it will differ between experienced and inexperienced candidates
18:26:37 <kmc> talking about incomplete toy projects is totally fair game imo
18:26:45 -!- Bike has joined.
18:26:54 <elliott> kmc: i know at least 500 languages, please hire me to work on that silly irc clone thing
18:26:57 <elliott> ty
18:27:09 <kmc> elliott: be honest, how many of them are brainfuck derivatives
18:27:12 <FireFly> I don't think esolangs count
18:27:18 <elliott> kmc: no more than 432
18:27:24 <elliott> ok maybe 433
18:27:33 <elliott> i request a modest salary of $money / month
18:28:06 <shachaf> $monqy/month is better
18:28:25 <kmc> $texas
18:32:29 <oklopol> "<kmc> major mark against in an interview, imo" i do agree that if you want to become a programmer, obviously you should like programming more than languages. and perhaps Sgeo does want that.
18:33:51 <oklopol> rather random thing to quote but why not.
18:33:56 <kmc> there's also the fact that people will, for example, say "I know JavaScript" when what they mean is "I have experience with frontend web development"
18:34:21 <kmc> and they'll talk about advantages / disadvantages of "JavaScript" but they're really talking about their experience with the web as an applications platform
18:35:26 <kmc> likewise if you say you know AVR assembly, then we can probably chat about digital logic and realtime programming under space constraints etc
18:35:30 <kmc> but it's not really about the language
18:36:28 <Bike> i have extensive experience in frontend web development with Caterwaul
18:37:21 <shachaf> i have expensive experience with `dd` and partition tables
18:39:13 <shachaf> I remember the good old days when I thought boot sector = MBR = booty-thingy, whatever, man, and I wanted to switch from the Windows bootloader to GRUB, so I did dd if=/dev/hda4 of/dev/hda bs=512 count=1
18:39:21 <TwilightSpockle> i have extensive experience in the operation and typical maintenance of the human body
18:39:26 <TwilightSpockle> Therefore make me a doctor.
18:39:28 <shachaf> I made a backup in my home directory!
18:39:41 <shachaf> That took a while to get out of.
18:39:47 <kmc> i am a programmer and therefore a genius in every field
18:39:48 <kmc> shachaf: haha
18:39:57 <kmc> i did some things like that too, strangely I believe some of them worked
18:40:20 <kmc> for a while I had a dual boot system where NTLDR was the primary bootloader
18:40:38 <shachaf> Yep, that's what I had.
18:40:42 <shachaf> With Windows 2000, I think.
18:40:44 <kmc> i think this involved dd'ing the first 512 bytes of my Linux partition (containing LILO stage 1) and putting that in C:\
18:40:57 <kmc> yeah me too
18:40:58 <shachaf> Right! I remember that.
18:41:03 <kmc> life got so much simpler when I ditched windows :)
18:41:21 <shachaf> To be fair, the same goes for LILO.
18:41:26 <fizzie> I remember that too.
18:41:32 <kmc> shachaf: what goes?
18:41:42 <shachaf> Life getting simpler when you ditch it.
18:42:07 <FreeFull> Flagged Arch's ghc package as out of date
18:42:11 <kmc> i'm not sure about that
18:42:14 <FreeFull> My work is done
18:42:17 <kmc> LILO was fine :)
18:42:24 <kmc> does the job
18:42:24 <kmc> simple
18:42:27 <FreeFull> kmc: I use syslinux now
18:42:31 <shachaf> Remember having to update the boot sector on every kernel update?
18:42:34 <kmc> you had to remember to run 'lilo'
18:42:45 <kmc> yeah, not a big deal imo
18:43:03 <FreeFull> syslinux is good
18:43:14 <FreeFull> Simple and convienient
18:43:25 <kmc> shachaf: now i have to run update-initramfs after ever kernel update instead ;P
18:43:31 <kmc> (except not usually, because debian does it for me)
18:44:17 <fizzie> Bah, LOADLIN.EXE.
18:44:20 <kmc> yes
18:44:32 <kmc> before NTLDR i had a dual boot setup with Win98 and LOADLIN and an AUTOEXE.BAT "boot" menu
18:44:36 <fizzie> Simplest and convenientest.
18:44:38 <kmc> AUTOEXEC.BAT i mean
18:45:06 <kmc> running Linux on 68k macs was similar
18:45:14 <elliott> @ simplifies things.
18:45:30 <kmc> you would boot into OS 7 and run this "Penguin" app and your screen would go all crazy as it loads the kernel all over the framebuffer and then poof it's linux
18:45:53 <fizzie> I did MkLinux on my PPC Performa, it was really fiddly.
18:45:56 <elliott> It's "System 7", kmc!!
18:46:01 <shachaf> kmc: I never got that working.
18:46:02 <kmc> i bought a bunch of 68k macs from my school for $1 each
18:46:14 <elliott> Except for 7.6 after.
18:46:15 <kmc> most of them had the 68LC040 chip though
18:46:20 <shachaf> I was using a $25 yard sale something.
18:46:23 <elliott> Also I think the early ones were System Software 7?
18:46:26 <kmc> which has an erratum that breaks FPU emulation
18:46:34 <kmc> so it couldn't run most binary linux distros :/
18:47:30 <fizzie> I think I had 7.5.3 on the Performa.
18:47:33 <shachaf> Hmm, I don't remember what this was.
18:47:40 <shachaf> Yes, Performa. That name sounds familiar.
18:48:11 <FreeFull> > let map mар maр = mар : map mар maр; mаp mар = map mар mар in mаp "map"
18:48:11 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
18:48:23 <FreeFull> Damn you lambdabot
18:48:47 <FreeFull> In ghci it's an infinite list of "map"
18:48:51 <fizzie> The low-numbered Performas were 68k things; the four-digit ones were PPC.
18:48:54 <shachaf> > let map map = map in let map map = map in map map map "map"
18:48:55 <lambdabot> "map"
18:50:53 <shachaf> PowerPC was the future.
18:51:25 <Bike> why are there two lets there
18:51:58 <shachaf> > let map map = map map map in let in let map map = map in map map "map"
18:52:00 <lambdabot> Occurs check: cannot construct the infinite type:
18:52:00 <lambdabot> t2 = t1 -> t2 -> t0Occ...
18:52:04 <shachaf> Ah well.
18:52:09 <ion> Bears. http://i.imgur.com/ZJPxIpq.gif
18:52:44 <kmc> ion: that's the best
18:53:14 <shachaf> i want a bears :(
18:53:32 <kmc> regarding bear-proof trash cans: "There is considerable overlap between the intelligence of the smartest bears and the dumbest tourists"
18:55:36 * shachaf is tired
18:56:48 <ion> kmc: hah
18:56:49 <Bike> > let map map = map in map map map "map"
18:56:51 <lambdabot> "map"
18:57:19 <Bike> > let map in = map in map map map "map"
18:57:20 <lambdabot> <hint>:1:9: parse error on input `in'
18:57:29 <Bike> > let map pam = map in map map map "map"
18:57:31 <lambdabot> Occurs check: cannot construct the infinite type: t1 = t0 -> t1
18:57:37 <Bike> weak
18:57:44 <shachaf> @ty let a x = (x,x); b = a . a; c = b . b; d = c . c; e = d . d; f = e . e in f
18:57:58 <shachaf> help
18:57:59 <lambdabot> thread killed
18:58:08 <shachaf> @ty let a x = (x,x); b = a . a; c = b . b; d = c . c; e = d . d in e
18:58:17 <Bike> is this some billion laughs thing
18:58:25 <shachaf> Pretty much.
18:58:27 <lambdabot> thread killed
18:58:29 <shachaf> @ty let a x = (x,x); b = a . a; c = b . b; d = c . c in d
18:58:37 <lambdabot> t -> ((((((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t))))), (((((t, t), (t, t)), ((t, t), (t,
18:58:38 <lambdabot> t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))))), ((((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t,
18:58:38 <lambdabot> t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t))))), (((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t,
18:58:38 <lambdabot> t))), (((t, t), (t, t)), ((t, t), (t, t))))))), (((((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t,
18:58:38 <lambdabot> t))))), (((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))))), ((((((t, t), (t, t)), ((t, t),
18:58:40 <lambdabot> (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t))))), (((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t,
18:58:41 <lambdabot> t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t))))))))
18:58:47 <Bike> I love it.
18:59:13 <elliott> I like how typechecking-as-security is useless because it's too slow. :(
18:59:47 <shachaf> elliott: THE FATAL FLAW IN @
19:00:43 <Bike> @ty let (@) x = (.) x x in let a x = (x,x) in (@) a a a a
19:00:49 <lambdabot> parse error on input `@'
19:00:53 <shachaf> @ is syntax
19:00:56 <Bike> no!
19:01:18 <Bike> @ty let fuck everything = everything . everything in let shit fuck = (fuck,fuck) in fuck fuck fuck shit
19:01:21 <lambdabot> Occurs check: cannot construct the infinite type: a0 = (a0, a0)
19:01:22 <lambdabot> Expected type: a0 -> a0
19:01:22 <lambdabot> Actual type: a0 -> (a0, a0)
19:01:30 <FreeFull> > "map" == "mар"
19:01:30 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
19:02:05 <Bike> k i'm actually not sure what i did wrong there
19:02:47 <shachaf> The types are the problem.
19:03:05 <elliott> Bike: You violated the occurs check!!
19:03:12 <Bike> thx
19:03:40 <shachaf> @ty let f g = g . g in f
19:03:48 <lambdabot> (a -> a) -> a -> a
19:03:50 <shachaf> See?
19:04:18 <FreeFull> > "map" == "mар"
19:04:18 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
19:04:25 * FreeFull smacks lambdabot and mueval
19:04:42 <Bike> @ty let shit fuck = (fuck,fuck) in fuck everything = everything . everything in fuck fuck fuck shit
19:04:45 -!- AnotherTest has quit (Quit: Leaving.).
19:05:03 <lambdabot> thread killed
19:05:10 <Bike> wow, ty really is slow
19:05:13 <Bike> @ty let shit fuck = (fuck,fuck) in fuck everything = everything . everything in fuck fuck shit
19:05:19 -!- AnotherTest has joined.
19:05:24 <kmc> lambdabot is being really slow right now
19:05:30 <lambdabot> thread killed
19:05:31 <elliott> Bike: this is an "infamous" bad case for hindley-milner in general
19:05:34 <elliott> double-exponential, I think
19:05:41 <Bike> oh right i remember that now
19:05:46 <Bike> is there any way around it?
19:05:51 <Bike> other than the classic "why are you doing that"
19:06:02 <kmc> "stop hitting yourself"
19:06:05 <Bike> right
19:06:08 <shachaf> > 1
19:06:13 <lambdabot> mueval-core: Time limit exceeded
19:06:19 <shachaf> "the infamous double exponential case"
19:06:21 -!- AnotherTest has quit (Client Quit).
19:06:23 <Bike> hee
19:06:24 <elliott> well you can set arbitrary limits on type inference
19:06:31 -!- AnotherTest has joined.
19:06:40 <shachaf> @yarrbi trarry
19:06:40 <lambdabot> Ahoy mateys
19:06:42 <elliott> probably there are less expressive algorithms which are just, like, exponential at worst
19:06:47 <elliott> and also a pain to use because they're less expressive
19:07:19 <kmc> they might also be slower in non-pathological cases
19:07:36 <FreeFull> > 1
19:07:40 <lambdabot> mueval-core: Time limit exceeded
19:07:43 <FreeFull> What
19:07:56 <shachaf> I don't know but it's Jafet's fault.
19:08:22 <shachaf> Anyway maybe I'll try to sleep for a bit?
19:08:50 <kmc> good luck
19:09:57 <boily> > 1
19:10:03 <lambdabot> mueval: ExitFailure 1
19:10:03 <lambdabot> mueval: Prelude.undefined
19:10:20 <boily> who borked lambdabot?
19:10:41 <shachaf> ) 1 + 1
19:10:42 <jconn> shachaf: 2
19:11:45 <boily> ) pi
19:11:46 <jconn> boily: |value error: pi
19:12:13 <boily> ) let 2 = 3 in 2 + 2
19:12:13 <jconn> boily: |value error: in
19:12:13 <jconn> boily: | let 2=3 in 2+2
19:12:23 <boily> ) exp 5
19:12:23 <jconn> boily: |value error: exp
19:12:23 <jconn> boily: | exp 5
19:12:25 <shachaf> ) 2 = 3
19:12:25 <jconn> shachaf: 0
19:12:29 <boily> ) exp(5)
19:12:29 <jconn> boily: |value error: exp
19:12:30 <jconn> boily: | exp(5)
19:12:30 <shachaf> ) 2 := 3
19:12:30 <jconn> shachaf: |domain error
19:12:30 <jconn> shachaf: | 2 :=3
19:12:40 <Bike> ) o 1
19:12:41 <jconn> Bike: |value error: o
19:12:41 <jconn> Bike: | o 1
19:12:48 <Bike> ) o. 1
19:12:48 <jconn> Bike: 3.14159
19:12:56 <shachaf> ) i. 10000000000000000000000
19:12:56 <jconn> shachaf: |domain error
19:12:56 <jconn> shachaf: | i.1e22
19:12:59 <boily> no. oh no you didn't.
19:13:10 <boily> there's a J bot here now?
19:13:17 <Bike> welcome to the future, boily
19:13:17 <quintopia> what is jconn supposed to be accomplishing
19:13:23 <shachaf> I can't wait until we get an Ada bot.
19:13:37 <quintopia> shachaf: i'll write an Eiffel bot okay
19:13:40 <boily> I'd fall off my chair in astonishment, but then I'd probably disturb my colleagues.
19:13:41 <elliott> ) (+%#) 1 2 3 4 5 6 7 8 9 10
19:13:42 <jconn> elliott: 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
19:13:45 <kmc> can it be a Sgeolang bot
19:13:47 <elliott> ) (+/%#) 1 2 3 4 5 6 7 8 9 10
19:13:48 <jconn> elliott: 5.5
19:13:52 <elliott> ) +/%# 1 2 3 4 5 6 7 8 9 10
19:13:52 <jconn> elliott: 0.1
19:13:59 <elliott> good, I still remember how it all works, roughly
19:13:59 <shachaf> elliott: mind your language......................
19:14:23 <quintopia> shachaf: wait wait, i'll write a algol 68 bot!
19:14:40 <Bike> i'm going to imagine that, unbeknownst to the channel, elliott has spent ten years in the financial industry programming j
19:14:49 <shachaf> quintopia: That was going to be my next language for Sgeo.
19:14:59 <quintopia> :D
19:15:02 <Bike> quintopia: imo algol w
19:15:14 <shachaf> algol ω
19:15:25 <quintopia> algoljack just ate him
19:15:48 -!- monqy has joined.
19:15:57 <elliott> Bike: they use K a lot more in finance, AIUI
19:16:11 <Bike> i don't even know anything about k
19:16:14 <shachaf> Bike: Algol W isn't wirth the trouble.
19:16:19 <elliott> Bike: I admit hiring a 7 year old to program finance in J would make an utterly fantastic story
19:16:19 <Bike> is that the one that's all "what's this OOP business"
19:16:25 <Bike> yes, yes it would
19:17:21 <elliott> Bike: K is like J except different
19:17:30 <elliott> "h t h"
19:17:37 <shachaf> ) "h
19:17:37 <jconn> shachaf: "h
19:17:40 <shachaf> ) "h t h"
19:17:41 <jconn> shachaf: |syntax error
19:17:41 <jconn> shachaf: | "h t h"
19:17:45 <shachaf> ) "h + "h
19:17:45 <jconn> shachaf: |syntax error
19:17:45 <jconn> shachaf: | "h+"h
19:17:48 <shachaf> help
19:20:19 <FreeFull> )
19:20:41 <boily> ) . 4 5 $ 50
19:20:42 <jconn> boily: |syntax error
19:20:42 <jconn> boily: | .4 5$50
19:20:52 <boily> ) ?. 4 5 $ 50
19:20:52 <jconn> boily: 46 5 29 2 4
19:20:52 <jconn> boily: 39 10 7 10 44
19:20:52 <jconn> boily: 46 28 13 18 1
19:20:52 <jconn> boily: 42 28 10 40 12
19:21:01 <Bike> these are probably the least helpful syntax error notices i've ever seen
19:21:05 -!- derdon has joined.
19:21:29 <elliott> ) (#:D.1) 1 2 3
19:21:30 <jconn> elliott: 0 1
19:21:30 <jconn> elliott: 0 0
19:21:30 <jconn> elliott: 0 0
19:21:30 <jconn> elliott:
19:21:30 <jconn> elliott: 0 0
19:21:30 <jconn> elliott: ...
19:21:34 <elliott> ) (#:D.1) 123
19:21:34 <jconn> elliott: 0 0 0 0 0 0 1
19:21:38 <elliott> ) (#:D.1) 1235
19:21:39 <jconn> elliott: 0 0 0 0 0 0 0 0 0 0 1
19:21:42 <elliott> great function
19:22:49 <FreeFull> ) 3 + 3
19:22:50 <jconn> FreeFull: 6
19:22:52 <FreeFull> :O
19:23:07 <Bike> elliott: what the hell is that
19:24:04 <elliott> first derivative of antibase two (http://www.jsoftware.com/help/dictionary/d402.htm)
19:26:26 * Bike stares
19:28:56 <FreeFull> ) #: 2
19:28:57 <jconn> FreeFull: 1 0
19:29:03 <FreeFull> ) #: 139
19:29:04 <jconn> FreeFull: 1 0 0 0 1 0 1 1
19:29:09 <FreeFull> Isn't that just base 2
19:29:45 <Bike> Yeah, but D.1 means first derivative.
19:30:32 <Bike> ) (#:D.1) 124
19:30:32 <jconn> Bike: 0 0 0 0 0 0 1
19:30:37 <Bike> right.
19:31:49 <elliott> not exactly sure what the derivative of #: *is*
19:32:29 <elliott> ) (+,#:) 1 2
19:32:30 <jconn> elliott: 1 2
19:32:30 <jconn> elliott: 0 1
19:32:30 <jconn> elliott: 1 0
19:32:45 <elliott> ) (+,#:) 123
19:32:46 <jconn> elliott: 123 1 1 1 1 0 1 1
19:32:49 <elliott> right
19:32:57 <nortti> can anyone access nortti.dy.fi or even ping it?
19:32:59 <elliott> ) (+;#:) 123
19:32:59 <jconn> elliott: +---+-------------+
19:32:59 <jconn> elliott: |123|1 1 1 1 0 1 1|
19:32:59 <jconn> elliott: +---+-------------+
19:33:07 <elliott> ) (#:;#:D.1) 123
19:33:07 <jconn> elliott: +-------------+-------------+
19:33:08 <jconn> elliott: |1 1 1 1 0 1 1|0 0 0 0 0 0 1|
19:33:08 <jconn> elliott: +-------------+-------------+
19:33:09 <Bike> I guess #: is sort of the identity function, meaning the derivative is 1
19:33:12 <elliott> ) (#:;#:D.1) 12345
19:33:12 <jconn> elliott: +---------------------------+---------------------------+
19:33:12 <jconn> elliott: |1 1 0 0 0 0 0 0 1 1 1 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 1|
19:33:12 <jconn> elliott: +---------------------------+---------------------------+
19:33:27 <elliott> looks like you get 0 0 0 0 0 ... 1 padded out to how many bits the input is
19:33:32 <Bike> yeah
19:33:33 <elliott> makes sense
19:34:22 <Bike> ) (#:D.2) 12345
19:34:22 <jconn> Bike: 0 0 0 0 0 0 0 0 0 0 0 0 0 0
19:34:34 <Bike> sensible
19:34:35 <boily> nortti: pings get lost in the great wide black Internet.
19:34:46 <elliott> ) (#:D.3) 12345
19:34:47 <jconn> elliott: 0 0 0 0 0 0 0 0 0 0 0 0 0 0
19:34:50 <elliott> astonishing
19:35:04 <elliott> ) (#:D._1) 12345
19:35:04 <jconn> elliott: |nonce error
19:35:04 <jconn> elliott: | ( #:D._1)12345
19:35:08 <elliott> aw c'mon
19:35:13 <nortti> boily: ok. that is what I get too (on the very machine you were trying to ping)
19:35:13 <elliott> what's wrong with the -1st derivative
19:35:14 <Bike> wait are there really antiderivatives
19:35:17 <Bike> tell me there are
19:35:27 <elliott> well apparently J does not acknowledge their existence
19:35:33 <Bike> what!
19:35:48 <Bike> look J, D is a linear operator. that's right a MATRIX. you're good with those right!
19:35:58 <Bike> so tell me the negative pi'th derivative of #:!
19:36:28 <elliott> ) (D. b. _1)
19:36:28 <jconn> elliott: |syntax error
19:36:28 <jconn> elliott: | ( D.b._1)
19:36:31 <elliott> ) D. b. _1
19:36:31 <jconn> elliott: |syntax error
19:36:31 <jconn> elliott: | D.b._1
19:36:37 <Bike> does J actually have infinite matrices
19:36:40 <Bike> i would like that
19:36:40 <oklopol> "<Bike> wait are there really antiderivatives" in J or in general? just checking
19:36:48 <elliott> ) f=: D. ; f b. _1
19:36:48 <jconn> elliott: |syntax error
19:36:48 <jconn> elliott: | f=: D.;f b._1
19:36:56 <elliott> imo go fuck yourself j
19:36:57 <Bike> oklopol: in J. what do you take me for :<
19:37:03 <elliott> ) - b. _1
19:37:03 <jconn> elliott: -
19:37:07 <elliott> ) + b. _1
19:37:07 <oklopol> Bike: a bike.
19:37:07 <jconn> elliott: +
19:37:10 <elliott> oh hmm
19:37:16 <Bike> oh. i guess that makes sense.
19:37:20 <oklopol> yes
19:37:38 <elliott> ) (D.&1) b. _1
19:37:38 <jconn> elliott: |syntax error
19:37:38 <jconn> elliott: | ( D.&1)b._1
19:37:47 <elliott> ) f=: D.&1 ; f b. _1
19:37:47 <jconn> elliott: |value error: f
19:37:48 <jconn> elliott: | f=:D.&1; f b._1
19:37:55 <elliott> :/
19:38:20 <elliott> ) f=:D.&1; (f #:) 123
19:38:21 <jconn> elliott: |value error: f
19:38:21 <jconn> elliott: | f=:D.&1; (f#:)123
19:38:26 <elliott> ) f=.D.&1; (f #:) 123
19:38:26 <jconn> elliott: |value error: f
19:38:26 <jconn> elliott: | f=.D.&1; (f#:)123
19:38:30 <elliott> ) q=.D.&1; (q #:) 123
19:38:30 <jconn> elliott: |value error: q
19:38:30 <jconn> elliott: | q=.D.&1; (q#:)123
19:38:40 <elliott> am i just an idiot
19:38:42 <Bike> i'm pretty close to getting on to #jsoftware to ask why D isn't a matrix
19:38:43 <Bike> help
19:38:54 <elliott> ) ((D.&1) #:) 123
19:38:55 <jconn> elliott: |syntax error
19:38:55 <jconn> elliott: | (( D.&1)#:)123
19:38:58 <elliott> oh hmm
19:39:14 <elliott> I guess I have to whip out the stuff for this
19:39:29 <Bike> ) f:= D.&1 ; f b. _1
19:39:30 <jconn> Bike: |spelling error
19:39:30 <jconn> Bike: | f:= D.&1 ; f b. _1
19:39:30 <jconn> Bike: | ^
19:39:44 <Bike> yeah ok i have no damned clue
19:40:17 <elliott> ) f =: 1 : 'x (u D.1) y'; (f #:) 123
19:40:17 <jconn> elliott: |value error: f
19:40:17 <jconn> elliott: | f=:1 :'x (u D.1) y'; (f#:)123
19:40:23 <elliott> ok i'm getting there
19:41:07 <Bike> J has complexes right
19:41:16 <Bike> i wanna see if D is defined for gaussian integers at least
19:41:28 <elliott> ) f =: 1 : 'x (u D.1) y'; f #: 1 2 3
19:41:28 <jconn> elliott: |value error: f
19:41:28 <jconn> elliott: | f=:1 :'x (u D.1) y'; f#:1 2 3
19:41:29 <elliott> er
19:41:32 <elliott> ) f =: 1 : 'x (u D.1) y'; #: f 1 2 3
19:41:33 <jconn> elliott: |value error: f
19:41:33 <jconn> elliott: | f=:1 :'x (u D.1) y';#: f 1 2 3
19:41:38 <elliott> ughughugh fuck me
19:41:43 <elliott> ) f =: 1 : 'x (u D.1) y'; f #:
19:41:43 <jconn> elliott: |syntax error
19:41:43 <jconn> elliott: | f=: 1 :'x (u D.1) y';f#:
19:41:46 <elliott> dijeijeoijeoijefoi
19:41:57 <Bike> sgeo you're going to break elliott!!
19:42:02 <elliott> ) hello =: 1 : 'x u y'; 1 2 (hello +) 3 4
19:42:02 <jconn> elliott: |value error: hello
19:42:02 <jconn> elliott: | hello=:1 :'x u y';1 2 (hello+)3 4
19:42:06 <elliott> WAHT ????
19:42:19 -!- asiekierka has quit (Quit: ZNC - http://znc.sourceforge.net).
19:42:20 <elliott> oh hmm
19:42:24 <elliott> ) hello =: 1 : 'x u y'
19:42:24 <jconn> elliott: |ok
19:42:25 <elliott> ) hello
19:42:25 <jconn> elliott: 1 : 'x u y'
19:42:28 <elliott> aww friend
19:42:32 <elliott> ) 1 2 (hello +) 3 4
19:42:32 <jconn> elliott: |syntax error
19:42:32 <jconn> elliott: | 1 2( hello+)3 4
19:42:37 <elliott> ) hello +
19:42:37 <jconn> elliott: |syntax error
19:42:38 <jconn> elliott: | hello+
19:42:39 <elliott> ) + hello
19:42:40 <jconn> elliott: + (1 : 'x u y')
19:42:44 <elliott> ) 1 2 (+ hello) 3 4
19:42:44 <jconn> elliott: |domain error
19:42:44 <jconn> elliott: | 1 2 (+hello)3 4
19:42:48 <elliott> ) 1 (+ hello) 3
19:42:48 <jconn> elliott: |domain error
19:42:49 <jconn> elliott: | 1 (+hello)3
19:42:50 <elliott> hm
19:42:51 <oklopol> ) o
19:42:52 <jconn> oklopol: |value error: o
19:42:53 <elliott> ) (+ hello) 1
19:42:53 <jconn> elliott: |value error: x
19:42:53 <jconn> elliott: | x u y
19:42:59 <elliott> interesting
19:42:59 <oklopol> ) 0+2
19:43:00 <jconn> oklopol: 2
19:43:08 <elliott> ) hello =: 1 : 'u y'
19:43:08 <jconn> elliott: |ok
19:43:08 <oklopol> ) 0+.0 0 0 0
19:43:09 <jconn> oklopol: 0 0 0 0
19:43:10 <elliott> ) (+ hello) 1
19:43:10 <jconn> elliott: 1
19:43:15 <oklopol> wow i'm good
19:43:23 <elliott> ) hello =: 1 : '(u D.1) y'
19:43:23 <jconn> elliott: |ok
19:43:26 <elliott> ) (#: hello) 123
19:43:26 <jconn> elliott: 0 0 0 0 0 0 1
19:43:30 <elliott> yesss
19:43:35 <elliott> ) hello b. _1
19:43:35 <jconn> elliott: |syntax error
19:43:35 <jconn> elliott: | hello b._1
19:43:38 <elliott> ugh
19:43:54 <elliott> right I have absolutely no idea how to ask J what it thinks the inverse of (? D. 1) is
19:43:55 <Bike> i'd say "you can do it!" but i don't know what you're doing and find it slightly frightening
19:43:58 <elliott> Sgeo: you're my only hope
19:45:39 <elliott> Bike: have you seen the original J interpreter
19:45:47 <elliott> http://www.jsoftware.com/jwiki/Essays/Incunabulum
19:46:22 <Bike> well they managed to make C look like J
19:46:50 <kmc> my eyes
19:47:36 <Bike> "good job"
19:47:58 <Bike> has this ever been submittedt o IOCCC
19:51:06 <kmc> http://www.jsoftware.com/jwiki/Essays/PianoTuning
19:52:05 <Bike> nice
19:56:31 <monqy> wow thats a lot of essays
19:57:26 <monqy> http://www.jsoftware.com/jwiki/Essays/JforC%20Front%20Cover
19:57:55 <Bike> best cover i've seen since forth for the atari
19:58:36 -!- oerjan has joined.
19:58:36 <monqy> forth on the atari is a good cover
19:59:30 -!- sebbu has quit (Ping timeout: 264 seconds).
20:00:01 -!- augur has quit (Read error: Connection reset by peer).
20:00:15 -!- augur has joined.
20:00:33 <elliott> whoah
20:00:37 <elliott> google image search changed
20:02:23 <monqy> http://www.jsoftware.com/jwiki/Essays/The%20Art%20of%20Shaving
20:03:21 <Bike> Try to remember when and why I've wanted this.
20:03:56 <Bike> Comprehensive Burma Shave billboard collection
20:05:03 <TwilightSpockle> wut
20:05:09 <TwilightSpockle> Oh
20:05:12 <TwilightSpockle> OK, that makes more sense.
20:05:20 <TwilightSpockle> I thought it would actually be something related to "the art of shaving"
20:05:35 <Bike> well the piano tunin one is actually about piano tuning
20:07:28 <TwilightSpockle> So is the J software /Essays/ directory like an everything2 niche or what?
20:08:25 <oerjan> ooh i left a literal n in the fueue program
20:09:21 -!- sebbu has joined.
20:09:35 -!- sebbu has quit (Changing host).
20:09:35 -!- sebbu has joined.
20:10:41 -!- TwilightSpockle has changed nick to Gregor.
20:14:28 -!- sebbu has quit (Ping timeout: 248 seconds).
20:18:29 <oerjan> *MWAHAHAHA*
20:19:29 <Gregor> ?
20:19:59 <boily> œrjan evily laughing is never a good omen.
20:21:01 -!- sebbu has joined.
20:25:24 <Taneb> I beg to differ.
20:25:29 <Taneb> It is ALWAYS a good omen.
20:26:18 -!- Gregor has set topic: char*a,b[9999];main(){gets(a=b);while(*a){a+=(b[*a]-=b[a[1]])?3:a[2];}puts(b+1);} | http://codu.org/logs/_esoteric/.
20:31:36 -!- asiekierka has joined.
20:32:50 <boily> Gregor: is that program supposed to take a single line of input, drop its first character then print the rest?
20:33:02 <Gregor> Nope.
20:33:10 <Gregor> Although that is one possible behavior.
20:33:47 <oerjan> Taneb: um isn't fueue supposed to allow return as whitespace?
20:33:54 <oerjan> `pastelogs fueue
20:34:25 <HackEgo> No output.
20:34:44 <oerjan> `pastelogs fueue
20:35:15 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.7500
20:35:28 <Taneb> What constitutes "whitespace" isn't clear from the spec
20:36:07 <Taneb> However, Unicode specifies both LF and CR are whitespace
20:36:14 <oerjan> the C interpreter only allows literal ' ' :(
20:36:29 <Taneb> Then Arc_Koen is the one to complain to.
20:36:51 <oerjan> mind you it _does_ take the program as a command line argument...
20:37:25 <Taneb> I believe my Haskell interpreter allows \n.
20:38:14 <oerjan> Arc_Koen: your fueue interpreters only allow literal ' ' as whitespace (and i suspect the ocaml one doesn't accept even that inside loops)
20:38:30 * oerjan has only tested the C one
20:38:43 <oerjan> and has no idea where to find the haskell one *COUGH*
20:39:22 <Taneb> oerjan, basically, there's one copy of it and it's on this computer.
20:40:09 <oerjan> @tell Arc_Koen your fueue interpreters only allow literal ' ' as whitespace (and i suspect the ocaml one doesn't accept even that inside loops.) this ruins my pretty indentation and is therefore UNACCEPTABLE hth
20:40:09 <lambdabot> Consider it noted.
20:40:53 <Taneb> http://www.vandoorn.talktalk.net/esoteric/fueue.hs
20:41:04 <Taneb> The step function is about as ugly as Haskell gets
20:41:53 <boily> @tell boily IIRC, lambdabot won't tell stuff to yourself.
20:41:53 <lambdabot> You can tell yourself!
20:42:12 <elliott> Taneb: wow, what the fuck is with that step function
20:42:14 <elliott> why did yo uwrite it like that
20:42:21 <elliott> monqy: look at that
20:42:35 <Taneb> elliott, it used to be a lot uglier
20:42:41 <Bike> amazing
20:43:29 <Taneb> I tried to comment my code, then... didn't
20:43:40 <Bike> also you misspelled "further"
20:43:46 <oerjan> hm i didn't know about Numeric.Natural
20:44:01 <elliott> oerjan: it's in semigroups. guess who by
20:44:13 <Taneb> elliott, it's been moved to its own package now
20:44:20 <elliott> oh right.
20:44:24 <Taneb> "nats"
20:45:28 <oerjan> Taneb: "futher"
20:45:39 <oerjan> and "progam"
20:45:43 <Taneb> oerjan, I have a vague feeling you wrote most of the main function
20:45:51 -!- monqy_ has joined.
20:46:07 <oerjan> quite possible.
20:46:11 <elliott> monqy_: http://www.vandoorn.talktalk.net/esoteric/fueue.hs look at the step function
20:46:17 <monqy_> 12:42:27 <elliott> monqy: look at that
20:46:30 <monqy_> was just about to
20:46:35 <monqy_> i
20:46:37 <elliott> yes but then you got disconnected
20:46:40 <monqy_> whaaaaaat is thissssss
20:46:49 -!- monqy has quit (Disconnected by services).
20:46:55 -!- monqy_ has changed nick to monqy.
20:47:06 <Taneb> Someone put some of my code onto Uncyclopedia once.
20:47:10 <Taneb> That's how much I suck as a programmer
20:47:18 <monqy> -- We store operators which did not have enough operators --
20:47:20 <monqy> *operands?
20:47:29 <Taneb> ...yes
20:47:47 <monqy> this step function hurts
20:47:47 <elliott> fr operators which did not have enough operators
20:47:57 <Taneb> Look, I had enough difficulty getting it to run correctly.
20:48:12 <monqy> thats because it's
20:48:13 <monqy> it
20:48:24 <boily> when people sound like fungot quotes, then something important (and / or confusing) is happening.
20:48:25 <fungot> boily: disable case-switching keys i/ o register you want to set a string) an 65371-67407 ( ff5b-ff7f). only then did the message ?syntax error will occur.
20:50:42 <Taneb> monqy, elliott, anyone else, constructive criticism on how to improve my code would be much appreciated
20:51:06 <Bike> start over, maybe?
20:51:20 <oerjan> Taneb: hm your interpreter does not run my program correctly, whether or not i put it on one line. (Arc_Koen's C interpreter runs it correctly as one line.)
20:51:20 <Taneb> Bike, that's destructive, not constructive.
20:51:35 <oerjan> i shall modify his C interpreter to accept \n
20:51:39 <Taneb> This may be an old stupid broken version
20:51:41 <Taneb> Hang on
20:51:45 <elliott> Taneb: ok what i would do is throw away step
20:51:46 <elliott> and start over
20:51:47 <Bike> at a certain point i think it's better to just begin fresh
20:52:05 -!- Snowyowl has joined.
20:52:09 <monqy> pattern synonyms
20:52:18 <monqy> would help slightly
20:52:24 <monqy> with some of that syntactic noise
20:52:26 <Taneb> I believe I started over at least twice
20:52:32 <monqy> but i think a major restructuring is probably needed
20:52:46 <monqy> like factor out some of the common stuff out
20:54:00 <elliott> monqy: pattern synonyms aka...... prisms
20:54:05 <monqy> like
20:54:06 <monqy> step (viewl -> FPlus :< (viewl -> FNum arg1 :< (viewl -> FNum arg2 :< queue))) = queue |> FNum (arg1 + arg2) <$ put 0
20:54:09 <monqy> step (viewl -> FPlus :< (viewl -> FNum arg1 :< (viewl -> FCache (viewl -> EmptyL) :< (viewl -> FNum arg2 :< queue)))) = queue |> FNum (arg1 + arg2) <$ put 0
20:54:12 <monqy> this sort of pattern is pretty common
20:54:13 <elliott> really tho he has pattern synoynms
20:54:14 <elliott> since he has view patterns
20:54:18 <elliott> he's just not utilising them
20:54:27 <monqy> ye
20:54:42 <elliott> 2 bad view patterns sux
20:54:54 <oerjan> there you go
20:55:41 <monqy> Taneb: for stuff like that snippet i pasted, since you use that sort of thing everywhere where you check the queue and do that stuff you should make a function that does that for you, then just use that function in all of the cases with stuff like that. at the very least you could use that to clean up your binary operators
20:58:16 -!- AnotherTest has quit (Quit: Leaving.).
20:58:16 <monqy> Taneb: and instead of having those crazy nested view patterns you could make a helper-view that views the stuff in the way you want to view them
20:58:49 <monqy> Taneb: once you apply that sort of thinking to step it might be easier to see what further refactorings you can do since it'll be cleaner &c &c
21:01:32 <Taneb> Okay
21:01:39 -!- boily has quit (Quit: Poulet!).
21:02:08 <mroman> I'm still not sure about the complexity of shortest non occuring sequence :(
21:02:25 <monqy> alt. rewrite it using lens. lens is cool right
21:06:49 <oerjan> Taneb: http://esolangs.org/wiki/Deadfish#Fueue
21:07:34 <Taneb> :)
21:07:38 <Taneb> oerjan, well done
21:07:54 <oerjan> thank you
21:09:00 <oerjan> also elliott, i know he likes Deadfish interpreters
21:10:15 <elliott> i do
21:11:43 -!- Snowyowl has quit (Ping timeout: 245 seconds).
21:17:33 -!- Snowyowl has joined.
21:28:06 <Taneb> Well, I've significantly shortened the "step" function
21:28:32 <elliott> i hope you kept the old version
21:28:34 <elliott> for me to preserve 4eva
21:28:50 <Taneb> It's... still online
21:29:08 <Taneb> I'd make a local copy if you want to keep it that badly
21:32:15 <elliott> `done
21:32:16 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: done: not found
21:32:17 <elliott> *done
21:32:34 <elliott> whats the new one look like
21:33:50 <Taneb> Still not great
21:34:26 <Taneb> Refresh the old link
21:35:22 <elliott> thats some interesting function naming
21:35:26 <elliott> step (viewl -> FPlus :< (viewQueue2 -> Just (FNum arg1, FNum arg2, rest))) = rest |> FNum (arg1 + arg2) <$ put 0
21:35:30 <elliott> step (viewl -> FMult :< (viewQueue2 -> Just (FNum arg1, FNum arg2, rest))) = rest |> FNum (arg1 * arg2) <$ put 0
21:35:33 <elliott> step (viewl -> FDiv :< (viewQueue2 -> Just (FNum arg1, FNum arg2, rest))) = rest |> FNum (arg1 `div` arg2) <$ put 0
21:35:36 <elliott> you can abstract this out
21:35:40 <Taneb> Probably
21:45:53 <elliott> Taneb: for a start you can make it
21:46:08 <elliott> step (erm -> (FPlus, x, y, r)) -> r |> FNum (x + y) <$ put 0
21:53:05 <elliott> Taneb: (I assume you can figure out erm there)
21:53:20 <Taneb> Yes
21:53:37 <elliott> also you can drop the _ pattern from viewQueue1 there I think
21:53:39 <elliott> since your patterns are total
21:57:10 <Taneb> It's to appease -Wall
21:58:08 <elliott> -Wall shouldn't complain since they look completely total to me?
21:58:26 <Taneb> -Wall doesn't know about view patterns
21:59:01 <oerjan> is ghc smart enough not to apply viewl once per pattern in the above?
21:59:19 <elliott> oerjan: yes
21:59:24 <oerjan> ok
22:01:41 <oerjan> `olist
22:01:43 <HackEgo> shachaf oerjan
22:02:07 <oerjan> maybe Sgeo should be on that list too
22:02:20 <oerjan> except that's illogical
22:02:23 -!- derdon has quit (Quit: WeeChat 0.3.8).
22:02:45 <Taneb> Is olist for when Homestuck doesn't update?
22:02:54 <oerjan> no, it's for when oots does
22:03:19 <Sgeo> oh hey awesome
22:03:28 <Sgeo> Also my sleep schedule is now messed up beyond repair
22:03:30 <Sgeo> So tired...
22:04:03 <oerjan> `run echo ' Sgeo' >>bin/olist
22:04:06 <HackEgo> No output.
22:04:15 <elliott> oerjan: nice try
22:04:22 <oerjan> wat
22:04:25 <elliott> `olist
22:04:26 <HackEgo> shachaf oerjan \ /hackenv/bin/olist: line 2: Sgeo: command not found
22:04:29 <oerjan> oops
22:04:35 <oerjan> f
22:05:16 <oerjan> `run sed -i '1P; s/\n//' bin/olist
22:05:19 <HackEgo> No output.
22:05:24 <oerjan> `olist
22:05:25 <HackEgo> shachaf oerjan \ shachaf oerjan \ /hackenv/bin/olist: line 3: Sgeo: command not found
22:05:34 <oerjan> wat
22:05:38 <Sgeo> "That made it worse"
22:05:42 <oerjan> `revert
22:05:45 <HackEgo> Done.
22:05:54 <oerjan> `run sed -i '1N; s/\n//' bin/olist
22:05:58 <HackEgo> No output.
22:06:00 <oerjan> `olist
22:06:01 <HackEgo> shachaf oerjan Sgeo
22:06:03 <oerjan> yay
22:06:07 <Sgeo> :)
22:08:24 <olsner> what's the olist?
22:08:52 * oerjan swats olsner with his DRY swatter -----###
22:09:12 <olsner> I'm not repeating anything, swat yourself
22:09:30 <oerjan> why should i, i didn't repeat anything either, although you tried to make me
22:09:42 <olsner> it was a test of determination
22:09:59 <olsner> what's oots then?
22:14:41 <Snowyowl> Order of the Stick, by the way
22:15:15 <Taneb> Wow, the only Fueue Deadfish program doesn't work on any Fueue implementations
22:16:37 <oerjan> technically incorrect. the _other_ Fueue Deadfish program works on the C interpreter at least. it consists simply of removing unnecessary whitespace from the public one.
22:17:29 <oerjan> i haven't tested the ocaml one, since i don't have ocaml handy
22:18:39 <Taneb> The Haskell implementation does the Hello World, Alphabet, and Thue-Morse programs easily
22:18:54 <oerjan> what about the Truth machine?
22:19:05 -!- augur has quit (Remote host closed the connection).
22:19:23 <oerjan> if it doesn't work, there might easily be something wrong with input
22:19:39 -!- augur has joined.
22:19:43 <Taneb> Inexplicable parse error
22:19:50 <oerjan> hah
22:20:52 <Taneb> After working out what that was
22:21:01 <Taneb> (bash doesn't like dollar symbols in strings)
22:21:08 <Taneb> It's got a problem with input
22:22:07 <Taneb> Okay, that fixed it
22:24:02 -!- augur has quit (Ping timeout: 255 seconds).
22:28:09 -!- epicmonkey has quit (Remote host closed the connection).
22:28:27 <Taneb> oerjan, refresh the old link?
22:28:29 -!- epicmonkey has joined.
22:33:23 -!- Snowyowl has quit (Ping timeout: 245 seconds).
22:35:51 <Sgeo> Yay I'm vaguely awake
22:35:51 -!- Taneb has quit (Ping timeout: 245 seconds).
22:35:56 <Sgeo> Is J not doing derivatives?
22:36:05 <Sgeo> erm, antiderivatives
22:36:46 <Sgeo> ) 9!:14 ''
22:36:47 <jconn> Sgeo: j701/2011-01-10/11:25
22:37:27 <Sgeo> ) 9!:24 ''
22:37:27 <jconn> Sgeo: 1
22:40:07 <Sgeo> I don't understand D.
22:40:38 <Bike> ) 9!:D.124 ''
22:40:38 <jconn> Bike: |syntax error
22:40:38 <jconn> Bike: | 9!:D.124''
22:43:12 <Sgeo> Why was elliott using help for J 4
22:43:31 <Bike> ) 9!:D.1 24 ''
22:43:32 <jconn> Bike: |syntax error
22:43:32 <jconn> Bike: | 9!:D.1 24''
22:43:33 <elliott> i googled j vocabulary i think
22:43:37 <Bike> awwwww
22:43:43 <elliott> or what do you mean
22:44:01 <Sgeo> elliott, just as in, why you linked to a 402 dictionary
22:44:10 <elliott> do you mean http://www.jsoftware.com/help/dictionary/d402.htm
22:44:13 <Sgeo> Yes
22:44:15 <elliott> perhaps actually click the link
22:44:34 <elliott> some more J versions: http://www.jsoftware.com/help/dictionary/d212.htm http://www.jsoftware.com/help/dictionary/d112.htm
22:44:46 <Sgeo> oh
22:44:50 <Sgeo> :/
22:45:12 <Sgeo> Anyway, "What's the inverse of version"
22:45:29 <Sgeo> ) 9 (!:^:_1) 24 ''
22:45:29 <jconn> Sgeo: |syntax error
22:45:29 <jconn> Sgeo: | 9( !:^:_1)24''
22:46:01 <Sgeo> )(>:^:_1) 24
22:46:07 <Sgeo> ) (>:^:_1) 24
22:46:08 <jconn> Sgeo: 23
22:46:09 <Sgeo> oh duh
22:46:17 <Sgeo> !: isn't a verb, is it
22:46:24 <Bike> what!
22:46:42 <Sgeo> ) (9!:24)^:_1 ''
22:46:42 <jconn> Sgeo: |domain error
22:46:43 <jconn> Sgeo: | (9!:24)^:_1''
22:47:10 <Sgeo> It's a conjugation
22:47:19 <Sgeo> Because it needs to return a verb
22:47:27 <Bike> a conjugation of what
22:47:31 <Sgeo> So (9!:24) is a verb, !: isn't
22:47:37 <Sgeo> erm, conjunction
22:48:04 <Bike> oooookay
22:48:11 <Bike> ) (9!:24)D.1 ''
22:48:11 <jconn> Bike:
22:48:20 <Bike> glad we got that settled.
22:52:55 <monqy> )
22:53:48 <oerjan> ) 42
22:53:49 <jconn> oerjan: 42
22:54:20 <oerjan> ) :[):]
22:54:20 <jconn> oerjan: |spelling error
22:54:20 <jconn> oerjan: | :[):]
22:54:20 <jconn> oerjan: | ^
22:54:35 <oerjan> shockingly not a superset of fueue
22:55:44 <elliott> hm. i dream of a language based around overlapping brackets
22:55:54 <elliott> [like(this]see)
22:56:22 <Bike> ) #:t.3
22:56:22 <jconn> Bike: |domain error
22:56:22 <jconn> Bike: | #:t.3
22:56:56 <oerjan> ) 9!
22:56:56 <jconn> oerjan: |syntax error
22:56:57 <jconn> oerjan: | 9!
22:57:05 <oerjan> ) !9
22:57:05 <jconn> oerjan: 362880
22:57:06 <Sgeo> elliott, ~ATH ?
22:57:37 <monqy> um i hear that's not a real language. i think taneb told me.
22:57:44 <monqy> or was it you
22:57:49 <Bike> ) (#:D.3) 123
22:57:49 <jconn> Bike: 0 0 0 0 0 0 0
22:57:56 <Bike> ) (#:t.1)
22:57:56 <jconn> Bike: |domain error
22:57:57 <jconn> Bike: | ( #:t.1)
22:58:17 <Bike> this is crap
22:58:35 <elliott> The domain of the adverb t. is the same as the left domain of the derivative D. .
22:58:55 <Bike> so shouldn't it be working
22:59:06 <monqy> ) < < < < < < < < "j isn't crap!!!!"
22:59:06 <jconn> monqy: |open quote
22:59:06 <jconn> monqy: | < < < < < < < < "j isn't crap!!!!"
22:59:06 <jconn> monqy: | ^
22:59:09 <monqy> :(
22:59:16 <monqy> i forgot how to do quotes
22:59:18 <monqy> rip: me
22:59:30 <Bike> ) < < < < < < < < "j isn't crap!!!
22:59:31 <jconn> Bike: |open quote
22:59:31 <Sgeo> ) < < < < < < < < 'j isn''t crap!!!!'
22:59:31 <jconn> Bike: | < < < < < < < < "j isn't crap!!!
22:59:31 <jconn> Bike: | ^
22:59:31 <jconn> Sgeo: +------------------------------+
22:59:31 <jconn> Sgeo: |+----------------------------+|
22:59:31 <jconn> Sgeo: ||+--------------------------+||
22:59:31 <jconn> Sgeo: |||+------------------------+|||
22:59:32 <jconn> Sgeo: ||||+----------------------+||||
22:59:32 <jconn> Sgeo: ...
22:59:40 <Bike> oh come on you can do better than that j
22:59:49 <elliott> good
22:59:59 <Bike> ) < < < 'monqy
22:59:59 <jconn> Bike: |open quote
22:59:59 <jconn> Bike: | < < < 'monqy
22:59:59 <jconn> Bike: | ^
23:00:01 <Bike> ) < < < 'monqy'
23:00:01 <jconn> Bike: +---------+
23:00:02 <jconn> Bike: |+-------+|
23:00:02 <jconn> Bike: ||+-----+||
23:00:02 <jconn> Bike: |||monqy|||
23:00:02 <jconn> Bike: ||+-----+||
23:00:02 <jconn> Bike: ...
23:00:04 <Sgeo> ) i. 10 1
23:00:05 <jconn> Sgeo: 0
23:00:05 <jconn> Sgeo: 1
23:00:05 <jconn> Sgeo: 2
23:00:05 <jconn> Sgeo: 3
23:00:05 <jconn> Sgeo: 4
23:00:05 <jconn> Sgeo: ...
23:00:12 <Bike> monqy why don't you fit in the box?
23:00:17 <Bike> is that what i'm supposed to ask you?
23:00:28 <monqy> no
23:00:35 <monqy> you're not supposed to ask anyone that
23:00:38 <monqy> you're not supposed to ask that
23:00:44 <Bike> ok what am i supposed to ask you then
23:00:47 <monqy> idk
23:00:53 <Bike> dammit
23:00:56 <Bike> ) < < 'asking'
23:00:56 <jconn> Bike: +--------+
23:00:56 <jconn> Bike: |+------+|
23:00:56 <jconn> Bike: ||asking||
23:00:56 <jconn> Bike: |+------+|
23:00:56 <jconn> Bike: +--------+
23:01:15 <Sgeo> ) (<^:100) 'hi'
23:01:15 <jconn> Sgeo: +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
23:01:16 <jconn> Sgeo: |+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|
23:01:16 <jconn> Sgeo: ||+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+||
23:01:16 <jconn> Sgeo: |||+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+|||
23:01:21 -!- noam__ has quit (Read error: Connection reset by peer).
23:01:23 <jconn> Sgeo: ||||+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+||||
23:01:23 <jconn> Sgeo: ...
23:01:30 <Bike> i concur
23:01:39 <Phantom_Hoover> wtf
23:01:44 -!- noam__ has joined.
23:01:52 <elliott> ) (<^:1000) 'x'
23:01:56 <kmc> i am disappoint at the lack of box drawing characters
23:02:10 <Bike> hm
23:02:18 <Bike> sgeo how do we redefine the box printing
23:02:32 <Sgeo> Um. At least locally there's a thing to switch it
23:02:46 <Sgeo> Any system related stuff is likely in here http://www.jsoftware.com/docs/help701/dictionary/xmain.htm
23:03:01 <monqy> ) 'are you still there'
23:03:12 <monqy> elliott.........
23:03:40 <elliott> good job me
23:03:42 <Bike> ñó í þhíñœ åé ßhóúøð bé åëíþíñg þhé öëíñþéë fúñ©þíóñß éëbß° íñ Ï ðíëé©þøüç §géó
23:03:46 <elliott> i blame sgeo for bringing that bot in here
23:03:51 <Sgeo> ) 9!:12 ''
23:03:57 <Bike> so is it frozen in jsoftware too
23:04:49 <Bike> :t (^:)
23:04:51 <lambdabot> Not in scope: `^:'
23:04:51 <lambdabot> Perhaps you meant one of these:
23:04:51 <lambdabot> `^' (imported from Prelude), `^^' (imported from Prelude),
23:04:59 <Sgeo> It is frozen in jsoftware
23:05:04 <monqy> gj
23:05:10 <kmc> hex edit the binary
23:05:11 <kmc> every day
23:05:14 <Bike> boxes are hard man
23:05:40 <Sgeo> There is a thing for execution time limit
23:05:57 -!- jconn has quit (Ping timeout: 248 seconds).
23:06:11 <monqy> rip
23:06:30 <Bike> good time limit
23:06:45 <elliott> did i do a bad thing
23:06:46 <monqy> my local jconsole uses box drawing chars
23:06:53 <monqy> jealous????????
23:07:11 -!- carado has quit (Ping timeout: 246 seconds).
23:07:43 <Bike> @let (^:) fn 0 = id; (^:) fn n = fn (fn ^: (n-1))
23:07:46 <lambdabot> Defined.
23:07:54 <Bike> what
23:07:57 <kmc> monqy: yes
23:08:01 <elliott> Bike: um...
23:08:03 <elliott> :t (^:)
23:08:05 <lambdabot> (Eq a, Num a) => ((a1 -> a1) -> a1 -> a1) -> a -> a1 -> a1
23:08:10 <elliott> thats not quite right
23:08:14 <Bike> ok good
23:08:16 <elliott> @undefine
23:08:22 <Bike> for a second i thought i did it right and was confused
23:08:29 <elliott> @let _ ^: 0 = id; f ^: n = f . (f ^: (n-1))
23:08:30 <lambdabot> Defined.
23:08:32 <elliott> :t (^:)
23:08:33 <lambdabot> (Eq a, Num a) => (a1 -> a1) -> a -> a1 -> a1
23:08:56 <Sgeo> Can it do infinity?
23:09:06 <monqy> yes
23:09:07 <monqy> :t fix
23:09:09 <lambdabot> (a -> a) -> a
23:09:29 <Bike> > (((+) 1) ^: 1000) 9
23:09:32 <lambdabot> mueval-core: Time limit exceeded
23:09:38 <Bike> hooray!
23:09:46 <elliott> ((+) 1) can also be written (1 +)
23:09:49 <elliott> :t Succ
23:09:50 <monqy> lambdabot knows where it's at
23:09:51 <lambdabot> Not in scope: data constructor `Succ'
23:09:52 <elliott> :t S
23:09:54 <lambdabot> Not in scope: data constructor `S'
23:09:55 <monqy> :t succ
23:09:56 <lambdabot> Enum a => a -> a
23:09:57 <elliott> eh
23:10:01 <Bike> :t Just
23:10:01 <elliott> how can I construct this piece by piece
23:10:03 <lambdabot> a -> Maybe a
23:10:04 <elliott> monqy: i'm trying to get lazy nats
23:10:10 <Bike> > (Just ^: 1000) 9
23:10:12 <monqy> oh, lazy nats
23:10:13 <elliott> :t infinity
23:10:13 <lambdabot> Occurs check: cannot construct the infinite type:
23:10:13 <lambdabot> a10 = Data.Maybe.Maybe...
23:10:15 <lambdabot> Not in scope: `infinity'
23:10:19 <elliott> :t Data.Number.Natural.infinity
23:10:21 <lambdabot> Data.Number.Natural.Natural
23:10:29 <Bike> wait where's the infinite type
23:10:35 <elliott> > (("hi" ++) ^: Data.Number.Natural.infinity) "end"
23:10:37 <lambdabot> Not in scope: `Data.Number.Natural.infinity'
23:10:39 <elliott> nooooo
23:11:08 <elliott> @src
23:11:08 <lambdabot> src <id>. Display the implementation of a standard function
23:11:12 <elliott> uh
23:11:13 <elliott> @litas
23:11:13 <lambdabot> Unknown command, try @list
23:11:14 <elliott> @list
23:11:14 <lambdabot> http://code.haskell.org/lambdabot/COMMANDS
23:11:20 <Bike> shouldn't the type be just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just Just
23:11:33 <elliott> http://code.haskell.org/lambdabot/State/L.hs
23:11:41 <elliott> how do we get the conaturals from this
23:11:53 <Sgeo> Just is not a type
23:12:04 <Bike> there's an Int at the end there.
23:12:11 <monqy> elliott: something with Mu and Maybe?
23:12:13 <Sgeo> Just ... Int is not a type
23:12:19 <Sgeo> Maybe you mean Maybe
23:12:22 <Bike> fine, that
23:12:41 <Bike> and then monad laws should fold it to Maybe Int anyway
23:12:47 <elliott> monqy: that has no Num instance tho
23:12:47 <Bike> :t Just Just Just 9
23:12:49 <lambdabot> The function `Just' is applied to three arguments,
23:12:49 <lambdabot> but its type `a0 -> Maybe a0' has only one
23:12:49 <lambdabot> In the expression: Just Just Just 9
23:12:50 <elliott> and (^:) needs Num,Eq
23:12:58 <Sgeo> Maybe (Maybe Int) contains information that Maybe Int doesn't
23:13:08 <Bike> man ugh
23:13:13 <Bike> :t Just (Just (Just 9))
23:13:15 <lambdabot> Num a => Maybe (Maybe (Maybe a))
23:13:23 <monqy> elliott: oh right, ugh
23:13:25 <Bike> :t Just ^: 3
23:13:26 <lambdabot> Occurs check: cannot construct the infinite type: a10 = Maybe a10
23:13:27 <lambdabot> Expected type: a10 -> a10
23:13:27 <lambdabot> Actual type: a10 -> Maybe a10
23:13:38 <monqy> elliott: clearly redefine (^:)
23:13:47 <elliott> monqy: wow thats cheating friend
23:13:48 <Bike> it's a crappy definition anyway
23:13:50 <Sgeo> You can always join it if it's like Maybe (Maybe a), but that doesn't mean it's a good idea
23:13:54 <Bike> also seriously what's even going on here
23:14:21 <elliott> oh i have a silly idea
23:14:24 <Bike> :t Just . Just . Just
23:14:25 <lambdabot> a -> Maybe (Maybe (Maybe a))
23:14:27 <elliott> > (("hi" ++) ^: var "x") "end"
23:14:29 <lambdabot> "hihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihi...
23:14:33 <elliott> heheheheheheh
23:14:38 <monqy> thats too silly
23:14:41 <Bike> what the fuck is that
23:15:01 <monqy> i prefer my Mu Maybe just because it doesn't use stupid instances
23:15:15 <elliott> monqy: by way of lacking the instance we need
23:15:19 <monqy> yes
23:15:40 <Bike> :t (1 +) ^: 1000
23:15:41 <lambdabot> Num a1 => a1 -> a1
23:15:54 <Bike> :t 1 +
23:15:55 <lambdabot> parse error (possibly incorrect indentation)
23:15:59 <Bike> :t (1 +)
23:16:00 <lambdabot> Num a => a -> a
23:16:14 <Bike> oh, wait, now i get it.
23:16:17 <Bike> :t (^:)
23:16:19 <lambdabot> (Eq a, Num a) => (a1 -> a1) -> a -> a1 -> a1
23:16:25 <Bike> what an oddysey that was
23:16:54 <monqy> :t (****)
23:16:55 <lambdabot> Not in scope: `****'
23:16:55 <lambdabot> Perhaps you meant one of these:
23:16:55 <lambdabot> `***' (imported from Control.Arrow),
23:17:06 <monqy> how old is that L.hs
23:17:08 <Bike> so uh
23:17:15 <Bike> is there any reason this L.hs has Portal jokes in it
23:17:33 <Bike> :t cake
23:17:35 <lambdabot> [[Char]]
23:17:40 <Bike> nooooo
23:17:51 <kmc> > text $ concat cake
23:17:53 <monqy> is that a portal joke?
23:17:54 <lambdabot> One 18.25 ounce package chocolate cake mix.One can prepared coconut pecan f...
23:18:09 <Bike> also
23:18:13 <Bike> :t fromChuch
23:18:14 <lambdabot> Not in scope: `fromChuch'
23:18:21 <Bike> huh
23:18:26 <monqy> 15:17:04 <monqy> how old is that L.hs
23:19:08 <monqy> since (****) is "a lot like" (^:)
23:19:28 <monqy> but :t couldn't find it??
23:19:46 <Bike> :t (!!)
23:19:47 <lambdabot> [a] -> Int -> a
23:20:00 <oerjan> > [1..x]
23:20:02 <lambdabot> *Exception: not a number
23:20:09 <Bike> wow that seems like a really weird way to write it but ok
23:20:12 <oerjan> WEAK
23:22:00 <oerjan> @hoogle (****)
23:22:00 <lambdabot> No results found
23:22:32 <elliott> i dont think its a portal joke?????
23:22:37 <elliott> i never finished portal tho
23:22:40 <kmc> i think it's the cake recipe from portal
23:23:00 <kmc> so a portal reference, but not one of the ones that's been run into the ground
23:23:02 <oerjan> > text $ unlines cake
23:23:05 <lambdabot> One 18.25 ounce package chocolate cake mix.
23:23:05 <lambdabot> One can prepared coconut pecan...
23:23:08 <kmc> though I think portal references are cool again
23:23:09 <kmc> but that's just me
23:23:13 <Bike> NO
23:23:25 <Bike> > cake !! 14
23:23:27 <lambdabot> "Pull and peel licorice."
23:23:37 <Bike> > cake !! 20
23:23:39 <lambdabot> "Fiberglass surface resins."
23:27:32 -!- epicmonkey has quit (Ping timeout: 248 seconds).
23:40:07 -!- impomatic has left.
23:40:08 -!- impomatic has quit (Quit: impomatic).
23:46:26 -!- impomatic has joined.
23:49:04 <Sgeo> I suck at being a wolf
23:49:21 <elliott> ???
23:49:45 <Bike> me too, sgeo. me too
23:50:27 <fizzie> fungot: Be a wolf.
23:50:28 <fungot> fizzie: the details of a line of the first byte of the kernal clall routine is called to update that pointer, changing the character rom at 49152 ( c000).
23:50:55 <fizzie> I didn't know wolves were so interested in programming.
23:51:06 <elliott> kernal clal
23:51:08 <elliott> *clall
23:51:13 <monqy> ^style
23:51:13 <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
23:51:22 <monqy> ah of course
23:51:50 <fizzie> The "clall" bit might be an OCR mishap, I think some of those books were scanned.
23:52:09 <fizzie> Or maybe it's the actual name of the routine.
23:52:59 <fizzie> Indeed, it seems to be.
23:53:15 <fizzie> (It CLoses ALL files.)
23:53:54 <elliott> monqy: the "kernal" gives it away
23:54:31 <Bike> haha
23:54:40 <monqy> im not familiar with c64 style :(
23:54:42 <fizzie> But there are some actual mishaps, like 0's in place of o's, in regular text. (Unless of course it's from a l33t b00k.)
23:55:26 <Bike> monqy: the c64 has a thing called a "kernal", sort of like how http has "referers"
23:55:32 <fizzie> fungot: Tell me a little bit more about the character ROM.
23:55:33 <fungot> fizzie: 50 if a or b is set to 1 and setting the character data table is used as a logical file number here.
23:56:00 <oerjan> fungot: shocking
23:56:00 <fungot> oerjan: 1) call this routine sets up three windows, and
23:56:33 <fizzie> fungot: ...and?
23:56:34 <fungot> fizzie: in the
23:56:50 <fizzie> fungot: ...in the what?
23:56:51 <fungot> fizzie: chrin 804, 61783, 65487 ( decimal)
23:57:11 <fizzie> It's like pulling teeth from a hard-to-pull-teeth-from object.
23:57:48 <monqy> pulling teeth from a rock
23:57:55 <oerjan> i see you are pulling metaphors
23:59:08 <Sgeo> I think I found a channel that may tolerate my constant language blather
23:59:14 <elliott> what is it
23:59:21 <Sgeo> yfl
23:59:33 <elliott> what's a yfl.........
23:59:38 <Bike> Your Fucking Language?
23:59:57 <Sgeo> You Fancy Languages?
2013-01-31
00:00:05 <Bike> "You Fancy Languages? The polyglot programmer hangout." oh nooooo
00:00:06 <monqy> channel with sgeo and a bunch of bots in it and that's it
00:00:38 <Bike> no public logging hmmmmm what are you getting up to in there sgeo
00:00:45 <elliott> i like how this is half people from #haskell
00:00:55 <elliott> imo this place is less cosy than #esoteric
00:01:01 <Bike> this is cosy?
00:01:14 <monqy> did you guys join yfl
00:01:40 <elliott> i joined yfl
00:01:46 <elliott> prolly nobody else did
00:01:47 <Bike> n o i m e a n t # e s o t e r i c
00:01:54 <elliott> imo #esoteric is p.cosy
00:02:05 <monqy> yfl seems to have a thing for erlang
00:02:06 <monqy> any idea why
00:02:39 <monqy> OOPs
00:02:40 <monqy> Object Orientation supporting languages. Just to show that there's more to them than just C++ and Java.
00:02:42 <monqy> There are currently no items in this folder.
00:02:48 <monqy> rip
00:03:21 <elliott> guess there's not more to them than just C++ and java
00:03:32 <oerjan> È bella cosí
00:03:46 <monqy> their fp 'folder' is erlang, sicp, high vs low level languages, erlang, erlang, curry, clojure
00:03:58 <elliott> 140 Characters of Stupid at a Time
00:03:59 <elliott> I don't use Twitter. For any reason. Here's why.
00:04:08 <elliott> this is from the guy who wrote that haskell troll (hes in #yfl (remember when he joined here))
00:04:12 <oerjan> oops, *così
00:04:18 <elliott> (remember when shachaf scared him off)
00:04:24 <elliott> Here's a thought, Michael: if you're too fucking lazy to open an account on a well-known web site, I probably don't want your lazy ass working my code. See, I want my contributors to actually think and work on their contributions. If signing up for a web site is too much work for you, chances are complying with coding guidelines, writing proper test cases, etc. is also too much work for you.
00:04:35 <elliott> So this next asshat, Mark, thinks that people should use tools based on how easy it is for others to access them instead of the project's principals. Shit, here he's talking about one web site over another. Damn, his brain would fucking explode if someone chose not just another web site but a whole different SCM!
00:04:40 <elliott> Seriously, WTF is it with these Github shitheads? Hipster languages. Hipster web sites. Hipster operating systems. Then talking as if this were rational!
00:04:43 <elliott> Advantage: G3rtm and sanity.
00:04:52 <Bike> fucking hipsters god
00:04:56 <elliott> i think actually punching myself in the face would hurt less than this
00:04:56 <Bike> damn!!!
00:05:05 <elliott> So, according to this twerp, making life more difficult for your core developers is "meta-optimising" because it allows lazy assholes to contribute lazy-assed work. Got it.
00:05:10 <Bike> you know what would hurt less than this? not doing this
00:05:11 <elliott> So not only is this asshat inconsistent in his belief in meta-optimization, he also somehow thinks that all code is deployed on Linux servers. Apparently the myriad of PCs running Windows out there don't exist in his world. Nor do the Macs running OSX. Nor do the smartphones running iOS or Android. Nor do embedded systems of any kind (despite, you know, the overwhelming majority of software in the world running on those).
00:05:12 <Bike> hth
00:05:17 <oerjan> elliott: that's verbose, i think he needs more twitter to cut down the length
00:05:17 <elliott> Just how fucking stupid can you get?
00:05:17 <elliott> Set: G3rtm and sanity.
00:05:25 <elliott> As for me? I use unpopular tools in my stuff: unpopular languages, unpopular SCM, unpopular everything, precisely as a filter to get rid of asshats like this Mark Wotton guy and this Michael Klishin guy. They're great hipster filters.
00:05:32 <elliott> Fuck I wish I'd said that myself. :(
00:05:41 <elliott> ran out of blog post to quote from
00:05:45 <elliott> lets find another(?)
00:06:04 -!- Bike has set topic: char*a,b[9999];main(){gets(a=b);while(*a){a+=(b[*a]-=b[a[1]])?3:a[2];}puts(b+1);} | a good hipster filter http://codu.org/logs/_esoteric/.
00:06:33 <elliott> ugh all these other posts look more boring
00:06:38 <Gregor> I order something custom-made online, it says it'll take five to six weeks. Ten days later, they ship it express (after I only paid for slowmail). Dahell?
00:06:38 <elliott> as in more boring to quote from
00:09:06 <fizzie> Gregor: It's poisoned and they want to get rid of you ASAP, HTH, HAND.
00:10:06 <Gregor> Ahhhhhh, that explains it.
00:11:19 <monqy> elliott: so is yfl any good
00:11:43 <elliott> its very silent
00:15:22 <fizzie> Term of the day: "the curse of dimensionality". (It is something a wicked witch might cast.)
00:15:49 -!- impomatic has quit (Quit: http://corewar.co.uk).
00:15:55 <oerjan> the wicked witch of which direction, exactly?
00:16:19 <kmc> what's a hipster filter?
00:16:47 <kmc> fungot: are you a hipster?
00:16:48 <fungot> kmc: foreground 10 background 2 color ( chart,above), and that it performs the reverse of inx, is displayed
00:20:11 <fizzie> oerjan: The wicked witch of the ana or kata, presumably.
00:22:33 -!- DHeadshot has joined.
00:24:44 <oerjan> aha
00:26:49 <oerjan> now if east/west are wicked, north/south are good, and ana/kata are wicked, it follows for balance that up/down must be good.
00:27:38 <Phantom_Hoover> is ana/kata a hughesism
00:28:15 <oerjan> http://en.wikipedia.org/wiki/Charles_Howard_Hinton
00:28:26 <Phantom_Hoover> aha, that makes more sense
00:33:08 -!- sebbu has quit (Ping timeout: 248 seconds).
00:42:57 -!- sebbu has joined.
00:57:40 -!- sebbu has quit (Ping timeout: 248 seconds).
01:01:46 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:24:40 <kmc> elliott: where is that quote from
01:24:47 <kmc> also i thought hipsters like things that aren't popular yet
01:24:55 <elliott> kmc: you mean the really long awful one
01:24:58 <elliott> are you sure you want to know
01:25:05 <kmc> nm i googled it
01:26:13 <kmc> i forgot that 'hipster' is a generic pejorative that can be applied to anyone
01:29:45 -!- sebbu has joined.
01:43:00 <elliott> Sgeo: I like this channel already.
01:44:04 -!- sebbu has quit (Ping timeout: 248 seconds).
01:48:26 <kmc> elliott: neither the people tweeting nor the person making fun of them seem to have any good reason to care as much as they do
01:48:48 <elliott> are you suggesting i would quote anything with any kind of value whatsoever
01:48:52 <elliott> do you even know me
01:50:52 -!- sebbu has joined.
01:58:54 -!- sebbu has quit (Ping timeout: 264 seconds).
02:04:59 <kmc> USB wifi adapters are really tiny now
02:05:05 <kmc> like "barely sticks out of the port" tiny
02:08:34 <kmc> so i'm giving a lecture tomorrow which includes stuff about different systems being turing complete and therefore equivalently powerful
02:08:47 <kmc> Ask #esoteric: what are amusing / interesting examples of TC systems?
02:09:29 <Bike> crabs
02:09:58 <elliott> seconding bike
02:10:48 <monqy> pencils
02:10:52 <kmc> i could bring a bunch of live crabs into lecture
02:11:02 <kmc> have a digression about marine biology
02:11:08 <kmc> pass one around the class in a little dish full of water <3
02:11:36 <elliott> kmc: can I come to your lecture
02:11:42 <Bike> http://arxiv.org/abs/1204.1749 here's your cite
02:11:45 <kmc> yes it's in cambridge ma though
02:12:02 <kmc> Bike: nice
02:12:02 <Bike> oh and i guess you'd need to cite shannon or whoever to get computers out of gates? w/e
02:12:20 <Bike> i like the "laboratory models"
02:12:22 <Bike> fun lab imo
02:12:35 <elliott> kmc: can you give me a plane ticket
02:12:38 <Sgeo> kmc, langton ants?
02:12:41 <Sgeo> game of life?
02:12:54 <elliott> CAs are kind of sticky there
02:13:24 <kmc> this is the only computer I've seen that has a part labeled "intimidation plate"
02:13:40 <elliott> I think I need one of those for my computer
02:13:53 <Bike> hm what's another one though
02:13:59 <Bike> fucking everything and its mother is turing complete
02:14:04 <Bike> (parse as you will)
02:14:25 <oerjan> i did.
02:14:52 <Bike> unrestricted grammars are pretty obvious but they're probably useful pedagogically
02:14:58 <Bike> to get across the "fucking everything" part
02:26:17 <Sgeo> help ttm is talking to me
02:28:05 <elliott> wow sgeo
02:28:07 <elliott> this channel really is quality
02:30:17 <elliott> hahaha christ
02:30:23 <Bike> i made a good decision.
02:31:45 <elliott> Bike: hope you feel welcome
02:31:54 <shachaf> hi
02:31:57 <shachaf> which channel
02:32:02 <elliott> no channel, shachaf
02:32:03 <shachaf> is it #esoteric
02:32:09 <elliott> yes
02:32:23 <shachaf> is it #yfl
02:32:29 <elliott> no
02:32:48 <shachaf> ski is in there
02:32:52 <shachaf> that must be good right??
02:33:07 <elliott> shachaf: remember that great ttmrichter guy
02:33:11 <elliott> who wrote that great post about haskell once
02:33:18 <elliott> i bet you want to spend lots of time in a room where he has ops right
02:33:39 <shachaf> i love that guy!!
02:33:49 <shachaf> (Actually I know nothing about him.)
02:33:56 <shachaf> (Why is ski in that channel?)
02:34:09 <elliott> whats your poison bike
02:34:26 <elliott> mine is cyanide
02:35:59 <elliott> Bike: is this real
02:36:35 <Bike> elliott: as separate components sure, don't you know your peirce?
02:36:38 <elliott> no Sgeo.... dont
02:36:44 <elliott> no shachaf... dont
02:36:53 <Bike> http://en.wikipedia.org/wiki/Abductive_logic_programming
02:37:22 <Bike> elliott: see what you've started
02:37:34 <elliott> um I believe this is all your fault Bike
02:37:35 <elliott> or at least
02:37:35 <Bike> you've become a trendsetter...a hipster of the highest order.........
02:37:36 <elliott> Sgeo's
02:37:37 <monqy> no Bike, sgeo's taking the blame here
02:37:55 <shachaf> you've started a movement
02:37:57 <Bike> sgeo's credit
02:39:13 -!- oerjan has quit (Quit: n'thigg).
02:39:28 <Bike> i like how i have no idea who anybody is even though some of you obviously have a History
02:39:44 <shachaf> Bike: just listen to elliott????????
02:39:51 <elliott> Bike: who has a history
02:39:56 <elliott> or what do you mean
02:40:01 <elliott> oh do you mean people in #esoteric in general or something
02:40:03 <elliott> help??
02:40:07 <Bike> well apparently you know who ttmrichter and ski are
02:40:16 <elliott> ski is a regular in #haskell
02:40:22 <Bike> see there you go
02:40:24 <shachaf> ski is no regular
02:40:26 <elliott> ttmrichter is some guy who wrote a really trolly flamebait blog post about haskell once
02:40:29 <elliott> and then joined #esoteric
02:40:32 <elliott> and then shachaf drove him away
02:40:33 <elliott> ps this was days ago
02:40:36 <Bike> yeah was that the one about cabal
02:40:39 <Bike> good times
02:40:39 <elliott> yes
02:40:44 <shachaf> ski is an extraordinary
02:40:59 <Bike> shachaf, you thought beaky was an extraordinary.
02:41:22 <shachaf> beaky filled a much-needed gap in #haskell
02:41:30 <elliott> I remember when shachaf wanted to get beaky banned.
02:41:41 <shachaf> elliott: I never wanted that?
02:41:57 <shachaf> I wanted people to be aware of beaky, that's all.
02:43:51 <Bike> So what's the deal with ski. I don't want to be the sacrifice, man.
02:44:09 * monqy . o O ( Yeah, what's the deal with that guy? )
02:44:22 <shachaf> ther´es no ´`deal`´??
02:45:10 <monqy> btw whats this blog post
02:45:18 <Bike> I'm pretty sure there's a ´`deal`´ and I want to know whether I should be in on this ´`deal`´..
02:45:27 <elliott> ski's a cool dude
02:45:28 * shachaf · ∘ o ○ ( hi monqy )
02:45:51 <shachaf> ski is what you might call "a cool dude"
02:46:15 <Bike> oh "a cool dude"s are usually cool
02:46:27 <shachaf> very often so
02:46:35 <shachaf> it's almost like they have something in common
02:47:08 <shachaf> btw in hebrew "dude" means "water heater"
02:47:18 <shachaf> so a "cool dude" would be a problem??
02:47:24 <shachaf> you might even say it would be a dud
02:48:17 -!- NihilistDandy has joined.
03:00:13 <kmc> haha
03:06:03 <kmc> do you think it's fair to say that the distinguishing property of a compiler vs. an interpreter is that a compiler doesn't infinite-loop even if the program it's compiling does?
03:06:50 <Bike> I think it's better to think of it as partial evaluation of an interpreter if you're going to go that road.
03:07:09 <kmc> mm
03:07:25 <kmc> futamura projections, another thing I won't have time to get to in this lecture :(
03:07:32 <monqy> what if it's an awful compiler with bugs. the bug is that the language has undecidable something or other (type system? metalanguage?) and they forgot to put in a timeout
03:08:54 <Bike> yeah that's what i was thinking of
03:09:13 <Bike> often it's not straightforward what's compile-time and what's interpret-time and bla bla fuckin bla
03:09:36 <monqy> 'artificial distinction' &c &c
03:10:01 <Sgeo> Interpreter that after a certain amount of time... quits and forks to execute the remainder of the program?
03:10:12 <kmc> yeah i know it's not straightforward
03:10:29 <Bike> maybe it would be best to explain it with some kind of static analysis
03:10:36 <kmc> but I think it's a reasonable distinction to talk about, in the middle of a discussion of halting problem and such
03:10:46 <Sgeo> Static analysis does not imply compiled
03:10:50 <Bike> i am aware.
03:11:14 <Bike> but an idealized compiler looks at a program "statically" enough that whatever it's doing is computable.
03:12:01 <Sgeo> How do you distinguish compiler v interpreter for non-TC languages not capable of infinite looping?
03:12:11 <kmc> you wouldn't
03:12:29 <kmc> it's not an ironclad mathematical definition
03:12:40 <Arc_Koen> in my opinion a compiler maps a program in one language to its representation in another language (usually lower level) - an interpreter on the other hand maps the program to its effect when executed (which is probably a good way to represent the program, except you might be showing only one possible outcome out of severals, for instance if the program is nondeterministic, or if you're interpreting it over a specific input
03:12:40 <lambdabot> Arc_Koen: You have 2 new messages. '/msg lambdabot @messages' to read them.
03:12:44 <elliott> kmc: if you see programs as functions, the distinction is "simpler"
03:12:48 <Arc_Koen> @messages
03:12:48 <lambdabot> oerjan said 2m 8d 6h 52m 47s ago: "Note that functions . and , actually modify their input world, rather than a copy." <-- that's evil! also not pure.
03:12:48 <lambdabot> oerjan said 6h 32m 40s ago: your fueue interpreters only allow literal ' ' as whitespace (and i suspect the ocaml one doesn't accept even that inside loops.) this ruins my pretty indentation and is
03:12:48 <lambdabot> therefore UNACCEPTABLE hth
03:12:51 <monqy> i'd sure distinguish them!!!!!
03:12:54 <kmc> it's a way of looking at things which makes certain things clearer and others less clear
03:13:11 <Sgeo> I think Arc_Koen's definition matches my intuitive one better
03:13:33 <kmc> also I'm not asking "what is the best definition of compiler", i was asking whether a particular unusual view is useful / interesting in a particular context
03:13:34 <elliott> kmc: interpreter :: ({A -> B}_L, A) -> B; compiler :: {A -> B}_L -> {A -> B}_T
03:13:44 <Bike> kmc: well, i don't think it is
03:13:46 <elliott> kmc: hideously ad-hoc notation: {X}_L means a program in L representing a function of type X
03:13:52 <elliott> and T is the target language
03:14:14 <elliott> that essentially boils down to "a compiler is a partial application of an interpreter", I guess, but you have the distinction of what language things are represented in
03:14:38 <kmc> oh well
03:14:40 <monqy> at the level the compiler/interpreter distinction makes sense (translation vs 'execution'??? who knows.........) i think it'd make sense to distinguish e.g. 'compiling' a regular expression to a DFA vs. checking membership of a string directly
03:14:54 <monqy> it's a pretty ill-defined thing to talk about...
03:14:57 <monqy> i prefer not to....
03:15:23 <Bike> "not compiling means doing a pointless bunch of crap a bajillion times. or at least cutting down on the crap"
03:26:59 <Sgeo> http://www.reddit.com/r/haskell/comments/17kynn/rubygemsorg_got_hacked_today_is_hackage_safe/
03:27:19 <Sgeo> "Is Hackage safe?
03:27:19 <Sgeo> Not at all. As everyone can upload a new version of any package, it should take about 5 minutes to break Hackage."
03:27:20 <Sgeo> BRILLIANT
03:29:09 <Bike> "mission critical" is such a set phrase
03:29:12 <elliott> "anyone at all" with a hackage account
03:29:39 <Bike> so are there worms written in haskell yet
03:29:50 <Bike> type-safe elk cloner to commemorate the anniversary
03:36:46 -!- jconn has joined.
03:38:05 <monqy> ) welcome back jconn
03:38:05 <jconn> monqy: welcome back jconn
03:38:09 <monqy> thank you!!!
03:38:15 <monqy> but my name's monqy.....
03:38:20 <elliott> ) hello
03:38:21 <jconn> elliott: |value error: hello
03:38:25 <elliott> wow
03:38:27 <elliott> why does it love monqy and not me
03:39:54 <Sgeo> ) 2 1$<"0'hi'
03:39:54 <jconn> Sgeo: +-+
03:39:55 <jconn> Sgeo: |h|
03:39:55 <jconn> Sgeo: +-+
03:39:55 <jconn> Sgeo: |i|
03:39:55 <jconn> Sgeo: +-+
03:40:14 <Sgeo> Probably an easier way to write that
03:40:58 <Sgeo> ) a b c
03:40:58 <jconn> Sgeo: a b c
03:41:05 <Sgeo> ) a b
03:41:05 <jconn> Sgeo: a b
03:42:10 <Sgeo> ) 'Hi'"0`'Bye'"0@.?2
03:42:11 <jconn> Sgeo: |domain error
03:42:11 <jconn> Sgeo: | 'Hi'"0`'Bye'"0@.?2
03:42:14 <Sgeo> ) 'Hi'"0`'Bye'"0@.?1
03:42:14 <jconn> Sgeo: |domain error
03:42:14 <jconn> Sgeo: | 'Hi'"0`'Bye'"0@.?1
03:42:19 <Sgeo> :/
03:42:54 <Sgeo> ) ;:'''Hi''"0`''Bye''"0@.?1'
03:42:55 <jconn> Sgeo: +----+-+-+-+-----+-+-+--+-+-+
03:42:55 <jconn> Sgeo: |'Hi'|"|0|`|'Bye'|"|0|@.|?|1|
03:42:55 <jconn> Sgeo: +----+-+-+-+-----+-+-+--+-+-+
03:43:09 <Sgeo> quoting hell :(
03:43:38 <monqy> woops
03:44:10 <Sgeo> string delimiters should be nestable
03:44:19 <Sgeo> erm, hmm
03:44:49 <Sgeo> Well, if strings can store code sometimes it makes good sense
03:44:52 <Sgeo> (see Tcl)
03:45:04 <Sgeo> Although the fact that "" in Tcl isn't nestable sucks
04:08:02 <Sgeo> This is the best thing ever http://www.youtube.com/watch?v=iBxzXCBFf1w&list=PLxHXPBa3SI_iwFjAv9lLwxCFVyc5Fc5hy&index=1
04:17:12 <shachaf> Sgeo: "" is a monoid right
04:23:21 <Bike> well it is the identity of string composition which is. so i'm gonna say yes.
04:23:58 <shachaf> i love monoids :D
04:24:44 <shachaf> String composition (the operation) is no more a monoid than the identity of that operation.
04:24:57 <shachaf> Anyway, Sgeo said: "" in Tcl isn't nestable
04:25:02 <shachaf> I assume he didn't mean the empty string.
04:25:13 <Sgeo> I mean the string delimiters
04:25:20 <Sgeo> Or, the " delimiters
04:25:28 <Sgeo> "foo "bar" baz"
04:25:29 <Sgeo> ???
04:25:44 <Sgeo> But {foo {bar} baz} works, but then you don't get to use [] and $
04:25:59 <Bike> This hardly sounds like the best thing ever at all.
04:26:37 <shachaf> Bike: well it ís a monoid...............................
04:26:47 <shachaf> so pretty much the best thing ever
04:26:53 <Bike> oh, good point.
04:26:57 <shachaf> > id "Bikе"
04:26:57 <lambdabot> mueval: recoverEncode: invalid argument (invalid character)
04:27:02 <shachaf> your argument is invalid
04:27:18 <Bike> :0
04:27:58 <shachaf> :ᒎ
04:28:06 <Sgeo> There is activity in that channel
04:28:29 <monqy> what channel
04:28:37 <Bike> that channel
04:28:48 <monqy> oh
04:28:49 <monqy> that channel
04:29:00 <shachaf> hellonqy
04:29:17 <shachaf> monqy: what about "complex analysis should i learn that"
04:29:58 <monqy> if you want
04:30:03 <monqy> analysis can be fun?
04:30:12 <monqy> i dont know much of it though
04:30:20 <monqy> just some tastes
04:30:53 <shachaf> give me a "taste"
04:30:59 <monqy> no
04:31:03 <shachaf> oh
04:31:54 <Bike> How about how the value of any holomorphic function is completely determined by its values in a ring around that point
04:32:11 <shachaf> what point
04:32:26 <Bike> any point
04:32:31 -!- Arc_Koen has quit (Quit: Arc_Koen).
04:32:37 <Bike> value of a holomorphic function at any point, there we go.
04:32:39 <Bike> math is hard.
04:38:50 -!- copumpkin has quit (Ping timeout: 252 seconds).
04:39:21 -!- copumpkin has joined.
04:42:18 -!- monqy has quit (Read error: Connection reset by peer).
04:43:39 -!- Bike has quit (Ping timeout: 256 seconds).
04:45:20 -!- Bike has joined.
05:00:40 -!- Bike has quit (Ping timeout: 240 seconds).
05:02:46 -!- Bike has joined.
05:04:49 -!- augur has joined.
05:19:47 <kmc> anyone have handy a list of church numerals in the SK calculus
05:20:06 <Bike> doesn't wikipedia have a table?
05:21:09 <shachaf> @pl \f x -> f (f (f (f (f x))))
05:21:09 <lambdabot> ap (.) (ap (.) (ap (.) (join (.))))
05:21:14 <shachaf> I guess that's more than SK.
05:21:23 <shachaf> You could get from that to SK with a trivial substitution, though.
05:21:33 <shachaf> Oops, I said trivial.
05:21:41 <shachaf> (But it is?)
05:25:37 <kmc> i'll allow it
05:25:45 <kmc> Bike: does it?
05:25:54 <Bike> i thought it did but i don't see it
05:25:57 <kmc> i was unable to find it with 15 seconds of googling
05:26:04 <kmc> which is my new standard for "does a piece of human knowledge exist"
05:26:05 <kmc> too bad
05:30:34 <kmc> it seems the punchline of this talk (after encoding away numbers, bools, cons pairs, recursion, and lambda itself) is "all that's left is parentheses"
05:30:37 <kmc> maybe i should feel bad about that
05:31:19 <shachaf> Encoding away lambda itself?
05:31:21 <Bike> pah, you don't need parentheses
05:31:22 <shachaf> In terms of what?
05:31:26 <kmc> shachaf: S/K
05:31:29 <Bike> well if he's using ski.....
05:31:33 <shachaf> Oh.
05:31:39 <shachaf> Well, just use unlambda.
05:31:46 <quintopia> you do need some form of grouping
05:31:55 <quintopia> unlambda has the apply operator
05:31:59 <Bike> nah you could use automata
05:32:09 <shachaf> actually use lazy k because "its cooler than unla"mbda??
05:32:23 <Bike> Er.
05:32:24 <quintopia> yeah do that
05:32:27 <kmc> the other punchline under consideration is that i hit a switch and swarms of soldier crabs drop onto everyone
05:32:38 <shachaf> imo that one
05:32:41 <kmc> don't think i will have time to set that up :/
05:32:55 <kmc> i'd have to skip work tomorrow to go fishing
05:32:58 <shachaf> The lecture has been delayed due to crab shortage.
05:34:42 <quintopia> just go to maryland and buy a whole bunch of blue crabs or summat
05:35:07 <kmc> maryland is far away
05:35:12 <kmc> i could get maine lobster
05:35:15 <kmc> that's basically the same right
05:35:22 <Bike> they need swarming though
05:35:42 <Bike> god did you even READ the paper on crabputing
05:36:00 <kmc> crabputers, crabputers, work like computer, taste like crab
05:36:12 <copumpkin> :O
05:36:46 <Bike> the new taste sensation that's sweeping the enterprise server solutions world
05:37:10 <kmc> tastes great with old bay seasoning
05:40:12 <shachaf> > let chu 0 = "k (s k k)"; chu n = "s (s (k s) k) (" ++ chu (n-1) ++ ")" in chu 5
05:40:15 <lambdabot> "s (s (k s) k) (s (s (k s) k) (s (s (k s) k) (s (s (k s) k) (s (s (k s) k) ...
05:40:18 -!- NihilistDandy has quit (Quit: Textual IRC Client: www.textualapp.com).
05:40:25 <shachaf> > let s x y z = x z (y z); k x y = x in s (s (k s) k) (s (s (k s) k) (s (s (k s) k) (s (s (k s) k) (s (s (k s) k) (k (s k k)))))) (+1) 0
05:40:27 <lambdabot> 5
05:40:30 <shachaf> There you go.
05:40:53 <copumpkin> :k Mu Maybe
05:40:55 <lambdabot> *
05:41:22 <kmc> > let chu 0 = "k (s k k)"; chu n = "s (s (k s) k) (" ++ chu (n-1) ++ ")" in chu 2
05:41:24 <lambdabot> "s (s (k s) k) (s (s (k s) k) (k (s k k)))"
05:42:23 <copumpkin> chu chu chrain
05:42:34 <copumpkin> wow, it's unnaturally warm right now
05:42:38 <copumpkin> 57°
05:42:50 <kmc> yes
05:42:53 <shachaf> Oh, Google made their weather finder thing fancy.
05:52:13 -!- monqy has joined.
05:53:24 <oklopol> "<shachaf> actually use lazy k because "its cooler than unla"mbda??" no it's not
05:53:32 <oklopol> unlambda is awesome, lazy k is just ski.
05:53:36 <Bike> "quotes"
05:54:11 <oklopol> oh do they mean something
05:54:21 <Bike> no
05:54:26 <oklopol> oh there was a beginning quote
05:55:20 <oklopol> ""its cooler than unla"mbda??" i parsed this as it's cooler than unlambda with randomly inserted quotes
05:55:55 <oklopol> but indeed the beginning quote is correctly placed
05:56:17 <oklopol> and perhaps could be interpreted as some sort of sarcasm
05:56:30 <oklopol> but in any case, i've heard many people say that lazy k is better
05:57:24 <oklopol> which is stupid. i would be fine with "SKI is better" tho.
05:57:33 <oklopol> but perhaps there were always quotes
05:57:44 <oklopol> perhaps everything i've ever heard and learned was in quotes
05:58:10 <oklopol> and really and truly i have heard nothing which has a meaning
05:58:29 <oklopol> i'm going to make a sandwich now
06:03:18 <kmc> perhaps death is just the closing of a cosmic quote
06:05:20 <Bike> ...," yields falsehood when...
06:11:10 <oklopol> so there's a deadline today :o
06:12:38 <oklopol> i love deadlines
06:12:41 <oklopol> mmmm
06:14:33 <kmc> deadlines alone move the wheels of history
06:15:10 <oklopol> pretty much
06:15:38 <oklopol> also actual deaths, i hear
06:16:37 <shachaf> kmc: Are S and K enough even in a strict language?
06:16:39 <oklopol> but yeah writing usually gets exponentially faster when there's a deadline
06:16:52 <shachaf> Well, I guess they are.
06:17:25 <shachaf> oklopol: I mean that SKI is better.
06:17:32 <shachaf> With laziness.
06:17:37 <shachaf> Or non-strictness, anyway.
06:17:38 <oklopol> ski has laziness
06:17:49 <shachaf> But Lazy K is the only semi-standard implementation of SKI that I know of.
06:18:16 <oklopol> well i suppose that's a reasonable argument.
06:18:22 <oklopol> i still disagree, unlambda is awesome
06:19:27 <shachaf> SKI is better.
06:20:23 <oklopol> no it's not
06:20:44 <oklopol> ski + continuations is just an awesome idea
06:21:01 <oklopol> a priori. i have no idea what programming with that combination is like.
06:21:08 -!- sebbu has joined.
06:21:08 -!- sebbu has quit (Changing host).
06:21:08 -!- sebbu has joined.
06:21:24 <shachaf> OK, SKI + continuations might be better than SKI.
06:21:28 <oklopol> well obviously ski is a better idea than ski+continuations.
06:21:28 <shachaf> But SKI is still better than unlambda.
06:21:35 <oklopol> but i still prefer the combination
06:23:02 <oklopol> shachaf: idgi? what's wrong with unlambda if not the continuations
06:23:26 <shachaf> It's strict?
06:23:36 -!- clog has quit (Ping timeout: 276 seconds).
06:23:52 <shachaf> OK, I guess you probably want strictness if you have first-class continuations.
06:26:53 <shachaf> kmc: are you teaching them about monoids
06:27:07 <shachaf> dr. beaky or: how i learned to stop worrying and love the monoids
06:34:41 <shachaf> What's with people writing the names of things like complexity in ALLUPPERCASE?
06:34:52 <shachaf> Did they figure them out before lowercase letters were invented?
06:36:12 <ion> BEAKY
06:39:19 <Bike> beaky-completeness
06:46:43 -!- FreeFull has quit.
06:47:17 -!- madbr has joined.
06:48:05 <madbr> why do CPUs still have so few execution units?
06:48:41 <madbr> like
06:48:48 <madbr> they have billions of transistors
06:49:08 <madbr> yet they're still souped up pentium IIs that can only really do 4 instructions per cycle
06:50:13 <madbr> no wonder ARM is gaining ground
06:51:59 <Bike> how many units does an arm have?
06:52:26 <madbr> A8 has 2
06:52:33 <madbr> I think A15 has 3
06:53:04 <Bike> is that more than 4 instructions/cycle
06:53:23 <shachaf> They're so small they should be called µnits.
06:53:33 <madbr> depends if memory load counts as a separate instruction
06:53:43 <ion> mnits
06:54:06 <madbr> if you count memory load, the pentium IIs they do these days go up to like 6 or 7
06:54:20 <ion> starglte, hllf-life, numbthreers
06:54:32 <madbr> while arm A8 stays at 2
06:54:49 <madbr> and A15 goes up to like 5
06:54:58 <shachaf> @nixon
06:54:58 <lambdabot> People react to fear, not love; they don't teach that in Sunday School, but it's true.
06:55:20 <Bike> so arm is gaining ground because it has less or what
06:56:19 <madbr> arm is gaining ground because while they do have less, their design is much, much less complicated
06:56:25 <madbr> although it's out of order now
06:56:51 <Bike> what's that got to do with execution units
06:57:05 <madbr> execution units are the payload
06:57:29 <madbr> like, the actual adders, multipliers, multiplexers that read from the cache..
06:57:46 <madbr> ie the parts that ddo the stuff that you actually want
06:58:22 <madbr> and not the bookkeeping surrounding that like instruction decoding and branch prediction
07:00:00 <shachaf> https://simonsfoundation.org/wp-content/uploads/2013/01/tsp_map.jpg
07:00:42 <madbr> the only good thing about the p2 is that its crazy architecture lets it keep doing stuff during a cache miss
07:01:16 <Bike> shachaf: is that all one line
07:01:57 <Bike> oh, traveling salesman
07:04:02 -!- copumpkin has quit (Ping timeout: 252 seconds).
07:04:33 -!- copumpkin has joined.
07:10:02 -!- RodgerTheGreat has quit (Quit: RodgerTheGreat).
07:38:31 -!- DHeadshot has quit (Ping timeout: 248 seconds).
07:43:14 -!- Bike has quit (Quit: oh nooooo).
08:01:05 -!- madbr has quit (Quit: Radiateur).
08:01:55 -!- azaq23 has quit (Quit: Leaving.).
08:02:53 -!- copumpkin has quit (Ping timeout: 252 seconds).
08:03:24 -!- copumpkin has joined.
08:09:26 -!- Taneb has joined.
08:18:32 -!- clog has joined.
08:29:06 -!- Taneb has quit (Quit: Leaving).
08:34:10 -!- glogbackup has quit (Ping timeout: 256 seconds).
09:03:39 -!- HackEgo has quit (Ping timeout: 240 seconds).
09:04:28 -!- HackEgo has joined.
09:20:54 -!- esowiki has joined.
09:20:58 -!- esowiki has joined.
09:20:58 -!- esowiki has joined.
09:21:14 -!- esowiki has joined.
09:21:18 -!- esowiki has joined.
09:21:18 -!- esowiki has joined.
09:21:20 -!- glogbot has joined.
09:21:25 -!- glogbackup has left.
09:21:27 -!- glogbackup has quit (Excess Flood).
09:28:16 -!- Gregor has quit (Excess Flood).
09:36:00 -!- FireFly has quit (Read error: Operation timed out).
09:36:38 -!- FireFly has joined.
10:14:37 -!- Phantom_Hoover has joined.
10:16:32 -!- copumpkin has quit (Remote host closed the connection).
10:16:49 -!- copumpkin has joined.
11:02:30 -!- carado has joined.
11:09:16 <Sgeo> "n this article we present a mathematical data model for the most common noSQL databasesnamely, key/value relationshipsand demonstrate that this data model is the mathematical dual of SQL's relational data model of foreign-/primary-key relationships. "
11:20:18 -!- epicmonkey has joined.
11:22:31 <shachaf> The dual of a key store is a little cooky.
11:42:18 <Sgeo> "But remember: if you buy something at a low price and want to make a profit from its sale, a selling price has to be more than twice the amount paid. That way, one can get more money than one started with."
11:42:19 <Sgeo> wot
11:42:23 <Sgeo> http://www.thonky.com/eve-online-guide/eve-online-market.php
11:50:56 <fizzie> Oh, and here's a new thing for you: http://zem.fi/ircvis/esoteric/people_mentions.html
12:03:12 <Deewiant> Uhm http://sourceware.org/ml/glibc-cvs/2013-q1/msg00115.html
12:03:51 <fizzie> Freedom is the freedom to say that 2 + TWO make zero.
12:06:26 <Jafet> Sgeo: http://oi46.tinypic.com/2qsqvbo.jpg
12:07:59 <Deewiant> Evidently I've mentioned optbot the most? That's a bit poor.
12:08:11 <asiekierka> fizzie: It's funny how elliott was mentioned the most
12:08:19 <Deewiant> fizzie: I wonder if having relative-in-column and relative-in-row visualizations would be useful.
12:08:36 <monqy> is it funny how elliott talks the most
12:08:38 <asiekierka> the only people who never did are Keymaker and Razor-X
12:09:07 <shachaf> fizzie: are all these graphs my fault
12:09:11 <Jafet> "pairings that never occurred" this is where we fill in with shachaf fanfic
12:09:15 <shachaf> what have i started !!
12:09:15 <Phantom_Hoover> i think variable may have been cheating somewhat
12:09:21 <fizzie> shachaf: Perhaps not quite, but I'm blaming you in any case.
12:09:31 <asiekierka> funny how when you click "freq. of being mentioned", there's a diagonal line of self-mentions
12:10:27 <asiekierka> same but less visible on other settings
12:11:29 <fizzie> Deewiant: Perhaps I should add a "normalize" dropdown later. (I was also thinking of feeding that same data into a graph thing, and/or a clustering thing.)
12:13:36 <fizzie> Deewiant: And actually since the row is "person who was mentioned", it's just that optbot's said your name quite often (w.r.t. how much optbot has spoken, overall).
12:14:40 <shachaf> fizzie: It should highlight nicks when you hover over a blank square.
12:14:50 <Deewiant> fizzie: Oh, right. I somehow always manage to mix up X and Y when reading tables.
12:15:17 <Deewiant> "Person X" = "person whose name is written in the X-direction"
12:15:57 <fizzie> Deewiant: I probably should've just talked about rows and columns there, and also not reuse X and Y for the name-placeholders.
12:16:11 <shachaf> `pastelogs kipple
12:16:13 <fizzie> shachaf: I guess. It doesn't because those don't have associated rect elements at all, at the moment.
12:16:27 <shachaf> fizzie: They could be white squares.
12:17:36 <shachaf> monqy: hi "im right next 2 u on the graph"
12:18:12 <fizzie> They could. Also I was wondering if it should highlight (in some suitably subtle way, maybe with a thin black border or something) the transpose cell, so that you can easily see whether the feeling is mutual.
12:18:57 <Sgeo> Jafet, I don't actually play EVE yet
12:19:08 <Sgeo> But I gather that those are not things worth that amount
12:19:20 <monqy> shachaf: hi
12:19:44 <Sgeo> Jafet, wait, what's with that unreachable thing?
12:20:21 <shachaf> i say we ship Jafet and fungot
12:20:21 <fungot> shachaf: expressions which have enjoyed a wide range of complex harmonic structures from voice i at the warm start, basic statements on. this chart shows which color com- binations to avoid defining nonarray variables ( see the section on input/ output operations. in scientific notation
12:20:48 -!- monqy has quit (Quit: hello).
12:20:52 <fizzie> Now the empty cells are rectangles too.
12:21:08 <shachaf> Yay!
12:21:16 <shachaf> fizzie++ # responsive
12:21:33 <shachaf> Have you considered running for president?
12:21:38 <Jafet> SING FOR ME FUNGOT
12:21:47 <shachaf> In 2018 or so.
12:21:50 <Jafet> I'm sorry I yelled at you, fungot.
12:21:51 <fungot> Jafet: registers affected: a, and does not understand, so we've put together a fun sprite program called " scrolling. it is receiving).
12:22:08 <shachaf> fungot: ♥
12:22:08 <fungot> shachaf: you can also develop special graphics characters. these are the values of the x and y registers to zero.
12:22:35 <fizzie> I should probably make those lines between cells also just a grid on top, so that the nick highlight wouldn't blink so much.
12:22:41 <Jafet> `addquote <shachaf> fungot: ♥ <fungot> shachaf: you can also develop special graphics characters.
12:22:41 <fungot> Jafet: for scrolling in the 651 0 microprocessor is writing irq interrupt to occur while you can display the upper left-hand corner of the device resets these pointers are no longer work, forcing major revisions in the
12:23:01 <shachaf> Hmm, I might read zzo38 fan fiction.
12:23:24 <Jafet> @tell Jafet addquote (this parenthetical messes with fizzie's stats)
12:23:24 <lambdabot> You can tell yourself!
12:23:35 -!- copumpkin has quit (Ping timeout: 252 seconds).
12:24:06 -!- copumpkin has joined.
12:27:11 <shachaf> Hmm, did Fiora leave?
12:34:40 <fizzie> I made a highlight-cell-and-transpose happen, and it looks kinda silly, but oh-well.
12:38:27 <shachaf> monqy: you look about "third reddest" to me
12:44:06 <fizzie> Ooh, I should add (on the non-labeled edges) a line-plot showing the overall marginal distribution, as well as the highlighted nick's one.
13:20:32 <Sgeo> ...the hell
13:20:44 <Sgeo> I'm scp -r'ing everything from my account at Farmingdale to home
13:20:57 <Sgeo> Seems to be just downloading a lot of Factor related stuff repetitively
13:23:16 <Sgeo> Hmm, maybe not repetitively
13:27:56 <Sgeo> I put a lot of stuff on there that I don't really need a copy of I guess
13:27:58 <Sgeo> So bleh
13:28:07 <Sgeo> I want to at least keep my picolisp code
13:29:09 <shachaf> what about your ada code
13:31:05 <Sgeo> I have not written any Ada code.
13:43:42 -!- Arc_Koen has joined.
13:49:02 -!- boily has joined.
14:42:23 -!- RodgerTheGreat has joined.
15:26:58 -!- Gregor has joined.
15:33:05 -!- impomatic has joined.
15:47:35 <Gregor> Some other Gregor jerk is trying to snag my nick.
15:47:40 <Gregor> Keeps logging in whenever I'm not using it.
15:51:33 <shachaf> what a jerk
15:51:45 <shachaf> just what i'd expect from someone named Gregor !!
15:53:00 <coppro> Gregor: set protect
15:53:00 <shachaf> Have you considered changing your name to Tertbe?
15:53:39 <Gregor> coppro: I used to have protect on, but I have a BNC, so every time I get disconnected my BNC stays connected with my nick for a while without authenticating.
15:53:59 <coppro> haha
15:55:03 <Gregor> I could probably make my BNC auth, but I'm lazy and don't know how.
15:56:30 -!- Gregor has changed nick to TwilightSpockle.
15:58:19 <coppro> TwilightSpockle: this network accepts nickserv passwords with PASSWORD
15:59:01 <TwilightSpockle> Oh. That makes it pretty easy then X-D
15:59:49 <shachaf> TwilightSpockle: imo Tertbe would be betTer
16:00:18 <shachaf> (DO YOU GET THE JOKE. THE JOKE IS THE ROT13 OF YOUR NAME IS AN ANAGRAM FOR "BETTER")
16:00:26 <shachaf> (I CAPITALIZED A LETTER THERE TO MAKE IT OBVIOUS)
16:00:54 <TwilightSpockle> HA
16:00:56 <TwilightSpockle> HA HA
16:03:01 <Phantom_Hoover> where hackego
16:27:55 -!- AnotherTest has joined.
16:28:07 <AnotherTest> Hello
16:28:25 <AnotherTest> The program in the topic seems vaguely similar?
16:28:44 <AnotherTest> Does this perhaps come from a code golfing competition?
16:28:56 <shachaf> Similar to what?
16:29:11 <AnotherTest> Similar or equal to a program I saw before
16:29:46 <AnotherTest> hm. I might just be the 2 arrays
16:30:44 <shachaf> What is that program?
16:38:59 -!- Taneb has joined.
16:40:58 <boily> shachaf: one behaviour is dropping the first character of a single input line. can't remember who told me that there were other alternatives.
16:41:30 <nortti> it seems to be subleq interpreter
16:41:51 <shachaf> Aha.
16:45:31 <Jafet> That must have been one of those HASHA CHAF.
16:51:55 <mroman> Turn's out one can find the stortest non occuring sequence within n^2 steps.
16:58:12 -!- impomatic has quit (Ping timeout: 248 seconds).
17:08:53 -!- HackEgo has joined.
17:15:40 -!- impomatic has joined.
17:45:48 -!- FreeFull has joined.
18:26:12 -!- epicmonkey has quit (Ping timeout: 248 seconds).
18:26:28 <quintopia> mroman: you mean subsequence? of a sequence of length n?
18:31:45 <mroman> quintopia: http://golf.shinh.org/p.rb?shortest+non+occuring+sequence
18:32:43 <mroman> Finding a sequence of characters not present in another sequence of characters
18:33:40 <quintopia> thats what i thought
18:36:07 -!- ais523 has joined.
18:36:32 <mroman> You can enumerate all substrings, sort them
18:36:46 <mroman> go through the sorted list and find where something is missing in that order.
18:37:21 <mroman> probably around (2*n^2*log(n^2)) or something
18:37:32 <mroman> however, brute-force is far more efficient.
18:38:22 <mroman> you can generate all variations (where there are m^k+m^(k-1)+m^(k-2)..., where m = alphabet size)
18:39:02 <mroman> and check if the string contains that variations.
18:39:14 <mroman> => brute forcing a solution.
18:39:34 <mroman> brute force is way faster than the first method.
18:39:59 <quintopia> i'm not seeing how you're getting n^2 for the first method anyway
18:40:07 <mroman> I initially thought brute force is exponential
18:40:12 <quintopia> hold on
18:40:12 <mroman> as generating variations is exponential.
18:40:22 <quintopia> oh okay i see it
18:40:37 <mroman> There are n*n(+1)*0.5 substrings of a string
18:40:47 <quintopia> yeah, there are O(n^2) possible consecutive substrings
18:41:09 <mroman> however, brute-force finds a solution in at max. n*(n+1)*0.5+1 steps.
18:41:51 <quintopia> so...really both of these methods are a kind of brute force
18:42:01 <quintopia> and they both have the same asymptotic time bound
18:42:12 <quintopia> the only question is which is shortest to code
18:42:26 <mroman> well
18:42:41 <mroman> I figured the first method is not technically brute force
18:42:54 <mroman> It doesn't try every variation
18:43:02 <mroman> it locates a solution
18:43:21 <mroman> but yeah
18:43:40 <mroman> since sorting is n*log(n)
18:43:50 <mroman> and you have to sort ~n^2 substrings
18:44:10 <mroman> means that the first method is probably O(n^2*log(n^2))
18:44:19 <mroman> while brute force is just O(n^2)
18:46:35 <mroman> Because there are only n^2 non-solutions
18:46:52 <mroman> you will find a solution within n^2+1 steps
18:46:58 <mroman> ultimate worst-case
18:47:07 <quintopia> ah
18:47:07 <mroman> the actual worst-case is lower than n^2 for brute force
18:47:21 <quintopia> but
18:47:54 <quintopia> you can do the first algorithm in O(n^2) by using a linear time sort
18:47:56 -!- oklopol has quit (Ping timeout: 255 seconds).
18:48:13 <quintopia> itll only be slower than the second by a constant
18:48:29 <quintopia> actually
18:48:36 <mroman> hm
18:48:39 <quintopia> maybe even same time
18:48:48 <mroman> how would you linear sort?
18:48:58 <quintopia> so
18:49:15 <quintopia> you'll agree that strings of abcde are just base 5 numbers
18:49:33 <mroman> of course
18:49:42 <quintopia> so convert each found substring into its number, and throw it into an array at that position
18:49:44 <mroman> ah
18:49:46 <mroman> i see
18:49:49 <mroman> distribution sort?
18:49:50 <quintopia> when you're done, scan for the first empty slot
18:50:18 <mroman> neat.
18:51:56 <mroman> wastes a lot of memory
18:51:57 <mroman> but yeah.
18:53:14 <mroman> also
18:53:30 <mroman> if the alphabet size is only 3
18:53:38 <mroman> one can convert it into a sat problem
18:54:08 <mroman> works also for m > 3, but it's getting exponential to convert it
18:59:00 -!- AnotherTest has quit (Quit: Leaving.).
18:59:31 -!- copumpkin has quit (Ping timeout: 260 seconds).
18:59:37 <olsner> hmm, google translate thinks that "Gwleidyddiaeth" is english
19:00:02 -!- copumpkin has joined.
19:00:04 <TwilightSpockle> Uhhh, you think it's not? lol, what a gwleidyddiaeth.
19:00:09 <olsner> !rot13 Newyddion, Chwaraeon, Gwleidyddiaeth, Darluniau ac unrhyw beth arall yn perthyn i Gymru!
19:00:11 <EgoBot> Arjlqqvba, Pujnenrba, Tjyrvqlqqvnrgu, Qneyhavnh np haeulj orgu nenyy la cregula v Tlzeh!
19:01:21 <olsner> hmm, it's not rot13?
19:03:11 <mroman> hm wait
19:03:13 <mroman> @base 5
19:03:13 <lambdabot> Maybe you meant: ask babel paste
19:03:45 <mroman> you assign each character a digit?
19:03:55 <mroman> a -> 0, b -> 1, c -> 2 ...?
19:05:14 <mroman> how'd you encode aaaaaa and aa in that?
19:05:27 <boily> !rot13 Je pense que je vais m'en tenir à mes fausses lettres et me tenir loin de cette aberration imprononçable!
19:05:28 <EgoBot> Wr crafr dhr wr invf z'ra grave à zrf snhffrf yrggerf rg zr grave ybva qr prggr noreengvba vzcebabaçnoyr!
19:07:33 <mroman> you couldn't differentiate between aaaa and aa that way
19:18:21 -!- ogrom has joined.
19:19:27 <olsner> boily: that's not finnish
19:26:51 <boily> olsner: no, it is not.
19:28:58 <impomatic> olsner: it's Welsh
19:32:22 <olsner> apparently "wr" is welsh for man, husband or water
19:33:57 <ogrom> is the pronunciation the same as the spelling?
19:34:12 <olsner> yes, the pronunciation is also welsh
19:41:32 <impomatic> Pronunciation is a bit weird. 'f' is pronounced like 'v'. 'll' is pronounced like 'hl'.
19:43:44 -!- epicmonkey has joined.
19:52:12 -!- oerjan has joined.
19:57:07 <ais523> impomatic: welsh ll is a letter all of its own
19:57:10 <ais523> it's somewhere between hl and chl
19:57:54 <Phantom_Hoover> that's kind of misleading AIUI
19:59:02 <Phantom_Hoover> it's like an l, but with less space between your tongue and the roof of your mouth and no voicing
19:59:59 <ais523> yeah, that's a more accurate description, but a harder one to audialize
20:00:00 -!- Bike has joined.
20:00:28 <olsner> like the klingon tlh?
20:01:01 <ais523> I don't know klingon
20:01:43 <Phantom_Hoover> olsner, yes without the t at the start, i think
20:02:26 <olsner> as long as you're in company where no-one knows both, you can always say either "that's just like welsh ll" or "that's just like klingon tlh"
20:03:09 <olsner> iirc the klingon tlh doesn't actually have anything that sounds like t in it, but I might be mixing my klingon up
20:03:39 <Phantom_Hoover> according to wp it's what i described except you start with the airflow completely blocked
20:06:34 -!- DHeadshot has joined.
20:11:45 -!- Phantom__Hoover has joined.
20:14:53 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
20:15:55 -!- Phantom__Hoover has quit (Ping timeout: 246 seconds).
20:18:35 <Taneb> `? Haskell
20:18:40 <HackEgo> Unbound implicit parameter (?haskell::Wisdom) \ arising from a use of implicit parameter `?haskell'
20:18:49 <kmc> heh
20:19:00 <kmc> "but that syntax isn't even in haskell"
20:19:27 <olsner> :ty f`?haskell`x
20:19:39 <olsner> @type f`?haskell`x
20:19:40 <lambdabot> parse error on input `?haskell'
20:19:58 <kmc> :ty ?haskell
20:20:00 <boily> ̀? wisdom
20:20:10 -!- Phantom__Hoover has joined.
20:20:11 <kmc> @type ?haskell
20:20:12 <lambdabot> (?haskell::t) => t
20:20:13 <boily> `? wisdom
20:20:15 <HackEgo> wisdom is always factually accurate, except for this entry
20:20:25 <olsner> :ty might only work in PMs
20:20:26 <kmc> paradox lololoololololololol
20:20:29 <kmc> i think it's just :t
20:20:34 <kmc> and it works in #haskell, but maybe not other channels
20:20:35 <olsner> :t might only work in PMs
20:20:36 <kmc> :t ()
20:20:36 <boily> ah. thought that HackEgo was borked.
20:20:37 <lambdabot> parse error on input `in'
20:20:37 <lambdabot> ()
20:20:39 <kmc> hm
20:20:41 <Taneb> `? C
20:20:43 <HackEgo> C is the language of��V�>WIד�.��Segmentation fault
20:20:43 <elliott> :t ?haskell
20:20:45 <lambdabot> (?haskell::t) => t
20:20:50 <kmc> > let 2 + 2 = 5 in "you have not been paying attention"
20:20:51 <lambdabot> "you have not been paying attention"
20:21:24 <Taneb> `? windows
20:21:26 <HackEgo> windows? ¯\(°_o)/¯
20:21:31 <olsner> `? Taneb
20:21:33 <HackEgo> Taneb is not elliott, no matter who you ask. He also isn't a rabbi although he has pretended in the past. (see also: d-modules)
20:23:22 <boily> `? elliott
20:23:23 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things? He is also tire.
20:23:32 <boily> `? tire
20:23:32 <Taneb> `? rabbi
20:23:34 <HackEgo> rabbi? ¯\(°_o)/¯
20:23:34 <HackEgo> tire? ¯\(°_o)/¯
20:24:17 <Taneb> `? d-modules
20:24:19 <HackEgo> D-modules are just modules over the ring of differential operators. Taneb invented them.
20:24:35 <boily> `? tanebventions
20:24:37 <HackEgo> tanebventions? ¯\(°_o)/¯
20:24:53 -!- ThatOtherPerson has joined.
20:24:56 <Taneb> `learn Tanebventions include D-modules and automatic squirrel feeders
20:25:00 <HackEgo> I knew that.
20:25:17 <olsner> I always thought automatic squirrels fed themselves
20:25:32 <Taneb> olsner, so an automatic squirrel feeder was a very easy invention
20:25:54 <ais523> do you just put some food on the ground where squirrels will be able to eat it?
20:25:59 <boily> what about the man eating chicken?
20:26:04 <ais523> that's more automatic than catching the squirrel so you can give it some food
20:26:07 <ThatOtherPerson> `?d-module
20:26:09 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ?d-module: not found
20:26:12 <ThatOtherPerson> `?d-modules
20:26:13 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ?d-modules: not found
20:26:14 <elliott> `welcome ThatOtherPerson
20:26:16 <HackEgo> ThatOtherPerson: 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.)
20:26:17 <elliott> `WELCOME ThatOtherPerson
20:26:19 <HackEgo> THATOTHERPERSON: 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.)
20:26:25 <boily> `wercom ThatOtherPerson
20:26:26 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: wercom: not found
20:26:30 <boily> `wercome ThatOtherPerson
20:26:32 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: wercome: not found
20:26:34 <ThatOtherPerson> wow
20:26:36 <Taneb> ThatOtherPerson, there's a space
20:26:39 <ThatOtherPerson> I feel very welcomed.
20:26:41 <boily> wercome isn't there anymore?
20:26:41 <ThatOtherPerson> :D
20:26:46 <Taneb> `? d-modules
20:26:48 <HackEgo> D-modules are just modules over the ring of differential operators. Taneb invented them.
20:26:54 <olsner> `wehlcome
20:26:56 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: wehlcome: not found
20:27:13 <Taneb> `wElCoMe ThatOtherPerson
20:27:14 <ais523> I doubt ThatOtherPerson is new
20:27:14 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: wElCoMe: not found
20:27:19 <ais523> or they wouldn't have known to do `?
20:27:19 <olsner> do we only have boring correctly spelled welcome commands now!? outrageous
20:27:34 <Taneb> ais523, because I have once again mentioned the glory of HackEgo in another channel
20:27:42 <ThatOtherPerson> ais523: I was talking to Taneb about it
20:27:45 <Taneb> I apologize again
20:27:48 <ais523> Taneb: oh, I see
20:27:52 <ais523> they came to try out HackEgo
20:27:55 <ais523> it is indeed glorious
20:28:08 <ThatOtherPerson> Anyway, I'm interested in esoteric languages
20:28:10 <Taneb> ThatOtherPerson, it's actually a linux system running as root
20:28:15 <ThatOtherPerson> So I might as well stay
20:28:17 <ais523> actually, you can probably measure HackEgo versus EgoBot usage ratio to see how ontopic the cahannel is
20:28:31 <Taneb> People still use EgoBot?
20:28:33 <boily> ais523: there are topics?
20:28:36 <olsner> boily: the man eating chicken is just a normal man, it's quite common to eat chicken in some parts of the world
20:28:37 <ais523> Taneb: exactly
20:28:41 -!- Phantom__Hoover has quit (Ping timeout: 252 seconds).
20:28:43 <ais523> well, this channel is meant to be for discussing esolangs
20:28:45 <ais523> just we so rarely do
20:29:01 <Taneb> `ls bin/wisdom
20:29:03 <HackEgo> ls: cannot access bin/wisdom: No such file or directory
20:29:06 <Taneb> `ls wisdom
20:29:08 <HackEgo> ​`? \ ? \ ⌨ \ ☃ \ 🐐 \ $1? \ ais523 \ america \ atriq \ atrix \ augur \ banach-tarski \ bike \ boily \ bonvenon \ brain \ brainf**k \ brainfuck \ brick \ burma \ c \ cakeprophet \ california \ category \ claustrophobia \ coffee \ comonad \ coppro \ cyberiad \ devious \ d-module \ egobot \ ehird \ elliot \ elliott \ endofunctor \ endomorphis
20:29:12 <boily> `ls wisdom/*
20:29:13 <HackEgo> ls: cannot access wisdom/*: No such file or directory
20:29:18 <kmc> `? $1?
20:29:19 <ais523> I don't think that we've talked about any esolangs for months but BF Joust and Radixal!!!!, and the occasional brainfuck when someone comes in asking for help with it
20:29:19 <HackEgo> ​$1? ��\(��_o)/��
20:29:26 <ThatOtherPerson> wait what
20:29:28 <ThatOtherPerson> `pwd
20:29:29 <HackEgo> ​/hackenv
20:29:34 <ThatOtherPerson> O_o
20:29:35 <boily> ais523: but then, what about J?
20:29:39 <Taneb> ais523, me, oerjan and Arc_Koen sometimes talk about Fueue
20:29:41 <elliott> Taneb: is the joke that you lied
20:29:44 <ais523> J isn't normally considered an esolang
20:29:46 <ais523> Taneb: oh right
20:29:46 <elliott> also can someone fix that smiley
20:29:52 <kmc> yesterday i was asking about SK calculus
20:30:04 <kmc> there was also quite interesting discussion of wang tiles and the like
20:30:30 <ThatOtherPerson> `which ?
20:30:32 <HackEgo> ​/hackenv/bin/?
20:30:32 -!- Phantom__Hoover has joined.
20:30:47 <ThatOtherPerson> `cat /hackenv/bin/?
20:30:48 <HackEgo> ​#!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z | sed "s/ *$//") \ topic1=$(echo "$topic" | sed "s/s$//") \ cd wisdom \ if [ \( "$topic" = "ngevd" \) -a \( -e ngevd \) ]; \ then cat /dev/urandom; \ elif [ -e "$topic" ]; \ then cat "$topic"; \ elif [ -e "$topic1" ]; \ then cat "$topic1"; \ else echo "$1? ¯\(°_o)/¯"; exit 1;
20:30:57 <Taneb> `? Ngevd
20:30:59 <HackEgo> ​kʋޱݝ
20:31:09 <Taneb> That's... somewhat curtailed
20:31:32 <ThatOtherPerson> `apt-get
20:31:34 <HackEgo> apt 0.8.10.3 for amd64 compiled on Apr 15 2011 07:35:31 \ Usage: apt-get [options] command \ apt-get [options] install|remove pkg1 [pkg2 ...] \ apt-get [options] source pkg1 [pkg2 ...] \ \ apt-get is a simple command line interface for downloading and \ installing packages. The most frequently used commands are update \ and install.
20:31:44 <ThatOtherPerson> you have got to be kidding me
20:31:51 <Taneb> HackEgo has apt installed!?
20:31:59 <Taneb> `? Ngevd
20:32:01 <HackEgo> zAr1%b{IL@^Ċ)[z(Я;'s'# \ Q9"Jh=ƸxXvP!1!eM:66{M>#ay؜z¯̠93XՕ^P4Nl;iay;
20:32:36 <ThatOtherPerson> `python --version
20:32:38 <HackEgo> Python 2.7
20:32:42 <ThatOtherPerson> `python
20:32:56 <ThatOtherPerson> `python --version
20:32:58 <HackEgo> Python 2.7
20:33:04 <Taneb> ThatOtherPerson, it's not interactive
20:33:14 <HackEgo> Python 2.7 (r27:82500, Oct 13 2010, 20:26:16) \ [GCC 4.4.4] on linux2 \ Type "help", "copyright", "credits" or "license" for more information. \ >>>
20:33:17 <ThatOtherPerson> I din't think it would be
20:33:35 <ThatOtherPerson> Just checking to see if it would hang
20:33:45 <ThatOtherPerson> Nope, it timed out
20:33:50 <Taneb> It's surprisingly hard to break HackEgo.
20:33:59 <ThatOtherPerson> o rly
20:34:07 <ThatOtherPerson> `reboot
20:34:07 -!- ogrom has quit (Read error: Connection reset by peer).
20:34:08 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: reboot: not found
20:34:14 <ThatOtherPerson> :D
20:34:14 <Taneb> For a start, it's in a mercurial repository
20:34:18 <Taneb> So we can just revert
20:34:24 <Taneb> Second...
20:34:27 <Taneb> `rm -rf /
20:34:29 <HackEgo> rm: invalid option -- ' ' \ Try `rm --help' for more information.
20:34:37 <Taneb> `rm -r -f /
20:34:38 <HackEgo> rm: invalid option -- ' ' \ Try `rm --help' for more information.
20:34:41 <TwilightSpockle> `run rm -rf /*
20:34:48 <Taneb> Bah
20:35:00 -!- Phantom__Hoover has quit (Ping timeout: 248 seconds).
20:35:20 <ThatOtherPerson> Oh wait, I was actually working on something before I came here
20:35:33 <ThatOtherPerson> `ls /
20:35:49 <ThatOtherPerson> `ls
20:35:53 <ThatOtherPerson> erm
20:35:58 <ThatOtherPerson> `python --version
20:36:04 <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
20:36:15 <HackEgo> Python 2.7
20:36:17 <HackEgo> bin \ dev \ etc \ hackenv \ home \ lib \ lib64 \ opt \ proc \ sbin \ sys \ tmp \ usr \ var
20:36:18 <ThatOtherPerson> aaaaaaaaaaaaaaaaahhhhhhhhhhhhhh
20:36:18 <HackEgo> ​= 0 \ bin \ canary \ dbg.out \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ lib \ paste \ quines \ quotes \ quotese \ run~ \ share \ test \ wisdom \ zalgo.hs
20:36:44 -!- Phantom__Hoover has joined.
20:36:48 <Taneb> `quote plastic spoon
20:36:50 <HackEgo> 413) <Taneb> Someone with that sort of grasp of logic shouldn't be allowed anything more computationally powerful than a plastic spoon
20:36:50 -!- AnotherTest has joined.
20:37:14 -!- augur has quit (Remote host closed the connection).
20:37:17 <Taneb> ThatOtherPerson, do you intend to become a regular here?
20:37:21 <Bike> give me a plastic spoon and sufficient yogurt to swirl around and i will compute the universe
20:37:21 <lambdabot> Bike: You have 1 new message. '/msg lambdabot @messages' to read it.
20:37:24 <Bike> whoa
20:37:31 <ThatOtherPerson> Taneb: maybe?
20:37:39 <Bike> @tell shachaf so fucking monoid you don't even know
20:37:39 <lambdabot> Consider it noted.
20:37:41 <Taneb> Do you read Homestuck or Order of the Stick?
20:37:41 -!- augur has joined.
20:37:42 <oerjan> `addquote <olsner> as long as you're in company where no-one knows both, you can always say either "that's just like welsh ll" or "that's just like klingon tlh"
20:37:43 <lambdabot> oerjan: You have 2 new messages. '/msg lambdabot @messages' to read them.
20:37:46 <HackEgo> 943) <olsner> as long as you're in company where no-one knows both, you can always say either "that's just like welsh ll" or "that's just like klingon tlh"
20:37:48 <ThatOtherPerson> I'm not sure if I'm really contributing to the conversation
20:37:55 <Bike> what conversation
20:37:56 <kmc> `python -c 'print "Hello, world!"'
20:37:58 <HackEgo> ​ File "<string>", line 1 \ 'print "Hello, world!"' \ ^ \ IndentationError: unexpected indent
20:38:04 <ThatOtherPerson> Taneb: homestuck
20:38:07 <Taneb> `list
20:38:09 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo alot
20:38:15 <boily> ThatOtherPerson: don't worry, a conversation will contribute to you some day.
20:38:19 <Taneb> `cat /bin/list
20:38:20 <HackEgo> cat: /bin/list: No such file or directory
20:38:21 <boily> (be careful of fridays, they bite)
20:38:25 <Taneb> `cat bin/list
20:38:26 <HackEgo> echo Taneb atriq Ngevd Fiora nortti Sgeo alot
20:38:27 <Taneb> Bah
20:38:27 <ThatOtherPerson> :D
20:38:27 -!- augur_ has joined.
20:38:30 -!- augur has quit (Read error: Connection reset by peer).
20:38:39 <ThatOtherPerson> `uname
20:38:40 <HackEgo> Linux
20:38:44 <ThatOtherPerson> `uname -a
20:38:44 <boily> `uname -a
20:38:45 <HackEgo> Linux umlbox 3.0.8-umlbox #2 Sun Nov 13 21:30:28 UTC 2011 x86_64 GNU/Linux
20:38:46 <HackEgo> Linux umlbox 3.0.8-umlbox #2 Sun Nov 13 21:30:28 UTC 2011 x86_64 GNU/Linux
20:38:54 <Taneb> `run echo "echo Taneb atriq Ngevd Fiora nortti Sgeo ThatOtherPerson alot" > bin/list
20:38:57 <HackEgo> No output.
20:39:00 <Taneb> `list
20:39:01 <HackEgo> Taneb atriq Ngevd Fiora nortti Sgeo ThatOtherPerson alot
20:39:13 <Taneb> That's our "there's been an update" thing
20:39:19 <ThatOtherPerson> :D
20:39:24 <ThatOtherPerson> this is pretty hilarious
20:39:25 <Taneb> I am all of the first three names...
20:39:39 <Bike> ThatOtherPerson: so, what are your thoughts on monoids
20:39:42 <ThatOtherPerson> `ps aux
20:39:44 <HackEgo> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND \ 0 1 0.0 0.1 912 276 ? S 20:39 0:00 /init \ 0 2 0.0 0.0 0 0 ? S 20:39 0:00 [kthreadd] \ 0 3 0.0 0.0 0 0 ? S 20:39 0:00 [ksoftirqd/0] \ 0 4 0.0 0.0 0 0 ?
20:39:52 <oerjan> <olsner> :t might only work in PMs <-- the other way around, actually
20:39:57 <Bike> `uptime
20:39:58 <HackEgo> ​ 20:39:58 up 0 min, 0 users, load average: 0.00, 0.00, 0.00
20:40:04 <ThatOtherPerson> Bike: I currently don't have a single thought on monoids
20:40:07 <Bike> hahaha
20:40:15 <ThatOtherPerson> BUt I'm about to get some
20:40:18 <Bike> ThatOtherPerson: prepare for enlightenment
20:40:18 <kmc> every HackEgo command boots a user mode linux machine, right?
20:40:19 <olsner> oerjan: aha, I knew there was something special about it
20:41:07 <elliott> kmc: yes
20:41:13 <ThatOtherPerson> Bike: okay, my current thoughts on monoids run something like: "It's way too late for me to be able to understand this stuff"
20:41:20 -!- Phantom__Hoover has quit (Ping timeout: 255 seconds).
20:41:26 <kmc> in before beaky
20:41:36 <Bike> in after beaky mo' like
20:41:47 <Bike> ThatOtherPerson: it's just like multiplication! but less so.
20:41:54 <oerjan> `run mv wisdom/tanebventions wisdom/tanebvention
20:41:57 <HackEgo> No output.
20:42:18 <elliott> ThatOtherPerson: I hear they're easy.
20:42:22 -!- Frooxius has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204]).
20:42:55 <Taneb> ThatOtherPerson, did you learn Groups in maths?
20:43:09 -!- monqy has joined.
20:44:27 <ThatOtherPerson> Taneb: no
20:44:48 <Taneb> ...sets?
20:44:55 <oerjan> `wehlcohme olsner
20:44:58 <HackEgo> ohlsnehr: Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.)
20:45:16 <AnotherTest> Taneb: You shouldn't underestimate people so much
20:45:27 <ThatOtherPerson> Taneb: sets, yes
20:45:41 -!- Phantom__Hoover has joined.
20:46:25 <Taneb> Okay, a monoid is a set plus an operation, <>, and a blessed element of the set, e, such that the following rules are followed:
20:46:34 <oerjan> `addquote <olsner> boily: the man eating chicken is just a normal man, it's quite common to eat chicken in some parts of the world
20:46:38 <HackEgo> 944) <olsner> boily: the man eating chicken is just a normal man, it's quite common to eat chicken in some parts of the world
20:46:49 <Taneb> For any a and b in the set, a <> b is in the set (closure)
20:47:09 <elliott> pfft, sets
20:47:15 <elliott> more like worst foundation ever
20:47:30 <Taneb> For any a, b, and c in the set, a <> (b <> c) is the same as (a <> b) <> c (associativity)
20:47:32 * ThatOtherPerson is too tired to think
20:47:41 <Taneb> For any a in the set, a <> e = e <> a = a
20:47:43 <AnotherTest> ThatOtherPerson: good news, a group is actually like a set, but you just apply a mathematical operation to any two of its elements to form a third one
20:47:50 <elliott> AnotherTest: um...
20:47:53 <monqy> ther'es lots of ways to define 'the monoid'
20:47:53 <Taneb> AnotherTest, that's a magma
20:47:55 <elliott> that's a magma
20:48:01 <Bike> elliott: i forgot how monoids work with categories already. something about endomorphisms???
20:48:05 <AnotherTest> meh just keep it simple
20:48:08 <oerjan> <elliott> also can someone fix that smiley <-- actually that particular smiley is broken on purpose
20:48:08 <elliott> ...
20:48:15 <elliott> don't lie to people.
20:48:15 <Taneb> Do magmas guarantee closure?
20:48:21 <elliott> that's blatantly a magma and not a group
20:48:25 <monqy> Bike: those are categorical monoids
20:48:30 <monqy> Bike: different thing
20:48:33 <Bike> christ
20:48:35 <elliott> Taneb: yes magmas have closure
20:48:44 <Bike> imo fuck foundations
20:49:42 <Taneb> An example of a monoid is integers under addition
20:49:48 <Taneb> Another is functions under composition
20:49:55 <monqy> um
20:49:56 <elliott> not all functions
20:49:57 <Bike> AnotherTest: the inverse is probably the important part of groups, to distinguish them from "all those other things" anyway
20:49:59 <elliott> and uh
20:50:00 <Taneb> SOME FUNCTIONS
20:50:03 <elliott>
20:50:09 <Bike> endofunctors??
20:50:15 <Taneb> Functions that all have the same domain and range
20:50:17 <elliott> CLEARLY endofunctions
20:50:19 <AnotherTest> wait wait
20:50:38 <monqy> endomorphisms on...Set....
20:50:38 <AnotherTest> isn't a group specifiable as a magma
20:50:47 <Bike> what would that even mean
20:50:48 <monqy> magma "with some properties"
20:50:56 <Taneb> AnotherTest, all groups are magmas, the opposite is not true
20:51:17 <AnotherTest> A group is a magma with associativity, an identity elem I guess
20:51:20 <AnotherTest> and an inverse
20:51:37 <monqy> lots of inverse
20:51:44 <Bike> it's like a bunch of things had a "party" (the party is a magma) and then a bunch of things that the first group of things fucking hate (the inverses) and then they all kill each other but can never escape (closure??)
20:52:11 <Taneb> That's a loop
20:52:14 <Taneb> You need identity
20:52:23 <Bike> oh yeah
20:52:26 <Bike> ok add a boring dude
20:52:34 <Taneb> Wait, it's not a loop
20:52:52 <Bike> well i did say it was a magma, don't magmas have identities?
20:52:53 <AnotherTest> um taneb
20:52:58 <AnotherTest> loops need an identity
20:53:10 <AnotherTest> since loops are quasigroups with an identity elem.
20:53:17 <Bike> ope no they don't
20:53:23 <Taneb> Yeah, I remembered that
20:53:28 <monqy> you also forgot associativity bike
20:53:36 <Taneb> So they're quasigroups
20:53:40 <monqy> just start out with monoids it will make everything easier
20:53:44 <monqy> :-)
20:53:48 <Bike> i think i'm overestimating magmas yeah
20:53:51 <Bike> monoid superiority
20:54:05 <Bike> http://en.wikipedia.org/wiki/File:Magma_to_group2.svg are these names supposed to make any sense
20:54:39 <AnotherTest> I guess?
20:54:48 <AnotherTest> Or did I just guess wrong
20:55:24 <monqy> good question
20:55:35 <Bike> anyway so now ThatOtherPerson is like totally an algebraist, to the max, yo.
20:55:48 <monqy> are you sure
20:55:50 <ThatOtherPerson> sorry, I haven't been following
20:55:59 <monqy> nothing happened don't worry
20:56:11 <Taneb> ThatOtherPerson, there's a lot of things with different names
20:56:22 <Taneb> These things have different properties too
20:56:40 <coppro> `rm wisdom/coppro
20:56:43 <HackEgo> No output.
20:56:45 <coppro> that thing keeps highlighting me
20:57:18 <monqy> an insatiable thirst for coppro knowledge
20:57:24 <ThatOtherPerson> And my current thinkability is -10 beard-seconds
20:57:33 <monqy> what does that mean
20:57:37 <Taneb> Beard-seconds measures speed
20:57:38 <Bike> can you put that in SI?
20:57:46 <Taneb> Wait
20:57:47 <Taneb> Length
20:57:57 <Taneb> Bike, it's about a nanometre, iirc
20:58:25 <Taneb> 5 or 10 nm, looking it up
20:58:31 <TwilightSpockle> Who is ThatOtherPerson.
20:58:35 <AnotherTest> What do you need for a ring again?
20:58:38 <monqy> what if it was a mistake. the true measure of thinkability is in beards per second
20:58:39 <Bike> so is thinkability measured in speed.........
20:58:52 <monqy> AnotherTest: depends on who you ask
20:59:01 <monqy> rings are one of those things people have trouble agreeing on : )
20:59:11 <ThatOtherPerson> TwilightSpockle: he's that other person you don't know
20:59:11 <AnotherTest> oh ok
20:59:19 <monqy> do rings have a multiplicative identity????nobody knows
20:59:21 <AnotherTest> What if I asked you
20:59:31 <Bike> can rings just be "they have multiplication and addition" and then we agree to pretend we don't care about the rest of the details, or "deets" for short
20:59:33 <TwilightSpockle> ThatOtherPerson: Indeed.
20:59:59 <AnotherTest> monqy: aren't matrices a ring?
21:00:11 <AnotherTest> *in a
21:00:18 -!- azaq23 has joined.
21:00:19 -!- azaq23 has quit (Changing host).
21:00:19 -!- azaq23 has joined.
21:00:21 <AnotherTest> They have identity..
21:00:27 -!- azaq23 has quit (Max SendQ exceeded).
21:00:30 <AnotherTest> (also; note n x n matrices)
21:00:39 <monqy> yes n*n matrices form a ring
21:00:47 <Bike> that just means that there's a ring with an identity, not that rings have to have id
21:00:48 <AnotherTest> oh but wait
21:00:53 <oerjan> `revert
21:00:54 <AnotherTest> yeah
21:00:55 <HackEgo> Done.
21:01:19 <ThatOtherPerson> `which revert
21:01:21 <HackEgo> No output.
21:01:22 <elliott> `? coppro
21:01:24 <HackEgo> coppro prefers his nickname, Pooppy.
21:01:45 <coppro> can we at least change the filename if you want it?
21:01:51 <coppro> I dislike being highlighted by `ls wisdom
21:03:08 <ThatOtherPerson> `ls
21:03:10 <HackEgo> ​= 0 \ bin \ canary \ dbg.out \ egobot.tar.xz \ etc \ factor \ factor-linux-x86-64-0.95.tar.gz \ foo \ foo.err \ foo.out \ ibin \ interps \ karma \ lib \ paste \ quines \ quotes \ quotese \ run~ \ share \ test \ wisdom \ zalgo.hs
21:04:26 -!- AnotherTest has quit (Quit: Leaving.).
21:05:16 <oerjan> `ls wisdom
21:05:19 <HackEgo> ​`? \ ? \ ⌨ \ ☃ \ 🐐 \ $1? \ ais523 \ america \ atriq \ atrix \ augur \ banach-tarski \ bike \ boily \ bonvenon \ brain \ brainf**k \ brainfuck \ brick \ burma \ c \ cakeprophet \ california \ category \ claustrophobia \ coffee \ comonad \ coppro \ cyberiad \ devious \ d-module \ egobot \ ehird \ elliot \ elliott \ endofunctor \ endomorphis
21:05:26 <augur_> STOP IT :|
21:05:38 <elliott> `ls wisdom
21:05:39 <HackEgo> ​`? \ ? \ ⌨ \ ☃ \ 🐐 \ $1? \ ais523 \ america \ atriq \ atrix \ augur \ banach-tarski \ bike \ boily \ bonvenon \ brain \ brainf**k \ brainfuck \ brick \ burma \ c \ cakeprophet \ california \ category \ claustrophobia \ coffee \ comonad \ coppro \ cyberiad \ devious \ d-module \ egobot \ ehird \ elliot \ elliott \ endofunctor \ endomorphis
21:05:48 <ais523> please, people
21:05:53 <monqy> maybe you should change your name to z'augur
21:05:53 <Bike> `? banach-tarski
21:05:54 <HackEgo> ​"Banach-Tarski" is an anagram of "Banach-Tarski Banach-Tarski".
21:05:55 <ais523> I don't like being nickpinged this much for bad reasons :(
21:06:04 <monqy> z'ais523
21:06:15 <augur_> z'monqy: :|
21:06:39 <monqy> m is already good enough for this purpose
21:06:48 <oerjan> `mv wisdom/coppro wisdom/c.oppro
21:06:49 <HackEgo> mv: missing destination file operand after `wisdom/coppro wisdom/c.oppro' \ Try `mv --help' for more information.
21:06:53 <oerjan> `run mv wisdom/coppro wisdom/c.oppro
21:06:57 <HackEgo> No output.
21:07:00 <Bike> bsk "banach-tarski" obviously has zero measure
21:07:15 <oerjan> `run mv wisdom/ais523 wisdom/a.is523
21:07:19 <HackEgo> No output.
21:07:22 <oerjan> SATISFIED?
21:07:22 <elliott> how about we just don't do ls wisdom
21:07:25 <elliott> rather than moving all enrties to dumb things
21:07:27 <coppro> ^
21:07:39 <elliott> `run mv wisdom/a.is523 wisdom/ais523; mv wisdom/c.oppro wisdom/coppro
21:07:43 <HackEgo> No output.
21:07:52 <elliott> alternatively we can like pad out the start of the directory with a bunch of junk files if people relaly can't stop themselves
21:07:53 <oerjan> elliott: but how are we then going to know what wisdom there is!
21:07:57 <ThatOtherPerson> `zalgo.hs
21:07:58 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: zalgo.hs: not found
21:07:59 <oerjan> oh hm...
21:08:00 <elliott> oerjan: there are unknown unknowns
21:08:03 <ais523> we don't need a bunch of junk files
21:08:08 <ThatOtherPerson> `cat zalgo.hs
21:08:08 <elliott> anyway `run ls wisdom | patse works
21:08:09 <HackEgo> import Random;main=mapM_((>>(י=<<randomRIO('̀','ͯ'))).י)=<<getContents;י=putChar
21:08:16 <ais523> just one file that's first in alphabetical order and has a name that's like 500 characters long
21:08:25 <oerjan> `run chmod a-r wisdom
21:08:28 <HackEgo> No output.
21:08:32 <ais523> oerjan: genius :)
21:08:33 <oerjan> `? elliott
21:08:38 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things? He is also tire.
21:08:40 <elliott> `ls wisdom
21:08:43 <oerjan> `ls wisdom
21:08:43 <HackEgo> ls: cannot open directory wisdom: Permission denied
21:08:46 <HackEgo> ls: cannot open directory wisdom: Permission denied
21:08:47 <elliott> heh
21:08:58 <ais523> +r is needed to list directories, +x to access files inside them
21:09:17 <ThatOtherPerson> `ghci
21:09:26 <ThatOtherPerson> `which ghci
21:10:19 <oerjan> `run (echo '#!/bin/sh'; echo 'chmod +r wisdom'; echo 'ls wisdom | paste'; echo 'chmod -r wisdom') >bin/pastewisdom
21:10:20 <HackEgo> GHCi, version 7.6.1: http://www.haskell.org/ghc/ :? for help \ Loading package ghc-prim ... linking ... done. \ Loading package integer-gmp ... linking ... done. \ Loading package base ... linking ... done. \ Prelude>
21:10:23 <HackEgo> No output.
21:10:24 <HackEgo> ​/opt/ghc/bin/ghci
21:10:27 <oerjan> `pastewisdom
21:10:33 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.26256
21:10:54 <ThatOtherPerson> `ghc
21:11:00 <HackEgo> ghc: no input files \ Usage: For basic information, try the `--help' option.
21:11:07 <ThatOtherPerson> `ghc --help
21:11:07 <Taneb> `gcc
21:11:13 <HackEgo> Usage: \ \ ghc [command-line-options-and-input-files] \ \ To compile and link a complete Haskell program, run the compiler like \ so: \ \ ghc --make Main \ \ where the module Main is in a file named Main.hs (or Main.lhs) in the \ current directory. The other modules in the program will be located \ and compiled automatically, and the l
21:11:14 <Taneb> `? gcc
21:11:15 <HackEgo> gcc: no input files
21:11:18 <HackEgo> gcc? ¯\(°_o)/¯
21:11:23 <Taneb> `? ghc
21:11:27 <HackEgo> ghc? ¯\(°_o)/¯
21:11:28 <ThatOtherPerson> `ghc zalgo.hs
21:11:28 <Bike> `zalgoerjan
21:11:33 <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.
21:11:35 <HackEgo> o̎e̓r̄j͉a̻n̞ ͍
21:12:31 <boily> `zalgørjan
21:12:34 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: zalgørjan: not found
21:13:03 <Taneb> `learn GHC is a cat that lives in Glasgow and is called Haskell, after mathematician and logician Haskell Curry, who hated the name.
21:13:07 <HackEgo> I knew that.
21:13:37 <ThatOtherPerson> `which learn
21:13:40 <HackEgo> ​/hackenv/bin/learn
21:13:50 <ThatOtherPerson> `cat /hackenv/bin/learn
21:13:53 <HackEgo> ​#!/bin/sh \ topic=$(echo "$1" | sed 's/ .*//' | tr A-Z a-z) \ info=$(echo "$1" | sed 's/[^ ]* //') \ echo "$1" >"wisdom/$topic" \ echo "I knew that."
21:14:13 <ThatOtherPerson> `ls wisdom
21:14:17 <HackEgo> ls: cannot open directory wisdom: Permission denied
21:14:29 <ThatOtherPerson> D:
21:14:38 <ThatOtherPerson> `? GHC
21:14:40 <Bike> try pastewisdom.
21:14:41 <HackEgo> GHC is a cat that lives in Glasgow and is called Haskell, after mathematician and logician Haskell Curry, who hated the name.
21:14:49 <ThatOtherPerson> `pastewisdom
21:14:55 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.31978
21:15:01 <ThatOtherPerson> :D
21:15:03 <Taneb> `? coffee
21:15:05 <TwilightSpockle> `run ls -ld wisdom
21:15:08 <HackEgo> Coffee is a strange hot brown liquid, often consumed, sometimes with milk and sugar. It contains chemicals considered stimulants.
21:15:10 <HackEgo> d-wx--x--x 2 5000 5000 4096 Jan 31 21:13 wisdom
21:15:16 <TwilightSpockle> Dahell
21:15:19 <TwilightSpockle> Who did that?
21:15:36 <Bike> oerjan two minutes ago
21:15:45 <TwilightSpockle> I don't even know if that'll work properly in Mercurial >_>
21:15:51 <Taneb> oerjan, so coppro wouldn't be pinged so often
21:16:00 <boily> milk and sugar in coffee are evil!
21:16:06 <Bike> `? narutoversee
21:16:09 <HackEgo> narutoverse is a place where they haven't heard of having a bus factor of >1.
21:16:20 <Taneb> boily, I like milk, sugar, coffee, and water separately
21:16:23 <Bike> i like how this is right after morphism
21:16:31 <ais523> is it possible to have a bus factor between 0 and 1?
21:16:39 <Taneb> `? homestuck
21:16:40 <ais523> or, generally, non-integer?
21:16:42 <HackEgo> Homestuck is a cult religion for disaffected teens. Gamzee drives the bus.
21:16:51 <Taneb> `? hexham
21:16:55 <HackEgo> Hexham is a European town. There are nine people in Hexham, and at least two of them are in this channel. Taneb looks after the ham.
21:17:00 <ThatOtherPerson> I hate Gamzee.
21:17:02 <Taneb> `? finland
21:17:05 <ThatOtherPerson> `? gamzee
21:17:06 <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.
21:17:06 <Bike> `? gamzee
21:17:09 <HackEgo> gamzee? ¯\(°_o)/¯
21:17:12 <HackEgo> gamzee? ¯\(°_o)/¯
21:17:14 <Bike> fuck what's a gamzee
21:17:18 <oerjan> oh hm
21:17:21 <oerjan> `url wisdom
21:17:26 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/wisdom
21:17:26 <Taneb> `learn Gamzee is an alien clown that you just cannot keep down.
21:17:28 <ThatOtherPerson> Bike: it's a clown.
21:17:30 <HackEgo> I knew that.
21:17:33 <ThatOtherPerson> An evil clown.
21:17:34 <Bike> fuck clowns
21:17:38 -!- c00kiemon5ter has left ("bbl").
21:17:42 <ThatOtherPerson> A clown you cannot keep down.
21:17:48 <Taneb> `learn Gamzee is an alien clown that you just cannot keep down, hated by many.
21:17:49 <Bike> ais523: maybe if someone is hit by a bus and paralyzed but only in one side
21:17:51 <HackEgo> I knew that.
21:18:13 <TwilightSpockle> `? Gamzee
21:18:16 <HackEgo> Gamzee is an alien clown that you just cannot keep down, hated by many.
21:18:21 <oerjan> hm not very useful
21:18:28 <TwilightSpockle> I wonder if hg is temporarily adding +r to index the dir...
21:18:32 <Phantom__Hoover> is ThatOtherPerson not someone who was here before
21:19:11 <boily> `? everyone
21:19:15 <HackEgo> Everyone in here is mad.
21:19:24 <boily> pfeuh. I'm not mad, just a fool.
21:19:37 <Taneb> `? pi
21:19:41 <HackEgo> pi is a very round number.
21:19:45 <Taneb> `? pie
21:19:49 <HackEgo> I like pie \ I like pie
21:20:04 <Taneb> `burma
21:20:07 <Taneb> `? burma
21:20:07 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: burma: not found
21:20:11 <HackEgo> ask Bike
21:20:21 <Taneb> Bike, `? burma
21:21:00 <Bike> burma is a mystical land of over two dozen ceasefires in as many years
21:21:16 <ThatOtherPerson> `? saudi
21:21:19 <HackEgo> saudi? ¯\(°_o)/¯
21:21:20 <Taneb> I think my grandfather was stationed there at some point
21:21:22 <Taneb> Burma, that is
21:21:32 <Bike> wwii?
21:21:40 <Taneb> Post-wwii, I think
21:21:49 <Taneb> 50's, maybe
21:21:52 <Bike> i think a lot of people's grandfathers were stationed there at some point
21:22:14 <Bike> maybe they were there to pretend the KMT weren't utterly fucked or something
21:22:37 <Taneb> I heard a story about how he, because it was so cold at night, kept a bottle of beer under his bed at night and had it as a lollipop during the day
21:22:58 <oerjan> `run (echo '#!/bin/sh'; echo 'echo http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/wisdom/') >bin/pastewisdom
21:23:02 <HackEgo> No output.
21:23:46 <ThatOtherPerson> `? homestuck
21:23:49 <Bike> `ls bin/pastewisdom
21:23:50 <HackEgo> Homestuck is a cult religion for disaffected teens. Gamzee drives the bus.
21:23:53 <HackEgo> bin/pastewisdom
21:23:58 <Bike> `cat bin/pastewisdom
21:24:02 <HackEgo> ​#!/bin/sh \ echo http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/wisdom/
21:24:14 <Bike> coolio
21:24:31 <Taneb> `? Pietbot
21:24:35 <HackEgo> Pietbot is the only thing that can defeat fungot.
21:24:44 <Taneb> I need to rewrite pietbot
21:24:59 <Taneb> By which I mean "write"
21:25:01 -!- copumpkin has quit (Ping timeout: 245 seconds).
21:25:01 -!- monqy has quit (Quit: hello).
21:25:02 <Taneb> But first...
21:25:06 -!- Taneb has changed nick to Taneb|Away.
21:25:32 <ThatOtherPerson> `learn Homestuck is a cult religion for disaffected teens. Gamzee drives the bus. Best summarized by http://www.mspaintadventures.com/storyfiles/hs2/05743.gif
21:25:32 -!- copumpkin has joined.
21:25:36 <HackEgo> I knew that.
21:25:49 <ThatOtherPerson> `? homestuck
21:25:53 <HackEgo> Homestuck is a cult religion for disaffected teens. Gamzee drives the bus. Best summarized by http://www.mspaintadventures.com/storyfiles/hs2/05743.gif
21:26:04 <Bike> which one of those is gamzee
21:26:24 <ThatOtherPerson> none
21:26:59 <Bike> well fuck, then who's driving the damn bus?
21:28:38 <ThatOtherPerson> Bike: this one's gamzee: http://goo.gl/5eoRG
21:29:21 <Bike> that's some pretty avant-garde clowning he's got going
21:30:24 <ThatOtherPerson> Bike: as is this one: http://goo.gl/AE8co
21:31:19 <Bike> those don't look the same at all. i don't think they're the same one.
21:31:41 <ThatOtherPerson> eh, one isn't canon
21:32:31 <ThatOtherPerson> WHY AM I TALKING ABOUT HOMESTUCK??? I need to leave. quickly.
21:32:51 <oerjan> ^ul (Try some Underload instead)S
21:32:51 <fungot> Try some Underload instead
21:33:03 -!- augur_ has quit (Remote host closed the connection).
21:33:29 -!- augur has joined.
21:34:19 <Bike> fungot, do you get this homestuck thing?
21:34:20 <fungot> Bike: description: this routine is called indirect because the visible screen area starts at first sight. look at them even if it was an ascii colon, 58 ( 3a) to determine what machine lan- guage. functions which return a random number generator for games.
21:34:33 <Bike> so... no.
21:34:40 <elliott> ^style homestuck
21:34:40 <fungot> Selected style: homestuck (Homestuck pages 1901-4673)
21:34:41 <oerjan> ^ul ((::**)~^)((((:(((((((((((_)(9))(8))(7))(6))(5))(4))(3))(2))(1))(0)(!^))~*^^S!)(:a(~^)*~(()(~(~(:a~*):^))(a))~*^^)):^(()~)~**~^(:)~((a(~^)*~**)~a)~a(**~:((:)~(*)**)~a*~(^))**a(~*^^^!!^)***(~)~a(~a*^:)**a(:)**~^!!!a(~^)*~**)~a((, )S:^)**^):^
21:34:42 <fungot> 3, 13, 1113, 3113, 132113, 1113122113, 311311222113, 13211321322113, 1113122113121113222113, 31131122211311123113322113, 132113213221133112132123222113, 11131221131211132221232112111312111213322113, 31131122211311123113321112131221123113111231121123222113, 132113213221133112132123123112111311222112 ...out of time!
21:35:40 -!- augur_ has joined.
21:35:48 <Bike> fungot, how about now?
21:35:49 <fungot> Bike: you have a great appreciation for the fine arts. you use the hammer and nails. they will come a day
21:36:04 <Bike> not "there"?
21:37:07 <ThatOtherPerson> what's fungot?
21:37:07 <fungot> ThatOtherPerson: examine the wall behind a door there? or why he always was a little cagey, even when discussing the proper thanks. two more large gizmos. it was once the island
21:37:15 <elliott> nobody knows ThatOtherPerson
21:37:43 <ThatOtherPerson> And how does he know the number of the first page of homestuck?
21:37:56 -!- augur has quit (Ping timeout: 245 seconds).
21:38:19 <ThatOtherPerson> fungot: what are you?
21:38:20 <fungot> ThatOtherPerson: it is a hate so pure and... pumpkin seeds?
21:38:25 <ThatOtherPerson> fungot: what are you?
21:38:25 <fungot> ThatOtherPerson: a place perhaps the only who enjoys the feel of the brittle human calcium based skull, it would be the concept of a soul isn't forfeit in service of informing them how stupid they were being insincere for the benefit of the doubt?
21:38:50 <ThatOtherPerson> fungot: Are you creating some sort of Markov chain?
21:38:50 <fungot> ThatOtherPerson: what the hell is that? it's so depressing, you can't out troll me in these like
21:39:25 <ThatOtherPerson> ^stule
21:39:30 <ThatOtherPerson> ^style
21:39:30 <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
21:39:45 <ThatOtherPerson> ^style fungot
21:39:45 <fungot> Selected style: fungot (What I've said myself)
21:39:56 <ThatOtherPerson> fungot: hello?
21:40:01 -!- augur_ has quit (Ping timeout: 245 seconds).
21:40:09 <ThatOtherPerson> fungot: what are you?
21:40:13 <TwilightSpockle> fungot has a style that's fed by its own inane jabbering? X-D
21:40:13 <fungot> TwilightSpockle: ( ( ( a()**)a*:a*)(a()**)a*:a*)((x1)(x2)(x3)) ...out of time! don't let?! hey! is that for us! the chef's in a snit, trying to get food to the front lines. heard a spell to energize the sword takes immense evil! indeed! this thing. what you have? transform! this trading house. it's
21:40:27 <TwilightSpockle> fungot doesn't like ThatOtherPerson?
21:40:28 <ThatOtherPerson> :O
21:40:28 <fungot> TwilightSpockle: it's just so stupid that ' stty erase h' has more bizarre results. it was, that he was overcome with the vastness, profundity, and fnord bray, remember me; and with an awe that is almost superstitious. i should perhaps make a few of those virtues which is the bit-reversal of the statement is encountered, it is also readily than they just never put things into
21:40:39 <ThatOtherPerson> ^style homestuck
21:40:39 <fungot> Selected style: homestuck (Homestuck pages 1901-4673)
21:41:02 <ThatOtherPerson> fungot: what is this human emotion called friendship?
21:41:02 <fungot> ThatOtherPerson: try again.
21:41:13 <ThatOtherPerson> fungot: What pumpkin?
21:41:14 <fungot> ThatOtherPerson: not that it would actually bother pitying you. and anyway, the thing gives a shit in the veil.
21:41:21 <ThatOtherPerson> oh wait
21:41:48 <ThatOtherPerson> it's creating sentences from sentences in homestuck
21:42:05 <ThatOtherPerson> So it must be making Markov chains or something
21:42:20 <TwilightSpockle> *nod*
21:42:27 <Bike> ^help
21:42:27 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
21:42:39 <Bike> ^show style
21:42:42 <ThatOtherPerson> fungot: what is homestuck?
21:42:42 <fungot> ThatOtherPerson: the sylladex reconfigures itself into an array of humorous and mystical artifacts, each one a devastating the battlefield in the center of the medium in which the cards present some convenience.
21:43:01 <Bike> hm i forget how to look up the source
21:43:03 <ThatOtherPerson> that almost started to sound like a proper sentence.
21:43:33 <ThatOtherPerson> fungot: captchalogue the cake.
21:43:33 <fungot> ThatOtherPerson: will that make life possible
21:43:58 <ThatOtherPerson> fungot: captchalogue
21:44:17 <ThatOtherPerson> fungot: Who is Betty Crocker?
21:44:28 <ThatOtherPerson> Sorry for the botspam D:
21:46:02 <boily> it's not botspam, it's just old plain regular bot abuse (now with 20% more fibres!)
21:46:13 <ThatOtherPerson> ^bool
21:46:13 <fungot> Yes.
21:46:16 <ThatOtherPerson> ^bool
21:46:16 <fungot> No.
21:46:18 <ThatOtherPerson> ^bool
21:46:18 <fungot> No.
21:46:43 <ThatOtherPerson> fungot: Dave Strider
21:46:50 <ThatOtherPerson> fungot: who is dave strider?
21:47:05 <ThatOtherPerson> I think he hates me now
21:47:33 <Bike> ^source
21:47:33 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
21:47:41 <Bike> right
21:47:49 <Bike> that should answer any of your remaining questions, ThatOtherPerson
21:48:05 <ThatOtherPerson> O_o
21:48:09 <ThatOtherPerson> what lanuage is that
21:48:16 <ThatOtherPerson> *language
21:48:30 <Bike> befunge 98
21:48:45 <Bike> it's pretty easy, just follow the arrows
21:49:09 * ThatOtherPerson follows the yellow brick road instead
21:50:20 <Phantom__Hoover> ThatOtherPerson, fungot is programmed to ignore people who ping him too much, HTH
21:50:21 <fungot> Phantom__Hoover: you have a great appreciation for the fine arts. you use the hammer and nails. they will come a day when you will be thrust into another stupid wall indent8tion in my desk with the others
21:51:14 <ThatOtherPerson> Phantom__Hoover: ah, thanks :D
21:51:23 <ThatOtherPerson> yep, too much botspam
21:54:39 <boily> ah! that reminds me: I have a bot to sacrifice to this channel.
21:55:07 -!- cuttlefish has joined.
21:55:15 <boily> ~yi
21:55:15 <cuttlefish> Your divination: "Abounding" to "Skinning"
21:55:19 -!- Taneb|Away has changed nick to Taneb.
21:55:30 <boily> ThatOtherPerson: go ahead, make it crash.
21:58:00 <oerjan> ~what
21:58:00 <cuttlefish> --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi
21:58:23 <Bike> ~eval 4
21:58:24 <cuttlefish> Error (127):
21:58:30 <Bike> thanks
21:58:30 <elliott> ~eval x
21:58:31 <cuttlefish> Error (127):
21:58:33 <elliott> ~eval 1+2
21:58:33 <cuttlefish> Error (127):
21:58:36 <elliott> this is a great bot boily i love it
21:58:41 <boily> just a moment, have to reinstall mueval...
21:59:09 <boily> (meanwhile, it is as informative as that J bot...)
21:59:14 <oerjan> `addquote <elliott> ~eval 1+2 <cuttlefish> Error (127): <elliott> this is a great bot boily i love it
21:59:18 <HackEgo> 945) <elliott> ~eval 1+2 <cuttlefish> Error (127): <elliott> this is a great bot boily i love it
21:59:28 <boily> noooooo!
21:59:30 <boily> darn.
21:59:37 * boily hangs his head in shame...
21:59:52 <Phantom__Hoover> ~metar
21:59:52 <cuttlefish> --- ~metar station
21:59:57 <Phantom__Hoover> ~metar hello
21:59:57 <boily> ~eval let 2 = 3 in 2 + 2
21:59:57 <cuttlefish> --- Station not found!
21:59:58 <cuttlefish> 4
22:00:04 <Phantom__Hoover> ~metar edinburgh
22:00:06 <cuttlefish> --- Station not found!
22:00:08 <boily> ~metar CYUL
22:00:08 <cuttlefish> CYUL 312144Z 27021G30KT 2SM R24L/3000V6000FT/U -SN BKN015 OVC035 M06/ RMK SC6SC2
22:00:11 <elliott> help
22:00:12 <Phantom__Hoover> oh
22:00:36 <Phantom__Hoover> i give cuttlefish 10/10 for its intuitive interface & user experience
22:00:53 <boily> ~metar EGPH
22:00:54 <cuttlefish> EGPH 312150Z 25012KT 9999 -SHRA SCT018TCU BKN032 06/04 Q0998
22:01:02 <elliott> ~fortune
22:01:02 <cuttlefish> Little known fact about Middle Earth: The Hobbits had a very sophisticated
22:01:02 <cuttlefish> computer network! It was a Tolkien Ring...
22:01:12 <elliott> hyuk hyuk hyuk
22:01:15 <Bike> are cuttlefish's axons myelinated?
22:01:34 <boily> Bike: no idea. the libs I use won't compile with GHC 7.6.
22:01:48 <elliott> ~dice
22:01:48 <cuttlefish> --- ~dice sides [number]
22:01:48 <cuttlefish> --- Throw dice, e.g.: dice 6 4 will throw four regular dice.
22:01:57 <elliott> so what is ~eval meant to do
22:01:58 <boily> see, I put in some help and docs!
22:01:59 <oerjan> ~metar CTUL
22:01:59 <cuttlefish> --- Station not found!
22:02:01 <elliott> ~eval 1
22:02:01 <cuttlefish> 1
22:02:03 <elliott> oh cool
22:02:04 <elliott> ~eval fix
22:02:05 <cuttlefish> Error (1): No instance for (GHC.Show.Show ((a0 -> a0) -> a0))
22:02:05 <cuttlefish> arising from a use of `M8445273017039537125.show_M8445273017039537125'
22:02:05 <cuttlefish> Possible fix:
22:02:05 <cuttlefish> add an instance declaration for (GHC.Show.Show ((a0 -> a0) -> a0))
22:02:06 <boily> elliott: ~eval evals haskell.
22:02:10 <elliott> ~eval fix id
22:02:11 <cuttlefish> Error (1): No instance for (GHC.Show.Show a0)
22:02:11 -!- Nisstyre has quit (Ping timeout: 252 seconds).
22:02:11 <cuttlefish> arising from a use of `M4680099139340856389.show_M4680099139340856389'
22:02:11 <cuttlefish> The type variable `a0' is ambiguous
22:02:11 <cuttlefish> Possible fix: add a type signature that fixes these type variable(s)
22:02:11 <cuttlefish> Note: there are several potential instances:
22:02:11 <cuttlefish> instance GHC.Show.Show GHC.Types.Double
22:02:12 <cuttlefish> -- Defined in `base:GHC.Float'
22:02:12 <cuttlefish> instance GHC.Show.Show GHC.Types.Float
22:02:13 <cuttlefish> -- Defined in `base:GHC.Float'
22:02:13 <cuttlefish> instance (GHC.Real.Integral a, GHC.Show.Show a) =>
22:02:14 <cuttlefish> GHC.Show.Show (GHC.Real.Ratio a)
22:02:14 <cuttlefish> -- Defined in `base:GHC.Real'
22:02:15 <cuttlefish> ...plus 42 others
22:02:21 <elliott> no extended defaulting I see
22:02:25 <elliott> ~eval fix id :: ()
22:02:27 <cuttlefish> Error (1):
22:02:31 <elliott> great error
22:02:41 <boily> elliott: well, I kinda kludged something together one day... >_>...
22:03:18 <boily> and for eval, I embrace the good old ed philosphy of being consistent with the error messages.
22:03:27 <elliott> ~eval let x :: Int; x = x in x
22:03:29 <cuttlefish> Error (1):
22:03:41 <oerjan> s/consistent/spamming/
22:03:55 <boily> oerjan: it ain't spam, it's poetic.
22:04:08 <Bike> so can i do file i/o with cuttlefish
22:04:15 <elliott> ~eval print ()
22:04:15 <cuttlefish> Error (1): No instance for (GHC.Show.Show (GHC.Types.IO ()))
22:04:16 <cuttlefish> arising from a use of `M8663862707215102090.show_M8663862707215102090'
22:04:16 <cuttlefish> Possible fix:
22:04:16 <cuttlefish> add an instance declaration for (GHC.Show.Show (GHC.Types.IO ()))
22:04:28 <Bike> i fucking love these type variables by the way
22:04:41 <elliott> :t let f x = (x,x); g = f . f; h = g. g in h
22:04:43 <lambdabot> t -> ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t))))
22:04:44 <boily> I may have disabled IO I think. maybe. perhaps. I don't remember.
22:04:47 <elliott> :t let f x = (x,x); g = f . f; h = g . g; i = h . h in i
22:04:48 <lambdabot> t -> ((((((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t))))), (((((t, t), (t, t)), ((t, t), (t,
22:04:49 <lambdabot> t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))))), ((((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t,
22:04:49 <lambdabot> t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t))))), (((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t,
22:04:49 <lambdabot> t))), (((t, t), (t, t)), ((t, t), (t, t))))))), (((((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t,
22:04:49 <lambdabot> t))))), (((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))))), ((((((t, t), (t, t)), ((t, t),
22:04:50 <lambdabot> (t, t))), (((t, t), (t, t)), ((t, t), (t, t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t))))), (((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t,
22:04:52 <lambdabot> t)))), ((((t, t), (t, t)), ((t, t), (t, t))), (((t, t), (t, t)), ((t, t), (t, t))))))))
22:04:54 <Bike> hooray!
22:05:22 <elliott> ~eval let f x = (x,x); g = f . f; h = g . g; i = h . h; j = i . i; k = j . j; l = k . k; m = l . l; n = m . m; o = n . n; p = o . o; q = p . p; r = q . q; s = r. r; t = s . s; u = t . t in u ()
22:05:23 -!- Nisstyre-laptop has joined.
22:05:24 <cuttlefish> Error (1):
22:05:32 <elliott> does it just have like a half a second time limit
22:05:53 <boily> where did I put that config file again...
22:06:19 <Bike> so, in the future, are all ddosses going to be through difficult to typecheck bullshit
22:06:34 <oerjan> ~eval ap (+) succ 2
22:06:34 <cuttlefish> 5
22:06:41 <elliott> ~eval unsafeCoerce
22:06:41 <cuttlefish> Error (1): Not in scope: `unsafeCoerce'
22:06:44 <elliott> ~eval Unsafe.Coerce.unsafeCoerce
22:06:44 <cuttlefish> Error (1): Not in scope: `Unsafe.Coerce.unsafeCoerce'
22:06:51 <elliott> ~eval System.IO.Unsafe.unsafePerformIO
22:06:51 <cuttlefish> Error (1): Not in scope: `System.IO.Unsafe.unsafePerformIO'
22:06:55 <elliott> oh I know
22:06:58 <boily> no System.IO.
22:07:08 <boily> and you should have 3 seconds per request.
22:07:16 <elliott> ~eval let unsafeCoerce v = z where z :: v; z = v where aux = const v in unsafeCoerce 32 :: ()
22:07:16 <cuttlefish> Error (1): Couldn't match expected type `v1' with actual type `t'
22:07:16 <cuttlefish> `v1' is a rigid type variable bound by
22:07:16 <cuttlefish> the type signature for z :: v1 at <interactive>:1:35
22:07:16 <cuttlefish> `t' is a rigid type variable bound by
22:07:16 <cuttlefish> the inferred type of unsafeCoerce :: t -> v at <interactive>:1:5
22:07:24 <elliott> ~eval let unsafeCoerce v = z where z :: v; z = v where aux = const v in ()
22:07:24 <cuttlefish> Error (1): Couldn't match expected type `v1' with actual type `t'
22:07:24 <cuttlefish> `v1' is a rigid type variable bound by
22:07:24 <cuttlefish> the type signature for z :: v1 at <interactive>:1:35
22:07:24 <cuttlefish> `t' is a rigid type variable bound by
22:07:24 <cuttlefish> the inferred type of unsafeCoerce :: t -> v at <interactive>:1:5
22:07:26 <elliott> lame
22:07:37 <boily> sorry, that's what I was stuck with last time.
22:07:40 <boily> have to go.
22:07:47 <boily> see you tomorrow, maybe!
22:07:48 -!- boily has quit (Quit: Poulet!).
22:07:51 <elliott> rip boily
22:07:52 -!- cuttlefish has quit (Remote host closed the connection).
22:08:02 <elliott> missed but not forgotten
22:08:09 <oerjan> elliott: who?
22:08:11 <Bike> i like the implication that haskell's neurons were myelinated before 7.6 though
22:10:40 <kmc> fungot: how's it going?
22:10:40 <fungot> kmc: just be patient, the answer, the fact remained except a note of this, since it just looks so 8ad!
22:11:33 <Taneb> Help I am surrounded by balloons
22:11:45 <Taneb> They are wishing me a happy 50th birthday
22:12:02 <elliott> happy birthday Taneb
22:12:13 <Bike> happy birthday!! :D
22:12:13 <Taneb> Apparently I am now 50
22:12:21 <Taneb> Which makes me older than both my parents
22:12:28 <Bike> combined?
22:12:33 <elliott> congratulations Taneb!!!!
22:12:34 <Taneb> Not quite
22:13:59 <oerjan> yay Taneb!
22:14:09 -!- c00kiemon5ter has joined.
22:14:18 -!- Nisstyre has joined.
22:16:39 -!- Arc_Koen has quit (Quit: Arc_Koen).
22:25:23 -!- Phantom__Hoover has quit (Ping timeout: 255 seconds).
22:25:52 -!- Nisstyre-laptop has quit (Ping timeout: 245 seconds).
22:30:19 -!- carado has quit (Ping timeout: 246 seconds).
22:42:15 <Taneb> The balloons left as swiftly as they appeared...
22:42:27 <Taneb> although I have the strangest feeling it was not the last of them.
22:42:30 <Bike> so are you not 50 any more?
22:42:35 <Taneb> Who knows
22:43:01 -!- Taneb has quit (Quit: Leaving).
22:43:26 -!- Arc_Koen has joined.
22:43:42 -!- Phantom__Hoover has joined.
22:44:36 -!- WeThePeople has joined.
22:45:13 <Arc_Koen> hello
22:45:14 <lambdabot> Arc_Koen: You have 1 new message. '/msg lambdabot @messages' to read it.
22:45:18 <Arc_Koen> @messages
22:45:18 <lambdabot> oerjan said 1h 52m 35s ago: Thank you!
22:47:37 <oerjan> g'day. also i sent you an email back.
22:48:54 <Arc_Koen> yup
22:48:58 <elliott> emails?!?!?!
22:49:01 <elliott> can I get an email
22:49:26 * Arc_Koen grips his email protectively
22:50:26 <Arc_Koen> oerjan: the ocaml version was not the most recent because I made several small fixes or small modifications and I didn't want to bother zzo38 for every one of them
22:50:49 <oerjan> uh huh.
22:51:20 <Sgeo> ) 'Is Jconn still here?'
22:51:20 <jconn> Sgeo: Is Jconn still here?
22:51:37 <oerjan> ) 'a'+'b'
22:51:38 <jconn> oerjan: |domain error
22:51:38 <jconn> oerjan: | 'a' +'b'
22:51:43 <oerjan> WEAK
22:52:04 <Arc_Koen> ) 'a'^'b'
22:52:04 <jconn> Arc_Koen: |domain error
22:52:04 <jconn> Arc_Koen: | 'a' ^'b'
22:52:05 <elliott> ) 'friend'
22:52:05 <jconn> elliott: friend
22:52:10 <elliott> :')
22:54:35 <Sgeo> If hypothetically I were to try to implement Brainfuck in J, would I use sequential machine?
22:54:45 <Sgeo> Because I have no idea how it works but it looks possibly relevant
22:56:24 <Sgeo> ) (<1);(<2)
22:56:24 <jconn> Sgeo: +---+-+
22:56:24 <jconn> Sgeo: |+-+|2|
22:56:24 <jconn> Sgeo: ||1|| |
22:56:24 <jconn> Sgeo: |+-+| |
22:56:24 <jconn> Sgeo: +---+-+
22:56:39 <Sgeo> Well, that's weird
22:58:24 -!- Nisstyre has quit (Ping timeout: 264 seconds).
23:04:22 -!- FreeFull has quit (Ping timeout: 244 seconds).
23:09:29 <oerjan> ) <1; <2
23:09:29 <jconn> oerjan: +-----+
23:09:30 <jconn> oerjan: |+-+-+|
23:09:30 <jconn> oerjan: ||1|2||
23:09:30 <jconn> oerjan: |+-+-+|
23:09:30 <jconn> oerjan: +-----+
23:09:42 <oerjan> ) 1;2
23:09:42 <jconn> oerjan: +-+-+
23:09:42 <jconn> oerjan: |1|2|
23:09:42 <jconn> oerjan: +-+-+
23:10:07 -!- aloril has quit (Ping timeout: 256 seconds).
23:10:07 -!- aloril has joined.
23:10:10 <oerjan> ) (<1);2
23:10:10 <jconn> oerjan: +---+-+
23:10:10 <jconn> oerjan: |+-+|2|
23:10:10 <jconn> oerjan: ||1|| |
23:10:10 <jconn> oerjan: |+-+| |
23:10:10 <jconn> oerjan: +---+-+
23:10:18 <oerjan> ) (<1);(<<2)
23:10:18 <jconn> oerjan: +---+---+
23:10:18 <jconn> oerjan: |+-+|+-+|
23:10:18 <jconn> oerjan: ||1|||2||
23:10:18 <jconn> oerjan: |+-+|+-+|
23:10:18 <jconn> oerjan: +---+---+
23:10:37 <c00kiemon5ter> ) (<1);<(<2)
23:10:37 <jconn> c00kiemon5ter: +---+---+
23:10:37 <jconn> c00kiemon5ter: |+-+|+-+|
23:10:37 <jconn> c00kiemon5ter: ||1|||2||
23:10:37 <jconn> c00kiemon5ter: |+-+|+-+|
23:10:37 <jconn> c00kiemon5ter: +---+---+
23:11:16 <oerjan> ) 1;(<2;(<3;(<4)))
23:11:16 <jconn> oerjan: +-+---------+
23:11:16 <jconn> oerjan: |1|+-+-----+|
23:11:16 <jconn> oerjan: | ||2|+-+-+||
23:11:16 <jconn> oerjan: | || ||3|4|||
23:11:16 <jconn> oerjan: | || |+-+-+||
23:11:16 <jconn> oerjan: ...
23:11:37 <oerjan> ) 1;(2;(3;(4)))
23:11:37 <jconn> oerjan: +-+-+-+-+
23:11:37 <jconn> oerjan: |1|2|3|4|
23:11:37 <jconn> oerjan: +-+-+-+-+
23:11:40 -!- FreeFull has joined.
23:27:04 -!- FreeFull has quit (Read error: Operation timed out).
23:28:22 -!- FreeFull has joined.
23:38:52 -!- Nisstyre-laptop has joined.
23:50:48 -!- TeruFSX has joined.
←2012-12 2013-01 2013-02→ ↑2013 ↑all