00:00:12 -!- shikhin has quit (Ping timeout: 244 seconds). 00:02:29 I can see how a universal set would do that, but I thought there is no such things as a universal set. 00:02:47 A set cannot contain itself 00:03:12 the consequences is that universal set would not be, by definition, a set 00:03:53 http://en.wikipedia.org/wiki/Aczel%27s_anti-foundation_axiom 00:03:56 -!- dmstor has joined. 00:04:40 -!- dmstor has left. 00:06:06 to be fair, i've only seen an attempt at actually using it in a really shitty biology paper. 00:07:04 I don't deal with sets so much 00:07:16 But I can do Array = [], Array[Array] := Array 00:07:30 er, Array := [], Array[Array] := Array 00:07:34 missed a : on the first one 00:07:48 ( := is the assignment operator in the language I am using for this demonstration) 00:07:49 Command "=" not permitted. 00:17:33 GeekDude: Not in the usual set theories, but this was a set theory with such a universal set. It was probably NFU. 00:19:09 NFU? 00:19:44 Apparently this stands for “New Foundations with Urelements”. See https://en.wikipedia.org/wiki/New_Foundations . 00:20:46 -!- AndoDaan has quit (Ping timeout: 276 seconds). 00:21:00 My brain is frying here 00:21:14 I'm not too well versed in set theory 00:21:18 of any kind 00:23:13 I brought it up because there was already talking about the fact that if you take a different foundation, different axioms, you can get very different properties from what you’re used to. So I decided to give another example I’d heard of. 00:31:08 I need to write a simple PRNG, and am limited to only using integers between negative and positive 524287 00:32:13 A linear congruential generator sounds like it could work 00:32:29 with a small multiplier and increment 00:34:15 yeah, that should be easy. 00:34:59 724 for the modulus, that's roughly the square root of the max int limit 00:35:24 then perhaps something like 483 for the multiplier 00:35:35 and 238 for the increment 00:35:41 unless I'm completely misunderstanding the point 00:36:16 I could stuff a larger range of values in there I guess 00:36:33 hopefully you are not using this for crypto 00:36:37 nooooo way 00:36:47 who gives a damn then 00:36:58 I need values that look vaguely random 00:37:15 i had a school project last week where i got entropy by counting up until the user hit a button, #yolo 00:37:22 lol 00:37:42 no clock value you could mooch off? 00:39:15 that's basically what i was doing. didn't feel adventurous enough to figure out how to get at the oscillators directly 00:39:59 I've heard a last ditch effort for medium quality entropy is to ask the user to mash the keyboard 00:41:23 That's practically begging for bad entropy. 00:41:40 lol 00:41:46 you need high quality users 00:41:55 and maybe a blindfold 00:41:56 type without rhythm so as not to attract the worm. 00:42:01 Ah, "values that look vaguely random" though. 00:42:29 I hear the low bit of rdtsc is good enough. 00:43:42 rdtsc? 00:44:01 cycle counter on x86. 00:44:26 I'm not even close to using x86 though 00:44:44 Well then, that's a terrible idea. 00:44:49 I'm using BASIC on a 3ds 00:45:05 ... For a class project. 00:45:12 Is it SmileBASIC? 00:45:14 BASIC. On a 3DS. 00:45:16 Kay then. 00:45:26 zzo38: yes it is 00:45:29 the class project was me, geekdude might be doing some other shite 00:45:35 I know you can run SmileBASIC on 3DS, but it isn't really like BASIC; there are many differences too. 00:45:38 Bike: Oic 00:45:48 ¯\_(ツ)_/¯ all the variants have their giant quirks 00:45:52 me, i was doing a simon says game. security, of course, is paramount 00:46:20 Of course. 00:46:29 Someone might use it to choose passwords, or crypto keys. 00:46:46 I'm doing fractal trees 00:46:53 well, not really fractal 00:46:59 there was actually that pretty funny deniable encryption thing, but it used a game more like DDR 00:47:01 recursive trees 00:47:21 If it's self-similar it's fractal. 00:47:30 ARM has a cycle counter register, looks like 00:47:37 i imagine something is accessible on the 3ds 00:47:55 I just about guarantee that SmileBASIC does not expose that though. 00:47:55 The branches resemble eachother in that they each have two sub branches (although at psuedo-random angles) 00:48:02 so that's uh, four bytes of entropy, hooray 00:48:03 pikhq: sadly not 00:48:18 do like old dos basic, just write instructions into the memory space 00:48:23 as previously mentioned, #yolo 00:48:38 Bike: If SmileBASIC works like that then some hackers are gonna be very happy. 00:48:57 oh, this is an official product. 00:49:01 'tis 00:49:02 Yes. 00:49:12 there's a new version coming out very soon to the US 00:49:14 should be loads better 00:49:17 i know some emulator people now so i just assume all game systems are cracked. 00:49:20 and it will support 3d output 00:49:25 It's, uh, the BASIC variant in the PetiteComputer thing? 00:49:33 yeah, Petit computer 00:49:44 Sadly not really. The DSi is only tenuously cracked, and the 3DS is utterly uncracked at this point. 00:49:50 "Also, you can utilize data in your program from the built-in accelerometer, gyro-sensor, microphone and the circle pad. Get the most out of potential of Nintendo 3DS!" 00:49:53 *And* it's got fucking region locking! 00:49:56 Sounds like entropy to meeeee 00:50:03 Bike: that's in the new version though 00:50:06 not released to the US yet 00:50:16 And the DSi and 3DS are region locked. 00:50:17 i live on the edge 00:50:18 I'm using the DSi version 00:50:21 Because Nintendo hates people. 00:50:25 ..........of the US and europe 00:50:41 I would think it would be better to do differently, if instead it has a Forth interpreter built-in (rather than being external software), with a virtual machine that you can access the full address space of (you don't need to access address space outside of the VM) 00:50:50 i wonder how good the accelerometer is. i tried my phone's and it was one hell of a hot mess 00:50:51 The original Nintendo DS is not region locked. 00:50:54 pikhq: I think this is more of a SmileBoom thing, they have to translate everything into english, and make sure it still works 00:51:17 GeekDude: The thing is, though, if the platform weren't region locked you could at least *run* foreign software. 00:51:19 then they plug their PRNG into a countdown timer 00:51:26 It might not be in a language you speak, but still. 00:51:40 I do have one foreign game card on my Nintendo DS 00:52:14 http://smilebasic.com/en/image/ss-story-help-4.png wow, it's like i'm really on my TI 00:52:37 I get "TIME$" and "DATE$" as my only two time sensitive inputs 00:52:46 Bike: it looks like a shitty dos game 00:52:58 that amazing font!!! 00:53:06 I still write games on DOS sometimes 00:53:18 I'm doing this http://i.imgur.com/ryhFSIA.jpg 00:53:28 but imagine green and brown, and more branches 00:53:42 oh, it's like an l system. 00:53:46 or... something. 00:53:47 it actually is 00:53:52 I've implemented an L system 00:54:05 #nailed it 00:54:19 though, two of the operations include "and add a random number" 00:54:31 so YMMV as to reproducability 00:54:31 nuthin wrong with a lil stochasticism. 00:55:29 RAND = (433*RAND + 238) % 724 00:55:33 woo, 'random' 00:55:46 nsa gonna hack ur l system 00:56:23 idgi. wouldn't that have a period of at most 724 00:56:37 lol 00:56:52 I said 'vaguely random' 00:57:05 no, that's true, you might as well use the largest modulus you can. 00:57:13 ¯\_(ツ)_/¯ 00:57:23 I'm not sure how stack overflow is handled 00:57:29 it says values larger than the max limit are "ignored" 00:57:32 stack?? 00:57:41 There is not stack 00:57:43 no* 00:57:52 er 00:57:54 you just said stack overflow, did you mean numeric overflow. 00:57:55 integer overflow* 00:58:12 right, well, just find a prime around 500000 and call it good. 00:58:17 My head is on slightly crooked 00:58:29 "Ok google, closest prime to five hundred thousand" 00:58:41 er... well i don't remember the requirements... they're on wikipedia. 00:58:58 http://www.wolframalpha.com/input/?i=prime+near+50000 the future is great 00:59:49 * GeekDude needs to test integer overflow first 01:00:09 ah 01:00:17 seems to just print "overflow" and ignore the command 01:00:41 I need to do two commands then I think 01:00:49 one to multiply and the other to do other things 01:02:02 RAND = 483 * RAND:RAND = (RAND + 238) % (LIMIT - 238) 01:02:07 that would work I think 01:02:15 : is the command delimiter thing 01:02:18 like ; in C++ 01:02:47 what's LIMIT? 01:02:58 the maximum integer size 01:03:06 In BASIC a colon can be used for multiple commands in one line; otherwise line breaks delimit multiple commands. 01:03:07 in this case, roundabout 524287 01:03:25 hey zzo38, I'm starting up a SmileBASIC channel if you wanna join 01:03:28 It is different than in C and C++, where a semicolon marks the end of a statement, regardless of line breaks 01:03:37 well, a new SmileBASIC channel 01:03:43 the other one was on EFNet and only had 2 people 01:03:45 GeekDude: I saw your invitation, and no I don't have any Nintendo 3DS 01:03:47 me and 01:03:49 aww 01:04:00 Where'd you learn about SmileBASIC? 01:04:05 or was that just google talking 01:05:10 i think every random number you generate will be 1 (mod 3) 01:05:27 I like to program Famicom though 01:05:52 -!- AndoDaan has joined. 01:05:53 I did learn about SmileBASIC from a message on NESdev I think. 01:06:00 I do not remember. 01:06:22 because 3 | 524287 - 238, and 3 | 483, so your formula mod 3 becomes just (0r + 1) = 1 01:07:15 I'm not sure I'm following 01:09:24 256 * 1024 is the max integer limit 01:09:28 er 01:09:31 512 * 1024 01:09:51 so if I use a multiplier just below 512, I can use a max of just around 1024 01:11:32 -!- copumpkin has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…). 01:13:12 IF RAND<1024 THEN RAND=RAND*503 01:13:12 RAND=(RAND+9203)%1024 01:13:22 That should be overflow free, and users primes for both M and C 01:13:29 er, a and c 01:13:34 m is 1024 01:14:04 multiples of two for m is standard 01:18:19 this seems to be working fairly okay 01:18:58 There is an actual PRNG on here, but I can't seed it 01:19:01 Famicom even has two game pads, microphone, keyboard, drawing tablet, light gun, tape recording, stereovision, dance mat, and more other things. 01:20:11 What's up with the connector port on the bottom? 01:20:26 at least, on the USA NES 01:20:36 The NES connector port was going to be used for the NES disk drive, but they never released that. 01:20:48 It connects also to the cartridge port and a few other things; it isn't very useful. 01:21:17 And not all versions of NES even have such a port anyways. 01:21:33 Perhaps the most useful thing to do with it would be to jumper the cartridge port lines and the sound lines, and then mod a Famicom adapter to put the sound lines on those pins. 01:22:11 (the Famicom had a sound line on the cartridge port; on the NES, this was moved to the expansion port. Unfortunately, Famicom games *actually used* the sound line.) 01:22:49 Sound input, output, or both? 01:23:32 Output. 01:23:53 and the famicom games used this for... ? 01:23:54 Actually, the Famicom has both. 01:23:57 I can't think of a goo use case 01:24:01 good* 01:24:10 Better synthesizers on the cartridge. 01:24:20 The FDS itself used this feature. 01:24:26 If you decide the output, can't you just use local feedback? 01:24:26 The audio goes through the cartridge; usually it is just a wire or mixed with extra audio on the cartridge, and another pin goes that to TV set. 01:25:02 zzo38: Ah. 01:25:09 I thhought it was mixed in the console. 01:25:59 -!- tromp_ has joined. 01:26:12 But yeah. The Famicom sound hardware was somewhat limited, and having an extra synth on the cartridge bought you a lot of extra power. 01:26:50 Least it's not as limited as the poor 2600 was. 01:28:02 I still think super famicom was where it was at 01:28:23 -!- tromp__ has quit (Ping timeout: 240 seconds). 01:28:27 It was overall a pretty awesome system. Crazy to emulate though. 01:29:11 Cartridges on there can bus master. 01:30:06 Emulating heterogenous multiprocessing like that is such a pain. 01:30:33 opencl to the rescue 01:31:02 I don't like Super Famicom; I like Famicom. 01:31:14 Bike: Doesn't help that much here. 01:31:36 It's shared memory heterogenous multiprocessing. 01:32:04 This is about where most people start sobbing. 01:32:20 Famicom is faster than Commodore 64, too. 01:33:18 By about 700kHz, sure. 01:33:52 I am even writing a Z-machine interpreter on Famicom. I designed a custom mapper for this purpose; I have the description of it if you want it. 01:34:02 Spiffy. 01:34:22 That's almost as awesome as the SCUMM interpreter on Famicom. 01:34:24 Infocom never did, but they did it on Commodore 64. However, looking at their codes they did many things slow. 01:36:30 The mapper I use is pretty unusual (although it can be made using a few 74xx series): For one thing, the story file is stored on a separate ROM chip, which is bankswitched two bytes at a time, and the 64K RAM in the cartridge is bankswitched one byte at a time. For another, the registers overlap mirrors of the Famicom's internal RAM. 01:37:01 pikhq: famicom SCUMM interpreter? 01:37:06 how's the audio? 01:38:08 Only thing that uses it is the official port of Maniac Mansion, so a bit hard to judge. :) 01:38:27 (I don't know any other mapper with such small bank sizes, or with registers overlapping the mirrors of internal RAM.) 01:50:08 hmm 01:50:18 My random number generator, expectedly, is quite bad 01:50:26 a small seed starts off with a small input 01:50:32 er, small starting random values 02:14:01 -!- Sorella has quit (Ping timeout: 244 seconds). 02:30:25 Another possible random number generator is ARCFOUR, which is what SQLite uses. 02:32:50 Finally found some good values for my random 02:34:09 IF RAND < 515 THEN RAND = RAND * 1018 02:34:10 RAND = (RAND + 1018) % 515 02:34:27 gives pretty good results 02:34:40 though... 02:34:46 now that I think about it it's always less than 515 02:35:19 actually, I think I have an overflow opportunity here too 02:35:25 I might try choosing a slightly lower coprime pair 02:35:32 or a slightly lower multiplier 02:36:10 -!- tromp__ has joined. 02:37:53 -!- SvenGek has quit (Quit: [Quit: [Quit: SvenGek] [Quit: SvenGek]]). 02:38:27 -!- tromp_ has quit (Ping timeout: 258 seconds). 02:40:15 ah 02:40:18 nope, I'm good 02:41:03 1018+514*1018 == 524270, which is less than 524287 02:44:23 What's the feature known to be introduced in new NetHack/ 02:46:14 -!- boily has joined. 03:02:07 -!- AndoDaan has left. 03:03:48 Sgeo, you can offer the amulet to moloch now or something 03:12:28 That can't be a win, can it 03:12:42 What happens? 03:30:12 -!- coppro has quit (Ping timeout: 258 seconds). 03:30:55 -!- coppro has joined. 03:32:17 How can you win an infinite collection of envelopes (the first containing $1, the second having $2, the third having $3, the fourth having $4, etc) from "Let's Make a Deal"? 03:34:15 you can't, there isn't an infinite number of envelopes to win 03:34:26 or would that be an arent 03:34:28 anyways, https://db.tt/NPeEG7ml 03:34:56 what's an arent? 03:34:57 And the output, http://i.imgur.com/unpvLzV.jpg 03:35:53 night all 03:36:09 GoodnightkDude! 03:36:11 Where would you keep all of them? In a black hole? Possibly it won't fit even in a black hole. Also, they would add up to a negative number. 03:36:47 wasn't there a "proof" out there about adding up all the positive integers equals -1/12? 03:36:50 i'm not sure the world financial system is down with ramanujan summation. 03:36:57 Yes, I have seen that 03:37:03 That it add up to -1/12 03:37:25 Bike: But the world financial system is not infinite. 03:37:28 ramanujan and... i think cesaro? give you -1/12 03:37:57 oh, no it's not cesaro summable. 03:38:07 Isn't that the one where you take averages? 03:38:16 Yes. 03:38:27 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 03:38:33 I say all positive numbers are, on average, about five. 03:38:45 (trust me, I'm an engineer.) 03:38:48 I don't think so. 03:39:18 you know what's weird? the erdos-kac theorem 03:39:54 -!- mauris has quit (Ping timeout: 246 seconds). 03:40:08 wikipedia even says "randomly chosen large integer". 03:41:54 that is strangely fascinating. 03:42:17 eh, any integer is gonna be about five anyway. 03:43:36 that's what I said, but zzo38 is being mean. *pfbfbfbfbt* 03:43:53 c'mon zzo, they're an engineer! they know all about numbers. and five. 03:45:30 me, i've never even seen a number in person, to be perfectly honest 03:45:45 Being an engineer is not quite good enough 03:46:08 It also mean, you need to be mathematician, and you also need to prove it, too. 03:46:29 IANAMAA. 03:47:13 http://existentialcomics.com/comic/36 03:47:40 -!- AndoDaan has joined. 03:48:39 Bike: :D 03:51:30 'night all! 03:51:45 -!- boily has quit (Quit: CHILLING CHICKEN). 04:01:25 "P.S. I can't end the post without sharing my favorite self-reproducing program: the one-line shell script #!/bin/cat." 04:02:21 -!- copumpkin has joined. 04:03:31 Sgeo: Sadly, not a shell script and won't work on all POSIX systems. 04:03:45 However, this one will: cat "$0" 04:07:42 Can't tell anything about a .zip file until the entire .zip file is loaded, but can quickly make changes 04:08:15 Although, the latter seems irrelevent... a central header should be sufficient these days, right? Since central footer mostly makes using floppies easier? 04:10:21 Puting the list at the end may also make it easier to write through a pipe in some cases (although might be more difficult to read), and possibly for cheating at Day of Zeux. 04:11:50 The footer of the .zip file is strictly necessary. 04:12:19 That's the only part of the file that most anything looks at first. 04:12:42 Day of Zeux? 04:13:04 Wait, .zip the Z-Machine format? 04:13:08 -!- Sorella has joined. 04:13:13 I meant sufficient in the sense of, if .zip were redesigned with modern requirements in mind, would we still want to place the directory data in the footer 04:13:46 The extension .zip (sometimes also .dat) is also used for Z-machine files, although this is not recommended due to confusion with ZIP archive files. 04:13:47 Oh. Yes. We would not do so at all. 04:13:58 -!- Sorella has quit (Changing host). 04:13:58 -!- Sorella has joined. 04:14:14 As evidenced by how ZIP is nearly unique in that property. :) 04:15:15 * Sgeo goes to read the DEFLATE spec 04:15:45 DEFLATE is a moronic and insane file format with equal parts weird microoptimization and utterly pointless redundancy. 04:16:40 Frankly, I'm pretty sure Phil Katz was drunk when he made it. 04:17:11 Is ZPAQ better then? 04:18:18 From what I know, it's a bit absurd in the sheer flexibility of the format, but it sure seems better designed. 04:19:05 o.O 04:19:28 (for those who don't know, ZPAQ is literally a compression format that specifies a VM for decompression algorithms.) 04:19:43 Ooh that sounds fun 04:20:07 I'm going to go read that instead even if no one uses it 04:20:46 Yep. It's not a common format, but it's certainly a unique design for a format. 04:21:35 I don't entirely like all the way that the VM in ZPAQ works; it requires more than one VM as well as a few other things. What I think would be good way, is the archive file is a memory image for a "Decompression Computer"; the decompression program then loads te memory image and emulates the Decompression Computer. The data on the output port is then treated as a tape archive. 04:22:56 But yeah. ZIP was devised by an alcoholic and it shows. :( 04:24:34 O, and I would then have Huffman-encoded instructions, and many of the instructions implement important parts of decompression algorithms and other high-level stuff too; it is a very CISC computer. 04:26:33 Also the output has to be made, it be set to go to a buffer or to stdout. (It could also have stdin, which is going to be used for encryption.) 04:48:02 -!- weissschloss has quit (Remote host closed the connection). 04:49:13 pikhq: Looks like adding data can get corrupted if there's a hash collision in SHA1? 04:50:49 ^^probably not relevent 04:52:10 -!- weissschloss has joined. 04:52:25 Although SHA1 is disliked these days, isn't it? 04:53:24 Yes, there's theoretical exploits against it that weaken its collision resistance. 04:54:11 GNU C is getting a bit slow even when I didn't turn on the optimization 04:54:18 Though strictly speaking it's not attackable in practice yet to our knowledge, it's to the point that you should really move away from it *now* so you don't get caught with your pants down. 04:54:52 Is it necessary to tell it to turn off the optimizations? 04:55:12 pikhq: is ZPAQ updatable to make dedup reliant on SHA-256 instead? 04:55:17 I do not know. 04:56:07 :( at C++ API... so many lesser known programming languages can talk to C but not C++ 04:57:27 Can you use it in C++ if you use a extern "C" block to load them? 04:58:44 "time gcc -g -O0 -o nanozil nanozil.c" says it is 15 seconds 05:00:00 pikhq: so... this model stuff... would it make sense to, say, make a specialized Brainfuck model to compress more easily brainfuck code? 05:00:18 Which presumably could then be decompressed with any compliant ZPAQ decompressor 05:00:50 Sgeo: Things like these are some of things I have wanted to do, too 05:04:09 "To mark the end of the data, each decoded byte 05:04:10 is preceded by a EOS (end of segment) bit, which is 1 after the last byte, coded with p1 very near 0. " 05:04:31 So, is it possible that a model that makes a strong prediction but gets it wrong confuses the decompressor? 05:08:25 Clearly, the optimization I have implemented is broken. 05:11:03 This is the input file: http://sprunge.us/JIdV This is output with optimization turned off: http://sprunge.us/TPAM This is output with optimization turned on: http://sprunge.us/SXPa 05:13:07 -!- Guest15560 has quit (Ping timeout: 245 seconds). 05:17:05 I suppose it is to be expected; I didn't test it until now. 05:17:49 Can you help me to fix it? 05:23:39 I added #ifndef OMIT_OPTIMIZATIONS and -DOMIT_OPTIMIZATIONS for now; it causes GCC to run much faster now. 05:26:13 -!- AndoDaan_ has joined. 05:29:09 -!- AndoDaan has quit (Ping timeout: 260 seconds). 05:30:15 -!- conehead has joined. 05:39:45 -!- conehead has quit (Quit: Computer has gone to sleep). 05:51:58 -!- augur has quit (Quit: Leaving...). 05:55:15 -!- conehead has joined. 06:04:19 I should stop being surprised when this Celtic music sometimes sounds Enya-esque 06:07:15 -!- shikhin has joined. 06:07:21 -!- shikhin has quit (Client Quit). 06:07:39 -!- shikhin has joined. 06:15:50 -!- augur has joined. 06:23:14 -!- password2 has joined. 06:27:33 -!- Patashu_ has joined. 06:27:34 -!- Patashu has quit (Disconnected by services). 06:27:39 -!- Patashu_ has changed nick to Patashu. 07:04:42 -!- Lymia has quit (Remote host closed the connection). 07:04:48 web.test: points 2.17, score 22.16, rank 14/47 07:05:52 is that a way to submit programs via the web 07:06:09 Yeah, http://zem.fi/bfjoust/ at the bottom 07:06:21 I just made a mistake submitting it for real. 07:07:10 web.test: points -46.00, score 0.00, rank 47/47 (-33) 07:08:16 -!- password2 has quit (Quit: Leaving). 07:08:51 !bfjoust BeatYouMate >(-)*6>(+)*7>-(+)*17>(-)*12>(+)*8>(-)*7>(+)*8>(+)*3>[(-)*7[+]]>>[(+)*7[-]]>>([(+)*14[-]]>)*3([(-)*14[+]]>)*3[(-)*7[+]]>>[(+)*8[-]]>>([(+)*14[-]]>)*3[(-)*14[+]]>[(+)*14[-]]>[(-)*16[+]]>[(-)*7[+]] 07:08:51 AndoDaan_.BeatYouMate: points 2.38, score 22.40, rank 13/47 07:09:03 -!- password2 has joined. 07:11:46 !bfjoust BeatYouMate <>< 07:11:46 AndoDaan_.BeatYouMate: points -46.00, score 0.00, rank 47/47 (-34) 07:11:55 -!- AndoDaan_ has changed nick to AndoDaan. 07:11:59 !bfjoust BeatYouMate >(-)*6>(+)*7>-(+)*17>(-)*12>(+)*8>(-)*7>(+)*8>(+)*3>[(-)*7[+]]>>[(+)*7[-]]>>([(+)*14[-]]>)*3([(-)*14[+]]>)*3[(-)*7[+]]>>[(+)*8[-]]>>([(+)*14[-]]>)*3[(-)*14[+]]>[(+)*14[-]]>[(-)*16[+]]>[(-)*7[+]] 07:11:59 AndoDaan.BeatYouMate: points 2.95, score 22.58, rank 13/47 (+26) 07:13:24 web.DeadFish: points -46.00, score 0.00, rank 47/47 07:14:03 oh jousting 07:14:12 Indeed. 07:17:09 penile jousting 07:25:11 -!- Tod-Autojoined has changed nick to TodPunk. 07:30:59 -!- oerjan has quit (Quit: More like piscile). 07:48:50 -!- conehead has quit (Quit: Computer has gone to sleep). 07:54:53 "Every compressor that can compress any input must also expand some of its input. However, the expansion never needs to be more than one symbol. Any compression algorithm can be modified by adding one bit to indicate that the rest of the data is stored uncompressed." 07:55:01 I wonder how many people fail to consider that last part 08:29:21 [wiki] [[Special:Log/newusers]] create * MaurineWooten * New user account 08:41:38 -!- drdanmaku has quit (Quit: Connection closed for inactivity). 08:48:36 -!- shikhin has quit (Quit: Lost terminal). 08:49:07 -!- shikhin has joined. 09:04:48 Sgeo: i would imagine that any compression algorithm worth its salt would include that logic, or something equivalent to it? 09:05:54 quintopia: most compression algorithms include similar logic, but not exactly that strict, so they might expand strings by slightly more than one symbol 09:08:38 b_jonas: depends on how you define symbol :P but yeah, I'd expect them to at least expand no input by more than a constant 09:09:09 quintopia: they don't usually do that, because they want a streamable compression (with very large buffer), 09:09:37 so eg. if the first gigabyte of the input is uncompressible, they write that first gigabyte uncompressed with a length marker before reading the second gigabyte 09:09:44 so you get expansion by a small constant factor 09:10:06 they don't want to have to read the whole input to decide whether to use a constant long marker marking that all the data is uncompressible 09:10:29 b_jonas: not all compressed data needs to be streamed. for streamable data, i expect each encoded unit to expand by no more than a constant 09:11:19 sure, not all, but all the compression methods for very long input are. there's methods for limited sized inputs, where obviously the input extends only by a constant for any encoder with finite state. 09:13:12 in practice, the important part is that the compression doesn't expand the input by too much 09:14:36 also note that some compressions, such as gzip (zlib with the gzip header), are defined as concatenatable: if you concatenate two compressed outputs, you can decompress them as the catenation of the two inputs. that already precludes the compressor being able to compress with just a constant marker at the end, because after such marker it couldn't find where you concatenate the next gzip file. 09:14:48 presumably this was useful for casette tapes. 09:20:21 it doesn't preclude that each of the two parts that were concatenated has only a constant tag 09:26:16 quintopia: it does 09:26:39 quintopia: if there's a constant tag that quotes all the rest of the file, then you can't recognize where that file ends and the next compressed one starts 09:27:15 quintopia: this works even if the form of the constant length quote tag varies as long as you can quote any input with a constant length prefix tag 09:41:33 -!- impomatic_ has joined. 09:56:55 -!- Phantom_Hoover has joined. 10:16:48 -!- Lymia has joined. 10:16:50 Opps! 10:29:46 IDSPISPOPD 11:06:56 -!- Sorella has quit (Ping timeout: 260 seconds). 11:21:55 -!- evalj has joined. 11:56:55 -!- shikhout has joined. 12:00:13 -!- shikhin has quit (Ping timeout: 260 seconds). 12:14:22 -!- password2 has quit (Ping timeout: 240 seconds). 12:20:47 -!- GeekDude has joined. 12:46:12 b_jonas: not if the constant tag encodes the length of the file 12:46:27 -!- AndoDaan_ has joined. 12:47:14 quintopia: sure, but then it's no longer constant 12:47:27 b_jonas: with the qualification of course that "any length" is upper bounded by a constant 12:48:21 -!- AndoDaan has quit (Ping timeout: 246 seconds). 12:48:23 yeah 12:51:28 -!- AndoDaan_ has quit (Read error: Connection reset by peer). 12:51:47 -!- AndoDaan has joined. 12:53:50 -!- boily has joined. 13:00:17 -!- Patashu has quit (Ping timeout: 245 seconds). 13:02:28 Best webdesign: phone number form can't be tabbed out or moved within with cursor keys (part of input validation, apparently) and the submit button fires a jQuery $.ajax request with only a "success" handler, which proceeds to fail (20-second timeout) and leave the page to a "please wait" + spinning thing mode. 13:04:08 fizzie: yeah, typical 13:04:31 -!- FreeFull has quit (Quit: BBL). 13:07:37 -!- Sorella has joined. 13:08:29 -!- Sorella has quit (Changing host). 13:08:29 -!- Sorella has joined. 13:09:07 lol 13:09:22 Why would you need jquery to submit a form? 13:10:45 [wiki] [[Special:Log/newusers]] create * MarylinYagan * New user account 13:11:18 HackEgo: help 13:11:24 pfft 13:14:46 It's one of those multi-step "wizard"-style forms, except it's just the one page and they move from step to step with scripts that do ajax requests and populate the later steps based on the results, then animate fancy side-swipe things to move to the next step. 13:15:01 T_T 13:15:56 * GeekDude wonders if you could do it with a complicated css script that relies on the status of check boxes to hide or show other elements 13:20:37 fizzie: stupid 13:20:50 GeekDude, my guess? "Yes, but don't" 13:20:57 lol 13:21:02 I want to do it for the lulz 13:21:05 Which, this being #esoteric and me being me, I'll give it a go this evening probably 13:21:13 I don't know enough CSS though 13:22:36 GeekDude, can you send me a @tell to remind me? I'm heading out now 13:22:41 uhh 13:22:44 I can send youa mmemo 13:22:46 memo* 13:22:49 with memoserv 13:22:57 Or a tell with lambdabot 13:23:03 @tell GeekDude like this 13:23:04 Consider it noted. 13:23:05 I don't know these bots 13:23:17 ah 13:23:18 okay 13:23:55 @tell Taneb GeekDude wonders if you could do it with a complicated css script that relies on the status of check boxes to hide or show other elements 13:23:55 Consider it noted. 13:46:52 -!- Sorella has quit (Ping timeout: 245 seconds). 13:47:06 -!- AndoDaan_ has joined. 13:47:54 -!- AndoDaan has quit (Ping timeout: 244 seconds). 13:48:52 -!- AndoDaan_ has changed nick to AndoDaan. 13:50:19 GeekDude: the bots are our leaders. 13:50:23 @metar CYUL 13:50:24 CYUL 281300Z 25010KT 15SM FEW240 18/15 A3013 RMK CI1 CI TR SLP202 DENSITY ALT 200FT 13:51:00 I lead a guy on for a minute or two by copy and pasting into my IRC client. He though he had shell access on my bot 13:51:26 -!- paul2520 has joined. 13:52:47 -!- password2 has joined. 13:54:39 hunter2? 13:56:37 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 13:58:41 -!- GeekDude has joined. 14:05:22 [wiki] [[Object oriented thue]] http://esolangs.org/w/index.php?diff=40548&oldid=40515 * 4D enthusiast * (+139) /* stdio */ Simplified escpe codes, and made the description mroe explicit 14:09:29 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 14:11:12 @metar LOWI 14:11:13 LOWI 281350Z VRB03KT CAVOK 25/13 Q1024 NOSIG 14:13:13 -!- password2 has quit (Ping timeout: 244 seconds). 14:15:53 -!- GeekDude has joined. 14:22:14 @metar FLKK 14:22:15 No result. 14:23:27 @metar FBSK 14:23:28 FBSK 281400Z 04011KT CAVOK 33/00 Q1011 NOSIG 14:23:40 ah, there's at least one! 14:23:53 (also, 33/00? what the fungot is that?) 14:23:53 boily: trouble with memory. i see things i never knew. my father secured me a place in an upper room of sabin's tavern near the docks along the southerly part of the strictly imaginative writing of the middle ages, and the 14:24:11 fungot: ah, trouble with water memory. I see. 14:24:11 boily: millennially fnord substance and a very much smaller polyhedron of unknown colours and rapidly shifting surface angles seemed to take place. yet some quality about it disturbed me almost as poignantly as its noxious cause i beheld in the misty sky above the waves. 14:24:42 -!- sebbu has changed nick to sebb. 14:24:44 fungot: trouble with fnord substance pollution causes botswana's relative humidity to drop. 14:24:44 boily: worst of all, the victim was a writer and painter wholly devoted to this form is the living writer fnord level, whose very brief episodes have lent themselves so readily to theatrical fnord in the form of charles le sorcier!' 14:24:59 fungot: I can see clearly now the rain is gone 14:24:59 GeekDude: then, in the great mausoleum he built near the church as in the macabre posthumous novel dr. grimshawe's secret. i looked down upon the calm placid face lined with sorrow, stood by as i shouted my demands to be laid within the tomb, near the gate of deeper slumber. 14:25:08 -!- sebb has changed nick to sebbu. 14:40:13 -!- SvenGek has joined. 14:41:38 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 14:43:22 -!- scounder_ has changed nick to scounder. 14:43:34 -!- scounder has quit (Changing host). 14:43:35 -!- scounder has joined. 14:46:55 @metar EFHK 14:46:56 EFHK 281420Z 21014KT 9999 FEW045 BKN200 15/10 Q1009 NOSIG 14:47:23 Better than the 01/M01 from the beginning of the week, at least. 14:54:52 -!- boily has quit (Quit: APERIODIC CHICKEN). 14:58:10 -!- AndoDaan has quit (Ping timeout: 250 seconds). 14:59:06 -!- AndoDaan has joined. 15:14:44 -!- GeekDude has joined. 15:14:47 -!- evalj has quit (Ping timeout: 245 seconds). 15:27:15 -!- Phantom_Hoover has quit (Remote host closed the connection). 15:34:19 [wiki] [[Mang]] N http://esolangs.org/w/index.php?oldid=40549 * 204.88.29.130 * (+1432) create page 15:46:01 -!- Sorella has joined. 15:46:49 -!- Sorella has quit (Changing host). 15:46:49 -!- Sorella has joined. 15:49:53 @messages-loud 15:49:53 GeekDude said 2h 25m 58s ago: GeekDude wonders if you could do it with a complicated css script that relies on the status of check boxes to hide or show other elements 15:53:19 hi 15:54:46 so... mang is multitape-brainfuck? 15:56:43 I thought it was a "2D program, single tape for data" from the description. 15:57:21 But it's a bit vague. 15:57:56 Then again, I don't know at all what 04/05 would be in that case. 15:59:17 there should be something like voting how interesting a language is with an ordered list of results 16:01:15 piet is the most abstract language ever invented 16:01:33 Is it turing complete? 16:01:33 don't think so 16:02:13 It's a stack based language 16:02:29 and you have the normal push, pop, add, mul, div, etc 16:04:22 There's an arbitrary-depth "roll" in Piet. 16:05:01 So fun 16:05:06 For a bignum variant, I'd say odds are good. 16:05:42 fizzie: arbitrary depth roll should be enough even without bignums I guess (as long as you have integers large enough to index the store) 16:10:00 "The maximum size of integers is notionally infinite, though implementations may implement a finite maximum integer size." 16:10:10 It's the usual vague esolang spec. 16:12:19 yeah, well, do you expect to have computer implementations with truly unbounded integer size? a opposed to just really large integer size with several gigabytes of data? 16:13:43 No, but putting a sentence like that in is an open call to get implementations with, say, 32-bit integers. 16:14:31 sure 16:14:56 or 28 bit ones if the language has data types other the integers too 16:15:04 so that it keeps some bits for tags 16:15:24 or 8 bit integers on a brainfuck-based interpreter 16:16:06 you probably can't go under 5 bits because you need character input and output 16:20:36 ^style fisher 16:20:36 Selected style: fisher (Fisher corpus of transcribed telephone conversations) 16:20:37 fungot: What's up? 16:20:38 fizzie: i live near a hospital now 16:20:58 fungot: What, have you moved out? I thought you were still in the next room there, and there's no hospital very near. 16:20:59 fizzie: um i don't think it's such a waste of time and it's not so easy to talk about um 16:21:22 fungot: I didn't say it was. But you might've told me you've moved! 16:21:22 fizzie: mm uh we had decided early on two months after that sigh i dunno i don't see too much 16:22:12 -!- AndoDaan has quit (Ping timeout: 246 seconds). 16:31:44 Btw, there's no formal proof that piet is Turing complete 16:32:01 according to esolangs.org (it is thought to be however) 16:32:38 it's TC 16:33:01 it has stack rotation and that's enough 16:39:05 SvenGek, someone wrote a brainfuck -> Piet compiler 16:39:52 http://www.matthias-ernst.eu/pietbrainfuck.html 16:42:51 wow 16:43:16 and that's the smoking gun then 16:44:05 http://www.matthias-ernst.eu/pietbf/c8a92dcd9db101e8eed806df37b061a9.gif here's dbfi. mystery solved. 16:44:16 can't say it looks very exciting. 16:46:23 The bottom bit is not too bad. 16:47:27 Reminds me of this other project I saw recently 16:47:47 Awis, which is a BF compiler written in BF 16:47:59 Don't you mean "awib"? 16:48:02 yeah 16:48:10 I'm still amazed by it 16:48:48 fizzie: yeah it's a constant interpreter and the program's up top. so kind of a boring compiler... 16:48:49 The polyglot-ness was fun. 16:48:59 Do you know of any other "big" projects written in esoteric languages? 16:49:07 fungot's biggish for a Befunge program. 16:49:07 fizzie: it was also the same thing 16:49:18 ^source 16:49:18 https://github.com/fis/fungot/blob/master/fungot.b98 16:49:24 It's not "big" in absolute terms, though. 16:49:51 SvenGek: some of the ICFP and IOCCC stuff probably counts 16:50:15 SvenGek: some ICFP contests, including this year's, define an esoteric language or two, and ask for a submission in that language 16:51:09 Lol, that's pretty cool ^-^ 16:56:17 SvenGek: Does Minecraft's redstone count as a language? or are NOT gates discounted 16:57:07 is dwarf fortress considered an esolang? :p 16:58:28 iirc someone implemented GoL in GoL 16:58:52 game of life? 16:59:08 yeah 16:59:11 There are turing complete GoL rulesets. 16:59:14 https://www.youtube.com/watch?v=xP5-iIeKXE8 16:59:27 We have the http://esolangs.org/wiki/EsoInterpreters page if you're "into" that sort of stuff. 17:01:39 -!- FreeFull has joined. 17:03:05 rule seven: it's easy to be turing complete 17:06:16 -!- FreeFull has quit (Ping timeout: 260 seconds). 17:07:03 myname: yes 17:07:15 myname: and so is Openttd 17:08:23 pokemon yellow is turing complete 17:10:36 Accidental TC kinda just happens. 17:11:54 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 17:14:22 -!- FreeFull has joined. 17:16:02 wat 17:18:22 -!- evalj has joined. 17:19:37 pokemon yellow is a cheat, since it breaks out into the obviously TC processor. 17:19:51 you might be able to do an ingame computer with inventory management. would be boring tho. 17:23:28 -!- augur has quit (Read error: Connection reset by peer). 17:23:46 -!- augur has joined. 17:26:27 But... Magic: The Gathering TCness isn't a cheat 17:27:19 sure 17:37:52 i wish my brain were turing-complete 17:37:56 that'd be pretty cool 17:39:32 -!- GeekDude has joined. 17:40:16 -!- AndoDaan has joined. 17:41:06 fizzie: I think the piet BF interpreter needs to be added that list 17:45:26 [wiki] [[EsoInterpreters]] http://esolangs.org/w/index.php?diff=40550&oldid=37503 * Fizzie * (+529) /* Main table */ Link the brainfuck interpreter in Piet. 17:45:40 There. 17:47:35 -!- copumpkin has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…). 17:50:02 fizzie: are you trying to make a complete table, or ...well what's your purpose? 17:50:54 It's not my page. But I guess the table is there to encourage people to fill in the blanks. 17:52:52 -!- augur has quit (Read error: Connection reset by peer). 17:52:59 -!- augur has joined. 17:53:05 what do the strikeouts mean? 17:53:09 i wonder what "part of cycle" means 17:53:37 quintopia: part of a cycle means it is an edge of a directed cycle in the digraph of interpreters among languages, 17:53:58 so it can probably be used indirectly with the interpreters on the other edges to self-interpret a language 17:54:13 I'm pretty sure there are some X's that could be parts of some cycles, though I haven't checked. 17:55:17 [wiki] [[BF Joust]] http://esolangs.org/w/index.php?diff=40551&oldid=39371 * Fizzie * (+657) Update to reflect current reality. 17:55:36 b_jonas: that was my guess 17:56:09 And I think the strikeouts are broken links. 17:57:36 -!- shikhin has joined. 17:58:17 Well, maybe there are no more cycles in the table, as it stands. 17:59:00 [wiki] [[EsoInterpreters]] http://esolangs.org/w/index.php?diff=40552&oldid=40550 * Quintopia * (+548) ais523's BCT->ResPlicate compiler (unsure whether to include oerjan's ResPairate-2 there or on its own line) 18:00:57 -!- shikhout has quit (Ping timeout: 260 seconds). 18:01:07 I know this is not a really well-defined question, but has anyone ever written a language, probably a forth-like or smalltalk-like or lisp-like, where not only the parser but also the memory allocator (cons) and garbage collector is implemented mostly in that same language (possibly with a little help from some primitives used only in those functions)? 18:02:48 I've heard T implemented its GC in itself. 18:02:57 what's "T"? 18:02:58 http://en.wikipedia.org/wiki/T_%28programming_language%29 that is 18:03:13 Oh, and maru, duh. 18:03:33 Probably most forths? I thought primitive memory was like half the point of forth. 18:03:57 does forth even have gc...? 18:04:17 Bike: the parser, sure, but I don't know whether they implement an allocator/gc in forth itself, or in machine code 18:05:10 ok, thanks 18:05:39 I was thinking on how possible this would be to do. I might try to implement one at some point. 18:05:49 http://galileo.phys.virginia.edu/classes/551.jvn.fall01/primer.htm#memory yeah, i don't think forth even uses automatic memory managemetn. 18:06:20 Bike: does it at least have a malloc and free? 18:06:35 this is basically like malloc. 18:06:53 though i'm wondering about freeing. malloc is a pretty fucking complex function, this just says it's incrementing a pointer... 18:07:07 yep, if you don't want to free ever it's much easier 18:07:36 (or if you have a compacting garbage collector, but then everything else other than allocation becomes more complicated) 18:07:38 http://lars.nocrew.org/dpans/dpans14.htm#14.6.1.1605 well, there you go. 18:08:05 it even has realloc. 18:08:08 ah, that one has a malloc-free 18:08:10 nice 18:09:16 it's an optional module. looks like the "core" words are just a pointer to open memory, jesus. 18:09:21 of course I might still try to implement something in an interpreter I make of course 18:09:24 C is way more high level than forth, clearly 18:09:31 I think (not 100% on this) that the gforth memory allocation words just call C library's malloc/realloc/free. 18:09:43 fizzie: might depend on which forth 18:09:49 like, forth from which decade 18:09:56 That's why I said "gforth". 18:10:03 yeah, this is ansi i'm looking at. 18:10:03 ah, gforth 18:10:07 Oh, that's not the gforth manual. 18:10:12 It looked so similar. :p 18:10:13 where the primitives for memory allocation seem to be += and sbrk :p 18:10:33 and @ and ! yeah 18:10:35 Yes, that sounds right. 18:11:27 gonna bring this up next time someone tells me about using c for being Close To The Metal 18:11:52 "create x 10 cells allot" and so on. 18:11:56 Bike: To the best of my understanding, in original-sort-of forth everything is a machine word. So it’s more like B than C I would think. 18:12:05 yeah. 18:13:39 as for smalltalk, in -80 you had a defined VM, so probably they wrote the basic stuff in something "low level" like that 18:15:09 Bike: I'm not sure, but I think they wrote the gc in machine language for that. maybe not. 18:16:59 -!- drdanmaku has joined. 18:18:08 b_jonas: does C count? :p 18:18:21 elliott_: yes, I guess it does 18:18:35 I wanted more sort of a forth/smalltalk-like interpreter though 18:19:36 doing GC in the language itself is "easy" enough -- expose an allocator, expose the stack so you can walk it for roots, and have a way to trace the children of an object (lisp satisfies this with a finite set of types just by casing on them), and have a free function 18:19:43 and then wrap cons so it GCs if allocation fails, say 18:19:49 PLAI has a sublanguage/library for writing garbage collectors. 18:19:51 I'm sure you could find a Forth implementation of the allocate/free words. 18:20:13 elliott_: yes, but you also have to make sure not to use more allocation during executing all that than you can clean up for, 18:20:31 but at the same time not just call into machine language to do all the work. 18:20:59 and the point is, you'd implement the free and malloc functions in the language too, using @ and ! and sbrk 18:21:05 (and mmap and whatever) 18:21:30 Having a "low-level" subset language is prettu popular. 18:21:49 b_jonas: that applies in any language 18:21:56 elliott_: sure 18:21:58 b_jonas: just preallocate a bunch of cons cells to use for the GC ahead of time :p 18:22:14 and yeah, you can do malloc and free too. 18:22:43 just more fiddly. 18:22:44 I might try to implement something like this once 18:25:22 yay 18:25:24 I'm in the top 5 18:25:25 :D 18:26:04 but large_decoy seems to have lost plenty of points 18:26:05 mroman_: in what? bfjoust? 18:26:10 b_jonas: yes 18:26:31 great 18:26:37 is ais the only one above you? 18:26:48 ais, quintopia und Lymia 18:26:52 ugh 18:26:54 that's worse 18:27:08 -!- tromp_ has joined. 18:27:14 why? 18:27:18 Because they're good? 18:27:35 no, I mean now you can't just distract ais to get to the top 18:29:14 although on a lose-win basis Lymia isn't beter 18:29:49 -!- tromp__ has quit (Ping timeout: 260 seconds). 18:30:03 also Lymia.nyuroki doesn't stand a chance against cupnoodles :) 18:30:18 cupnoodles wins 38/40 18:31:28 nyuroki hangs on more decoys I guess 18:33:38 on short tapes it just looses because cupnoodles rushes straight to the flag 18:33:48 whereas nyuroki is busy setting up decoys 18:33:53 -!- tromp__ has joined. 18:34:10 nyuroki only wins on tape length 14 18:35:27 a zero cycle ] would btw make offset clears rather useless I guess 18:35:32 since you don't have to pay for it anymore 18:35:38 -!- tromp_ has quit (Ping timeout: 258 seconds). 18:36:31 ah right 18:36:43 I leave the tape at tape length 14 18:37:02 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*5(>[(+)*8[-].]>[(-)*8[+].])*-1 18:37:02 mroman_.cupnoodles: points 11.69, score 35.43, rank 5/47 (--) 18:37:07 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*4(>[(+)*8[-].]>[(-)*8[+].])*-1 18:37:09 mroman_.cupnoodles: points 10.24, score 33.30, rank 5/47 (--) 18:37:14 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:37:14 mroman_.cupnoodles: points 12.36, score 36.59, rank 4/47 (+1) 18:37:20 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*7(>[(+)*8[-].]>[(-)*8[+].])*-1 18:37:21 mroman_.cupnoodles: points 10.81, score 34.25, rank 5/47 (-1) 18:37:25 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:37:25 mroman_.cupnoodles: points 12.36, score 36.59, rank 4/47 (+1) 18:37:59 I guess growth can suck it 18:38:21 -!- idris-bot has quit (Quit: Terminated). 18:38:48 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*9[-].]>[(-)*9[+].])*-1 18:38:49 mroman_.cupnoodles: points 11.71, score 35.53, rank 4/47 (--) 18:38:56 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*7[-].]>[(-)*7[+].])*-1 18:38:57 mroman_.cupnoodles: points 11.60, score 35.47, rank 4/47 (--) 18:39:04 -!- Melvar has quit (Quit: WeeChat 0.4.3). 18:39:09 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*5(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:39:10 mroman_.cupnoodles: points 11.10, score 34.49, rank 5/47 (-1) 18:39:15 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*5(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*3(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:39:16 mroman_.cupnoodles: points 8.43, score 30.32, rank 7/47 (-2) 18:39:20 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*5(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:39:20 mroman_.cupnoodles: points 11.10, score 34.49, rank 5/47 (+2) 18:39:28 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:39:29 mroman_.cupnoodles: points 12.36, score 36.59, rank 4/47 (+1) 18:39:37 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<--<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:39:38 mroman_.cupnoodles: points 12.07, score 36.12, rank 4/47 (--) 18:39:47 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*21>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:39:48 mroman_.cupnoodles: points 12.17, score 36.36, rank 4/47 (--) 18:39:53 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*21>(-)*21)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:39:54 mroman_.cupnoodles: points 11.95, score 35.93, rank 4/47 (--) 18:39:58 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*21>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:39:59 mroman_.cupnoodles: points 12.17, score 36.36, rank 4/47 (--) 18:40:13 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*19>(-)*19)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:40:13 mroman_.cupnoodles: points 11.10, score 34.68, rank 5/47 (-1) 18:40:22 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 18:40:22 mroman_.cupnoodles: points 12.36, score 36.59, rank 4/47 (+1) 18:42:09 -!- conehead has joined. 18:42:15 -!- conehead has quit (Changing host). 18:42:15 -!- conehead has joined. 18:43:24 -!- Melvar has joined. 18:45:38 -!- Sprocklem has joined. 18:47:36 -!- idris-bot has joined. 18:58:00 [wiki] [[BF Joust]] http://esolangs.org/w/index.php?diff=40553&oldid=40551 * Quintopia * (-8) changed the tenses to read like history 19:04:57 [wiki] [[BF Joust strategies]] http://esolangs.org/w/index.php?diff=40554&oldid=40529 * Quintopia * (+220) /* 2014 */ NPOV to match the style of the rest of the page. 19:09:07 !bfjoust cupnoodles (>)*9([(+)*4[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:09:08 mroman_.cupnoodles: points 12.29, score 36.31, rank 4/47 (--) 19:09:11 "title: THE JAVELINISTS" "artist: A MINDLESS ROBOT DRONE" heh, I wonder what set these. 19:09:16 !bfjoust cupnoodles (>)*9([(+)*8[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:09:16 mroman_.cupnoodles: points 12.21, score 36.31, rank 4/47 (--) 19:09:23 !bfjoust cupnoodles (>)*9([(+)*10[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:09:24 mroman_.cupnoodles: points 12.17, score 36.26, rank 4/47 (--) 19:09:25 Those were in a .mp3 file that contained a nonsense Finnish sentence, synthesized. 19:09:42 !bfjoust cupnoodles (>)*9([(+)*9[-].]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:09:42 mroman_.cupnoodles: points 12.00, score 36.03, rank 4/47 (--) 19:09:49 !bfjoust cupnoodles (>)*9([(+)*9[-.]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:09:50 mroman_.cupnoodles: points 10.31, score 33.67, rank 5/47 (-1) 19:10:09 !bfjoust cupnoodles (>)*9([(+)*9[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+]])*-1 19:10:09 mroman_.cupnoodles: points 12.17, score 36.17, rank 4/47 (+1) 19:10:18 !bfjoust cupnoodles (>)*9([(+)*8[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:10:19 mroman_.cupnoodles: points 12.21, score 36.31, rank 4/47 (--) 19:10:25 !bfjoust cupnoodles (>)*9([(+)*8[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-]]>[(-)*8[+]])*-1 19:10:26 mroman_.cupnoodles: points 11.67, score 35.23, rank 5/47 (-1) 19:10:29 !bfjoust cupnoodles (>)*9([(+)*8[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-]]>[(-)*8[+]])*-1 19:10:29 mroman_.cupnoodles: points 11.67, score 35.23, rank 5/47 (--) 19:10:32 !bfjoust cupnoodles (>)*9([(+)*8[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-]]>[(-)*8[+].])*-1 19:10:33 mroman_.cupnoodles: points 12.12, score 36.04, rank 4/47 (+1) 19:10:36 !bfjoust cupnoodles (>)*9([(+)*8[-]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:10:36 mroman_.cupnoodles: points 12.21, score 36.31, rank 4/47 (--) 19:10:58 !bfjoust cupnoodles (>)*9([(-)*8[+]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:10:58 mroman_.cupnoodles: points 12.17, score 36.21, rank 4/47 (--) 19:11:21 !bfjoust cupnoodles (>)*9([(+)*8[-]]>[(-)*8[+]]>)*2(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:11:21 mroman_.cupnoodles: points 12.07, score 35.98, rank 4/47 (--) 19:11:24 !bfjoust cupnoodles (>)*9([(-)*8[+]]>)*4(-<-)*4(<-<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:11:24 mroman_.cupnoodles: points 12.17, score 36.21, rank 4/47 (--) 19:11:27 damnit it 19:11:52 !bfjoust cupnoodles (>)*9([(-)*8[+]]>)*4(-<-)*4(<-<+)*4(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:11:53 mroman_.cupnoodles: points 10.36, score 33.62, rank 5/47 (-1) 19:12:01 I cringe while thinking of the poor repository, every time I see these walls of parameter tunings. (Not that it's probably any sort of real problem.) 19:12:10 !bfjoust cupnoodles (>)*9([(-)*8[+]]>)*4(-<-)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:12:11 mroman_.cupnoodles: points 12.29, score 36.46, rank 4/47 (+1) 19:12:19 !bfjoust cupnoodles (>)*9([(-)*8[+]]>)*4(-<-)*4(<-<+)*4<---(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:12:19 mroman_.cupnoodles: points 12.26, score 36.46, rank 4/47 (--) 19:12:25 !bfjoust cupnoodles (>)*9([(-)*8[+]]>)*4(-<-)*4(<-<+)*4<----(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:12:25 mroman_.cupnoodles: points 11.69, score 35.39, rank 5/47 (-1) 19:12:31 !bfjoust cupnoodles (>)*9([(-)*8[+]]>)*4(-<-)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:12:31 mroman_.cupnoodles: points 12.29, score 36.46, rank 4/47 (+1) 19:12:34 fizzie: face it. people just don't seem to care about !bftest 19:12:43 !bftest 19:12:43 mroman_: "!bftest progname code". See http://zem.fi/bfjoust/ for documentation. 19:12:43 That seems to be the case. 19:12:48 oh 19:12:57 !bftest cupnoodles (>)*9([(-)*8[+]]>)*4(-<-)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:12:57 mroman_.cupnoodles: points 12.29, score 36.46, rank 4/47 (--) 19:13:09 !bftest cupnoodles (>)*9([(-)*8[+]]>)*4(-<-)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*7[-].]>[(-)*9[+].])*-1 19:13:09 mroman_.cupnoodles: points 11.93, score 35.86, rank 4/47 (--) 19:13:10 -!- AnotherTest has joined. 19:13:17 !bftest cupnoodles (>)*9([(-)*8[+]]>)*4(-<-)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*9[-].]>[(-)*7[+].])*-1 19:13:17 mroman_.cupnoodles: points 11.86, score 35.66, rank 4/47 (--) 19:13:21 ok 19:13:33 It's exactly the same, except it doesn't change anything permanently, so if you find something good, you'll still want to submit it for reals. 19:13:40 [wiki] [[Special:Log/newusers]] create * JanetteFreud * New user account 19:13:46 what... 19:13:49 fuck. spam bot. 19:13:52 It does not look BF Jousty enough 19:15:13 fizzie: it could git commit --amend if the last !bfjoust was for that program and in the last minute or two 19:15:52 I guess. Though it's pushed immediately to the web, and I'm sure lots of people keep cloning/pulling the repository every second. 19:17:27 I doubt it's really any sort of performance problem for these oneliners. Was just thinking that only recording somehow "significant" changes would be a boon for BF Joust archeologists that analyze it in the 3000s. 19:18:09 they're smart enough to figure it out, i bet 19:19:56 yeah 19:19:59 It's the 3000s alright. 19:20:06 Give the future some credit. 19:20:35 Hmm. Cheap out on a Palauan domain or just buy the bloody .com and blow half my discretionary ... ? 19:21:11 really? 19:21:19 domains aren't that expensive 19:21:20 * J_Arcane is being somewhat facetious. 19:21:41 Also, I only budget about $20 for a silly project like this, so I'm not necessarily exaggerating. 19:24:28 Are Palauan domains cheaper, then? 19:24:47 what project? 19:25:57 !bfjoust cupnoodles (>)*9([(-)*8[+]]+>)*4(<)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:25:58 mroman_.cupnoodles: points 12.45, score 36.25, rank 3/47 (+1) 19:26:40 now I only have ais and lymia before me 19:26:48 fizzie: €3.13 a year on Namecheap. 19:27:41 fizzie: How comes that if I sumbit my rank 3 program 19:27:45 it only gets me to rank 6? 19:28:00 (submit as test) 19:28:02 (not for real) 19:28:18 !bfjoust cupnoodles (>)*9([(-)*8[+]]++>)*4(<)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:28:19 mroman_.cupnoodles: points 11.50, score 34.94, rank 4/47 (-1) 19:28:25 !bfjoust cupnoodles (>)*9([(-)*8[+]]+>)*4(<)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:28:25 mroman_.cupnoodles: points 12.45, score 36.30, rank 3/47 (+1) 19:29:02 !bfjoust cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:29:02 mroman_.cupnoodles: points 12.60, score 36.59, rank 3/47 (--) 19:29:18 If you submit as a test over the web, it will be replacing a different program than if you do it over IRC (since the name is different), which means the competitors are not the same. 19:29:22 !bfjoust cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*8<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:29:22 mroman_.cupnoodles: points 3.88, score 24.95, rank 11/47 (-8) 19:29:26 !bfjoust cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:29:26 mroman_.cupnoodles: points 12.60, score 36.56, rank 3/47 (+8) 19:30:01 !bftest cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:30:01 mroman_.cupnoodles: points 12.60, score 36.58, rank 3/47 (--) 19:30:05 !bftest cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*5(>[(+)*8[-].]>[(-)*8[+].])*-1 19:30:05 mroman_.cupnoodles: points 11.50, score 34.69, rank 5/47 (-2) 19:30:09 !bftest cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*7(>[(+)*8[-].]>[(-)*8[+].])*-1 19:30:09 mroman_.cupnoodles: points 10.98, score 33.93, rank 5/47 (-2) 19:30:12 !bftest cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<-<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:30:13 mroman_.cupnoodles: points 12.60, score 36.58, rank 3/47 (--) 19:30:26 !bftest cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<--<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:30:26 mroman_.cupnoodles: points 12.38, score 36.65, rank 3/47 (--) 19:30:34 !bftest cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<--<++)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:30:34 mroman_.cupnoodles: points 12.14, score 35.96, rank 3/47 (--) 19:30:42 !bftest cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<--<+)*4<-(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:30:42 mroman_.cupnoodles: points 12.36, score 36.33, rank 3/47 (--) 19:30:48 !bftest cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<--<+)*4<---(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:30:48 mroman_.cupnoodles: points 12.29, score 36.28, rank 3/47 (--) 19:30:53 !bftest cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<--<+)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:30:53 mroman_.cupnoodles: points 12.38, score 36.42, rank 3/47 (--) 19:31:15 !bfjoust cupnoodles (>)*9([(-)*8[+].]+>)*4(<)*4(<--<++)*4<--(>(+)*20>(-)*20)*4(>)*6(>[(+)*8[-].]>[(-)*8[+].])*-1 19:31:15 mroman_.cupnoodles: points 12.14, score 35.96, rank 3/47 (--) 19:31:18 oh well. 19:31:28 I don't think I'll get it into major programs :( 19:33:05 -!- ais523 has joined. 19:33:16 ais523: I hate preparation 19:34:41 -!- FreeFull has quit (Ping timeout: 272 seconds). 19:35:11 mroman_: trying to beat it, you mean? 19:35:29 No. I just hate it out of hatred. 19:35:34 Perhaps it was a general statement about the concept of preparing for something. 19:35:50 but it was aimed at ais523.preperation 19:35:56 *preparation 19:37:15 see 19:37:22 large_decoy just moved 34 ranks upwards 19:37:26 forwhatever reason 19:38:08 and athena moved down hard 19:38:17 [wiki] [[Special:Log/newusers]] create * AudraGottschalk * New user account 19:39:16 how many "real" accounts are there that never were here? 19:39:38 Why not implement IRC confirmation 19:39:42 rather than captcha 19:39:48 it's called two-factor-spam-protect 19:39:52 captcha + token over IRC 19:40:01 mroman_: that's exactly my idea 19:40:33 not that it would be impossible to write an ircbot for that to continue spamming 19:40:34 I don't think we want to make use of freenode a requirement for getting an esowiki account. 19:40:55 Even though it'd probably be very efficient. 19:41:15 meh 19:41:19 mroman_: well, i do think these spam accounts aren't really aimed at esolangs.org rather than any mediawiki 19:41:24 You can access it neatly through the webchat 19:41:52 Not if you have, say, philosophical objections about the network. 19:41:54 but didn't somebody add those stupid questions? 19:42:04 like "In which year was fukyobrainz invented"? 19:42:35 `learn fukyobrainz is yet another brainfuck derivative however with identical instructions. 19:42:37 I knew that. 19:42:42 "what is the current featured language" 19:43:10 The real challenge is to decide whether it's a brainfuck or fukyobrainz program 19:43:18 studies show it might be impossible. 19:43:24 mroman_: AFAICT, every now and then the spammers hire a human to teach the spambots all the CAPTCHA answers 19:43:30 the solution is to just give fizzie more captchas. 19:43:52 mroman_: make fukyobrainz needing a ; at the end of every line but the last 19:43:56 ideally someone would just download an XML wiki dump, and generate a billion was created in what year? questions 19:44:03 in the localsettings.php format 19:44:06 and then give them to fizzie 19:44:24 -!- AndoDaan has quit (Ping timeout: 244 seconds). 19:44:25 is the captcha used when signing up logged? that'd make it obvious which ones to delete 19:44:37 elliott_: you don't need a full wiki dump for that, just the yearh categories 19:44:45 b_jonas: true 19:44:49 there used to be a site which only had "insert 'php' here" as a captcha 19:44:52 b_jonas: you want to only include pages in Category:Languages, though 19:44:54 worked pretty well 19:45:09 b_jonas: but you kind of want to base it on the actual articles, because making people scroll down to the yearcats to sign up is mean 19:45:34 "insert a bfjoust program capable of entering the hill" 19:45:38 best captcha . 19:45:40 mroman_: hehe 19:45:48 but then they'd just copy ais's program 19:45:52 you could ask "name one of your favorite esolangs" 19:46:08 Oh, I didn't even realize I'm involved in the captcha-setting process, I was assuming they could be changed inside the wiki somehow. 19:46:22 myname: no, we want to involve new people who don't yet have one 19:46:32 plus we don't have a way to check that 19:46:38 we don't have articles on all esolangs yet 19:46:44 we don't? 19:46:51 I doubt even I could get on the hill in one attempt, without using an existing program 19:46:56 mroman_: I have like five todo listed on my user page 19:47:10 go for it 19:47:20 the hill's so good nowadays 19:47:20 http://esolangs.org/wiki/User:B_jonas 19:47:50 there's plenty of vaporware esolangs by me that don't have articles 19:47:57 due to being vaporware 19:48:03 how about “write a program printing the sequence of prime numbers in unary in brainfuck” 19:48:15 lol 19:48:23 we just have to interpret them and check the first few thousand characters of output 19:48:37 though... if they write something that takes like double exponential space and time, we might not be able to 19:48:43 so better give a restriction on time and space 19:48:57 fizzie: they're just hardcoded in LocalSettings.php. 19:49:09 fizzie: you could even programmatically generate them, though they'd have to persist across the two requests 19:49:20 openttd signals? 19:49:24 b_jonas: ++++++[>++++++++<-]>[.] 19:49:27 there's an esolang based on that? 19:49:34 mroman_: they're an esolang as is 19:49:36 you didn't say anything about seperators 19:49:36 fizzie: (and also doing expensive things in LocalSettings.php is a poor idea, obviously.) 19:49:51 oh, add a + 19:50:04 I wonder how much current crop of bots rely on the field element names. 19:50:09 mroman_: they have only a few primitives, but capable of much more than those were desigend for, that's certainly a mark of a esolang in my book 19:50:13 mroman_: just ask zzo 19:50:22 I'd rather not :) 19:50:24 fizzie: I think mediawiki randomises them? maybe it doesn't 19:50:39 The captcha input box is just called "wpCaptchaWord". 19:50:44 (you need railways and trains and maybe bridges and tunnels besides signals obviously) 19:50:45 hm 19:50:47 But they could easily go by document structure. 19:50:54 randomising POST/GET params would probably help 19:51:13 also you could insert fake ones 19:51:16 mroman_: no. spammers probably take those from the html anyway, to attack multiple webpages 19:51:33 like 19:51:48 just add some forms 19:51:51 and hide them with css 19:52:06 I've seen the "don't fill anything here" approach in a couple of places. 19:52:13 (and screw people who don't have css support) 19:52:29 mroman_: these days luckily you can hide stuff with a html5 attribute as well as css 19:52:34 sorry, missed a question; quintopia: This is the project. https://github.com/jarcane/HateStack 19:52:49 though I'm not sure how many browsers eat the html5 attribute, you can use both that and a css rule 19:53:04 it's very useful because it stops hidden stuff from showing up before the css has a chance to load 19:53:41 `perl -e$==0,(1x$_)=~/^(|()1(?1)(?1)\2)$(?{$=++})^/,print$=,$"for 0..13 19:53:44 1 1 2 5 14 42 132 429 1430 4862 16796 58786 208012 742900 19:53:51 what's that? 19:53:58 Catalan numbers 19:54:00 @oeis 1,2,5,14,42,132 19:54:02 Catalan numbers: C(n) = binomial(2n,n)/(n+1) = (2n)!/(n!(n+1)!). Also called... 19:54:03 variant of http://www.perlmonks.com/?node_id=813859 19:54:19 parent node has code for fibonacci 19:54:32 you can golf that down one character using print"$= " rather than print$=,$" 19:54:40 unless $, has been set, and I don't think it has been 19:54:52 `perl -e$==0,(1x$_)=~/^(|()1(?1)(?1)\2)$(?{$=++})^/,print"$= "for 0..13 19:54:53 ais523: the original obfu uses the -l switch instead to print newlines 19:54:56 1 1 2 5 14 42 132 429 1430 4862 16796 58786 208012 742900 19:55:08 `perl -le$==0,(1x$_)=~/^(|()1(?1)(?1)\2)$(?{$=++})^/,print$=for 0..13 19:55:12 1 \ 1 \ 2 \ 5 \ 14 \ 42 \ 132 \ 429 \ 1430 \ 4862 \ 16796 \ 58786 \ 208012 \ 742900 19:55:16 right 19:55:25 that doesn't look so good on irc so I wanted a quick fix 19:55:30 but you're right, that's one shorter 19:56:40 one shorter as in http://www.xkcd.com/670/ 19:57:29 `?brainfuck 19:57:29 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ?brainfuck: not found 19:57:31 `? brainfuck 19:57:32 brainfuck is the integral of the family of terrible esolangs. 19:57:38 ha 19:57:46 `? brainfuck_derivative 19:57:47 brainfuck_derivative? ¯\(°​_o)/¯ 19:57:50 `? brainfuck derivative 19:57:51 brainfuck derivative? ¯\(°​_o)/¯ 19:58:11 hm 19:58:13 can you do that? 19:58:16 `learn "a b" is ab 19:58:18 I knew that. 19:58:19 `? a b 19:58:20 a b? ¯\(°​_o)/¯ 19:58:23 `? "a b" 19:58:25 ​"a b"? ¯\(°​_o)/¯ 19:58:27 hm 19:58:31 `? " 19:58:32 ​"? ¯\(°​_o)/¯ 19:58:34 `? "a 19:58:35 ​"a b" is ab 19:58:37 lol 19:58:38 ok 19:58:43 `forget "a 19:58:44 Forget what? 19:58:46 `perl -e$==1,(1x$_)=~/(^)(1|11\1)*(?{$=++})^/,print"$= "for 0..20 # Fibonacci 19:58:47 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 19:59:27 does this one fit in a line for HackEgo? 19:59:43 `perl -esub h($){($_=$_[0]=pack b208,0 .unpack b362,$_[0])=~tr/\0-\c?/\0/;tr/\0/\377/c;$_}do{$y=$r;$v=join$r='',a..z;$r^=h$r&"\217"x26^h$v&$y for 0..6;$r^=$_ x26}for"k6sNP2B}({ambrusLB%Ox)Z]n0*zf\0I3"=~/./g;print$r 19:59:44 Just another Perl hacker, 19:59:45 `? password 19:59:45 password? ¯\(°​_o)/¯ 19:59:50 it does fit, great 20:00:27 `? Burlesque 20:00:43 ok 20:00:47 burlesque is only the sexiest language on earth. 20:01:05 Ah right. I secretly added that a while ago. 20:02:07 http://esolangs.org/wiki/EsoInterpreters 20:02:14 ^- yeah. This is utterly incomplete :D 20:02:19 -!- FreeFull has joined. 20:02:27 but it would be really huge if it were complete. 20:03:51 !blsq "abcdefgh"0 0 8rn10.+si 20:03:51 "cfgdbbgebd" 20:03:56 !blsq "abcdefgh"1 0 8rn10.+si 20:03:56 "fhecebcbhh" 20:04:09 !blsq @AZr\1 0 8rn10.+si 20:04:10 "FHECEBCBHH" 20:04:17 !blsq @AZr\1 0 26rn10.+si 20:04:17 "XQELEKCTHZ" 20:04:24 !blsq @AZr\1 0 26rn16.+si 20:04:25 "XQELEKCTHZVBDBQR" 20:04:58 `learn password is XQELEKCTHZVBDBQR 20:05:00 I knew that. 20:05:14 (Most likely the password to life, the universe and all that) 20:06:26 how unsafe is unsafePeformIO randomRIO 20:06:29 what does that do? random generates 20:06:31 ? 20:06:37 rn is random integers 20:06:50 20:06:56 !blsq 0 0 10rn10.+ 20:06:57 {7 10 2 4 3 1 8 4 4 0} 20:07:01 [ ?16$26 20:07:06 ] ?16$26 20:07:06 (and it yields an infinite amount of random numbers) 20:07:07 b_jonas: 19 17 21 16 24 21 17 14 5 22 23 23 10 9 9 20 20:07:17 that's why 10.+ (.+ for lists is take) 20:07:23 !blsq 0 0 10rn10.+ 20:07:24 {7 10 2 4 3 1 8 4 4 0} 20:07:36 ] u:65+?16$26 20:07:37 b_jonas: WKUEHQXADALXNIUX 20:07:44 however, System.Random isn't consistent over plattforms 20:07:58 I recently discovered that Burlesque on anagol yields different numbers 20:10:21 `perl -eprint int(rand 100), " " for (1..10) 20:10:22 33 35 90 18 93 19 93 89 23 5 20:10:23 `perl -eprint int(rand 100), " " for (1..10) 20:10:29 71 97 74 98 81 74 13 29 32 73 20:10:30 Seeded automatically, I guess. 20:11:26 yes, perl is 20:11:45 Can't have auto-seed without IO 20:11:53 (but it doesn't use a very good random generator, or too much seed space) 20:11:59 > mkStdGen 0 20:12:01 mroman_: you could have the bot auto-seed the program 20:12:01 1 1 20:12:15 the environment the bot provides could pass a seed when it evals a line for you 20:12:20 > randomRs 0 10 (mkStdGen 0) 20:12:22 Couldn't match expected type ‘System.Random.StdGen -> t’ 20:12:22 with actual type ‘[a0]’ 20:12:27 @type randomRs 20:12:28 (Random a, RandomGen g) => (a, a) -> g -> [a] 20:12:42 > take 5 $ randomRs (0,10) (mkStdGen 0) 20:12:44 [0,3,6,8,7] 20:12:49 the jevalbot actually seeds the random generator, though you could do that directly inside the jeval prompt by hand too, so it's just convenience 20:12:50 !blsq 0 0 10rn5.+ 20:12:51 {7 10 2 4 3} 20:13:01 hm 20:13:06 lambdabot yields different numbers as well 20:13:31 What's up with hackage's every-now-and-then broken documentation? E.g. http://hackage.haskell.org/package/random-1.1 is gone; have to look at 1.0.1.3 instead. 20:13:49 I've noticed that too 20:13:54 recent packages usually have no doc 20:14:45 I guess it's recent, 12 days ago. 20:15:49 -!- FreeFull has quit (Ping timeout: 260 seconds). 20:20:55 -!- Sorella has quit (Ping timeout: 272 seconds). 20:34:28 -!- shikhin has quit (Ping timeout: 272 seconds). 20:35:57 -!- dianne has quit (Disconnected by services). 20:36:05 -!- dianne has joined. 20:38:02 -!- shikhin has joined. 20:52:25 -!- SvenGek has quit (Quit: bye). 20:52:36 -!- GeekDude has changed nick to GeekAfk. 21:01:39 -!- Patashu has joined. 21:06:54 -!- Sorella has joined. 21:07:43 -!- Sorella has quit (Changing host). 21:07:44 -!- Sorella has joined. 21:13:57 -!- GeekAfk has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 21:19:18 -!- AnotherTest has quit (Remote host closed the connection). 21:20:58 -!- Phantom_Hoover has joined. 21:24:22 -!- Patashu has quit (Ping timeout: 240 seconds). 21:43:08 -!- oerjan has joined. 22:04:42 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net). 22:15:09 -!- Frooxius has quit (Quit: *bubbles away*). 22:19:24 -!- perrier has joined. 22:20:19 -!- perrier has quit (Remote host closed the connection). 22:20:25 -!- TieSoul_ has quit (Read error: Connection reset by peer). 22:21:31 -!- perrier has joined. 22:48:32 -!- drlemon has quit (Remote host closed the connection). 22:59:51 -!- evalj has quit (Remote host closed the connection). 23:02:42 ideally someone would just download an XML wiki dump, and generate a billion was created in what year? questions <-- i'll point out that if ais523's theory of "occasionally hiring a human to break CAPTCHAs" is correct, we _don't_ want to use all of the CAPTCHAs simultaneously; rather we'd rotate to a new subset whenever the spam starts picking up. 23:03:18 oerjan: yeah. if you have hundreds, though, I doubt they'd bother cracking every single one. 23:03:29 especially since there's no real way to know when you're "done" or not other than refreshing a bunch. 23:03:45 I suspect they just occasionally get someone to solve one or two of them. 23:03:50 that's all they need 23:03:55 you can refresh until you get a captcha you know 23:04:00 hm right 23:04:20 which is why logging the ones used for registration would be useful 23:04:20 in which case we can have just _one_ captcha in each bunch :P 23:04:30 I like CLC-INTERCAL's CAPTCHA 23:04:31 true 23:04:36 we could try that 23:04:39 it asks you to evaluate some INTERCAL 23:04:50 more captchas feels intuitively better but I suppose there is no inherent reason for that 23:04:51 but it has a link to the relevant page of the manual, which is rigged to have the CAPTCHA you were just asked as an example 23:05:21 although i guess forcing them to refresh a lot before hitting the right one might slow them down... 23:05:33 so ideally we'd probably want your logging. 23:06:38 -!- GeekAfk has joined. 23:06:46 and then just replace the one used with the next in the unused queue 23:09:49 hm i guess if your suspicion they only solve one or two is right, there isn't really any point in having an unused queue, as long as there are plenty left. 23:10:32 because it would be too expensive for the spammers to pay someone to solve a lot of the captchas. 23:11:28 i guess i'm coming around to completely agreeing with elliott_ here 23:11:57 well, throttling them to only solve one per batch seems reasonable 23:12:48 I think we should have one simple CAPTCHA and replace it when they figure it out. the "slowdown" from making them refresh until they find a captcha they know wouldn't matter; it might matter if they skipped that registration attempt altogether and forgot about it if they didn't know the captcha but frankly spam that registers users doesn't seem to be very fast or common. 23:12:57 we might want to do some logging first to get data on how many they actually _are_ solving at once. 23:13:14 it takes them months to start registering after rotating the captchas 23:13:20 so I think we've already given it more thought than it warrants. 23:14:15 hm i guess you're right the spam isn't frequent enough that refreshing is a real issue 23:14:44 note that these are the spambots that haven't figured out newlines yet 23:15:04 which strongly implies that they aren't targeting our spam filter in particular 23:15:25 well unless they actually _are_ dropping the attempt until next time they come around, in which case they might not be refreshing and we are lucky that they only have solved one CAPTCHA or so 23:16:05 maybe we need to log refreshings too :P 23:18:56 I really don't think it would be that bad even if they knew every captcha. 23:19:10 90% of spam is anonymous stuff that's being caught just fine. 23:19:11 ais523: that's true, but there would still be different behavior whether they're doing (1) try registering with the CAPTCHA, once, then move on to next victim; or (2) try registering with the CAPTCHA, refresh several times at once before giving up and moving on 23:19:25 yes 23:19:32 I suspect it's (1). 23:19:34 if they're doing (1) then having very few captchas would greatly help them. 23:19:35 elliott_: it spams the new user log 23:19:38 (1) is believable, though 23:19:57 ais523: yes, but it's okay to have a few new users every few months 23:20:02 we just need to rotate out the captcha when it happens 23:20:15 -!- GeekAfk has changed nick to GeekDude. 23:20:57 (as in, if we had just one CAPTCHAs and (1) then the spammers might manage to completely flood recent changes with new registrations before we get around to stopping them) 23:21:19 of course they could easily achieve this by doing (2) instead 23:21:53 in either case (1) or (2), having hundreds of CAPTCHAs would cut back on the number of successes 23:24:11 there are online BF interpreters, right? could we link to one? 23:24:19 here's the #1 reason to use one captcha: ais523 is more likely to give fizzie one captcha when registrations start happening than we are to figure out how to track down what captchas were used to remove them 23:24:19 and give people some BF to run and type in the answer? 23:24:33 all this effort devoted to it is a waste. 23:24:39 we could use a script to generate thousands of captchas like that 23:25:49 yeah i think elliott_ is right, provisionally. 23:26:20 which is to say: we revise the plan if they are managing to get in every week 23:26:34 I like this BF CAPTCHA idea 23:26:39 fizzie: Q: In which year was 0x29A created? A: 2004 23:26:43 fizzie: please replace the existing captchas with this 23:26:49 the main reason i feel like logging is a good idea is that we'd then know without too many more attempts why our plan fails when it does 23:26:55 fizzie: unless that exact captcha is in the comments, in which case, heh 23:27:05 (I just pulled up Special:Random a few times.) 23:27:54 elliott_: i note one thing though: if all our CAPTCHAs keep being year numbers we'd eventually be vulnerable to a spammer who doesn't actually read the questions... 23:27:55 ais523: if you manage to find an online interp that takes code in its links so that the registerer doesn't have to do quite so much work, it is a good way of generating captchas. 23:28:17 oerjan: you know what'll be a problem before that? 23:28:27 in like 20 years, all of ais523's spam blocks are going to start getting undone in a trickle 23:28:28 elliott_: universe heat death hth 23:28:37 ah. 23:28:42 when you solve that you can spend this much time worrying about captchas 23:28:47 elliott_: I doubt they'll still be trying after 24 years 23:28:52 and if they are, we can just block again 23:28:57 elliott_: i'm sure we can programmatically prolong them 23:29:34 no i think elliott's onto something here. if we know the heat death is coming, why are we not working on the problem now? 23:30:34 here's the biggest problem: nobody will care about esolangs when we're all wireheads 23:30:55 the heat death of the universe is an existential threat. why is there no international organization dedicated to trying to prevent it? 23:32:13 I'm sure it's on some singularitarians' agenda. 23:32:43 quintopia: because we expect technological and scientific progress to get sufficiently far in a few centuries that it would be useless to start _now_ on planning against something which our current theories say is impossible to avoid 23:33:11 oerjan: those advances will come from what we do _now_. why procrastinate? 23:33:50 quintopia: you can help by trying to make the world more efficient 23:34:00 so that the needed scientific and technological advances come sooner 23:34:02 ais523: okay let's start with not wasting time on captchas 23:34:12 quintopia: because we're not at the point where we can distinguish "what we need to do to prevent heat death" from "what we need to do to achieve general scientific progress, at least in physics" 23:34:28 quintopia: "wasting" time on captchas now saves time wasted clearing up after spambots later 23:34:29 oerjan: then that's something we can work on! 23:34:38 quintopia: and people do! 23:35:37 oerjan: i've yet to see an organization whose stated purpose is "figuring out which direction to advance science and technology in order to find out how to prevent maxentropy" 23:36:46 -!- callforjudgement has joined. 23:37:12 -!- ais523 has quit (Disconnected by services). 23:37:16 -!- callforjudgement has changed nick to ais523. 23:38:02 quintopia: that's because we're busy at "figuring out how not to destroy ourselves long before we reach a level where we'd have a *chance* at figuring out how to prevent maxentropy". also, i should eat. 23:38:51 -!- Sprocklem has quit (Ping timeout: 258 seconds). 23:38:52 wait that's wrong. 23:39:17 we might very well have a chance, it just takes a surprise discovery in physics. 23:39:54 what we don't have is the _necessity_. 23:40:52 Here's a problem. You want to create a variable the same size as socklen_t. One fairly obvious solution would be to declare a variable of type socklen_t. That's not how OpenSSL does things, however. Instead, let's create a union of a couple different ints, call accept(), then inspect the different union members to determine which ones were overwritten by the kernel. Oh, and don't forget to check for big endian versus little endian. 23:41:17 also, after the heat death, doesn't entropy start decreasing as some of the homogenous cloud of mildly warm iron atoms end up expanding beyond the edge of the observable universe? 23:41:19 as in, the universe won't die in the < million years it will take us to either solve the problems we cause ourselves, or die. 23:43:21 you know, the second law doesn't state entropy always rises, just that it lowering is exponentially unlikely. what's to protect from! 23:50:39 Why does OpenSSL do such stupid way? 23:51:19 OpenSSL is a "fun way to learn C". 23:51:19 ais523: i don't think the second law says anything about entropy in the _observable_ universe. 23:51:44 oerjan: in that case, is it possible to keep going indefinitely via shipping off entropy past the edge of the observable universe? 23:51:50 however, i'd interpret that as entropy _density_ decreasing, not entropy itself. 23:52:13 you can't ship things out of the observable universe... 23:52:24 Bike: actually you can. 23:52:43 but you'd have to move stuff faster than you can see it. 23:52:47 and that's pretty fast. 23:52:54 speed of light is plenty fast enough, isn't it? 23:53:17 ofc, then you have another problem, whereby the observable universe runs out of energy 23:53:24 because I don't think it's possible to get energy in from outside 23:53:50 Bike: you just need to move it far enough away that the universe's general expansion takes over. 23:54:22 there are stars leaving our observable universe as we speak, probably. 23:55:52 ais523: the lack of energy means that the _maximal_ entropy density also decreases, i think 23:56:25 so entropy / maximal entropy for the energy remaining might still be increasing even if something leaves the OU 23:56:28 let's hope we find a way around both the first and second laws of thermodynamics, then 23:56:38 vacuum energy seems promising 23:57:46 i would like to point out that the expansion of the universe already violates conservation of energy 23:57:55 -!- shikhout has joined. 23:58:25 Phantom_Hoover: hmm, in that you could, say, take two weights, place them very far apart with an elastic band stretched between them? 23:58:30 pikhq: eh? What, did someone suggest they were writing OpenSSL code in order to learn C? 23:58:47 I'm not sure how you could get the energy out afterwards, though 23:58:48 Sgeo: *That's a quote from the guy who wrote it initially*. 23:58:48 the example i read was a photon being redshifted and losing energy into nothing 23:58:52 Been a while since I looked at OpenSSL Rampage 23:58:54 pikhq: o.O 23:59:42 but the real justification was that the expansion isn't time-symmetric and so noether's law doesn't apply