00:10:30 wait what 00:10:32 elliott: you may be right. i genuinely wanted to learn, but i apologize if that was insensitive, etc. 00:10:37 i said o? :D 00:10:47 yes you did 00:10:47 i have no idea when i did that 00:11:13 hey oklofok 00:11:16 quintopia: yeah, ok 00:11:26 oklofok: do you want to server 00:12:05 oerjan: did you hear the great news, i'm not almost sure that my characterization works 00:12:20 elliott: i have to watch a few more eps and get to work but sure 00:12:32 Eps of what? 00:12:34 -!- pikhq_ has quit (Ping timeout: 252 seconds). 00:12:35 -!- pikhq has joined. 00:12:43 erm or no i don't want to server, i thought you said do i want the server 00:12:52 Phantom_Hoover: rewatching hustle 00:13:07 The British show about conmen? 00:13:08 oklofok: but we need TESTERS. 00:13:11 yes 00:13:26 surprisingly enough, i think it's great 00:13:34 like every other show i've watched 00:13:47 oklofok, you should totally join the official #esoteric Homestuck club. 00:14:18 i still don't really know what homestuck is 00:14:22 perhaps i never will 00:14:41 You would have to consult arcane texts on the matter. 00:14:42 it's a virus. 00:14:47 Such as Homestuck. 00:14:48 but with points 00:14:50 its kind of like an rpg 00:14:56 you have to spread it to as many computers as you can. 00:15:02 it was made by a sick, demented man known only as Satan. 00:16:08 oerjan: did you hear the great news, i'm not almost sure that my characterization works <-- freudian slip? 00:16:22 xD 00:16:44 wow. 00:16:46 *now 00:16:46 YOU SUBCONSCIOUS MAY DISAGREE 00:16:56 well i convinced one guy already 00:17:05 poor deluded fool 00:17:09 but no one at the uni so will have to wait for a while 00:17:25 only me and people holding summer internships 00:18:04 was the guy a hobo 00:18:11 he was mister x 00:21:03 -!- oklopol has joined. 00:21:50 *i* am the office hobo 00:22:42 -!- oklofok has quit (Ping timeout: 252 seconds). 00:23:10 in my dream, i was finland 00:23:41 and america was trying to sleep with norway but she did not want to convert to euro, so she refused. 00:24:09 also norway was my cousin and america was a character from hustle 00:24:28 oklopol: http://satwcomic.com/ , hth 00:24:31 oh and i was trying to find gold at the beach inside the palace of my friend who lived in rome 00:25:05 seen that 00:25:11 summa that at least 00:26:56 * oerjan considers archive binging it 00:30:13 -!- pikhq has quit (Remote host closed the connection). 00:30:54 ? 00:31:03 oh 00:31:15 missed the word archive 00:31:42 Yup, definitely bricked my router. 00:31:44 Great. 00:32:20 do you mean you took it in the ass from a truck driver 00:32:50 or was it a euphemism? 00:34:20 Sounds about right. 00:34:22 Gregor: How 00:34:47 elliott: Trying to upgrade my (custom) firmware. Downloaded the WRT54G firmware instead of the WRT54G2 firmware. 00:35:25 a great day for masonry 00:36:47 Gregor: Noice :P 00:38:38 * Phantom_Hoover → sleep 00:38:40 -!- Phantom_Hoover has quit (Quit: Leaving). 00:39:01 -!- pikhq has joined. 00:40:53 Gregor: I doubt "bricked" is accurate :P 00:41:50 nope its a brick 00:42:46 -!- Maharba has joined. 00:43:46 hi Maharba 00:43:59 -!- Maharba has left. 00:44:04 bye maharba 00:44:09 bye maharba 00:44:16 -!- elliott has set topic: Esoteric programming languages | Logs: http://codu.org/logs/_esoteric/ and http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 00:44:22 monqy: quick bring them back 00:44:32 its too late 00:44:35 their gone 00:44:36 they parted, not /quit :P 00:44:47 whois says otherwise 00:44:53 darn 00:45:27 * oerjan checks what the previous topic was 00:45:43 jesus has coeliac disease? 00:46:45 long story :D 00:50:42 ic 01:08:00 elliott: Special JTAG cable + soldering required to unbrick. 01:08:09 elliott: Cost of equipment to fix router is greater than cost of a new router :P 01:08:45 elliott: not necessarily. Wouldn't Signal a t allow either discrete or continuous? Basically I write functions that except both or only one kind of signal, without having to use a typeclass to convert everything to discrete. 01:09:09 and without having to use Either. 01:10:22 ^ul ((phantom types )S:^):^ 01:10:23 phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types phantom types ph ...too much output! 01:13:42 CakeProphet: So you've achieved... the same as a typeclass. 01:13:50 Except it requires a language extension and doesn't let anyone add new types of signal 01:19:14 -!- Lymia has joined. 01:20:45 -!- oerjan has quit (Quit: phantom types, i said!). 01:21:05 -!- Lymee has quit (Ping timeout: 240 seconds). 01:22:49 so often i have this dream that i have to hit someone but my punches move reeeeeally slowly 01:22:59 maybe i should become a boxer, i have way too much brain for my needs 01:33:49 elliott: the idea was to have a typeclass as well. But it would only have one function instead of two.. 01:37:28 using only typeclasses enforced some kind of conversion in order to operate on the signal, with a single GADT I can use both kinds of signal in one function, while also having it typecheck in the case that the wrong kind of signal is used. 01:39:19 also, I think being afraid of language extensions is silly. GHC is the de facto Haskell compiler more or less. 01:39:21 It doesn't force conversion 01:39:25 It just forces using via an interface 01:39:35 And language extensions are silly when there's literally no gain 01:40:05 better typechecking? 01:40:52 toDiscrete :: Signal t a -> Signal Discrete a 01:41:24 For a start, that type is way insufficient 01:41:27 You need to give a sampling rate 01:41:32 For a second, ???? 01:41:45 the sampling rate isn't part of the type it's a constructor argument 01:41:46 sample :: SampleRate -> CSignal a -> DSignal a 01:41:49 it is pretty much always an Integral... 01:41:56 CakeProphet: That's still not enough for toDiscrete 01:42:01 You cannot just convert a continuous signal to a discrete one 01:42:03 ah wait, yeah nevermind. :P 01:42:04 You must use a certain sampling rate. 01:42:13 Anyway, [(Time,a)] is a much better model for a discrete signal. 01:42:17 That doesn't force a constant sampling rate. 01:42:58 mmk. 01:43:05 cd .. 01:43:09 But like I said, 01:43:10 sample :: SampleRate -> CSignal a -> DSignal a 01:43:12 How is that not typechecked? 01:43:21 newtype CSignal a = CSignal (Time -> a) 01:43:26 newtype DSignal a = DSignal [(Time,a)] 01:43:32 instance Signal CSignal where ... 01:43:34 it requires that the argument be continuous. 01:43:35 instance Signal DSignal where ... 01:43:51 CakeProphet: Well, yeah, why would you want to sample a DSignal? 01:44:01 Just treating it like a continuous signal would be a rather poor sample rate converter 01:44:18 _Mine_ is better typechecked, because it stops you sampling non-continuous singals :) 01:44:27 I don't need to treat it like a continuous signal, I can treat it like a discrete signal and convert the sample rate. 01:44:43 Eh? 01:44:45 via pattern matching 01:44:59 OK, so you actually have two functions. 01:45:12 when needed, yes. 01:45:12 sample and convertSampleRate. 01:45:21 convertSampleRate :: (Signal t) => SampleRate -> t -> DSignal a 01:45:23 Tada 01:45:30 erm 01:45:32 convertSampleRate :: (Signal t) => SampleRate -> t a -> DSignal a 01:46:03 CakeProphet: But really, you should have 01:46:11 sample :: SampleRate -> CSignal a -> DSignal a 01:46:18 convertSampleRate :: SampleRate -> DSignal a -> DSignal a 01:46:40 okay fine I'll just have a multitude of functions and typeclasses when I could merge it into one type transparently. 01:46:41 That avoids conflating the two separate functions. 01:46:53 CakeProphet: You would have exactly one typeclass, Signal. 01:47:02 And having a multitude of functions is a good thing, it's called a rich set of operations 01:47:12 Sampling a continuous signal and converting the sample rate of a discrete signal are not the same thing 01:47:18 Conflating them is a bug 01:51:38 -!- oklofok has joined. 01:51:57 -!- CakeProphet has quit (Ping timeout: 276 seconds). 01:54:12 -!- oklopol has quit (Ping timeout: 264 seconds). 02:27:00 -!- augur has quit (Ping timeout: 252 seconds). 02:30:08 -!- Behold has quit (Remote host closed the connection). 02:54:38 -!- jcp has quit (Ping timeout: 250 seconds). 02:54:58 -!- jcp has joined. 02:57:15 -!- jcp|1 has quit (Ping timeout: 260 seconds). 02:59:43 -!- myndzi\ has joined. 03:01:58 -!- javawizard has joined. 03:02:48 -!- myndzi has quit (Ping timeout: 276 seconds). 03:20:08 -!- FireFly has quit (Quit: swatted to death). 03:25:31 -!- derrik has joined. 03:30:50 -!- azaq23 has joined. 03:41:32 -!- zzo38 has joined. 04:08:58 Finally I got DVI output to printer working correctly, using a program called "dviout". 04:10:44 It requires no PostScript, no raw printer codes, no PDF, no TrueType, no of that other stuff (although it does support all of these features). 04:11:38 How can you have a beautiful ending without making beautiful mistakes? 04:11:46 If at first you do succeed...try something harder. 04:36:57 Lymia: Are you responsible for the /snow command. 04:47:05 What is a /snow command? 04:50:36 WorldEdit, in Minecraft. 04:53:08 -!- cheater_ has joined. 04:57:53 elliott is capable of making infinity be less than 15*4 04:59:01 Sgeo_: You have dirt now. 04:59:08 Infinite dirt. 04:59:12 I need to not drown right now 04:59:20 You are above water? 04:59:32 I am? I can't tell, I'm lagging that badly 04:59:37 Reconnect 04:59:38 The lag is gone now 05:00:48 Sgeo_: No luck? 05:01:12 Sorry, was afk 05:10:39 Man. I never really thought about that... Having "In God We Trust" on the US nickle in particular is quite a dick move. 05:10:53 (for non-Americans: Thomas Jefferson appears on the US nickle) 05:11:11 It's the very antithesis of the man. 05:24:08 -!- elliott has changed nick to yay. 05:24:12 -!- yay has changed nick to elliott. 05:24:41 -!- pikhq_ has joined. 05:27:25 -!- pikhq has quit (Ping timeout: 252 seconds). 05:28:40 -!- elliott has changed nick to sldjkf. 05:28:57 -!- sldjkf has changed nick to elliott. 05:31:31 -!- zzo38 has quit (Remote host closed the connection). 05:37:32 -!- elliott has changed nick to pyralspite. 05:39:17 -!- pyralspite has changed nick to elliott. 05:51:31 pikhq_, are you assuming brazilians know what's on the us nickle? 05:52:25 -!- fungot has quit (Ping timeout: 260 seconds). 05:53:35 -!- fizzie has quit (Ping timeout: 260 seconds). 06:03:04 cheater_: No, but (unfortunately) "American" is the demonym for citizens of the USA. 06:05:12 i just say usarian 06:05:38 It works a bit better in Esperanto. "Usonanto", IIRC. 06:06:07 -!- copumpkin has joined. 06:06:08 -!- copumpkin has quit (Changing host). 06:06:08 -!- copumpkin has joined. 06:11:12 "uss-asian" 06:11:18 "usasian" 06:11:56 -!- foocraft has joined. 06:20:26 -!- derrik has quit (Quit: over and out). 06:30:45 -!- CakeProphet has joined. 06:38:07 -!- monqy has quit (Quit: hello). 06:47:23 -!- Lymia has changed nick to Lymee. 06:50:54 -!- fizzie has joined. 07:00:51 -!- CakeProphet has quit (Ping timeout: 240 seconds). 07:35:24 -!- elliott has changed nick to pyralspite. 07:35:39 -!- pyralspite has changed nick to elliott. 07:55:49 -!- foocraft_ has joined. 08:01:42 -!- BeholdMyGlory has joined. 08:03:04 -!- Phantom_Hoover has joined. 08:10:22 http://www.vimprobable.org/ This guy really doesn't like Google. 08:15:18 People actually use Scroogle? 08:21:34 -!- Lymee has quit (Ping timeout: 252 seconds). 08:21:59 Paranoid people, yes. 08:21:59 Phantom_Hoover: You have 2 new messages. '/msg lambdabot @messages' to read them. 08:23:15 The paranoia isn't the thing, it's the Brandt. 08:24:02 The paranoia presumably overcomes the aversion to him. 08:24:18 More likely they've no aversion. 08:25:22 I'm surprised the page didn't insult me when it looked at my user agent. 08:25:33 -!- tswett_ has joined. 08:26:26 -!- oklopol has joined. 08:30:14 -!- azaq23 has quit (*.net *.split). 08:30:14 -!- oklofok has quit (*.net *.split). 08:30:15 -!- tswett has quit (*.net *.split). 08:33:40 http://www.vimprobable.org/ This guy really doesn't like Google. <-- heh 08:35:55 -!- Lymee has joined. 08:35:55 -!- Lymee has quit (Changing host). 08:35:55 -!- Lymee has joined. 08:45:21 -!- azaq23 has joined. 08:45:21 -!- azaq23 has quit (Changing host). 08:45:21 -!- azaq23 has joined. 09:15:22 -!- shachaf has quit (Read error: Operation timed out). 09:23:14 -!- asiekierka has joined. 09:23:19 hi can you hear me 09:24:00 -!- asiekierka has quit (Client Quit). 09:24:56 -!- augur has joined. 09:30:53 no 10:02:08 -!- elliott has quit (Remote host closed the connection). 10:02:09 -!- elliott_ has joined. 10:15:23 http://downforeveryoneorjustme.org/ 10:15:24 pro coding 10:15:38 oh well. 10:16:54 is downforeveryoneorjustme.org down for everyone or just me :D 10:17:11 It's just you, do-man. 10:17:18 The PHP is down, the HTML isn't 10:17:19 It's like He-Man. 10:17:26 That depends on the universe you are observing. 10:18:20 Deewiant: Pure guess: some update or another has turned the short-open-tags feature off. 10:18:37 heh 10:18:41 (That's just a ripoff of the actual site, btw) 10:18:47 (Which is a .com) 10:23:39 The real site seems to be implemamented with the Google App Eggnog. (User-agent: "AppEngine-Google; (+http://code.google.com/appengine; appid: downforeveryoneorjustme)") 10:24:21 It's open-source, IIRC 10:41:00 -!- BeholdMyGlory has quit (Remote host closed the connection). 10:59:58 -!- cheater_ has quit (Ping timeout: 255 seconds). 11:00:39 -!- cheater_ has joined. 11:18:08 -!- elliott has joined. 11:18:08 -!- elliott_ has quit (Read error: Connection reset by peer). 11:18:20 Lymee: I think I should just have HashMap> 11:19:11 Lymee: And if a world isn't in the map, we just assume every chunk is hostile. 11:19:15 Ugly? Yes. 11:19:18 Useful? Yes. 11:21:34 -!- oerjan has joined. 11:23:47 -!- augur has quit (Read error: Connection reset by peer). 11:24:04 -!- augur has joined. 11:28:19 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds). 11:33:02 -!- FireFly has joined. 11:43:14 -!- ais523 has joined. 11:51:24 -!- _foocraft has joined. 11:51:46 -!- foocraft has quit (Ping timeout: 246 seconds). 11:52:37 -!- foocraft_ has quit (Quit: if you're going....to san. fran. cisco!!!). 11:55:42 -!- Phantom_Hoover has joined. 12:06:03 -!- boily has joined. 12:09:15 elliott: Tabs are 8 characters, and thus indentations are also 8 characters. There are heretic movements that try to make indentations 4 (or even 2!) characters deep, and that is akin to trying to define the value of PI to be 3. 12:09:25 I'm amused that they disagree with me on style, but agree on the immutability of tab sizes 12:09:52 ais523: Yes, obviously I have never read the Linux coding standards before 12:09:52 Clearly they implicitly accept my indentation level of 3 12:11:14 I love the way they wrote PI in uppercase 12:11:16 because it's a constant 12:14:42 Deewiant: Sure, because that's PI spaces. 12:15:31 fizzie: Deewiant: ais523: Anyone: Are there restrictions on what you can remove from collections you're iterating over in Java? 12:15:45 elliott: IIRC yes, let me look it up 12:15:46 I have "for (T x : hashSet) { ... }", and I want to remove x from the hashSet depending on certain conditions. 12:15:46 You need to use the iterator to remove 12:15:54 Yes. 12:15:54 Deewiant: So no nice for syntax? 12:15:56 elliott: Use an Iterator, it has a remove method 12:16:01 SIGH FINE >:( 12:16:02 elliott: Not that I know of at least 12:16:32 if (!worldState.hostileChunks.contains(ChunkCoords.fromLocation(monster.getLocation()))) { 12:16:33 if (!worldState.hostileChunks.contains(ChunkCoords.fromLocation(event.getLocation()))) { 12:16:39 wow, those are actually the exact same line 12:16:45 No they're not 12:16:51 Err, well 12:16:56 Modulo alpha renaming 12:16:59 I was pasting them as two different insanely long ifs :-) 12:17:09 Maybe I should define worldState.isInHostileChunk(). 12:17:38 elliott: yep, just checked, the rule is that you can only remove the element that you're currently on during the iteration, and can only do so via calling the remove method on the iterator 12:17:39 the world is in a hostile, chunky state 12:17:55 also, you can't remove the current element more than once without going onto the next element, obviously 12:18:19 Most of the iterators are "fail-fast", in that they (try to) start throwing ConcurrentModificationExceptions if you mangle the collection you're iterating over by any other means than the iterator. 12:19:01 fizzie: that's not guaranteed 12:19:07 Hence "try to". 12:19:10 yep 12:19:16 I just thought that the warning would be useful 12:19:31 * elliott is slightly worried that ais523's first reaction was "Why on earth is elliott coding Java???" 12:19:36 or maybe it was, just internally only 12:20:08 elliott: I saw your code paste before I saw the first statement that implied Java 12:20:08 because it took me several seconds to switch to the IRC window 12:20:18 and the code paste suggested an obvious context (something Minecraft-related) 12:20:29 fizzie: Deewiant: ais523: Anyone: Are there restrictions on what you can remove from collections you're iterating over in Java? 12:20:29 elliott: IIRC yes, let me look it up 12:20:32 No, you knew it was Java :-P 12:20:36 That was before any pastes 12:20:46 elliott: aha, that must be the zzo38 reaction 12:20:51 heh 12:20:51 in that I didn't look for a context until it became necessary 12:21:10 in this channel, my mind didn't make the connection between "asking questions about Java" and "writing Java" 12:21:14 not immediately, at least 12:21:24 I'm even using Eclipse :-| 12:21:41 in fact, it would be quite plausible that you were writing a different language with iterable collections, and wanted to know what Java did so you could do something different 12:21:50 * elliott decides to stare at Eclipse for a few hours until it tells him how many lines of Java he's written today. (This is how you solve problems with Eclipse.) 12:21:56 (This is what I have learned. 12:21:56 ) 12:22:14 oh, wait, I have wc 12:22:17 also, sloccount 12:22:27 ohcount 12:22:35 also, Java badly needs a Java-specific IDE, it's too library-dense to easily use otherwise 12:22:35 although I generally use NetBeans (because it's what's taught here, and I need to use the technology I'm meant to teach) 12:22:56 Deewiant: Didn't have a convenient website last I looked 12:22:59 ais523: wow, only 228 lines 12:23:01 it feels like more 12:23:08 probably because I had to go through an IDE form just to create a lambda 12:23:25 you didn't, you could (and probably should) have used a nested class 12:23:38 or does that need a form in Eclipse? 12:23:47 I think it can have one, if you want 12:23:51 ais523: they're rather long lambdas, anyway 12:23:52 You can just type in code, though. 12:24:02 and Java files seem to be divided into two types: 12:24:07 - hundreds of lines long, everything in one class 12:24:13 - thirty lines long, about five hundred classes 12:24:15 It does have "make a new (inner or not) class" forms though. 12:24:17 in NetBeans, you can highlight a statement and then click on the left margin, and choose the option to enclose it in a Runnable 12:24:46 hmm, oh dear... 12:24:47 elliott: you typically only use one class per file, not counting inner classes 12:24:57 some are much longer than others 12:25:20 I'm writing "practical", impure, not-very-theoretically-soundly-organised code, in Java, in an object-oriented style (sort of), for a buggy game 12:25:30 I think, by my own account, my soul should have vanished in a few hours 12:25:48 elliott: You have become the very thing you fought for! Abyss, gazing back, and so on! 12:25:48 e.g. the longest class in Jettyplay is 2122 lines long, many of which are autogenerated 12:25:53 s/for/against/ 12:26:06 fizzie: the first version was funnier 12:26:08 in fact, 12:26:09 Eclipse is actually quite nice, to be honest 12:26:15 `addquote elliott: You have become the very thing you fought for! 12:26:16 I mean, as nice as a Java IDE can be 12:26:18 498) elliott: You have become the very thing you fought for! 12:26:56 I do like how builds happen completely automatically, at least 12:26:57 the second longest is 2076 lines long, after I deleted half of it (it originally came from someone else's program), but it's mostly a state machine and that's to be expected of state machines 12:27:04 and all the errors appear without asking 12:27:11 elliott: NetBeans does that too, I imagine all Java IDEs do 12:27:15 ais523: Indeed 12:27:16 even Emacs does that 12:27:22 if set up correctly 12:27:23 well, it's always a pain with Emacs 12:27:25 IME 12:27:32 flymake tends to be flaky 12:27:36 not IME, but it depends on what language you're using 12:27:42 flymake is incredibly flaky with C, but works very well with Perl 12:29:10 probably because C is a language not very conducive to that sort of thing (C++ is even worse) 12:29:53 oh, I forgot the last element of the soullessness trifec...n-fecta 12:30:03 it's using an "enterprisey" framework :( 12:30:52 * elliott weeps 12:32:17 and Jettyplay isn't, ironically enough given the name 12:32:23 (the "e" stands for Enterprisey) 12:32:40 at least the enterprisey framework is called "bukkit" 12:32:42 I suppose it isn't all that enterprisey really, just overengineered 12:32:46 there is some drop of humour left in my new terrible world : ( 12:33:02 Bababadalgharaghtakamminarronnkonnbronntonnerronntuonnthunntrovarrhounawnskawntoohoohoordenenthurnuk 12:33:18 dammit, these pigs know they're going to evaporate if they walk too far 12:33:37 ah, a perfect kill. 12:35:18 "Tired of monsters spawning on one or more of your worlds? Don't like the health regeneration that comes with spawn-monsters=false? With NoRegen, you can enjoy monster-free world(s), and still be without the boring health regeneration!" 12:35:20 NO THIS IS THE OPPOSITE OF WHAT I WANT 12:35:41 oops wrong channel 12:38:41 Phantom_Hoover: gesundheit 12:38:56 oerjan, it was LITERARY 12:39:12 i know, i googled 12:39:26 I don't think anyone has ever actually read Finnegan's Wake. 12:39:48 The actual book is probably completely different to every synopsis on the internet. 12:39:58 Phantom_Hoover: someone, somewhere, somewhat like zzo probably has. 12:40:01 I didn't think you could make a synopsys of it 12:40:24 What everyone *thinks* it contains is just an aggregate of summaries which has evolved into a completely different story. 12:42:19 meanwhile, I saw a story recently about people benchmarking Firefox 8 12:42:30 what is up with those version numbers? they're releasing major versions faster than they used to release minor versions 12:42:44 so it isn't even a simple minor->major shift 12:42:56 They changed their release schedule 12:42:56 I remember back when Firefox 3 was A Big New Thing. 12:43:02 One major version every 3 months, IIRC 12:43:03 You know, two years ago. 12:44:13 I'm still on the 3 series (with Ubuntu doing security patches) 12:44:14 I think "8" was what they're calling the "unstable", or wasn't it so? 12:44:18 yep 12:44:18 I remember back when Phoenix 0.1 was A Big New Thing. You know, eight years ago. 12:44:32 I don't think anyone has ever actually read Finnegan's Wake. 12:44:33 Finnegans 12:44:44 I remember when I got Netscape, and it was a lot fancier than Mosaic. 12:45:02 They're at 5 now and have 6 and 7 on the roadmap, IIRC. 12:48:29 so will they be starting with Firefox 3000 or something equally silly within five years? 12:50:09 "Ok we just made Firefox Busy Beaver. wtf are we going to call the next version?" 12:50:55 after Firefox 5, they will use the Fibonacci numbers so that the version number growth is exponential 12:51:13 6 comes out in August when 7 moves from AURORA to BETA, and 8 moves from NIGHTLY to AURORA. 12:51:16 "and why are we being overrun by ubuntu lawyers?" 12:51:41 5 came out in June. 12:52:02 within years we will be able to safely use a floor of a logarithm of the version to identify the version 12:52:03 I think it's supposed to be something like 2-3 months per major version number, so 4-6 major versions per year. 12:52:32 ok scratch that. they make Firefox Graham's Number, and want to do Busy Beaver next but _then_ are overrun by ubuntu lawyers. 12:53:13 oerjan, to be exact, Firefox three arrow three arrow sixty-four point blabla arrow two. 12:53:28 O KAY 12:53:36 I don't get why they'd be overrun by Ubuntu lawyers, is it a pun I'm missing? 12:53:41 Ubuntu Busy Beaver 12:53:46 ah, aha 12:53:47 Ubuntu MM.NN Busy Beaver 12:57:15 oh, they can pass on to transfinite ordinals then 12:57:49 -!- wth has joined. 12:58:15 -!- wth has changed nick to Guest87246. 12:59:28 -!- Guest87246 has left. 13:00:08 i'm really not convinced wth is the best nick, _even_ if it's probably an acronym of eir real name 13:04:27 Oh, it's 6 weeks per major version: https://wiki.mozilla.org/RapidRelease/Calendar 13:05:07 six weeks? X-D 13:05:14 sturmeh: 13:05:15 cool: false 13:05:15 eats: 13:05:15 babies: true 13:05:15 good yaml example 13:06:32 So Firefox 9 released this year, and Firefox 12 in the nightly branch; and by the end of 2012 they'll release Firefox 17, and have Firefox 20 in development in the nightly branch. 13:07:40 what versions will the other major browsers be on by then? in particular, is Firefox's schedule outversioning Chrome? 13:08:06 I wonder if Chrome thirteen is out yet 13:08:13 I'm on twelve, but I haven't updated in... a few days :-P 13:08:32 fizzie: how long until they reach three digits? 13:09:32 A bit less than 11 years. 13:09:50 great 13:10:14 by october 2012 they will have hit three digits. during the first two weeks of december it will grow to thousands of digits. what happens after that is unpredictable. 13:10:37 I guess it depends which sort of curve you fit in. 13:10:45 oerjan: :D 13:11:20 Eyeballing the Chrome release history in Wikipedia, it would seem to be about the same speed. 13:11:33 hmm, I wonder if version numbering will hit singularity some time 13:11:34 The Firefox Singularity? 13:11:39 thats the joke dot jpg 13:11:41 by october 2012 they will have hit three digits. during the first two weeks of december it will grow to thousands of digits. what happens after that is unpredictable. 13:12:38 that doesn't imply singularity 13:12:44 it might just be going up at Ackermann speed or whatever 13:12:56 ais523: you get the refernce, suerly 13:13:01 december 2012? 13:13:16 meh, that's a sufficiently busted reference that I tend to ignore it 13:13:29 elliott, Maya? 13:13:39 ais523: it's called a _joke_ 13:13:42 you may have heard of it. 13:13:58 but it isn't particularly funny 13:14:08 oerjan: outrageous 13:14:23 elliott: i'll just have to take the audience i get 13:15:41 -!- asiekierka has joined. 13:15:52 is anyone here? 13:15:56 nope 13:15:59 oh darn 13:16:07 i'm forced to type from netcat so i was seriousthere 13:16:27 fancy 13:16:45 * ais523 sends a ctcp version and waits a minute or so for asiekierka to type the reply 13:16:46 also some dedication 13:16:54 ais523: :D 13:17:09 i don't know how to reply to VERSIONs yet 13:17:11 oerjan: I do reply to CTCP VERSIONs when IRCing via netcat 13:17:22 O_o 13:17:23 asiekierka: NOTICE ais523 :^AVERSION netcat^A 13:17:28 where ^A is a literal control-A 13:17:28 i'm using musl libc, irssi doesn't compile for it, neither does ircii 13:17:37 no binaries for other IRC clients 13:17:47 i'd be happy to move to anything better than netcat 13:18:00 i could just get dropbear and SSH into another computer but THAT'S CHEATING 13:18:15 why /is/ that SSH impl called dropbear? 13:18:20 the name always confused me 13:18:22 asiekierka: you could use zzo38's client >:) 13:18:26 it drops bears 13:18:31 oerjan link 13:18:40 asiekierka: *WHOOSH* 13:18:58 (admittedly it is probably better than netcat) 13:19:01 not a link to the past, just an http link 13:19:09 oerjan: it does the PONGs 13:19:14 automatically 13:19:20 didn't 13:19:24 other than that, it's pretty similar to nc 13:19:28 ais523: i think it also has some completion 13:19:34 i used bootstrap-linux by pikhq to get into where i'm now 13:19:49 anything is better than netcat for IRCing 13:19:52 a nice thing about Freenode is that you can type anything at all in response to a PING, even a privmsg or whatever, and it accepts it 13:20:04 so you don't need to bother about writing perfect PONGs 13:20:07 :D 13:20:10 most servers aren't so forgiving 13:20:15 oh, asie. 13:20:17 is back again 13:20:19 The perfect PONG. Long thought to be just a myth. 13:20:23 yes 13:20:26 and it won't even bother to ping you if you're sending a lot 13:20:33 why /is/ that SSH impl called dropbear? 13:20:34 why not? 13:20:44 also, what did you do, pikhq_ :( 13:21:02 pikhq did awesome 13:21:06 why? 13:21:09 because programs ideally should either a) have names that are descriptive of what they do so you don't have to look them up, or b) have names that are unique enough to search on 13:21:14 and "dropbear" doesn't fulfil either requirement 13:21:31 (fulfilling both would be ideal, but is typically very difficult) 13:21:40 derp 13:22:04 ais523: Find me another piece of software called Dropbear 13:22:14 asiekierka: hm i went to http://zzo38computer.cjb.net/index.php/ but i cannot find a link to his client. anyway, it was more of a joke. 13:22:31 i am serious D:< 13:22:34 elliott: why software? the word comes up in other contexts 13:22:41 -!- FireFly has quit (Quit: swatted to death). 13:22:41 asiekierka: do you even have php intsalled 13:23:05 no, not yet 13:23:14 zzo's is in php 13:23:17 ais523: Windows: bad software name; Macintosh: bad software name; Gnome: bad software name 13:23:26 ais523: Eclipse: bad software name 13:23:33 : bad software name 13:23:49 elliott: Windows is at least vaguely descriptive 13:23:51 i'll try fixing ircii 13:23:52 the others aren't ideal 13:24:08 in fact, "Microsoft Windows" is a pretty good name for what it does 13:24:11 openssl? 13:24:11 under a) 13:24:16 asiekierka: that's a good name too 13:26:49 I've always just guessed the name is intended to evoke adjectives such as "lean", "fast", "vicious". Haven't seen it documented anywhere. 13:26:57 They do have a mailing list if you want to know. 13:35:04 -!- asiekierka has quit (Ping timeout: 252 seconds). 13:35:19 SOMEONE FORGOT TO PONG 13:35:38 ais523: oh, I've been doing a bad Java thing in my bad Java :< 13:35:55 I've been using HashSet as a type on the LHS, just because that's my implementation 13:35:57 and in classes 13:36:34 * elliott feels bad ::::: (((( 13:36:45 -!- asiekierka has joined. 13:36:45 "type on the LHS"? 13:36:47 yes! 13:36:52 yes 13:36:58 i finally compiled a sane IRC client 13:36:58 maybe! 13:37:09 No! 13:37:12 i had to mod it a bit, though - minor defs.h change + adding u_xxxx 13:37:13 ":propelling chess in the 21st century and beyond!" 13:37:17 I think it's the colon that amuses me the most about that 13:37:33 as if ircII was meant to have its version number automatically parsed by something that used IRC syntax 13:37:36 ais523: i.e. 13:37:40 HashSet x = ... 13:37:41 rather than 13:37:44 Set x = ... 13:38:06 elliott: aha 13:38:06 well, it depends on if you're doing anything with it that would require a HashSet in particular 13:40:31 nope 13:40:35 -!- asiekierka has left. 13:40:50 HashSet doesn't really have any methods that are not specified by Set. Well, except clone(). 13:41:12 (But that's from Object.) 13:41:28 public void load() 13:41:31 Loads the configuration file. All errors are thrown away. 13:41:31 save 13:41:31 public boolean save() 13:41:31 Saves the configuration to disk. All errors are clobbered. 13:41:31 sounds safe 13:41:53 What does save() return? 13:42:27 a boolean 13:42:36 I was debating whether to clarify that. 13:42:48 -!- asiekierka has joined. 13:42:48 What does the boolean signify? 13:43:14 hep 13:43:19 whoops, testing out ircii 13:43:19 Presumably success 13:43:25 it's hrrible but not as bad as netcat 13:43:31 Deewiant: But it "clobbers" all the errors. 13:43:53 fizzie: Who knows? 13:44:06 That's the Bukkit YAML configuration processor 13:44:17 I can't help shake the feeling that it's not what everybody uses 13:44:18 That doesn't mean that it won't tell you whether there were any 13:44:56 Deewiant: Well, I guess you could argue so. But to me a it's not a real clobbering if you can still tell there was something that got clobbered. 13:45:45 Deewiant: You are, however, correct. "Returns: true if it was successful" 13:46:09 I guess that's the difference between "throwing away" and "clobbering" the errors. 13:46:36 I don't know, it can be good to leave some kind of evidence of one's clobbering skills 13:46:44 Yes; a bloody mess. 13:46:55 `addquote Deewiant: Well, I guess you could argue so. But to me a it's not a real clobbering if you can still tell there was something that got clobbered. 13:46:56 499) Deewiant: Well, I guess you could argue so. But to me a it's not a real clobbering if you can still tell there was something that got clobbered. 13:48:53 -!- augur has changed nick to augurAFK. 13:52:28 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 13:54:41 -!- Lymee has quit (Ping timeout: 260 seconds). 14:04:27 -!- nooga has joined. 14:04:41 -!- asiekierka has left. 14:07:34 -!- Lymee has joined. 14:32:56 -!- derrik has joined. 14:33:14 -!- copumpkin has joined. 14:42:43 -!- augurAFK has changed nick to augur. 14:47:47 -!- derrik has left. 14:52:22 -!- oerjan has quit (Quit: Later). 14:55:40 hmm, does anyone here know where the documentation for the x86 Linux ABI (that is, the userspace to kernel ABI, not the unstable in-kernel one) is in the kernel source tree? 14:55:58 the main documentation section just says that it's arch-specific, and I can't find it in the arch documentation sections 14:59:21 ais523, there is the header with syscall numbers I guess 14:59:29 Vorpal: there is, and I'm aware of it 14:59:35 ais523, not sure where they document which registers to prod and so on 14:59:40 but syscall numbers doesn't give things like number/type/order of parameters, or even which registers they're passed in 14:59:49 exactly what I just said yeah 14:59:51 and it's hard enough working out the difference between ax and orig_ax 15:00:03 The calling convention is standard C 15:00:15 (the header in question documents it as "this information is only provided for gdb", which isn't massively useful) 15:00:35 Deewiant, uh. Not exactly? It use pushing various registers then doing a SYSCALL iirc 15:01:02 I have the x86-64 register convention here if you care 15:01:11 I care more about x32 15:01:20 even though I'm on a 64-bit system myself 15:01:26 I have x86-64 ABI docs too here. 15:01:37 commercial precompiled Linux binaries tend to be 32-bit, right? 15:01:50 ais523, depends. I seen both. 15:01:57 ais523: yes 15:02:22 (this is for the same program that errors out if a process it creates doesn't have PID 2, btw) 15:02:33 ais523: what are you trying to do? :-P 15:02:44 err, hmm, I was hoping you wouldn't ask that 15:02:57 basically, it's a similar idea to the one behind cryopid (which incidentally doesn't work) 15:02:58 ais523, I think generally you call a function in that high-mapped vdso, which then does syscall, sysenter or interrupt depending on what the processor supports 15:03:03 Distribute a commercial precompiled Linux binary that errors out if a process it creates doesn't have PID 2????? 15:03:06 HOLE IN ONE 15:03:27 -!- CakeProphet has joined. 15:03:28 -!- CakeProphet has quit (Changing host). 15:03:28 -!- CakeProphet has joined. 15:03:31 elliott: nah, the idea is that you operate on an existing binary, and try to run it in a completely reproducible fashion, no matter what else is going on in the system 15:03:35 elliott, good one, pid 2 is always some kernel internal thingy :P 15:03:37 so you can rewind it and start again 15:03:44 Vorpal: not in my case 15:03:49 root 2 0.0 0.0 0 0 ? S Jul07 0:00 [kthreadd] 15:03:51 Vorpal: (this is for the same program that errors out if a process it creates doesn't have PID 2, btw) 15:03:56 it is that on all the computers I checked 15:03:59 when I tested the code, the process always did have PID 2 15:04:04 huh 15:04:06 or think it did, at least 15:04:15 the trick is, that nowadays, Linux PIDs have namespaces 15:04:21 so you just run it in a different namespace to everything else 15:04:22 aaaah 15:04:24 (PID 1 is fakeinit) 15:04:25 ais523, why would it error out if you don't get PID2 15:04:27 I mean... 15:04:29 why 15:04:34 because it means something's gone wrong with the reproducibility 15:04:35 PID 2* 15:04:42 a lot of programs will notice if you randomly change their PID under them 15:04:55 cryopid gets around the problem by, umm, opening /dev/kmem and setting the PID inside the kernel by hand 15:05:02 ais523, wait a second, each time a program starts it get a different PID usually 15:05:06 which is a bad idea for all sorts of reasons, not least that it doesn't check that the PID is already in use 15:05:17 cryopid gets around the problem by, umm, opening /dev/kmem and setting the PID inside the kernel by hand 15:05:18 wtf is cryopid? 15:05:20 amazing 15:05:28 anyway I don't even HAVE a /dev/kmem 15:05:33 Vorpal: jfgi 15:05:34 elliott: I /hope/ it isn't using that code any more, because /dev/kmem no longer exists 15:05:38 just /dev/kcore, which is readonly 15:05:47 ah 15:06:03 it looks like they were working on a workaround, which intercepts syscalls to getpid and ioctl and changes the PID returned 15:06:17 but that seems only really partial, in that a huge number of other things know about PIDs (fcntl, for instance) 15:06:29 (not to mention kill) 15:07:49 ais523, wait, is cryopid a way to freeze a process? Hm 15:08:00 Vorpal: yes, and restart it later 15:08:09 I think such functionality is built in in the linux kernel nowdays 15:08:20 used for stuff like suspend/resume, and many other things 15:08:30 although when I tried to compile it, it didn't compile, when I fixed the compilation (changing the header files included and the names of registers), it spouted errors, and the resulting program segfaulted 15:08:41 ais523, but what would it do if the PID in question is already in use? 15:08:46 and that doesn't let you freeze a process and then restart it on another machine 15:08:55 Vorpal: it'd give it the same PID as the process already in use 15:09:01 as far as I can tell, this is not a good idea 15:09:02 ais523, that sounds dangerous 15:09:17 and the syscall to create processes with duplicate PIDs was removed a while ago (and restricted to process 0 before that, and restricted to root before that) 15:10:01 ais523, there is no PID 0 as far as I can tell? 15:10:10 If CLONE_PID is set, the child process is created with the same process ID as the calling process. This is good for hacking the system, but otherwise of not much use. Since 2.3.21 this flag can be specified only by the system boot process (PID 0). It disappeared in Linux 2.5.16. 15:10:15 I don't think PID 0 appears in /proc 15:10:25 ais523, what is PID 0 supposed to be? Kernel itself? 15:10:26 nor do I think that signalling it would do anything particularly sane 15:10:38 hm 15:10:45 oh, right, you can't signal it 15:10:51 PID 0 is init, isn't it? 15:10:55 if you give an argument of 0 to kill, you kill yourself 15:10:56 and PID 1 is init 15:10:58 Lymee, no that is PID 1 15:11:01 or fakeinit, in my case 15:11:01 Ah. 15:11:11 Wait, then what's 0? 15:11:17 (as far as I can tell, all init actually has to do is spawn a process, then call wait in a loop) 15:11:21 System boot process? 15:11:26 yes, whatever that is 15:11:28 according to that man page, yes 15:11:36 WTF is that? 15:11:42 Something pre-init? 15:11:54 Yes. 15:12:15 from what I remember the system executes /sbin/init (or if an initramfs some other file) which at the end execs the real /sbin/init 15:12:25 so I have no idea what pid 0 could be yeah 15:13:09 hmm, I tried a search engine, it didn't seem to know 15:13:16 I suppose it might be possible to ask in #linux or wherever 15:13:29 ais523, ##linux is largely useless... 15:13:37 I can say that from my own experience 15:13:41 Vorpal: what's it about? 15:13:45 as in, actual topic, not notional topic 15:13:52 ais523, newbies asking simple questions mostly 15:14:01 not at all kernel related 15:14:04 who's a linux? 15:14:15 hmm, is there a channel for the kernel in particular? 15:14:23 ais523, I don't know of one, no 15:14:26 I suppose there's kernelnewbies, which isn't on Freenode 15:14:39 and I've forgotten which server it is on 15:14:40 ais523, hm they have an irc channel? Good website though. 15:14:50 ais523: Observation: Java is a language designed so that the majority of your variables have the exact same name as their type (or some trivial translation, e.g. List -> Ts) 15:14:51 yep, apparently so 15:15:12 ais523: Observation II: If you removed the names from Java and just used the types, that would be one really weird language 15:15:13 elliott, hehe. 15:15:19 elliott: nah, I often use types more than once 15:15:31 ais523: I didn't say it was universal :P 15:15:34 well that's what natural language does all the time 15:15:42 I'm just saying that it's surprisingly ubiquitous in Java. 15:15:45 oklopol: right 15:15:59 T t = getT(); 15:16:00 which is why i've been thinking about having that in a lang 15:16:04 for longs of times 15:16:07 it would be fun if you couldn't have (A,A) because you'd have no way to distinguish the two As 15:16:12 elliott, maybe because java has 1) classes 2) lots of container types? 15:16:13 so you'd have to find another way to construct A 15:16:20 elliott: I think I feel an esolang coming on 15:16:28 like, if you wanted a pair of two integers 15:16:34 you'd have to come up with two underlying representations 15:16:36 so that they have different types 15:16:41 so that you could distinguish them 15:16:45 Or alternately abuse scoping rules. 15:17:00 Phantom_Hoover: nah, what kind of esolang would it be if it was that easy to circumvent? 15:17:01 -!- Taneb has joined. 15:17:05 Hello! 15:17:15 Hello. 15:17:16 haha if you had two types that have essentially the same structure, the compiler would complain that you have two identical types 15:17:16 hi 15:17:25 oklopol: :D 15:17:43 oklopol: "this is bits, and also this is bits, and also everything is bits. try replacing your program with just one bit." 15:17:49 ^ 15:18:05 Countdown has the letters for Linux 15:18:14 elliott, hrrm... for signed integers I can only think of three representations... sign-magnitude, one-complement, two-complement 15:18:24 so you can have at most three signed integers in your program? 15:18:31 whats an (N,N) 15:18:38 Vorpal: one-hot! 15:18:45 ais523, oh true. 15:18:50 although that's a unary variant 15:18:52 yeah 15:18:53 hm 15:18:57 whats an (N,N) 15:19:01 ais523, gray-code for signed? My brain hurts 15:19:13 Vorpal: it wraps round just like 2's-complement does 15:19:20 elliott, I know what a pair is. 15:19:27 ais523, ah 15:19:27 Signed integers can also have Base -2 inegers 15:19:31 *integers 15:19:38 hm does "three-complement" even make sense? 15:19:38 Taneb: good point, that's a reasonable representation 15:19:43 Vorpal: only in base 3 15:19:47 oh right 15:20:03 the terms are generally base-complement and base-minus-one-complement 15:20:10 which are silly names really, they should be more consistent 15:20:15 hmm, I suppose that means it makes sense in base 4 too 15:20:25 ais523, what about one-complement in base 3? 15:21:23 http://xkcd.com/923/ <-- OK, I have to admit, this XKCD is legit funny :P 15:21:38 i think that's the worst one ever 15:22:07 Gregor: I liked it too 15:22:09 elliott, I know what a pair is. 15:22:12 lol 15:22:15 I don't get that XKCD 15:22:24 Strunk and White? 15:22:29 Taneb: o_O 15:22:37 http://en.wikipedia.org/wiki/The_Elements_of_Style 15:22:48 you don't need to know who they are to get the joke, though 15:22:55 ais523: you do 15:22:59 I'm British 15:23:02 ais523: in that, the joke is based around the stickler-ness 15:23:02 I didn't, and I got it 15:23:05 Taneb: so am I 15:23:10 it's because the comic itself makes them out to be sticklers 15:23:17 hmm, true 15:23:19 I thought they were fictional sticklers from it, and it still works 15:23:21 it's still basically reference humour though 15:23:33 ais523: you can't seriously have expected an xkcd without a reference 15:23:44 elliott: xkcd is full of references? 15:23:54 * elliott boggles mildly at ais523. 15:23:58 I still have no idea who Ron Paul 15:23:59 You don't need to know who they are to get the joke ... 15:24:02 is 15:24:24 I mean, you need to understand that it's a prescriptivist English style manual, but everything else you can get from there. 15:24:26 Taneb: he's the president of australia 15:24:29 Taneb: American politician, tends to be the third most popular (and thus way behind the Democratic and Republican candidates for President) 15:24:32 hope this helps 15:24:39 ais523: third most popular??? 15:24:47 elliott: out of the people running, I mean 15:24:50 (and you realise Ron Paul is Republican?) 15:24:54 yep 15:25:10 most people don't bother to run against their own party when they lose the primary 15:25:25 I'm incredibly sceptical of any statistics saying that Ron Paul is the third-most popular candidate 15:25:43 Ron Paul is on the republican /ticket/, he's a libertarian. 15:25:45 Unless the sample is "reddit just before Obama looked like he was going to win". 15:25:50 well, third = statistical fluctuation in the US 15:26:12 I didn't actually know what his policies were, because his fans never seem to say 15:26:47 actually, that's true of all sides in American politics, I think 15:26:53 both the really big ones and the really little ones 15:27:00 their favourite politicians are right, regardless of what they believe 15:27:16 i liked http://xkcd.com/920/ way more than that penis joke 15:27:35 Java really needs shorthand for "if (x instanceof T) { T y = (T) x; ... } else { ... }" 15:27:36 There's a penis joke in that? 15:27:39 don't recall seeing anyone make that point 15:27:43 in a comic 15:27:46 therefore it is funny 15:27:51 "cast (x as T y) { ... } else { ... }", say 15:28:03 Taneb: well penis enough. 15:28:18 Taneb: as you can see, we are always on-topic. 15:28:21 hmm, 920 is an interesting observation that isn't particularly funny, just like most of XKCD 15:28:22 oklopol: But is anything ever really penis enough? 15:28:29 elliott, is java statically or dynamically typed? Or some mix? 15:28:36 ais523: It isn't particularly interesting either. 15:28:37 reading XKCD for the observations can be interesting, if not funny 15:28:40 ais523: interesting observation = definition of funny 15:28:48 Vorpal, statically. 15:28:54 Vorpal: ... static. Having casts does not make you dynamically typed :P 15:28:55 I wonder if I could get Eclipse to automatically add imports when there's only one option... rather than making me tell it to 15:29:04 Gregor, true. 15:29:07 Man, why am I even coding Java. 15:29:09 Vorpal: Statically. 15:29:11 elliott: "try { T y = (T) x; ...; } catch (ClassCastException) { ... }" :p 15:29:16 fizzie: Yeeeeeeeeeeees. 15:29:24 fizzie: That doesn't handle NullPointerExceptions :) 15:29:24 oklopol: did you know that children of fighter pilots of a particular nationality (was it Danish?) are 80% girls? 15:29:34 fizzie: And also, catches ClassCastExceptions in the "...". 15:29:36 * ais523 waits for hilarious laughter 15:29:37 elliott: catch (Throwable) { ... } 15:29:43 ais523: LMAO 15:29:48 fizzie: Perfect. 15:29:58 -!- cheater_ has quit (Ping timeout: 255 seconds). 15:30:11 elliott: ON ERROR RESUME NEXT 15:30:13 I, umm, invoke Sturgeon's Law 15:30:24 -!- cheater_ has joined. 15:31:59 I invoke Godwin's 15:32:01 How is this still less than three hundred lines :-/ 15:32:04 And Poe's 15:32:07 ais523: okay interesting observation + puzzle 15:32:24 which one was Poe's again? 15:32:26 i suppose xkcd usually lacks the latter, just like your joke. 15:33:01 wait, that's the one I thought was Sturgeon's Law 15:33:05 Poe's was about parodies 15:33:12 * ais523 looks up sturgeon's law 15:33:16 ah, aha 15:33:19 wow, that was relevant by mistake 15:34:08 so here's the joke version: "if i had to fuck a random person in the ass i'd make sure the probability measure is heavy on children of danish fighter pilots!" 15:34:59 that is still not funny 15:35:05 except in banal bizarreness 15:35:07 erm 15:35:16 actually it's very funny, although not because i made it a puzzle 15:35:37 but because of the "accidental" pedophilia 15:35:41 I am laughing in real life right now, but not because what you said was actually funny 15:35:49 more at the conversation in general 15:35:59 Because a ninja is tickling you? 15:36:08 I don't think so 15:36:18 although if a ninja were involved, I'm not convinced I'd be able to tell 15:36:43 -!- cheater_ has quit (Ping timeout: 255 seconds). 15:36:54 so here's the joke version: "if i had to fuck a random person in the ass i'd make sure the probability measure is heavy on children of danish fighter pilots!" 15:36:54 that is still not funny 15:36:56 i dunno, I'm laughing 15:36:59 although i'm not sure why... 15:37:02 elliott: ditto 15:37:10 i thought it was some of my best work this week 15:37:15 I don't think it's because of the "joke", which isn't funny, but because of the conversation as a whole, which is 15:37:19 perhaps even better than my smileys yesterday 15:37:26 oklopol: you should do a standup show, thanks 15:37:36 Explaining recursion is tricky... 15:37:44 Taneb: try explaining recursion 15:37:58 hey! i thought really hard about algorithmically jokifying that and still adding a double entendre 15:38:04 i mean worked 15:38:12 argh 15:38:19 i failed at sentence. 15:38:21 Huh 15:38:22 let me retry 15:38:38 hey! i had to think really hard with my brain to manage to algorithmically jokify that and still adding a double entendre 15:38:39 *add 15:38:46 Turned out he got recursion, he just didn't get the return statement 15:39:19 wanna see me recurse? 15:39:21 fuck 15:39:21 fuck 15:39:26 Taneb: wait, do you teach programming too? 15:39:31 oklopol: stop masturbating 15:39:39 elliott: my standup comedy show is here 15:39:41 Not professionaly 15:39:44 that was my first joke 15:40:01 If I was professional, I wouldn't be on IRC at the same time 15:40:07 and the second was, umm, you realising that the first was self-embarassing? 15:40:07 this is too ridiculous 15:40:17 second line, that is, not second joke 15:40:34 ais523: ? 15:40:36 `addquote Turned out he got recursion, he just didn't get the return statement 15:40:37 500) Turned out he got recursion, he just didn't get the return statement 15:40:38 you did get my fuck joke right 15:40:38 elliott: it's an improvement over /parting to protect me from a lethal facepalm 15:41:00 which I did recently (it involved the usual suspect) 15:41:01 ais523: I HAVE ABSOLUTELY NO IDEA ABOUT WHICH EVENT YOU COULD POSSIBLY BE REFERRING TO. 15:41:11 elliott: good, don't read recent logs, I doubt you'll survive 15:41:17 SEE I CURSED BY SAYING FUCK AND THEN I SAID FUCK AGAIN SO I *RE*CURSED 15:41:18 ais523: I DEFINITELY DIDN'T 15:41:19 is this channel usually so confusing btw, or am i just tired 15:41:31 oklopol: oh, I was thinking of an entirely different joke 15:41:32 * oklopol explains just in case 15:41:43 elliott: it isn't, it's more confusing than usual today 15:41:49 ais523: well i'm sure mine was better 15:41:58 15:45:05: No nasty sounds for a while now. Going to turn off and on and see if the numbers get worse. 15:41:59 wow, i actually missed this line 15:42:03 `addquote No nasty sounds for a while now. Going to turn off and on and see if the numbers get worse. 15:42:04 501) No nasty sounds for a while now. Going to turn off and on and see if the numbers get worse. 15:42:04 elliott: do like me and just read your own lines? 15:42:06 gotta curate 15:42:16 oklopol: i dunno what you said but it was probably stupid 15:43:07 what did the child of a danish pilot say to his dad? 15:43:14 he said why do i have so many sisters? 15:43:28 i'm on fire :O 15:43:35 gah, if I've started a meme and got the wrong country, I'll be annoyed 15:43:50 ^ he also said that because his dad was not a very good pilot 15:43:51 "Kan jeg have en pony?" 15:43:53 also, I notice you implicitly assumed the fighter pilot was male 15:44:15 ais523: i did? 15:44:27 err, no you didn't 15:44:33 i just assumed that's something you ask your own gender parent 15:44:51 I failed to parse the sentence as it was bizarre enough as it is 15:45:23 well not everyone can be a child of a danish pilot in linguistics. 15:46:03 Right, I've succeeded in explaining the return function 15:46:17 return isn't a function 15:46:21 -!- nooga has quit (Ping timeout: 252 seconds). 15:46:23 Statement, then 15:46:24 nor can it be meaningfully written as one, except in INTERCAL 15:46:31 (which allows you to return from functions you aren't in) 15:46:40 or asm, I suppose 15:46:44 or it's probably possible in Perl too 15:47:16 because all sorts of absurd things are possible in Perl 15:47:29 GCC __builtin_return() is technically called a "function". 15:47:44 BUT IS IT A MATHEMATICAL FUNCTION?!?!?!?!?!? 15:47:59 wait, there's a __builtin_return()? 15:48:05 that doesn't seem to fit the scheme of the other builtins 15:48:13 Yes. It returns a __builtin_apply-constructed value from the containing function. 15:48:21 See the "constructing calls" section of the manual. 15:49:05 "Using the built-in functions described below, you can record the arguments a function received, and call another function with the same arguments, without knowing the number or types of the arguments." 15:49:13 -!- cheater_ has joined. 15:49:29 ... "However, these built-in functions may interact badly with some sophisticated features or other extensions of the language. It is, therefore, not recommended to use them outside very simple functions acting as mere forwarders for their arguments." 15:49:47 I can't think of an application offhand 15:50:22 Given a generic function pointer, it may be possible to construct another function that, say, logs something to a log and then "forwards" the call. 15:50:32 Without knowing the type of the function. 15:50:33 hmm, that was an unintentional pun 15:51:18 you mean your application thingie 15:51:43 You could also use __builtin_return_address(1) to get the address to where your latest caller should return, but there's no portable way of actually doing a multi-level return there. 15:52:34 oklopol: thanks for the correction 15:52:59 hey i have a good one: why were the child of a pilot and the danish child both women? 15:53:06 fizzie: can't you get your own return address, then overwrite it? 15:53:36 ais523: Not portably, I don't think; and in any case that'd probably leave the stack somewhat messed up, depending on the calling convention of course. 15:53:39 because they were the same child :D 15:54:01 fizzie: good point 15:54:10 it'd return correctly, but not set up the stack for the next return 15:54:27 ais523: i think you have discovered the funniest fact in the world 15:55:24 There's another built-in to get frame pointers, and if you know the calling convention it might be possible to do some sort of manual stack unwinding. Though it's not really "C" at that point any more. 15:55:57 oh, I remember why I know those builtins 15:56:02 it's because of gcc-bf, I had to actually implement them 15:56:25 I was looking into a BF backend for llvm, but it makes all sorts of frustrating assumptions 15:56:51 like all its primitive operations either existing on the system it targets, or being implemented in terms of other llvm primitives that do exist 15:57:36 how unfair 15:58:44 gcc is better, in that it doesn't deliberately make any assumptions that contradict the way that BF does 15:58:54 although it effectively does as the codepaths for, say, 8-bit moves not existing don't work properly 16:00:27 :D 16:03:09 ais523: Manipulating the return stack could let you define a RETURN "function" (well, word), but again not portably (you're not supposed to touch return stack values you didn't put there) and it wouldn't work properly when called from inside another control-flow construct that used the return stack. 16:03:24 Er, I forgot to mention "in FORTH" in there anywhere. 16:03:42 you do functions by hand in FORTH, don't you? 16:03:49 hmm, I suppose that would let you have two independent call stacks 16:04:00 and that might even be useful, perhaps? I'm not sure 16:05:31 Many cooperative-multitasking systems in FORTHs are based on having multiple sets of control-flow/data stacks (for each stack). 16:05:38 -!- foocraft has joined. 16:06:24 Most of the control-flow stack manipulations are not portable in the ANS Forth sense. 16:06:37 "The control-flow stack may, but need not, physically exist in an implementation. If it does exist, it may be, but need not be, implemented using the data stack. The format of the control-flow stack is implementation defined." 16:07:23 Portably you can mostly just use it for storing temporary data values when not crossing control-flow-structure nesting depth. 16:17:21 Here's an on-topic idea: Queue data structure with fast track passes 16:18:41 ben ate taneb 16:18:52 He did? 16:19:22 i saw: boob was i :( 16:23:29 EU? EU queue! 16:24:03 i apologize the cheating but that was just too good to pass 16:24:06 *for 16:24:07 oklopol: that last one is execllent 16:24:12 *excellent 16:24:22 yeah 16:24:44 although as a general rule i don't use proper names or acronyms because it makes palindroming kind of trivial 16:25:13 at least in finnish, i haven't done much in english since it seems pointless in languages where reversed text isn't pronounced reversed 16:26:27 -!- elliott has quit (Remote host closed the connection). 16:26:40 yay! 16:26:52 -!- elliott has joined. 16:27:11 [17:25] <-- elliott has left this server (Remote host closed the connection). [17:26] yay! [17:26] --> elliott has joined this channel (~elliott@unaffiliated/elliott). 16:27:15 :( 16:28:41 so, ol' git felt a rat left igloos 16:28:45 Lion oil! 16:29:11 also english has way too much of that gh and sh stuff 16:29:19 Taneb, the oil of champions! 16:29:31 i mean "the" is probably just there to annoy palindromists 16:29:54 oops, i eh: "the" is poo. 16:30:08 luckily everything is a verb in english 16:30:26 Everything everythings in English. 16:32:04 see palindrome 'n' an emo r'd nil apees. 16:32:11 (an apee is someone being aped) 16:32:17 argh 16:32:23 see: palindrome 'n' an emo r'd nil apees. 16:32:36 r'ing is when you... well whatever 16:32:41 Bye 16:32:44 this language is too hard 16:34:43 seven a mom. o? hey bye homo man! eves :) 16:35:14 i have no idea what "seven a mom" was meant to imply 16:35:31 but the rest is okay i suppose 16:35:36 why won't anyone play with me :( 16:35:58 maybe we could do math instead? 16:36:27 -!- Taneb has quit (Quit: Taneb). 16:36:30 i generalized my characterization as follows: actually essentially the same thing characterizes all products of CA such that G^n = G for some n!=1 16:36:39 and on arbitrary sofic shifts if i'm not mistaken 16:36:40 -!- Taneb has joined. 16:36:46 Hello 16:37:11 sofic shifts of course being the CA images of SFT's which are subshifts obtained by using a finite set of forbidden blocks 16:37:33 hi Taneb, do you wanna do palindromes or math? 16:37:47 I'm going to do math. 16:37:50 ! 16:37:57 I'm no good at palindromes 16:38:09 me neither, as recently proven 16:38:15 Better than me 16:38:32 eh, "seven a mom" 16:38:38 you would never say "seven a mom" 16:38:56 Not personally. 16:39:04 well there you go 16:39:05 I would say "seven a mum" 16:39:08 British 16:39:24 Heck, I may even say "seven a mam" 'cos I'm Northern 16:39:42 well yeah but you are not a homu man, you are a homo man 16:40:01 so seven a mum would make no sense 16:40:21 but maybe i could "home u man"! do you ever say "muem"? 16:40:34 No? 16:40:43 ok nm then 16:40:54 "mu, emphasis"? 16:41:39 oklopol: Eat, emit! Ho, bomb-mob. Oh, time tea? 16:42:03 Taneb: thank you, now i just need to fix the small hpm problem 16:42:13 fizzie: nice, can you also make a palindrome? 16:42:16 -!- Slereah_ has quit (Ping timeout: 246 seconds). 16:42:50 Oh dear; read ho! 16:42:57 also i'm not really following the story :D 16:43:05 Taneb: you are a natural 16:43:27 "lion oil" was just awesome 16:44:07 E, esoteric, ire to see. 16:44:19 :D 16:44:33 So, is there an annoying esoteric programming language called "E"? 16:44:35 ^ also a palindrome 16:44:45 Taneb: there certainly is a language called that 16:45:37 But it's conventionaaaaal! 16:47:24 Do now that it... naw, it! I want it! Ah, two nod. 16:47:50 yay 16:47:51 wouter has an e i think 16:48:00 the capability-based E is hardly conventional, though 16:48:08 fizzie: and no grammatical errors either! 16:48:13 http://strlen.com/amiga-e ;; Wouter's is rather more conventional :D 16:49:06 dim u, he be humid! 16:50:08 traditional? a no-IT iDart! 16:50:34 sry couldn't make conventional work 16:51:09 Flow ebb Malbolge, eg., lob lamb be wolf 16:51:39 :D 16:52:13 what's eg tho 16:52:25 eg. means for example 16:53:15 right 16:53:18 Isn't that "e.g." CONVENTIONALLY? 16:53:21 yeah 16:53:28 Probably 16:53:49 i thought you spelled it wrong so i checked it, and the dictionary disagreed with your spelling so i decided eg actually did not mean for example 16:54:29 so like 16:55:32 i suppose "flow ebb" is like you telling malbolge to be easier to write? 16:55:47 Yep. 16:55:55 Or to understand, like the tides 16:55:56 but then you say "stop being a lamb, be a wolf instead", are sheep hard to write? 16:56:27 Lamb has a silent lette 16:56:30 r 16:56:34 :D 16:56:39 okay 16:56:40 Sheep is the same in the plural 16:56:42 you are a fucking genius 16:57:00 So I'm told 16:57:01 i don't think i'm ever making another palindrome 16:58:02 SS eh? Come on, no emo chess. 16:58:26 okay i'm not telling you what my characterization is 16:58:27 SS eh being my lack of understanding is like a ship. 16:58:30 you'd just go like lolol triv 16:58:54 I have no idea what's going on 16:58:59 I'm just writing palindromes 16:59:46 i thought you meant "oh you're a member of the SS" and then compared killing jews to emo chess 17:00:06 they have many similarities 17:00:14 That works too 17:00:33 I just want to say that the Nazis killed more people than Jews 17:01:28 Just everyone only remembers the jews 17:01:37 Yeah, it was mainly Jews. 17:01:46 And 1 clown. 17:02:10 poor clown 17:02:13 -!- cheater_ has quit (Ping timeout: 255 seconds). 17:02:17 Phantom_Hoover: nothing wrong with a bit of emo chess humor, elliott does it all the time as well. 17:02:17 That was the communists 17:02:27 Who killed that clowwn 17:03:34 Bye 17:03:52 i'm not giving you another one 17:04:28 Phantom_Hoover: The clown was gay. 17:04:47 Gregor, also a gypsy Jehova's witness? 17:05:03 That must have been one complicated badge they made him wear ... 17:08:28 -!- Taneb has quit (Ping timeout: 276 seconds). 17:08:51 so this was fun 17:08:53 what's next? 17:09:41 Blackjack and hookers. 17:09:49 Gregor, WP says they just stuck all the badges one below the other. 17:10:05 Phantom_Hoover: Oh, I thought there were cases where they layered :( 17:10:39 Gregor, yeah, Jews had the coloured inverted triangle over a yellow one. 17:10:48 Ahh 17:11:30 So I guess it'd be a purple triangle above a pink triangle above a brown triangle. 17:12:30 i suppose someone with that many triangles stacked on top of each other is certainly a "-gon"er 17:12:55 was that a pun? 17:13:29 yes 17:13:35 a horrible horrible pun 17:13:36 ok 17:13:45 it's the theme of the day 17:13:53 how unusual 17:14:49 -!- cheater_ has joined. 17:20:34 -!- cheater__ has joined. 17:21:53 wow i really need to sleep 17:21:54 -> 17:23:03 -!- cheater_ has quit (Ping timeout: 250 seconds). 17:23:28 -!- foocraft has quit (Quit: if you're going....to san. fran. cisco!!!). 17:34:44 -!- Nisstyre has quit (Remote host closed the connection). 17:37:35 -!- zzo38 has joined. 17:39:43 -!- Nisstyre has joined. 17:40:20 -!- Taneb has joined. 17:40:35 Hello! 18:00:16 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds). 18:00:51 Hello? 18:02:06 hello 18:07:19 -!- monqy has joined. 18:13:42 -!- nooga has joined. 18:29:47 -!- Taneb has left. 18:30:52 -!- cheater__ has quit (Ping timeout: 255 seconds). 18:35:33 -!- ais523 has quit (Remote host closed the connection). 18:41:55 -!- monqy_ has joined. 18:42:42 -!- monqy has quit (Disconnected by services). 18:42:45 -!- monqy_ has changed nick to monqy. 18:44:00 -!- cheater__ has joined. 18:47:56 -!- _foocraft has quit (Quit: So long, and thanks for all the fish!). 18:48:23 hello. 18:48:30 hello 18:50:40 -!- nooga has quit (Ping timeout: 255 seconds). 19:11:42 lulululul Star Trek: TAS is so cartoonish X-D 19:12:27 it is, after all, the animated series 19:13:18 That doesn't mean it has to be cartoonish per se :P 19:15:04 -!- Phantom_Hoover has joined. 19:17:24 it doesn't? is cartoon a specific category of animation? 19:17:49 cartoonISH 19:18:07 elliott: well, if it is a cartoon, of course it's cartoonish 19:18:24 `addquote * Sgeo is risking massive forest fires The bacon is worth it 19:18:25 502) * Sgeo is risking massive forest fires The bacon is worth it 19:18:45 `quote 501 19:18:46 501) No nasty sounds for a while now. Going to turn off and on and see if the numbers get worse. 19:19:13 sgeo confuses me 19:19:31 `quote 500 19:19:33 500) Turned out he got recursion, he just didn't get the return statement 19:19:37 `quote 499 19:19:39 499) Deewiant: Well, I guess you could argue so. But to me a it's not a real clobbering if you can still tell there was something that got clobbered. 19:19:47 `quote 498 19:19:49 498) elliott: You have become the very thing you fought for! 19:19:54 `quote 497 19:19:56 497) elliott: i have yet to demonstrate that the sml community has less productive power than the real chunk of meat. 19:20:30 ok, caught up with the added quotes now, carry on 19:20:52 :D 19:23:46 -!- pikhq has joined. 19:24:26 -!- pikhq_ has quit (Ping timeout: 260 seconds). 19:29:49 -!- oerjan has joined. 19:34:34 -!- shachaf has joined. 19:39:16 -!- cheater__ has quit (Ping timeout: 255 seconds). 19:39:59 I invoke Godwin's 19:40:08 i say someone fit in here rather quickly 19:41:35 Godwin's what? His theremin playing cat? 19:42:22 law. 19:42:43 oh, that 19:43:11 i take it you did nazi it coming. 19:44:23 ais523: I HAVE ABSOLUTELY NO IDEA ABOUT WHICH EVENT YOU COULD POSSIBLY BE REFERRING TO. 19:44:40 which is presumably why you absolutely didn't lampshade it in privmsg 19:45:30 Eh? 19:45:38 Oh :P 19:45:54 How do you state an actual negative with these towers 19:45:54 NOTHING, ABSOLUTELY NOTHING 19:46:01 towers? 19:51:37 -!- cheater__ has joined. 19:52:58 Heck, I may even say "seven a mam" 'cos I'm Northern 19:53:16 by some freak coincidence taneb is elliott's next door neighbor 19:58:51 hehe, read "freak accident" there ... something like a teleporter malfunction that moved his entire home and made him elliott's neighbor 19:59:16 well i didn't specify _how_ freaky 20:00:42 well, *coincidence* would be "... it just so happens that taneb's selected target coordinates made him elliott's neighbor" 20:01:07 -!- kwertii has joined. 20:01:10 I think freak accidents are generally more freaky than freak coincidences 20:09:34 -!- calamari has joined. 20:31:46 -!- asiekierkaDS has joined. 20:31:51 hi 20:33:05 Hi! Welcome! 20:33:20 Auf Wiedersehen! Goodbye! 20:33:27 D: 20:33:42 bye bye, oerjan! 20:33:44 wait you mean we are _not_ doing sound of music? 20:34:20 well, I think we got the lyrics wrong, also I don't know the lyrics 21:03:31 -!- Taneb has joined. 21:03:41 Hello! 21:04:13 that's what they all say 21:05:44 oerjan: no, the last one just said hi 21:08:03 that's just the polish version duh 21:08:28 no, the polish version is an indecipherable sequence of consonants 21:09:23 -!- boily has quit (Ping timeout: 252 seconds). 21:09:39 some combination of sz, cz, rz, s, c, ś, ź and/or ć, iirc 21:10:12 hm... 21:10:29 `translatefromto en pl Hi 21:10:31 No output. 21:10:34 `translatefromto en pl Hello 21:10:36 No output. 21:10:48 `translatefromto en no Does this work at all any more? 21:10:50 No output. 21:10:57 apparently not. 21:12:24 `translate Fru Ibsens ripsbusker og andre buskvekster 21:12:26 No output. 21:13:30 -!- azaq23 has quit (Quit: Leaving.). 21:14:30 oerjan: why the sudden interest in mrs ibsen's bush? 21:16:47 i am merely investigating regarding the possibility of translating norwegian tongue-twisters 21:17:33 can't hold a candle to sex laxar i en laxask 21:17:49 -!- asiekierkaDS has quit (Ping timeout: 255 seconds). 21:18:15 nobody asked for lax sex 21:19:24 google translate renders that as "six salmon in a laxask" 21:19:51 btw, I love how "wrong" is pronounced "fail" in norwegian 21:21:48 What is a laxask? 21:21:56 -!- MigoMipo has joined. 21:22:01 -!- MigoMipo has quit (Read error: Connection reset by peer). 21:22:14 To power cycle your modem: 21:22:14 1. Shut down your computer 21:22:14 Comcast: So much fail :P 21:22:25 apparently, a box for keeping salmon in 21:22:30 -!- MigoMipo has joined. 21:22:55 seks laks i en lakseske 21:23:04 Someone showed me some article including mathematics and a code for recognizing shapes by converting the outline to a graph that stays the same regardless of orientation or scale. 21:23:12 (no I don't know if anyone in sweden actually has boxes like that) 21:24:04 -!- MigoMipo has quit (Read error: Connection reset by peer). 21:24:41 -!- MigoMipo has joined. 21:25:02 olsner: it's probably popular among seasick sailors and their nurses 21:25:07 My brother's character is doppelganger but have not decided the class 21:25:34 Someone showed me some article including mathematics and a code for recognizing shapes by converting the outline to a graph that stays the same regardless of orientation or scale. 21:25:54 This is presumably the layman's definition of graph, not an actual graph graph. 21:25:59 oerjan: probably... I don't know any nurses or sailors though 21:26:41 Phantom_Hoover: Yes. 21:26:48 -!- elliott has quit (Read error: Connection reset by peer). 21:26:56 That is correct. 21:26:59 -!- elliott has joined. 21:28:25 so, "converting the outline into a pretty picture" is what it means? 21:29:17 This is presumably the layman's definition of graph, not an actual graph graph. 21:29:19 whats the laymans 21:29:20 And then moving it about a b— wait, you can't have a graph that's the same regardless of orientation or scale. 21:29:31 elliott, a drawing of y=f(x). 21:29:59 oh 21:30:08 i would presume it means a graph graph 21:30:23 Graphs look the same regardless of orientation and scale by definition. 21:30:39 Orientation and scale don't even make sense with regards to them. 21:44:20 BILLING SUMMARY 21:44:20 --------------- 21:44:20 PRIOR BALANCE: $0.00 21:44:20 [2011-06-25] $-10.67 = Prorated refund for rutian - 256 slice 21:44:20 --------------- 21:44:21 NEW BALANCE: $-10.67 21:44:27 rip 21:45:44 -!- MigoMipo has quit (Read error: Connection reset by peer). 21:49:36 If self-modifying code is allowed, you can possibly store some variables in the place of the immediate (or indirect, for pointer variables) operand to instructions, or boolean variables changing between JMP JZ JNZ if it is a condition with multiple parts. Can any platform-independent compiler do this? 21:53:38 -!- calamari has quit (Quit: Leaving). 22:06:09 http://www.maa.org/devlin/devlin_06_04.html 22:06:18 "For other examples of the appearance of the Golden Ratio in Nature, the growth of the Nautilus shell is governed by the Golden Ratio," 22:06:30 A piece on abuse of the golden ratio abuses the golden ratio. 22:06:40 (Nautilus shells are logarithmic, but not golden.) 22:07:35 a missed golden opportunity 22:08:28 Hello 22:08:54 Hello. 22:12:47 I've just had an awful idea for an esoteric programming language 22:13:01 not uncommon 22:13:37 Taneb: What idea? 22:14:14 The program is a lambda calculus thing 22:14:20 Just one. 22:14:31 It is then run as a church numeral 22:14:53 And the result is taken as a base 256 number and converted into ASCII and outputted 22:15:04 If any of that makes sense 22:15:27 well since that's how a part of lazy-k already works iirc... 22:15:27 Taneb: see lazy k 22:16:34 Not quite what I was going for 22:16:53 well, lazy k + abstraction eliminator :P 22:17:01 to go from lambda-calculus → SKI 22:17:12 I have no idea what SKI is about 22:18:03 O_O 22:18:07 shocking! 22:18:14 im shocked 22:19:49 Taneb: just predefined combinators: 22:19:57 S = \x.\y.\z.(xz)(yz) 22:19:59 K = \x.\y.x 22:20:02 I = \x.x 22:20:04 where \ is lambda 22:20:09 and you just compose your programs out of those + application 22:20:13 no lambda abstractions 22:20:40 (I is equivalent to SKK and SKS, and so is technically superfluous) (note: application is left associative, i.e. SKK = (SK)K) 22:23:05 So, it's equivalent to Lambda Calculus? 22:23:44 yes, but then so are brainfuck, and underload :) 22:23:51 how do i create a var params for function f (params) { g1(key); g2(params[key]) } // Dear #esotericers, I challenge you to figure out wtf this means. 22:23:56 there's a simpler way to specify reduction of SKI terms, but that's the definition in terms of the lambda calculus 22:24:13 javascript? 22:24:18 Gregor: They want variadic keyword arguments. 22:24:27 Gregor: i.e. they want to be able to call f(a:b, c:d) 22:24:30 and iterate through params 22:24:32 as {a:b,c:d} 22:24:35 I _think_. 22:24:53 Gregor: a la python's TWO ASTERISKS kwargs 22:24:59 ** 22:25:10 tasterisks 22:25:12 disasterisks 22:25:17 oh, there's my new band name 22:25:32 !unlambda ` ```sii ```sii ``s``s`ks``s`kkii .* i 22:25:43 eek 22:26:05 elliott: TIME TO FIND OUT 22:26:16 lifechamp: On behalf of the rest of ##javascript , may I say "Whaaaaaaaaaaaaaaa?" 22:26:43 a good answer 22:26:45 oh hm 22:26:50 !unlambda `` ```sii ```sii ``s``s`ks``s`kkii .* i 22:26:51 ​**************************************************************************************************************************************************************************************************************************************************************** 22:27:27 -!- GuestIceKovu has joined. 22:27:41 hi guesticekovu 22:29:17 Taneb: unlambda is the first and most famous SKI esolang 22:29:52 Okay 22:29:59 but the worst :( 22:30:06 it's not lazy though. in fact it has continuations and callcc 22:30:09 it's ok i forgive madore 22:32:08 it was probably also the first _functional_ esolang. 22:34:33 elliott, why, is his erotic elf fanfiction just too good to hate him? 22:34:43 wat 22:34:55 *erotic gay elf fanfiction 22:35:00 Erm, you were the one who found it. 22:35:14 no i wasn't? 22:35:22 XD 22:35:33 DON'T DENY IT 22:35:33 i forget who mentioned it but you can hardly "find" something linked directly on someone's webpage :P 22:35:39 anyway this is inane you're frightening the guests. 22:35:44 It is actually the reason you got into esolangs. 22:35:52 Yes totally. 22:35:59 PH has everything figured out. 22:36:05 elliott: um sure you can, when it's something other than you were looking for... 22:36:12 You were looking for gay erotic elf fanfiction and you found out that this guy Madore also had this esolang thing. 22:36:16 MYSTERY SOLVED 22:36:23 `quote gay vampire 22:36:24 401) [on Sgeo's karaoke] That is the thing that made me into a gay vampire. 22:36:26 I rest my case. 22:38:01 well madore is a creep anyway, never answered any of my emails. 22:39:00 :D 22:42:42 morning 22:44:33 Good evening, my further East than me addresser 22:56:36 -!- elliott has quit (Ping timeout: 260 seconds). 23:02:21 -!- Taneb has quit (Remote host closed the connection). 23:11:30 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 23:23:58 -!- GuestIceKovu has changed nick to Slereah. 23:24:18 O_o 23:32:25 I'm just imagining this nondescript guy in the corner of a bar suddenly throwing off his cloak and exclaiming "it is I, Slereah!" 23:36:22 -!- copumpkin has joined. 23:40:19 * oerjan is now reminded of 'allo 'allo 23:40:52 except leclerc never managed to look nondescript 23:54:55 -!- kwertii has quit (Quit: bye). 23:55:19 * Phantom_Hoover → sleep 23:55:20 -!- Phantom_Hoover has quit (Quit: Leaving). 23:57:17 " by some freak coincidence taneb is elliott's next door neighbor" <<< a neighbor of mine was on #proglangdesign some years ago, a channel of about 6 people at that time 23:57:39 not next door neighbor but less than 100m 23:59:05 " wait you mean we are _not_ doing sound of music?" <<< one more family guy joke is ruined for me by changing it from randomness to reference :(