00:03:02 -!- Jafet1 has joined.
00:04:02 -!- Jafet has quit (Ping timeout: 258 seconds).
00:08:58 -!- Bike has quit (Ping timeout: 252 seconds).
00:33:53 -!- Nisstyre-laptop has joined.
00:35:33 <Sgeo> http://www.reddit.com/r/netsec/comments/1avogh/the_sandbox_roulette_are_you_ready_for_the_gamble/
00:35:51 <Sgeo> (tl;dr OS bugs can make application-level sandboxes not work well)
00:38:09 -!- Bike has joined.
00:41:55 <elliott> Bike: how do bicycles use computers anyway
00:42:02 <kmc> and hypervisor bugs can make OS security not work very well
00:43:04 <elliott> i never had a "homestar runner phase" & feel at times that this may have made me less of a person
00:44:06 <shachaf> i dont"really know what homestarr unner is??"
00:46:16 -!- Bike has quit (Ping timeout: 245 seconds).
00:47:27 -!- Bike has joined.
00:49:03 <zzo38> I have other questions.
00:49:17 <zzo38> Or are you agnostic?
00:49:19 <zzo38> Or something else?
00:49:31 <kmc> eggnogstic
00:49:55 <zzo38> kmc: Eggnogstic? What do you mean by that?
00:50:24 <zzo38> Do you mean you have eggnog?
00:50:47 <kmc> i think there is some eggnog in my fridge, yes
00:50:49 <kmc> from several years ago
00:52:16 <pikhq_> I don't think it counts as eggnog anymore.
00:57:39 <oerjan> it _may_ count as a sentient lifeform.
00:57:44 <Sgeo> Fun thought: Dynamically-typed language where it's not possible to just ask values what their types are
00:57:55 <Sgeo> Goal is to encourage a sense of design where you have to know what each value's type is
00:58:01 <Sgeo> ala static typing
00:58:09 <Sgeo> But don't need to prove it to the compiler necessarily
00:58:12 <elliott> oerjan: oh no, z-wave is still being advertised on the wiki!!
00:58:29 <Sgeo> Idea is to avoid the temptation in dynamically-typed languages to special case on the type
00:58:35 <elliott> if only... if only you could do something
00:58:47 <Sgeo> I could do something if I was given rights >>>
00:58:57 * oerjan swats FireFly -----###
00:59:30 <Bike> Sgeo: how is it dynamically typed if you can't probe for type information.
00:59:58 <Bike> that sounds more like static typing without erasure, or something.
01:00:33 <Sgeo> Well, if you have a hashmap foo, and know that foo["bar"] is an int, because of how your code uses foo, then you can just use foo["bar"] as an int
01:00:46 <Sgeo> Similar things are tricky to do in statically typed languages
01:01:00 <shachaf> just make foo["bar"] a monoid
01:01:49 <Sgeo> I'm going to go AFK soon
01:05:37 <Sgeo> Bike, the goal is a statically typed sense of design in a more flexible environment than what static typing allows
01:05:37 <ion> shachaf: Someone should have told SPJ et al. to make STM a monoid. They would have saved so much effort.
01:05:46 <zzo38> I suppose that kind of type can be like it will be in an assembly language program that you have to keep track of the type by yourself, or how Forth often works
01:05:57 <shachaf> ion: Maybe they shouldn't been using the category of endofunctors!!!!
01:06:02 <Sgeo> zzo38, sure, pretty much
01:06:12 <zzo38> In C, you can have casts and unions and so on
01:06:23 <tswett> shachaf: an entire monoid?
01:06:50 <tswett> ion: STM can't be a monoid; it's the wrong kind.
01:06:51 <Bike> I suppose the problem isn't really static typing so much as being unable to express the type «a hashmap such that the «bar» entry is an int».
01:07:03 <shachaf> tswett: I suspect ion knows that.
01:07:11 <Sgeo> Bike, hmm, true
01:07:22 <tswett> I guess the only obvious reasonable interpretation is to make "STM a" a monoid.
01:07:24 <Sgeo> Dynamic typing can do it? The type of such a hashmap could contain a hashmap of types?
01:07:28 <zzo38> Bike: I think there is a Haskell extension (but not in GHC) allowing something similar to that?
01:07:29 <Sgeo> erm, not dynamic
01:07:38 <zzo38> Not quite, though.
01:07:48 <tswett> Technically, in Smalltalk, it's impossible to determine the type of a value.
01:07:49 <Bike> Yeah, probably.
01:08:12 <tswett> In practice, of course, most values will tell you their types if asked.
01:08:22 <Bike> Everything's uncomputable then though (who cares)
01:08:27 <oerjan> i think ion may be wanting a new kind of monoid
01:08:42 <Bike> imo trace monoids
01:08:43 <tswett> A monoid that isn't a set equipped with an identity element and an associative operation?
01:08:58 <ion> tswett: The misunderstanding results from you thinking in terms of the current STM implementation. They wouldn’t have needed to spend all that effort to make the current STM implementation if they’d just have made a monoid. Because monoids are easy. I love monoids.
01:09:30 <tswett> ion: *nod* So you're not saying "make the STM type constructor into a monoid"; you're saying "implement software transactional memory using a monoid".
01:10:01 <Sgeo> I shoudl really go afk
01:10:04 <Bike> Sgeo: alternately you could just use an explicit annotation, foo["bar"] :: Int or w/e
01:10:11 <zzo38> In Haskell, there is also Data.Extensible.Product which allows adding new fields to existing record types, although each field needs a type to label the field as well as the type of the values of the field, as well as needing a default value (which can depend on the constructor's value if necessary).
01:10:33 <tswett> It's not obvious to me how you'd make it a monoid.
01:10:33 <zzo38> Bike: How is that?
01:10:38 <Sgeo> Bike, but then there may be similar situations that might not be so amenable to such changing of things
01:10:51 <Bike> zzo38: how is what.
01:11:00 <ion> tswett: It doesn’t matter. All that matters is that monoids are easy. Just ask shachaf and/or beaky.
01:11:02 <oerjan> tswett: you missed a pun hth
01:11:15 <Bike> Sgeo: probably. now go afk.
01:11:24 <zzo38> Bike: I mean :: Int or w/e how exactly would such an annotation work; what is w/e meaning?
01:11:26 <elliott> wow, oerjan's standards for puns are lower than I thought.
01:11:46 <Bike> zzo38: (foo["bar"] :: Int) or w/e
01:11:54 <zzo38> If :: is an annotation,
01:12:26 <oerjan> my standards are not just lower than you imagine, they're lower than you _can_ imagine
01:12:28 <zzo38> How is this the kind of annotation to specify the type of foo["bar"], what is the type of foo, then?
01:12:33 <zzo38> It doesn't seem to help.
01:12:54 <Bike> It helps in that the accessed value is known to be an int which is what Sgeo asked for.
01:12:55 <zzo38> oerjan: Are you sure?
01:13:14 <zzo38> Bike: Yes, I suppose it does that, but it doesn't tell you what type foo is?
01:13:22 <Bike> no, it doesn't
01:13:34 <Bike> is that important in this context
01:14:10 <oerjan> zzo38: being sure would be setting the standard too high
01:14:35 <kmc> actually it should be a commutative monoid
01:15:05 <zzo38> oerjan: O, right, OK then
01:15:59 <ion> tswett: I was just making a stupid, tired joke based on a running gag that originated from #haskell.
01:16:16 <ion> Alas, shachaf has deleted the file i would have linked.
01:24:04 <oerjan> shachaf: why did you have to apply a non-monoidal operation to the file? now you have made ion's life difficult.
01:28:59 -!- carado has quit (Ping timeout: 246 seconds).
01:50:23 <nooodl> i think i just proved a language to be turing complete http://esolangs.org/wiki/0815
01:50:47 <nooodl> does this look valid to you guys, though! i have no idea about this stuff
01:50:54 <Bike> why is the wiki blue
01:51:16 <shachaf> elliott: imo get an ssl certificate for esolangs.org
01:51:30 <Sgeo> Bike, it's sad about all the spam
01:52:00 <tswett> nooodl: lemme take a look.
01:52:20 <elliott> shachaf: feel free to give methe money for one
01:52:26 <nooodl> q: why is the wiki logo three slices of lime
01:52:44 <shachaf> kmc: What was that place that gave you free SSL certificates?
01:52:53 <elliott> nooodl: because graue saw the image and liked it
01:53:01 <elliott> nooodl: it is a picture of the matrix of solidity
01:53:48 <HackEgo> 250) <treederwright> enjoy being locked in your matrix of solidity
01:54:02 <HackEgo> 250) <treederwright> enjoy being locked in your matrix of solidity
01:55:22 <tswett> nooodl: well, you say it's Turing-complete "when registers are unbounded", but they're not.
01:55:51 <shachaf> elliott: http://startssl.org/ ?
01:56:11 <elliott> i thought we had another treederwright quote
01:56:17 <HackEgo> 121) <ivancastillo75> Oh I get it you guys just use this space to do nothing ?
01:56:32 <elliott> yeah nooodl's proof is bunk for the language presented there
01:56:41 <elliott> but it can say that a trivial generalisation is TC
01:57:30 <elliott> shachaf: this looks like a lot of work
01:57:41 <elliott> i'm sceptical of the whole WoT thing too
01:57:44 <nooodl> i don't think the wiki page mentions the queue itself being bounded by stuff
01:57:52 <shachaf> elliott: imo do the work??
01:58:16 <tswett> So my current specification for Proce is kind of broken hth.
01:58:17 <elliott> nooodl: I agree, using the queue would be OK
01:58:39 <shachaf> elliott: imo give me root access to your server and i'll do the work for you
01:59:31 <nooodl> ugh i have an idea but i don't actually want to code the translations in this shitty esolang
01:59:39 <tswett> I think it would be possible to implement something like a Minsky register machine in Proce by abusing the discreteness of it and doing something significant each time step.
02:00:05 <elliott> so mediawiki doesn't have a simple way to generate a random number. my plan to make nooodl's user page title have a random number of "o"s in it is foiled
02:00:06 <nooodl> basically because of the "queue rotate" operators, the queue could essentially act as a pair of stacks
02:00:46 -!- ais523 has joined.
02:01:29 <elliott> ais523: my plan to make oerjan an admin by not deleting spam has failed
02:01:48 <elliott> I suggest we try kidnapping next
02:02:30 <tswett> Okay. Proce. How can you store information?
02:03:01 <tswett> You could just use a signal to store an integer, but that sounds like it would be hard to read. And, for that matter, hard to write.
02:03:44 <tswett> All right, better idea. Use a signal to store one single bit.
02:03:57 <ais523> elliott: more spam to fix?
02:04:34 <ais523> appears to be a different spambot this time
02:04:56 <elliott> yes, probably not worth filtering
02:05:03 <tswett> Then you can easily do combinational logic. Sequential logic would be more difficult; how do you implement a clock and a latch?
02:05:06 <elliott> I am thinking I should just add some more CAPTCHAs after I get around to upgrading MW
02:05:11 <elliott> it stopped them for several months
02:08:32 <oerjan> elliott: perhaps you can use a time function instead of a random one?
02:09:52 <nooodl> instead of representing registers on the queue as [3, 2], they're now represented in unary separated by 0, as [1, 1, 1, 0, 1, 1]
02:09:53 <elliott> oerjan: yes, I considered that. but I also realised that DISPLAYTITLE doesn't let you do anything but change case in its default configuration, so I'd either have to mess with the MW configuration or write some CSS nonsense to do it. so I gave up.
02:09:55 <tswett> Oh, duh. You can implement a latch using logic gates.
02:11:19 <kmc> shachaf: startssl
02:12:02 <shachaf> But elliott doesn't want to put a certificate on esolangs.org
02:12:16 <nooodl> ugh i'm going through the List Of Esolangs, and
02:12:22 <nooodl> there's so much bad things :(((
02:13:22 <oerjan> elliott: just a week till deadfish should be featured hth
02:13:51 <kmc> make an esolang whose syntax is SSL certificates
02:14:23 <ais523> we clearly need a ridiculous blurb for it, too
02:14:31 <elliott> ais523: we can just reuse the opening sentences of the article
02:14:43 <elliott> they perfectly encapsulate deadfish
02:15:16 <elliott> there is a slight downside, in that anyone finding the wiki will immediately assume it only has the very worst esolangs
02:15:38 <ais523> it's better than the average BF deriv :)
02:15:51 <elliott> the opening sentences aren't :P
02:16:54 <tswett> <program><substitutions><sub><pattern><cdata contents="world, world"/></pattern><replacement><cdata contents="Hello"/></replacement></sub></substitutions>world, world, world!</program>
02:17:50 <nooodl> http://esolangs.org/wiki/Con-Text whaaaa
02:18:15 <Bike> equivalent to C/C++
02:18:18 <oerjan> tswett: i suggest YOU write a loop in that hth
02:18:34 <tswett> Okay s. I'll do that s.
02:18:54 <Bike> Assigning a value to the name of a function from within that function returns that value from the function (sounds complicated but it's the same as QBasic).
02:19:16 <tswett> Maybe we should remove all of the bad languages from the wiki.
02:19:40 <tswett> If it has some unique idea or it's Brainfuck, keep it. Otherwise, toss it.
02:19:59 <tswett> Of course, I guess Brainfuck is SeinfeldIsn'tFunny.
02:20:00 <Bike> "Unfortunately no interpreter or compiler exists at the moment, as i am unable to create a parser to parse this horrendous language." do you even lift
02:20:11 <ais523> tswett: brainfuck had a unique idea at the time
02:20:20 <tswett> That's what I just said.
02:22:05 <oerjan> elliott: i think maybe a bit from the "Why Deadfish" section might be included as well?
02:22:56 <elliott> oerjan: perhaps we should just redirect the main page to the article.
02:24:19 <Sgeo> What language is this?
02:24:50 <oerjan> What "this" is "this"?
02:24:52 <Bike> Con-Text. It's pretty boxbot.
02:25:17 <lambdabot> http://gunnerkrigg.wikia.com/wiki/Boxbot
02:25:17 <lambdabot> Title: Boxbot - Gunnerkrigg Court Wiki
02:29:52 <Sgeo> Ok, the IOU thing for 99 bottles of beer is somewhat amusing\
02:30:38 <Sgeo> Is there a language called Vorpal.
02:30:42 <nooodl> proved golfscript to be TC, too "i'm on a roll"
02:30:42 <Sgeo> Vorpal, are you a language?
02:30:54 <elliott> nooodl: golfscript literally has an eval ruby instruction
02:31:12 -!- Phantom_Hoover has quit (Ping timeout: 258 seconds).
02:31:45 <nooodl> it doesn't, actually! you can eval ruby expressions because of how string interpolation works though
02:31:57 <Bike> i already like this system
02:32:25 <nooodl> however i don't think you can make a program that takes ruby code as input and evals it
02:32:41 <nooodl> anyway my proof is almost as easy, thanks underload for existing
02:33:28 <elliott> nooodl: that needs to go above external resources hth
02:33:42 <nooodl> wow how the hell is it down there
02:38:12 <Lymia> !bfjoust this-is-going-to-lose-badly-isnt-it ((((>[-.-+-.-+-.-+-.-+-.-+-.-+-.-+-.-.-.-.+-.+.+-.+.])*7.)*-1)*-1)*6
02:38:24 <EgoBot> Score for Lymia_this-is-going-to-lose-badly-isnt-it: 7.5
02:39:05 <oerjan> nooodl: don't you get underload a too as ` ?
02:39:54 <oerjan> or wait, does that mix well with +
02:40:09 * oerjan doesn't know golfscript, is just reading the instruction list
02:40:18 <nooodl> there's weird coercion rules
02:40:34 <nooodl> you could just do {:X;{X}}:a;
02:41:01 <nooodl> but hey, that subset's already TC so why bother
02:41:41 <Lymia> How does something that clears, err.. so inefficiently do better than 1.0 or something
02:41:59 <Lymia> !bfjoust inefficient-clear (>[-(.)*5])*-1
02:42:04 <EgoBot> Score for Lymia_inefficient-clear: 9.3
02:42:09 <nooodl> !bfjoust inefficientest-clear <
02:42:11 <EgoBot> Score for nooodl_inefficientest-clear: 0.0
02:42:16 <Lymia> !bfjoust inefficient-clear (>[-(.)*10])*-1
02:42:19 <EgoBot> Score for Lymia_inefficient-clear: 7.3
02:42:54 -!- nooodl has quit (Quit: Leaving).
02:43:33 <EgoBot> Score for oerjan_lazy: 3.7
02:43:53 <EgoBot> Score for oerjan_lazy: 3.7
02:44:02 <Lymia> !bfjoust less-lazy >+<
02:44:05 <EgoBot> Score for Lymia_less-lazy: 1.0
02:44:10 <Lymia> Weird how this hill wokrs.
02:44:32 <shachaf> !bfjoust nonstrct [>[>.[.+]<+]<]
02:44:36 <EgoBot> Score for shachaf_nonstrct: 3.7
02:44:40 <EgoBot> Score for oerjan_lazy: 1.0
02:44:55 <Lymia> !bfjoust wtf (-)*126
02:44:57 <oerjan> Lymia: seems like a decoy makes it worse :P
02:45:00 <EgoBot> Score for Lymia_wtf: 6.9
02:45:05 -!- Jafet1 has changed nick to Jafet.
02:45:08 <Lymia> This hill is insane
02:45:14 <Lymia> !bfjoust wtfer (-)*127
02:45:16 <EgoBot> Score for Lymia_wtfer: 6.9
02:45:27 <shachaf> Maybe I should learn the rules.
02:45:30 <Lymia> !bfjoust wtfest (-)*128
02:45:33 <EgoBot> Score for Lymia_wtfest: 5.5
02:47:14 <EgoBot> Use: !bfjoust <program name> <program> . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/
02:47:22 <EgoBot> Score for shachaf_hi: 3.7
02:47:26 <oerjan> !bfjoust weird (-)*128>+
02:47:29 <EgoBot> Score for oerjan_weird: 5.5
02:47:39 <oerjan> !bfjoust weird >+<(-)*128
02:47:42 <EgoBot> Score for oerjan_weird: 2.7
02:47:59 <oerjan> !bfjoust weird >+<(-)*127
02:48:03 <EgoBot> Score for oerjan_weird: 4.2
02:48:25 <Bike> isn't it .bftext or something
02:48:29 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
02:48:55 <Lymia> !bfjoust hi ++++++++[>+>++>+++>++++>+++++>++++++>+++++++>++++++++>+++++++++>++++++++++>+++++++++++>++++++++++++>+++++++++++++>++++++++++++++>+++++++++++++++>++++++++++++++++<<<<<<<<<<<<<<<<-]>>>>>>>>>>>>>.<<<<<<<<<<<<<>>>>>>>>>>>>>+.-<<<<<<<<<<<<<>>>>.<<<<>>>>>>>>>>>>>>>-.+<<<<<<<<<<<<<<<>>>>>>>>>>>>>>-.+<<<<<<<<<<<<<<>>>>>>>>>>>>>>++.--<<<<<<<<<<<<<<>>>>>>>>>>>>>>----.++++<<<<<<<<<<<<<<>>>>>>>>>>>>>----.++++<<<<<<<<<<<<<.
02:48:58 <EgoBot> Score for Lymia_hi: 0.0
02:49:05 <Lymia> !bf_txtgen hi world
02:49:09 <EgoBot> 93 ++++++++[>+>+++++++++++++>++++><<<<-]>>.+.>.<++++++++++++++.--------.+++.------.--------.<++. [208]
02:49:16 <Lymia> !bfjoust hi ++++++++[>+>+++++++++++++>++++><<<<-]>>.+.>.<++++++++++++++.--------.+++.------.--------.<++.
02:49:19 <EgoBot> Score for Lymia_hi: 1.3
02:49:23 <shachaf> oerjan: Have you noticed that #haskell is pretty awful most of the time?
02:50:16 <Lymia> !bf_txtgen i hate you hill
02:50:17 <oerjan> shachaf: i don't tend to notice things i cannot see because i'm not there
02:50:19 <EgoBot> 128 +++++++++++[>+>++++++++++>+++>++++++++++<<<<-]>>-----.>-.<-.-------.>>++++++.<<++++.>.>+++++.----------.++++++.<.<+++.+.+++..<-. [221]
02:50:26 <Lymia> !bfjoust hate +++++++++++[>+>++++++++++>+++>++++++++++<<<<-]>>-----.>-.<-.-------.>>++++++.<<++++.>.>+++++.----------.++++++.<.<+++.+.+++..<-.
02:50:28 <EgoBot> Score for Lymia_hate: 0.0
02:50:30 <Lymia> Should I stop being silly? :p
02:50:35 <Bike> whoa you haven't banned beaky
02:51:18 <oerjan> !bfjoust love (-)*128([-])*-1
02:51:20 <EgoBot> Score for oerjan_love: 7.1
02:51:34 <Lymia> Here's a challenge.
02:51:41 <Bike> wow this code.
02:51:46 <Lymia> Write a program that prints "Hello world" when executed as normal Brainfuck.
02:51:53 <Lymia> And gets at least a 30 on the hill in bfjoust.
02:51:59 <shachaf> oerjan: Why did you leave?
02:52:03 <Bike> [(n, _)] -> if neg == eq then go xs False eq lhs (sum + n) else go xs False eq lhs (sum - n)
02:52:21 <Arc_Koen> here's a challence, Lymia: write a program that gets at least a 30 on the hill in bfjoust
02:53:00 -!- Nisstyre-laptop has quit (Ping timeout: 264 seconds).
02:56:33 -!- Nisstyre-laptop has joined.
02:57:42 <Arc_Koen> what's the difference between "score" and "points" at http://codu.org/eso/bfjoust/report.txt ?
02:59:12 <Lymia> score goes through some algorithm
02:59:15 <Lymia> points is raw win/lose
02:59:32 <elliott> score is just your victories weighted by points
02:59:40 <elliott> i.e., you get more for winning against a higher-point opponent
03:00:01 <zzo38> It looks like sprunge has now added a slight variant of a bookmarklet I have made for use with sprunge.
03:00:31 <HackEgo> slist: Taneb atriq Ngevd Fiora nortti Sgeo ThatOtherPerson alot
03:00:32 <Sgeo> Sorry for being slow
03:00:47 <shachaf> Sgeo: You missed the olist update.
03:01:07 <Sgeo> Wait, 881 or 882?
03:01:14 <Sgeo> Is there an 882?
03:01:59 <Fiora> FEFERI: 38) NEPETA: :33
03:02:47 <Arc_Koen> Lymia: why is your "hate" program not in that file?
03:03:25 <Lymia> Because it's off the hill
03:03:36 -!- sirdancealot has joined.
03:04:01 <shachaf> :33 < I'm not very good at this.
03:04:17 <Arc_Koen> Lymia: well Oerjan's "love" is on the hill
03:04:27 <Arc_Koen> even though it basically commits suicide as fast as possible
03:04:55 <Lymia> Arc_Koen, because it was the first one.
03:05:09 <Lymia> That's always on the hill
03:05:11 <Lymia> As it's the challenger
03:05:11 <EgoBot> Score for shachaf__33: 0.0
03:05:55 -!- madbr has joined.
03:06:00 -!- oerjan has quit (Quit: Goon date).
03:06:05 <Arc_Koen> so there really are only 47 programs on the hill?
03:06:22 <Arc_Koen> and did oerjan just left to go on a date?
03:08:28 <Arc_Koen> !bfjoust almost_straigtht (+>->)*10([-]>)*-1
03:08:31 <EgoBot> Score for Arc_Koen_almost_straigtht: 0.0
03:09:04 <Arc_Koen> !bfjoust almost_straigtht (+>->)*5([-]>)*-1
03:09:07 <EgoBot> Score for Arc_Koen_almost_straigtht: 14.8
03:09:45 <madbr> trying to see if it would be cool to have a language where the program is on a hyperbolic space (so a hyperbolic version of befunge)
03:09:56 <Lymia> !bfjoust rule-of-eight (+>->)*4([-]>)*-1
03:09:58 <EgoBot> Score for Lymia_rule-of-eight: 14.9
03:10:07 <madbr> problem: the space grows exponentially as you grow away from the center
03:10:12 <zzo38> I like that idea too
03:10:19 <Bike> problem more like opportunity
03:10:26 <Lymia> madbr, you can't make a square grid there, can you?
03:10:35 <madbr> I have the following rules for a 6:4 space
03:10:50 <madbr> c (center) -> adadadadadad
03:11:04 <madbr> a (adjacent) -> adada
03:11:14 <madbr> d (diagonal) -> adadada
03:11:39 <Arc_Koen> Lymia: you just kicked Taneb's magic off the hill
03:12:03 <madbr> each time you run the rule it generates a new "ring" around the previous layer
03:12:07 <zzo38> Do you know anything about Verilog programming? I wrote a Verilog code but I don't know if it is a good code
03:12:10 <Lymia> !bfjoust flag-is-not-a-decoy (>+>-)*4([-]>)*-1
03:12:12 <madbr> but the ring expands really fast
03:12:14 <EgoBot> Score for Lymia_flag-is-not-a-decoy: 5.7
03:12:15 <Lymia> !bfjoust flag-is-not-a-decoy (>+>-)*4(>[-])*-1
03:12:18 <EgoBot> Score for Lymia_flag-is-not-a-decoy: 16.4
03:12:26 <madbr> zzo : no but I wanna look at it anyways
03:12:39 <zzo38> madbr: http://sprunge.us/MEOK
03:12:46 <Lymia> !bfjoust wee-more-than-one-flag-size >++++>---->+++>--->++>-->+>-(>[-])*-1
03:12:49 <EgoBot> Score for Lymia_wee-more-than-one-flag-size: 15.0
03:13:28 <Lymia> !bfjoust decoys-are-indeed-a-thing (>++>-->+>-)*2(>[-[++[-]]])*-1
03:13:30 <EgoBot> Score for Lymia_decoys-are-indeed-a-thing: 12.5
03:13:42 <Lymia> !bfjoust decoys-are-indeed-a-thing (>+>->+>-)*2(>[-[++[-]]])*-1
03:13:45 <EgoBot> Score for Lymia_decoys-are-indeed-a-thing: 14.1
03:14:21 <Lymia> !bfjoust decoys-are-indeed-a-thing (>+>->>+)*2(>[--]])*-1
03:14:24 <EgoBot> Score for Lymia_decoys-are-indeed-a-thing: 0.0
03:14:26 <Lymia> !bfjoust decoys-are-indeed-a-thing (>+>->>+)*2(>[-[-]])*-1
03:14:29 <EgoBot> Score for Lymia_decoys-are-indeed-a-thing: 13.5
03:14:38 <Lymia> !bfjoust decoys-are-indeed-a-thing (>+>->>+)*2(>[+[-]])*-1
03:14:41 <EgoBot> Score for Lymia_decoys-are-indeed-a-thing: 16.1
03:14:55 <Lymia> Dunno why +[-] and -[-] are so different
03:15:28 <Arc_Koen> that takes one iteration to come back to 0
03:15:31 <madbr> zzo38 : looks like a sound chip, does it have variable brightness? :D
03:15:37 <Arc_Koen> but if you're on a 0 and you take 1
03:15:46 -!- TeruFSX has joined.
03:15:52 <Arc_Koen> and then [-]... that takes 256 or so iterations to come back
03:15:57 <zzo38> madbr: Brightness?
03:16:20 <Lymia> !bfjoust flow (>)*8(>[+[-]]>[-[+]])*-1
03:16:23 <EgoBot> Score for Lymia_flow: 13.2
03:16:25 <Arc_Koen> though [-[-]] is a little redundant; when the first ] finally doesn't trigger, the second won't either
03:16:30 <zzo38> madbr: It is meant to be a sound chip, though.
03:16:40 <Lymia> !bfjoust flow (>)*4++(>)*4(>[+[-]]>[-[+]])*-1
03:16:42 <EgoBot> Score for Lymia_flow: 14.8
03:16:50 <Lymia> !bfjoust flow (>)*4++>-(>)*3(>[+[-]]>[-[+]])*-1
03:16:53 <EgoBot> Score for Lymia_flow: 16.6
03:17:17 <Lymia> !bfjoust flow (>)*4++>-(>)*3(>[(+)*5[-]]>[(-)*5[+]])*-1
03:17:20 <EgoBot> Score for Lymia_flow: 20.8
03:17:25 <madbr> zzo : yeah, like a way to get brighter or less bright waveforms
03:17:47 <Lymia> !bfjoust flow (>)*4++>-(>)*3(>[(+)*5[-]])*-1
03:17:50 <EgoBot> Score for Lymia_flow: 19.8
03:17:59 <zzo38> madbr: I don't know exactly what that means, though.
03:18:00 <Lymia> !bfjoust flow (>)*2>->++>-(>)*3(>[(+)*5[-]]>[(-)*5[+]])*-1
03:18:03 <EgoBot> Score for Lymia_flow: 20.0
03:18:12 <ais523> Lymia: is this evolved? or generated by hand?
03:18:16 <Lymia> Generated by hand.
03:18:21 <madbr> like on the casio CZ synths they simply did it by having wave morphing between a sine wave and a bright waveform like a saw wave or square wave etc
03:18:36 <Lymia> ais523, I'm probs going to overhaul how the evolver works soon.
03:18:38 <ais523> Arc_Koen: [-[-]] avoids getting tricked off the end by defence programs
03:18:43 <ais523> but they'll probably just lock it instead
03:19:02 <Arc_Koen> how's that different from [-] ?
03:19:06 <madbr> and you can control the brightness of the waveform by making it more like a sine (less bright) or more like the selected wave (more bright)
03:19:09 <Lymia> Since it needs to produce an activation to make loops and repeats.
03:19:17 <zzo38> madbr: This one only has square waves and saw waves and noise, and you can have mixtures of square waves
03:19:19 <Lymia> It's pretty sucky at making stuff with lots of repeats.
03:19:26 <Arc_Koen> oh, it tests if it's zero a second time
03:19:27 <Lymia> It made the code simpler, but, clearly doesn't help.
03:19:56 <Lymia> That one's not evolved though.
03:19:57 <madbr> zzo: or in FM synths you can vary the brightness by changing the modulation depth (volume of the modulator)
03:20:00 <Lymia> The evolver's max is ~18
03:20:00 <zzo38> madbr: OK, now I can understand what you mean, but this program doesn't implement sine waves, so it is unlikely to have such thing.
03:20:04 <Lymia> That was a vibrator pattern
03:20:27 <madbr> zzo: in analog synthesis you can do it by adding a filter and adjusting the filter cutoff
03:20:52 <Arc_Koen> !bfjoust just_run >>+>->>>>>>([-])*-1
03:20:56 <EgoBot> Score for Arc_Koen_just_run: 0.3
03:21:11 <Lymia> !bfjoust i-dont-think-i-should-have-the-forever-loop-type (.-+)*-1
03:21:14 <EgoBot> Score for Lymia_i-dont-think-i-should-have-the-forever-loop-type: 11.9
03:21:25 <zzo38> madbr: OK. I can understand those things, but they are different things, I think. I have worked with all of these things, in Csound and otherwise
03:21:26 <madbr> zzo38 : doesn't need to have sine wave, you can also do it with triangle wave morph
03:21:40 <elliott> Arc_Koen: that only handles one tape length
03:21:59 <Arc_Koen> !bfjoust just_run >>+>->>>>>>([-]>)*-1
03:22:02 <EgoBot> Score for Arc_Koen_just_run: 16.3
03:22:15 <zzo38> madbr: Still, I am not exactly sure how that would be done here.
03:22:19 <Lymia> !bfjoust flow (>)*2>->++>-(>)*3(>[(+)*8[-[-]]]>[(-)*8[+[+]]])*-1
03:22:21 <EgoBot> Score for Lymia_flow: 17.1
03:22:26 <madbr> zzo38 : oh, I know
03:22:28 <Lymia> !bfjoust flow (>)*2>->++>-(>)*3(>[(+)*8[-]]>[(-)*8[+]])*-1
03:22:31 <EgoBot> Score for Lymia_flow: 20.5
03:22:33 <madbr> you could have 2 period registers
03:22:35 <Lymia> !bfjoust flow (>)*2>->++>-(>)*3[>](>[(+)*8[-]]>[(-)*8[+]])*-1
03:22:37 <Arc_Koen> ais523: what does your "defend7" program do?
03:22:37 <EgoBot> Score for Lymia_flow: 15.4
03:22:55 <ais523> Arc_Koen: it's just a lock program
03:23:01 <ais523> you can read about them on http://esolangs.org/wiki/BF_Joust_strategies
03:23:02 <Lymia> !bfjoust flow (>)*2>->++>-(>)*3(>[>(>[(+)*8[-]]>[(-)*8[+]])*-1])*-1
03:23:04 <madbr> and then have one period register used for a part of the waveform, and the other one used for the other part
03:23:04 <EgoBot> Score for Lymia_flow: 25.2
03:23:18 <madbr> that and a triangle wave waveform
03:23:29 <zzo38> madbr: O, OK, I guess I understand you now
03:23:32 <madbr> will get you easy morphing between triangle wave and saw wave
03:23:40 <zzo38> Yes, I can understand that now.
03:24:00 <Lymia> I suspect my problem is that some /decent/ but not /good/ things are too easy to create
03:24:05 <Arc_Koen> !bfjoust whatsthedifference >>+>->>>>>>([-[-]]>)*-1
03:24:08 <EgoBot> Score for Arc_Koen_whatsthedifference: 14.0
03:24:23 <Lymia> Causing the less-than-good results
03:24:33 <madbr> zzo38 : variable brightness is awesome. You should try to have it.
03:25:06 <Lymia> ais523, the evolver's currently going up rarely in very large steps too. I suspect this is a symptom of something seriously wrong, since, this is clearly not what it should do
03:25:12 <zzo38> madbr: Yes, I suppose it could be implemented, but not with what I have now; it would require a different kind of implementation entirely, I think.
03:25:33 <Lymia> I rarely, if ever, see gradual improvement
03:26:16 <Arc_Koen> ais523: apparently whatsthedifference got a win against omnipotence
03:26:19 <Lymia> Actually, that's probs just as symptom of a not-very-smooth fitness landscape.
03:26:30 <ais523> Arc_Koen: most of the top programs have weaknesses
03:26:48 <Lymia> ais523, what do you think of this.
03:26:54 <Lymia> Take /all/ past programs on the hill.
03:27:00 <ais523> there will be a lot of bad ones
03:27:03 <ais523> but it's an interesting idea
03:27:05 <Lymia> Run an evaluation on the hill, and, take the top, like, 150 programs.
03:27:18 <madbr> zzo: I think it would be easy to just select between two period registers
03:27:19 <Lymia> So I don't have such a small sample-- which might be causing some of the issue.
03:27:24 <ais523> evaluating the whole thing would take a while
03:27:32 <ais523> but feel free to go for it, the results would be interesting in their own right
03:27:37 <ais523> also you might want to insist on unique names
03:27:46 <ais523> so you don't get 10 slightly different copies of the same program
03:27:48 <Lymia> Evaluate it against that first.
03:27:54 <Lymia> And weed out the worst there before doing the full test
03:28:12 <zzo38> madbr: Yes, I think it would not be too difficult, it just isn't what this one implements; one of the channels could be changed into the one like that, though, I suppose.
03:28:32 <Lymia> ais523, I honestly don't know how to do the hg magic needed for that
03:28:54 <zzo38> Or they could be all changed but it would then be entirely different
03:29:08 <ais523> Lymia: you do it afterwards, I guess
03:29:15 <ais523> I'm not very good at hg either, though
03:29:24 <elliott> I wouldn't evaluate it against a rush like that, I think
03:29:32 <elliott> I'm sure there's many viable strategies that would lose against it
03:29:47 <Lymia> I need some weeder to take out the ones that's not worth the time evaluating
03:29:51 <Lymia> Since that's an O(n^2) operation
03:29:59 <Lymia> For n that could easily be >1000
03:30:15 <Arc_Koen> well you can test them against an empty program
03:30:27 <Lymia> If I could produce a function Similarity(P, P2)
03:30:33 <Lymia> Then, group all similar enough programs together.
03:30:41 <Lymia> And do a hill on each of those, taking the best
03:30:43 <Lymia> Before doing the big hill.
03:30:57 <Lymia> I might be able to get good representatives of all strategies
03:31:18 <Arc_Koen> Lymia: the best in a group of similar program will not necessarily be the best at handling different programs
03:31:40 <Lymia> Could always do it versus the current hill instead
03:31:50 <Lymia> Since people often submit lots of similar programs.
03:32:02 <Lymia> Reducing those to a few better representitives would be nice.
03:33:08 <Arc_Koen> you could also select random opponents and have every program play 100 battles instead of 1000
03:34:15 <Arc_Koen> (you can do that in several rounds - during the first round they have fewer opponents, but less programs are discarded)
03:34:51 <Lymia> Raw data extraction first
03:36:21 <zzo38> madbr: I don't know how Casio CZ synthesizer works; do you know how to make an emulation of it in Csound or whatever?
03:37:33 <zzo38> I found a picture of Casio CZ synthesizer in Wikipedia
03:38:34 <madbr> the CZ reads a sine wave table
03:39:15 <madbr> but instead of reading the table linearly it messes up the read index so that part of the waveform lasts longer and part of the waveform lasts shorter
03:40:02 <zzo38> Such thing like that is easily made in Csound.
03:40:08 <madbr> it has 6 different patterns for that (saw, saw2, square, imuplse, double impulse, osc sync)
03:40:31 <madbr> internally it combines two different patterns
03:40:56 <madbr> so you can do saw+square and it alternates between saw,square,saw,square,saw,square,etc...
03:41:24 <madbr> which is how it generates pulse-wave-like waveforms like saxophone and guitars etc
03:42:10 <madbr> also it has windowing (which is really ring modulation) to remove the buzzing edge out of the osc sync, and it does resonant waveforms this way
03:42:55 <madbr> I think it had a divider in hardware to do it though
03:43:10 <Lymia> !bfjoust flow (>)*2>->++>-(>)*3(>[>([(+)*8[-]]>[(-)*8[+]]>)*-1])*-1
03:43:13 <EgoBot> Score for Lymia_flow: 23.0
03:43:27 <Lymia> !bfjoust flow (>)*2>->++>-(>)*3(>[>(>[(+)*8[-]]>[(-)*8[+]])*-1])*-1
03:43:30 <EgoBot> Score for Lymia_flow: 25.2
03:43:42 <Lymia> !bfjoust flow (>)*2>->++>-(>)*3(>[>>>([(+)*8[-]]>[(-)*8[+]]>)*-1])*-1
03:43:45 <EgoBot> Score for Lymia_flow: 18.6
03:43:49 <Lymia> !bfjoust flow (>)*2>->++>-(>)*3(>[>>([(+)*8[-]]>[(-)*8[+]]>)*-1])*-1
03:43:52 <EgoBot> Score for Lymia_flow: 25.2
03:43:55 <Lymia> I guess decoys tend to come duplicate?
03:44:11 <Lymia> !bfjoust flow (>)*3>->++>-(>)*2(>[>>([(+)*8[-]]>[(-)*8[+]]>)*-1])*-1
03:44:14 <EgoBot> Score for Lymia_flow: 25.3
03:44:24 <Lymia> !bfjoust flow (>)*3>(-)*10>(+)*10>-(>)*2(>[>>([(+)*8[-]]>[(-)*8[+]]>)*-1])*-1
03:44:27 <EgoBot> Score for Lymia_flow: 23.3
03:44:43 <Lymia> !bfjoust flow >>>>--->(+)*17>->>(>[>>([(+)*8[-]]>[(-)*8[+]]>)*-1])*-1
03:44:46 <EgoBot> Score for Lymia_flow: 21.0
03:44:54 <Lymia> !bfjoust flow >>>>->++>->>(>[>>([(+)*8[-]]>[(-)*8[+]]>)*-1])*-1
03:44:57 <EgoBot> Score for Lymia_flow: 25.3
03:45:03 <Lymia> !bfjoust flow >>>>->++>->(>[>>([(+)*8[-]]>[(-)*8[+]]>)*-1])*-1
03:45:06 <EgoBot> Score for Lymia_flow: 27.9
03:46:03 <Lymia> !bfjoust flow >>>>->++>->(>[>>([(+)*5[-]]>[(-)*5[+]]>)*-1])*-1
03:46:05 <EgoBot> Score for Lymia_flow: 27.6
03:46:09 <Lymia> !bfjoust flow >>>>->++>->(>[>>([(+)*10[-]]>[(-)*10[+]]>)*-1])*-1
03:46:11 <EgoBot> Score for Lymia_flow: 26.9
03:46:28 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(+)*8[-]]>[(-)*8[+]]>)*-1])*-1
03:46:30 <EgoBot> Score for Lymia_flow: 28.4
03:46:50 <Lymia> An evolver that actually /works right/ would be useful...
03:47:34 <madbr> !bfjoust flow [[>>>>>>>>>>>>>>>>>>-][-]+]
03:47:37 <EgoBot> Score for madbr_flow: 0.0
03:48:21 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(+)*8[--+]]>[(-)*8[++-]]>)*-1])*-1
03:48:24 <EgoBot> Score for Lymia_flow: 14.0
03:48:31 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(+)*8[-]]>)*-1])*-1
03:48:33 <EgoBot> Score for Lymia_flow: 29.2
03:48:36 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(-)*8[+]]>[(+)*8[-]]>)*-1])*-1
03:48:39 <EgoBot> Score for Lymia_flow: 28.5
03:48:43 <tswett> It's a Rubicon machine.
03:48:45 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(-)*8[+]]>)*-1])*-1
03:48:47 <EgoBot> Score for Lymia_flow: 28.7
03:49:03 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(+)*8[-]]>)*-1])*-1
03:49:06 <EgoBot> Score for Lymia_flow: 29.2
03:49:23 <Lymia> Strange how the polarity is a .5 point difference
03:49:55 <Lymia> !bfjoust flow >>->>->++>->(>[>([(+)*8[-]]>)*-1])*-1
03:49:58 <EgoBot> Score for Lymia_flow: 25.3
03:50:03 <Lymia> !bfjoust flow >>->>->++>->(>[>>>([(+)*8[-]]>)*-1])*-1
03:50:06 <EgoBot> Score for Lymia_flow: 21.4
03:50:15 <Lymia> I'm getting curious now.
03:50:23 <Lymia> Why is 2 the "magic number" for skipping decoys, apparently
03:50:29 <madbr> man this is a flood :o
03:50:33 <Lymia> !bfjoust flow >>->>->++>->>([(+)*8[-]]>)*-1
03:50:36 <EgoBot> Score for Lymia_flow: 17.8
03:50:48 <zzo38> Phase distortion could be done with Csound using the phasor and table reading opcodes, I guess.
03:51:19 <madbr> zzo: you could do it with just triangle wave and distortion and ringmod for the saw wave
03:51:59 <madbr> like, clipped triangle wave + sin() distortion = phase distortion square wave
03:52:19 <zzo38> madbr: OK, I can understand.
03:52:44 <zzo38> I have no intention to add such things into my sound chip program today, though; but another day I might change things
03:52:48 <madbr> there's a bunch of other ways to do it
03:53:18 <zzo38> I even don't know if this Verilog code I wrote is a good way to write a Verilog code.
03:53:39 <madbr> it's really just about making the waveform less static by making it change, emulating the natural brightness modulation in real instruments, and making the saw/square wave bite less
03:53:46 <madbr> so any method is good :D
03:53:53 <madbr> except maybe crossfade
03:55:29 <madbr> though crossfade -> distortion table probably works
04:00:22 <zzo38> The command for Casio SZ phase distortion is "pdhalf"
04:00:53 <zzo38> The distortion amount can be adjusted at k-rate.
04:02:02 <madbr> the general principle is that you take any waveform and you change the duration of individual parts
04:02:41 <madbr> when you reduce down the duration of an edge, it gets sharper and sharper so that your wawe becomes progressively brighter
04:03:16 <madbr> you can also do it on resonance waveforms, which gives an effect not quite unlike filter resonance :3
04:05:05 <zzo38> VGM doesn't have these features, although it does have FM synthesis.
04:05:16 <madbr> yeah FM synthesis is close to that
04:05:47 <madbr> in practice you can do multiple FM oscillators from a single real oscillator
04:06:05 <madbr> when the frequencies are locked at harmonics like on the opl2/opl3
04:06:40 <madbr> and feedback gives you an effect very very close to saw wave <-> sine wave morph
04:06:54 <madbr> (tilting the waveform essentially)
04:08:50 <zzo38> OPL3 allows four operators in series (three modulators), and one of its waveforms is a square wave, and all the operators can have their own envelope, tremolo vibrato
04:09:00 <Sgeo> OPL3 sounds like a license name
04:09:21 <madbr> the real chip name is ymf-262 but that's just a bunch of numbers
04:09:24 <zzo38> There is also OPN and OPX; OPX is not currently supported in VGMCK though (but it might be the next one I add)
04:13:34 <Lymia> Currently unpacking the entire repository
04:14:22 <Arc_Koen> Lymia: do you think we all have some kind of formatting in our brain that make us set more decoys on even cells or something?
04:14:32 <madbr> reading up on OPX... looks really strange
04:25:36 <zzo38> Sometimes with chips having square wave, duty envelope is used to change the duty cycle over time
04:26:32 <madbr> I've only seen that on some roland synths (juno series, and I think jupiter 8)
04:26:46 <madbr> on c64 they do it in software ofc :D
04:28:36 -!- zzo38_ has joined.
04:28:43 -!- zzo38 has quit (Disconnected by services).
04:28:48 -!- zzo38_ has changed nick to zzo38.
04:29:14 -!- copumpkin has quit (Ping timeout: 252 seconds).
04:29:18 <madbr> actually you know the opl3 can do pulse width modulation? :D
04:29:59 <madbr> using the square wave as waveform for both the carrier and the modulator... it sounds pretty massive too
04:31:35 <zzo38> I thought it might do something like that
04:31:40 -!- copumpkin has joined.
04:36:33 -!- Bike has quit (Ping timeout: 258 seconds).
04:44:22 -!- Bike has joined.
04:45:28 <kmc> have you all seen https://www.youtube.com/watch?v=GcDshWmhF4A
04:45:34 <kmc> adding machine made of wood and marbles
04:46:52 <elliott> how did you find this video of me
04:47:02 <Bike> learn a thing or two, babbage
04:47:51 <elliott> this guy really likes the word shall
04:48:09 <Bike> It's all mathy right
04:48:42 <elliott> whereas we have constructed an adding machine, and whereas it is made out of wood and marbles, therefore let it hereby be declared that it shall be tested out
04:49:09 <Bike> verily, that sounds pretty rad.
04:52:12 <Bike> youtube existed in 2007?!
04:55:13 <elliott> "viral videos" were a thing in 2006 already Bike!!!!
04:55:55 <Bike> man in 2006 i wasn't even alive
04:56:39 <elliott> Bike: can you come up with some new fucking captchas for the fucking wiki
04:57:48 <Bike> https://dl.dropbox.com/u/12780151/wormprogramming.jpg how about this
04:58:59 <kmc> there was a time when YouTube was an independent company hemhorraging venture capital, rather than a money sink for Google ad revenue
04:59:36 <elliott> does anyone remember how goofy youtube looked in like 2006
05:00:17 <Bike> Hm, most of the pictures I have online are very silly, and probably not suited for robot discrimination.
05:01:37 <elliott> Bike: you should really register for the wiki and you'll discover an embarrassing fact that makes you look silly right now
05:02:20 <Bike> is it the blue thing
05:03:38 <elliott> no it's... our captchas are text
05:03:45 <Bike> oh yeah i knew that
05:03:54 <Bike> i just wanted to just... look at my pictures... and stuff.
05:04:03 <elliott> that's ok Bike. i am self-centred too
05:04:16 <zzo38> If you want to make your own music with OPL3 in VGM format, I think you would need to use either VGMCK or DOSBox+AdLib Tracker+dro2vgm
05:04:21 <Bike> maybe u have more in common with bikes then u thot.
05:08:49 -!- Mucho has joined.
05:16:50 <madbr> zzo : yeah I just use adlib tracker 2 and record to mp3 straight from the soundcard jack
05:22:56 -!- SDr has quit (Disconnected by services).
05:25:10 <zzo38> Do you have any of them in VGM format though?
05:31:04 <zzo38> If I have a documentation of the format I could make the converter directly from Adlib Tracker 2 into VGM
05:31:20 <zzo38> Without requiring DOSBox
05:32:00 <HackEgo> Mucho: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
05:34:27 -!- TeruFSX has quit (Ping timeout: 260 seconds).
05:43:03 <Arc_Koen> elliott: how come spambots can solve our captchas
05:43:17 <elliott> by getting humans to do it for them
05:43:22 <zzo38> Maybe people manually do it!
05:43:31 <zzo38> They are not necessarily spambots.
05:43:42 <Bike> Just think. Somewhere in the world, there's a porn site that applies its captcha solutions directly to the esolang wiki.
05:44:08 <Arc_Koen> so now humans are working for spambots?
05:44:13 <elliott> Bike: some kind of mechanical turk / sweatshop type deal seems more plausible here
05:44:24 <elliott> solely because i cannot imagine someone looking up esolang information for porn
05:44:26 <zzo38> Look at the spam protection on Pin Eight and NESdev, which they say works better.
05:44:31 <elliott> like you actually have to click a link and read a paragraph to solve them
05:44:38 <kmc> yes captcha solving is a traded commodity
05:44:41 <kmc> i've seen papers on it
05:44:49 <Bike> elliott: I think you're overestimating people looking for porn.
05:44:50 <madbr> yeah there are some... porn or warez sites where they fish up some captchas and you have to solve one to get your porn
05:45:11 <elliott> if i was looking for porn i would seriously not want to click a link and learn about intercal
05:45:19 <madbr> no idea how much they generate tho
05:45:28 <elliott> i can buy it 100% for graphical captchas and stuff though
05:45:45 <Bike> You're single-handledly introducing theoretical computer science to the porn-droning masses, yo.
05:45:57 <Arc_Koen> wait, so it's actually really a human tricked into servicing a spambot
05:46:05 <kmc> http://cseweb.ucsd.edu/~savage/papers/UsenixSec10.pdf paper about the captcha solving market
05:46:14 <Bike> Arc_Koen: have you never heard of artificial artificial intelligence
05:46:15 <kmc> Arc_Koen: there are both, some people are paid to break them, some people are tricked
05:46:34 <kmc> these researchers bought captcha-breaking services in order to study the market
05:46:37 <zzo38> I never look for porn, and hardly ever for warez, but I am OK to learn INTERCAL to do it.
05:46:53 <elliott> i feel kinda sorry for the people being paid to do it
05:47:06 <Arc_Koen> well what about all those who aren't
05:47:18 <elliott> clearly we should say "psst, if you're getting paid for this, put this codeword in and we'll register an account and silently hide the edits it makes"
05:47:22 <kmc> i heard that a lot of chinese oil rig workers are also WoW gold farmers
05:47:36 <elliott> i mean they have enough english reading comprehension to answer the questions in the first place
05:47:37 <kmc> btw this provides a great way to get malware onto oil rig systems
05:47:43 <Bike> Oh I read a short story about that once. As you might expect it was a bit depressing
05:47:51 <elliott> kmc: that is a nasty can of worms
05:47:53 <Bike> kmc: hacking oil rigs as a humanitarian measure
05:48:36 <kmc> a lot of industrial systems are controlled from a Java applet running in IE6 on some desktop that some guy is also using to browse Facebook and look at porn
05:48:48 <kmc> I think the idea that these systems aren't connected to the Internet is basically a total lie
05:50:59 <Arc_Koen> elliott: if YOU don't do something soon, when Asimov's robot apocalypse finally comes, robots are gonna use humans as human shields against humans
05:51:44 <shachaf> elliott: did you kill geryon yet
05:52:26 -!- Mucho has quit (Ping timeout: 256 seconds).
05:52:34 <kmc> i wonder what else is listed on the shady version of MTurk
05:52:53 <elliott> shachaf: i think you accidentally sent that to the wrong channel
05:53:41 <shachaf> #esoteric "the wrong channel" -- elliott
05:53:42 <kmc> not that MTurk isn't shady, but they tend to shut down tasks like "go to this restaurant's Yelp page and write that you found a rat turd in your salad"
05:58:22 <zzo38> If you do think the spam is partially automated, see if the server logs indicate the referer or user-agents or whatever else
05:58:27 -!- ogrom has joined.
06:06:34 -!- ogrom has quit (Quit: Left).
06:18:18 -!- ogrom has joined.
06:18:50 -!- Arc_Koen has quit (Quit: Arc_Koen).
06:23:18 -!- madbr has quit (Quit: Radiateur).
06:42:09 <zzo38> Apparently the spam filter on Pin Eight works much better, without any false positive either
07:25:06 <Lymia> Minecraft left me with 3GB in swap
07:46:52 <EgoBot> Score for Lymia_test--: 0.0
07:56:13 <Lymia> http://files.lymiahugs.com/listing.txt
07:56:20 * Lymia made a list of every bfjoust program EgoBot ever saw
07:56:42 -!- Bike has quit (Ping timeout: 245 seconds).
07:59:13 <Lymia> 8675 unique programs
07:59:16 <Lymia> Including formatting variants
08:00:04 <Lymia> !bfjoust did-people-really-do-this-before!?!? http://google.com/
08:00:07 <EgoBot> Score for Lymia_did-people-really-do-this-before____: 0.0
08:00:30 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(+)*8[-]]>)*-1])*-1
08:00:34 <EgoBot> Score for Lymia_flow: 29.2
08:00:36 <EgoBot> Use: !bfjoust <program name> <program> . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/
08:08:55 <fizzie> I'd think most websites have a large possibility of starting with a <.
08:10:20 <fizzie> Also, you should run through one tournament on a hill containing all your 8675 individual programs.
08:11:05 <Lymia> That's 8675^2 executions
08:11:12 <Lymia> Also, I need to filter the ones that no longer parse under gearlance out
08:11:39 <fizzie> No, it's not; you don't need to run programs against themselves.
08:12:19 <fizzie> I'd say it's somewhere around 8675*8674/2*2*21 individual bouts or so; all pairs, two polarities, 21 tape lengths.
08:13:45 <Lymia> That list basically already filters repeats-- oh.
08:13:56 <Lymia> basically executions
08:14:05 <Lymia> 8675^2 executions*
08:15:05 <fizzie> You could say it's O(n^2) executions, I'dn't've pedantic'd about that.
08:15:41 <fizzie> (I hope you can turn "I wouldn't have" into "I'dn't've"?)
08:17:28 <Lymia> http://paste.strictfp.com/37093/1fb818f41450b12966ca91326be5b03e
08:18:16 -!- ais523 has quit.
08:19:12 <fizzie> I like the egojoust "security hole" of you being able to replace foo's program bar_baz by changing nick to foo_bar and submitting a baz.
08:21:28 <Lymia> !fyb does-this-still-work %%
08:23:05 <EgoBot> Score for Lymia_does-this-still-work: 0.0
08:30:57 <fizzie> Lymia: Speaking of which, I sort-of fixed the (()*-1)*-1 time-wasting problem. (Loops with no "real" instruction are modified so that the repeat count becomes 0; and there had long been a bit that removed 0-repeat loops completely.)
08:31:19 <Lymia> lymia@infel:~/programming/bfjoust-evo/hill-scraper$ cat collected/11234:david_werecat_freeze
08:31:19 <Lymia> Canonical name: 11234:david_werecat_freeze
08:31:19 <Lymia> (((((((((()*-1)*-1)*-1)*-1)*-1)*-1)*-1)*-1)*-1)*-1
08:31:25 <Lymia> And guess what I found
08:31:37 -!- epicmonkey has joined.
08:31:39 <fizzie> (Also it turned out that last bit had a problem in that (a{b}c)%0 turned into "" and not a "b".)
08:32:04 <fizzie> Heh, I didn't know it had been done.
08:36:40 <Lymia> http://paste.strictfp.com/37094/fcf7aaf9d09dbcb09edd93445c468074
08:39:02 <Lymia> I have 8496 programs
08:39:10 <Lymia> That run under gearlance and do not attempt to crash it
08:41:12 <Deewiant> So you have 1515643920 executions to do for the tournament
08:41:55 <fizzie> Current egostats page says "Simulated a total of 343748958 cycles in 45402 individual jousts for 1081 duels" -- that's 1081 from 47*46/2 -- so extrapolating from that you'd run 36086760 duels with 1515643920 jousts and around 11475287833114 cycles.
08:42:01 <fizzie> That might take a moment.
08:42:40 <fizzie> But hey, that's just 2^43 or so.
08:42:43 <Deewiant> Set up a distributed system so everybody on the channel can help.
08:42:56 <Lymia> model name: Intel(R) Core(TM) i5-2467M CPU @ 1.60GHz
08:42:59 <fizzie> Buy up the whole of EC2, that would also help.
08:43:32 <fizzie> I haven't benchmarked approximate bfjoust-cycles/unit-of-time numbers out of gearlance.
08:43:42 <Lymia> 11475287833114÷(1.60×1000×1000×1000) = 7172.054895696 seconds
08:44:02 <Lymia> Giving approximately 2 hours of CPU time at 1.60GHz
08:44:05 <fizzie> It's not quite that fast, I can tell you that.
08:44:06 <Deewiant> Can you do one BF Joust cycle in one CPU cycle?
08:44:14 <fizzie> Deewiant: Not with gearlance, at least.
08:44:26 <Fiora> maybe you can write a VAX instruction that does that? X3
08:44:26 <Lymia> Might need to use chainlance
08:44:40 <Lymia> fizzie, is gearlance or chainlance faster?
08:45:16 <Lymia> I have 4 cores, so.
08:45:20 <Lymia> I'm going to best on taking no more than 2 hours
08:45:24 <fizzie> Chainlance's code generation was (IIRC) kind of naive, and anyway there's that whole "two programs with synchromized execution" thing which sort-of limits optimilization opportunities.
08:45:24 <Lymia> Unless those stats are super-inaccurate
08:46:02 <fizzie> I can tell you that it takes me somewhere around 16 seconds to run those 343748958 cycles of the current hill.
08:46:36 <fizzie> That would mean around 148 hours for 11475287833114.
08:47:15 <fizzie> Though that was on a single core of an "AMD Athlon(tm) 64 X2 Dual Core Processor 5600+", which isn't exactly the modernest thing around.
08:48:40 <Lymia> What's the clock speed of that?
08:49:26 <fizzie> But it's not just about clock speeds, you know.
08:49:51 <Lymia> lymia@infel:~/programming/bfjoust-evo/hill-scraper/final/chainlance/vis$ ./crank_hill.sh ../../programs/* | pv > results.txt
08:50:01 <Lymia> I'm generating 1MB/s of data
08:50:31 <fizzie> Uh... I'm pretty sure you can't run the egostats graph pages on a hill of 8496 programs in any reasonable way.
08:51:33 <Lymia> 9460 challenges so far
08:51:43 <fizzie> results.txt out of the normal hill is about 14 megabytes; extrapolating again, you should end up with a 500 gigabyte results.txt.
08:52:38 -!- doesthiswork has quit (Quit: Leaving.).
08:52:39 <fizzie> You're over quarter of a thousandth of the way there.
08:52:42 <Lymia> -rw-r--r-- 1 lymia lymia 163M Mar 24 03:52 results.txt
08:52:57 <Lymia> Giving roughly 5534x more challenges
08:53:19 <Deewiant> I reiterate: you might want to compress that
08:53:30 <Lymia> 880 GB of output data....
08:53:40 <Lymia> I don't have a terabyte of disk space
08:53:43 <fizzie> I have to admit I wasn't entirely serious when I said you should do this thing.
08:54:17 <Deewiant> At least see how well it compresses :-/
08:54:31 <Lymia> Can the toolchain even work on compressed data
08:54:34 <Deewiant> Might go down to at most a few hundred gigabytes or something
08:54:48 <Deewiant> Maybe not but at least you'll have the results
08:54:50 <fizzie> Lymia: The "toolchain" can't work on that much data at all in any meaningful way, I'm pretty sure.
08:55:27 <fizzie> For one thing, you'd have 8496x8496 matrices plotted in 1000x1000 pixel images.
08:55:54 <Lymia> It'd be pretty, at least!
08:56:21 <Deewiant> Adding a zero to each of those 1000s shouldn't be difficult
08:56:27 <fizzie> If you *really* wanted, you could ./crank_hill_with.sh path/to/gearlance ../../programs/* -- that would generate far less output data, and it would still be possible to compute the scores.
08:56:39 <fizzie> Deewiant: It already takes up about two gigs of RAM when running.
08:57:06 <Deewiant> fizzie: Now why does it do that
08:57:24 <fizzie> I'm blaming matplotlib and scipy and numpy, but of course not myself.
08:57:43 <fizzie> Anyway, I don't want to imagine what it would do when trying to load the entire contents of that 880 GB results.txt into memory as numpy data structures.
08:58:21 <Deewiant> I see some room for improvement there
08:58:45 <fizzie> It's pretty crummy stuff.
08:59:00 <fizzie> I was just fiddling around, after all.
08:59:38 <fizzie> Since when has this Ubuntu automounting put stuff under /media/$USER/ instead of directly in /media/?
09:02:49 <Lymia> Down to 8394 programs
09:02:55 -!- Nisstyre-laptop has quit (Ping timeout: 260 seconds).
09:03:01 <Lymia> After a few more proved to not parse under latest
09:05:22 <Lymia> The number of evaluations per program here
09:05:35 <Lymia> Is literally greater than the number of evaluations in one generation of my evolver.
09:12:03 -!- Sgeo has quit (Read error: Connection reset by peer).
09:13:27 -!- Sgeo has joined.
09:23:36 -!- Frooxius has quit (Ping timeout: 264 seconds).
09:38:02 <Lymia> http://files.lymiahugs.com/results.txt
09:38:08 <Lymia> All programs vs current hill
09:42:55 <Sgeo> http://wormtube.worms2d.info/111/the_worst_shot_ever_2012
09:43:24 -!- Frooxius has joined.
09:44:30 <Deewiant> Highest rank for a nickname in that results.txt: http://sprunge.us/aJaO
09:45:03 <Deewiant> (Modulo the fact that nicknames can't be distinguished since _'s can be anywhere)
09:46:23 <Lymia> lymia@infel:~/programming/bfjoust-evo/hill-scraper/final$ cat list | wc -l
09:46:29 <Lymia> Reduced to the best versions of all programs with the same name
09:46:37 <Lymia> 1137 * 1136 evaluations...
09:47:12 <Lymia> Deewiant, this is against current hill.
09:48:11 <Sgeo> help I should be sleeping
09:48:24 <Sgeo> My sleep schedule is so screwed up and I don't know how to fix it I have work on Monday
09:48:49 <Lymia> Deewiant, append which program it was :p
09:48:55 <Lymia> (in case it isn't obvious, the format is changeset:filename)
09:49:00 <Lymia> (Where changeset is the filename in in-egobot.hg)
09:49:06 <Lymia> s/filename/change id/
09:49:18 <Lymia> Not the hash id, but, the revision id thing, because that's a linear history anyways
09:52:17 <fizzie> Yeah, I really shouldn't be on that list due to evo_3.
09:52:18 <HackEgo> slist: Taneb atriq Ngevd Fiora nortti Sgeo ThatOtherPerson alot
09:54:23 <Lymia> What is `slist for
09:55:36 <Lymia> http://files.lymiahugs.com/best-versions.versus.13687.txt
09:55:40 <Lymia> Filtered out old versions of programs.
09:55:58 <Lymia> The hirsutic used for "same program" is "same name"
10:00:33 <Lymia> I'm currently running best programs vs best programs
10:00:37 <Lymia> This'll take a while for obvious reasons
10:01:06 <Lymia> http://paste.strictfp.com/37095/4bae859079e54653f50d5fb3a03cc8b5
10:01:15 <Lymia> This is, obviously, partial
10:04:34 <Lymia> Given ~ 64 programs/5 min
10:04:53 <fizzie> That's weird, _s are invisible in my browser in that paste.
10:05:23 <Sgeo> Lymia, list of people to ping when Homestuck updates
10:05:41 <fizzie> You should run all valid bfjoust programs of less than, say, 100k characters, against each other.
10:09:00 <Lymia> There is a possible interesting experiment
10:14:10 <fizzie> I thought "bfjoust" and "possibly interesting" were mutually exclusive. </sarcasm>
10:14:28 <Fiora> Sgeo: that video made me run out of air
10:15:42 -!- oklopol has quit (Read error: Connection reset by peer).
10:16:00 -!- oklopol has joined.
10:16:33 <Sgeo> Fiora, have you seen prior WSE compilations?
10:16:36 <Sgeo> If not, you should
10:17:10 <Fiora> oh geez, there's more? that was amazing
10:17:45 <shachaf> fizzie: Lymia said that the experiment was possible and interesting.
10:18:10 <Lymia> I was thinking of finding the best vs hill program under 4-5 characters
10:18:11 <Sgeo> Fiora, although 2012 was the first one to use the fake replays
10:18:17 <Sgeo> I don't even know how those were made
10:18:18 <Lymia> but then I realized what it would likely be
10:18:25 <Lymia> !bfjoust best-1 (+)*-1
10:18:27 <Lymia> !bfjoust best-1 (-)*-1
10:18:30 <EgoBot> Score for Lymia_best-1: 0.0
10:18:30 <EgoBot> Score for Lymia_best-1: 0.0
10:18:34 <Lymia> !bfjoust best-1 (.-+)*-1
10:18:38 <EgoBot> Score for Lymia_best-1: 14.0
10:19:03 <fizzie> (.-+)*-1 is already 8 characters.
10:20:11 <Fiora> Sgeo: yeah, that was really cool, someone could show what they were trying to do before their total failure to do it XD
10:20:35 <Sgeo> The game doesn't actually work like that though
10:20:50 <Sgeo> I can only assume that replays were faked for that purpose after the replays with reality were submitted
10:21:09 <EgoBot> Score for Deewiant_tiny: 9.6
10:21:26 <Lymia> !bfjoust tiny [>[+]]
10:21:30 <EgoBot> Score for Lymia_tiny: 5.8
10:21:37 <EgoBot> Score for Deewiant_tiny: 9.6
10:21:47 <fizzie> Aren't [-] and [+] entirely equivalent?
10:22:12 <fizzie> Well, due to the polarity inversion thing.
10:22:37 <Fiora> does the polarity inversion thing invert one of the two programs' operations or something?
10:22:46 <Lymia> !bfjoust stream (>)*2+>--(>)*5([>>([(-)*8[+]>])*-1]>)*-1
10:22:49 <EgoBot> Score for Lymia_stream: 20.6
10:23:01 <Fiora> Ah, that makes sense
10:23:06 <Lymia> !bfjoust stream >>+>-->>>>([>>([(-)*8[+]>])*-1]>)*-1
10:23:08 <EgoBot> Score for Lymia_stream: 22.2
10:23:16 <Lymia> !bfjoust stream >>+>-->>>>([>([(-)*8[+]>])*-1]>)*-1
10:23:19 <EgoBot> Score for Lymia_stream: 19.0
10:23:23 <Lymia> !bfjoust stream >>+>-->>>([>>([(-)*8[+]>])*-1]>)*-1
10:23:26 <EgoBot> Score for Lymia_stream: 22.2
10:23:32 <Lymia> Wee golfing for size
10:23:36 <Lymia> !bfjoust stream >>+>>>-->([>>([(-)*8[+]>])*-1]>)*-1
10:23:39 <EgoBot> Score for Lymia_stream: 21.5
10:23:47 <fizzie> Fiora: Technically, the programs are run with all four combinations (normal-normal, normal-inverted, inverted-normal, inverted-inverted) but due to symmetry arguments it's enough to do the first two in order to get the same results.
10:23:48 <Lymia> !bfjoust stream >>+>-->>>([>>([(+)*8[-]>])*-1]>)*-1
10:23:51 <EgoBot> Score for Lymia_stream: 21.4
10:24:04 <Fiora> Ahh, that makes sense.
10:24:09 <Lymia> fizzie, isn't there a minor asymmetry?
10:24:14 <Lymia> Since 256 is an even number
10:24:19 <Lymia> The flag has to be either 127 or 128
10:24:35 <fizzie> Lymia: Starting from 128, there's 128 steps to reach zero going up or down.
10:24:40 <Fiora> Sgeo: where do I find the other videos? I can't find the actual videos for before 2012...?
10:25:00 <Lymia> !bfjoust stream (>)*8([>>([(+)*8[-]>])*-1]>)*-1
10:25:03 <EgoBot> Score for Lymia_stream: 22.5
10:25:05 <fizzie> (Also, the [>[+]] above sounds likely to be equivalent to . given that it just moves away from the flag, skips the [+] loop and ends.)
10:25:13 <Lymia> !bfjoust stream (>)*7([>>([(+)*8[-]>])*-1]>)*-1
10:25:15 <EgoBot> Score for Lymia_stream: 25.0
10:25:20 <Lymia> !bfjoust stream (>)*6([>>([(+)*8[-]>])*-1]>)*-1
10:25:21 <Sgeo> Fiora, http://wormtube.worms2d.info/browse/category/compilation
10:25:23 <EgoBot> Score for Lymia_stream: 23.9
10:25:24 <Lymia> !bfjoust stream (>)*7([>>([(+)*8[-]>])*-1]>)*-1
10:25:27 <EgoBot> Score for Lymia_stream: 25.0
10:26:48 <fizzie> !bfjoust headless_chicken (><)*50000 (Apparently I ran this earlier)*0
10:26:51 <EgoBot> Score for fizzie_headless_chicken: 7.5
10:27:12 <Sgeo> Also watch Movie of Dreadful Gameplays and Horrible Bad Lucks
10:27:58 <Lymia> -rw-r--r-- 1 lymia lymia 32 Mar 24 05:27 Lymia_stream.bfjoust
10:27:58 <Lymia> -rw-r--r-- 1 lymia lymia 31 Mar 24 04:06 atehwa_test_rush.bfjoust
10:27:58 <Lymia> -rw-r--r-- 1 lymia lymia 26 Mar 24 04:06 ais523_vibration.bfjoust
10:27:58 <Lymia> -rw-r--r-- 1 lymia lymia 23 Mar 24 04:06 david_werecat_golf.bfjoust
10:28:31 * Lymia must achieve smallest effective program!
10:28:37 <Lymia> !bfjoust stream (>)*7([>>([+[-]>])*-1]>)*-1
10:28:40 <EgoBot> Score for Lymia_stream: 16.7
10:28:42 <Lymia> !bfjoust stream (>)*7([>>([-[+]>])*-1]>)*-1
10:28:45 <EgoBot> Score for Lymia_stream: 16.7
10:28:49 <Lymia> !bfjoust stream (>)*7([>>([(-)*9[+]>])*-1]>)*-1
10:28:51 <EgoBot> Score for Lymia_stream: 23.1
10:28:56 <Lymia> !bfjoust stream (>)*7([>>([(+)*9[-]>])*-1]>)*-1
10:28:59 <EgoBot> Score for Lymia_stream: 23.1
10:29:01 <Lymia> !bfjoust stream (>)*7([>>([(-)*7[+]>])*-1]>)*-1
10:29:03 <EgoBot> Score for Lymia_stream: 26.6
10:29:06 <Lymia> !bfjoust stream (>)*7([>>([(-)*5[+]>])*-1]>)*-1
10:29:09 <EgoBot> Score for Lymia_stream: 23.5
10:29:12 <Lymia> !bfjoust stream (>)*7([>>([(-)*6[+]>])*-1]>)*-1
10:29:14 <EgoBot> Score for Lymia_stream: 26.9
10:29:20 <Lymia> !bfjoust stream (>)*7([>>([(+)*6[-]>])*-1]>)*-1
10:29:23 <EgoBot> Score for Lymia_stream: 26.9
10:29:23 <fizzie> !bfjoust the_simplest_thing (>)*9([-.]>)*21 (also something from the logs)*0
10:29:26 <EgoBot> Score for fizzie_the_simplest_thing: 20.5
10:30:01 <Lymia> !bfjoust stream (>)*7([>([(+)*6[-]>])*-1]>)*-1
10:30:04 <EgoBot> Score for Lymia_stream: 21.7
10:30:06 <Lymia> !bfjoust stream (>)*7([>>>([(+)*6[-]>])*-1]>)*-1
10:30:09 <EgoBot> Score for Lymia_stream: 18.5
10:30:11 <Lymia> !bfjoust stream (>)*6([>>>([(+)*6[-]>])*-1]>)*-1
10:30:13 <EgoBot> Score for Lymia_stream: 20.3
10:30:23 <Lymia> !bfjoust stream (>)*7([>>([(+)*6[-.]>])*-1]>)*-1
10:30:25 <EgoBot> Score for Lymia_stream: 18.6
10:30:41 <Lymia> Dunno why [-.] works so well
10:30:45 <Lymia> Clearly doesn't work so well offset
10:30:48 <Lymia> !bfjoust stream (>)*7([>>([(+)*6[-]>])*-1]>)*-1
10:30:51 <EgoBot> Score for Lymia_stream: 27.6
10:31:18 <Lymia> !bfjoust stream >>+(>)*5([>>([(+)*6[-]>])*-1]>)*-1
10:31:21 <EgoBot> Score for Lymia_stream: 23.6
10:31:22 <Lymia> !bfjoust stream (>)*7([>>([(+)*6[-]>])*-1]>)*-1
10:31:25 <EgoBot> Score for Lymia_stream: 27.7
10:31:29 <Lymia> !bfjoust stream (>)*7([>([(+)*6[-]>])*-1]>)*-1
10:31:31 <EgoBot> Score for Lymia_stream: 22.9
10:31:34 <Lymia> !bfjoust stream (>)*8([>([(+)*6[-]>])*-1]>)*-1
10:31:36 <EgoBot> Score for Lymia_stream: 23.7
10:31:49 <Lymia> !bfjoust stream (>)*7([>([>>([(+)*6[-]>])*-1]>)*-1>)*-1
10:31:51 <EgoBot> Score for Lymia_stream: 0.0
10:32:12 <fizzie> !bfjoust brainfuck_is_brainfuck_right http://p.zem.fi/lostkng
10:32:31 <EgoBot> Score for fizzie_brainfuck_is_brainfuck_right: 0.9
10:32:35 <fizzie> (Was there a size limit?)
10:32:45 <Lymia> I wonder what it beats
10:33:02 <EgoBot> Use: !bfjoust <program name> <program> . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/
10:33:16 <Lymia> ais523_shudderlock.bfjoust vs fizzie_brainfuck_is_brainfuck_right.bfjoust
10:33:16 <Lymia> ><>>><<>>><>><>X<XX<X ><>>><<<<<<<<<<<<<<<< 10
10:33:16 <Lymia> fizzie_brainfuck_is_brainfuck_right.bfjoust wins.
10:33:30 <Lymia> lostkng acts as a rush!?
10:33:57 <Lymia> !bfjoust stream (>)*7([>([>>([(+)*6[-]>])*-1]>)*-1>)*-1
10:34:00 <EgoBot> Score for Lymia_stream: 0.0
10:34:04 <Lymia> !bfjoust stream (>)*8([>([(+)*6[-]>])*-1]>)*-1
10:34:07 <EgoBot> Score for Lymia_stream: 24.1
10:34:09 <Lymia> !bfjoust stream (>)*8([>>([(+)*6[-]>])*-1]>)*-1
10:34:11 <EgoBot> Score for Lymia_stream: 24.5
10:34:12 <Lymia> !bfjoust stream (>)*7([>>([(+)*6[-]>])*-1]>)*-1
10:34:15 <EgoBot> Score for Lymia_stream: 27.7
10:34:19 <fizzie> It also wins against Patashu_rushpolarity and ais523_very_offset_turtle, if I read the table right.
10:34:45 <fizzie> No, just test_rush and kuskelar_a_difficult_name.
10:34:53 <fizzie> I guess the table numbering was different than I thought.
10:35:13 <fizzie> Yes, I was looking at Pos and not ID. Well, anyhow.
10:35:19 <Lymia> !bfjoust dream (>)*8([>([>([(+)*6[-]>])*-1]>)*-1]>)*-1
10:35:22 <EgoBot> Score for Lymia_dream: 23.3
10:35:50 <Lymia> !bfjoust dream (>)*7([>[>([(+)*6[-]>])*-1]([(+)*6[-]>])*-1]>)*-1
10:35:52 <EgoBot> Score for Lymia_dream: 25.8
10:36:03 <fizzie> Personally I still think that matrix of report.txt should be sorted by position, since then it makes for PATTERNS in +ses and -ses.
10:36:07 <Lymia> !bfjoust dream (>)*7([>>([(+)*6[-]>])*-1]>)*-1
10:36:09 <EgoBot> Score for Lymia_dream: 26.5
10:36:17 <Lymia> !bfjoust dream (>)*7([>>([(+)*6[-]>])*-1]>)*-1
10:36:19 <EgoBot> Score for Lymia_dream: 26.5
10:36:26 <Lymia> !bfjoust dream (>)*7([>[>([(+)*6[-]>])*-1]([(+)*6[-]>])*-1]>)*-1
10:36:29 <EgoBot> Score for Lymia_dream: 25.8
10:36:51 <Lymia> !bfjoust dream (>)*7([>[>]([(+)*6[-]>])*-1]>)*-1
10:36:53 <EgoBot> Score for Lymia_dream: 6.3
10:37:23 <EgoBot> Score for Lymia_dream: 0.0
10:37:47 <Lymia> !bfjoust gust >>->>->++>->(>[>>([(+)*8[-]]>)*-1])*-1
10:37:50 <EgoBot> Score for Lymia_gust: 27.0
10:38:06 <Lymia> !bfjoust gust >>->>-->+>->(>[>>([(+)*8[-]]>)*-1])*-1
10:38:08 <EgoBot> Score for Lymia_gust: 26.8
10:38:17 <Lymia> !bfjoust gust >>+>>->++>->(>[>>([(+)*8[-]]>)*-1])*-1
10:38:20 <EgoBot> Score for Lymia_gust: 26.7
10:38:28 <Lymia> Let's play stupid optimiza-- this is best done algorithmically, isn't it
10:38:38 <EgoBot> Score for Lymia_gust: 0.0
10:38:41 <EgoBot> Score for Lymia_stream: 0.0
10:39:50 <fizzie> You're allowed to just leave programs there. (A list of zeros at the bottom isn't that pretty either.)
10:40:06 <Lymia> They were pushing down my other program >:p
10:40:28 <Lymia> I just realized something
10:40:36 <Lymia> If you submit the same program over and over, under, like, 15 names
10:40:39 <Lymia> Then replace them with <
10:40:47 <fizzie> That's called "gaming the system".
10:40:48 <Lymia> You can... er... well, do things to the hill
10:42:34 <fizzie> You can submit a program that does well generally, but sacrifices against your chosen competitor, and submit that under 15 names.
10:42:52 <fizzie> (Might involve more work.)
10:43:00 <Lymia> Or submit 46 copies of Omnipotence
10:43:35 <Lymia> Then submit 47 copies of a program that targets Omnipotence
10:43:41 <fizzie> Well, it's all in a repository, it can be reverted to a known-good state.
10:44:29 <fizzie> I don't think that sort of thing counts as a "real" got-#1-in-bfjoust achievement, the kind of thing that gets you free drinks at bars.
10:45:00 <fizzie> Or groupies. Or whatever. I don't know what kind of like #1-bfjoust-bestseller people live.
10:45:31 <fizzie> But I think "sex, drugs and brainfuck" is involved.
10:45:51 <Lymia> lymia@infel:~/programming/bfjoust-evo/hill-scraper/final$ cat results.txt | wc -l
10:45:55 <Lymia> Going to take forever.
10:45:58 <Lymia> 2 hours is my estimate...
10:46:23 <Lymia> All programs vs all programs.
10:46:37 <Lymia> 1) Evaluate all programs versus the current hill
10:47:02 <Lymia> 2) Take the best version of each program-- that is, the program with a certain name that scores the highest versus the current hill
10:47:14 <Lymia> 3) Do a full round robin of each best version versus each best version
10:47:40 <fizzie> Oh, right, so it's that 1137-program set you mentioned.
10:50:47 <fizzie> There's 2820 cores in our cluster, but sadly I doubt that counts as relevant research.
10:51:14 <Deewiant> I also doubt that anybody cares.
10:51:19 <Lymia> I'm using 4 cores in a single mundane machine :p
10:51:35 <fizzie> Deewiant: It's probably also being used by other people too.
10:51:41 <Lymia> About 8 hours of CPU time.
10:51:51 <fizzie> But the 1TB RAM nodes might run the statistics generation script better. :p
10:51:53 <Lymia> 8 hours * 64 = 512 CPU hours
10:52:07 <Lymia> fizzie, do you have the CPU time to run 512 CPU hours worth of processing?
10:52:14 <Deewiant> fizzie: I've run some not-very-researchy stuff there a couple of times.
10:52:21 <Lymia> On non-relevant research? :p
10:52:37 <Deewiant> It was school-related though so maybe it was close enough.
10:53:18 <fizzie> Lymia: Possibly in a technical "is-possible-to" sense, but maybe not in a "can-be-bothered" one. I need to go out for a birthday dinner thing in an hour or so.
10:53:22 <Deewiant> 512 CPU-hours is something you can run at home, that's less than a week on your 4-core.
10:53:50 <Lymia> If I had a desktop
10:54:00 <Lymia> My laptop goes into suspend often, and, in fact, is on a lap at times
10:54:15 <Lymia> I do not want to be using 4 cores in something that is on my lap
10:54:56 <fizzie> Ganglia says current load of Triton is 75%.
10:57:14 <fizzie> I pretty much suck in using SLURM, too. I don't think I can be bothered to write the scripts to do this thing. At least right now.
10:57:39 <Lymia> I plan on taking the top 100 or 150
10:57:43 <Lymia> And running it through fizzie's script
10:57:49 <Lymia> To generate a final report
11:04:09 -!- surma has quit (Ping timeout: 258 seconds).
11:06:22 <fizzie> I could run something on my workstation at work.
11:06:22 -!- sirdancealot has quit (Ping timeout: 258 seconds).
11:06:32 <fizzie> It's not conneceted to Condor, so it's just sitting there all nights and weekends.
11:07:36 <fizzie> Though it's just a normal 4-core box; but at least I wouldn't have to listen to the fans whirr.
11:08:23 -!- sirdancealot has joined.
11:13:02 <fizzie> Lymia: Also, results.dat (one of the outputs from parse_results.py) is a bit over twice the size of results.txt, so if you had done the full thing and gotten a terabyte results.txt, you'd also have a two-terabyte results.dat.
11:17:28 <Lymia> So, it apparently takes about 6 seconds to run 1000 evaluations of gearlance?
11:19:57 <fizzie> Lymia: The time taken really depends on the programs involved.
11:20:17 <Lymia> This is average of best-versions of course
11:20:33 <Lymia> It's obviously going to take longer with a population of zero programs
11:20:51 <Lymia> fizzie, looking at the history, you seem to have once done an evolver that combined other programs..?
11:20:57 <Lymia> How did that work? o-o
11:21:42 <fizzie> Not too well. The ones I submitted were kind of minor variations of what it started from. I've been thinking if I should dust it out one of these days.
11:22:22 <Lymia> The problem I have right now seems to be that there's not much "control" over gene activations and stuff.
11:22:33 <Lymia> Which results in even something like flow not being easy to make.
11:22:43 <Lymia> I'm not sure how to fix this without abandoning the whole system.
11:23:06 <fizzie> Also, for the evolvery stuff I had a gearlance version with a main loop that started by loading (and parsing) the hill I was testing against (for fitness), then accepted (from stdin) a set of programs and produced final scores for them all. That does provide a measurable performance advantage over to running gearlance thousands of times.
11:23:36 <Lymia> How much of a performance advantage?
11:23:45 <Lymia> I'd write my own Bfjoust implementation, but, it'd have to be in Java, which won't help much :p
11:23:45 <fizzie> I don't know how much the process startup costs are -- probably not much -- but for large opponents the parsing time can be quite a large fraction of the total runtime.
11:24:43 <fizzie> Maybe something like 25% when running something against anticipation/anticipation2, if I remember last night's gperf numbers right.
11:26:30 <fizzie> Perhaps I should write a... uh, "transmissionlance" (a transmission has multiple gears!) that'd have the right sort of interface for producing a score for individual programs against the totality of a preloaded set B.
11:26:49 <fizzie> (Note to self: better name.)
11:27:31 <Lymia> A "gearlance server"
11:27:36 <Lymia> Where you start a process
11:27:40 <Lymia> "filename a, filename b"
11:27:42 <Lymia> And get a result back
11:29:50 <fizzie> I don't think I'd want it to cache the million individuals, for elegance, so it'd need something to distinguish what's one-shot and what's fixed.
11:29:53 <fizzie> I was thinking of just "./somethinglance opponent-1 opponent-2 ..." which would parse and "compile" all the opponents, then while (1) { parse a single program from stdin, run it against the opponents, print score }.
11:29:57 <Lymia> !bfjoust >([-]>)*-1
11:29:57 <EgoBot> Use: !bfjoust <program name> <program> . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/
11:30:01 <Lymia> !bfjoust feep >([-]>)*-1
11:30:27 <EgoBot> Score for Lymia_feep: 15.2
11:30:40 <Lymia> !bfjoust feep >([>[-]]>)*-1
11:30:43 <EgoBot> Score for Lymia_feep: 9.5
11:30:58 <Lymia> !bfjoust feep (>)*8([-]>)*-1
11:31:04 <EgoBot> Score for Lymia_feep: 15.7
11:31:09 <Lymia> !bfjoust feep (>)*8([+[-]]>)*-1
11:31:12 <EgoBot> Score for Lymia_feep: 17.3
11:31:13 <Lymia> This is disturbingly effective
11:31:17 <Lymia> !bfjoust feep (>)*8([(+)*8[-]]>)*-1
11:31:20 <EgoBot> Score for Lymia_feep: 17.6
11:31:30 <fizzie> !bfjoust feep >([-].>)*-1 (does the original sometimes run off too fast, or how did the needs-two-cycles-of-zero and runs-off-the-edge bits interact?)*0
11:31:35 <EgoBot> Score for fizzie_feep: 13.0
11:31:55 <Lymia> !bfjoust feep (>)*8([(+)*9[-]]>)*-1
11:32:00 <EgoBot> Score for Lymia_feep: 17.4
11:32:04 <Lymia> !bfjoust feep (>)*8([(+)*7[-]]>)*-1
11:32:07 <EgoBot> Score for Lymia_feep: 21.7
11:32:09 <Lymia> !bfjoust feep (>)*8([(-)*7[+]]>)*-1
11:32:14 <EgoBot> Score for Lymia_feep: 21.7
11:32:17 <fizzie> I was thinking if there's enough zero-time, but I suppose there's the - cycle itself, and the ].
11:32:26 <Lymia> I guess this is the effective "essence" of the flow/stream/dream series
11:32:38 <Lymia> Except without the decoy skip
11:32:48 <EgoBot> Score for Lymia_feep: 0.0
11:32:59 <Lymia> !bfjoust tiny (>)*8([(-)*7[+]]>)*-1
11:33:02 <EgoBot> Score for Lymia_tiny: 21.8
11:33:04 <fizzie> Why is that (>)*8 and not (>)*9 though?
11:33:09 <Lymia> !bfjoust tiny (>)*9([(-)*7[+]]>)*-1
11:33:12 <EgoBot> Score for Lymia_tiny: 21.2
11:33:15 <Lymia> !bfjoust tiny (>)*8([(-)*7[+]]>)*-1
11:33:18 <EgoBot> Score for Lymia_tiny: 21.7
11:33:22 <Lymia> !bfjoust tiny (>)*8([>(-)*7[+]]>)*-1
11:33:25 <EgoBot> Score for Lymia_tiny: 10.5
11:33:34 <Lymia> !bfjoust tiny (>)*8([>>(-)*7[+]]>)*-1
11:33:37 <EgoBot> Score for Lymia_tiny: 12.3
11:33:47 <Lymia> !bfjoust tiny (>)*7([>(-)*7[+]]>)*-1
11:33:50 <EgoBot> Score for Lymia_tiny: 10.1
11:33:51 <Lymia> !bfjoust tiny (>)*8([>(-)*7[+]]>)*-1
11:33:54 <EgoBot> Score for Lymia_tiny: 10.5
11:34:00 <Lymia> !bfjoust tiny (>)*7([(-)*7[+]]>)*-1
11:34:02 <EgoBot> Score for Lymia_tiny: 18.2
11:34:05 <Lymia> !bfjoust tiny (>)*8([(-)*7[+]]>)*-1
11:34:07 <EgoBot> Score for Lymia_tiny: 21.7
11:34:08 <Lymia> !bfjoust tiny (>)*9([(-)*7[+]]>)*-1
11:34:11 <EgoBot> Score for Lymia_tiny: 21.2
11:34:13 <Lymia> !bfjoust tiny (>)*8([(-)*7[+]]>)*-1
11:34:16 <EgoBot> Score for Lymia_tiny: 21.7
11:34:19 <Lymia> I have no idea why 8 is better
11:34:30 <Lymia> !bfjoust tiny (>)*10([(-)*7[+]]>)*-1
11:34:32 <EgoBot> Score for Lymia_tiny: 21.2
11:34:36 <Lymia> !bfjoust tiny (>)*8([(-)*7[+]]>)*-1
11:34:40 <EgoBot> Score for Lymia_tiny: 21.7
11:35:03 <fizzie> Even on the shortest tape, it can't be on the opponent's flag after (>)*8. But of course it affects the timing.
11:35:37 <Lymia> !bfjoust tiny (>)*10([(-)*7[+.]]>)*-1
11:35:40 <EgoBot> Score for Lymia_tiny: 16.4
11:35:45 <Lymia> !bfjoust tiny (>)*10([+.]>)*-1
11:35:47 <EgoBot> Score for Lymia_tiny: 14.9
11:35:48 <Lymia> !bfjoust tiny (>)*10([-.]>)*-1
11:35:51 <EgoBot> Score for Lymia_tiny: 14.9
11:35:57 <Lymia> !bfjoust tiny (>)*10([>[-.]]>)*-1
11:36:00 <EgoBot> Score for Lymia_tiny: 4.6
11:36:06 <Lymia> !bfjoust tiny (>)*8([(-)*7[+]]>)*-1
11:36:11 <EgoBot> Score for Lymia_tiny: 21.7
11:37:12 <Lymia> >((----<--->---->-)*5><..<+<>><.<-+--)*3>+.--><+..>>><++..>--<>>.<(>(-)*3[+])*61++<..>><.-.>->
11:37:25 <Lymia> The old evolver tends to make a lot uglier programs than the current one...
11:37:37 <Lymia> But, on the other hand, it likely had a smoother fitness landscape...
11:37:39 <fizzie> !bfjoust tiny (>)*8([(-)*100[-]]>)*-1 (just curious)*0
11:37:48 <EgoBot> Score for fizzie_tiny: 23.3
11:37:49 <Lymia> *100 is a massive offset
11:41:01 <Lymia> !bfjoust tiny (>)*8([(-)*100[+]]>)*-1
11:41:09 <EgoBot> Score for Lymia_tiny: 8.9
11:41:10 <Lymia> !bfjoust tiny (>)*8([(-)*7[+]]>)*-1
11:41:18 <EgoBot> Score for Lymia_tiny: 21.3
11:41:20 <Lymia> What exactly makes (-)*100[-] effective?
11:41:45 <Lymia> !bfjoust tiny (>)*8([(-)*7[(+.)*100(-.)*100]]>)*-1
11:41:48 <EgoBot> Score for Lymia_tiny: 5.6
11:42:27 <Lymia> !bfjoust tiny (>)*8([(-)*7[+]]>)*-1
11:42:29 <EgoBot> Score for Lymia_tiny: 21.3
11:42:35 <Lymia> !bfjoust not-so-tiny (>)*8([(-)*7([+{}])%500[-{}])%500]]>)*-1
11:42:37 <EgoBot> Score for Lymia_not-so-tiny: 0.0
11:42:43 <Lymia> !bfjoust not-so-tiny (>)*8([(-)*7([+{}])%500([-{}])%500]]>)*-1
11:42:46 <EgoBot> Score for Lymia_not-so-tiny: 0.0
11:42:54 <Lymia> !bfjoust not-so-tiny (>)*8([(-)*7([+{}])%500([-{}])%500]>)*-1
11:42:57 <EgoBot> Score for Lymia_not-so-tiny: 14.3
11:43:06 <Lymia> !bfjoust not-so-tiny (>)*8([(-)*7[([+{}])%500([-{}])%500]]>)*-1
11:43:09 <EgoBot> Score for Lymia_not-so-tiny: 13.2
11:43:11 <Lymia> !bfjoust not-so-tiny (>)*8([(-)*7[([+{}])%128([-{}])%500]]>)*-1
11:43:12 <fizzie> Incidentally, I wonder what people who do it use for constant optimization; just some form of a general grid search, or hill-climbing, or simulated annealing, or gradient descent, or what. (Suppose the last one sounds a bit unlikely.)
11:43:14 <EgoBot> Score for Lymia_not-so-tiny: 13.2
11:43:57 <Lymia> !bfjoust not-so-tiny (>)*8([(-)*7[([+{}])%256([-.{}])%500]]>)*-1
11:44:04 <EgoBot> Score for Lymia_not-so-tiny: 13.2
11:44:11 <Lymia> !bfjoust not-so-tiny (>)*8([(-)*7[([+.{}])%256([+{}])%500]]>)*-1
11:44:14 <EgoBot> Score for Lymia_not-so-tiny: 13.4
11:44:25 <Lymia> !bfjoust not-so-tiny (>)*8([(-)*7[([+{([+.{}])%500}])%256]]>)*-1
11:44:28 <EgoBot> Score for Lymia_not-so-tiny: 17.0
11:44:40 <Lymia> !bfjoust not-so-tiny (>)*8([(-)*7[([>+{([+.{}])%500}])%256]]>)*-1
11:44:45 <EgoBot> Score for Lymia_not-so-tiny: 3.0
11:44:46 <Lymia> !bfjoust not-so-tiny (>)*8([>(-)*7[([+{([+.{}])%500}])%256]]>)*-1
11:44:49 <EgoBot> Score for Lymia_not-so-tiny: 10.0
11:45:38 <fizzie> !bfjoust tiny (>)*9([(-)*100[-]]>)*-1 (for this one (>)*9 was better)*0
11:45:41 <EgoBot> Score for fizzie_tiny: 23.5
11:48:07 <Lymia> !bfjoust SURELY THIS WORKS BETTER IN RED (>)*8([>(-)*7[([+{([+.{}])%500}])%256]]>)*-1
11:48:10 <EgoBot> Score for Lymia__: 9.7
11:50:15 <fizzie> I should probably at some point also update the egostats plots with some of the d3 neatness that I put in the esostats.
11:50:49 <Sgeo> I think Wyldryde is dead
11:51:28 <fizzie> E.g. the top-7 heatmap plots and such only show 7 for clarity, but with some client-side plotting they could easily show all, and some interactive highlighting could show the program you want.
11:52:32 <fizzie> It could do something like that http://zem.fi/ircvis/esoteric/people_stats.html or whatnot.
11:53:21 <Sgeo> Oh, it's now AlphaChat
11:53:54 <fizzie> Ooh, I haven't updated ircvis/esoteric since early March.
11:56:43 <fizzie> There seems to be a curious sort of a vaguely monthly cycle for the last few months in the weekly average of http://zem.fi/ircvis/esoteric/fig/activity_lines_year.png there.
11:58:05 <Lymia> lymia@infel:~/programming/bfjoust-evo/hill-scraper/final$ cat results.txt | wc -l
11:58:05 <Lymia> lymia@infel:~/programming/bfjoust-evo/hill-scraper/final$ ls best-versions/ | wc -l
11:58:12 <Lymia> It's down to two cores left working
12:07:42 -!- epicmonkey has quit (Ping timeout: 258 seconds).
12:08:38 <Lymia> Accidentally reran the command.
12:08:45 <Lymia> time to rerun about 100 programs x.x
12:15:33 <Lymia> !bfjoust idiot (>[-]+>[-]-)*-1
12:15:37 <EgoBot> Score for Lymia_idiot: 15.0
12:15:45 <Lymia> !bfjoust idiot (>(+)*8[-]+>(+)*8[-]-)*-1
12:15:49 <EgoBot> Score for Lymia_idiot: 3.6
12:15:54 <Lymia> !bfjoust idiot (>[(+)*8[-]]+>[(+)*8[-]]-)*-1
12:15:58 <EgoBot> Score for Lymia_idiot: 15.9
12:16:07 <Lymia> !bfjoust idiot (>[(+)*8[-]]+>[(+)*8[-]]--)*-1
12:16:10 <EgoBot> Score for Lymia_idiot: 13.3
12:16:14 <Lymia> !bfjoust idiot (>[(+)*8[-]]++>[(+)*8[-]]-)*-1
12:16:17 <EgoBot> Score for Lymia_idiot: 12.2
12:16:22 <EgoBot> Score for Lymia_idiot: 0.0
12:16:47 -!- Phantom_Hoover has joined.
12:17:52 -!- pikhq has joined.
12:18:20 -!- pikhq_ has quit (Ping timeout: 260 seconds).
12:23:00 <Lymia> !bfjoust idiot (>)*8(>[(+)*8[-]]+>[(+)*8[-]]-)*-1
12:23:03 <EgoBot> Score for Lymia_idiot: 7.6
12:23:10 <Lymia> !bfjoust idiot >>>>(>[(+)*8[-]]+>[(+)*8[-]]-)*-1
12:23:13 <EgoBot> Score for Lymia_idiot: 10.2
12:23:15 <Lymia> !bfjoust idiot >(>[(+)*8[-]]+>[(+)*8[-]]-)*-1
12:23:18 <EgoBot> Score for Lymia_idiot: 15.3
12:23:23 <EgoBot> Score for Lymia_idiot: 0.0
12:23:40 <Lymia> !bfjoust hana-no-sei (>)*9([(+)*8[-]]>)*-1
12:23:44 <EgoBot> Score for Lymia_hana-no-sei: 17.1
12:23:49 <Lymia> !bfjoust hana-no-sei (>)*9([(+)*7[-]]>)*-1
12:23:51 <EgoBot> Score for Lymia_hana-no-sei: 21.0
12:23:55 <Lymia> !bfjoust hana-no-sei (>)*9([(+)*6[-]]>)*-1
12:23:58 <EgoBot> Score for Lymia_hana-no-sei: 23.8
12:24:01 <Lymia> !bfjoust hana-no-sei (>)*9([(+)*5[-]]>)*-1
12:24:04 <EgoBot> Score for Lymia_hana-no-sei: 21.2
12:24:37 <Lymia> !bfjoust hana-no-sei (>)*9([>([(+)*6[-]])*-1]>)*-1
12:24:40 <EgoBot> Score for Lymia_hana-no-sei: 6.5
12:24:46 <Lymia> !bfjoust hana-no-sei (>)*9([>>([(+)*8[-]])*-1]>)*-1
12:24:49 <EgoBot> Score for Lymia_hana-no-sei: 6.9
12:24:57 <Lymia> !bfjoust hana-no-sei (>)*8([>>([(+)*8[-]])*-1]>)*-1
12:25:02 <EgoBot> Score for Lymia_hana-no-sei: 8.8
12:25:08 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[+]]>)*-1
12:25:11 <EgoBot> Score for Lymia_hana-no-sei: 23.8
12:25:17 <Lymia> !bfjoust hana-no-sei (>)*9([(+)*4[-]]>)*-1
12:25:21 <EgoBot> Score for Lymia_hana-no-sei: 20.7
12:25:24 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[+]]>)*-1
12:25:27 <EgoBot> Score for Lymia_hana-no-sei: 23.8
12:25:28 <Lymia> !bfjoust hana-no-sei (>)*8([(-)*6[+]]>)*-1
12:25:31 <EgoBot> Score for Lymia_hana-no-sei: 22.6
12:25:34 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[+]]>)*-1
12:25:36 <EgoBot> Score for Lymia_hana-no-sei: 23.8
12:25:52 <EgoBot> Score for FreeFull_megakarp: 16.1
12:26:30 <FreeFull> !bfjoust megakarp >([-]>>[-]<)*-1
12:26:38 <EgoBot> Score for FreeFull_megakarp: 5.8
12:27:40 <Lymia> !bfjoust hana-no-sei (>[(-)*6[+]])*-1
12:27:43 <EgoBot> Score for Lymia_hana-no-sei: 15.1
12:27:48 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[+]]>)*-1
12:27:51 <EgoBot> Score for Lymia_hana-no-sei: 23.4
12:27:53 <Lymia> !bfjoust hana-no-sei (>)*10([(-)*6[+]]>)*-1
12:27:56 <EgoBot> Score for Lymia_hana-no-sei: 21.0
12:27:57 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[+]]>)*-1
12:28:00 <EgoBot> Score for Lymia_hana-no-sei: 23.4
12:28:07 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[+.]]>)*-1
12:28:11 <EgoBot> Score for Lymia_hana-no-sei: 20.8
12:28:13 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[++]]>)*-1
12:28:16 <EgoBot> Score for Lymia_hana-no-sei: 16.9
12:28:19 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[+-+]]>)*-1
12:28:24 <EgoBot> Score for Lymia_hana-no-sei: 17.2
12:28:25 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[+]]>)*-1
12:28:28 <EgoBot> Score for Lymia_hana-no-sei: 23.4
12:28:33 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[+]>]>)*-1
12:28:37 <EgoBot> Score for Lymia_hana-no-sei: 25.3
12:28:40 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[+]>>]>)*-1
12:28:45 <EgoBot> Score for Lymia_hana-no-sei: 20.6
12:28:48 <Lymia> !bfjoust hana-no-sei (>)*9([(-)*6[+]>]>)*-1
12:28:55 <EgoBot> Score for Lymia_hana-no-sei: 25.3
12:29:10 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(+)*8[-]]>)*-1])*-1
12:29:15 <EgoBot> Score for Lymia_flow: 29.5
12:29:18 <Lymia> !bfjoust flow (>)*7(>[>>([(+)*8[-]]>)*-1])*-1
12:29:21 <EgoBot> Score for Lymia_flow: 27.4
12:29:33 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(+)*8[-]>]>)*-1])*-1
12:29:36 <EgoBot> Score for Lymia_flow: 27.4
12:29:46 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(+)*8[-]>]>)*-1])*-1
12:29:49 <Lymia> !bfjoust flow >>->>->++>->(>[>([(+)*8[-]>]>)*-1])*-1
12:29:49 <EgoBot> Score for Lymia_flow: 27.4
12:29:52 <EgoBot> Score for Lymia_flow: 24.5
12:29:55 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(+)*8[-]]>)*-1])*-1
12:29:58 <EgoBot> Score for Lymia_flow: 29.5
12:30:16 <Lymia> !bfjoust flow >>->>->++>->-([>>([(+)*8[-]]>)*-1]>)*-1
12:30:20 <EgoBot> Score for Lymia_flow: 19.4
12:30:24 <Lymia> !bfjoust flow >>->>->++>->+([>>([(+)*8[-]]>)*-1]>)*-1
12:30:27 <EgoBot> Score for Lymia_flow: 20.2
12:30:34 <Lymia> !bfjoust flow >>->>->++>->+>([>>([(+)*8[-]]>)*-1]>)*-1
12:30:36 <EgoBot> Score for Lymia_flow: 28.9
12:30:43 <Lymia> !bfjoust flow >>->>-->++>->(>[>>([(+)*8[-]]>)*-1])*-1
12:30:45 <EgoBot> Score for Lymia_flow: 29.4
12:30:53 <Lymia> !bfjoust flow >>->>->++>->+(>[>>([(+)*8[-]]>)*-1])*-1
12:30:56 <EgoBot> Score for Lymia_flow: 28.9
12:31:05 <Lymia> !bfjoust flow >>->>(-)*30>++>->(+)*40(>[>>([(+)*8[-]]>)*-1])*-1
12:31:12 <EgoBot> Score for Lymia_flow: 17.0
12:31:14 <Lymia> !bfjoust flow >>->>->++>->+(>[>>([(+)*8[-]]>)*-1])*-1
12:31:17 <EgoBot> Score for Lymia_flow: 28.9
12:31:24 <Lymia> !bfjoust flow >>->>->++>->(>[>>([(+)*8[-]]>)*-1])*-1
12:31:28 <EgoBot> Score for Lymia_flow: 29.5
12:31:32 <Lymia> Bleh. Evolver gets to try to improve it further
12:46:19 -!- oerjan has joined.
12:48:07 <oerjan> <Arc_Koen> and did oerjan just left to go on a date? <-- no?
12:57:54 -!- Zuu has joined.
12:59:20 <oerjan> @tell madbr Indeed, http://en.wikipedia.org/wiki/Hyperbolic_geometry#Circles.2C_disks.2C_spheres_and_balls gives the formula for the area of a hyperbolic disk as 2*pi*R^2*(cosh (r/R)-1) where r is the radius of the circle; that is clearly exponential in the radius.
13:00:12 <fizzie> !perl print chr(hex('2C'))
13:00:36 <fizzie> "Circles, disks, spheres and balls" is probably a title of something.
13:01:58 -!- surma has joined.
13:02:47 -!- carado has joined.
13:02:48 -!- sebbu2 has joined.
13:02:50 <fizzie> Updated http://zem.fi/egostats/ now that things settled down a little.
13:03:16 -!- sebbu2 has quit (Changing host).
13:03:16 -!- sebbu2 has joined.
13:05:07 <fizzie> Uh... what happened to http://zem.fi/egostats/plot_cycles.png now? That can't be right.
13:05:12 -!- sebbu has quit (Ping timeout: 252 seconds).
13:06:11 <fizzie> @tell fizzie (later) to figure out what's up with that.
13:06:25 <fizzie> lambdabot: I mean't you'd remind me later! Sheesh.
13:08:12 <fizzie> You mea, or sometimes you mea not.
13:09:11 -!- Zuu has quit (Ping timeout: 245 seconds).
13:10:45 -!- Zuu has joined.
13:11:05 <Lumpio-> !bfjoust slow_and_painful_suicide [-......]
13:11:08 <EgoBot> Score for Lumpio-_slow_and_painful_suicide: 6.4
13:11:48 <oerjan> @tell fizzie (later) to figure out what's up with that.
13:13:51 <oerjan> !bfjoust even_more_painful ((-)*127.)*-1
13:13:54 <EgoBot> Score for oerjan_even_more_painful: 7.9
13:14:43 <oerjan> !bfjoust even_more_painful ((-)*85.)*-1
13:14:47 <EgoBot> Score for oerjan_even_more_painful: 7.4
13:16:22 -!- sebbu2 has changed nick to sebbu.
13:16:27 <oerjan> @tell madbr Also from another section: "Another visible property is exponential growth. In Circle Limit III, for example, one can see that the number of fishes within a distance of n from the center rises exponentially. The fishes have equal hyperbolic area, so the area of a ball of radius n must rise exponentially in n."
13:17:27 <oerjan> "The art of crochet has been used to demonstrate hyperbolic planes with the first being made by Daina Taimina,[6] whose book Crocheting Adventures with Hyperbolic Planes won the 2009 Bookseller/Diagram Prize for Oddest Title of the Year."
13:38:48 -!- TeruFSX has joined.
13:39:28 <Lymia> !bfjoust true-suicide >-<[-....]
13:39:31 <EgoBot> Score for Lymia_true-suicide: 5.4
13:39:36 <Lymia> !bfjoust true-suicide >->-<<[-....]
13:39:38 <EgoBot> Score for Lymia_true-suicide: 1.8
13:39:40 <Lymia> !bfjoust true-suicide >->-<<[-...]
13:39:43 <EgoBot> Score for Lymia_true-suicide: 1.8
13:39:44 <Lymia> !bfjoust true-suicide >->-<<[-..]
13:39:47 <EgoBot> Score for Lymia_true-suicide: 3.1
13:40:51 -!- Zuu has quit (Ping timeout: 245 seconds).
13:41:33 -!- Zuu has joined.
13:44:46 -!- ThatOtherPerson has joined.
13:51:39 <quintopia> more decoys will be worse for that thing Lymia
13:52:03 <quintopia> because the tripwire avoiders will skip it
13:53:05 <Lymia> quintopia, the idea is not to win :p
13:55:09 <Lymia> Without being so unsubtle and inelegant!
13:57:02 <quintopia> !bfjoust die >>(+)*30<(-)*30<(-)*128
13:57:05 <EgoBot> Score for quintopia_die: 0.5
14:06:12 -!- oklopol has quit (Ping timeout: 264 seconds).
14:29:49 -!- carado has quit (Ping timeout: 246 seconds).
14:30:06 -!- carado has joined.
14:38:01 -!- mroman has joined.
14:38:15 -!- oerjan has quit (Quit: leaving).
14:46:17 * Sgeo is back to torturing norns
14:48:48 <Sgeo> Artificial life things
14:48:51 <Sgeo> creatureswiki.net
14:56:39 -!- ThatOtherPerson has quit (Quit: Leaving).
14:57:25 <lambdabot> http://en.wikipedia.org/wiki/Norns
14:57:25 <lambdabot> Title: Norns - Wikipedia, the free encyclopedia
14:59:24 -!- doesthiswork has joined.
15:16:26 -!- nooodl^ has joined.
15:22:04 -!- nooodl_ has joined.
15:22:48 -!- nooodl_ has quit (Read error: Connection reset by peer).
15:23:12 -!- nooodl^ has quit (Ping timeout: 258 seconds).
15:25:24 -!- ThatOtherPerson has joined.
15:56:35 <mroman> nortti: Are you the guy who wrote langtons ant in blsq?
15:56:46 <mroman> or was that nooga, nooodl?
16:15:43 <Lymia> fizzie, your script appears to crash on just 100 programs
16:16:30 -!- doesthiswork has quit (Quit: Leaving.).
16:23:19 <Lymia> fizzie, complaint!!
16:23:23 <Lymia> Your program eats unbounded memory
16:23:54 <Deewiant> Lymia: He said it takes 2 GB on the current hill
16:24:28 <Deewiant> So if you have 2.5 times the amount of programs, presumably it'll take at least 5 GB
16:31:06 -!- Bike has joined.
16:33:55 <fizzie> Lymia: No warranty, express or implied, not even a warranty of fitness for a particular purpose.
16:33:55 <lambdabot> fizzie: You have 1 new message. '/msg lambdabot @messages' to read it.
16:34:48 <Lymia> fizzie, it doesn't, like
16:34:50 <Lymia> Have to leak memory
16:34:59 <Lymia> It leaks a very very significant amount of memory
16:35:06 <Lymia> You should feel bad
16:35:09 <fizzie> Lymia: No warranty, express or implied, not even a warranty of fitness for a particular purpose.
16:35:22 <Deewiant> Does it actually leak or just use a lot
16:35:24 -!- epicmonkey has joined.
16:35:35 <fizzie> Deewiant: It uses more and more memory for the individual per-program plots.
16:35:58 <fizzie> Possibly it needs some kind of a matplotlib explicit figure-close.
16:36:48 <fizzie> Lymia: Try adding a plt.close() after the savefig() call in def plot.
16:37:10 <Lymia> I added an os.path.exists call instead >_>
16:37:36 <fizzie> (Though it's all completely stupid. It should be returning a figure handle from plt.figure, and when that figure goes out of scope, deallocating all relevant stuff.)
16:37:54 <fizzie> (But I suppose it's been written in some sort of a MATLABish way.)
16:37:58 * Lymia is uploading all 41MB to her VPS
16:39:22 <fizzie> Anyway, it doesn't eat *unbounded* memory, there's certainly a bound.
16:39:35 <fizzie> Also, adding that plt.close() I mentioned where I mentioned seems to have fixed the memory use problems for me.
16:39:49 <Lymia> It eats unbounded memory
16:40:07 <fizzie> No, no; if you provide it with an infinite amount of memory, it will not eat all of it.
16:40:41 <fizzie> Anyway, I just fixed it, so there.
16:41:36 <Lymia> Deewiant, except malloc((unsigned int)-1)
16:41:47 <Lymia> (assuming approprate addressing size)
16:42:30 <fizzie> I've pushed a working update_stats.py now. At least based on a very quick test it didn't seem to eat any more memory while doing the per-program plots than what it does, initially.
16:42:33 <Bike> casually takes over the entire address space
16:42:34 <Deewiant> On this system that'll allocate half of the available 8 gigs
16:42:52 <Deewiant> Well, assuming you write something into it; as-is it'll allocate very little
16:43:07 <lambdabot> oerjan said 3h 31m 19s ago: (later) to figure out what's up with that.
16:43:14 <fizzie> I think I should figure out what's up with that.
16:45:12 <fizzie> These days this four gigabytes is just constant swapping. :/ :\ It's stupid.
16:45:18 <Lymia> https://files.lymiahugs.com/stats/
16:45:40 <Lymia> Best 100 programs (with some hirsutics to do this in under a day) ever on the hill
16:46:02 <Lymia> Is there a way to increase the image sie
16:46:51 * Lymia takes down due to FAILURE
16:47:15 <lambdabot> *** "hirsute" wn "WordNet (r) 3.0 (2006)"
16:47:15 <lambdabot> adj 1: having or covered with hair; "Jacob was a hairy man"; "a
16:47:15 <lambdabot> hairy caterpillar" [syn: {hairy}, {haired}, {hirsute}]
16:47:32 <fizzie> Lymia: see "def plot", plt.figure(figsize=(10, 10), dpi=100) -- that's where the 1000x1000 comes from.
16:47:49 <fizzie> Lymia: You can try just putting a larger figsize in, though it could be that it breaks some things.
16:48:48 <Lymia> You already broke stuff with fixed size font
16:49:19 <Lymia> Doubling size seems to have fixed it?
16:49:47 <fizzie> Have I specified a fixed size font anywhere?
16:50:46 <fizzie> I don't think I've specified any font sizes at all, except "small" for some plots.
16:51:19 <Lymia> fizzie, where does plot_cycles get its size?
16:52:00 <fizzie> Oh, that's just "a bit wider than it's tall instead of the default square" setting.
16:52:30 <fizzie> I don't really know why it's non-square, to be honest, since it's got labels on both sides.
16:53:13 <fizzie> I think I originally only had labels on the left side, that's why it's got that custom size.
16:53:32 <fizzie> You could just not set a custom size there, it would make as much sense.
16:54:02 <fizzie> cycleh and cyclewl also seem to set their own (non-square) sizes.
16:54:18 <Lymia> It seems to be unused
16:54:50 <fizzie> The 'w' and 'l' refer to wins and losses.
16:55:13 <fizzie> I guess it's like the regular cycles, except it's two matrices, one for wins and one for losses.
16:55:22 <fizzie> Probably there weren't any sufficiently interesting patterns in it.
16:56:07 -!- ogrom has quit (Quit: Left).
16:57:29 <Lymia> It doesn't include a lot of programs
16:58:01 <fizzie> Lymia: There's a per-program (per-tape-length) tapeabs plot too, the ptapeabs one.
16:58:09 <fizzie> Lymia: They *do* have descriptions.
16:58:21 <fizzie> "Absolute values (magnitude of differences from 0) left on the tape at
16:58:21 <fizzie> the end of the match, as seen from the viewpoint of the 7 best
16:58:21 <fizzie> programs, averaged over all opponents, tape lengths and polarities.
16:58:22 <fizzie> See per-program statistics for single-program per-tape-length tables."
16:59:02 <fizzie> It's got the top 7 only, in order for not to be an unreadable mess, though see earlier comment re client-side interactive plots.
16:59:50 <fizzie> Re the thing with which something is up, it's curious; the 47x1974 "cycles" array is just fine, with maximum cell value of 100000; but the 47x47 dcycles -- which is just supposed to be a per-duel sum version -- has a number of entries that are really close to 2^32; I'm talking 4295065266 and 4294969708 and such. That's a strange.
17:02:41 -!- azaq23 has joined.
17:05:50 <fizzie> That seems to come directly from cranklance, in fact. I wonder how I've managed to mess that up.
17:07:40 -!- azaq23 has quit (Ping timeout: 260 seconds).
17:13:23 <fizzie> Er. I just added a debugging printf statement, and the cycle count changed from c4294969334 to c90466. I think I have a buggy.
17:26:21 <fizzie> Things are just randomly changing AAAAA
17:26:46 -!- azaq23 has joined.
17:27:36 <fizzie> Deewiant: That was the first thing I did; got no errors. I'm trying to browse the documentation on what kind of more extended checks it had.
17:27:46 -!- nooodl has joined.
17:28:08 <fizzie> "All heap blocks were freed -- no leaks are possible" "ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 2 from 2)".
17:29:15 <Deewiant> And the other sanitizers, I guess
17:29:29 <fizzie> clang doesn't seem to want to compile the nested functions in it.
17:31:11 <Deewiant> gcc 4.8 added some sanitizers as well, but you probably don't have that.
17:31:22 <Sgeo> I killed a lot of norns to find a cure for a genetic condition that I created.
17:32:33 <fizzie> There's soem errors from valgrind --tool=exp-sgcheck.
17:33:13 <Deewiant> Oh, it has a stack memory checker? I didn't know that.
17:33:40 <fizzie> It's been experimental quite a while, I don't know if they're working on it very much.
17:34:49 <fizzie> These line numbers are really useful, what with a 30-line macro on that line. (Yes, yes.)
17:35:18 <olsner> without line numbers you wouldn't even know that much
17:35:34 <Deewiant> I question the quality of this code
17:35:55 <fizzie> Expected: global array "scores" of size 240 in object with soname "NONE" Actual: unknown Actual: is 0 after Expected -- I guess that might be trying to say I'm writing past the end of something.
17:36:05 <Deewiant> In fact I don't need to, it's already in question since it seems to have some stack corruption issues causing inconsistent behaviour
17:36:21 <fizzie> I've never noticed anything like that before.
17:36:54 <fizzie> This array, it's too small.
17:37:00 <fizzie> How the foo I've not noticed it before?
17:37:13 <fizzie> Well, at least it's only part of the statistics stuff in cranklance, not in gearlance at all.
17:37:17 -!- ais523 has joined.
17:37:58 <fizzie> Now there are no more sgcheck errors, and the cycle counts and such also work again.
17:37:58 <Deewiant> I recall spending a few days culminating in filing a compiler bug, all due to "this array, it's too small".
17:38:38 <Deewiant> At least the bug didn't stay open long enough for anybody to humiliate me further.
17:38:41 <fizzie> I had a scores[2][MAXTAPE] out of which I was accessing the rectangle of [0][MINTAPE] to [1][MAXTAPE], inclusive.
17:39:25 <fizzie> I think I was worried I'd make an off-by-one-error if I tried to make that scores[2][MAXTAPE-MINTAPE+1] and access [0][0] to [1][MAXTAPE-MINTAPE], or at least forget a -MINTAPE somewhere.
17:40:24 <fizzie> It's immediately followed by the long long cycles, which probably explains all those 2^32's.
17:43:54 -!- Arc_Koen has joined.
17:46:58 -!- doesthiswork has joined.
17:47:26 <fizzie> Lymia: You'll want to update your cranklance to fix what was discussed above, if you're doing cranking.
17:51:59 <zzo38> Is there a way to get a Verilog code to run fast enough on software to emulate a sound chip? They said it doesn't.
17:53:54 <ais523> zzo38: CPUs are very bad at emulating VHDL or Verilog quickly
17:53:59 <ais523> the execution model is completely different
17:54:07 <ais523> normally, a CPU is O(n) slower than an FPGA would be
17:54:20 <ais523> (this is why Verilog and VHDL aren't normally used to write CPU software)
17:55:15 <Arc_Koen> I might want to read everything there is to read concerning BFJoust and then try to get good at it
17:56:06 <zzo38> ais523: Yes I know it would be slower, but I would be wonder if there would be a way to optimize it to make it change everything around so that it is like a C code, so that you do not have to write and maintain two programs.
17:56:35 <ais523> zzo38: I'm working on that sort of thing as part of my PHD
17:56:41 <ais523> but I don't think it's particularly possible at the moment
17:56:51 <ais523> you could look at SystemC; it doesn't actually work for that purpose, but people claim it does
17:56:58 <ais523> Arc_Koen: you can start here: http://esolangs.org/wiki/BF_Joust_strategies
17:57:15 <zzo38> ais523: Will you make your PhD public?
17:57:25 <ais523> zzo38: the university will probably make it public
17:57:34 <ais523> and I think I have the copyright for the thesis itself
17:57:52 <zzo38> Also, if you know about Verilog codes, can you tell me if this is good or something is wrong with this? http://sprunge.us/MEOK
17:57:58 <ais523> there's also a research compiler online, which has source available although it isn't open source
17:58:33 <ais523> zzo38: normally you'd put everything on the same clock
17:58:34 <zzo38> But can the PhD be having a code which is open source?
17:58:52 <ais523> hardware can't easily handle the leading edge of arbitrary signals
17:58:57 <ais523> and it would be possible to write open source code for that
17:59:05 <ais523> just I couldn't because of the agreement I have with my employers
17:59:09 <ais523> someone else would have to do it, from scratch
17:59:32 <ais523> zzo38: anyway, you have three different signals you're taking the positive edge of there
17:59:43 <zzo38> ais523: Apparently Knuth was able to do it due to literate programming?
17:59:46 <ais523> that doesn't work in hardware (typical synthesizers will complain at 2)
17:59:50 <zzo38> ais523: OK, how do you suggest I fix?
18:00:07 <ais523> zzo38: you use registers to remember the values of the signals at the last clock edge
18:00:15 <ais523> and at each clock edge, you check to see if the values have changed from 0 to 1
18:00:20 <ais523> and then remember the new value
18:00:34 <zzo38> Other than the clock, I don't really care about the clock edge, I just want it to do when the signal is high.
18:00:47 <zzo38> Is there a code for that in Verilog?
18:01:17 <Arc_Koen> !bfjoust big_fat_decoy >((+)*128>)*5>>>([-]>)*-1
18:01:20 <EgoBot> Score for Arc_Koen_big_fat_decoy: 8.6
18:01:34 <Arc_Koen> !bfjoust big_fat_decoy >((+)*128>)*5>>>([-[-]]>)*-1
18:01:37 <EgoBot> Score for Arc_Koen_big_fat_decoy: 5.9
18:01:54 <Arc_Koen> !bfjoust big_fat_decoy >((+)*128>)*2>>>>>>([-]>)*-1
18:01:57 <EgoBot> Score for Arc_Koen_big_fat_decoy: 18.0
18:02:13 <Arc_Koen> !bfjoust big_fat_decoy >((+)*128>)*1>>>>>>>([-]>)*-1
18:02:15 <EgoBot> Score for Arc_Koen_big_fat_decoy: 15.4
18:02:43 <Arc_Koen> !bfjoust big_fat_decoy >((+)*128>)*3>>>>>([-]>)*-1
18:02:46 <EgoBot> Score for Arc_Koen_big_fat_decoy: 9.2
18:04:37 <Arc_Koen> !bfjoust big_fat_decoy (>(+)*128)*2+>>>>>>>([-]>)*-1
18:04:40 <EgoBot> Score for Arc_Koen_big_fat_decoy: 18.1
18:04:41 <ion> Paska is Finnish for “shit”. http://www.themarthablog.com/2008/03/paska-a-special-bread-that-i-used-this-past-weekend.html
18:05:13 <zzo38> ais523: Is there anything else wrong with this program other than that, though? And can you tell me, is there a way to just make it when it is high, rather than by edge? I don't know if there is such a thing, that is why I didn't do
18:05:37 <Arc_Koen> wait, there were 47 programs on the hill yesterday (not counting the challenger). Now report.txt tells me there are only 46...
18:05:56 <ais523> zzo38: check to see if it's high at each clock edge
18:06:16 <ais523> that's for writing synchronous code, which is the easiest way to write it normally
18:06:23 <ais523> asynchronous code exists but is very hard to write properly
18:06:35 <ais523> Arc_Koen: you probably want to use a reverse decoy setup
18:07:01 <ais523> otherwise, you do (+)*128 to set one decoy, and by the time you start setting the second, the opponent has already seen that cell's 0 and so knows it isn't a flag
18:07:08 -!- AnotherTest has joined.
18:07:08 <ais523> Arc_Koen: no, you write the decoy nearest to the opponent first
18:07:37 <fizzie> ion: At work they had a brand of coffee beans that was something very close to "paska". It made for the obvious jokes.
18:08:21 <zzo38> ais523: OK, I could do like that; but what if the clock is not synchronized for some reason?
18:08:32 <ais523> zzo38: you use the same clock for everything
18:08:39 <ais523> if you're trying to interface with someone else's circuit
18:08:40 <Arc_Koen> !bfjoust reverse_decoy >>(+)*128<(+)*128>>>>>>>>([-]>)*-1
18:08:43 <EgoBot> Score for Arc_Koen_reverse_decoy: 11.4
18:08:46 <ais523> then normally they provide an appropriate clock to use as well
18:09:29 <ais523> you normally want to check the documentation, it often says exactly what happens when relative to the clock
18:09:51 <zzo38> ais523: OK, I understand, now. Now, is there anything else with this program that should be fixed?
18:10:21 <ais523> I didn't understand all of it, I'm not an expert at Verilog
18:10:25 <zzo38> This program is not really designed to interface with another chip, and it is not an emulation of an existing chip either, so there is no documentation.
18:10:25 <ais523> but I didn't see any other obvious problems
18:10:26 <Arc_Koen> ais523: then I would be tempted to write a reverse attack as well... but there's the risk of falling of the edge
18:10:51 <ais523> Arc_Koen: yeah, the reason reverse decoy setup works is that there is no real way to write a reverse attack
18:11:10 <ais523> the best you can do is skip the first nonzero cell in the hope it's a decoy
18:11:12 <zzo38> ais523: What part didn't you understand? I am not expert either, I would like to know which part you didn't understand, anyways.
18:11:22 <ais523> Arc_Koen: anyway, you might want to use http://codu.org/eso/bfjoust/egojsout/ for testing your programs
18:11:31 <ais523> zzo38: I'm only really used to wire/reg and digital circuits
18:11:37 <ais523> I don't know what "channel" means
18:11:41 <Arc_Koen> to avoid flooding the channel?
18:12:00 <Deewiant> Arc_Koen: And to get better info about what's going on
18:12:20 <zzo38> ais523: "Channel" here is calling another module
18:12:50 <ais523> also, you don't really do "calls" in VHDL/Verilog; the module syntax is just implemented as inlining
18:12:55 <zzo38> (I don't know why the instance is required to have a name, but it says it does. I can understand how it can be helpful to have a name for debugging, but I don't know why it requires a name.)
18:13:02 <ais523> Arc_Koen: that wasn't to do with flooding, it was advice to help you understand your code
18:13:20 <ais523> you're not flooding, but using egojsout or juiced or the like is pretty much essential to understand why your code is winning or losing
18:13:28 <Arc_Koen> hmmm I'm not sure I understand the pretty diagrams that egosjout is showing me
18:13:41 <zzo38> ais512: Well, yes, probably it would have to be inlined to program a FPGA or make a ASIC
18:13:59 <ais523> Arc_Koen: it's a picture of the tape
18:14:02 <Arc_Koen> !bfjoust self_defense (-)*128(+-)*-1
18:14:05 <ais523> first program is starting from the left, second from the right
18:14:06 <EgoBot> Score for Arc_Koen_self_defense: 23.2
18:14:12 <ais523> Arc_Koen: I remember writing that program
18:14:21 <ais523> it didn't do so well the first time
18:14:27 <ais523> on the hill more recently, it did so well that I wrote anticipation2
18:14:35 <ais523> which is a really complex version of the same idea
18:14:57 <Arc_Koen> ais523: hmmm well then all the programs I tried against were defensive
18:15:17 <Arc_Koen> I was trying against one of quintopia and at some point the blue pointer stopped moving at all
18:15:29 <ais523> Arc_Koen: "simple" is a good test
18:15:58 <ais523> alternatively, there are various poke-based rushes that were doing very well a while ago
18:16:11 <ais523> things like slowpoke, space_elevator, and furry_furry_strapon_pegging_girls
18:16:27 <ais523> although people have started to get better at beating them
18:16:57 <Arc_Koen> so what's the series of > and < that appear when I hit run?
18:17:08 <ais523> it's a list of which program wins on each tape length
18:17:12 <ais523> short tapes are on the left, long tapes on the right
18:17:30 <ais523> and two rows because the programs are run with both polarities
18:17:35 <ais523> like, first it runs as normal
18:17:45 <ais523> then it swaps + and - in one of the prorgams (doesn't matter which) and runs again
18:18:24 <Arc_Koen> well I'm gonna have dinner and then I'll read bfjoust_strategies
18:22:57 <fizzie> Deewiant: The corresponding array, with the identical name, was scores[2][MAXTAPE+1] in gearlance. I must have fixed the very same bug once before, and not propagated the fix to cranklance.
18:23:50 <Deewiant> fizzie: Insert rant about having two separate codebases with significant shared content here.
18:24:39 <fizzie> Deewiant: I've been thinking about merging them, but it'd mean a pile of #ifdef's. (Or some other kind of conditional compilation.)
18:25:42 <fizzie> Deewiant: Here's git log for the commit that fixed it in gearlance: http://sprunge.us/WAAF
18:26:09 <fizzie> Yeah, I suppose this whole episode is kind of a +1 in favour of merging the things.
18:26:53 <fizzie> They are pretty much identical, cranklance just has a pile of statistics-collection in the actual execution unit.
18:27:46 <zzo38> Is this better? http://sprunge.us/ccJB Now I have it setting Volume twice in one block, though, and I don't know if it would cause a problem. It does compile fine in Icarus Verilog, though.
18:35:26 -!- TeruFSX has quit (Ping timeout: 255 seconds).
18:51:48 -!- Nisstyre has quit (Ping timeout: 264 seconds).
18:52:19 -!- carado_ has joined.
18:52:48 <elliott> fizzie: I wonder if you could do a thing to run the two BF Joust programs more parallel-y.
18:53:08 <elliott> you only have to "sync up" on a branch, or I guess a win condition
18:53:45 -!- doesthiswork has quit (Quit: Leaving.).
18:54:47 -!- carado has quit (Ping timeout: 246 seconds).
18:57:09 <zzo38> According to Wikipedia, "[Codabar] was designed to be accurately read even when printed on dot-matrix printers..." and is used in library books and cards; from my own testing, I have confirmed that it uses Luhn checksums (although in the ones I have seen, there is a space before it, unlike the example in Wikipedia).
18:57:34 <zzo38> However, I once tried printing one on a inkjet printer and the barcode readers in the library would not recognize it. Is a laser printer required?
18:58:28 <fizzie> I wonder how much that would help, performance-wise. (Also, it sounds like you'd have to be somewhat careful about any change to anyone's flag, in case it ends up as zero, unless you want to really bump the fanciness level up and implement speculative execution.)
18:58:36 <zzo38> I compared the printout to my own library card, and the bars are identical, but maybe ink printer is not accurate enough? Can you tell me if this is the case?
18:58:40 <elliott> that's what I meant by win condition
18:58:46 <elliott> though speculative execution would be fun too
18:59:05 <elliott> really the current stuff runs a maximum match length pretty much as fast as anyone needs, but thinking about ways to make it even faster are fun, right
19:00:09 <fizzie> I suppose it is a topic of interest to people writing bfjoust evaluators too.
19:02:12 <elliott> I guess faster performance matters for evolvers still
19:03:36 <zzo38> Do you know if it would be able to read barcodes from a computer display?
19:03:36 <fizzie> Well, depending on the definition of "matters", but more generations is more good.
19:06:02 -!- Nisstyre has joined.
19:07:32 -!- ogrom has joined.
19:24:58 -!- oerjan has joined.
19:27:42 <Arc_Koen> quintopia: daylight saving time?
19:34:09 -!- oklopol has joined.
19:47:23 -!- sirdancealot has quit (Quit: ragequit).
20:00:40 <Arc_Koen> The potential ambiguity is with [ or ] on the same cycle as + or -; in such cases, the flow control command sees the value before, rather than after, the increment or decrement.
20:01:38 <Arc_Koen> I think it would work better than (-)*128(+-)*-1 if the flow control command could see the value after the increment/decrement, rather than before
20:03:24 -!- AnotherTest has quit (Quit: Leaving.).
20:09:50 -!- ThatOtherPerson has quit (Quit: Leaving).
20:19:19 -!- oerjan has set topic: The 17th vigintile welcoming channel on Freenode. You have been warned. | <Taneb> #esoteric is supposed to be about esoteric programming languages, but is really a couple of dozen people being weird | Newsflash: fungot has been writing spam for money. | Logs: http://codu.org/logs/_esoteric/.
20:23:00 -!- oerjan has set topic: The 17th vigintile welcoming channel on Freenode. You have been warned. | <Taneb> #esoteric is supposed to be about esoteric programming languages, but is really a couple of dozen people being weird | Newsflash: fungot has been writing spam for chips. | Logs: http://codu.org/logs/_esoteric/.
20:26:45 -!- Taneb has joined.
20:29:51 -!- epicmonkey has quit (Ping timeout: 258 seconds).
20:39:37 <Taneb> Had a great weekend :)
20:39:58 <Bike> a topical weekend
20:40:08 <olsner> fungot: how many chips? did you like them?
20:40:09 <fungot> olsner: looking thanks. i would probably have called it loop. when you read the article i propose a new system: fnord bell pc ( fnord slow) :o
20:41:15 <oerjan> elliott: "What is printed by the HQ9+ program "HQ"?" "What is the only primitive of Subtle cough?" "In which year was Befunge invented?" "Who invented Befunge?" "What language was used to produce the first Malbolge "Hello, world!" program?"
20:42:17 <elliott> oerjan: unfortunately admins cannot add new captchas so I cannot use these contributions to taunt you.
20:43:51 <Taneb> "Hello World\nHQ", 1993, Chris Pressey, Lisp?
20:44:12 <elliott> no, 1993 is not the only primitive of subtle cough
20:44:38 <elliott> i wouldn't go for the first or last ones there i think; first one relies on finnicky details like punctuation and such, and latter has ambiguities like lisp vs. common lisp etc.
20:44:42 <oerjan> a language with 1993 as its only primitive would be somewhat unusual. but then so is subtle cough.
20:44:51 <Taneb> There should be a 'c' in there...
20:45:31 <oerjan> elliott: just discard punctuation hth
20:45:50 <elliott> you realise i did not write the captcha extension :P
20:47:04 -!- clog has quit (Ping timeout: 245 seconds).
20:48:38 <Vorpal> I wonder how many state-of-the-art SSDs you would have to put in RAID 0 to get performance similar to high end RAM. (Nevermind that SSDs are not random access down to byte level like RAM)
20:50:12 <Fiora> I remember the other day looking up some bandwidths of things, the dual-channel RAM throughput of a typical sandy bridge system was around 17.5 GB/s ish
20:50:24 <Fiora> and I think the high end SSDs are like 3GB/s or something? not sure
20:50:32 <Vorpal> Fiora, that is peak, not sustained
20:50:45 <Vorpal> 3 GB/s is what top end SATA does
20:50:46 -!- Mariu has joined.
20:51:00 <Mariu> really ? where are they ?
20:51:01 <Vorpal> and even SSDs have disk cache
20:51:23 <Mariu> or should I say, rullz ?
20:51:31 <pikhq> Vorpal: Strictly speaking modern RAM isn't quite that random access anymore anyways.
20:51:31 <Bike> Yes, you should say "rullz".
20:51:32 <Vorpal> I'm not sure what sustained transfer speed is from high end SSDs
20:51:53 <Vorpal> pikhq, how does that work?
20:52:14 <pikhq> Basically, the smallest unit you can access is actually a few bytes on modern DDR RAM.
20:52:30 <pikhq> It's a fairly minor technicality though.
20:52:48 <Vorpal> pikhq, my mental model of RAM: Set address lines, raise another line, the RAM pulls the line into a buffer, now you can read and/or write to said line, byte by byte
20:52:53 <Vorpal> so that isn't how it works then?
20:53:14 <Vorpal> (also there are clock lines and what not)
20:53:23 <pikhq> The DDR bus has made shit a bit more complicated for the sake of higher bandwidth.
20:53:26 <Fiora> Vorpal: nono, I meant, the high end ones that use PCI-E
20:53:32 <Fiora> the server-grade ones
20:53:44 <Fiora> I think SATA is 3Gb/s not 3GB/s
20:53:50 <pikhq> (as RAM *chip* clock speeds are still down at 200MHz)
20:54:36 -!- augur has quit (Remote host closed the connection).
20:54:49 <Fiora> http://www.tomshardware.com/reviews/ssd-910-benchmark-performance,3226.html
20:54:50 <pikhq> I think in general the individual RAM chips still work byte-by-byte, it's just a matter of anything on DDR not letting you act like that.
20:54:56 <Fiora> ah, this one can do 2GB/s
20:55:15 <pikhq> 64-bit wide bus and all.
20:55:49 <pikhq> This is also ignoring minor details of how there are points where you can't access some parts of the RAM because it's just the wrong point in the refresh cycle, but that's even more of a technicality.
20:57:03 <Vorpal> well yes, but refresh cycles have always existed
20:57:11 <Vorpal> unless you are dealing with SRAM
20:58:34 <quintopia> Arc_Koen: oh, i meant that bf joust gets popular about twice a year
20:58:43 <olsner> istr a bitmask of bytes that should be updated by a write, so even if you have a 64-bit data bus you can do single-byte operations (but I don't remember which kind of ram and for which architecture)
21:02:15 -!- Taneb has quit (Remote host closed the connection).
21:02:43 -!- Taneb has joined.
21:03:51 <fizzie> What with caches, I'd assume most RAM reads these days are a full cache line's worth.
21:04:43 <Taneb> Yeah, this weekend I went to an anime con
21:05:13 <pikhq> Yeah, cache also jacks up the "random access" feature in a sense.
21:07:28 <olsner> I wonder if many systems have enough PCIe bandwidth to reach ram speeds
21:09:01 <fizzie> I understand there was some sort of a "con" somewhere in Finland (Tampere?) this weekend too. I heard a mention of some Homestuckers.
21:15:20 <Vorpal> Fiora, "The Intel SSD 910 can easily sustain 1400 MB/s with only a minimal amount of buffering (100 MB)." heh, "minimal"
21:15:40 <Fiora> I think that's because it needs to be able to issue lots of reads at once for pipelining
21:15:49 <Taneb> Yesterday I cosplayed Homestuck
21:15:54 <Taneb> And today I cosplayed Finland
21:16:02 <Fiora> since modern OSs aren't exactly built for super low latency disk reads I guess? and the rest of the sysem too
21:16:10 <Fiora> oooh. which character did you cosplay?
21:16:21 <Vorpal> Fiora, I just think calling a 100 MB buffer "minimal" is kind of crazy
21:16:39 <Fiora> well don't modern system usually use gigabytes of disk cache/buffer?
21:16:47 <Fiora> or does that mean something else
21:17:02 <Vorpal> hm, true, still, hdd buffers are nowhere near that afaik
21:17:32 <Vorpal> total used free shared buffers cached
21:17:32 <Vorpal> Mem: 16053 13722 2331 0 511 5251
21:17:33 <Vorpal> -/+ buffers/cache: 7958 8094
21:17:34 <olsner> I think 64MB is normal for high-end disks, but I also think the hdd buffer is irrelevant
21:17:54 <kmc> Linux will use all your free RAM as disk cache
21:18:14 <Vorpal> kmc, looks like it is using a couple of gb for buffers though?
21:18:36 <Vorpal> that seems a bit much while idling
21:19:36 <nooodl> Taneb: cosplayed finland?
21:20:10 <olsner> that PCIe SSD doesn't look very optimal - a pcie slot can give more bandwidth than that if you install a disk controller and raid lots of ssd:s on it instead
21:20:27 <Taneb> nooodl, the character of Finland from the webcomic Scandinavia and the world
21:20:39 <nooodl> ah. i've read half of that
21:21:12 <olsner> (or if you get a faster pcie ssd)
21:22:17 <Taneb> About to run out of battery...
21:23:29 <Vorpal> Taneb, where are you cosplaying?
21:23:55 <Taneb> Sunnycon, an anime convention in the far-off city of Sunderland
21:25:05 <Taneb> Phantom_Hoover, a raging fangirl
21:26:00 <elliott> taneb can't take pictures. it would threaten the space time continuum.
21:26:35 <Fiora> Taneb: which homestuck character?
21:28:26 <Taneb> And my Finland sucked
21:28:27 <olsner> doesn't everyone's finland?
21:28:29 <Taneb> But Vic Mignogna said he liked my hat!
21:28:29 -!- rodgort has quit (Ping timeout: 248 seconds).
21:30:25 -!- rodgort has joined.
21:35:38 <shachaf> Is Jake related to Nepeta Leijon?
21:35:42 -!- atriq has joined.
21:35:53 -!- Taneb has quit (Disconnected by services).
21:35:57 -!- atriq has changed nick to Taneb.
21:36:08 <Fiora> I'm not sure they've even seen each other? though there is fefeta
21:36:34 <Taneb> Phantom_Hoover, how bad's tswett, generally speaking?
21:36:49 <Taneb> shachaf, they are pretty much entirely disconnected
21:41:38 <Taneb> Jake met a ghost-y thing that was a hybrid containing Nepeta
21:43:36 <zzo38> Is gay adoption a form of discrimination against children?
21:43:41 <Taneb> Who, as Fiora mentioned, was called Fefeta
21:43:57 <Taneb> zzo38, I cannot see how
21:45:42 <shachaf> imo nepeta leijon is the best one?
21:45:47 <zzo38> It seems slightly reasonable to me, but it does not make a lot of sense to me.
21:45:58 <shachaf> that's why i cosine her on weekends
21:47:16 <zzo38> Apparently Cardinal Bergoglio said that.
21:47:26 <zzo38> (now known as Pope Francis I)
21:51:22 -!- Nisstyre-laptop has joined.
21:53:37 -!- TeruFSX has joined.
21:58:03 -!- Taneb has quit (Quit: Leaving).
21:58:25 <kmc> zzo38: just Pope Francis, although I suppose he is known as Francis I too
21:58:42 <Bike> this isn't talk: pope francis, kmc
21:58:57 <Bike> (seriously they have a few pages on that)
21:59:02 <kmc> yeah I'm sure
21:59:21 <kmc> Francis SZ
21:59:38 <Bike> it's pretty funny to see people cite the vast literature on popes choosing new names, which had only happened once since like the cambrian period
22:00:40 <Bike> francis 2.0 should be a sitcom about a hip new young pope trying to work his way around his job inbetween roleplaying online
22:00:58 <Bike> it can tie into elliott's ARG
22:01:33 <elliott> is catholic roleplay a thing; say yes
22:02:27 <Bike> episode about francis 2.0 nervous attending an offline meet for the first time; he arrives in the popemobile, which the others take as dedication to his character
22:02:47 <kmc> Bike: i would watch that show
22:03:02 <Bike> elliott: http://forums.catholic.com/showthread.php?t=86248
22:03:05 <kmc> i would even sign an online petition demanding its return after early cancellation
22:03:45 <elliott> it's a real shame that nobody will ever make tv shows this stupid
22:03:55 <elliott> i would pay a lot to watch them
22:04:07 <kmc> they make TV shows far stupider
22:04:09 <Bike> elliott: you've heard of "Heil Honey, I'm Home!" right
22:04:38 <kmc> there are not one but two current TV shows about celebrities jumping into swimming pools
22:04:57 <Bike> The show centres on fictionalised versions of Adolf Hitler and Eva Braun, who live next door to a Jewish couple, Arny and Rosa Goldenstein. The show's plot is centred on Hitler's inability to get along with his neighbours.
22:05:06 <ais523> kmc: that specifically? or something a bit more general?
22:05:17 <Bike> generalized pool-jumping
22:05:31 <kmc> ais523: http://www.avclub.com/articles/splash,93833/
22:05:37 <elliott> kmc: well it's a specific kind of stupid I'm looking for
22:05:40 <Lymia> https://files.lymiahugs.com/egojoust-stats
22:05:55 <Lymia> Best 100 programs ever in Egobot.
22:05:58 <kmc> Bike: yeah my friend suggested a similar show about Osama bin Laden, after it was discovered that he was living in a suburban house
22:06:16 -!- ogrom has quit (Quit: Left).
22:06:31 <Bike> that could actually be kind of cool, they could go some way to treating waziristan as more than crazy infidel land, not that they would
22:06:44 <kmc> it's basically like Two and a Half Men except that the unwanted long term houseguest is Osama bin Laden
22:06:49 <elliott> Lymia: is this a heap with all the programs ever
22:07:01 <kmc> and in the series finale the US Marines kill everyone
22:07:07 <kmc> actually that should happen in every show
22:07:40 <Bike> i thought it was seals? gosh we just have so many kill squads to keep track of
22:07:48 <elliott> that was how Friends ended right
22:08:01 <Bike> more importantly, does this mean osama bin laden is played by charlie sheen
22:08:03 <kmc> yeah i don't remember
22:08:06 <Lymia> elliott, not exactly
22:08:10 <elliott> sidenote: could there possibly be a stupider name for a show than Friends
22:08:14 <Lymia> I did a few hirsutics to prevent running for one day
22:08:17 <Lymia> more than one day*
22:08:20 <kmc> Bike: well it was his house in that show
22:08:31 <kmc> so it would be the other guy
22:08:31 <impomatic> Am I still here? Very weak wifi signal in the office :-(
22:08:32 <Bike> oh. i'm not up with "the canon"
22:08:36 <Bike> yes impomatic.
22:08:44 <kmc> it's slightly embarassing that I know this
22:08:54 <Bike> it's okay, i've seen a few episodes too
22:08:58 <Lymia> This is the best 100 from a hill consisting of the best version of each group of programs with the same name, as compared against the current hill.
22:09:08 <Bike> elliott: http://goodcatholicdykes.wordpress.com/2012/01/14/dear-dykes-religious-role-play/ this was a good thing to google.
22:09:22 -!- augur has joined.
22:09:25 <tswett> Aw man, Taneb got to meet Vic Mignogna.
22:10:32 <impomatic> Oh! I can see my name :-) https://files.lymiahugs.com/egojoust-stats/
22:10:36 <Bike> i can't even tell how real this is
22:10:51 <Lymia> The top 100 was measured via raw win/loses with ties counted as losses though.
22:10:58 <Lymia> That might have skewed things.
22:12:02 <zzo38> kmc: I know he is just known as Pope Francis but I don't like that so I call him Pope Francis I instead.
22:12:28 <kmc> Pope Gopher PlainTeX I
22:12:29 <impomatic> Are all of the BF Joust warriors going right back to the beginning available?
22:12:34 <Bike> why don't you like it
22:12:48 <Lymia> impomatic, it's from in_egobot.hg, all changesets.
22:13:38 <zzo38> Bike: To tell the difference from Pope Francis II (even though there is no such thing yet, I think they should be numbered anyways, since such things is possible)
22:13:59 <kmc> say what you will about Chuck Lorre but the man knows his craft
22:14:06 <Bike> zzo38: so do you refer to Peter as Peter I
22:14:13 <kmc> when I watch his shows I laugh when the laugh track tells me to, even if I hate myself for it
22:14:27 <Bike> are you a cardinal
22:14:30 <kmc> > "Pope Francis" == "Pope Francis II"
22:14:33 <zzo38> Bike: No, Peter is the name that is not allow for any other popes, I think.
22:14:46 <kmc> rarely is it necessary to talk about all the popes of a particular name together
22:14:47 <Lymia> The number before the : is the changeset number
22:14:48 <zzo38> elliott: You cannot vote for me, I am not a cardinal.
22:14:53 <Bike> It's allowed, but traditionally a Peter II heralds the end of the universe.
22:15:02 <Bike> zzo38: You don't have to be a cardinal to be elected.
22:15:07 <kmc> Pope Francis v1.0-g7a3f95c2
22:15:35 <zzo38> Bike: Well, I refuse to be elected pope of the Catholic church if I am not a cardinal.
22:15:48 <elliott> that is very mature of you.
22:15:54 <zzo38> The pope of Discordianism, I can be, though!
22:15:59 <Bike> Why not? there's plenty of precedent. they even have procedure for electing laymen.
22:16:19 <elliott> it looks like you are allowed to pick Peter II but it would be a big faux pas
22:16:27 <zzo38> Bike: What is the procedure?
22:16:51 <Bike> You get made a priest, then a bishop, then the pope, or whatever. Basically you ascend in order.
22:17:00 -!- augur has quit (Remote host closed the connection).
22:17:06 <Bike> I'm not sure if it's ever happened but it sounds pretty funny.
22:17:08 <kmc> elliott: pick Pope FIXME and then after you've been fully poped, make a declaration ex cathedra that you are allowed to be Peter II
22:17:31 <zzo38> Bike: Well, yes, you can be if you are made a priest first and so on
22:17:44 <zzo38> But I don't think bishop is enough; you have to be cardinal before you can be pope.
22:17:44 <elliott> papal infallability would be good fun to mess around with
22:18:18 <zzo38> But if I was pope, though, I would try to get rid of papal infallability
22:18:18 <olsner> does the pope recognize canada?
22:18:58 <elliott> zzo38: would you use palal infallability to delcare that popes cannot ever be infallible
22:19:12 <zzo38> elliott: No, that is illogical.
22:19:44 <Arc_Koen> we should have bf joust tournaments
22:19:54 <Bike> zzo38: gregory X for instance was a bishop
22:20:02 <oerjan> just get passed a clarification that the pope can only be infallible if she is a lesbian hth
22:20:05 <Arc_Koen> that is, you know in advance who your opponent will be but not what program they'll use
22:21:06 <Arc_Koen> so you can make a program in function of who your opponent is ("hmm, I know he often uses fast rushes, so I'm gonna try to lock him...")
22:21:30 <oerjan> also, http://en.wikipedia.org/wiki/List_of_sexually_active_popes
22:22:17 <Arc_Koen> There have been 266 popes. Since 1585, no pope is known to have been sexually active either before or after election to the Papacy.
22:22:30 <Bike> "Pope John X (914–928) had romantic affairs with both Theodora and her daughter Marozia, according to Liutprand of Cremona in his Antapodosis:" just like my porno
22:22:38 <Arc_Koen> how the hell can you start an article with that sentence, and then go on with a list of all sexually active popes?
22:22:44 <elliott> Pope Paul II (1464–1471) is popularly thought to have died due to indigestion arising from eating melon in excess,[43][44] though a rumour was spread by his detractors that he died while engaging in sodomy.[citation needed]
22:22:51 <zzo38> Papal infallibility means that the pope is allowed to be infallible by himself if he wants to, without requiring a council.
22:23:04 <elliott> Arc_Koen: did you know the catholic church existed prior to 1585
22:23:15 <coppro> `addquot <zzo38> Papal infallibility means that the pope is allowed to be infallible by himself if he wants to, without requiring a council.
22:23:19 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: addquot: not found
22:23:19 <coppro> `addquote <zzo38> Papal infallibility means that the pope is allowed to be infallible by himself if he wants to, without requiring a council.
22:23:21 <Arc_Koen> now you're just making stuff up
22:23:23 <HackEgo> 990) <zzo38> Papal infallibility means that the pope is allowed to be infallible by himself if he wants to, without requiring a council.
22:23:25 <Bike> elliott: basically the same
22:23:40 <elliott> so wait have the last billion popes been celibate all their life
22:24:11 <FreeFull> http://en.wikipedia.org/wiki/List_of_sexually_active_popes
22:24:25 <Bike> thanks that's the context
22:24:57 <zzo38> Therefore, if I was the pope and wanted to get rid of papal infallibility, I would organize the council to consider it.
22:25:32 <pikhq> Strictly speaking "Pope" just means you're the Bishop of Rome, anyways.
22:25:49 <pikhq> Catholics are silly people.
22:26:04 <Bike> i think you'll find that eastern christianity isn't real pikhq!!
22:26:33 <pikhq> No, all the other Popes are also Bishop of Rome. :P
22:26:47 <Bike> and let's see by billion elliott means uh, like fifty
22:27:14 <zzo38> elliott: I said it is illogical. I mean it is illogical if it is not temporal logic, and I do not think temporal logic should be applied here (this isn't a kind of thing that seems like, whether or not it should be, should change, but rather that if you made an error before you can correct it).
22:27:33 <elliott> so it is kind of like divorcing pala infallibility
22:27:36 <Bike> http://en.wikipedia.org/wiki/Pope-elect_Stephen Oh, here's another guy who got elected pope. He wasn't even a bishop!
22:27:53 <Bike> "List of 10 shortest-reigning popes"
22:28:46 <zzo38> Bike: Well, OK, I guess some people are, but usually they are cardinals, and probably they should select people that are cardinals if they can, but I don't know exactly how it works.
22:29:01 <Bike> sounds like you're not prime pope material then
22:29:05 <Bike> better brush up on that
22:29:26 <zzo38> I don't intend to be pope.
22:30:15 <pikhq> Not even space pope?
22:31:22 -!- carado has joined.
22:31:23 <coppro> that guy wouldn't take me to his lizard
22:31:44 <zzo38> Well, not pope of the Catholic church, anyways.
22:32:04 <Bike> You gonna be the Coptic pope?
22:32:51 <Bike> make up your mind dude
22:36:20 -!- carado_ has quit (Ping timeout: 246 seconds).
22:37:40 <FreeFull> "Pope Paul II (1464–1471) is popularly thought to have died due to indigestion arising from eating melon in excess,[43][44] though a rumour was spread by his detractors that he died while engaging in sodomy."
22:38:07 <Bike> are you elliott
22:38:45 <oerjan> FreeFull: you might wish to read the above discussion hth
22:39:06 -!- sirdancealo2 has joined.
22:41:19 <zzo38> I don't think there are any pope with fractional numbers (except something I made up for the Dungeons&Dragons game)
22:41:34 <shachaf> `addquote <zzo38> I don't think there are any pope with fractional numbers (except something I made up for the Dungeons&Dragons game)
22:41:36 <TeruFSX> there was Pope John the Fourteenth the Second
22:41:37 <HackEgo> 991) <zzo38> I don't think there are any pope with fractional numbers (except something I made up for the Dungeons&Dragons game)
22:41:57 <Bike> You laugh, but antipopes lead to numbering just as silly.
22:43:03 -!- clog has joined.
22:43:13 <FreeFull> http://goats.com/archive/040227.html
22:43:38 <TeruFSX> there are six different people who have declared themselves Peter II in the last hundred years
22:46:21 -!- clog has quit (Client Quit).
22:46:38 -!- clog has joined.
22:47:29 -!- augur has joined.
22:47:40 <Bike> "peter ii" becomes most fashionable name in history, actual antichrist named peter ii by mistake, world implodes
22:52:59 <fizzie> "Antipope" is a funny word, however.
22:53:20 <Bike> Fiora: "To convert decimal scientific notation to IEEE double precision using [180-bit precision][...] the [lookup] table used [...] would have nearly 10^20 entries, most of which would contain over 50 decimal digits. The table can be compressed by several orders of magnitude, but it is hard to believe that this approach can be made practical." thanks for clarifying!
22:55:12 <tswett> I wish they had an actual elected office called the Antipope.
22:56:13 <tswett> Maybe we ought to do something like that in a nomic.
22:56:35 <tswett> Perhaps an office whose job is to violate the rules that apply to the holder of the original office.
22:56:38 <pikhq> So. Craziest form of digital video encoding.
22:56:57 <zzo38> Is that the craziest form?
22:57:24 <coppro> tswett: you should build on my proposed gameplay from last september using that
22:57:30 <pikhq> zzo38: Hmm. Maybe.
22:57:37 <pikhq> It'd be a 12MHz PCM signal.
22:58:18 <tswett> What if you're archiving VHS tapes and you need to occasionally copy the data onto more VHS tapes?
22:59:30 <zzo38> It is the signal I use.
22:59:54 <tswett> Or what if the video needs to be transmitted as audio.
23:00:39 <pikhq> tswett: In that case I'd use a lower sampling rate. :P
23:01:47 <ais523> tswett: an Agoran Antispeaker?
23:01:55 <ais523> whose job is to ensure discontinuity of the game?
23:02:04 <zzo38> But I don't have a program to convert other video format into PCM format and vice versa.
23:02:29 <pikhq> Yeah, that'd straight-up be a programmatic NTSC encoder.
23:07:06 <zzo38> Even such a program for a single frame, I would like to have, too.
23:10:02 -!- ais523 has quit.
23:10:24 -!- zzo38 has quit (Disconnected by services).
23:10:29 -!- zzo38 has joined.
23:10:41 <zzo38> Why do I get connection errors on this IRC a lot?
23:12:43 -!- EgoBot has quit (Read error: Connection reset by peer).
23:13:13 -!- EgoBot has joined.
23:13:25 -!- trout has quit (Ping timeout: 248 seconds).
23:13:38 -!- pikhq_ has joined.
23:13:39 -!- mroman_ has joined.
23:14:09 -!- aloril has quit (Ping timeout: 245 seconds).
23:14:44 -!- quintopi1 has joined.
23:14:50 -!- Nisstyre has quit (Ping timeout: 264 seconds).
23:14:50 -!- quintopia has quit (Ping timeout: 264 seconds).
23:14:58 -!- hogeyui_ has joined.
23:14:59 -!- Nisstyre-laptop has quit (Ping timeout: 245 seconds).
23:14:59 -!- ion has quit (Ping timeout: 245 seconds).
23:15:00 -!- hogeyui has quit (Ping timeout: 260 seconds).
23:15:01 -!- heroux_ has joined.
23:15:03 -!- impomatic has quit (Ping timeout: 246 seconds).
23:15:03 -!- mroman has quit (Ping timeout: 246 seconds).
23:15:12 -!- nortti has quit (Ping timeout: 264 seconds).
23:15:20 -!- nortti has joined.
23:15:22 -!- olsner_ has joined.
23:15:24 -!- Sgeo has quit (Ping timeout: 245 seconds).
23:15:57 -!- comex` has joined.
23:15:57 -!- variable has joined.
23:16:18 -!- sirdancealo2 has quit (Ping timeout: 272 seconds).
23:16:33 -!- Bike_ has joined.
23:17:19 -!- Nisstyre has joined.
23:17:35 -!- Bike has quit (Disconnected by services).
23:17:38 -!- Bike_ has changed nick to Bike.
23:18:31 -!- abumirqaan has quit (Ping timeout: 264 seconds).
23:19:43 -!- Gregor` has joined.
23:20:07 -!- atehwa_ has joined.
23:20:33 -!- pikhq has quit (*.net *.split).
23:20:33 -!- heroux has quit (*.net *.split).
23:20:33 -!- olsner has quit (*.net *.split).
23:20:33 -!- iamcal_ has quit (*.net *.split).
23:20:48 -!- shachaf_ has joined.
23:21:21 -!- shachaf_ has quit (Changing host).
23:21:21 -!- shachaf_ has joined.
23:21:31 -!- shachaf has quit (Disconnected by services).
23:21:38 -!- shachaf_ has changed nick to shachaf.
23:21:56 -!- Arc_Koen_ has joined.
23:23:40 -!- atehwa has quit (Ping timeout: 245 seconds).
23:23:40 -!- Sanky has quit (Ping timeout: 245 seconds).
23:23:47 -!- comex has quit (Ping timeout: 248 seconds).
23:23:47 -!- jconn has quit (Ping timeout: 248 seconds).
23:23:47 -!- Arc_Koen has quit (Ping timeout: 248 seconds).
23:23:47 -!- fungot has quit (Ping timeout: 248 seconds).
23:23:47 -!- SirCmpwn has quit (Ping timeout: 248 seconds).
23:23:47 -!- Arc_Koen_ has changed nick to Arc_Koen.
23:23:56 -!- Gregor has quit (*.net *.split).
23:23:56 -!- HackEgo has quit (*.net *.split).
23:23:56 <myndzi> damn you guys have gone to town on the bf joust wiki
23:24:27 -!- azaq23 has quit (Max SendQ exceeded).
23:24:29 -!- Sgeo has joined.
23:24:29 <kmc> why did a bunch of people just ping out
23:24:34 -!- ion has joined.
23:24:38 <myndzi> ya missed something though
23:24:46 <Arc_Koen> I'm part of that bunch and I'd like to know
23:25:01 <Bike> party at kmc's place
23:25:04 -!- Sanky has joined.
23:25:13 -!- aloril has joined.
23:25:24 <elliott> i'd go to a party at kmc's place
23:25:28 <myndzi> the anti-shudder clear was designed specifically to cause shudder to have a cell at 0 for two cycles in a row; it's not just that it's "long and wacky" or waiting two c ycles
23:25:39 <shachaf> i'd go to a party at kmc's place
23:25:57 <myndzi> that is, regardless of polarity it always manages to counter, and it's possible to make such a clear for any shudder pattern
23:26:09 <elliott> oerjan: The Latest On Effective mouse pads Secrets
23:26:12 -!- HackEgo has joined.
23:26:22 <myndzi> it doesn't need to loop at all, the loop is only there to skip the sequence if unnecessary
23:27:10 <FreeFull> I wonder what bfjoust would be like if cells had fewer values
23:27:22 <myndzi> less interesting, i imagine
23:27:34 <shachaf> What if cells had lesser values
23:27:36 <myndzi> the closer they get to 0 the less variation there would be in strategy
23:27:55 <myndzi> but making them arbitrarily large doesn't help either
23:27:59 <myndzi> 8 bits seems a good size
23:28:59 -!- c00kiemon5ter has joined.
23:30:09 <Lymia> For what it's worth.
23:30:16 -!- SirCmpwn has joined.
23:30:20 <Lymia> My evolver produced something that amounted to (+-.-+.)
23:30:24 <Lymia> Which seemingly got ~20
23:30:37 <Lymia> Is there a name for that? o-o
23:31:02 <myndzi> seems like it falls into anti-vibration or anti-shudder
23:31:18 <myndzi> either the + or - will lock the opponent on 0, the pause will switch in case you're out of sync
23:31:30 <myndzi> something like that anyway
23:31:31 <oerjan> (the wat was for your mouse pad comment. for the idea of boolfuck joust you get yay! instead)
23:32:09 <myndzi> i suppose you could make the win condition something longer than 2 cycles
23:32:22 <myndzi> then the complexity would not be in magnitude but in timing
23:33:50 <zzo38> In what cases is the order important of multiple simultaneous MIDI events?
23:34:26 -!- heroux_ has quit (Ping timeout: 260 seconds).
23:34:29 <zzo38> (I don't mean General MIDI, I just mean MIDI)
23:34:37 <kmc> i just finished setting up my old laptop as an XBMC box
23:34:38 -!- heroux has joined.
23:34:40 <kmc> good for parties
23:34:47 <elliott> oerjan: it is a wonderful new page on the wiki
23:36:29 -!- c00kiemon5ter has quit (Changing host).
23:36:29 -!- c00kiemon5ter has joined.
23:40:21 -!- c00kiemon5ter has quit (Disconnected by services).
23:40:50 -!- c00kiemon5ter has joined.
23:43:24 -!- nooodl has quit (Quit: Leaving).
23:43:27 -!- elliott_ has joined.
23:43:42 -!- elliott has quit (Disconnected by services).
23:43:49 -!- elliott_ has changed nick to elliott.
23:46:12 -!- atehwa has joined.
23:46:28 -!- dessos_ has joined.
23:47:11 <olsner_> I do hope you never manage to completely remove spam from the wiki
23:47:46 -!- Arc_Koen has quit (*.net *.split).
23:47:46 -!- atehwa_ has quit (*.net *.split).
23:47:46 -!- carado has quit (*.net *.split).
23:48:13 -!- carado has joined.
23:48:49 <olsner_> because of all the incredible pages and titles the spam gives us
23:48:55 -!- olsner_ has changed nick to olsner.
23:49:30 -!- Arc_Koen has joined.
23:50:00 -!- aloril has quit (Ping timeout: 245 seconds).
23:50:56 -!- azaq23 has joined.
23:51:00 <Arc_Koen> 16:48:09 --- quit: Arc_Koen (*.net *.split)
23:51:16 <Arc_Koen> I thought netsplit meant the net was splitted
23:52:06 -!- surma has quit (*.net *.split).
23:52:06 -!- fizzie has quit (*.net *.split).
23:52:06 -!- dessos has quit (*.net *.split).
23:52:06 -!- blsqbot has quit (*.net *.split).
23:52:18 -!- fizzie` has joined.
23:55:50 -!- TeruFSX has quit (Ping timeout: 255 seconds).
23:57:48 -!- Sanky has quit (*.net *.split).
23:57:52 -!- Sgeo has quit (*.net *.split).
23:57:53 -!- augur has quit (*.net *.split).
23:57:53 -!- FireFly has quit (*.net *.split).
23:58:34 -!- dessos has joined.
23:59:00 -!- aloril has joined.