00:00:28 <wob_jonas> \oren\: ah, that says 13% of the population aged over 2 years. that's a bit less than 13% of the population.
00:02:33 -!- oerjan has quit (Quit: Nite).
00:11:30 <boily> is a pizza a sandwich?
00:11:53 <HackEgo> Pizza is a kind of rhubarb pie made without rhubarb.
00:20:57 <Lymia> fizzie, it's running :)
00:21:37 -!- MDude has joined.
00:22:21 <Lymia> https://i.imgur.com/edAFCgg.png :D
00:24:08 <Lymia> What's the computational complexity of matrix scoring?
00:24:11 -!- Naergon has joined.
00:24:20 <Lymia> Is a 11000x11000 matrix a problem
00:25:20 <Lymia> ... so, one multiplication is 1.331×10¹² operations? :(
00:25:57 -!- imode has quit (Ping timeout: 240 seconds).
00:26:20 <wob_jonas> But in bfjoust, don't you just score programs by adding up their scores in all duels, and ranking them by the total?
00:27:43 <wob_jonas> doesn't seem to explicitly say. it says how a match is scored, but not how a program is scored on the hill depending on its match scores.
00:28:23 <Lymia> That's the raw score
00:28:44 <Lymia> There's a matrix algorithm (similar to pagerank) that is less sensitive to a lot of similar "garbage" programs
00:30:56 <wob_jonas> if you want something like pagerank, which computes the eigenvector for the largest eigenvalue or something, I believe on a 11000x11000 matrix you can get a good machine precision approximation in waitable time on modern machines
00:31:09 <wob_jonas> but you'd have to ask the people who work with large matrixes if you want to be sure
00:31:23 <wob_jonas> the theoretical asymptotic complexity is less relevant
00:34:29 <Lymia> http://zem.fi/bfjoust/internals/
00:34:32 <Lymia> Algorithm's discussed here
00:39:10 <fizzie> Sorry about the broken MathJax, by the way.
00:39:27 <fizzie> It's also going to be fixed by the migration. :)
00:39:46 <Lymia> Is it practical to calculate on 11000x11000?
00:40:24 <Lymia> I'm not familiar with heavy math on lots of data like this
00:42:25 <wob_jonas> your "lots of data" is usually someone else's "small dataset" though
00:42:49 <fizzie> My guess is "yes, but you might need to be slightly more clever than the page implies".
00:43:17 <fizzie> It's not like we're doing PageRank by multiplying billion-times-billion matrices either.
00:43:47 <Lymia> wob_jonas, they have more processing power and memory than a 2014 laptop though
00:44:04 <fizzie> (Of course the BF Joust scoring matrix is dense, unlike the adjacency matrix of the interweb.)
00:44:07 <Lymia> Relative to my resources. :D
00:44:30 <wob_jonas> fizzie: yes, but luckily being clever is easy here, because there are libraries with highly optimized and reliable functions for this kind of numerical computation
00:44:41 <wob_jonas> you can off-load the cleverness to those existing libraries
00:45:04 <fizzie> Yes, I meant the general "you", not the specific "you".
00:45:29 <fizzie> (The existing implementation the hill runs on is decidedly not clever.)
00:48:12 <Lymia> I don't actually know matrix math
00:48:20 <Lymia> explain all this about eigenvalues :D
00:49:25 <Lymia> 208/10844 warriors done so far
00:50:13 <wob_jonas> Lymia: for pagerank, you have a square matrix a with nonnegative elements. a(i,j) tells how much page i says that page j is cool. pagerank assumes that cool pages are to be trusted more for telling what other pages are cool.
00:51:39 <wob_jonas> if you wish, you can consider that an iteration process, where in first approximation, an all-ones vector is your guess of coolness, and in each step, you update it like c:=a*c, and that's a matrix multiplication, so the new coolness approximation says how cool pages are according to pages that are cool per the previous approximation.
00:52:55 <wob_jonas> but this process will converge (if you also normalize the vector for constant multiplications) to a coolness vector that satisfies the equation c=a*c, and that c is the eigenvector for the largest eigenvalue of a
00:53:36 <wob_jonas> for a competition, you might want to do something similar, in that you consider a program cool if it often beats cool programs.
00:54:06 <wob_jonas> but there's some freedom in how you want to convert match scores to the elements of a
00:54:17 <wob_jonas> they have to be positive, but still there's more than one way
00:54:36 <wob_jonas> and of course you can use algorithms less dumb than the simple pagerank
00:54:42 -!- Soni has quit (Quit: Leaving).
00:56:16 <fizzie> Yes. Note that you don't *have* to do what's now called "Markov scoring" -- the codu.org "traditional" scoring is easier to compute, and still has some degree of giving you more score for beating stronger opponents.
00:56:47 <wob_jonas> you can also do some sort of multiple-round elimination tournament for that
00:57:22 <wob_jonas> like, in each round, rank by the total of some function of the match scores, then eliminate a number of the lower ranking players, the rest advance to the next round
00:57:24 <fizzie> I'm going to go patch in the MathJax changes to the zem.fi copy, it's ridiculous how broken that page is.
00:57:50 <wob_jonas> in later rounds you only have better programs, so the ranking starts to indicate how programs perform against thsoe
00:58:07 <wob_jonas> this is the traditional solution for competitions where matches are random and costly, like a lot of human sports
00:58:18 <wob_jonas> a traditional solution, not the only one
00:58:25 <shachaf> oerjan: https://twitter.com/shachaf/status/974811286474129408 hth
00:58:47 <wob_jonas> mind you, it's optimized not only for getting a good final result, but also for making the later rounds more interesting to watch
00:59:04 <wob_jonas> which we might not care about because bfjoust isn't really a spectator sport
01:00:08 <wob_jonas> imagine a bfjoust tournament as a spectator sport, with programs playing live in a stadium in front of thousands of viewers, some famous reporter commentating on them, and the whole thing broadcast live in television
01:00:26 <fizzie> There, the https://zem.fi/bfjoust/internals/ page should be unbroken again.
01:00:48 <zzo38> Then some famous reporter should learn bfjoust if they want to make the comment of it.
01:02:55 -!- boily has quit (Quit: REFERENTIAL CHICKEN).
01:04:34 <wob_jonas> And then there'll be heated debates among fans about duels where a program supposedly cheated, or the referee was unfair, or about which historical rules changes that have ruined the game forever.
01:05:18 <zzo38> The computer can do it automatically so that you do not need to worry if the program is cheated. Arguments about historical rule changes can still be possible though.
01:05:30 <fizzie> "That flag was definitely zero for two cycles there!"
01:06:15 <wob_jonas> zzo38: or you can consider it cheating if someone optimizes their submission too specifically against the current leading programs
01:08:14 <zzo38> O, I suppose they can argue about if they can consider that cheating, too, but don't they do such a thing in Magic: the Gathering anyways? If the card isn't banned then it isn't cheating. And if it is making a tournament on the television then they don't know anyways what is the other program, to know what to submit or not
01:08:18 <Lymia> fizzie, I'd want markov scoring
01:08:27 <Lymia> Mostly because "all programs ever" is going to be full of steaming garbage
01:09:31 <Lymia> ais523 is going to be sad if margins3 has a garbage rank because no markov scoring :P
01:10:54 <wob_jonas> zzo38: more importantly, it's not the program that'd be cheating, but the people who write the program, and it's not so absurd to imagine a spectator sport where players *write* bfjoust programs, it's only absurd to watch a spectator sport where the programs are already present and battling each other
01:11:47 <fizzie> Lymia: Well, the tweaked traditional scoring is more margins3-friendly, if not quite as friendly as Markov scoring.
01:13:32 <zzo38> wob_jonas: Yes, and it is what I meant, you have to write a program. And you also have to agree to appear on the television in order to do so.
01:13:34 <fizzie> Anyway, the Markov thing should really be doable for that size.
01:13:36 <Lymia> Nyuroki's a better middle ground on the idea, I guess. It tries to win on score and markov by giving up 2-5 tapes lengths per program
01:13:45 <Lymia> I want to give margins a fair chance since it's clever
01:14:24 <zzo38> But I really don't know if it can ever work as a television show; I just gave some idea to improve it in case it ever was.
01:15:37 <wob_jonas> zzo38: right, but the point is, since the matches itself won't be spectator sport, there's not much point optimizing the scoring method to one where people can see lots of interesting matches live
01:16:03 <wob_jonas> that's where I started this comment, although I got carried away
01:16:38 -!- imode has joined.
01:17:21 <HackEgo> Evil overlords do evil acts like taking over the world, kicking puppies, and changing their own wisdom entries.
01:17:49 <wob_jonas> Do they also hover over the masses?
01:18:41 <HackEgo> bfjoust is a spamming tool for #esoteric.
01:21:23 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:40:32 -!- sebbu2 has joined.
01:43:29 <HackEgo> K-2SO \ Darth Bane \ Vice Admiral Amilyn Holdo \ Greedo \ General Armitage Hux
01:43:42 -!- sebbu has quit (Ping timeout: 246 seconds).
01:44:38 <wob_jonas> Hmm, eventually I'll have to update this with characters from the movie this year. I think we already know the name of two significant ones.
01:45:37 <Lymia> 10% done with the cranklancing :D
01:45:47 <wob_jonas> Also, I should consider advancing starwars so that it can pick the alternate names like "Darth Vader" and "Darth Sidious", but still know that it's the same as the other name for the same character and not pick the two together when there's a numeric argument.
01:46:00 <wob_jonas> The current state where it just never says "Darth Vader" is boring.
01:46:27 <Lymia> So, about 14 hours for the whole hill
01:47:41 <Lymia> 1100 matchups per second
01:47:49 <Lymia> .. doing the math backwards
01:47:50 <fizzie> Lymia: You're using the crank now, instead of the gear? I think that's going to generate an unreasonable number of statistics.
01:48:20 <fizzie> The names aren't confusing at all, what do you mean.
01:49:35 <Lymia> You can support a hill of 1000 warriors
01:49:43 <Lymia> Giving 1 second per new submission
01:49:59 <Lymia> I should benchmark gearlance too
01:50:57 <wob_jonas> doesn't it sort of depend on what submission it is? for a submission that draws by timing out a lot, computing matches might take longer.
01:51:40 <fizzie> At least the cycle counts (which probably correlate pretty well with real time) vary quite a lot, yes.
01:51:43 <fizzie> http://zem.fi/bfjoust/vis/cycles/
01:52:15 <Lymia> 3.9Grun/evaluation_tmp/
01:52:19 <Lymia> The cost of wrenchlance
01:52:22 <Lymia> IDK if it's worth it
01:53:12 <Lymia> But I've already started
01:53:20 <fizzie> Lymia: If you ran a tournament of 11000 programs with cranklance, it would generate 913 GiB of statistics in the compact GearTalk packed format.
01:53:43 <Lymia> -rw-r--r-- 1 lymia lymia 1.1G Mar 16 20:53 evaluation.txt
01:53:52 <Lymia> This is my dump of matchup matrixes straight to disk
01:53:58 <Lymia> because I don't have enough memory to store it in RAM
02:21:30 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
02:26:12 <esowiki> [[User:Qwertyu63]] https://esolangs.org/w/index.php?diff=54352&oldid=54037 * Qwertyu63 * (-3225)
02:34:32 <esowiki> [[Talk:Number Factory]] N https://esolangs.org/w/index.php?oldid=54353 * Qwertyu63 * (+161) Created page with "3snoW, thank you for taking the time to play around with Number Factory. --~~~~"
02:38:38 -!- hppavilion[1] has joined.
02:39:47 <Lymia> fizzie, I'm thinking of running cranklance for a "top 200 ever" or something
02:41:00 <Lymia> "Canonical name" of a program is the first ever appearance of it.
02:41:57 <Lymia> Then, recursively remove the top program by markov scoring, and all other programs with the same canonical name, find first again
02:42:02 <Lymia> To get the top 200 distinct programs
02:43:33 -!- hppavilion[1] has quit (Quit: HRII'FHALMA MNAHN'K'YARNAK NGAH NILGH'RI'BTHNKNYTH).
02:44:15 -!- hppavilion[1] has joined.
02:49:16 <Lymia> fizzie, minor complaint "Conceptually, each program is allocated a uniform score" <- it doesn't say what the uniform score to begin with is
02:50:37 <Lymia> "Let p(a) be the stationary distribution reached from the uniform initial distribution. To get numbers more closely approximating the traditional scores, we set the Markov score s_a of a program to s_a=1000*p(a)." < Doesn't this only make sense with a certain starting value?
02:59:40 <esowiki> [[User:Qwertyu63]] https://esolangs.org/w/index.php?diff=54354&oldid=54352 * Qwertyu63 * (+6)
03:01:12 <fizzie> Lymia: Well, the word "distribution" implies \sum_a p(a) = 1. But it's true that the description is maybe a little vague.
03:01:44 <Lymia> .... is a fixed 1000*p(a) actually correct?
03:01:58 <Lymia> Would the scores go wonky on a 11000 program hill?
03:02:05 <Lymia> (Smaller or larger than the 50 program hill)
03:02:13 <Lymia> I don't know how I should expect it to theoretically behave
03:02:29 <moony> we need to revive redcode or something
03:02:42 <moony> it's fun to write redcode programs, but all the various hills are barren
03:02:44 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
03:03:33 <fizzie> Lymia: I would expect them to be much smaller, assuming there is a large group of reasonably large programs.
03:03:59 <Lymia> Was redcode "solved"?
03:04:23 <fizzie> ...s/reasonably large/reasonably good/. I don't know what I was thinking.
03:04:26 <moony> honestly, why not try and remake it or something?
03:04:59 <moony> The R16K1S60 (a computer built in a game, The Powder Toy) has a nice RISC instruction set that could be modified into a program useful for that kind of thing
03:05:51 <moony> i suspect redcode stagnated
03:05:54 <Lymia> I'm not sure which BFJoust is
03:05:59 <moony> it's not really possible to make a ultimate solution for it
03:06:23 <Lymia> We've figured out most of the major strategies (seemingly) already, so everything remaining kinda has a fixed metagame.
03:06:24 <moony> programs can modify eachother's sourcecode, so it makes sense why that's not possible
03:10:20 <fizzie> Lymia: The factor of 1000* really comes from the fact that on a hill of size 47 (which is what ours is), the average p(a) is by definition 1/47 = 0.021, multiplying by a 1000 makes that a 21 which is a "reasonable" number.
03:12:30 <fizzie> By the way, there's a degenerate case for the Markov scoring -- if you do manage to evolve that program that wins against the entire current hill at all tape lenghts and polarities, it will get a score of 1000 and all the others will get a score of 0.0, which will make the sorting somewhat unstable.
03:17:06 <fizzie> Another fun equivalent view to understand the scoring is that it's just the probability distribution for which program you end up standing on, if you do a long enough random walk and choose your steps with the probabilities t_a,b.
03:18:44 <moony> If only stuff like redcode and bfjoust didn't stagnate so fast ):
03:19:28 <Lymia> I did put that program on the hill
03:19:30 <Lymia> I just took it off
03:19:38 <Lymia> Because it was very unresistant to programs it never saw
03:19:43 <Lymia> And it was fouling up the hill
03:19:58 <fizzie> Oh, I forgot it did happen.
03:20:07 <fizzie> Kind of happy it didn't break any worse then.
03:21:02 <fizzie> "Lymia.kiseki: points 45.83, score 999.98, rank 1/47" right.
03:21:18 <Lymia> I think that version bad a bug
03:21:23 <Lymia> I did get the 46.00
03:21:44 <fizzie> Oh yes, it's a few lines later.
03:23:49 <Lymia> Probably a good thing
03:23:53 <Lymia> That it only converged to 999.98?
03:38:27 -!- sleffy has joined.
03:54:23 <moony> i wonder if befungejoust could be a thing
04:08:55 <Lymia> How many variations of leonid__lols.bfjoust are there
04:08:57 <zzo38> One way to compress a chess game recording in the computer is to enumerate all possible moves and determine how many bits is needed, and then figure which mode is made and then record that number using the number of bits needed. But then there is also such thing to consider as resigning, drawn game, and annotations.
04:09:23 <Lymia> zzo38, I believe this is called huffman tree compression
04:09:56 <Lymia> Or, well. idk, maybe arithmetic coding
04:11:24 <zzo38> Actually it isn't; a real Huffman tree does not have any unusable codes, because they are shortened in that case.
04:14:38 <zzo38> Another alternative would be to use a large number, and then to figure how many possible moves, divide by that number and the remainder indicates the current move and the quotient is then used to repeat this for the next move. However, I don't know how difficult/complicated that might be.
04:22:16 <zzo38> (And because Open Game is common, it might be worth to assign a code specifically for that case.)
04:23:02 <Lymia> how much more efficient is it over just .tar.xzing the whole thing
04:24:18 <zzo38> Yes, and I don't know. Still it needs to compress some sort of format, probably PGN.
04:34:18 <Lymia> Probably PGN is good enough
04:34:27 <Lymia> .tar.xz can even compress things like very common openings
04:34:42 <Lymia> A very compact initial coding like that might be worse
04:34:53 <Lymia> Because it inhibits general compression from seeing other useful patterns
04:36:06 <zzo38> If it is solid compression then yes you can compress common openings easily, I think. I don't know how .xz is working, but with DEFLATE at least it helps to not pack things in individual bits and to use bytes instead.
04:38:53 -!- tromp has quit (Remote host closed the connection).
04:59:27 -!- sprocklem has quit (Ping timeout: 240 seconds).
05:01:28 -!- sprocklem has joined.
05:44:27 -!- [GautamS] has joined.
05:48:29 -!- augur has quit (Remote host closed the connection).
05:53:47 -!- [GautamS] has quit (Remote host closed the connection).
06:11:59 -!- moony has changed nick to moonythederp.
06:13:30 -!- moonythederp has changed nick to moony.
06:16:34 -!- Melvar has quit (Ping timeout: 264 seconds).
06:18:21 -!- Melvar has joined.
06:26:38 -!- doesthiswork has quit (Quit: Leaving.).
06:36:38 <esowiki> [[I/D machine]] N https://esolangs.org/w/index.php?oldid=54355 * Ais523 * (+4064) new language; this page is unfinished but it's worth posting what I have so far
06:38:09 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=54356&oldid=54343 * Ais523 * (+18) /* I */ +[[I/D machine]]
06:38:34 <esowiki> [[User:Ais523]] https://esolangs.org/w/index.php?diff=54357&oldid=54024 * Ais523 * (+17) +[[I/D machine]]
06:47:12 <moony> ais523, nicely done
06:48:20 <moony> i'm going to go implement that in the R16K1S60, just for fun. it's so simple
06:58:22 <esowiki> [[I/D machine]] https://esolangs.org/w/index.php?diff=54358&oldid=54355 * Ais523 * (+81) /* One-command view */ clarify the implicit-loop nature of this
06:58:47 <ais523> thanks to RAM0 for getting me thinking along these lines
07:05:45 <esowiki> [[OISC]] https://esolangs.org/w/index.php?diff=54359&oldid=52673 * Ais523 * (+173) /* List of OISCs */ +[[I/D machine]]
07:08:45 -!- sleffy has quit (Ping timeout: 264 seconds).
07:23:34 -!- xkapastel has quit (Quit: Connection closed for inactivity).
07:28:28 <moony> ais523, i don't quite get how the I/D machine is turing. It's kinda mystical to me
07:30:03 <moony> But it's also amazingly easy to implement. https://hastebin.com/udulefubup.pl
07:32:45 -!- imode has quit (Ping timeout: 264 seconds).
07:53:28 <zzo38> When it ask to enter your name for the high score, why won't this game let you to type numbers?
08:06:11 -!- tromp has joined.
08:12:40 -!- laerling has joined.
08:43:07 <zzo38> Not only the high score but also the save games. And punctuation doesn't work either.
08:53:59 -!- SopaXorzTaker has joined.
08:54:25 <SopaXorzTaker> I've invented a program to convert asm-like expressions to brainfuck
08:54:44 <zzo38> OK, did you post it?
09:15:04 <moony> SopaXorzTaker, bragging is a bannable offense
09:15:24 <SopaXorzTaker> also, needs some fixup with relative addressing inside of loops
09:23:31 <SopaXorzTaker> fun stuff: you can do an LDA to load a cell address
09:24:55 <SopaXorzTaker> like, it's not possible to know how much should it be decremented by
09:26:19 <zzo38> There is the possibility to do if you store stuff in between cells to be able to deal with addressing
09:59:22 <esowiki> [[Special:Log/newusers]] create * Sane theinsane * New user account
10:58:15 -!- AnotherTest has joined.
11:02:13 -!- LKoen has joined.
11:08:35 <esowiki> [[Haddock]] https://esolangs.org/w/index.php?diff=54360&oldid=54146 * Zzo38 * (-23) Correct the category
11:12:52 <esowiki> [[Talk:I/D machine]] N https://esolangs.org/w/index.php?oldid=54361 * Keymaker * (+2612) Some notes.
11:13:42 <esowiki> [[Talk:I/D machine]] https://esolangs.org/w/index.php?diff=54362&oldid=54361 * Keymaker * (+86) Forgot to sign.
11:14:50 -!- Phantom_Hoover has joined.
11:15:32 <lambdabot> PAMR 171053Z 00000KT 10SM SCT018 OVC050 01/01 A3002 RMK AO2 SLP168 T00060006
11:22:45 <lambdabot> ESSB 171050Z 34008KT 9999 SCT033 M02/M10 Q1031 R30/19//59
11:27:58 <esowiki> [[HashHell]] https://esolangs.org/w/index.php?diff=54363&oldid=49065 * Zseri * (-108)
11:41:11 -!- zseri has joined.
11:47:44 <Lymia> -rw-r--r-- 1 lymia lymia 9.8G Mar 17 06:12 evaluation.txt
11:47:51 <Lymia> finished the 11000 program BFJoust hill
11:52:47 <ais523> how long did it take to run?
12:05:27 <Lymia> Now to try and crunch it @.@
12:23:56 -!- ais523 has quit (Quit: quit).
12:41:42 -!- laerling has quit (Ping timeout: 246 seconds).
13:00:29 -!- doesthiswork has joined.
13:02:40 -!- laerling has joined.
13:11:28 -!- sebbu2 has changed nick to sebbu.
13:22:52 -!- zseri has quit (Quit: Leaving).
13:42:48 -!- Guest25915 has changed nick to sdhand.
13:42:48 -!- sdhand has quit (Changing host).
13:42:48 -!- sdhand has joined.
14:10:26 -!- doesthiswork has quit (Quit: Leaving.).
14:26:36 <esowiki> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=54364&oldid=54331 * Sane theinsane * (+121)
14:27:16 <esowiki> [[Hatemath]] N https://esolangs.org/w/index.php?oldid=54365 * Sane theinsane * (+1264) Created page with "== ABOUT hatemath == '''hatemath''' is an esoteric programming language that was created by Saketh Suresh in 2018.The language uses 8 commands 1 for printing, 3 for telling th..."
14:32:37 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=54366&oldid=54356 * Sane theinsane * (+15) /* H */
14:57:12 <esowiki> [[Stack Up]] https://esolangs.org/w/index.php?diff=54367&oldid=52518 * Qwertyu63 * (+4)
14:57:14 -!- xkapastel has joined.
14:57:32 -!- Sgeo__ has joined.
14:59:46 -!- Sgeo_ has quit (Ping timeout: 245 seconds).
14:59:51 -!- oerjan has joined.
15:01:22 -!- Guest6451 has changed nick to Slereah.
15:05:57 -!- SopaXorzTaker has quit (Remote host closed the connection).
16:45:03 <Lymia> https://paste.lymia.moe/lymia/006aa5aa00a0b1547970406dc22d524645ca9b30.txt
16:45:11 <Lymia> "Best ever in bfjoust", raw scores
16:46:09 <Lymia> This is with no 'best in class' algorithms/etc, so
16:46:24 <Lymia> Lots of duplicates for the people who optimize on ladder
16:50:08 <Lymia> Kiseki is in the garbage where it belongs, at least
16:55:38 -!- LKoen has quit (Remote host closed the connection).
17:07:10 <oerjan> . o O ( shachaf is on twitter? )
17:08:16 <Lymia> fizzie, https://paste.lymia.moe/lymia/a92e2a22c2a1d9fa3cee559fd50d4cce7f7d1c03.txt Evaluations done. :D
17:08:20 <Lymia> Now to try and do Markov on this
17:08:25 <Lymia> .tell ais523 https://paste.lymia.moe/lymia/a92e2a22c2a1d9fa3cee559fd50d4cce7f7d1c03.txt
17:08:31 <Lymia> ... or whatever it was
17:12:30 -!- SopaXorzTaker has joined.
17:32:58 -!- tromp has quit (Remote host closed the connection).
17:45:14 <Lymia> @tell ais523 https://paste.lymia.moe/lymia/a92e2a22c2a1d9fa3cee559fd50d4cce7f7d1c03.txt
17:48:01 <esowiki> [[User:ZM]] https://esolangs.org/w/index.php?diff=54368&oldid=54344 * ZM * (+124)
17:50:45 -!- tromp has joined.
17:56:53 -!- ivzem has joined.
17:57:01 <esowiki> [[User:ZM]] https://esolangs.org/w/index.php?diff=54369&oldid=54368 * ZM * (+417) More information overall
18:00:47 -!- idris-bot has quit (Ping timeout: 268 seconds).
18:02:09 -!- Melvar has quit (Ping timeout: 260 seconds).
18:03:51 <esowiki> [[User:ZM]] https://esolangs.org/w/index.php?diff=54370&oldid=54369 * ZM * (+285) remembered one more
18:03:58 -!- teuww[m]7KBI5X has joined.
18:04:03 <Lymia> Let's see how long numpy.linalg.eig takes
18:05:13 -!- Melvar has joined.
18:06:48 <esowiki> [[User:ZM]] https://esolangs.org/w/index.php?diff=54371&oldid=54370 * ZM * (+104)
18:07:02 <esowiki> [[User:ZM]] https://esolangs.org/w/index.php?diff=54372&oldid=54371 * ZM * (+0)
18:10:30 -!- teuww[m]7KBI5X has quit (Remote host closed the connection).
18:19:02 -!- idris-bot has joined.
18:24:06 <Lymia> iterative method it is
18:24:19 <zzo38> Is it possible to use ftell() on /dev/null?
18:24:20 <Lymia> iterative multiplication hoping for a fixed point
18:31:47 -!- LKoen has joined.
18:35:28 -!- oerjan has quit (Quit: Later).
18:39:58 <esowiki> [[BFJoust]] N https://esolangs.org/w/index.php?oldid=54373 * B jonas * (+22) Redirected page to [[BF Joust]]
18:40:09 -!- imode has joined.
18:41:15 <esowiki> [[BF Joust]] https://esolangs.org/w/index.php?diff=54374&oldid=46768 * B jonas * (+18) Many call it "BFJoust" in chat
18:43:47 -!- wob_jonas has joined.
18:45:58 <wob_jonas> BFJoust syntax doesn't have an abbreviation for conditionals like [p s ]q s where s never terminates, right? I'm asking because nesting about 20 such conditionals, one for each cell that might be the flag, could be useful, but fully expanded the code could get too big if there's other nontrivial stuff in there.
18:46:06 <Lymia> zemhill_rc9c2a0e.Lymia_nyuroki2.bfjoust: nan
18:46:19 -!- gxwtarb has joined.
18:46:32 <Lymia> wob_jonas, no such syntax
18:47:40 <wob_jonas> zzo38: and your password isn't allowed to contain colons or stars?
18:48:45 <wob_jonas> Lymia: ask on #eigen for the matrix computation stuff. wait, let me join there too. or you can ask here if you wish.
18:48:52 <zzo38> wob_jonas: Why shouldn't it be allowed to contain whatever bytes I want it to contain (with the possible exception of nulls and line breaks)?
18:48:59 <Lymia> wob_jonas, that nan is probably an infinity :D
18:49:05 <Lymia> I severely screwed up the matrix construction
18:49:18 <zzo38> What password exactly do you mean anyways?
18:49:21 <wob_jonas> zzo38: it should. but there's at least one system that doesn't allow colons, and the old services of freenode converted stars to percent signs in passwords
18:49:47 <wob_jonas> zzo38: none in particular, just reacting to that stuff about no digits allowed in the high score table player names
18:50:44 <zzo38> For IRC, you can presumably prefix it with a colon if it needs to contain colons or spaces (but again it should then still be allowed to contain anything other than nulls and line breaks)
18:51:07 <wob_jonas> zzo38: no, the irc didn't have a problem with colons, that was a different system
18:51:16 <wob_jonas> it had a problem with stars vs percent signs for some reason
18:52:36 <wob_jonas> also in bfjoust, the star syntax requires the parenthesis, so I can't just write +*119 or +119 or something like that, right?
18:53:34 <zzo38> Presumably it should be stored hashed to avoid such a problem, but even so presumably when it checks what is your password it can do the same transformation on it if it is really necessary. Still, yes it is a bad idea if you can't contain colons and stars. Also some things have too short maximum length for password. And sometimes is even worse; on field is limited another isn't and if you type too many it is error
18:53:54 <Lymia> Good luck getting anything on the current hill
18:53:56 <zzo38> I have used roman numbers to write the date on the high score if you can only type letters and spaces. Some games automatically include the date so I can just leave the name blank.
18:54:00 <wob_jonas> zzo38: luckily that problem has been solved since the old services are retired
18:54:27 <wob_jonas> Lymia: I heard bottom step of the hill is free
18:54:46 <Lymia> Maybe I should say
18:54:51 <Lymia> "For more than 3 cycles"
18:55:53 <zzo38> ATM passwords and sometimes if you need a password for a credit card or debit card for payment, are limited usually to four digits I think, and I think four digits password is a too short limit; the maximum should be at least ten digits
18:56:54 <Lymia> https://paste.lymia.moe/lymia/11d469b058a069d13dbc9a2f166fcfdad82964a8.txt
18:57:01 <Lymia> my implementation of matrix scoring does not appear correct
18:58:58 <fizzie> Those are pretty big numbers.
18:59:08 <fizzie> Well, and small as well.
19:00:01 <fizzie> I like how there's one in the middle that's about 0.
19:01:52 <fizzie> Lymia: Here's the Eigen-based iterative code I have in my reimplementation -- no guarantees, but at least for the current hill it produces identical results, modulo some roundoff.
19:03:13 <fizzie> (And a good sanity check for the t matrix is that all the numbers in it are in [0, 1].)
19:03:37 -!- SopaXorzTaker has quit (Remote host closed the connection).
19:03:57 <Lymia> matrix[a, b] = the number of times a loses to b / tape lengths * program count?
19:04:06 <Lymia> matrix[a, a] = everything that's left
19:04:50 <fizzie> Well, s/tape lengths/tape configurations/. And everything that's left = everything in that row. But yeah.
19:05:13 <Lymia> I wonder if I'm transposing the matrix by accident, actually
19:05:52 <fizzie> That's easy to do, but probably shouldn't lead to crazy results.
19:06:54 -!- wolfgangit has joined.
19:07:55 <Lymia> Because of how I stored the evaluation data
19:08:00 <Lymia> (Since it won't fit easily in memory)
19:08:10 <Lymia> I dumped it to disk as a list of matchups in arbitary order
19:11:44 -!- variable has quit (Quit: Found 1 in /dev/zero).
19:13:57 -!- wolfgangit has quit (K-Lined).
19:18:35 -!- gxwtarb has quit (K-Lined).
19:23:17 -!- j0z has joined.
19:24:21 -!- sleffy has joined.
19:25:43 <Lymia> https://paste.lymia.moe/lymia/0d97c3e1f9f5a9d659e9bf7ca53ce78c12977fef.txt
19:25:54 <Lymia> But something seems off and I can't quite put my finger to it
19:33:21 -!- qbijy has joined.
19:35:27 -!- qbijy has quit (Remote host closed the connection).
19:46:00 <wob_jonas> oh! I'm at the top among the always-losing submissions!
19:48:16 <wob_jonas> also, my highest scoring submissions are called "test" and "nop2" for some reason
19:48:42 <Lymia> https://paste.lymia.moe/lymia/07f660a8951390b91961ad5fceddf72405d17841.txt
19:49:55 <Lymia> This is probably somewhat messed up
19:50:03 <Lymia> By the presence of many repeated copies of the same bots
19:51:15 <Lymia> fizzie, could many copies of the same very high scoring bots mess up markov scoring?
19:55:07 <Lymia> @tell ais523 Full hill markov scoring, no cleverness: https://paste.lymia.moe/lymia/07f660a8951390b91961ad5fceddf72405d17841.txt
19:59:48 -!- idris-bot has quit (Ping timeout: 268 seconds).
20:02:33 <wob_jonas> Lymia: you could try taking only the latest version of each name
20:02:44 <Lymia> I'm going with the best version of every name
20:02:46 <Lymia> Rather than latest
20:02:55 <wob_jonas> how do you tell which one is the best?
20:04:13 <wob_jonas> or you could compute a ranking by taking the current hills, and checking the total score of matches of every submission against only the forty-something on the current hill
20:04:50 <Taneb> Or making a huge hill with every submission ever on it
20:06:00 <Taneb> Am I right in thinking BFJoust is non-transitive?
20:06:12 <Taneb> It's possible for A to be beat B and B to beat C and C to beat A?
20:08:40 <wob_jonas> just like any involved game really
20:09:02 <Taneb> Just like Europa Universalis 4
20:10:02 <Lymia> "1467 distinct programs."
20:10:51 <Taneb> What's the program (of those not designed to lose instantly) with the most names?
20:12:25 <Lymia> I'll have to do separate analysis on that
20:12:43 <Taneb> Ah, don't worry about that (at least not for my sake)
20:13:37 <wob_jonas> I mean, in any game that is made of interactive matches between two players (or teams), like chess or curling or tennis, it would be a miracle if the matches happened to be transitive. It's just that in most games, like football, the matches are also so random that the randomness masks the nontransitivity.
20:13:46 <moony> I wish there were more things like bfjoust and redcode. bfjoust already has an established meta, nothing really to improve, and redcode just stagnated
20:14:17 <wob_jonas> moony: it's not true that there's "nothing really to improve". there are improvements, it's just that the game is hard so few people will take the time.
20:14:26 <wob_jonas> moony: you can play Magic: the Gathering though if you wish
20:14:43 <moony> Don't even have magic. ):
20:15:45 <Lymia> https://paste.lymia.moe/lymia/265a0683258ed734d9dd0bbe1ee6e3a807a20d29.txt
20:15:54 <Lymia> The list with only the top for each name
20:15:58 <Lymia> Now to rerun markov on these
20:16:51 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
20:17:09 -!- wob_jonas has joined.
20:20:33 <wob_jonas> !zjoust blindbigdecoy http://dpaste.com/0KV7DFJ.txt
20:20:34 <zemhill> wob_jonas.blindbigdecoy: points -30.50, score 4.06, rank 47/47
20:21:13 <Lymia> !zjoust better_yet .
20:21:14 <zemhill> Lymia.better_yet: points -33.43, score 2.81, rank 47/47
20:21:23 <Lymia> !zjoust better_yet (+)*-1
20:21:24 <zemhill> Lymia.better_yet: points -14.67, score 8.32, rank 47/47 (--)
20:29:12 <wob_jonas> !zjoust bigdecoy http://dpaste.com/2SSQY79.txt
20:29:13 <zemhill> wob_jonas.bigdecoy: points -29.36, score 4.36, rank 47/47
20:30:22 <Lymia> this is so irrelevant
20:30:32 <Lymia> I won't bother adding it to the all programs listing
20:30:50 <wob_jonas> sure, that's not why I'm submitting it
20:56:36 <Lymia> @tell ais523 Markov scoring on the best version (based on the preliminary markov screening) of every program ever: https://paste.lymia.moe/lymia/9b087fcbb87874c1560f7b4cc742ed4c6db03330.txt
20:58:45 -!- variable has joined.
21:11:10 <Lymia> !zjoust test (.) *-1 <
21:11:11 <zemhill> Lymia.test: points -33.43, score 2.81, rank 47/47
21:11:16 <Lymia> !zjoust test (.) * -1 <
21:11:16 <zemhill> Lymia.test: points -33.43, score 2.81, rank 47/47 (--)
21:11:18 <quintopia> is there a good fun community for code golf now that PPCG is old and strict and stodgy?
21:11:20 <Lymia> !zjoust test (.) * - 1 <
21:11:20 <zemhill> Lymia.test: points -46.00, score 0.00, rank 47/47 (--)
21:11:27 <Lymia> !zjoust test (.) * 100000 <
21:11:28 <zemhill> Lymia.test: points -33.43, score 2.81, rank 47/47 (--)
21:11:31 <Lymia> !zjoust test (.) * 10000 <
21:11:31 <zemhill> Lymia.test: points -36.38, score 2.61, rank 47/47 (--)
21:11:33 <Lymia> !zjoust test (.) * 10 000 <
21:11:34 <zemhill> Lymia.test: points -46.00, score 0.00, rank 47/47 (--)
21:11:40 <Lymia> quintopia, strict and stodgy?
21:17:56 <zzo38> Well, there is anagol
21:18:27 <shachaf> zzo38: Do you like index notation?
21:18:30 <zzo38> You could also try to implement something on a Unusenet server
21:20:20 <zzo38> shachaf: Yes I think it can be help
21:29:56 <shachaf> zzo38: do you prefer <| |> notation
21:30:11 -!- j0z has quit (Ping timeout: 245 seconds).
21:30:52 -!- laerling has quit (Quit: Leaving).
21:31:33 <zzo38> It depend what you are doing, different notation is good for a different purpose
21:33:11 <wob_jonas> is the left side or the right side conjugated?
22:09:01 <Lymia> !zjoust david_werecat_MV_validation https://paste.lymia.moe/lymia/b6d44f4009c66ef79421827d35ea0077da2c5f9c.txt
22:09:05 <zemhill> Lymia.david_werecat_MV_validation: points 12.40, score 33.38, rank 7/47
22:09:06 <Lymia> !zjoust david_werecat_MV_validation <
22:09:07 <zemhill> Lymia.david_werecat_MV_validation: points -46.00, score 0.00, rank 47/47 (-40)
22:11:42 <Lymia> !ztest best_nyuroki >>>>>>>>[(>[(-)*10[+].[-].]---)*21]++<[>(>[(-)*10[+].[-].]---)*21]--<[>>(>[(-)*10[+].[-].]---)*21]+<[>>>(>[(-)*10[+].[-].]---)*21]--<[>>>>(>[(-)*10[+].[-].]---)*21](+)*51<(-)*51<(-)*51<(+)*51<(-)*19>>>>>(-)*10>(+)*10>(-)*10>(+)*10(>)*6(>[(-)*10[+.].[-.].]---)*21
22:11:42 <zemhill> Lymia.best_nyuroki: points -5.00, score 16.28, rank 33/47
22:12:47 <Lymia> @tell ais523 This is very much not representative of the current hill, BTW. The Nyuroki at the top there is a old weird one-line variant.
22:29:54 <Lymia> @tell ais523 It gets rank #33 on zemhill ladder.
22:44:21 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
22:44:36 <esowiki> [[I/D machine Turing-completeness proof]] N https://esolangs.org/w/index.php?oldid=54375 * Ais523 * (+13417) probably more than half a proof that the I/D machine is Turing-complete; not finished yet
22:47:22 -!- ais523 has joined.
22:49:09 <lambdabot> Lymia said 5h 3m 54s ago: https://paste.lymia.moe/lymia/a92e2a22c2a1d9fa3cee559fd50d4cce7f7d1c03.txt
22:49:09 <lambdabot> Lymia said 2h 54m 1s ago: Full hill markov scoring, no cleverness: https://paste.lymia.moe/lymia/07f660a8951390b91961ad5fceddf72405d17841.txt
22:49:09 <lambdabot> Lymia said 1h 52m 32s ago: Markov scoring on the best version (based on the preliminary markov screening) of every program ever: https://paste.lymia.moe/lymia/9b087fcbb87874c1560f7b4cc742ed4c6db03330.
22:49:09 <lambdabot> Lymia said 36m 21s ago: This is very much not representative of the current hill, BTW. The Nyuroki at the top there is a old weird one-line variant.
22:49:11 <lambdabot> Lymia said 19m 14s ago: It gets rank #33 on zemhill ladder.
22:50:16 <ais523> Lymia: I'm not surprised the results are different when you put a large number of bad programs onto the hill, being able to beat bad programs effectively is an important skill then
22:50:43 <Lymia> Shouldn't Markov scoring minimize that effect?
22:51:06 <zzo38> How is Markov scorig working?
22:52:15 <ais523> zzo38: basically, the score of your program is equal to a weighted average of your results against each other program; the average is weighted by the other program's score
22:52:31 <ais523> this is something of an infinite regress in the definition but it's possible to resolve it so that the score swork
22:52:45 <ais523> Lymia: I'm not sure; most bad programs will randomly beat a few good programs
22:52:58 <ais523> and with so many of them on the hill, it's possible that good programs are being underrepresented in terms of the weights
22:54:12 <ais523> a good example in my programs is slowpoke (very effective against less well engineered programs) doing much better than anticipation (which fails outright against many programs as I had to delete a lot of unused cases to fit it under the size limit)
22:55:27 -!- imode has quit (Ping timeout: 240 seconds).
22:55:49 <ais523> think about it this way: the best programs score no more than 100, but a bad program will score 8 or so
22:55:57 <ais523> and there are more than 12½ times as many bad programs as good ones
23:05:00 <Lymia> Maybe I could try cutting all programs with <0 score
23:07:35 <Lymia> Is it bad that this hill values robustness over "strength"?
23:09:08 <fizzie> Lymia: I think I only allow extra whitespace between the * (or %) and the beginning of the number, not inside the number.
23:09:44 <Lymia> I was testing for a compactor :D
23:15:35 -!- sftp has quit (Ping timeout: 240 seconds).
23:15:57 -!- hppavilion[1] has quit (Ping timeout: 240 seconds).
23:28:31 -!- AnotherTest has quit (Ping timeout: 245 seconds).
23:28:42 -!- variable has quit (Quit: /dev/null is full).