00:07:45 <fungot> @messages-loud @messages-loud
00:07:45 <lambdabot> mroman said 15h 32m 2s ago: fnord.
00:13:20 -!- dianne has joined.
00:18:10 <quintopia> ...is that intentional behavior in order to make fungot potentially able to do interesting things with other bots?
00:18:10 <fungot> quintopia: no such factoid
00:18:43 <olsner> hmm, ^echo is not bot safe?
00:18:49 <oerjan> i think it was intentional behavior to be silly hth
00:19:36 <quintopia> ^echo yields falsehood when preceded by its own quotation
00:19:37 <fungot> yields falsehood when preceded by its own quotation yields falsehood when preceded by its own quotation
00:19:42 <olsner> was "no such factoid" just markov output or does fungot have a factoid feature?
00:19:42 <fungot> olsner: is it very hard for me to duck from the things you're about to use, without some intermediate abstraction ( except for sunterlib and sunet lateron). would that be
00:19:46 <oerjan> indeed fungot doesn't prevent triggering other bots
00:19:46 <fungot> oerjan: to be exact it's stupid of anyone if they use php instead of another language i remember sawing you helping someone in parsing scheme, can i use that
00:20:00 <oerjan> but it has an extensive ignore list itself
00:20:38 <fungot> thanks but no thanks but no
00:21:44 <fungot> oerjan is very what oerjan is very what
00:23:31 -!- Sgeo has joined.
00:26:25 -!- Sgeo has quit (Read error: Connection reset by peer).
00:43:06 -!- lkirk has joined.
00:43:25 -!- variable has joined.
00:43:57 -!- NihilistDandy has joined.
00:44:20 -!- ProofTechnique has quit (Ping timeout: 250 seconds).
00:44:43 -!- doesthiswork has quit (Quit: Leaving.).
00:49:25 -!- copumpkin has joined.
00:56:38 <Lymia> Can you, like, actually index strings
01:00:39 -!- lkirk has quit (Remote host closed the connection).
01:01:21 -!- contrapumpkin has joined.
01:04:49 -!- copumpkin has quit (Ping timeout: 245 seconds).
01:06:12 -!- contrapumpkin has quit (Client Quit).
01:18:11 -!- copumpkin has joined.
01:25:20 -!- contrapumpkin has joined.
01:27:32 -!- propumpkin has joined.
01:28:46 -!- copumpkin has quit (Ping timeout: 255 seconds).
01:30:20 -!- contrapumpkin has quit (Ping timeout: 256 seconds).
01:40:48 -!- propumpkin has changed nick to copumpkin.
01:49:37 -!- contrapumpkin has joined.
01:51:52 -!- vodkode_ has joined.
01:52:48 -!- propumpkin has joined.
01:53:00 -!- copumpkin has quit (Ping timeout: 250 seconds).
01:53:11 -!- propumpkin has quit (Client Quit).
01:56:02 -!- variable has quit (Ping timeout: 250 seconds).
01:56:12 -!- contrapumpkin has quit (Ping timeout: 264 seconds).
01:58:37 -!- Sgeo has joined.
02:07:29 <quintopia> Lymia: i expect that splitting a string and then counting the length of the first part accomplishes that
02:17:29 -!- zzo38 has joined.
02:27:39 <Sgeo> Why would a computer take hours after booting up to act normal?
02:30:52 <Jafet> Not everyone's a morning person.
02:37:42 -!- NihilistDandy has changed nick to ProofTechnique.
02:40:06 -!- vodkode_ has quit (Quit: Leaving).
02:40:36 -!- vodkode_ has joined.
02:41:47 -!- vodkode_ has quit (Remote host closed the connection).
02:42:49 -!- vodkode_ has joined.
02:45:31 -!- Sgeo has quit (Ping timeout: 244 seconds).
02:48:29 -!- bb010g has quit (Quit: Connection closed for inactivity).
03:07:59 -!- copumpkin has joined.
03:15:59 -!- Phantom_Hoover has quit (Remote host closed the connection).
03:35:57 -!- copumpkin has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…).
03:42:38 -!- heroux has quit (Ping timeout: 250 seconds).
03:43:35 -!- heroux has joined.
03:52:39 -!- hjulle has quit (Ping timeout: 265 seconds).
04:30:32 -!- vodkode_ has quit (Ping timeout: 246 seconds).
04:32:47 -!- variable has joined.
04:42:11 -!- Sprocklem has quit (Ping timeout: 245 seconds).
04:51:49 -!- adu has joined.
05:07:45 -!- variable has quit (Ping timeout: 245 seconds).
05:13:40 -!- infinitymaster has joined.
05:21:44 -!- Sgeo has joined.
05:21:44 <zzo38> Is there any "urn:bible:" scheme?
05:30:26 -!- Tod-Autojoined has changed nick to TodPunk.
06:03:10 -!- vodkode_ has joined.
06:15:12 -!- bb010g has joined.
06:21:21 -!- infinitymaster has quit (Quit: Leaving...).
06:53:53 -!- adu has quit (Quit: adu).
06:55:22 -!- irctc099 has joined.
07:29:42 -!- Sgeo has quit (Ping timeout: 244 seconds).
07:32:35 <zzo38> Make URIs such as <urn:bible:genesis:1:1> and so on to be valid.
07:37:48 -!- vodkode_ has quit (Ping timeout: 240 seconds).
07:38:07 <zzo38> I made up a kind of backtracking parser like: forever { (X,Y)=pop; foreach (W,Z) in action[Y][input[X]] do push(X,call W with argument Z); foreach Z in next[Y][input[X]] do push(X+1,Z); }
07:45:04 <zzo38> How do you compare this to the other kind of parsing?
07:49:46 <zzo38> You will want to start by pushing (length(input),error state) and then (0,0) onto the stack.
07:52:34 -!- vodkode_ has joined.
07:55:36 -!- Phantom_Hoover has joined.
07:59:23 <zzo38> Actually here is better way: push(length(input),error value); push(0,0); forever { pop(X,Y); if X=length(input) then return Y; foreach (W,Z) in action[Y][input[X]] do push(X,call W(Z,X)); foreach Z in next[Y][input[X]] do push(X+1,Z); } At first you must ensure that the input sequence ends with the EOF token
08:00:04 -!- mroman has joined.
08:04:12 <mroman> something's wrong with my vserver.
08:04:27 <zzo38> Do you know what thing is wrong?
08:05:22 <mroman> it reboots for unknown reasons
08:05:30 <mroman> and now my root password doesn't seem to work anylonger.
08:06:40 <mroman> maybe the did maintenance on their physical hosts
08:06:50 <mroman> but forgot to inform me that they reboot vms
08:16:21 <zzo38> Is it OK now though?
08:21:31 <Taneb> zzo38, I am in the UK
08:21:38 <Taneb> (York, in particular, now)
08:21:54 <mroman> it rebooted twice yesterday though
08:25:28 -!- vodkode_ has quit (Ping timeout: 240 seconds).
08:30:22 <zzo38> How is this parser I made up compared with other ones?
08:37:18 <zzo38> The one which is: add EOF to input buffer; push(length(input),error value); push(0,0); forever { pop(X,Y); if X=length(input) then return Y; foreach (W,Z) in action[Y][input[X]] do push(X,call W(Z,X)); foreach Z in next[Y][input[X]] do push(X+1,Z); }
08:47:00 <mroman> action[Y][input[X]] contains parse functions?
08:47:42 <mroman> with one character lookahead?
08:49:56 <zzo38> Rather, the functions might be used to enter or exit the parser for a particular nonterminal; they can do other things too though.
08:55:59 -!- oerjan has quit (Quit: Niteoid).
09:01:04 -!- oren has joined.
09:05:44 <mroman> 9% of the human population is disabled?
09:07:04 <mroman> More than 1 billion persons in the world have some form of disability. This corresponds to about 15% of the world's population.
09:08:52 <oren> Probably includes nearsighted people, people who have slight deafness (like me), people who are too old to walk.
09:10:22 <oren> So the number would be pretty high, there are so many people who need glasses
09:12:40 <mroman> If you consider that as "disabled" then yes.
09:12:44 <mroman> Then the number is pretty damn high.
09:13:22 <mroman> if you take the definition of "disability funds" because you can't work due to your disability then the number should be less.
09:14:13 <oren> Well there are different levels, aome jobs might need perfect eyesight or perfect hearing, but most jobs don't.
09:15:57 <oren> On the other hand sometimes people complain about an infuriating noise distracting them, and I say "what noise".
09:19:43 <oren> Hmm... it seems statistically trouble walking or climbing stairs is the most common disability
09:23:35 <mroman> well if you're fit to do another job you'll be forced to retrain for another job.
09:24:24 <mroman> You can't just not work because you can't to the job you originally did any longer, you'll have to learn how to do another job.
09:24:43 <mroman> unless you wanna live of social welfare which isn't really a lot of money.
09:25:29 <mroman> unless you have some disability pension
09:25:34 <mroman> I don't really know how they work.
09:25:56 <oren> Although I think many of the people who acquire a disablity do so because they simply are getting old...
09:26:55 <oren> Everything from their eyes to their bones starts to have problems
09:27:08 <mroman> there's insurance against incapacity to work
09:27:38 <mroman> but I'm not sure if that's an additional optional insurance or one you have to have or one you automatically get.
09:28:20 <oren> this stuff probably varies greatly by jurisdiction
09:29:24 <mroman> It appears that 60% of my salary is "insured".
09:30:05 <mroman> if I'm 70% disabled I get 60% of my original salary paid for two years
09:30:20 <mroman> but after that it stops :)
09:30:38 <mroman> so I'd have two years to find a job I can still do
09:30:53 <mroman> or if I'm to disabled to continue meaningful work I have to apply for "income disability"
09:31:14 <mroman> (there's "work disability" == "can't do your job anymore" and "income disability" == "can't do any meaningful job anymore")
09:32:04 <mroman> unless I'm older than 50 years at the time of becoming disabled
09:32:10 <mroman> then there's no two years restriction.
09:32:36 <mroman> oren: this stuff varies a lot by jurisdiction, your employer
09:32:44 <mroman> and which insurance company your employer uses.
09:34:03 <mroman> and if I die my children will get money
09:34:34 <mroman> I guess that's the english word for that.
09:34:59 <mroman> which is 60% of something that also xx% of something else
09:35:10 <mroman> It's aimed at getting them through school
09:35:15 <mroman> but not to live off it for longer periods.
09:35:21 <mroman> but I don't have children.
09:36:06 <oren> I need to see about getting a job pretty soon
09:37:10 <oren> And stop being a NEET
09:38:37 -!- Koen_ has joined.
09:38:53 <Taneb> My current plan is to stay in the E that doesn't pay as well as long as I can
09:41:40 -!- TieSleep has changed nick to TieSoul.
09:47:09 -!- dianne has quit (Quit: byeannes).
09:48:22 <TieSoul> https://gist.github.com/TieSoul/373d98cac227ec51ba4d so I'm working on something
09:48:37 <TieSoul> (brainfuck is just a test for the lexer/parser system)
10:14:25 <mroman> and what are you working on?
10:15:25 -!- Patashu has quit (Disconnected by services).
10:15:25 -!- Patashu_ has joined.
10:23:34 <int-e> The comments at http://en.chessbase.com/post/us-champ-r9-forfeit are so much fun; some of them suggest the arbiter should be using a double standard and not forfeit *top* players when they violate rules despite having been warned about it...
10:24:10 <int-e> (Not really fun. I'm suffering from a case of http://xkcd.com/386)
10:25:54 <zzo38> They should be disqualified if they seriously violate the rules, whether they are the top players or not. They can try again in the next tournament though.
10:26:21 <oren> Hmm, this terminal thought the ) was part of the url...
10:30:01 <TieSoul> mroman: I'm working on a lexer and parser system for arbitrary grammars
10:30:10 <int-e> zzo38: I'm also now waiting for the first case of a player being disqualified for "analysing any game on another chessboard." when they wander around and look at their competitor's game. ;-)
10:30:58 <oren> TieSoul: to what level of "arbitrary"
10:31:16 <oren> any unambiguous grammar?
10:36:38 <TieSoul> https://gist.github.com/TieSoul/ed33bf2c5365b2ed0a7e an example
10:39:22 -!- sebbu2 has changed nick to sebbu.
10:52:55 <mroman> so it's based on regexes
11:27:45 <mroman> fungot: Do you like regexes?
11:27:45 <fungot> mroman: you may need to introduce any extra nesting by receiving the multiple values extension is as important!". kthxbye.
11:28:10 <mroman> TieSoul: see. I told you to introduce extra nesting and multiple values extension.
11:35:39 <mroman> but no... you told me you couldn't do it...
11:35:55 <mroman> fungot: Can you do it?
11:35:55 <fungot> mroman: i think the category theory is mostly a browser-only thing ever, the lives of folks who were thinking about lazy strings/ ropes/ whatever they are
11:36:11 <mroman> Category Theory is sure a browser-only thing.
11:36:32 <HackEgo> In category theory, category theory is a theory in the category of theories.
11:36:46 <mroman> ... and it's only used in browsers.
11:41:55 <mroman> Must be a category theory thing.
11:42:25 <mroman> fungot: What browser do you use?
11:42:25 <fungot> mroman: yah i agree. though riastradhs variant is not formally checkable
11:42:38 <mroman> fungot: agree with what?
11:42:38 <fungot> mroman: i don't mind looking at some code? i want to call something a functor unless it's returning a function
11:43:42 <mroman> fungot: Category Theory is just a theory. It hasn't been proven yet.
11:43:55 <int-e> `define A browser is a Gopher client for convenient access to Gopher services and documents.
11:44:08 <HackEgo> Failed to connect to socket 2. \ \ Looking up 127.0.0.1:3128 \ Making HTTP connection to 127.0.0.1:3128 \ Sending HTTP request. \ HTTP request sent; waiting for response. \ Alert!: Unexpected network read error; connection aborted. \ Can't Access `http://google.com/search?q=define:%41%20%62%72%6f%77%73%65%72%20%69%73%20%61%20%47%6f%70%68%65%72%20%
11:46:14 <int-e> `learn A browser is a Gopher client for convenient access to Gopher services and documents.
11:46:20 <HackEgo> Learned 'browser': A browser is a Gopher client for convenient access to Gopher services and documents.
11:48:57 <mroman> Gopher is int-e's vision of the successor of HTTP/2
11:49:24 <mroman> `learn Gopher is int-e's vision of the successor of HTTP/2.
11:49:37 <HackEgo> Learned 'gopher': Gopher is int-e's vision of the successor of HTTP/2.
11:51:05 <mroman> can't reach google.com, google.de nor google.ch
11:52:25 <mroman> TieSoul: You play Pokémon?
11:52:42 <mroman> I'm stalking your gists.
11:52:51 <mroman> and there's a Nidoqueen.
11:52:56 <mroman> I don't know what Arbok is though
11:53:19 <TieSoul> is from a pokemon battle simulator I wrote
11:55:42 <mroman> well... I'm off to buy me a bicycle.
11:56:06 <izabera> we also have trains and planes
11:56:06 <mroman> and pollute the universe!
11:56:15 <mroman> yeah but trains are friendly people.
11:56:31 -!- mroman has quit (Quit: Lost terminal).
11:56:44 <int-e> I was going to recommend the LEO (Link Everything Online) gopher service (which featured a english/german/english dictionary!), but I'm afraid they dismantled the gopher server years ago.
12:03:03 <oren> Old joke from the playground years ago: Ekans is snake backwards, Arbok is cobra backwards, what about Muk?
12:28:01 <HackEgo> [wiki] [[Beatnik]] http://esolangs.org/w/index.php?diff=42363&oldid=42359 * Chris Pressey * (+213) Add internal link to Hello world and external link to Python implementation
12:30:34 -!- boily has joined.
12:31:25 -!- zadock has joined.
12:31:26 -!- zadock has quit (Max SendQ exceeded).
12:45:43 <oren> what is a .debanyway
12:47:31 <int-e> > ar t libiw30_30~pre9-8_amd64.deb
12:47:32 <lambdabot> ‘a’ (imported from Debug.SimpleReflect),
12:48:21 <oren> Ah, so it's like an archive with some files and metadata as to what to do with them?
12:49:34 <int-e> yeah, control.tar.gz contains meta information, install and uninstall scripts, things like that
12:52:21 * oren is considering trying to make a .deb for dwarf fortress
12:53:22 <int-e> Ah but there are tools for that. https://wiki.debian.org/HowToPackageForDebian looks like a suitable starting point.
12:54:11 <int-e> (Disclaimer: I have not actually made a deb package yet.)
13:03:23 -!- oren has quit (Read error: Connection reset by peer).
13:03:48 -!- orin has joined.
13:16:11 -!- doesthiswork has joined.
13:23:49 -!- shikhin has changed nick to bacon.
13:23:57 -!- bacon has changed nick to shikhin.
13:25:31 <orin> I restarted my computer because firefox was screwing up even after I pkilled it
13:32:30 <orin> it seems to be fine now
13:33:34 <orin> now what I really need to figure out is why my level generator code is making roads that lead to nothing
13:36:35 <orin> http://postimg.org/image/w9gs905y3/full/ the problem occurse in the pink square
13:38:30 -!- bb010g has quit (Quit: Connection closed for inactivity).
13:43:34 <orin> Fixed. I really screwd up the road-merging part last night
13:44:49 -!- Patashu_ has quit (Ping timeout: 264 seconds).
13:47:04 <Jafet> You could just add things that the roads lead to.
13:48:01 <orin> Jafet: That is what was supposed to happen
13:49:00 <orin> Roads come from either side of the level or from tunnels and go off either side or into a tunnel
13:49:34 <orin> A road isn't supposed to bea ble to just... end
13:53:08 -!- GeekDude has joined.
13:59:28 -!- irctc099 has quit (Ping timeout: 246 seconds).
14:00:40 <Jafet> You can say that to the town council over here.
14:23:52 <Taneb> I think one that orin is making
14:25:37 <Taneb> Help I am in at least 2 IRC channels WITH CYBORGS
14:28:37 <int-e> Taneb: welcome to the future
14:28:59 <int-e> Taneb: did any of them say "come with me if you want to live"?
14:29:16 <int-e> (did I get this right?)
14:29:18 <Taneb> I don't think either hav
14:29:47 <int-e> (yeah I did. good.)
14:34:27 -!- hjulle has joined.
15:10:15 -!- vodkode_ has joined.
15:11:38 -!- llue has joined.
15:11:38 -!- llue has quit (Changing host).
15:11:38 -!- llue has joined.
15:15:41 -!- GeekDude has quit (Ping timeout: 252 seconds).
15:24:16 -!- bb010g has joined.
15:25:12 -!- vodkode_ has quit (Ping timeout: 276 seconds).
15:52:06 -!- MoALTz__ has quit (Quit: Leaving).
16:04:07 -!- GeekDude has joined.
16:12:20 <Taneb> Phantom_Hoover, I'm blaming you for this: http://www.bbc.co.uk/news/uk-england-coventry-warwickshire-32264914
16:21:51 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)).
16:31:20 -!- yorick has quit (Read error: Connection reset by peer).
16:33:49 -!- yorick has joined.
16:34:07 -!- yorick has quit (Remote host closed the connection).
16:34:28 -!- yorick has joined.
16:35:31 -!- yorick has quit (Remote host closed the connection).
16:36:08 -!- yorick has joined.
16:36:09 -!- yorick has quit (Changing host).
16:36:09 -!- yorick has joined.
16:58:53 <Taneb> Phantom_Hoover, wow, how did you manage to do it, then?
17:00:58 -!- copumpkin has joined.
17:01:08 <int-e> Taneb: Time travel, obviously.
17:01:26 <int-e> You should try it, it's great for deniability.
17:07:34 <int-e> In any case it sounds like a brilliantly successful demonstration.
17:10:09 <zzo38> Should I move the stuff from the old LEO gopher service into my own? I don't even have a copy though, so I can't.
17:11:18 <boily> hezzo38. what's LEO?
17:11:55 <zzo38> I don't know; int-e mentioned it above.
17:12:33 <boily> int-ello. what's LEO?
17:27:20 <int-e> boily: "Link Everything Online". You may know its remnants ( ;-) ) on the World Wide Web, under leo.org.
17:37:24 <Koen_> int-e: it sounds like space travel might be more effective to get to england
17:38:59 <int-e> Koen_: Perhaps, but that may compromise your alibi.
17:39:48 <Koen_> well, time travel preserves the alibi because people assume you're not time traveling, nothing more
17:40:09 <Koen_> similarly space travel wouldn't compromise your alibi if people didn't know you could space travel to england
17:41:51 <b_jonas> fungot, do you ever time travel or space travel?
17:41:51 <fungot> b_jonas: lain was a bit comical
17:50:19 -!- magician has joined.
17:50:59 <HackEgo> magician: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <http://esolangs.org/>. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
17:53:21 -!- Guest3780 has quit (Ping timeout: 252 seconds).
17:53:21 -!- magician has changed nick to Guest3780.
17:58:31 <int-e> boily: Btw, "remnants": The main part of what LEO was meant to be is indeed gone: It was a directory service for Gopher, intended to be comprehensive.
18:57:56 <zzo38> I think there are now other directory services for gopher
19:20:26 -!- boily has quit (Quit: %%%%%%%%).
19:26:17 <int-e> . o O ( Gopher - where we're going, we don't need an information superhighway. )
19:38:52 -!- ais523 has joined.
20:07:05 -!- Koen_ has quit (Remote host closed the connection).
20:12:42 <tswett> So, are there infinitely many pairs of 5-smooth numbers differing by 2?
20:13:33 <tswett> According to http://oeis.org/A219794, it would be "very surprising" if there were.
20:13:40 <tswett> I don't see why that's the case.
20:23:42 <tswett> I can think of a bunch. 1 and 3, 2 and 4, 3 and 5, 4 and 6...
20:25:05 <int-e> It's because the density of the 5-smooth number is so low; there are only O(log(n)^3) of them up to n. (Compare this to primes with O(n/log n) primes up to n.)
20:25:44 <tswett> Some Haskelling suggests that the largest pair is 160 and 162.
20:26:06 <tswett> Which is just the doubling of the largest pair of numbers differing by 1, which is 80 and 81.
20:26:52 <tswett> The only pair differing by 2 which isn't "obvious" given the pairs differing by 1 is (25, 27).
20:27:20 <int-e> Oh that's another funny detail. lim inf a(n) >= 2 (an amazing fact, hmm) means that only finitely many pairs arise by doubling
20:28:24 <int-e> Because it says that there are only finitely many pairs of 5-smooth numbers with difference 1.
20:29:04 <tswett> The only pair differing by 3 not "obvious" from prior pairs is (125, 128). For 4, 5, and 6, there are no "non-obvious" pairs.
20:30:34 -!- tswrcclt has joined.
20:30:58 <tswrcclt> For 7, there are two: (128, 135) and (243, 250).
20:31:48 <tswrcclt> My computer is being very sluggish now.
20:33:47 -!- Decim has joined.
20:34:12 <Decim> I'm making an AI what should it do
20:34:54 <TieSoul> it should write functional Brainfuck code
20:35:06 <ais523> it should analyze a source tarball and work out how to compile it
20:35:27 <tswrcclt> It should analyze English text and classify words into parts of speech.
20:35:33 <TieSoul> it should analyze a source tarball and then compile it
20:35:46 <tswrcclt> Note that my suggestions are actually serious.
20:35:47 <Decim> These are really good ideas
20:36:08 <TieSoul> it should play arbitrary NES games
20:36:16 <TieSoul> someone did that already so it's possible
20:36:46 <Decim> The brainfuck thing though
20:37:33 <TieSoul> (btw, I wonder if you could make Prolog write brainfuck code to solve a particular problem)
20:38:14 <TieSoul> (it would output all possible solutions too which is nice)
20:38:31 <Decim> What did you mean by writing functional code I would have to make the algorithm learn the entire language
20:38:37 <Decim> And idk the language so
20:38:48 <tswrcclt> It's a pretty simple language.
20:38:50 <Decim> Guess I have to learn it before I start?
20:39:09 <TieSoul> brainfuck is about the simplest language ever
20:39:16 <tswrcclt> Eight commands. "Add one", "subtract one", and so forth.
20:39:23 <Decim> Tarballs are another thing entirely
20:39:35 <Decim> Compiling Tarball AI bot
20:39:56 <Decim> I don't know kids I'm only a kid
20:40:06 <tswrcclt> Help, GHC is using nearly six gaggleboots of memory.
20:40:13 <TieSoul> if you're starting out with AI
20:40:20 <TieSoul> try something easy like Tic-Tac-Toe
20:40:45 <int-e> tswrcclt: that's how you know it's a serious programming language ... :-/
20:41:14 <Decim> I had to make a self responsive bot for a school project although I got a D- on it
20:41:18 <tswrcclt> Uh, memory usage seems to have stabilized.
20:41:46 <Decim> Is space an issue?
20:41:46 <tswrcclt> Went all the way up to 6.9 before going back down a little.
20:45:32 <Decim> Infinite possibilites in tic tac toe or more to a large ammount of finite possibilites
20:47:28 <int-e> Decim: space is always an issue :)
20:48:12 <Decim> And overclock everything while keeping your server under a mile of ice
20:48:54 <int-e> wtf. "2 GB DDR3L SDRAM, 32 GB Solid-State Drive and 1TB OneDrive Cloud Storage for one year" ...
20:49:23 <int-e> I made the mistake to search for "laptop" on amazon, now marvelling at the crap they offer.
20:49:54 <Decim> Int-e there's a lot better stuff than that
20:50:37 <Decim> Also more on point I don't have enough space for something like a tarball compiler
20:52:10 <int-e> Decim: Of course there is. And it's good to see that even absolute crap has 2GB RAM, and normal laptops have 4GB or 8GB.
20:53:53 <Decim> What's your setup Int-e
20:54:13 <int-e> Still, memory usage matters; on VPSs, RAM determines the price.
20:55:23 <int-e> I have 8GB RAM in a PC at home... which is too small for some things I'm doing. (ghc is pushing the limits; some big Isabelle theories are taking off the lid)
20:57:09 <int-e> But lambdabot is running on a VM with 512MB RAM + 512MB swap, which is not enough to build it anymore.
21:00:02 <Decim> What are you doing
21:00:10 <Decim> And wtf is an isabelle theory
21:00:19 <fizzie> TieSoul: "We" did arbitrary Atari games.
21:00:42 <int-e> Compiling haskell-src-exts with ghc-7.10.1 takes 5GB...
21:00:55 <int-e> ...it's a dependency of lambdabot
21:01:03 <Decim> Take me to the begining of this whole ghc stuff isabelle theory idk I havent payed attention to stuff
21:01:22 <Decim> Don't you guys have articles or something
21:01:45 <int-e> None of this has to do anything with #esoteric really.
21:02:05 <Decim> Why does it depend on lambdabot
21:02:20 <int-e> Isabelle is a proof assistent, http://isabelle.in.tum.de/ , and she's quite memory-hungry.
21:02:33 <Decim> ...what would happen if you deleted every version of lambdabot
21:02:48 <int-e> Why would I do that?
21:03:06 <int-e> Not that I could. It's been forked several times on github.
21:03:10 <Decim> And you were like fuck it
21:03:36 <int-e> Decim: I suppose the world would just go on turning.
21:04:20 <Decim> Until 569075432 AD when the sun expands
21:06:34 <Decim> Aw man isabelle is just on a bullshit level of nope for me I don't think I could ever have that much memory Im pretTy poor atm
21:13:43 -!- nortti has changed nick to lawspeaker.
21:15:40 -!- lawspeaker has changed nick to nortti.
21:16:48 -!- Decim has quit (Remote host closed the connection).
21:18:51 -!- Sprocklem has joined.
21:23:12 -!- bixnode has joined.
21:37:45 -!- callforjudgement has joined.
21:37:58 -!- ais523 has quit (Read error: Connection reset by peer).
21:38:09 -!- callforjudgement has changed nick to ais523.
21:41:46 -!- bixnode has quit (Remote host closed the connection).
21:42:04 -!- bixnode has joined.
22:16:28 -!- boily has joined.
22:25:06 <quintopia> you tryna trick me with your "b" name and your characteristically boily-like response
22:27:50 <zzo38> Is thid document understandable to you? http://sprunge.us/cCCL (I didn't invent the OASYS VM; it days from 1992, but was not documented before, so this is a document of it.)
22:30:45 -!- vodkode_ has joined.
22:31:02 <boily> b_jonas: you're not me.
22:46:52 -!- ais523 has quit (Read error: Connection reset by peer).
22:46:56 -!- callforjudgement has joined.
22:47:07 -!- callforjudgement has changed nick to ais523.
22:49:10 -!- vodkode_ has quit (Ping timeout: 276 seconds).
22:49:26 <b_jonas> zzo38: yes, it's understandible, but there's some difficulties:
22:49:44 <b_jonas> it would be nice if there was an introductory paragraph at the beginning to tell what the whole thing is about;
22:50:11 -!- tswrcclt has quit (Quit: Connection closed for inactivity).
22:50:27 <zzo38> OK, is there anything else to consider?
22:50:34 <b_jonas> I think it would read easier if you first told the simpler case about how matching an input phrase and calling the corresponding method is handled, and only after that told about phrases with commas;
22:50:59 <b_jonas> tell somewhere what character set the strings and vocabulary uses;
22:52:21 <b_jonas> maybe, before telling how a method, a class, and the list of properties is represented in the input, put an introduction telling what those things are for;
22:53:22 <b_jonas> in particular, mention that a method has an invocant which isn't listed in the argument list;
22:55:26 <b_jonas> and maybe call the "message number" of a method an "error message number" or something instead
22:55:47 <b_jonas> because it seems to be used for handling the error when a suitable object is not found;
22:56:03 <zzo38> Yes, that is what the "message number" does
22:57:59 <b_jonas> in the listing of tasks the main loop does, split "Parse the command." to two parts: find the method to invoke for the command, then find the arguments for that method from the command using selector methods.
22:58:31 <b_jonas> Because that really seems two steps to me.
23:00:56 -!- Patashu has joined.
23:02:03 <b_jonas> where you say "C rounding", does that mean the rule from old C (which allows two possibilities for some inputs) or modern C rounding from later standards?
23:02:42 <zzo38> I don't actually know.
23:04:03 <zzo38> OASYS was originally written in C++ though.
23:05:40 <b_jonas> um, when you say "You must invoke the selector method on each object of the class", how is the class determined?
23:06:20 <b_jonas> oh, is it determined from matching the class phrase?
23:06:29 <zzo38> O, it is determined by which class phrase it matches.
23:06:34 <zzo38> Yes, that is correct
23:07:08 <b_jonas> how does this matching work then if the class phrases are variable length and the method phrases can have object slot gaps and fixed words mixed in any order?
23:07:28 -!- oerjan has joined.
23:08:45 <zzo38> It works just by which matches, such as if "blue key" is a class phrase and "put <obj> in <obj>" is a method phrase, then "put blue key in blue key" will match. I don't know what else you meant?
23:09:29 <oerjan> @tell Gregor glogbot could need an NTP update hth
23:09:58 <b_jonas> zzo38: I mean what if there's an ambiguity, or at least a word occurs in many phrases? will the matcher backtrack to try all method phrases with all combinations of class phrases to find a match? that seems unlikely
23:10:31 <zzo38> I suppose it is implementation-defined, although it has to try to find the match.
23:10:53 <zzo38> My own implementation in BASIC does use backtracking though.
23:11:14 <zzo38> I have the C++ implementation too but don't remember how it works.
23:11:33 -!- variable has joined.
23:12:05 <b_jonas> then maybe mention that this is implementation-defined
23:13:10 <zzo38> As long as it gets the correct result it doesn't matter how it is implemented though.
23:13:40 <b_jonas> it can matter if there's an ambiguity, or if it doesn't always find the match
23:14:01 <b_jonas> it can even matter what error message you get
23:14:28 <zzo38> OK, I will try to figure it out
23:14:30 <b_jonas> like if you say "put red key in blue key" the error message could tell you it doesn't know about "red key" but the rest seems fine
23:15:01 <zzo38> The C++ implementation (as well as my BASIC implementation) will just print "I don't understand you." if that happens.
23:15:31 <b_jonas> I guess that's mostly enough because in this case "red" is likely not in the vocabulary
23:15:42 <b_jonas> a game like this will generally use single words when possible
23:15:54 <zzo38> If that's the case it will print "I don't understand the word 'red'." when that occurs.
23:16:10 <zzo38> But that's really an implementation detail anyways I suppose.
23:30:30 <oerjan> <TieSoul> mroman: I'm working on a lexer and parser system for arbitrary grammars <-- that's undecidable hth
23:30:59 <ais523> oerjan: you can just enter an infinite loop trying to decide
23:31:10 <ais523> I'm also working on a parser system, but currently only for LALR(1)
23:31:10 <oerjan> whether you are actually trying the impossible or just don't know about the chomsky hierarchy, i do not yet know.
23:31:51 <ais523> "arbitrary grammars" could mean type 1 I guess, for someone who doesn't realise what type 0 is?
23:32:38 <ais523> is type 2 decidable even if you allow an empty RHS?
23:33:07 <ais523> type 1 is decidable anyway just by brute force
23:33:29 <oerjan> type 1 is PSPACE, essentially
23:33:38 <oerjan> (equivalent in strenght)
23:33:45 <ais523> right, it doesn't look very computationally fast
23:34:09 <oerjan> type 2 is decidable in O(n^3)
23:34:32 <oerjan> well for a fixed grammar
23:35:07 <ais523> oerjan: right, the bison manual mentions that offhand
23:35:18 <ais523> and I forgot until you mentioned it
23:35:18 <oerjan> perhaps even including the grammar.
23:35:25 <ais523> huh, the post correspondence problem is neat
23:35:33 <oerjan> unambiguous type 2 in O(n^2)
23:35:42 <ais523> it's got to be possible to make an esolang out of that
23:35:49 <ais523> given that it's a simple undecidable problem
23:36:14 <ais523> oerjan: and LR(k) for any k in O(n), right?
23:36:15 <oerjan> and earley parsers gracefully get both of those as well as O(n) for LR(1)
23:36:50 <oerjan> LR(k) = LR(1) on language acceptance level
23:36:51 <ais523> something that amused me a lot is that the syntax yacc uses as input is LR(2) but not LR(1)
23:37:05 <ais523> the yacc-in-yacc in the POSIX standard gets around it by doing some of the parsing in the lexer, which is cheating
23:37:18 <oerjan> how did they manage that
23:37:31 <ais523> basically there doesn't have to be any delimiter between rules
23:37:45 <ais523> and an identifier is a rule LHS if it's followed by a colon, part of the RHS otherwise
23:38:03 <oerjan> "we'll make a parser generator that can parse any reasonable language, and then make its own language not fit" best idea
23:38:09 <ais523> when you see an identifier after a rule RHS, therefore, you have to reduce the RHS if there's a colon after it, shift the identifier otherwise
23:38:18 <ais523> = two symbols of lookahead
23:38:36 <ais523> *a colon after the identifier
23:39:20 <ais523> now I'm wondering if there's some crazy way to get it to be LR(1) anyway by rewriting the grammar with a bunch of intermediate steps
23:39:38 <ais523> isn't there some universal way to convert LR(2) to LR(1) and still match the same set of strings? just the structure of the grammar is all wrong
23:39:50 <oerjan> yes, that's what i implied above
23:40:08 <ais523> the POSIX standard's method of working around this is to define "identifier and a colon" as a separate token, which is really blatant cheating
23:42:13 <oerjan> maybe, it's still a regular language for the lexer
23:42:24 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
23:51:49 -!- Phantom_Hoover has joined.
23:55:36 <HackEgo> wisdom/zygohistomorphic-prepromorphism
23:56:00 <oerjan> `? zygohistomorphic-prepromorphism
23:56:00 <HackEgo> Zygohistomorphic-prepromorphism Used when you really need both semi-mutual recursion and history and to repeatedly apply a natural transformation as you get deeper into the functor
23:56:52 <oerjan> `learn A zygohistomorphic prepromorphism is used when you really need both semi-mutual recursion and history and to repeatedly apply a natural transformation as you get deeper into the functor.
23:56:57 <HackEgo> Learned 'zygohistomorphic': A zygohistomorphic prepromorphism is used when you really need both semi-mutual recursion and history and to repeatedly apply a natural transformation as you get deeper into the functor.
23:57:30 <oerjan> `` mv wisdom/zygohistomorphic{, prepromorphism}
23:57:31 <HackEgo> mv: cannot stat `wisdom/zygohistomorphic{,': No such file or directory
23:57:47 <oerjan> `` mv wisdom/zygohistomorphic{," prepromorphism"}
23:58:21 <HackEgo> wisdom/zygohistomorphic prepromorphism
23:58:44 * oerjan vaguely considers whether he could have done that more efficiently.