←2017-05-03 2017-05-04 2017-05-05→ ↑2017 ↑all
00:00:08 <ais523> so + 2 : 3 4 → +2 : 3 4 → +2 +2 3 4 → (give 7 and then 4 to the operator below)
00:00:10 <Jafet> because you don't know which numbers correspond to functions or arguments
00:00:30 <ais523> that seems to be distinctly different from the stack generalisation of postfix
00:00:44 <ais523> + 2 : 3 is equivalent to 7
00:00:51 <ais523> and that does seem to make some amount of logic when you think about it
00:01:29 <wob_jonas> hmm
00:02:17 <ais523> in postfix notation, the operands are all nilary, the operators therefore have to have higher arity (some can be unary but at least one must be binary)
00:02:42 <ais523> in prefix notation, with nilary operators, the operands therefore become polyary, consuming a number of operators based on how many operands those operators are missing
00:03:02 <wob_jonas> has anyone tried to write artistic obfuscated code in terminfo definition, which is a non-eso language, especially the part with the percent escapes stack language that terminfo uses to turn a command and list of arguments to a term-specific output string?
00:03:17 <wob_jonas> I'm just reminded to this because it's a stack-based language
00:03:22 <wob_jonas> well, sort of
00:03:29 <wob_jonas> it's a simple general purpose language with a stack too
00:03:44 <wob_jonas> definitely stack-based because many commands take arguments from the stack
00:03:58 <wob_jonas> in the sense of postscript or forth
00:06:48 <wob_jonas> ais523: isn't that sort an APL-like syntax, where tokens can denote values, functions, or operators (which are high-precedence functions), functions know how many arguments they take and those arguments are values and written after the function,
00:07:17 <wob_jonas> but operators also know how many arguments they take and those arguments are values or functions and you write those arguments before the operator,
00:07:29 <wob_jonas> and you need brackets only if an operator takes an argument that is a function call?
00:07:36 <ais523> I'm not sure; I thought APL was more rigid parsing-wise, though
00:08:01 <wob_jonas> because that's a pretty reasonable syntax (actual APL syntax is more complicated, because it has both functions that take arguments on left and right side, and operators that take arguments on left and right side, but ignore that part now)
00:08:16 <wob_jonas> perhaps forget the APL part for a moment, and look at only the description I said
00:09:27 <wob_jonas> this is sort of the general syntax I want, only I want many levels of precedence, not only three
00:09:49 <ais523> ^ul ()(a(:)~*^:^):^
00:09:50 <fungot> ...out of time!
00:09:53 <ais523> hmm
00:10:14 <ais523> ^ul (x)(a(:)~*^:^):^
00:10:15 <fungot> ...out of time!
00:10:33 <ais523> ^ul (x)(a(:S:)~*^:^):^
00:10:34 <fungot> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...too much output!
00:11:45 <ais523> ^ul (x)(a(::::)~*^:^):^
00:11:46 <fungot> ...out of time!
00:11:50 <ais523> ^ul (x)(a(::::::::)~*^:^):^
00:11:51 <fungot> ...out of time!
00:11:54 <ais523> ^ul (x)(a(::::::::::::)~*^:^):^
00:11:55 <fungot> ...too much stack!
00:11:57 <ais523> there we go
00:12:07 <ais523> wob_jonas: the point here is that you can write an Underload program that leaks stack
00:12:21 <ais523> which is something that's nonsensical in an APL-alike
00:12:29 <ais523> the reason is that you can manpulate the stack directly
00:12:47 <wob_jonas> ais523: yeah
00:14:05 <wob_jonas> J has rules so that even though you can't determine the parse tree of an expression in advance, in every reduction step you either get an error or the number of symbols on the stack decreases, so you can't grow the stack up
00:15:51 -!- DHeadshot has quit (Ping timeout: 260 seconds).
00:17:12 <wob_jonas> ais523: there's the C preprocessor which lets you get more tokens from fewer tokens and blow up an expression that way
00:17:37 <wob_jonas> people do crazy token string manipulation tricks with it
00:17:47 <ais523> the C preprocessor has no way to write a loop other than self-inclusion, though
00:18:22 <wob_jonas> ais523: not an infinite loop maybe, but it lets you write very long non-infinite loops easily
00:18:34 <wob_jonas> well, "easily" in an eso sense at least
00:18:37 <wob_jonas> it's been done
00:19:02 <wob_jonas> you know those preprocessor manipulation things in the boost preprocessor library and the P99 library, right?
00:20:00 <wob_jonas> and macros can expand to commas or unbalanced parenthesis, which makes the whole thing appear similar to stack manipulation in those stack manip languages where you can't determine the parse tree without running the program
00:21:02 <ais523> right
00:21:59 <wob_jonas> if you don't know those preprocessor tricks, you should look at them, because it's interesting in an eso sense: while the preprocessor isn't eso intent, it is sort of a tarpit, where it can do much more than it was designed to do
00:22:02 <wob_jonas> sort of like tex
00:22:24 <wob_jonas> but it's restricted, so you need crazy tricks to do useful things, and there are a lot of things you want to do that you can't for syntax reasons
00:22:25 <ais523> I have the feeling that tex was intentionally TC
00:22:29 <wob_jonas> so you need to choose encodings wisely
00:22:45 <wob_jonas> ais523: sure, TeX is intentionally TC, but the details of how you program it is tricky
00:22:57 <wob_jonas> as in, TC is easy if you choose how you represent your data
00:23:18 <wob_jonas> but you don't want to do everything on a numeric array, because that's slow and inconvenient to input
00:23:36 <wob_jonas> so writing complicated programs gets interesting (in the obfu sense) in TeX
00:26:54 <wob_jonas> and TeX is a much more closed language than say C++ or rust, in the sense that when some convenient feature can't be reasonably implemented in TeX but could be implemented by changing the TeX engine itself, people very rarely dare to change it.
00:27:29 <wob_jonas> there are radical TeX derivatives like luaTeX, but they don't spread as much as modern versions of C++
00:27:32 <fizzie> This is an old thing, and sort of unrelated to the current discussion, but if you never happened to come across it: https://tgceec.tumblr.com/
00:27:50 <wob_jonas> fizzie: yes, I've seen that
00:28:08 <ais523> I haven't seen it (although I've seen an equivalent contest on PPCG)
00:28:09 <fizzie> It was probably discussed on #esoteric, at that.
00:28:49 <ais523> did they ever post the 2015 results?
00:29:15 <fizzie> I think not, just the "results thus far" post.
00:29:19 <wob_jonas> the extreme amount of error messages they get is amazing, but the general idea of error message blow up is familiar to anyone who tries to use MSVC or older versions of gcc,
00:29:25 <wob_jonas> and sometimes you even see it in modern gcc
00:29:45 <wob_jonas> I even have a bug report about a particular case when gcc gives some stupid meaningless shit for some program error
00:30:08 <fizzie> I've been dabbling with C++ for fun lately, and it still seems to be quite easy to get a few hundred lines of errors even for simple things.
00:30:29 -!- tromp has quit (Remote host closed the connection).
00:30:35 <wob_jonas> fizzie: oh sure, the challenge is to do that without templates
00:31:14 <wob_jonas> and without using the fact that if you include a few headers, you get a thousand overloads for operator<< or similar, so you get a long list of suggested overloads for a function overload choice failure
00:31:14 <fizzie> I think what I mostly got (for not trying) was long lists of funcion overload candidates when what I tried to call didn't quite match anything.
00:31:20 <fizzie> Heh.
00:31:30 <fizzie> Yes indeed. :)
00:32:16 <wob_jonas> other ways to get long error scrolls is to make one typo early in the file and then the compiler misunderstands the whole thing. MSVC is specifically very bad at this, modern compilers are getting better but even they can't ever be perfect at that,
00:32:53 <wob_jonas> because they'd have to guess the craziest typos you can make, like when a word you use a hundred times should be a typename but is declared as a variable instead
00:33:04 <wob_jonas> or when you leave a left brace open
00:34:30 <wob_jonas> this was my gcc bug report (resolved, though not perfectly to my satisfaction): https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58363
00:34:47 <wob_jonas> gcc prints 13 lines of errors and none of them tells the single real error in the program, which is a missing parenthesis pair
00:35:01 <wob_jonas> even though it should be able to tell that that's the error from purely the syntax
00:36:00 <wob_jonas> was unnoticed or low priority because it's a case that almost never comes up in non-obfu programs
00:37:19 <wob_jonas> the minimal test case is complicated and unlikely in real code
00:37:35 <wob_jonas> but possible nonetheless
00:38:08 -!- Zarutian has joined.
00:38:56 -!- Zarutian has quit (Read error: Connection reset by peer).
00:40:16 <wob_jonas> after they fixed it, the error message is still nonsense and doesn't tell the real error, but at least it doesn't contain an internal oops (as in an almost internal-compiler-error) barf in it
00:40:40 -!- Zarutian has joined.
00:41:04 <ais523> now I'm wondering if naming the pseudodestructor without calling it makes sense
00:41:20 <ais523> i.e. just «m.~f;»
00:41:31 <ais523> the gcc error messages imply that gcc thinks that's acceptable
00:41:56 <HackEgo> [wiki] [[Brainfuck algorithms]] https://esolangs.org/w/index.php?diff=51842&oldid=51841 * JHM * (-2) /* Non-wrapping */
00:43:16 <wob_jonas> ais523: not currently, but it's not unreasonable to think that it is. there's a nonstandard gcc extension to C++ that lets you name an object and a member function together without calling it (to do the virtual method dispatch now but call later and possibly multiple times), and this could be expanded to cover destructors (which can be virtual too)
00:44:14 <wob_jonas> ais523: but currently naming the pseudodestructor doesn't make sense, and usually you get a less crazy error message if you try it, which is why I needed this ugly testcase involving an operator and a typedef for a builtin type
00:44:21 <wob_jonas> s/builtin/scalar/
00:44:41 <wob_jonas> s/an operator/an overloaded operator/
00:45:22 <wob_jonas> you don't get this bug if you try to put the pseudo-destructor-non-call into most other contexts
00:46:52 <wob_jonas> and you want to try to name a destructor for a type that is known at compile time to be a scalar type (not just for a dependent type variable that may be a scalar type in some substitution), which you rarely do in real code
00:47:07 <wob_jonas> but don't ask why, I don't know how gcc internals work
00:47:28 <wob_jonas> also, this was many years ago, they have rewritten like half of gcc since
00:53:03 -!- tromp has joined.
00:59:28 <wob_jonas> ais523: ok, going back to the NP-complete lexer, I have an idea for how this poetry with word shared between adjacent lines could work
00:59:35 <wob_jonas> it might be a bit strained, but eh, #esoteric
01:01:09 <wob_jonas> Foklorist goes to record epic songs sang by bards before they're lost. Song is Kalevala-style, sang alternatingly by two bards prompting each other, and alliterating.
01:02:26 <wob_jonas> Whenever song changes from one bard to the other, last line of previous bard must have a word that alliterates with a word in first line of next bard, where we define alliteration as the [vowel]*[consonant]-prefix of the words being equal.
01:03:28 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
01:03:44 -!- wob_jonas has joined.
01:05:34 <wob_jonas> For better acoustics, folklorist decides to use two phonographs, one for each bard. Recording media is expensive. So whenever the older bard sings, the folklorist records it with his phonograph to his wax cylinders, and whenever the younger bard sings, the folklorist's assistant (who does all the hard work but gets none of the awards) records it wi
01:05:34 <wob_jonas> th his phonograph on his wax cylinders.
01:06:18 <wob_jonas> The recording media also comes in many small pieces, so they often change cylinders. They forgot to label the cylinders in advance, and don't have time to do it during the performance.
01:07:13 <wob_jonas> The editor Mr. Lexer (another assistant who does all the hard work and gets none of the awards) has to listen to all the cylinders afterwards and put them in proper order so the replies alliterate to their prompts.
01:08:42 <wob_jonas> Note that a single cylinder can have a sequence of multiple adjacent prompts and replies sang by one side.
01:10:07 <wob_jonas> Mr. Lexer will have to solve a problem that could in theory encode a general graph Hamilton-path problem, though in practice it won't be that difficult computationally (and will be difficult for reasons other than computational complexity of the Hamilton thing)
01:10:32 <wob_jonas> This lexing is the first stage, because the interesting part continues when you listen to the whole epic, properly sorted.
01:10:50 <wob_jonas> ais523: does that sound good enough for an NP-complete lexer/
01:11:36 <ais523> since when did esolangs have elaborate backstories? :-D
01:11:41 <ais523> (admittedly, some of cpressey's do)
01:12:56 <wob_jonas> ais523: some of the IOCCC ones do, like that babbage thingy (where each statement is one of x+=y, x-=y, x*=y, x/=y where x and y are variables0
01:13:05 -!- sleffy has quit (Ping timeout: 260 seconds).
01:13:37 <wob_jonas> ais523: thematic ones like chef and Piet and Shakespeare also sort of have back stories
01:14:05 <wob_jonas> oh, and of course many of the more recent ICFP languages have very elaborate back stories too
01:14:13 <wob_jonas> Lambda: the Gathering or the sand computer
01:14:14 <ais523> yes
01:15:20 <wob_jonas> many non-eso languages also have elaborate back stories for why they have such features that you can understand only with decades of historical reasons of compatibility with previous versions
01:15:41 <ais523> right, but those aren't normally constructed with entertainment as a goal
01:15:42 <wob_jonas> like x86 or some of the strange C++ syntax things
01:16:24 <wob_jonas> and those languages that aren't eso but become tarpits, like openttd signals or TeX, they do have back stories too for why they have features that seem to make general purpose programming so difficult
01:17:16 <wob_jonas> "entertainment as a goal" => that much is nicely two-layered, with the meta-story about the bard and the story the bard sings
01:19:46 <wob_jonas> anyway, it's somewhat questionable if you can call this lexing
01:24:38 <wob_jonas> heck, even Game of Life, which is definitely an esolang, has some back story about bacteria that are multiplying and dying form overcrowding
01:26:06 <wob_jonas> not very elaborate, but it is there
01:27:16 <Phantom_Hoover> i mean INTERCAL has an elaborate backstory of "the opposite of everything languages did circa '74"
01:27:42 <ais523> even then, though, it's clearly shaped by the languages at the time
01:27:57 <wob_jonas> well, everything is
01:28:24 <wob_jonas> it's hard to make something that's truly alien to everything done before
01:29:17 <ais523> I dunno, three star programmer is pretty weird :-D
01:32:40 <wob_jonas> weird yes, but definitely not alien, not after other esolangs that are one-instruction (or few instructions) and operate on a random-addressable vector of fixints
01:33:12 <wob_jonas> it's just more elegant than most of those in some sense, because it's so simple
01:33:47 <wob_jonas> and much more constrained (tarpit) than the other comparably simple ones
01:36:57 <ais523> But Is It Art? also seems to avoid nearly all the rules of a typical programming language
01:37:16 <ais523> its syntax is inherently 2D, it doesn't have commands, it doesn't have any sort of data storage or loop
01:37:22 <wob_jonas> ais523: yes, that's a better example
01:37:39 <ais523> it doesn't have an evaluation order
01:37:52 <wob_jonas> not only is the syntax 2D, but the execution is also 2D and nondeterministic
01:38:03 <wob_jonas> it, like, executes in two time dimensions
01:38:13 <Phantom_Hoover> looks on a very preliminary skim to be a similar concept to TC wang tilings
01:38:30 <ais523> yes, it's basically a tarpit of that category of languages
01:38:44 <wob_jonas> Phantom: yes, it's a generalization of those
01:40:57 <wob_jonas> Then there's Forte, which surfacially look very similar to an ordinary language, but when you try to write programs for it, it turns out there's some crazy twist that makes it difficult.
01:41:09 <wob_jonas> Those languages are fun too
01:41:11 <ais523> yes
01:41:17 <ais523> I wouldn't call Forte alien, though
01:41:20 <ais523> the familiarity is part of the joke
01:41:32 <wob_jonas> yep, it's not alien
01:42:19 <wob_jonas> Heck, in some sense counter machines are like that too, if you introduce them as multi-tape turing machines where the tape alphabet only has one symbol
01:43:22 <wob_jonas> (or more like one writable symbol, plus one symbol that marks the beginning of the tape, which is totally realistic, because real magnetic tape drives can detect the beginning of the tape when rewinding in a way other than reading symbols from the tape)
01:43:39 <ais523> it crossed my mind that Minsky machines are technically a brainfuck derivative (just with reverse causality)
01:44:14 <wob_jonas> what?
01:44:38 <wob_jonas> I mean, I know how they're brainfuck derivatives (with fixed size tape of bigints), but why reverse causality?
01:44:57 <ais523> they came first
01:45:19 <wob_jonas> oh! reverse causality in the history of languages, not in execution
01:45:20 <wob_jonas> I see
01:45:44 <wob_jonas> I thought of reverse causality in the sense that it is modeled by nondeterministic execution or something
01:47:23 <wob_jonas> That's like how 8086 is a derivative of 8088 with reverse causality, because technically 8086 was first, 8088 is simpler and cheaper and got well spread to consumers because of the IBM PC.
01:47:30 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
01:49:06 <wob_jonas> the 8086 clearly looks like an advanced 8088 with 16-bit memory access
01:51:18 <wob_jonas> but that sort of hardware simplification has happened before the x86 too, like with those simplified 6502 variants
01:53:32 <wob_jonas> in reality, if you're watching not as a tunnel visioned software guy like me, the 8088 really is a better 8086, because it requires a much simpler hardware interface to use (and is a bit less performant in exchange)
02:16:13 -!- hppavilion[1] has joined.
02:19:47 -!- ais523 has quit.
02:26:09 <wob_jonas> huh? why would someone consider zsh a bourne-like shell as opposed to a tcsh-like shell? to me, the most important distinguishing feature between those is that a bourne-like or posix-likeshell does word splitting after it expands a parameter like $foo , whereas tcsh and zsh doesn't.
02:26:35 <wob_jonas> I could be wrong though, because I don't use tcsh or zsh much.
02:26:43 <wob_jonas> I don't really remember how they work.
02:27:29 <wob_jonas> I can write bash and posix sh scripts mostly without referencing a manual, but can't do that for zsh or tcsh.
02:29:27 <wob_jonas> So it's possible that I just think of those shells as bash-like and non-bash-like.
02:29:50 <wob_jonas> Can someone who knows about csh and zsh and posix-like sh pipe in?
02:31:22 <wob_jonas> (Yes, it's sort of a high bar, but we're on #esoteric )
02:34:24 <fizzie> I was a tcsh user 15-20 years ago, and zsh was the default shell at the university, but I've entirely forgotten the subtleties. It was just too easy to default to bash.
02:35:48 <wob_jonas> fizzie: zsh is cool, it's almost certainly a better shell than bash, but I decided not to bother learning it because if I want to write a program where the difference between shells matter, then I use perl or some other non-shell language
03:07:24 <Cale> Shells are all pretty terrible languages in which to write anything nontrivial. The guy I work for just had an incident where he replaced some double quotes with single quotes in a client's bash script, and it ended up doing rm -rf / and wiping out his home directory on that machine (thankfully it happened on a machine that didn't have much of interest on it at the time).
03:08:54 * Zarutian uses tclsh if he can get away with it ;-Þ
03:10:43 <Jafet> from a shell user's point of view, zsh and bash have converged a bit over time; zsh has acquired many bash compatibility settings (including for word splitting) and bash has acquired many zsh features (such as programmable completion)
03:11:17 -!- sleffy has joined.
03:12:56 <Cale> (Whoever decided that unbound variables ought to be interpolated as the empty string was not thinking very clearly at the time.)
03:13:29 <Jafet> pretty sure you can come up with a haskell program where the same replacement has the same effect
03:14:11 <Cale> It'd be pretty tricky to contrive it... the issue was that there was an interpolation in that string which actually set the value of another variable at the same time
03:14:41 <Cale> and then later, that variable was used in the path to rm
03:15:53 <Jafet> sounds like a script that was not written in the sensible subset of bash
03:16:25 -!- sleffy has quit (Ping timeout: 276 seconds).
03:16:26 <Jafet> (well, that subset is pretty small, and probably not obvious to novices)
03:16:33 <Cale> right
03:16:47 <Cale> and the script didn't *look* insane or anything
03:18:02 <Jafet> changing quote marks is not a safe operation in most languages, though, so I don't know why one would do it?
03:18:28 <HackEgo> [wiki] [[Deadfish]] https://esolangs.org/w/index.php?diff=51843&oldid=51837 * Oerjan * (+2) /* Common Lisp */ Bugfix
03:20:23 <Cale> Jafet: I didn't ask. I think he'd completely missed the fact that there was any variable expansion going on in that string at all.
03:22:46 <Cale> The other silly thing is that rm doesn't actually check that it will succeed before beginning to delete stuff.
03:30:39 <Jafet> rm -rf / is special-cased nowadays
03:32:29 <Jafet> which is interesting, because you'd imagine that people would unintentionally rm all sorts of other things, but no, only the infamous / is detected
03:36:39 -!- erkin has quit (Quit: Ouch! Got SIGABRT, dying...).
03:40:38 -!- augur has quit (Remote host closed the connection).
03:42:01 -!- tromp has quit (Remote host closed the connection).
03:46:03 -!- sleffy has joined.
03:46:11 -!- Zarutian has quit (Quit: Zarutian).
03:57:30 -!- hppavilion[1] has quit (Ping timeout: 240 seconds).
04:02:35 -!- Slereah__ has joined.
04:05:07 -!- xfix_ has joined.
04:07:46 -!- molum has joined.
04:09:48 -!- hppavilion[1] has joined.
04:11:48 -!- Riviera has quit (*.net *.split).
04:11:49 -!- ybden has quit (*.net *.split).
04:11:49 -!- xfix has quit (*.net *.split).
04:11:49 -!- Slereah has quit (*.net *.split).
04:12:12 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
04:18:22 -!- augur has joined.
04:29:15 -!- erkin has joined.
04:31:05 <hppavilion[1]> Just wrote a Python program to solve 1-1+1-1+1-...
04:31:11 <hppavilion[1]> Just waiting for it to finish computing
04:37:12 * sleffy waits
04:37:21 <shachaf> `5 w
04:37:46 <HackEgo> 1/3:nothing//Nothing would have been better than to create this wisdom entry. \ absolute value//The absolute value of a number, also known as its cosign, is its distance from zero regardless of direction. It shouldn't be negative, but Sgeo is trying to break maths. \ lazy//La \ nitia//nitia is the inventor of all things. The BBC invented
04:37:49 <shachaf> `n
04:37:50 <HackEgo> 2/3:her. \ hydra//http://www.madore.org/~david/math/hydra0.xhtml , dire: http://www.madore.org/~david/math/hydra.xhtml , theory: http://www.madore.org/~david/weblog/d.2008-03-27.1537.html http://www.madore.org/~david/weblog/d.2008-03-16.1534.ordinaux-et-hydres.html http://math.andrej.com/2008/02/02/the-hydra-game/ https://en.wikipedia.org
04:38:00 <shachaf> `n
04:38:00 <HackEgo> 3/3:/wiki/Goodstein%27s_theorem
04:38:08 <hppavilion[1]> sleffy: Done!
04:38:18 <sleffy> oooh goody
04:38:33 <hppavilion[1]> sleffy: 0.4999923707218823
04:39:00 <sleffy> nice
04:42:31 -!- tromp has joined.
04:47:10 -!- tromp has quit (Ping timeout: 260 seconds).
05:03:25 -!- erkin has quit (Read error: Connection reset by peer).
05:04:16 -!- erkin has joined.
05:10:02 -!- doesthiswork has quit (Quit: Leaving.).
05:32:42 -!- tromp has joined.
05:33:28 -!- doesthiswork has joined.
05:40:21 -!- Mayoi has joined.
05:40:38 -!- erkin has quit (Disconnected by services).
05:40:39 -!- Mayoi has changed nick to erkin.
05:59:39 -!- tromp has quit (Remote host closed the connection).
06:08:50 -!- erkin has quit (Ping timeout: 260 seconds).
06:11:49 -!- erkin has joined.
06:17:34 -!- hppavilion[1] has quit (Ping timeout: 260 seconds).
06:22:59 -!- sleffy has quit (Ping timeout: 240 seconds).
06:26:12 -!- sleffy has joined.
06:52:05 -!- FreeFull has quit.
06:59:49 -!- hppavilion[1] has joined.
07:00:10 -!- tromp has joined.
07:04:49 -!- tromp has quit (Ping timeout: 260 seconds).
07:33:31 -!- LKoen has joined.
08:01:42 -!- tromp has joined.
08:06:08 -!- tromp has quit (Ping timeout: 245 seconds).
08:06:45 -!- sleffy has quit (Ping timeout: 260 seconds).
08:08:36 -!- augur has quit (Remote host closed the connection).
08:41:32 -!- doesthiswork has quit (Quit: Leaving.).
09:13:09 -!- Riviera has joined.
09:28:20 <Taneb> http://conal.net/papers/compiling-to-categories/compiling-to-categories.pdf is a paper I found interesting
09:33:55 <shachaf> Oh, he finally published it.
09:34:00 <shachaf> Are you going to ICFP?
09:45:15 -!- hppavilion[1] has quit (Ping timeout: 260 seconds).
09:53:22 -!- erkin has quit (Quit: Ouch! Got SIGABRT, dying...).
10:01:28 -!- tromp has joined.
10:05:37 -!- tromp has quit (Ping timeout: 240 seconds).
10:16:02 -!- AnotherTest has joined.
10:21:14 <Taneb> shachaf, if I can, which is unlikely
10:22:10 <shachaf> Why/
10:22:14 <shachaf> s/.$/?/
10:24:22 <Taneb> Well, how much do tickets cost
10:27:21 <shachaf> I don't know, I guess registration isn't open yet.
10:28:17 <shachaf> Looks like student early tickets for all of ICFP in 2016 cost $300.
10:28:30 <shachaf> Oh, $360.
10:37:11 <Taneb> Add to that transport (thankfully it's not overseas for me this year, but it's still a journey) and accommodation
10:38:28 <shachaf> You're practically next door.
10:38:43 <shachaf> You could go for one day to see conal's talk.
10:39:47 <Taneb> It's a five hour journey by train
10:40:23 <shachaf> From Hexham?
10:40:52 <shachaf> I guess it is.
10:41:02 <shachaf> Kind of scow.
10:43:10 <Taneb> I'm not going to be based in York after June
10:43:15 <Taneb> I might also not be a student
10:44:32 <shachaf> Or you might be a PhD student at Oxford?
10:44:39 <shachaf> That would make it very convenient.
10:45:02 <Taneb> And also rather unlikely
10:45:47 <shachaf> Sorry, of course I mean DPhil.
10:46:35 <Taneb> Considering my prospective final grade, still rather unlikely
10:47:19 <Nistur> Huh. Something just down the road from me. Interesting
10:47:48 <Nistur> shame there's no way my wife would approve of me spending that much money to go :P
10:49:32 <Taneb> Nistur, ICFP?
10:49:48 <Nistur> yep
10:49:57 <Nistur> it's also on my birthday
10:50:20 <Taneb> Do you think you could potentially convince your wife to let someone you met on the internet stay for a week over your birthday
10:50:38 <Nistur> (I'm about 30 minutes up M40 from Oxford. I've done the trundle down to Oxford several times)
10:50:41 <Nistur> um
10:50:48 <Taneb> (not a serious request)
10:50:53 <Nistur> I probably could
10:51:00 <shachaf> Leamington Spa?
10:51:15 <Taneb> I've got a friend in Abingdon who I'd call on first
10:51:30 <Nistur> shachaf: bing bing bing. Points. Although I actually live in Coventry because house prices in Leamington are stupid
10:51:50 <shachaf> What are house prices in Leamington like?
10:51:56 <Taneb> Isn't Phantom_Hoover in Coventry?
10:51:58 <Nistur> almost London prices
10:52:04 <shachaf> I guess I can look it up.
10:52:34 <shachaf> "2 bedroom semi-detached house for sale" "£200,000 Guide Price"
10:52:46 <shachaf> That can't be London prices, surely.
10:52:58 <Nistur> I bought a 2 bedroom house in a cul-de-sac with a garden in a nice part of Coventry for £125. That would barely have got me a 1 bed flat in most parts of Leamington
10:53:01 <Nistur> hmmm
10:53:05 <Nistur> hmmm
10:53:14 <shachaf> Maybe this website isn't reliable.
10:53:15 <Nistur> it depends what parts of Leamington you're looking at
10:53:45 <Taneb> Do house prices scale linearly in the number of bedrooms, absent other factors?
10:54:14 <Nistur> (not wanting to be overly snobby) but you don't really want to buy in South Leamington... and anything in North will cost you more
10:54:20 <Nistur> *£125k
10:55:05 <shachaf> So cheap.
10:55:19 <shachaf> The bay area is pretty scow in this respect.
10:55:29 <Nistur> I think it'd be impossible to ignore other factors, I mean, you can't split rooms indefinitely
10:55:54 <Nistur> so the size of the house has to affect it too
10:56:18 <Nistur> but otherwise... probably yes
10:56:59 <shachaf> I'd guess that house prices are primarily affected by land prices, which are primarily affected by location and size.
10:57:26 <shachaf> Number of bedrooms is probably loosely correlated with size.
10:58:13 <shachaf> Maybe this is more true around here where land prices are ridiculous so the houses themselves are often comparably cheap.
10:59:02 <shachaf> (But what do I know.)
10:59:54 <Nistur> http://www.zoopla.co.uk/for-sale/property/leamington-spa/?price_max=130000&price_min=120000&q=Leamington%20Spa%2C%20Warwickshire&results_sort=newest_listings&search_source=home There are only two places actually around Leamington for that price range... one is a retirement house which looks like it might be a mobile home, bricked in... and the other one is a 1 bed flat
11:00:58 <shachaf> I looked at http://www.rightmove.co.uk/property-for-sale/property-66040934.html
11:01:07 <shachaf> But it was the first Google search result so it's probably unreliable.
11:01:23 <shachaf> seo = scow engine optimization
11:03:15 <Nistur> rightmove is reliable
11:03:36 <Nistur> Lillington is a little bit outside of Leamington though
11:05:27 <Nistur> it's not quite London prices, you're right... but in Coventry, a similar property is easily £50k cheaper in a similarly nice location
11:05:32 * Nistur shrugs
11:05:46 <Nistur> I work in Leamington though
11:06:11 <fizzie> London prices. :(
11:06:22 <shachaf> Anyway as far as I can tell you can't find anything around here for less than, say, $600k.
11:06:40 <shachaf> Not that I'd be likely to buy real estate anyway?
11:06:55 <shachaf> But complaining about real estate prices is a popular activity.
11:07:01 <shachaf> I guess I could complain about rent prices instead.
11:09:41 <shachaf> Looks like London prices may be roughly the same neighborhood?
11:10:01 <Jafet> with renting the technique of splitting rooms becomes possible, though perhaps not indefinitely
11:10:30 <shachaf> If price is linear in number of rooms, splitting can be a profitable strategy.
11:10:48 <Jafet> maybe you could rent a bunk for half of each day
11:11:12 <Jafet> (the fabled rental time-division multiplexing)
11:11:20 <fizzie> UK's smallest castle is for sale at £550k, said the news the other day.
11:11:30 <fizzie> http://www.telegraph.co.uk/news/2017/03/30/uks-smallest-castle-sale-550000/
11:11:31 <shachaf> Jafet: that theory has been debunked hth
11:13:55 <Jafet> would purchasing that count as a defensive investment?
11:14:26 -!- Phantom_Hoover has joined.
11:14:26 -!- Phantom_Hoover has quit (Changing host).
11:14:26 -!- Phantom_Hoover has joined.
11:15:12 <Nistur> when I lived in London, I had a friend that rented a room... it was just a little larger than a single bed (as in, he could just about stand beside the bed) and it was in a... not great part of London (although, not overly crappy either) and it cost him £90/week I think
11:16:25 <shachaf> I rented a pretty small room in East Palo Alto (a not great part of silly valley, people would probably call it) for a similar price.
11:16:36 <shachaf> It was somewhat bigger, though.
11:18:31 <shachaf> fizzie: You could have bought a nuclear missile silo in NY for a similar price: https://www.zillow.com/blog/house-of-the-week-missile-silo-home-66159/
11:18:53 <shachaf> (Missile not included.)
11:24:42 <Nistur> have you seen that guy who's bought a missile silo and is youtubing videos of cleaning it up?
11:25:13 <Nistur> ummmm... "Death Wears Bunny Slippers" the channel is called
11:34:04 -!- lynn has quit.
11:34:26 -!- lynn has joined.
11:35:07 -!- boily has joined.
11:46:09 <boily> fungot: nostril.
11:46:09 <fungot> boily: we're going down hard and fast and.
11:46:35 <boily> fungot: indeed. my nostrils aren't working. or working too much. either way, fscking allergies.
11:46:35 <fungot> boily: can anyone point out a particularly clean vm implemented in c
11:47:58 <Taneb> boily, are you taking anything for them?
11:48:28 <boily> Tanelle. yes, loratadine.
11:49:07 <Taneb> That's good, I hope things get easier for you
11:51:59 <boily> Thaneb ^^
12:23:41 -!- augur has joined.
12:28:10 -!- augur has quit (Ping timeout: 258 seconds).
12:28:53 -!- boily has quit (Quit: VESTIGIAL CHICKEN).
12:45:31 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
12:49:00 -!- Remavas has quit (Read error: Connection reset by peer).
12:54:44 -!- Remavas has joined.
13:03:01 -!- tromp has joined.
13:07:36 -!- tromp has quit (Ping timeout: 240 seconds).
13:32:21 -!- ais523 has joined.
14:00:30 -!- doesthiswork has joined.
14:35:58 -!- `^_^v has joined.
14:57:10 -!- ais523 has quit (Remote host closed the connection).
14:58:12 -!- Zarutian has joined.
14:58:19 -!- ais523 has joined.
15:32:21 -!- augur has joined.
15:36:51 -!- augur has quit (Ping timeout: 246 seconds).
15:42:31 -!- augur has joined.
15:53:56 -!- Phantom_Hoover has quit (Ping timeout: 268 seconds).
16:09:23 -!- sleffy has joined.
16:10:53 -!- ais523 has quit.
17:03:33 -!- FreeFull has joined.
17:10:08 -!- Remavas has quit (Read error: Connection reset by peer).
17:10:20 -!- Zarutian has quit (Quit: Zarutian).
17:33:24 -!- Zarutian has joined.
17:35:43 -!- lynn has quit (Read error: Connection reset by peer).
17:44:21 -!- LKoen has joined.
17:46:43 -!- lynn has joined.
18:02:58 -!- hppavilion[1] has joined.
18:10:29 -!- sleffy has quit (Ping timeout: 240 seconds).
18:20:58 -!- LKoen has quit (Remote host closed the connection).
18:48:59 -!- augur has quit (Remote host closed the connection).
19:11:43 -!- DHeadshot has joined.
19:16:22 -!- DHeadshot has quit (Ping timeout: 255 seconds).
19:19:35 -!- DHeadshot has joined.
19:24:50 -!- kiki` has joined.
19:30:09 -!- hppavilion[1] has quit (Ping timeout: 240 seconds).
19:30:36 -!- heroux has quit (Ping timeout: 240 seconds).
19:31:11 -!- heroux has joined.
19:32:20 -!- hppavilion[1] has joined.
19:48:33 -!- LKoen has joined.
20:03:32 -!- hppavilion[1] has quit (Ping timeout: 246 seconds).
20:10:55 -!- hppavilion[1] has joined.
20:14:29 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
20:16:26 -!- `^_^v has quit (Quit: This computer has gone to sleep).
20:32:08 -!- `^_^v has joined.
20:32:10 <int-e> shachaf: I have to admit that the tower was quite unexpected (and no I didn't solve that level yet)
20:32:21 <shachaf> The Great Tower?
20:32:35 <shachaf> That was the level I was on last time I played the game (which was a few weeks ago, before I lost my computer).
20:32:44 <shachaf> (Which I've now found so I should get back to it.)
20:32:55 <shachaf> I managed to cook all the sausages but then I was stuck on the ledge.
20:33:11 <int-e> yes, the great tower
20:44:06 <int-e> I didn't really try... there's another level on that island that is unsolved here (Twisty Farm), which is easier to think about
20:51:33 <int-e> well, not anymore.
20:55:44 <shachaf> I had a few others on that island. I should keep going on that game sometime.
21:01:00 -!- Remavas has joined.
21:01:12 -!- Remavas has quit (Read error: Connection reset by peer).
21:02:21 -!- DHeadshot has quit (Ping timeout: 260 seconds).
21:02:32 -!- Remavas has joined.
21:08:10 -!- tromp has joined.
21:10:48 -!- `^_^v has quit (Quit: This computer has gone to sleep).
21:12:23 -!- `^_^v has joined.
21:12:28 -!- tromp has quit (Ping timeout: 255 seconds).
21:14:45 -!- `^_^v has quit (Client Quit).
21:17:57 -!- `^_^v has joined.
21:20:46 -!- `^_^v has quit (Client Quit).
21:21:40 -!- `^_^v has joined.
21:28:16 -!- `^_^v has quit (Quit: This computer has gone to sleep).
21:29:43 -!- `^_^v has joined.
21:35:34 -!- hppavilion[1] has quit (Ping timeout: 268 seconds).
21:46:28 -!- sleffy has joined.
21:47:05 -!- DHeadshot has joined.
21:48:17 -!- `^_^v has quit (Quit: This computer has gone to sleep).
21:55:44 -!- `^_^v has joined.
21:55:44 -!- `^_^v has quit (Client Quit).
22:05:25 -!- Phantom_Hoover has joined.
22:05:25 -!- Phantom_Hoover has quit (Changing host).
22:05:25 -!- Phantom_Hoover has joined.
22:08:53 -!- tromp has joined.
22:13:06 -!- tromp has quit (Ping timeout: 240 seconds).
22:18:02 -!- hppavilion[1] has joined.
22:53:21 -!- Zarutian has quit (Quit: Zarutian).
22:54:08 -!- AnotherTest has quit (Quit: ZNC - http://znc.in).
22:57:09 -!- DHeadshot has quit (Ping timeout: 260 seconds).
22:59:36 -!- hppavilion[1] has quit (Ping timeout: 240 seconds).
23:00:06 -!- sparr has joined.
23:01:08 -!- sparr has quit (Changing host).
23:01:08 -!- sparr has joined.
23:06:18 -!- Zarutian has joined.
23:07:06 -!- sparr has quit (Quit: WeeChat 1.4).
23:09:08 -!- sparr has joined.
23:09:11 -!- sparr has quit (Changing host).
23:09:11 -!- sparr has joined.
23:24:46 -!- tromp has joined.
23:29:53 -!- tromp has quit (Ping timeout: 268 seconds).
23:38:45 -!- DHeadshot has joined.
23:41:47 -!- boily has joined.
23:47:17 <boily> `w
23:47:30 <HackEgo> math//Math class is tough!
23:50:48 <boily> `dowg math
23:50:58 <HackEgo> 10653:2017-04-13 <oerjän> ` cd wisdom; sed -i \'s/ $//\' `grwp -l \' $\' | grep -v rules` \ 6426:2015-12-19 <b_jonäs> le/rn math/Math class is tough!
23:53:57 <shachaf> `? rules
23:53:58 <HackEgo> rules? ¯\(°​_o)/¯
23:54:16 <shachaf> `? rules of wisdom
23:54:17 <HackEgo> unless essential for the entry's humor, they should: be understandable without the lookup key, be single spaced with no space at the end, and use proper capitalization and punctuation
23:54:29 -!- sleffy has quit (Ping timeout: 240 seconds).
23:54:30 <shachaf> `grwp even more
23:54:39 <HackEgo> ichtymology:Ichtymology is like itymology, but even more fishy. \ vampire:Vampires are a wizarding myth Professor Lupin invented to make students hate Professor Snape even more, after Professor Snape almost made the students realize he's a werewolf.
23:55:12 <\oren\> `w
23:55:14 <HackEgo> for further details.//See `? for further details for futher details.
23:55:17 <\oren\> `w
23:55:18 <HackEgo> football//A football is a ball made of feet. It was rdocscovered in an old burial site near a graveyard full of footless zombies.
23:55:23 <boily> helloochaf, he\\oren\.
23:55:34 <\oren\> `? for futher details
23:55:35 <HackEgo> for futher details? ¯\(°​_o)/¯
23:55:54 <\oren\> `w
23:55:56 <HackEgo> nimby//NIMBY : Not in my backyard.
23:55:58 <\oren\> `w
23:56:00 <HackEgo> webcarting//webcarting is not dissimilar to Mario Kart, but uses real, remote-controlled go-karts. Participants describe it as "the outlandish spectacle of real go-karting combined with the thrill and immersion of Mario Kart".
←2017-05-03 2017-05-04 2017-05-05→ ↑2017 ↑all