←2014-09-05 2014-09-06 2014-09-07→ ↑2014 ↑all
00:00:25 -!- Patashu has joined.
00:02:57 -!- Patashu_ has quit (Ping timeout: 264 seconds).
00:04:28 -!- Bicyclidine has quit (Ping timeout: 252 seconds).
00:13:22 -!- ^v has quit (Ping timeout: 240 seconds).
00:13:29 -!- ^4 has joined.
00:14:27 -!- not^v has quit (Ping timeout: 272 seconds).
00:20:23 -!- ^4 has quit (Ping timeout: 272 seconds).
00:23:10 -!- Patashu has quit (Ping timeout: 252 seconds).
00:24:21 -!- Patashu has joined.
00:31:02 <newsham> anyone ever play with this? https://code.google.com/p/googlemapaxon/source/browse/trunk/Docs/webs/google+api+tips++google+maps+api+v3+context+menu+example_files/ao7cfjproEEAn5OijXEgfdHyA_5BKye5jml3JCZ7KvU.js?r=125
00:32:14 -!- Hjulle has joined.
00:33:00 -!- Patashu has quit (Remote host closed the connection).
00:33:19 -!- Patashu has joined.
00:55:46 <boily> tic-tac-toe has the dubious distinction of being the lowest ranked game on BGG, with a nice 10051. tmyk.
00:56:53 -!- CrazyM4n has joined.
00:56:56 <Sgeo> boily: where do you see the ran?
00:56:58 <Sgeo> rank
00:57:03 <Sgeo> Oh
00:59:30 <CrazyM4n> so i just generated like 12,000 fibonacci numbers in around a second
00:59:38 <CrazyM4n> in brainfunge
00:59:55 -!- ^v has joined.
01:01:02 <newsham> is 12kFPS good?
01:01:10 <CrazyM4n> i have no idea
01:01:11 <CrazyM4n> probably not
01:01:41 <CrazyM4n> where´s a good place to upload around 16 mb of text?
01:01:59 <boily> pastebin.ca?
01:03:01 <CrazyM4n> ¨may not exceed 150,000 bytes¨ so close
01:03:54 <zzo38> What is the limit for sprunge?
01:03:59 <CrazyM4n> i have no idea
01:04:07 <CrazyM4n> after 30 seconds it gave me error 500
01:04:19 <zzo38> I think source codes are available for sprunge so you can try to look in there
01:04:36 <CrazyM4n> i think that pastebin.com is working
01:04:41 <CrazyM4n> if nothing else, google drive
01:05:00 <CrazyM4n> http://prntscr.com/4k33gy
01:05:18 <newsham> 413 request entity to large
01:05:41 <CrazyM4n> google drive it is
01:06:08 <CrazyM4n> https://drive.google.com/file/d/0B795W1ddWOwxSTlfUmtYY0MyZFk/edit?usp=sharing woo
01:06:15 <CrazyM4n> http://sprunge.us/OJgO for code
01:12:46 -!- Hjulle has quit (Quit: Konversation terminated!).
01:18:34 -!- boily has quit (Quit: ÆSCHERICHIA CHICKEN).
01:19:55 -!- Hjulle has joined.
01:29:43 -!- Lymia has joined.
01:29:46 <Lymia> Opps~
01:30:02 <Lymia> (Is EgoBot or whatever still broken?)
01:32:52 <Phantom__Hoover> now that i think about it i haven't seen gregor around in a while
01:33:40 <Gregor> That's because he's gone.
01:34:00 <Phantom__Hoover> are you the executor of his estate
01:34:57 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
01:35:39 -!- Gregor has changed nick to ProfessorGregorE.
01:35:44 <ProfessorGregorE> Dang it.
01:35:49 <ProfessorGregorE> It cut off the "Eh"
01:38:30 <pikhq> Congratulations, Professor Doctor Richards Eh.
01:38:42 <CrazyM4n> yo
01:38:50 <CrazyM4n> gimme something interesting to make in an esolang
01:39:17 <HackEgo> [wiki] [[Brainfunge]] http://esolangs.org/w/index.php?diff=40399&oldid=40397 * 98.177.186.100 * (+70)
01:48:17 <zzo38> Make a 6502 assembler
01:48:55 <newsham> zzo: do you like obfuscated JS?
01:49:44 <zzo38> newsham: If it is trying to make it shorter, then it can help. Otherwise not really
01:49:53 <CrazyM4n> 6502 assembler
01:50:00 <CrazyM4n> no guarentees
01:50:03 <CrazyM4n> but sounds like fun
01:50:06 <newsham> no, this is obfuscated to make it hard to read and figure out
01:50:21 <newsham> https://code.google.com/p/googlemapaxon/source/browse/trunk/Docs/webs/google+api+tips++google+maps+api+v3+context+menu+example_files/ao7cfjproEEAn5OijXEgfdHyA_5BKye5jml3JCZ7KvU.js?r=125
01:51:05 <newsham> its to prevent people from automatating signups to google accounts
01:53:10 <newsham> which is prob a good reason not to figure out what it does, but it looks like a fun challenge
01:53:24 -!- ^v has quit (Ping timeout: 255 seconds).
01:54:08 <zzo38> I think we had better try to figure out anyways
01:55:59 <zzo38> Maybe Google will try to sue themself over it
01:57:55 <newsham> you should :)
01:58:33 <newsham> i've been reformatting it for ease of reading... http://www.thenewsh.com/~newsham/x/machine/botguard.js
01:58:54 <newsham> still lots to go
01:59:20 <newsham> seems like they use a few common idioms repetitively.. could prob write a program to undo some of the obfuscation
01:59:50 <Sgeo> Why couldn't signups be automated via PhantomJS if it's an issue of figuring out what the JS does without executing it... just execute it
01:59:56 <newsham> like they like to use ?: alot to do if/then/else
02:00:13 <newsham> sgeo: i dont know.. i dont understand what protectionthis script actually offers
02:00:14 <quintopia> ProfessorGregorE: what do you do now
02:00:41 <pikhq> He professors at Canadians.
02:00:44 <zzo38> Sgeo: It doesn't matter; we should try to figure it out anyways.
02:00:51 <newsham> perhaps it needs to interact with your dom in specific ways
02:00:53 <quintopia> canadians in canada?
02:00:59 * Sgeo suddenly suspects zzo38 is a spammer
02:01:04 <Sgeo> zzo38, are you a spammer?
02:01:07 <newsham> and you'd need the right hookins into your js interpretter to properly run them?
02:01:24 <zzo38> I do not think so, nor do I have any intention to have a Google account anyways.
02:01:40 <pikhq> No, Canadians in SPAAACE
02:02:11 <quintopia> when did he go to canadia
02:02:24 <pikhq> Facebook says "few weeks ago"
02:02:28 <zzo38> newsham: Then those will be some ways to work-around, but regardless, it is not the point I am trying to make at all. It doesn't matter what protection it is having; the job is to figure it out, not to use it.
02:02:41 <newsham> oh i have no doubt there is a way to work around this
02:02:52 <newsham> i think their goal is just to make it hard enough to figure out to work around
02:02:56 <newsham> that nobody actually does it
02:03:05 <quintopia> pikhq: actually, commander hadfield has been earthside for a while now. are there any left in space?
02:03:09 <newsham> but i'm curious how they expect to achieve that since they're trying to prevent a very lucrative operation
02:03:18 <pikhq> quintopia: I don't think so.
02:03:27 <Sgeo> quintopia: No Canadians in space (actually I don't know)
02:03:28 <pikhq> I was being silly and stupid, not serious.
02:03:29 <newsham> ie. people who can auto-gen google accounts can sell them for $25 per $1000 according t othe guy who wrote that script
02:03:59 <newsham> he mentions account prices here https://moderncrypto.org/mail-archive/messaging/2014/000780.html
02:04:07 <newsham> its actually a very interesting article about fighting spam
02:04:16 <newsham> and how end-to-end encryption with anti spam could be very hard
02:04:34 <newsham> err that should be "$25 per 1000 google accounts"
02:04:55 <quintopia> that's two and a half cents per account! easy money
02:04:57 <zzo38> If I wanted to sell Google accounts I can just as well create them manually.
02:05:03 <newsham> i cant imagine how they could prevent these guys from reverse engineering this with such high financial incentives
02:05:32 <zzo38> Not everyone trying to reverse engineer it will have financial incentives anyways
02:05:39 <newsham> oh for sure
02:05:53 <newsham> i want to reverse engineer it, and i am completely against spam and people selling goog accounts
02:05:57 <newsham> but its still a fun puzzle :)
02:06:06 <newsham> anyway, i gotta go grab food.. cheers
02:06:14 <quintopia> seems like they could focus on studying user behavior and identifying spammers to kill the accounts after the fact. if they can always remove all content a given account makes, there is not much long-term damage they can do
02:06:21 <CrazyM4n> i hate how black hats give every other kind of hacker a bad name. not everyone does this kinda stuff for money/ulterior motives
02:06:36 <newsham> quintopia: read the email URL I pasted above. it talks all aboutn that
02:06:45 <newsham> its pretty interesting
02:09:35 <zzo38> I think Feynman is hacker too.
02:09:43 -!- Hjulle has quit (Quit: Konversation terminated!).
02:12:14 -!- ProfessorGregorE has changed nick to ProfessorGregor.
02:15:56 -!- ^v has joined.
02:22:06 -!- CrazyM4n has quit (Quit: Leaving).
02:24:32 <ProfessorGregor> <quintopia> ProfessorGregorE: what do you do now // I'm a professor at U. Waterloo
02:25:56 <quintopia> newsham: good article
02:26:08 <quintopia> ProfessorGregor: when did you get your doctorate done
02:26:21 <coppro> ProfessorGregor: wait. YOU were the guy on the stage on thursday with the insane clothes. I *knew* you looked familiar
02:26:25 <coppro> congrats btw
02:26:39 <coppro> i had the cape
02:28:13 <ProfessorGregor> quintopia: Last June.
02:28:24 <ProfessorGregor> coppro: ... you're a student at Waterloo?
02:28:31 <quintopia> huh. and when did you secure this position?
02:28:52 <coppro> ProfessorGregor: Yes. Masters in C&O, finished by BMath in April
02:28:56 <coppro> *my
02:29:17 <Bike> i saw a tv show or something about the nude hacks where they said you shouldn't call them 'hackers', since those are the cool people in movies, they're just thieves. that was a bit interesting.
02:29:21 <Bike> i guess crazyman left though.
02:29:23 <ProfessorGregor> quintopia: Last year.
02:29:28 <quintopia> coppro: combinatorics and optimization?
02:29:32 <ProfessorGregor> quintopia: I started on Tuesday.
02:29:34 <coppro> quintopia: yes
02:29:48 <coppro> ProfessorGregor: are you teaching any courses?
02:29:50 <quintopia> good major
02:30:02 <coppro> quintopia: yeah. My thesis is on structural graph theory
02:30:21 <quintopia> ProfessorGregor: is this why you don't have time for us anymore
02:31:05 <quintopia> ProfessorGregor: on the bright side, if you have students, that's an automatic boost in the number of people available to choose your hat
02:31:33 <ProfessorGregor> coppro: Yes, I'll be teaching CS241.
02:31:40 <coppro> ProfessorGregor: awesome!
02:31:44 <ProfessorGregor> quintopia: I was distracted by the move and starting the job.
02:31:47 <Bike> is 241 a standard number
02:32:02 <coppro> ProfessorGregor: you won the lottery then, that's probably the best first- or second-year course
02:32:20 <Bike> oh wait ok you're at the same school.
02:32:30 <Bike> this channel makes me live in fear that i've goatse'd one of my current professors.
02:32:50 <coppro> Bike: are you also at waterloo? :P
02:32:55 <pikhq> Oh, don't worry. With how social norms have changed that's no worse than saying "hello".
02:32:57 <quintopia> you've goatsed this channel?
02:33:33 <coppro> ProfessorGregor: Like I said earlier, I had a cape on Thursday. I was standing right next to the stage.
02:33:43 <Bike> i mean generally the idea that one of em is internet savvy ish.
02:33:50 <ProfessorGregor> Hardly cape weather on Thursday, y'know.
02:33:58 <coppro> err, wait
02:34:00 <coppro> not thursday, wednesday
02:34:08 <coppro> tie ceremony is always thursday except not any more :P
02:34:11 <Bike> i haven't had a cs course in years so i'm not too worried about this channel particularly, also you're jerks so i'd just do it again doctor
02:34:12 <ProfessorGregor> <coppro> ProfessorGregor: you won the lottery then, that's probably the best first- or second-year course // It's my field.
02:34:29 <coppro> ProfessorGregor: You still won the lottery, they didn't stick you on intro to cs or something like that
02:34:29 <pikhq> I *do* hope you plan to tell your students about choosemyhat.com.
02:34:55 <Bike> hopefully you'll get the hot tamale on ratemyprofessor. or whatever they call it.
02:35:00 <ProfessorGregor> coppro: I don't think tenure-track research professors teach intro to CS.
02:35:24 <coppro> ProfessorGregor: probably not, but you never know
02:35:30 <ProfessorGregor> pikhq: I don't tell people about choosemyhat, they learn by osmosis.
02:35:37 <pikhq> Ah.
02:35:38 <pikhq> Well.
02:36:03 <coppro> ProfessorGregor: don't worry, I've got you covered
02:37:29 <quintopia> they learn by a PR campaign on the part of coppro
02:38:09 <coppro> ProfessorGregor: You should challenge them to golf the galaxy assignment really hard. I got it down to 53 characters of perl.
02:38:41 <ProfessorGregor> lol
02:38:43 <quintopia> hmm you have more hats here than i remember
02:39:03 <Bike> @tell CrazyM4n public perception of hackers is pretty good https://www.youtube.com/watch?v=I1r_2vY1irQ&t=2m36s
02:39:03 <lambdabot> Consider it noted.
02:41:57 <coppro> ProfessorGregor: we should hang out. Now that I'm a grad student, it's allowed.
02:42:14 <ProfessorGregor> You'll have to find me first.
02:42:27 -!- CrazyM4n has joined.
02:42:31 <coppro> ProfessorGregor: challenge accepted
02:47:34 <pikhq> Cue awesome chase scene.
02:48:11 <coppro> ProfessorGregor: Are you in PLG?
02:48:29 <Jafet> A lighter hat seems to be in order, then
02:50:01 -!- ^v has quit (Read error: Connection reset by peer).
03:01:15 <ProfessorGregor> coppro: Yeah, PLG.
03:01:58 <coppro> ProfessorGregor: nice!
03:09:46 -!- CrazyM4n has quit (Quit: Leaving).
03:20:26 -!- Imaginer1 has joined.
03:21:55 <Imaginer1> I need heeeeelp
03:22:00 <Imaginer1> oh jesus im headachey and this codee
03:22:23 <pikhq> I endorse painkillers.
03:22:46 <Imaginer1> I endorse cyanide capsules
03:25:20 <Imaginer1> making a compiler
03:25:33 <Imaginer1> im probably going about it all wrong but gasdlhj
03:35:30 -!- Imaginer1 has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
03:41:31 -!- Sprocklem has joined.
04:41:25 <zzo38> Cyanide capsules for the purpose of making a compiler, do you mean?
04:43:38 <zzo38> Of course it is wrong...
04:44:40 <coppro> can we quote that entire exchange?
04:48:41 <newsham> from cyanide import *
04:56:32 <newsham> this botguard thing feels like an interpretter
05:12:08 -!- CrazyM4n has joined.
05:24:12 -!- drdanmaku has joined.
05:31:17 <FreeFull> import qualified System.AntiGravity as Magic;
05:36:02 <newsham> import sufficiently.advanced.technology as magic
05:37:15 <zzo38> Which compilers will do library optimization, and to what amount? Macros, libraries, and instruction set differences, are a few reasons for a compiler to perform optimizations.
05:37:57 <mroman_> zzo38: pre-compiled libraries?
05:38:30 <zzo38> mroman_: It is probably difficult if the library is pre-compiled, but if the library is partially compiled then maybe it is possible.
05:38:51 <zzo38> (Of course it does not apply to dynamic libraries.)
05:39:31 <newsham> yah you need to keep around information in the precompiled units so you can do additional optimizationd during linking
05:39:54 <newsham> i'm pretty sure plan9's C compiler does some limited amount of link time optimization
05:40:53 <newsham> this article talks about it a little (whole program optimization) http://en.wikipedia.org/wiki/Interprocedural_optimization
05:41:02 <newsham> and google pointed to an llvm link time optimizer
06:31:42 <Sgeo> http://www.reddit.com/r/netsec/comments/2fes55/announcing_the_underhanded_crypto_contest/
06:32:17 -!- CrazyM4n has quit (Quit: Leaving).
06:35:04 <zzo38> Would untying the docks so that they float away be an effective method of making it more difficult for a ship to dock?
06:41:54 <b_jonas> huhwhat?
07:41:44 -!- AnotherTest has joined.
07:43:33 -!- oerjan has joined.
08:24:29 -!- sebbu has quit (Ping timeout: 260 seconds).
09:08:27 -!- weissschloss has quit (Remote host closed the connection).
09:11:02 -!- weissschloss has joined.
09:16:39 <HackEgo> [wiki] [[Fortob]] http://esolangs.org/w/index.php?diff=40400&oldid=40379 * GermanyBoy * (+184) /* Method reference, Examples/Infix expression parser */ The new %-command
09:16:46 -!- westerp has quit (Remote host closed the connection).
09:35:25 <HackEgo> [wiki] [[SYCPOL]] M http://esolangs.org/w/index.php?diff=40401&oldid=40300 * GermanyBoy * (+149) /* Imperative code */
09:37:12 <HackEgo> [wiki] [[SYCPOL]] M http://esolangs.org/w/index.php?diff=40402&oldid=40401 * GermanyBoy * (+894) /* Simple declarations */
09:43:19 <HackEgo> [wiki] [[SYCPOL]] M http://esolangs.org/w/index.php?diff=40403&oldid=40402 * GermanyBoy * (+366) /* Standard SYCPOL formatting rules */
09:44:36 <HackEgo> [wiki] [[SYCPOL]] M http://esolangs.org/w/index.php?diff=40404&oldid=40403 * GermanyBoy * (+158) /* Indentation rules */
10:10:28 -!- oerjan has quit (Quit: I think I need a nap).
10:21:35 -!- drdanmaku has quit (Quit: Connection closed for inactivity).
10:25:57 -!- Phantom_Hoover has joined.
10:27:31 -!- sebbu has joined.
10:28:07 -!- sebbu has quit (Changing host).
10:28:07 -!- sebbu has joined.
11:18:05 -!- scounder has quit (Ping timeout: 260 seconds).
11:27:57 -!- scounder has joined.
11:29:21 -!- sebbu has quit (Ping timeout: 246 seconds).
11:39:55 -!- sebbu has joined.
11:40:33 -!- sebbu has quit (Changing host).
11:40:33 -!- sebbu has joined.
11:56:51 -!- shirenz has joined.
11:57:43 -!- shirenz has left.
12:02:22 -!- sebbu has quit (Ping timeout: 245 seconds).
12:30:43 -!- MoALTz_ has joined.
12:33:12 -!- MoALTz has quit (Ping timeout: 245 seconds).
12:35:05 -!- Patashu has quit (Ping timeout: 255 seconds).
12:39:24 -!- boily has joined.
13:21:52 -!- idris-bot has quit (Ping timeout: 268 seconds).
13:22:42 -!- Melvar has quit (Ping timeout: 245 seconds).
13:27:00 -!- Melvar has joined.
13:35:39 -!- idris-bot has joined.
13:37:17 -!- sebbu has joined.
13:38:04 -!- sebbu has quit (Changing host).
13:38:04 -!- sebbu has joined.
13:51:30 <Lymia> Stack Overflow's BF Joust hill has a terrible interpreter. :(
13:51:41 -!- sebbu has quit (Ping timeout: 272 seconds).
13:52:27 <Lymia> It's a Python piece of junk where ".()*2<<<<<<<<<<((((-)*5>[(-)*4.[+.]].)*10000)*1)*1" doesn't suicide on the second tick because the author doesn't know how to use stacks for parsing matching delimiters.
13:54:18 <fizzie> I'd be all "ha ha" with you if there hadn't been so many silly bugs in the *lance family.
13:54:34 -!- sebbu has joined.
13:54:37 -!- sebbu has quit (Changing host).
13:54:38 -!- sebbu has joined.
13:54:49 <Lymia> There isn't so much room for silly bugs in this one.
13:55:07 <Lymia> ({}) isn't implemented, only ()* (and not -1 either), and basic instructions.
13:55:17 <Lymia> https://github.com/redevined/brainfuck/blob/master/BrainFuckedBotsForBattling/Arena.py#L94
13:55:19 <Lymia> And yet you have this.
13:55:19 <Lymia> ;-;
13:56:09 <elliott> no ({}) is sad
13:56:26 <elliott> I'm kind of surprised BF Joust has independent implemetations outside of this channel, but I guess it didn't even originate here
13:57:01 <elliott> although the original version wasn't very good (really huge tapes (cells in the hundreds), no +/- swapping, only had to get the flag to 0 for a single cycle I think, etc.)
13:57:19 <Lymia> Arena.py doesn't have polarity swapping either.
13:57:19 <Lymia> yep
14:02:14 -!- Echoes has joined.
14:02:15 <elliott> Lymia: I like how your evolver thingy can spit out ()*2
14:02:37 <Echoes> Hi
14:02:49 <boily> Echelloes!
14:02:52 <Lymia> elliott, the "doesn't suicide when it should" isn't evolved.
14:03:09 <elliott> oh, ()*2 triggers a bug?
14:03:16 <Lymia> Yep.
14:03:23 <elliott> ...I... how does it get that one wrong?
14:03:30 <Lymia> The braces matching algorithm Arena.bf uses is brain damaged.
14:03:33 <Lymia> https://github.com/redevined/brainfuck/blob/master/BrainFuckedBotsForBattling/Arena.py#L94
14:03:34 <Lymia> Just go read it.
14:03:53 <Echoes> boily, lel
14:04:42 <elliott> ...why on earth is rbraces a function there.
14:04:47 <elliott> oh.
14:04:52 <elliott> because braces changes.
14:04:57 <elliott> what a weird way to write it.
14:07:17 <elliott> so on (, scope++ and record pos <-> scope. on ), find opos <-> scope, replace with opos <-> pos, and scope--.
14:07:30 <Lymia> Yes.
14:07:33 <elliott> is that... actually wrong? ...it's been way too long since I debugged code.
14:07:39 <Lymia> Problem is, the values for scopes are also valid code positions.
14:07:54 <elliott> oh.
14:07:57 <Lymia> It shares the same table for "matched braces" and "identifiers for braces we haven't mached yet"
14:08:10 <elliott> whoops.
14:08:13 <Lymia> .()*2<<<<<<<<<<((((-)*5>[(-)*4.[+.]].)*10000)*1)*1 < So, in this, it records 1:2 for the ()*2
14:08:36 <Lymia> The <s are the right length to make the position of the second ( in the loop after the "suicide" go into a earlier bucket than the 1
14:09:00 <Lymia> So it overrides the matched brace for the ()*2, causing it to escape otherwise certain death.
14:09:29 <elliott> that's amazing.
14:13:28 <Lymia> ... oh crap
14:13:37 <Lymia> I'm pretty sure there's nothing here that would actually stop ([)]
14:13:58 <elliott> ...
14:14:01 <elliott> that's beautiful.
14:14:07 <elliott> how would it even behave?
14:14:47 <Lymia> I have no idea
14:18:21 <boily> `bfjoust unmatched ([)]
14:18:22 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: bfjoust: not found
14:18:24 <boily> ...
14:18:30 * boily fails at HackEgo
14:19:06 <fizzie> Wrong bot, too.
14:19:36 <fizzie> Did Gregor comment anything on EgoBot's absence? I think someone raised the topic when he was here-and-active recently.
14:23:13 <Lymia> elliott, I'll do science.
14:23:14 <Lymia> <3
14:23:24 <elliott> Lymia: I'm scared.
14:23:50 <boily> SCIENCE FOR THE LYMIA GOD!
14:25:23 <Lymia> My intuition says that it'll probably result in something very useful, actually.
14:25:35 <Lymia> ( [ ... )*1000 ]
14:25:35 <idris-bot> (input):1:3: error: no implicit
14:25:35 <idris-bot> arguments allowed
14:25:35 <idris-bot> here, expected: end of list expression,
14:25:35 <idris-bot> expression
14:25:35 <idris-bot> [ ... )*1000 ] <EOF> ↵…
14:25:40 <Lymia> Will cause it to bail
14:25:46 <Lymia> ... idris?
14:25:49 <Lymia> geez
14:25:59 <Lymia> > putStrLn "hi bot"
14:26:01 <lambdabot> <IO ()>
14:26:10 <Lymia> ! println("Hi bot?")
14:26:16 <Lymia> OK, not too many bots
14:26:30 <Lymia> elliott, anyway
14:26:32 <Lymia> I'm pretty sure that
14:26:38 <Lymia> ( [ ... )*10000 ]
14:26:38 <idris-bot> (input):1:3: error: no implicit
14:26:38 <idris-bot> arguments allowed
14:26:38 <idris-bot> here, expected: end of list expression,
14:26:38 <idris-bot> expression
14:26:38 <idris-bot> [ ... )*10000 ]<EOF> ↵…
14:26:46 <Lymia> Will cause it to drop back to the initial ( at 0 tick cost
14:27:50 <Lymia> So, "( a [ b )*10000 ] c" would /probably/ behave like "(a[b{}c])" or something?
14:27:51 <Lymia> Er
14:27:59 <Lymia> "(a[b{}c])%-1"
14:28:05 <elliott> can you use this to emulate ({})%.
14:28:10 <Lymia> I think so.
14:28:15 <elliott> it's a feature!
14:28:26 <elliott> Lymia: would the c really be inside the ] there?
14:28:28 <Melvar> Lymia: “( ” is the prefix for idris-bot, as insisted upon by … oerjan I think?
14:28:36 <Lymia> elliott, if the [ fails
14:28:41 <Lymia> It will jump to the ]
14:28:46 <Lymia> So, uhm, yeah, after.
14:28:49 -!- metasepia has joined.
14:29:27 <elliott> (a{b}c)%n is meant to be read as (a)*nb(c)*n modulo matching []s, so I guess if this does... "the right thing"... with mixing ()s and []s like that, it's the same construct.
14:30:50 <Lymia> Now that you mention it
14:31:01 <Lymia> ([)*n (])*n might work directly
14:31:17 * elliott cries
14:31:53 <Lymia> yep
14:31:59 <Lymia> I'm not sure if it'd behave right though
14:32:02 <Lymia> The repeat system is weird
14:33:14 <elliott> Lymia. look at what you're creating.
14:33:19 <elliott> discovering. whatever.
14:33:22 <elliott> this is a monster.
14:33:38 <Lymia> oh
14:33:42 <Lymia> That's why bots on the hill have ([)
14:33:51 <Lymia> It actually works here.
14:34:18 <Lymia> "e.g. (+)*4 is the same as ++++, this is valid for any instruction except unmatched brackets in parentheses since the loop logic collides with the abbreviation logic. Please use [-[-[- instead of ([-)*3" -- stack overflow question rule text
14:34:31 <Lymia> (your program makes ([-)*3 work, doofus)
14:35:23 <elliott> I forget why we introduced ({})%.
14:35:34 <elliott> I guess because unbalanced brackets looked a bit too macro-y.
14:36:21 <Lymia> Because you can evaluate them without expanding ()*?
14:36:53 <elliott> I think you can just say that if you leave a ()*n with an open [, then it has to match up with ]s in the next ()*n you read?
14:37:01 <elliott> you could even parse it into ({})%n form internally.
14:37:25 <Lymia> Yeah
14:37:33 <Lymia> In this, ([)*10 (]])*5 won't work
14:37:47 <Lymia> Since it relies on it parsing and matching () and [] separately
14:37:57 <Lymia> (In each mode, it ignores the other)
14:38:53 <elliott> oh, right, the point of ()%n is to stop you doing (a)*mb(c)*n for m =/= n I guess
14:39:13 -!- Echoes has quit (Remote host closed the connection).
14:39:39 <Lymia> So.
14:39:48 <Lymia> I can't trust that the abberviation logic here does exactly the right thing
14:40:00 <Lymia> But ([) (]) might just be equilvlant to ({})% in this
14:40:10 <Lymia> Of course, that doesn't help the fact that it's still terribly written Python that's slow as crap.
14:40:22 <Lymia> It takes, like, 20-40 minutes to run what gearlance can do in <10
14:40:33 <Lymia> .. and it only does 10 random tape lengths, not the full 21 like gearlance.
14:43:12 <elliott> it would be cool to have an implementation that somehow does all the tape lengths at once, keeping track of the possible states and consolidating states where things are "the same"
14:43:16 <elliott> I wonder how much faster that'd actually be
14:48:44 <elliott> probably not much unless you did fancy stuff with representing patterns in the middle of the tape
14:51:43 <Lymia> Might be worth something with AVX?
14:52:51 <elliott> that sounds exciting.
14:53:10 <elliott> unfortunately BF Joust is probably not slow enough to actually reward ridiculous optimisation tricks.
14:55:01 <Lymia> I've been meaning to write an interpreter that runs many programs in parallel (so, 1 step in 100 programs, rather than 100 steps in 1 program)
14:55:15 <Lymia> But it's not for speed. In fact, for it to do what I want to use it for, it has to use immutable data structures.
14:55:30 <elliott> I'm intrigued
14:56:29 <Lymia> A search program with heavy use of heuristics. You put in a hill, you get a program with an 100% win rate versus that hill out.
14:57:21 <elliott> I wonder how good programs selected for that actually perform against new challengers
14:58:12 <Lymia> Well, I thought I'd add a second hill as input
14:58:26 <Lymia> The second hill isn't targeted. It's used as a representive sample of "bots not in the target hill"
14:58:36 <Lymia> So if it has spare cycles, it can try to detect them and switch to a generalist program
14:59:57 * elliott nod
15:06:18 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
15:09:24 -!- boily has quit (Quit: SUPERSYMMETRIC CHICKEN).
15:09:25 -!- metasepia has quit (Remote host closed the connection).
15:24:04 -!- variable has quit (Ping timeout: 252 seconds).
15:35:59 -!- ^v has joined.
15:39:23 <Lymia> elliott, a construct I hope works
15:39:42 <Lymia> [.... [ .... [ .... (]]])*0
15:40:00 <Lymia> Implications are obvious. :P
15:40:12 -!- nisstyre has quit (Quit: WeeChat 1.0).
15:40:29 -!- nisstyre has joined.
15:42:07 <elliott> Lymia: hee, to do an if?
15:42:23 <Lymia> Yep
15:42:28 <Lymia> Or jump out of a wiggle clear at 0 tick cost
15:42:51 <Lymia> I currently do it with codegen and scary code size inflation.
15:43:14 -!- nisstyre has quit (Client Quit).
15:43:26 -!- nisstyre has joined.
15:44:30 -!- nisstyre has quit (Client Quit).
15:45:04 <elliott> it's kind of sad how much you can do in BF Joust just by making your code huge
15:45:48 -!- nisstyre has joined.
15:45:59 -!- nisstyre has quit (Client Quit).
15:46:10 -!- nisstyre has joined.
15:50:05 <int-e> right, since you can put virtually all your state into the program pointer.
15:50:12 <Lymia> http://paste.strictfp.com/40827/f01d17a908fddc15b00cdd19da3712da
15:50:50 <Lymia> Huge wiggle clear followed by a reverse offset clear. Beats 93% of the hill it's targeted at. :P
15:58:08 -!- Imaginer1 has joined.
16:06:03 -!- drdanmaku has joined.
16:12:27 <Lymia> I'd expect (>)*8++<--<+<--<(+)*61<(-)*61<(-)*61<(+)*61<(-)*19(>)*8(>[(-[)*3(+)*3(+[)*3(-)*6(-[)*10(+)*16(+[)*8(-)*24(-[)*17(+)*41(+[)*21(+)*82[[+.].]((])*21(])*17(])*8(])*10(])*3(])*3])*0--)*21 to be correct
16:12:33 <Lymia> But it behaves a lot differently for some reason
16:16:06 <Lymia> Hmm.
16:16:07 <Lymia> ><([)*8((])*8)*0><<
16:16:09 <Lymia> Behaves as expected
16:18:35 -!- Imaginer1 has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
16:20:29 -!- not^v has joined.
16:23:37 -!- ^v has quit (Ping timeout: 245 seconds).
16:34:30 -!- Hjulle has joined.
16:37:42 -!- not^v has quit (Ping timeout: 246 seconds).
16:37:53 <elliott> Lymia: have you run into accidental bugs from the weird bracket matching?
16:37:57 <elliott> those sound... fun... to debug.
16:40:34 -!- ^v has joined.
17:06:12 <quintopia> hi Lymia
17:33:37 -!- TieSoul_ has joined.
17:34:20 -!- TieSoul has quit (Read error: Connection reset by peer).
17:36:44 -!- Phantom_Hoover has joined.
17:40:52 -!- TieSoul_ has quit (Read error: Connection reset by peer).
17:41:39 -!- TieSoul has joined.
17:58:51 -!- ^v has quit (Quit: http://i.imgur.com/Akc6r.gif).
18:21:14 <Hjulle> Lol, someone actually answered that EOF should produce fatal error. That seems extremly useful.
18:33:32 -!- Hjulle has quit (Quit: Konversation terminated!).
18:35:10 -!- ^v has joined.
18:38:22 <HackEgo> [wiki] [[Alphuck]] N http://esolangs.org/w/index.php?oldid=40405 * 68.189.222.97 * (+1058) Created page with "'''Alphuck''' is a [[Joke language list | joke]] [[esoteric programming language]]. It is identical to [[Brainfuck]], except that alphabetic characters are used; i.e. it is a ..."
18:38:46 <HackEgo> [wiki] [[Alphuck]] http://esolangs.org/w/index.php?diff=40406&oldid=40405 * 68.189.222.97 * (-1)
18:46:15 -!- copumpkin has quit.
18:47:28 -!- copumpkin has joined.
18:56:43 -!- ^v has quit (Ping timeout: 272 seconds).
19:11:59 -!- yorick has quit (Read error: Connection reset by peer).
19:12:38 -!- yorick has joined.
19:13:47 -!- qlkzy has quit (Ping timeout: 252 seconds).
19:15:09 -!- ^v has joined.
19:16:46 -!- AnotherTest has quit (*.net *.split).
19:16:47 -!- TodPunk has quit (*.net *.split).
19:22:39 -!- TodPunk has joined.
19:23:57 -!- ^v has quit (Ping timeout: 272 seconds).
19:25:13 -!- qlkzy has joined.
19:29:17 -!- AnotherTest has joined.
19:36:42 -!- AnotherTest has quit (Ping timeout: 252 seconds).
19:43:18 -!- ais523 has joined.
19:46:45 -!- NeroReflex has joined.
19:46:59 <NeroReflex> hi
19:48:26 <ais523> hi
19:52:52 -!- Frooxius has joined.
19:53:11 -!- NeroReflex has quit (Read error: Connection reset by peer).
19:56:16 <zzo38> I managed to knock out five opponent's Pokemon cards at once now.
19:56:31 <zzo38> (And this game is being played with only four side cards.)
19:56:32 <ais523> zzo38: it's possible to knock out six with a move like Explosion, isn't it?
19:56:45 <zzo38> Yes, it is, but that isn't the move I used
19:57:23 <zzo38> (Not only was it five, but those were all the cards they had in play, too.)
19:59:43 -!- FreeFull has quit.
19:59:57 -!- callforjudgement has joined.
20:00:06 -!- ais523 has quit.
20:00:16 -!- callforjudgement has changed nick to ais523.
20:03:02 -!- ais523 has quit (Read error: Connection reset by peer).
20:03:12 -!- ais523 has joined.
20:10:19 <zzo38> With some attacks in the game of Pokemon card, it is possible to knock out all twelve cards (six for each player).
20:39:02 -!- CrazyM4n has joined.
20:57:58 <ais523> zzo38: that forces the game to end in a draw, right?
21:04:10 <Sgeo> Should I try the online Pokemon TCG?
21:04:16 <Sgeo> Last time I think I struggled with the UI
21:06:59 -!- FreeFull has joined.
21:10:34 <zzo38> I think the online Pokemon TCG not very good
21:10:45 <zzo38> ais523: I believe so.
21:13:52 <zzo38> Try if you want to though
21:25:51 <myname> alphuck is pretty lame
21:26:48 -!- Frooxius has quit (Ping timeout: 246 seconds).
21:30:37 -!- Frooxius has joined.
21:41:19 -!- callforjudgement has joined.
21:42:35 -!- ais523 has quit (Disconnected by services).
21:42:38 -!- callforjudgement has changed nick to ais523.
22:02:40 -!- ais523 has quit (Read error: Connection reset by peer).
22:02:57 -!- ais523 has joined.
22:04:54 -!- augur has quit (Remote host closed the connection).
22:13:05 <ais523> oh wow, anyone tried going to Twitter's home page with JavaScript turned off? it's hilarious
22:16:50 <CrazyM4n> uh, for me it just gives a message saying to turn on javascript
22:17:04 <ais523> CrazyM4n: for me, it gives a link to follow if you don't have JavaScript
22:17:13 <ais523> if I follow it, it takes me to another page
22:17:25 <CrazyM4n> ah, i didn´t follow that link
22:17:25 <CrazyM4n> http://prntscr.com/4kd0o8
22:17:27 <ais523> telling me that JavaScript's off, and giving a /different/ link to follow if I don't have JavaScript
22:17:29 <ais523> that redirects back to itself
22:18:40 <CrazyM4n> oh, i see
22:18:44 <CrazyM4n> that´s pretty funny
22:19:32 -!- callforjudgement has joined.
22:19:34 <callforjudgement> [23:17] <ais523> telling me that JavaScript's off, and giving a /different/ link to follow if I don't have JavaScript
22:19:36 <callforjudgement> [23:17] <ais523> that redirects back to itself
22:19:37 -!- callforjudgement has quit (Changing host).
22:19:38 -!- callforjudgement has joined.
22:19:39 -!- ais523 has quit (Disconnected by services).
22:19:41 -!- callforjudgement has changed nick to ais523.
22:20:14 <fizzie> We saw that. (Also, noisy late cloak.)
22:20:51 <ais523> fizzie: this connection often breaks in such a way that it can send but not receive, or vice versa
22:21:22 <ais523> I think, at least
22:22:01 <fizzie> It's kind of curious that the "nickserv account info in server password" can occasionally fail to act on time, but (as far as I know) both SASL and TLS certificate-fingerprint auth are guaranteed to.
22:22:18 <fizzie> I'm sure there's some reason embedded in the ircd they're using.
22:22:40 <fizzie> Er, guaranteed to work, not guaranteed to fail.
22:23:13 <elliott> fizzie: the server password just does a /msg to nickserv once you connect
22:27:09 <fizzie> That's a reasonable reason for it to sporadically fail, sure, but it's not immediately obvious why it'd be any different from SASL. I mean, it's the same server, you're just doing an AUTHENTICATE command instead of a PASS.
22:27:57 -!- Patashu has joined.
22:28:02 <zzo38> There may be other Twitter clients so you could use that if you aren't using JavaScript.
22:29:44 <myname> reasonable reasons
22:31:28 -!- Patashu has quit (Remote host closed the connection).
22:32:23 -!- Patashu has joined.
22:47:48 -!- TodPunk has quit (Read error: Connection reset by peer).
22:48:14 -!- TodPunk has joined.
22:52:50 -!- impomatic_ has joined.
22:58:31 -!- Patashu has quit (Remote host closed the connection).
22:59:37 -!- Patashu has joined.
23:01:19 <shachaf> <MR4Y> tabemann_: So, how the function application would be if its time signature was ((a -> a) -> a)) -> a -> a -> a?
23:01:27 <shachaf> imo make an esolang where functions have time signatures
23:03:04 <zzo38> Music can have time signatures.
23:03:17 <shachaf> yes
23:03:40 <zzo38> I didn't know functions can have time signatures too.
23:03:57 <fizzie> Fugue programs can have time signatures, I believe.
23:04:06 <fizzie> They don't have any meaning to the program, though.
23:04:38 <fizzie> (It's just a consequence of accepting MIDI files as input, and ignoring some stuff.)
23:07:43 <fizzie> (This has a reasonable likelihood of being true for Velato also.)
23:10:03 <HackEgo> [wiki] [[Talk:Alphuck]] N http://esolangs.org/w/index.php?oldid=40407 * Rdebath * (+1460) /* The least you can do is make it mnemonic */ new section
23:11:32 -!- callforjudgement has joined.
23:13:34 -!- oerjan has joined.
23:14:33 -!- ais523 has quit (Ping timeout: 255 seconds).
23:14:46 <oerjan> sometimes you think you need a nap and end up sleeping for 6 hours
23:14:52 -!- callforjudgement has changed nick to ais523.
23:16:29 <HackEgo> [wiki] [[User:Rdebath]] http://esolangs.org/w/index.php?diff=40408&oldid=40350 * Rdebath * (+19133) /* Performance Matrix */
23:18:23 <HackEgo> [wiki] [[User:Rdebath]] http://esolangs.org/w/index.php?diff=40409&oldid=40408 * Rdebath * (+108) /* Info */
23:24:06 <fizzie> What's Zombie8 mean in the bitwidth column?
23:24:08 <Sgeo> Is it worth some inefficiency in order to not attempt to encode Applicatives into a dynamically typed language?
23:27:22 <zzo38> s/6/24/
23:30:05 <oerjan> Sgeo: what part of applicatives is hard?
23:30:27 <oerjan> i just had the thought, maybe you can do with only Apply (i.e. leaving out pure)
23:31:18 <oerjan> then you get Traversable1s
23:32:38 <shachaf> class Functor f => Applicative f where applicative :: HList (Map f ts) -> f (HList ts)
23:32:43 <Sgeo> It seems like this definition of Traversables matches the typical Functor-based lenses... yet people like pure profunctor lenses for some reason. I'm not sure what that reason is, but could it apply to traversals too?
23:32:52 <shachaf> is this some sort of higher-order natural transformation or something?
23:34:03 <oerjan> shachaf: it looks like a generic liftTuple
23:34:15 <oerjan> oh wait
23:34:24 <Sgeo> oerjan: did you see the code turning my encoding into a traverse function?
23:34:30 <oerjan> that Map f is weird
23:34:37 <Sgeo> http://lpaste.net/110585
23:34:39 <shachaf> oerjan: How would you write it?
23:35:12 <oerjan> shachaf: i don't think that implies the existence of pure does it
23:35:29 <shachaf> It gives you () -> f ()
23:35:42 <shachaf> You can fmap (const x) over the f ()
23:35:51 <oerjan> oh hm right
23:36:31 <oerjan> but what is Map f ts?
23:36:47 <shachaf> Type-level map of some sort.
23:36:53 <oerjan> oh i see
23:37:14 <shachaf> There are presumably other ways to write it.
23:37:17 <oerjan> i'm not yet used to the new way of using datakinds for HList
23:37:24 <shachaf> It's the equivalent of mconcat for Applicative.
23:37:57 <shachaf> The new way is great.
23:38:27 <oerjan> shachaf: of course then you need a law that says that applicative is associative in the same way as mconcat
23:38:45 <shachaf> Sure, you need laws either way.
23:39:28 <oerjan> however, your applicative seems like an extension of the liftPair / pure basis which zzo38 likes iirc
23:39:54 <oerjan> well i guess not pure per se but pure ()
23:40:04 <shachaf> There's unit :: f (), times :: f a -> f b -> f (a,b)
23:40:15 <shachaf> Or :: (f a,f b) -> f (a,b), if you prefer.
23:40:24 <shachaf> That was the original formulation, I think.
23:41:00 -!- augur has joined.
23:41:59 <shachaf> No one likes pure/(<*>) except for people who are actually using it.
23:42:10 <oerjan> yes, category theory likes products better than currying
23:42:15 <shachaf> I prefer pure/liftA2 or unit/times
23:42:30 <shachaf> Well, in categories in general they're also not equivalent.
23:42:46 <zzo38> I happen to like pure/liftPair
23:42:53 <oerjan> i like <$> <*> because that's what i actually use
23:43:07 <shachaf> Yep.
23:43:11 <oerjan> pure is only occasionally needed
23:43:27 <pikhq> I'm partial to "let ($) = fmap in"
23:43:36 <zzo38> Although I find <$> and <*> and liftPair and <$ all to be useful; I just happen to prefer pure/liftPair as the basis
23:43:38 <oerjan> heh
23:44:00 <shachaf> pure seems p. common
23:44:55 <elliott> pikhq: if only that overloaded application
23:45:00 <zzo38> Any one could be used as the basis and define the rest based on that; the derived stuff will be useful regardless
23:48:04 <oerjan> why is hint in that lpaste suggesting head, it should be suggesting pattern matching
23:48:11 <oerjan> *hlint
23:48:53 <oerjan> which would also get rid of the !! 1
23:48:54 <shachaf> oerjan: if you used your head you'd surely think to use pattern matching
23:49:13 <oerjan> shachaf: you've got a point there, which i shall promptly swat -----###
23:53:28 <oerjan> <fizzie> Did Gregor comment anything on EgoBot's absence? I think someone raised the topic when he was here-and-active recently. <-- he made the comment "That's because he's gone", which in context could refer to either him or the bot, and i was afraid of asking.
23:54:14 <oerjan> he also suspiciously ignored the issue the _previous_ time he was active, too
23:54:41 <oerjan> although that may have been just because he had so many other broken things to fix
23:56:18 <Sgeo> oerjan: why do people like shachaf lenses over van Laarhoven lenses?
23:56:52 <oerjan> he has sort of hinted before that he wants HackEgo to take over, it's just that even the stuff that _has_ been transferred hasn't been made to work properly.
23:57:11 <oerjan> and i'm not sure whether that includes bfjoust
23:57:18 <oerjan> `ls interps
23:57:19 <HackEgo> 1l \ 2l \ adjust \ axo \ befunge \ bfjoust \ bf_txtgen \ boof \ build.sh \ cfunge \ c-intercal \ clc-intercal \ dimensifuck \ egobch \ egobf \ fukyorbrane \ gcccomp \ gforth_quit \ ghc \ glass \ glypho \ kipple \ lambda \ lazyk \ linguine \ Makefile \ malbolge \ pbrain \ qbf \ rail \ rhotor \ sadol \ sceql \ trigger \ udage01 \ underload \ unlambda
23:57:26 <oerjan> hm it seems to be there
23:57:31 <oerjan> `ls interps/bfjoust
23:57:32 <HackEgo> bfjoust \ bfjoust.pl \ buffer.h \ egojoust.c \ gearlance \ gearlance.c \ gearlance.o \ helpers.h \ Makefile \ programs \ report \ report.c \ report.o
23:57:51 <oerjan> `interp bfjoust <
23:57:52 <HackEgo> ​/hackenv/bin/interp: 4: exec: ibin/bfjoust: not found
23:58:02 <oerjan> but not the infrastructure to call it
23:58:36 <oerjan> `interp unlambda `.i`.hi
23:58:37 <HackEgo> hi
23:59:09 <oerjan> i don't quite remember if that has been fixed up to work or if it just straight out did
23:59:32 <oerjan> `ls interp/ghc
23:59:32 <HackEgo> ls: cannot access interp/ghc: No such file or directory
23:59:38 <oerjan> `ls interps/ghc
23:59:38 <HackEgo> runghc
23:59:57 <oerjan> i think that's just referring to the main install, which doesn't exist on HackEgo after some move
←2014-09-05 2014-09-06 2014-09-07→ ↑2014 ↑all