00:22:55 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:25:22 -!- clog has quit (Ping timeout: 246 seconds).
00:27:54 -!- clog has joined.
00:42:02 <zzo38> Do you know that most Z-machine interpreters are defective? I have tried them and all of them, including Infocom's own interpreters, are defective.
00:51:19 -!- copumpkin has quit (Ping timeout: 240 seconds).
00:51:52 -!- copumpkin has joined.
01:11:10 -!- mnoqy has quit (Quit: hello).
01:14:21 <zzo38> I don't know everything about it, but testing it, they all seem defective, although my own interpreter "Aimfiz" seems to be the most accurate one.
01:16:53 <zzo38> It seems other interpreters try to cache things they shouldn't cache, make incorrect assumptions, and do other wrong things. Infocom's interpreter seems to be second most accurate, as far as I can tell.
01:21:25 * Sgeo wonders if Aimfiz has defects that others don't
01:21:44 <zzo38> Sgeo: It is possible.
01:21:54 <zzo38> See if there are some that I missed; if so then I will fix it.
01:22:41 <Sgeo> I don't have enough knowledge of either Z-machines or Aimfix
01:23:50 <zzo38> Unfortunately the documentation for the Z-machine is also defective; I had to look at both Infocom's and Graham's documentation, as well as Infocom's interpreters, and their story files, to figure out the correct way; a few things that have never been used or implemented are still unknown, however.
01:25:07 <Bike> this sure sounds like a fascinating definition of "correct" and "defective"
01:25:33 <Bike> by which i mean, i don't think you're going to get those coherently out of weird docs and implementations.
01:35:13 <Sgeo> What does correct mean?
01:38:45 <zzo38> Sgeo: I don't really know for sure, so I study everything and make the best guess, and it turns out it works; I am highly confident that I did it correctly.
01:44:31 <zzo38> However what I am somewhat less confident of is that my interpreter lacks defects.
01:49:04 <HackEgo> slist: Taneb atriq Ngevd Fiora nortti Sgeo ThatOtherPerson alot
01:56:44 <zzo38> One thing that is unknown is the MIDI format for Z-machine. All of Infocom's MIDI files play a single note, and their interpreters all implement MIDI in a klugy way, so I don't know what is correct. But I have looked at them and partially figured it out.
02:01:42 <zzo38> They seem to be a series of ordinary MIDI commands, although 0xFF seems to be some kind of delay; I don't know what units it is in, though.
02:02:40 -!- sacje has quit (Ping timeout: 246 seconds).
02:02:45 -!- copumpkin has quit (Ping timeout: 248 seconds).
02:03:21 -!- copumpkin has joined.
02:16:01 -!- sacje has joined.
02:19:27 <Bike> So is fix totally computable?
02:24:38 <elliott> it spits out _|_ a lot though.
02:25:40 <Bike> like not that.
02:26:53 <elliott> well, it's not going to find numeric fixpoints.
02:27:01 <elliott> unless you use a really weird number type or something I guess
02:27:23 <Bike> well i meant fix "the function" not fix "the thing in haskell" i guess.
02:27:29 <elliott> well, that is fix the function
02:27:41 <elliott> it's a legitimate fixed point from the perspective of haskell's denotational semantics
02:27:58 <Bike> how about something that returns all fixed points, then.
02:28:50 <comex> that's turing complete
02:28:52 <Bike> > [undefined, 1, 2] !! 1 -- derp
02:30:52 <Bike> i guess "all" is a lot harder semantically to describe
02:31:43 <comex> fix itself is not computable.
02:31:50 <comex> \n -> whether a program terminates at the nth step
02:31:55 <shachaf> Bike: the limit of a diagram that looks like •⇉• hth
02:32:26 <Bike> comex: like with 1 = true?
02:32:35 <comex> i guess n if it terminates, some other value otherwise
02:32:51 <comex> any algorithm that runs in finite time has the possibility of returning the wrong value
02:33:01 <comex> (which is the number of steps or _|_)
02:34:21 <comex> oh, except running for an infinite amount of time counts as a return value, right?
02:34:23 <elliott> defining _|_ as wrong as a result is as wrong as defining 123 as wrong as a result :/
02:34:43 <elliott> f (fix f) = fix f is always obeyed
02:34:55 <comex> that is not a particularly useful definition of computability
02:35:02 <comex> every function is computable
02:35:04 <Bike> yeah fix f = undefined is boring.
02:35:15 <Bike> well, that's not it. whatever
02:36:08 <lambdabot> <hint>:1:5: parse error on input `\'
02:36:13 <Bike> > fix (\x -> 1)
02:36:44 <comex> is it not true that allowing _|_ as a "return value", every function is computable?
02:37:05 <Bike> > (\x -> 1) undefined -- right right
02:38:07 <elliott> fix gives the least ("least" according to definedness, imagine the lattice in your head, etc.) fixed-point of any function
02:38:10 <kmc> zzo38: did you write a Z-machine fuzzer?
02:38:21 <elliott> which is what it's supposed to do, and does
02:38:30 <elliott> there's no "gaps" where it gives _|_ but should be giving something else
02:38:46 <comex> no, i realized that
02:39:20 <comex> and i guess the other thing isn't true either... I think it might be true for any boolean function
02:40:03 <kmc> I mean even if you allow _|_ as a return value generally, I can still insist that you compute a function which doesn't return _|_ ever
02:40:30 <kmc> what you said is true if you consider _|_ to be just as good as any particular answer, which makes it useless
02:40:55 <elliott> but fix doesn't do that, it does exactly what it's supposed to :P
02:41:06 <elliott> and that doesn't mean that every function is computable
02:41:22 <elliott> if you made fix arbitrarily give _|_ on one function (ignoring that this breaks RT and everything) it'd be a different function
02:42:04 <Bike> i realize i was unclear, but i'm not really concerned with haskell here.
02:42:49 <comex> elliott: i claim that every function with a finite number of possible return values is computable
02:43:14 <Bike> halting oracle?
02:43:39 <comex> bah, except _|_ isn't *that* first-class
02:43:49 <elliott> Bike: but I'm not arguing with you any more!!
02:43:59 <elliott> new and exciting arguments
02:44:27 <comex> however, you can represent a halting oracle as a function that returns a finite number of possible return values and is computable
02:44:33 <comex> namely, return _|_ if it doesn't halt
02:45:14 -!- sacje has quit (Ping timeout: 256 seconds).
02:45:15 <Bike> so, halts = (flip seq) True?
02:45:53 <shachaf> halts x = x `seq` True -- so much simpler
02:46:09 -!- sacje has joined.
02:46:59 <Bike> god damn it, i try to write pointlessly one time
02:48:32 <shachaf> "don't worry, everything you write is pointless"
02:54:41 <Bike> So: is there a total function that, given the encoding of a partial function, returns a recursive set of its fixed points? Or just r.e.?
02:54:44 <Bike> how's that elliott.
02:54:49 <Bike> made me break out the naturals. fuck 'em.
02:55:19 <Bike> i even wrote "r.e.". reducing me to kleene dude. reducing me to kleene.
02:55:28 <elliott> what's the domain and codomain of the function :P
02:55:45 <shachaf> imo computability is overrated
02:56:05 <kmc> here's a nickel kid, buy yourself a hypercomputer
02:56:47 <Bike> costs 1 + 1/2 + 1/3 + 1/4 + ... dollars
02:56:47 <shachaf> how much do nickel kids go for
02:56:51 <shachaf> is that like a tin soldier
03:02:27 <Bike> Maybe fix fix fucks it up.
03:04:23 <Bike> I guess it could be the empty set indicator, or something.
03:05:06 <Bike> well, no, that wouldn't work. it has to include itself.
03:06:16 -!- oerjan has quit (Quit: Gnoyt).
03:07:07 <Bike> fix f = let r = f undefined in seq r r
03:09:22 <Bike> @pl fix f = let r = f undefined in seq r r
03:09:25 <lambdabot> fix = id (fix ((ap seq id .) . (. (const . ($ undefined)))))
03:09:26 <lambdabot> optimization suspended, use @pl-resume to continue.
03:15:20 <Bike> I guess returning the empty set is fine...
03:35:04 -!- sacje has quit (Ping timeout: 276 seconds).
03:37:00 -!- Guest50012 has joined.
03:42:36 -!- NihilistDandy has quit (Quit: NihilistDandy).
03:43:33 -!- Bike has quit (Ping timeout: 248 seconds).
03:44:27 <zzo38> I have a list here of Dungeons&Dragons spells I wanted to make up. It is "Light of Gxxyuxihuvxi", "Curse of Gxxyuxihuvxi", "Blessing of Gxxyuxihuvxi", "Eye of Gxxyuxihuvxi", "Mouths of Gxxyuxihuvxi", "Tentacles of Gxxyuxihuvxi", "Random Contintency", "Quantum Entanglement", and "Quantum Teleportation".
03:46:02 <zzo38> Do you have some ideas related to this?
03:50:07 -!- carado has quit (Ping timeout: 246 seconds).
03:55:31 -!- Bike has joined.
04:00:41 -!- Guest50012 has quit (Quit: Guest50012).
04:05:12 <ion> Quantum Gxxyuxihuvxi
04:07:41 <Bike> "has no fixed points" is a nontrivial property, so I think the set of partial functions with no fixed points isn't recursive?
04:09:53 <zzo38> ion: What is that supposed to be? Another aspect of that deity? (These spells aren't supposed to be necessarily all related; they are just a bunch of different ideas, some of which are related.)
04:18:21 <Bike> which is a hell of a theorem now that i actually look at it.
04:21:58 <elliott> the simplicity is great. it's not even like "okay well your condition on programs has to have this and that and the other"
04:22:04 <elliott> it's just "hi. you can't decide anything"
04:22:12 <Bike> you can tell it's simple because i can understand it
04:22:34 <elliott> it's like a generalisation of the halting problem
04:22:44 <Bike> yeah, i noticed. very cool.
04:23:23 <Bike> isn't it exactly a generalization of the halting problem? since "defined on x" is obviously nontrivial
04:23:42 <zzo38> Do you believe in two kinds of free will? My philosophy is two kinds of free will.
04:24:01 <elliott> I guess the proof is even a generalisation of the halting problem proof
04:24:27 <elliott> oh, and you can easily use the halting problem proof to prove it right okay.
04:26:37 -!- Sprocklem has joined.
04:31:58 <Jafet> These proofs are great, they're basically programming
04:32:19 <zzo38> OK, I can see Rice's theorem now on Wikipedia
04:32:43 <Bike> [something ignorant about coq]
04:37:54 <Jafet> The atmosphere at the time must have been something like a hacker meeting
04:38:30 <Jafet> "Now Kurt is going to talk about how we can break Hilbert's program, no matter how well it is patched"
04:39:31 <Jafet> "Of course, you can avoid this attack if you keep your system very simple"
04:40:14 <Bike> A proof that a program would be vulnerable no matter how much it was patched would be funny.
04:43:44 <Jafet> Continuous research since the genesis of the field has produced increasing experimental evidence for this proposition.
04:44:17 <Bike> that it would be funny?
04:45:40 <Jafet> On that note, why do hacker talks always sound like comedy acts
04:45:46 <zzo38> Experimental evidence is not perfect; only mathematics is perfect.
04:49:17 <kmc> this laptop fits in my trouser pockets which is rad
04:49:25 <kmc> it has a 900 MHz single core processor which is less rad
04:49:41 <kmc> Bike: do you know coq
04:50:39 <Bike> haha not even slightly
04:50:56 <Bike> calculus of qonstructions is all i know
04:51:48 <kmc> do you wanna learn
04:51:58 <Bike> i think i should learn a CAS first
04:52:22 <kmc> cause http://www.cis.upenn.edu/~bcpierce/sf/ is super fun
04:52:33 <Bike> plus my "'«interests'»" are more on the end of continous stuff
04:52:50 <kmc> it's a PL theory text in the form of an addictive puzzle game
04:52:51 <Bike> oh, free? well i can't turn that down
04:53:14 <kmc> also nice quotation marks
04:53:30 <Bike> gotta keep balanced
04:53:46 <kmc> you didn't tho
04:54:13 <Bike> what if my quotation mark is "any permutation of other quotation marks"
04:54:46 <elliott> I hear cpdt is better than sf for learning coq
04:55:00 <elliott> or at least mnoqy said something like that to me because he doesn't like the messy proofs in sf
04:55:06 <Bike> is cpdt an addictive puzzle game
04:55:25 <Bike> "in-progress textbook" yeah whatever
04:55:27 <elliott> will "written by a guy permabanned from #haskell" substitute
04:55:36 <elliott> what isn't in-progress these days
04:55:54 <Bike> well like, at least the hott book looks pretty.
04:55:57 <Bike> some things are important.
04:56:11 -!- sacje has joined.
04:56:13 <Bike> anyway i can use coq on random shit like the properties of linear recurrences mod a constant, right
04:56:30 <kmc> also arent all coq proofs messy
04:56:38 <kmc> on account of the tactics language being a crime againsst humanity
04:56:53 <kmc> whos permabanned from #haskell? smerdyakov?
04:57:04 <elliott> and well, have you seen the proofs in CPDT
04:57:06 <Bike> really not feeling y'all's reviews of this book
04:57:09 <elliott> they all look like "crush."
04:58:56 <Jafet> What's criminal about tactics
05:01:18 <kmc> i made a shirt for lexande that says "Beweis: klar. \qed" except the \qed is the proper LaTeX box
05:01:26 <kmc> so the coq version would be "Proof. crush... Qed."
05:01:37 <Jafet> They're a bunch of non-contextual commands arranged in an inscrutable sequence to manipulate hidden state in a manner only obvious to the original writer
05:01:41 <Jafet> So, just like programming
05:03:28 <Bike> $ ls sf/ \\ $ rmdir sf/ \\ rmdir: failed to remove 'sf/': Directory not empty <-- linux is great
05:03:44 <Jafet> alias rmdir='rm -r'
05:05:47 <Bike> "On the Unusual Effectiveness of Logic in Computer Science" oh, this sounds cute
05:06:06 <Bike> kind of hard to imagine it being as true as what it's named after, though
05:07:15 <Jafet> If you don't like coq, isar has logically structured proof syntax eg. "proof - have ?thesis by metis (...) auto qed"
05:08:06 <Bike> yeah, i did already. just thought the way that works out is kinda funny.
05:08:33 <kmc> allegedly the dot => hidden file thing was accidental
05:08:40 <kmc> like, they wanted to hide . and .. and were lazy
05:10:23 <kmc> alias ls=sl
05:12:37 <Jafet> Well actually, I alias it to l
05:12:58 <Bike> truly what problems can't be solved with enough alias commands
05:15:03 <Jafet> I wonder if you can make an alias for 'command'
05:15:26 <Jafet> Apparently you can
05:21:03 <zzo38> I do not have completely idea of what the Dungeons&Dragons spells I named should do; I only have partially idea.
05:22:17 <kmc> what are the names
05:24:03 <zzo38> I wrote them above, but I can repeat.
05:24:05 <zzo38> It is "Light of Gxxyuxihuvxi", "Curse of Gxxyuxihuvxi", "Blessing of Gxxyuxihuvxi", "Eye of Gxxyuxihuvxi", "Mouths of Gxxyuxihuvxi", "Tentacles of Gxxyuxihuvxi", "Random Contintency", "Quantum Entanglement", and "Quantum Teleportation".
05:25:10 <kmc> those are some good names for spells
05:25:15 <kmc> I hope you think of good spells for them
05:25:36 <kmc> who is Gxxyuxihuvxi?
05:27:52 <zzo38> The patron deity of my character.
05:28:26 <zzo38> I was thinking "Quantum Teleportation" would be something like quantum teleportation so you can just tell the signal to make the teleport, somehow
05:30:20 <zzo38> I also intended "Random Contingency" to be a bit like Contengency spell, you can make other spell contingent to a trigger, but using events you don't have control over and having random effects, but with some control over the casting of the spell, somehow; I am not sure how to make it, though.
05:38:36 -!- zzo38 has quit (Remote host closed the connection).
05:44:53 -!- Taneb has joined.
05:48:08 -!- sacje has quit (Ping timeout: 241 seconds).
05:49:22 -!- sacje has joined.
05:59:23 <shachaf> fizzie: Where are all your #esoteric graphs?
06:00:02 <shachaf> (Or anyone else, if you have a link?)
06:20:04 <fizzie> shachaf: http://zem.fi/ircvis/esoteric/
06:20:20 <fizzie> (Good timing, just woke up.)
06:26:06 <Fiora> huh. bike, kmc, and elliott mention me a lot (surppriiise)
06:26:23 <Fiora> or wait, maybe that's the other way around
06:26:27 <Fiora> that I mention them a lot.
06:30:27 -!- Bike_ has joined.
06:30:30 <Bike_> what if it's both...
06:31:54 -!- Bike has quit (Ping timeout: 264 seconds).
06:33:19 -!- Bike_ has changed nick to Bike.
06:34:25 <fizzie> The mention chart is hard to read.
06:35:45 <fizzie> I made a graph version (threshod the matrix with some value that leaves K ones, treat as an adjacency matrix of a digraph, render with graphviz) of it, but it wasn't so nice.
06:38:19 -!- sacje has quit (Ping timeout: 264 seconds).
06:41:16 -!- Bike has quit (Quit: journey!!).
06:53:42 -!- MindlessDrone has joined.
06:54:55 <shachaf> kmc: hm, do new episodes show up on netflix straight away, or how does one typically watch them
06:57:06 <kmc> i don't have netflix
07:05:46 -!- Taneb has quit (Remote host closed the connection).
07:09:10 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: achewoodlist: not found
07:41:24 -!- copumpkin has quit (Ping timeout: 276 seconds).
07:41:54 -!- copumpkin has joined.
08:08:52 -!- Sprocklem has quit (Ping timeout: 264 seconds).
08:15:10 -!- epicmonkey has joined.
08:15:28 -!- nooodl^ has quit (Ping timeout: 264 seconds).
08:34:39 -!- katla has joined.
08:51:02 -!- conehead has quit (Quit: Textual IRC Client: www.textualapp.com).
08:56:11 -!- conehead has joined.
09:05:05 -!- Taneb has joined.
09:12:27 -!- yorick has joined.
09:38:34 -!- Sgeo has quit (Read error: Connection reset by peer).
09:42:38 -!- Taneb has quit (Ping timeout: 240 seconds).
09:43:09 -!- conehead has quit (Quit: Textual IRC Client: www.textualapp.com).
09:43:12 -!- augur has quit (Ping timeout: 260 seconds).
09:44:12 -!- augur has joined.
09:47:00 -!- augur has quit (Remote host closed the connection).
09:47:26 -!- augur has joined.
09:47:54 -!- augur has quit (Read error: Connection reset by peer).
09:48:17 -!- augur has joined.
09:55:28 -!- Taneb has joined.
10:01:50 -!- nooodl has joined.
10:03:02 -!- nooodl_ has joined.
10:03:56 -!- nooodl has quit (Disconnected by services).
10:04:00 -!- nooodl_ has changed nick to nooodl.
11:15:26 -!- nooodl_ has joined.
11:15:36 -!- nooodl has quit (Ping timeout: 260 seconds).
11:32:47 -!- Phantom_Hoover has joined.
12:40:30 <Jafet> “A common way of setting a register to zero is XOR EAX,EAX or SUB EBX,EBX. The Core2 and Nehalem processors recognize that certain instructions are independent of the prior value of the register if the source and destination registers are the same.”
12:40:48 <Jafet> So this is what happens to your billion transistors
12:42:48 -!- Tod-Autojoined has joined.
12:44:25 <Fiora> I think that kind of feature's been around for a looong while? like since early OOE things if I remember right
12:44:45 -!- ka7la has joined.
12:45:05 -!- mnoqy has joined.
12:50:57 -!- katla has quit (Ping timeout: 246 seconds).
12:50:58 -!- TodPunk has quit (Ping timeout: 246 seconds).
13:39:35 -!- nooodl_ has changed nick to nooodl.
13:48:16 -!- carado has joined.
14:10:28 -!- nooodl_ has joined.
14:13:15 <Jafet> Heh, calloc doesn't actually zero out pages from mmap. Linux creates the pages on-demand. So calloc gives you memory that doesn't exist.
14:13:28 <Jafet> Benchmarking with -O3 is fun
14:14:30 -!- nooodl has quit (Ping timeout: 264 seconds).
14:16:57 -!- ka7la has changed nick to katla.
14:18:38 <Jafet> s/mmap/mmap\/sbrk/
14:27:00 -!- zzo38 has joined.
14:41:56 -!- zzo38 has quit (Remote host closed the connection).
14:50:03 -!- nooodl has joined.
14:50:16 -!- nooodl_ has quit (Ping timeout: 264 seconds).
14:53:56 -!- NihilistDandy has joined.
15:20:09 -!- Vorpal has joined.
15:22:27 -!- katla has quit (Remote host closed the connection).
15:33:04 -!- copumpkin has quit (Ping timeout: 256 seconds).
15:33:34 -!- copumpkin has joined.
15:44:28 -!- ap3x has joined.
15:46:04 -!- ap3x has left ("Leaving").
15:50:07 -!- katla has joined.
15:51:41 -!- Sprocklem has joined.
15:57:00 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net).
16:26:47 <olsner> hmm, X seems to have leaked a lot of memory ... went from ~100MB to 677MB after disabling swap
16:28:37 <olsner> (and why does nothing seem to display the amount of swap space used by a process?)
17:03:20 -!- katla has quit (Quit: Leaving).
17:05:09 -!- tswett has set topic: When the zetas fill the skies, will our leaders tell us why? | Хммм, тхис стуфф реаллы сеемс то ворк | 22nd IOCCC is open: http://ioccc.org/2013/rules.txt | jsvine is doing an esolang survey! https://docs.google.com/forms/d/1OvEsdBioOFcXFAiscO34kctUWKs3dWQs5-ZouXdwy9Q/viewform | http://codu.org/logs/_esoteric.
17:05:20 <tswett> The text I just added to the topic is, of course, in English.
17:10:47 -!- nooodl_ has joined.
17:14:30 -!- nooodl has quit (Ping timeout: 264 seconds).
17:32:29 <Deewiant> Anybody have an idea about how to ssh into a machine where creating a process doesn't work because of a low default ulimit?
17:33:06 <Deewiant> There's an sshd running, I have other ssh processes there
17:34:18 <tswett> Yeah, I dunno. My only ideas are "kill stuff" and "reboot it".
17:34:46 <Deewiant> I could kill stuff but I don't want to
17:35:54 <Jafet> You can also have fun with people by setting their login shells to false
17:35:54 <Deewiant> And I couldn't reboot it even if I wanted to because I don't have root
17:36:36 <Deewiant> I could raise the ulimit if I got in but I guess what I'd need to do here is remotely raise the ulimit of the sshd process
17:36:49 <Deewiant> And that doesn't seem particularly possible
17:37:00 <tswett> Ask the server's owner to do something?
17:37:34 <Deewiant> I doubt the admins are interested in a little request like this on a weekend evening
17:37:46 <Jafet> What is the default ulimit?
17:37:46 <Deewiant> (It's a machine on one of the clusters at work)
17:38:31 <Jafet> Why can't you start a shell with that.
17:38:45 <Deewiant> Because I'm running a thing that starts up more threads than that
17:49:29 -!- sacje has joined.
17:51:15 <fizzie> I had ulimit-process-etc-issues when running that tournament that one time, but I don't recall if I had any terribly clever solutions.
17:52:43 -!- heroux has quit (Ping timeout: 264 seconds).
17:52:50 <Jafet> Write a modern kernel
17:52:54 <fizzie> I did end up using a some really silly thing to get the process count down, but I didn't quite have a can't-login issue.
17:54:31 -!- heroux has joined.
17:57:35 <Jafet> Apparently, using 16G of swap in a user program causes X to segfault
18:00:03 <olsner> interesting... do you know why?
18:00:08 <Jafet> Sillier than RLIMIT_MPROC, fizzie?
18:01:54 <Jafet> Or, it could be the VBoxVideo driver, which also sucks
18:03:40 <Jafet> I guess vboxvideo_drv.so is not really prepared to handle thrashing.
18:06:48 -!- BlueShark has left ("Bye.").
18:10:16 -!- mnoqy has quit (Quit: hello).
18:27:09 <kmc> what's a pirate's favorite posix system call
18:31:40 <olsner> is the answer a very good/bad pun?
18:46:51 <kmc> it's a trick question because posix doesn't actually specify which things are system calls or library functions (or even macros???)
18:47:17 <olsner> I was just about to ask "hmm, does posix even have system calls?"
18:47:36 <Deewiant> fork(3p) at least mentions system calls, though only in the rationale
18:55:01 -!- MindlessDrone has quit (Quit: MindlessDrone).
18:58:36 -!- variable has changed nick to constant.
19:17:27 <fizzie> Jafet: There was a (low) hard limit forced by some PAM scheme, it's not like you could do much about that.
19:18:43 <fizzie> Jafet: IIRC, the silly thing was just that the soft limit (used by sshd) was a bit lower than the hard limit, so I had some form of ssh-reverse-tunnel-and-netcat thingie to start my tasks in a shell with the limit raised up to the hard one.
19:19:30 <fizzie> (Java creates quite a few threads when running; the limit was something very low.)
19:21:37 -!- oerjan has joined.
19:33:02 <fizzie> Do you folks happen to know/have the specs on ST3's (or ProTracker, I think it's compatible) vibrato effect? I mean, more than "vibrato with speed of x and depth of y"; in particular, what are the units of x/y. (AIUI, it's a direct adjustment to the "period" value, I guess at every tick? I guess I could try having a look at some existing module players.)
19:35:06 <fizzie> (Or is it really just an adjustment of [-y, y] directly?)
19:39:58 <Deewiant> ST3.DOC doesn't seem to say, but I guess you knew that since that's quoted from there.
19:40:30 <Deewiant> And TECH.DOC seems to have only file format stuff.
19:44:04 <fizzie> Yes, it's very confusing.
19:44:53 <fizzie> http://wiki.multimedia.cx/index.php?title=Protracker_Module#4xy seems to suggest it's at most +y (directly) to the period, and xmp's source seems to concur.
19:45:26 <fizzie> (Also that the speed is given so that on each tick, the vibrato position is incremented by x, and the full waveform is 64 ticks.)
19:49:13 <fizzie> (Except that IT manual says "old effects" (S3M-style mode) updates vibrato only on non-row ticks.)
19:50:19 -!- copumpkin has quit (Ping timeout: 264 seconds).
19:50:47 <fizzie> (Also the TECH.DOC explanation of mixing, esp. the posttable[...] stuff, looks really confuzzling.)
19:50:48 -!- copumpkin has joined.
19:56:13 -!- conehead has joined.
20:31:27 <shachaf> kmc: i found the mölkky game!
21:05:30 -!- mnoqy has joined.
21:07:29 -!- nortti_ has joined.
21:08:46 <nortti_> do you know any lighter-for-network way of remote IRC than ssh that would still be more secure than telnet?
21:11:31 <nortti_> this is coming trough, right?
21:14:17 <fizzie> I think people use mosh a lot for flaky connections.
21:14:36 <fizzie> Don't know about lightness, but it's got all that prediction stuff and aliveness-staying stuff.
21:15:31 <nortti_> does it work well over very bad latency?
21:15:42 <fizzie> I'm not a mosh user. But it's what it's designed for.
21:16:17 <fizzie> See http://mosh.mit.edu/ (if you can manage with that connection).
21:16:55 <elliott> you have to roll your own authentication if you don't want to use ssh though.
21:17:05 <elliott> (it uses ssh for auth only by default.)
21:17:40 <fizzie> Also, heh: there's a typo in Skaven's 2nd_reality.s3m. (Pattern 13, channel 4 starts with a "DD7" which, I think, should really be a D07 -- based on the fact that channel 5 has a D07 slide, and ST3 doesn't define a meaning for DD7.)
21:18:42 -!- epicmonkey has quit (Ping timeout: 264 seconds).
21:20:56 -!- epicmonkey has joined.
21:22:40 <olsner> oh, the source code to 2nd reality has been released: https://github.com/mtuomi/SecondReality
21:22:45 <olsner> apparently quite recently
21:24:08 -!- copumpkin has quit (Ping timeout: 260 seconds).
21:24:33 <fizzie> olsner: Yes, and there's an amusing "encryption"/obfuscation applied to the S3M files in that distribution. (Tried to use them first.)
21:24:36 -!- copumpkin has joined.
21:25:33 -!- epicmonkey has quit (Ping timeout: 256 seconds).
21:27:04 <fizzie> olsner: Basically, each byte of the packed-pattern data has been xor'd with v, where v is what you get when you take the offset of that byte modulo 256, for each set bit take the binary value 101 shifted so that the rightmost 1 is at the set bit, and then xor all those values together.
21:28:51 <fizzie> I have no idea. It could be just to discourage ripping off the songs from the demo, but it leaves all the S3M headers and such in place.
21:29:14 <fizzie> I mean, you still get an unplayable file, but it'd have been just as easy to apply the above to the entire file instead of just the pattern data.
21:30:05 <olsner> it's probably easier to do <whatever> to the whole file rather than change specific pieces of an S3M
21:30:11 -!- katla has joined.
21:32:33 <fizzie> (There's quite a lot of Finnish in file names there.
21:33:02 <fizzie> I'd say "less so in the comments", but I haven't really found any comments yet.
21:33:15 <olsner> the DESIGN file is almost entirely finnish
21:33:46 <fizzie> Grepping for /\* in *.c found a couple of comments in Finnish too.
21:34:13 <fizzie> It seems to be the "script".
21:41:40 -!- Luis1 has joined.
21:44:41 <olsner> looks like someone is making an android port of it
21:44:59 -!- atriq has joined.
21:45:41 -!- katla has quit (Quit: Leaving).
21:46:38 -!- Taneb has quit (Ping timeout: 240 seconds).
21:47:28 <fizzie> olsner: A faithful one or a "HD remake" kind of thing? (Though for the latter the sources are I guess mostly irrelevant.)
21:48:33 <olsner> faithful afaict, something like letting the demo code write to a frame buffer then blitting that to the screen in the "did someone press escape yet?" function
21:50:19 <fizzie> That sounds reasonably reasonable, except for all the inline asm.
21:50:33 <fizzie> (And out-of-line, too.)
21:50:38 <olsner> (according to the readme at https://github.com/Falken42/SecondReality)
21:52:01 <olsner> I guess you could just plop in qemu's x86 emulator (or rewrite those bits in C, or make an offline x86-to-c translator to run on asm bits)
21:54:01 <fizzie> From what I recall, Second Reality runs in dosbox up to some degree. (Don't know about ARM dosbox, though.)
21:54:19 -!- Luis1 has left.
21:54:50 -!- atriq has changed nick to Taneb.
21:55:18 -!- Taneb has quit (Quit: Leaving).
21:57:50 <fizzie> It's a scrying hame that out of the three Android DosBox ports, two cost money (DosBox Turbo, AnDOSBox) and one is kinda dead and slow (aDosBox).
21:59:24 <olsner> hmm, wikipedia says that "The demo used its own memory manager which accessed the MMU directly in a way which is not compatible with modern operating systems" ... but the code I've seen is plain real-mode
21:59:53 <olsner> "accessing the MMU" doesn't really make sense for x86 anyway
22:00:37 <fizzie> olsner: Well, it does talk some EMS, it might be what they mean.
22:01:11 <fizzie> (It's for the non-GUS music.)
22:02:17 -!- nortti_ has quit (Quit: got).
22:03:24 -!- epicmonkey has joined.
22:04:48 <fizzie> (Though "accessing -- directly" is quite a stretch for just calling int 67h.)
22:05:38 <fizzie> (In related news: fopen("*EMMXXXX0","rb"); -- kinda funny.)
22:11:13 <olsner> and apparently (http://en.wikipedia.org/wiki/Expanded_memory) early EMS implementations were in hardware (i.e. not-VM86-based), I had no idea
22:14:03 <fizzie> Oh yes, software EMS is very much just a cheat.
22:15:06 <fizzie> In particular, AIUI, there's quite a lot of copying involved in emulating the bank switching.
22:16:46 <fizzie> Hmm, Internet claims that the EMM386 approach is done by paging.
22:17:05 <fizzie> Possibly I'm remembering some older software EMS emulation.
22:25:35 <olsner> "OS/2 has no native computer viruses, and is invulnerable by design to native viruses due to the fact that it runs everything in a vm (virtual machine) mode, and all program data and caches exist in that virtual machine."
22:26:33 <fizzie> Someone needs to tag that [citation needed].
22:28:45 <fizzie> http://virus.wikidot.com/arelocs "Arelocs also known as Aep is one of a few viruses for IBM's OS/2 operating system. It is considered "the first known virus that affects OS/2 files in the 'right way'" as it writes itself to the file and modifies the NewEXE header and other system areas."
22:34:31 <olsner> finally a virus that affects the 'right way'
22:38:29 -!- epicmonkey has quit (Ping timeout: 248 seconds).
22:52:19 -!- nooodl has joined.
22:56:16 -!- nooodl_ has quit (Ping timeout: 264 seconds).
23:05:17 -!- conehead has quit (Quit: Computer has gone to sleep.).
23:22:04 -!- bicyclidine has joined.
23:38:57 -!- AndChat-469104 has joined.
23:40:08 -!- AndChat-469104 has changed nick to Bike.
23:41:25 -!- bicyclidine has quit (Ping timeout: 248 seconds).
23:45:19 -!- Bike_ has joined.
23:45:21 -!- Bike has quit (Quit: [spurious input; ignoring]).
23:45:40 -!- Bike_ has changed nick to Bike.