00:00:31 <\oren\> is it normal to forget to leave work when work is over?
00:01:19 <shachaf> certainly your employer has an incentive to make it normal hth
00:02:09 <\oren\> well I mean I was programming and eating a cupcake
00:02:26 <\oren\> and then I realized it was 7:00 pm
00:02:38 <MDude> It took that long to eat a cupcake?
00:02:58 <MDude> Time to call yourself the savorator.
00:03:10 <\oren\> but I was eating a cupcake when I realized
00:03:20 <ais523> where am I going to be able to find somewhere to eat at 1am
00:03:25 <ais523> (and do they sell cupcakes?)
00:03:53 <\oren\> try a breakfast joint that the night-shifters go to.
00:03:55 <ais523> selly oak, which is cheating a bit
00:04:01 <ais523> because it's full of shops which don't close until 3 or so
00:04:16 <ais523> and then a different subset of shops open at 7am or so
00:04:28 <ais523> so although it's not technically a 24:7 place it is open quite a lot of the time
00:04:49 -!- doesthiswork has joined.
00:04:52 <\oren\> I know a breakfast place that opens at midnight and is open until 2 pm
00:05:14 <shachaf> \oren\: what do you think of smoke's poutinerie twh
00:05:33 <ais523> \oren\: I don't think that's common in the UK
00:05:47 <ais523> I remember I was at a motorway service station, which has a legal requirement to sell hot food, at 2am
00:06:00 <FireFly> ais523: hm, well Scheme-ω is kind of the fixpoint of derivatives of Scheme, but it's not exactly a derivative "of itself"
00:06:11 <ais523> and they met their requirement via the use of a relatively small KFC with one employee who would cook KFC things to order, and a computer to take the orders
00:06:15 <FireFly> s/the fixpoint/a fixpoint/
00:07:20 <FireFly> A language that is literally a derivative of itself probably doesn't make sense, or at least I don't see how that would work
00:07:45 <ais523> FireFly: well, "BF but with , and . swapped" is a BF derivative (and, sadly, it probably already exists)
00:08:04 <\oren\> I like smokes poutinery but it isn't open at 5am
00:08:06 <ais523> if the language were a self-derivative, that sort of description would imply that , and . did the same thing
00:08:16 <ais523> that isn't very interesting by itself, but you could make it more complex
00:08:23 <ais523> "a is like b, but with a stack instead of a queue"
00:08:33 <ais523> keep working like this and you might be able to build up a language purely self-referentially
00:09:15 <shachaf> and nu is the greatest fixed point
00:10:40 <FireFly> not all fixed points are great though, some are small
00:11:44 <FireFly> If there's fixed points, does that mean there is also broken points?
00:11:46 <ais523> in this case, ideally there'd only be one fixed point, or maybe two
00:11:52 <ais523> although I guess you'd have to go for the least fixed point
00:12:01 <ais523> to prevent people adding in extra commands that are entirely unmentioned
00:15:09 <shachaf> The greatest fixed point might be more interesting.
00:17:53 <ais523> wouldn't it contain infinitely many commands, that aren't uniquely defined?
00:21:13 -!- Wright has joined.
00:25:59 -!- hppavilion[1] has joined.
00:28:04 <Jafet> But if there is only one greatest fixed point, then the language is necessarily uniquely defined.
00:28:48 <shachaf> There might not be a greatest fixed point, of course. There might also not be a least fixed point.
00:29:08 <ais523> there being a least fixed point is more likely, though
00:29:34 <shachaf> What is the ordering here?
00:35:07 <hppavilion[1]> tswett: I mean what is the form for defining a Ring
00:35:40 <hppavilion[1]> Like defining a variable is <name>=(<value>|<expression>)
00:35:59 <hppavilion[1]> Well, that's not a very good example because, I presume, rings are represented as variables
00:38:41 <Phantom_Hoover> a variable is a syntactic thing, it represents a map or a set or whatever else you happen to be talking about
00:39:29 <ais523> Phantom_Hoover: I was talking about the set of all variable names in a program being syntactically a set
00:39:36 <ais523> I think hppavilion[1] is trying to elaborate on that
00:43:41 <hppavilion[1]> What weird data structures could we use to represent variables?
00:43:43 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:43:48 <\oren\> a 'variable' has different meanings depending on the language
00:44:21 <ais523> \oren\: assignable variables
00:44:30 <ais523> I meant lambda variables
00:44:36 <hppavilion[1]> Usually it's a Map, rarely it's as stack, in some Esolangs it's a pointer-based thing, but what about something truly strange?
00:44:39 <ais523> I was trying to translate from hppavilion[1] into mathematical syntax
00:44:43 <\oren\> see those are digfferent
00:44:45 <ais523> and hadn't noticed e'd said the wrong thing
00:45:39 -!- ais523 has quit (Quit: food (it's only 1:45am or so, somewhere's got to still be open right?)).
00:48:21 <hppavilion[1]> So is Priority Queue weird enough of a DS for data storage in a language?
00:48:37 <hppavilion[1]> Or symetrical map (or whatever that thing's called)
00:52:48 <hppavilion[1]> Priority-Ordered-Stacky-Symetrical-Multimap-based variables
01:08:16 <doesthiswork> the sequence of progressively more general data structures goes from location addressable like array, list, queue, stack, to name addressable like dictionary to content addressable like prolog or sql
01:09:00 <doesthiswork> or perhaps you have no variables, only types. So if you want to store a value you have to define a unique type for it
01:26:58 -!- ais523 has joined.
01:27:20 -!- XorSwap has quit (Read error: Connection reset by peer).
02:04:38 -!- JesseH has quit (Remote host closed the connection).
02:13:26 -!- hppavilion[1] has quit (Ping timeout: 272 seconds).
03:47:24 -!- hppavilion[1] has joined.
04:02:22 -!- hppavilion[1] has quit (Ping timeout: 272 seconds).
04:05:19 -!- variable has joined.
04:44:15 -!- Wright has quit (Remote host closed the connection).
04:58:09 -!- Frooxius has quit (Quit: *bubbles away*).
05:15:28 -!- doesthiswork has quit (Quit: Leaving.).
05:18:26 -!- augur has quit (Ping timeout: 268 seconds).
05:51:15 -!- aretecode has quit (Read error: Connection reset by peer).
05:51:58 -!- J_Arcane has quit (Ping timeout: 265 seconds).
05:52:37 -!- hppavilion[1] has joined.
06:02:09 -!- variable has quit (Ping timeout: 256 seconds).
06:05:08 -!- MDude has changed nick to MDream.
06:09:40 -!- hppavilion[1] has quit (Ping timeout: 272 seconds).
06:16:13 -!- qwertyo has joined.
06:18:26 -!- AnotherTest has joined.
06:21:11 -!- AnotherTest has quit (Client Quit).
06:28:07 -!- sc00fy has joined.
06:35:13 -!- ais523 has quit.
06:48:39 -!- qwertyo has quit (Ping timeout: 240 seconds).
06:49:10 -!- qwertyo has joined.
07:19:20 -!- qwertyo has quit (Quit: Leaving).
07:22:03 -!- FreeFull has quit.
07:43:50 -!- ^v has quit (Ping timeout: 240 seconds).
07:45:47 <HackEgo> [wiki] [[Unreadable]] M http://esolangs.org/w/index.php?diff=44574&oldid=44106 * Timwi * (+0)
08:10:47 -!- augur has joined.
08:11:50 -!- mroman_ has joined.
08:12:04 <mroman_> Could somebody somehow reset my esowiki password?
08:14:47 <mroman_> (My nick on there is Feuermonster :) )
08:15:30 -!- zadock has joined.
08:18:39 <mroman_> What exactly is the difference between a debate, a discussion and a shitstorm?
08:18:51 <mroman_> I'm loosing track of all those terms.
08:19:50 <myname> i'd say debates are discussions wuth certain rules and shitstorms are in no way about dialogs
08:20:56 <mroman_> oh wait. Shitstorm although an english word, isn't used in the english language.
08:21:10 <mroman_> like we use oldtimer and mobbing :)
08:21:46 <mroman_> "shitstorm" is kinda the german word for flamewar
08:24:31 <mroman_> Looks like "Lulu" gets some competition.
08:26:19 <mroman_> Everybody is scared of a "surveillance state"
08:26:45 <mroman_> but somehow it's ok to have a "surveillance society"
08:26:52 <mroman_> just as long as it's not the state doing the actual surveillance.
08:30:36 -!- Patashu has joined.
08:47:22 -!- Phantom_Hoover has joined.
08:53:26 -!- JesseH has joined.
08:53:56 -!- oerjan has joined.
09:00:30 -!- draghi has joined.
09:00:37 -!- FireFly has quit (Read error: Connection reset by peer).
09:00:37 -!- heddwch has quit (Read error: Connection reset by peer).
09:01:10 -!- heddwch has joined.
09:04:42 -!- draghi has quit (Client Quit).
09:05:06 -!- FireFly has joined.
09:06:00 -!- draghi has joined.
09:12:30 -!- Tod-Autojoined has joined.
09:15:30 -!- tromp has joined.
09:16:18 -!- Sprocklem_ has joined.
09:16:44 -!- Tefaj has joined.
09:17:23 -!- ski____ has joined.
09:17:36 -!- coppro_ has joined.
09:17:50 -!- TodPunk has quit (Ping timeout: 250 seconds).
09:17:50 -!- tromp__ has quit (Ping timeout: 250 seconds).
09:17:50 -!- ski has quit (Ping timeout: 250 seconds).
09:17:50 -!- Jafet has quit (Ping timeout: 250 seconds).
09:17:50 -!- Sprocklem has quit (Ping timeout: 250 seconds).
09:17:50 -!- coppro has quit (Ping timeout: 250 seconds).
10:00:42 -!- ski____ has changed nick to ski.
10:02:43 -!- idris-bot has quit (Quit: Terminated).
10:04:57 -!- idris-bot has joined.
10:11:03 -!- boily has joined.
10:11:13 <int-e> aaargh! too many characters.
10:11:31 <oerjan> at least colette might not be betraying them
10:12:49 <oerjan> and gil will go to paris </dreen>
10:13:45 <oerjan> anyway, i don't think grandma has shown up before
10:14:30 <int-e> Well I had trouble recognizing Seffie.
10:15:10 <oerjan> hm she may be a bit indistinct
10:15:40 <int-e> it'll be easier next time now that I've realized that she has Martellus' hair color.
10:15:58 <oerjan> they do tend to in that family
10:19:28 <oerjan> hm marg{olott,arell}a didn't.
10:23:27 <oerjan> hm neither does lord selnikov
10:32:55 <HackEgo> [wiki] [[Blank]] http://esolangs.org/w/index.php?diff=44575&oldid=34583 * LegionMammal978 * (+421) read the interpreter
10:36:18 <HackEgo> [wiki] [[Blank]] http://esolangs.org/w/index.php?diff=44576&oldid=44575 * LegionMammal978 * (+13) /* Input/output */
10:53:12 <fizzie> "Status: !? Tool Failure".
10:53:14 <fizzie> I know my test failed, but that's no reason to call me a tool.
10:53:37 <HackEgo> [wiki] [[Talk:Help, WarDoq!]] http://esolangs.org/w/index.php?diff=44577&oldid=44098 * LegionMammal978 * (+249) /* Fail. */
10:55:04 -!- bender| has joined.
11:01:48 <boily> what's a “!? Tool”?
11:02:11 -!- AnotherTest has joined.
11:02:23 <FireFly> Perhaps it punctuates your speech
11:09:26 <HackEgo> [wiki] [[PHL 1.0]] http://esolangs.org/w/index.php?diff=44578&oldid=40992 * LegionMammal978 * (-13) /* External resources */
11:11:35 -!- AnotherTest has quit (Ping timeout: 264 seconds).
11:15:16 <fizzie> boily: The [!?] part was the symbol.
11:15:47 <fizzie> I think it's F when failed, a checkmark when passed, a % when flaky, and probably there are some others too.
11:15:54 <fizzie> In addition to the !? tool failure.
11:20:57 -!- Patashu has quit (Ping timeout: 255 seconds).
11:21:18 -!- Patashu has joined.
11:23:17 -!- Patashu has quit (Client Quit).
11:23:25 -!- Patashu has joined.
11:28:19 -!- oerjan has quit (Quit: Later).
11:31:14 -!- boily has quit (Quit: PLATE CHICKEN).
11:37:52 -!- Patashu has quit (Remote host closed the connection).
11:38:03 -!- Patashu has joined.
11:58:59 -!- Patashu has quit (Ping timeout: 264 seconds).
12:00:17 -!- Patashu has joined.
12:00:52 -!- AnotherTest has joined.
12:06:46 -!- J_Arcane has joined.
12:09:09 -!- lleu has joined.
12:29:43 -!- Patashu has quit (Ping timeout: 252 seconds).
12:33:49 -!- Patashu has joined.
12:38:13 -!- Frooxius has joined.
12:40:42 <draghi> Hey, you peeps mind if I quickly poll you on something? I'm currently developing a 3D image-based funge-like language that utilizes a growable/shrinkable ringbuffer containing stacks as memory that supports self-modification and brainfork style concurrency. Does that sound interesting? and what sort of features would you expect? Thanks (y)
12:41:48 <draghi> As in the source code is in an animated imge, such as a gif, and the execution path moves in 3 dimentions through it.
12:42:40 <myname> ah, that's nice, but i am.not sure how much that limits the number of operations
12:43:15 -!- augur has quit (Ping timeout: 250 seconds).
12:43:42 <draghi> I'm limiting it to 256 commands, and I definitely am looking at a basic IDE for it cause colours will be confusing enough XD
12:47:01 <draghi> Well, 255 and a noop XD
12:48:36 -!- augur has joined.
12:51:38 <mroman_> Is there a fast check to determine if a number is a fibonacci number?
12:52:20 <myname> fibonacci numbers aren't that special
12:53:58 <mroman_> apparentely if (5*n^2 +4) or (5*n^2 -4) is a perfect square, then n is a fibonacci number
12:55:09 <draghi> Well. Kinda. I guess if you can reverse this equation: http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/fibFormula.html Then check if it's a whole number.
12:55:12 <FireFly> derived from the closed-form expression for Fibonacci numbers?
12:55:30 <mroman_> you mean that 1/sqrt(5) thingy?
12:55:36 <mroman_> that requires arbitrary precision
12:56:07 <mroman_> (essentially it should work with bigints only)
12:57:05 <mroman_> also.. is there a way given F(n) to find F(n-1),F(n-2) easily?
12:57:22 <myname> tjat 1/sqrt(5) doesn't help
12:57:46 <mroman_> I might want to use Fibonacci Numbers for cryptography
12:57:56 <myname> because every series with f(n) = f(n-1)+f(n-2) gets to 1/sqrt(5)
12:58:03 <myname> no matter where it starts
13:00:56 <draghi> If memory isn't an issue, you could always build a look-up table for the resonable range, and then calculate everything outside of it?
13:09:00 -!- mauris has joined.
13:09:44 -!- XorSwap has joined.
13:29:15 <Taneb> I just bought the D&D 5th ed DM's guide
13:30:31 <mroman_> on a completely off-topic topic, this danish "do it for mom" commercial is weird
13:31:38 <Taneb> They're letting me advertise to them
13:32:12 <mroman_> I heard first years are the most formable
13:32:19 <mroman_> you'd better not screw this up!
13:33:07 <mroman_> I'm tired of these noob java developers who don't now that you can prefix identifiers with a dollar sign to make it look like PHP.
13:33:19 -!- `^_^v has joined.
13:35:09 <draghi> *shivers at the mention of php* XP
13:35:20 <mroman_> http://codepad.org/jRa64Wpr <- that's how the pros do it
13:39:57 -!- Patashu has quit (Ping timeout: 244 seconds).
13:44:12 -!- FreeFull has joined.
13:47:45 -!- coppro_ has changed nick to coppro.
14:03:14 <FireFly> mroman_: one can also have an inner class, method and field on some object, all with the same name
14:09:05 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
14:12:46 <draghi> I may or may nto have done that before :|
14:13:55 -!- XorSwap has quit (Read error: Connection reset by peer).
14:14:11 -!- XorSwap has joined.
14:17:30 -!- XorSwap has quit (Client Quit).
14:19:18 -!- Phantom_Hoover has joined.
14:19:56 <int-e> $this = this hurts, and I don't mean the variable name.
14:22:19 -!- bender| has quit (Ping timeout: 246 seconds).
14:33:52 -!- contrapumpkin has quit.
14:34:10 -!- copumpkin has joined.
14:41:33 <mroman_> also... technically as of now I am a paid white-hat.
14:44:15 <int-e> mroman_: this is implicitely passed to all class methods, so that $this serves no useful purpose.
14:44:43 <int-e> implicitly (this typo is way to persistent)
14:45:14 <mroman_> The more PHP your code the better.
14:47:33 <APic> And i am Phantomias.
14:50:00 -!- aretecode has joined.
14:53:28 <mroman_> parseString "+" <|> parseString "-" <|> parseString "*" <|> parseString "<" <|> parseString ">"
14:53:37 <mroman_> why's there no oneOf ["+","-"]
15:00:42 <myname> could you somehow do -> in java to access object attributes or methods? ?D
15:02:16 -!- bb010g has joined.
15:07:45 -!- J_Arcane has quit (Ping timeout: 255 seconds).
15:12:07 <mroman_> Doesn't have operator overloading
15:23:25 -!- MDream has changed nick to MDude.
15:33:48 -!- mroman_ has quit (Quit: Lost terminal).
15:38:13 -!- gamemanj has joined.
15:43:23 <draghi> *cough* Give D a look, it's pretty solid, it's my fav programming language at the moment. It's pretty much C meets Java. Still some things wrong with it, but it's pretty good! It has a GC, but if you feel like it you can actually use the c stdlib malloc/free and D's emplace to write non-gc code.
15:45:01 -!- J_Arcane has joined.
16:01:06 <MDude> Mostly because I was just thinking of how I should probaly get back to learning assembly.
16:08:57 <mauris> why do people give their languages single character names still
16:10:49 -!- zadock has quit (Quit: Leaving).
16:12:11 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
16:12:32 <draghi> myname: I haven't actually given that a go yet, I keep meaning to XD
16:13:07 -!- Phantom_Hoover has joined.
16:13:32 <myname> D is for C++ programmers who like C++ and Rust is for C++ prigrammers who hate C++
16:14:49 <draghi> I don't like C++ oddly enough XD
16:15:11 <draghi> It's what I code in mainly, but out of necessity.
16:15:44 <myname> my favourite quote about go is "go is not a bad language. go is not a good language either"
16:15:54 <draghi> I tried Go, I never got the hang of it. How's it GOing along? ah. ha. ha...
16:16:26 -!- sc00fy has quit (Ping timeout: 268 seconds).
16:18:40 <myname> gocis like "hey, let's make a new langiage but keep all that memory unsafety and null pointer errors"
16:20:47 <draghi> Also "Typing out interface names are too hard, so we threw that idea out."
16:21:05 <draghi> But I like go, it's interesting.
16:23:22 <myname> "also, who needs ADT anyways"
16:29:22 -!- yorick has quit (Ping timeout: 260 seconds).
16:30:28 -!- yorick has joined.
16:40:07 -!- aretecode has quit (Read error: Connection reset by peer).
16:42:34 -!- aretecode has joined.
16:47:01 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
16:47:10 -!- hppavilion[1] has joined.
16:53:04 -!- Phantom_Hoover has joined.
17:17:06 -!- zzo38 has joined.
17:24:01 -!- FreeFull has quit (Quit: Rebooting).
17:26:41 -!- ^v has joined.
17:27:00 -!- FreeFull has joined.
17:30:39 -!- hppavilion[1] has quit (Ping timeout: 256 seconds).
17:30:40 -!- MoALTz has joined.
17:40:44 <draghi> I'm off, catch ya'll later! (y)
17:41:10 -!- draghi has quit (Quit: Leaving).
17:42:27 -!- hppavilion[1] has joined.
17:56:18 <shachaf> -NickServ(NickServ@services.)- elliott is not registered.
18:11:34 -!- Sprocklem_ has quit (Ping timeout: 246 seconds).
18:12:25 <Phantom_Hoover> it's a set R with binary operations +, * such that it's an abelian group under +, a monoid under * and + and * distribute
18:13:43 <hppavilion[1]> Phantom_Hoover: Yes, yes. I mean how does one write down a /specific/ ring?
18:16:27 <Phantom_Hoover> this is, in a meaningful sense, the simplest nontrivial ring
18:18:24 -!- nortti has changed nick to perkele.
18:19:07 -!- perkele has changed nick to nortti.
18:27:53 -!- hppavilion[1] has quit (Ping timeout: 256 seconds).
18:29:37 -!- hppavilion[1] has joined.
18:35:25 <FireFly> I think usually it's defined as a five-tuple out of a set, two operations, and two identity elements (for the two operations, respectively)?
18:35:34 <FireFly> and then of course those have to satisfy the axioms
18:37:20 <FireFly> But I guess one really thinks of it as a set equipped with two operations with corresponding identity elements, rather than a 5-tuple
18:41:19 -!- `^_^v has quit (Ping timeout: 240 seconds).
18:51:18 <MDude> Where's an actual description of SGML?
18:51:28 -!- hppavilion[1] has quit (Ping timeout: 250 seconds).
18:53:15 <MDude> Oh, it costs money because ISO'
19:02:35 <MDude> I'm pretty sure that's why so few people implemented it, not complexity.
19:02:40 <MDude> So XML probably wasn't needed.
19:14:50 <MDude> THere's The SGML Handbook but the website for it is down?
19:24:59 -!- ^v has quit (Remote host closed the connection).
19:28:31 -!- J_Arcane_ has joined.
19:31:54 -!- J_Arcane has quit (Ping timeout: 255 seconds).
19:31:56 -!- J_Arcane_ has changed nick to J_Arcane.
19:37:04 <FireFly> Why do ISO's specs cost money anyway? it's stupid.
19:37:19 <FireFly> Especially specs that ECMA have exact mirrors of, and those are free
19:38:41 -!- Sprocklem has joined.
19:38:52 -!- atrapado has joined.
19:41:22 <gamemanj> um, because ISO want to rip people off for profit and profit?
19:41:40 <gamemanj> over specifications, which to me sounds quite stupid
19:42:10 <gamemanj> if you want a standard, you don't put it behind a paywall
19:43:20 -!- bb010g has quit (Quit: Connection closed for inactivity).
20:04:36 -!- hppavilion[1] has joined.
20:05:01 <hppavilion[1]> I thought of a new arbitrary distinction we can make between esolangs
20:09:45 <hppavilion[1]> Monoesoteric languages are otherwise normal programming languages with one strange feature, like in Call Queue. They're often more proofs-of-concepts and demonstrations than they are esolangs made for the sake of esolangs.
20:11:12 <hppavilion[1]> Polyesoteric are languages which mix a bunch of weird traits together, like INTERCAL
20:11:37 <hppavilion[1]> They're easier to pull off because they're the product of just throwing a ton of weird shit into a blender and seeing the result
20:12:02 <hppavilion[1]> Another distinction could be Whole-grain esoteric and processed esoteric
20:12:06 <izabera> what about languages with two strange features
20:13:06 <hppavilion[1]> izabera: Those are polyesoteric. Though you /could/, if you /really/ wanted to, call them diesoteric. But that'd be stupid, like the concept of a distinction between First, Second, and Third-class citizens in programming
20:13:25 <hppavilion[1]> It's first-class data or it isn't. There's no heirarchy.
20:14:20 <hppavilion[1]> Whole-grain esoteric are often purely made of esotericness, like Thue. Processed Esoteric only have a piece of esoteric mixed in with normal features, like Call Queue again.
20:14:48 <Phantom_Hoover> you need to inductively define the N-esoteric languages from the 0-esoteric languages and the S-esoteric function
20:15:00 -!- astralfish has joined.
20:15:14 <Phantom_Hoover> then all you need to do is define limit esotericity and you have the entire vast sweep of the ordinal esoterics at your fingertips
20:20:05 -!- gde33|2 has left.
20:21:14 <FireFly> hppavilion[1]: I'm afraid to ask, but what is a third-class citizen?
20:21:53 <hppavilion[1]> FireFly: It's an arbitrary distinction between different types of second-class citizen
20:22:28 <hppavilion[1]> http://stackoverflow.com/questions/2578872/about-first-second-and-third-class-value/2582804#2582804
20:24:16 <hppavilion[1]> FireFly: If you want to see what the distinction is, scroll up on that link.
20:24:46 <FireFly> Ah, sounds like a terribly vague distinction
20:24:50 * FireFly decides not to bother with it
20:26:31 <HackEgo> [wiki] [[User:Hppavilion1/Esolang Adjectives]] N http://esolangs.org/w/index.php?oldid=44579 * Hppavilion1 * (+1165) Created page (talking about monoesoteric and polyesoteric)
20:32:49 -!- Sprocklem has quit (Ping timeout: 246 seconds).
20:36:40 <HackEgo> [wiki] [[User:Hppavilion1/Esolang Adjectives]] http://esolangs.org/w/index.php?diff=44580&oldid=44579 * Hppavilion1 * (+1122) Added new adjectives
20:37:13 <hppavilion[1]> izabera: Phantom_Hoover: Taneb: I went with Ornate, though I might change it to Baroque
20:37:47 <izabera> oh you shouldn't take my advice seriously, my english sucks
20:41:05 <hppavilion[1]> izabera: Baroque is actually a pretty interesting word for it, and seems to make sense in the concept of Esolangs
20:41:32 <hppavilion[1]> It was traditionally used to describe a period of music, but then again, Esolangs are like music to some people.
20:42:09 <hppavilion[1]> I want to see an Esolang that supports some simple GUI
20:46:52 <HackEgo> [wiki] [[GUI4BF]] N http://esolangs.org/w/index.php?oldid=44581 * Hppavilion1 * (+310) Created Page (WIP)
20:47:25 <gamemanj> hmm... well, this is just plain convenient
20:47:44 <gamemanj> now I have a good test case for this thing I was developing for unrelated reasons
20:48:43 <gamemanj> https://dl.dropboxusercontent.com/u/21184720/Flowcharter.png
20:49:55 <gamemanj> Flowchart-based BF programming.
20:50:25 <gamemanj> This is an incomplete generic flowchart-y thing,
20:50:36 <gamemanj> and you were saying about an esoteric language with a GUI.
20:51:26 <gamemanj> Actually, it's quite the opposite - the project it's for makes things easier.
20:52:04 <gamemanj> But there's the basis of a flowchart editor there, so if you want it for making a flowchart-based esolang off of, I figured it might be useful.
20:52:20 <gamemanj> (Now, how a flowchart-based esolang might work, IDK.)
20:52:29 <gamemanj> (Just thought it might be useful.)
20:52:43 <hppavilion[1]> Well, a language that is a flowchart IS an esolang
20:53:18 <gamemanj> Note that the flowchart editor works based on a grid... each grid can have one of the things in the dark panel at the top.
20:53:42 <gamemanj> But it should be trivial to change, and there's no runtime code yet anyways.
20:54:05 <gamemanj> This was meant to be an editor, not actually running anything.
21:01:27 -!- Sprocklem has joined.
21:04:23 -!- gamemanj has quit (Ping timeout: 264 seconds).
21:15:59 -!- ais523 has joined.
21:17:56 <HackEgo> U+1F435 MONKEY FACE \ UTF-8: f0 9f 90 b5 UTF-16BE: d83ddc35 Decimal: 🐵 \ 🐵 \ Category: So (Symbol, Other) \ Bidi: ON (Other Neutrals)
21:18:15 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/bin/unidecode
21:19:32 <izabera> are you seriously complaining about that
21:26:00 <hppavilion[1]> Someone go design a portable Esoteric Widget Toolkit that can be used in other esolangs
21:27:58 <FireFly> the Widget Abomination Toolkit, libwat
21:29:43 -!- qwertyo has joined.
21:33:51 -!- hppavilion[1] has quit (Ping timeout: 255 seconds).
21:38:49 <izabera> https://capnproto.org/ does anyone know this?
21:38:57 -!- Sprocklem has quit (Ping timeout: 268 seconds).
21:39:06 <Taneb> Heard about it before, don't know much about it
21:40:18 <izabera> i realize now that i don't really have a question about it
21:40:39 <izabera> would you recommend it? what do you use it for?
21:42:41 -!- AnotherTest has quit (Quit: ZNC - http://znc.in).
21:55:37 -!- qwertyo has quit (Quit: Leaving).
22:02:26 <Taneb> Eek, freshers' fair tomorrow
22:02:43 <Taneb> Currently helping to make a terminal app people can use to sign uo
22:02:53 <Taneb> (to the computer science society here)
22:05:34 <Taneb> Currently I am doing some overdue laundry
22:05:38 <Taneb> But that's not the point
22:06:06 <HackEgo> [wiki] [[HALT]] http://esolangs.org/w/index.php?diff=44582&oldid=44435 * Vihan * (+5)
22:06:20 -!- Sprocklem has joined.
22:12:06 <zzo38> I did intend writing the X widget set for use with C program, which is somewhat like Athena widgets
22:13:08 <ais523> "is this TC?" experiment: brainfuck with a finitely long tape (with < and > saturating), where most of the cells are 8-bit, and precisely 3 of them are unbounded
22:13:34 <Taneb> Do you know the specifics ahead of time
22:13:57 <ais523> my guess it it's TC anyway, but trying to deal with every possibility for cell layout would be quite complex
22:15:41 <ais523> because BF is known TC with three unbounded cells, but two unbounded cells are known to be not enough without some other form of storage
22:16:08 <ais523> (which doesn't necessarily have to be unbounded IIRC)
22:16:12 <shachaf> And a finite tape isn't enough storage?
22:16:22 <ais523> well we don't know how long i is
22:16:36 <shachaf> So it might just be three cells.
22:17:43 <Taneb> One of my friends is working on a talk about turing machines with tapes that might tear at runtime or something
22:18:35 <ais523> ooh, new record for video game computational class
22:18:47 <ais523> Braid is in EXPSPACE: http://arxiv.org/pdf/1412.0784v1.pdf
22:19:52 <izabera> do you know a guy named giovanni viglietta? he proved a bunch of stuff about super mario and similar games
22:20:30 <Taneb> iirc i read some of his work
22:20:58 <ais523> I've read the original paper about Mario, Metroid and friends
22:20:59 <izabera> i did too, not the ones about games tho
22:21:01 <ais523> unfortunately it is broken
22:21:23 <shachaf> "As it turns out, Braid *can* simulate an arbitrary computation – but not because of time manipulation."
22:21:23 <ais523> basically it shows the computational class of specific games in a series (e.g. SMB1 or Zelda 1)
22:21:47 <ais523> then it tries to generalize to other games in the series that have the same mechanics
22:21:51 <ais523> and although the lower bound generalizes
22:21:55 <ais523> the upper bound doesn't
22:22:03 <ais523> actually, not even that
22:22:15 <Taneb> ais523: do you have a non-PDF link?
22:22:19 <int-e> ais523: two unbounded cells with two zero cells inbetween make brainfuck TC (the zero cells are always zero, and one can make sure that the code will never modify them)... it turns out to be enough for a two-counter machine with while and if-zero-then-else.
22:22:21 <ais523> the problem is, you have things like the metroid crossover construction that allows passage left→right or top→bottom
22:22:56 <ais523> Taneb: it's arxiv, you could check here: http://arxiv.org/format/1412.0784v1
22:23:20 <ais523> but in super metroid, the same construction doesn't owrk
22:23:30 <int-e> (the two cells allow to store one bit of state in the pointer position when extiting a loop)
22:23:34 <ais523> because you can do a mid-air morph and go sideways when you shouldn't be able to
22:23:41 <Taneb> Aww, no index thing
22:23:52 <Taneb> Actually, http://arxiv.org/abs/1412.0784is what I was looking for
22:24:38 <int-e> err, the two zero cells (though that may have been obvious)
22:24:43 <ais523> this implies that the problem is having a cell that's zero for breaking out of loops, plus one other bit of state somewhere
22:25:28 <HackEgo> [wiki] [[McCulloch's second machine]] http://esolangs.org/w/index.php?diff=44583&oldid=38818 * LegionMammal978 * (-5) /* Discussion */
22:28:21 <int-e> I've thought a while on the situation of two unbounded cells with just one bounded cell inbetween... so far without a conclusion.
22:28:57 <ais523> presumably this cell has a relatively large bound?
22:29:46 <int-e> I was actually thinking of a fairly low bound (namely, enough to store the remainder of dividing by 2,3 or 5, perhaps plus 1)
22:30:01 <ais523> aha, these are the same lines I'm thinking along atm
22:30:11 <ais523> a divide/multiply machine
22:30:12 <int-e> or a bit more, with the idea of implementing fractran
22:30:21 <int-e> (or some variant thereof)
22:30:31 <ais523> I'm not convinced you need the entirety of fractran, but it'd help
22:31:14 <int-e> oerjan targeted http://esolangs.org/wiki/Collatz%20function in his 3 unbounded cells construction
22:32:19 <ais523> I guess we should start with the following construction: two unbounded cells, plus one cell with a program-specified bound
22:32:25 <ais523> and try to prove that TC
22:32:29 <ais523> then try to get the bound as low as possible
22:36:05 <int-e> oh there's a feb 2015 version of the " Classic Nintendo Games are (Computationally) Hard" thing... let's see if they've fixed all the bugs I know about :P
22:39:45 <int-e> http://arxiv.org/abs/1203.1895
22:40:25 <ais523> let's see how many bugs are fixed
22:41:37 <ais523> haha, they had to disallow total control TASes
22:44:51 -!- atrapado has quit (Quit: Leaving).
22:46:47 <int-e> Oh well, the problem I care about is still there.
22:50:07 <ais523> this construction proves PSPACE-hardness of Enigma (with no custom Lua used, it's obviously TC-hard if you're allowed to put an entire scripting language in there)
22:50:12 <int-e> (namely, in the crossover gadget for SMB, they do not consider the possibility of crossing it vertically as Supermario, leaving at the top, finding a Goomba, and returning as Mario to complete the gadget as if it were crossed horizontally.)
22:50:19 <ais523> however, I think there's a decent chance that idealized Enigma is uncomputable
22:50:46 <ais523> int-e: there are lots of bugs in crossovers in that paper, I think
22:51:01 <ais523> because they don't allow for "unusual" intended things the player can do
22:51:14 <int-e> the SMB one is the only one I've thought about in some detail; not actually knowing most of the games doesn't help :P
22:51:58 <ais523> I know most of the games
22:56:06 <ais523> int-e: at least the crossover bug you've seen, while valid, is easily fixable
22:56:19 <ais523> you can connect a large drop onto the top of the gadget, so that it's impossible to enter from above
22:56:37 <int-e> but I mailed them about it and they didn't fix it, which annoys me a bit
22:57:03 <ais523> we should clearly write a paper that's just full of corrections to that paper
23:00:11 <ais523> oh wow is the crossover for SMW broken
23:00:42 <ais523> approach from the top, break the top row of bricks, then crouch-slide to the left
23:00:58 <ais523> this is assuming you can cancel a spin jump; if it can't be cancelled then it probably works
23:01:08 <ais523> you'd have to block Mario carrying a Koopa shell all the way to the gadget but that seems doable
23:05:08 <int-e> the irony is that compared to v1, they already protected one of the entries of the vertical passage by a one-way device... but not the other one
23:07:04 <ais523> I haven't noticed a problem in SMB3 (assuming you can't carry koopa shells in that game), and SMW seems to work if you can't cancel a spin jump there
23:07:07 <int-e> I don't understand why they don't use the crouch-sliding protection from the SMB device in the SMW one as well.
23:08:09 <ais523> ah, I think their plan is that there isn't enough run-up room to crouch-slide
23:09:59 <shachaf> I never played Mario. Maybe I'm missing out.
23:10:10 <shachaf> In fact I don't think I ever played any Nintendo games.
23:10:24 <ais523> I believe the DKC construction works also for DKL1, DKC2, DKC3, and DKC Returns (probably also Tropical Freeze but I don't know enough about that game to be certain)
23:10:49 -!- hppavilion[1] has joined.
23:11:04 <ais523> well, most Mario games are mostly about input precision
23:11:09 <ais523> and are quite easy if played slowly
23:11:19 <ais523> (playing them faster reduces your reaction times)
23:11:30 <ais523> sometimes they also have a sub-theme of working out routes through the level
23:11:35 <ais523> *reduces the time you have to react
23:11:51 <ais523> the exception is in the 3D games, which are quite different in how they work
23:12:03 <hppavilion[1]> I think one of its features has been done before, unfortunately
23:13:11 <ais523> hmm, their description of "all Donkey Kong games" seems wrong
23:13:14 <int-e> mmmmm, "Lemmings is PSPACE-complete"... something to dream about, good night
23:13:33 <ais523> that wouldn't work for Donkey Kong Country Returns, because a) it has no Zingers (for copyright reasons, IIRC), and b) both Kongs can take two hits
23:13:37 <ais523> trivially fixable, though, I think
23:14:16 <hppavilion[1]> Phantom_Hoover: Surreals in general or their usage in this BF derivative?
23:15:42 <hppavilion[1]> Phantom_Hoover: Well, all BF commands behave as normally, for starters
23:16:04 <hppavilion[1]> < and > move the tape to the left and to the right
23:16:24 <hppavilion[1]> But the unicode arrow equivalents move it an /infinite number of cells/ to the left and to the right
23:16:44 <hppavilion[1]> I think that a different set of unicode arrows will move infinitesimally
23:16:51 <Phantom_Hoover> the surreals are so big they're a proper class, not a set
23:17:23 <Phantom_Hoover> any language consisting of finite programs in a finite alphabet can only access countably many cells
23:17:24 <ais523> err, hmm, I'm not convinced that the DKC1 door construction works, e.g. I think you could just grab the Tire and throw it entirely out of the area when entering from the Open side
23:17:32 <ais523> unless I forget how Tires work in that game
23:17:32 <hppavilion[1]> (Not surreals in this case so much as the sum of surreals, so your location has a real, an infinite, and an infinitessimal part)
23:18:27 <hppavilion[1]> Phantom_Hoover: I'm implementing it in python, where I'll be able to use dictionaries instead of just an array.
23:18:30 <Phantom_Hoover> i'm sort of being an asshole here, it's clear what you actually mean but it ain't the surreals
23:18:55 <Taneb> Ugh, I have to get up early and I am so tired
23:19:01 <Taneb> But I have a load of laundry on
23:19:32 <Phantom_Hoover> what you're describing sounds a lot like lexicographic order
23:20:18 <Phantom_Hoover> you have a move left instruction, and a move left infinity instruction
23:20:44 <Phantom_Hoover> why can't this just be modelled with move left and move up
23:21:03 <Taneb> It's closer to the gaussian integers
23:21:54 <Phantom_Hoover> the surreals have nothing to do with what you're describing
23:23:04 <Taneb> You can't just take a definition in mathematics and pretend that it means something that it really doesn't
23:23:09 <Taneb> That's not how mathematics works
23:23:12 <Taneb> It's not how anything works
23:23:18 <Taneb> It's just being wrong
23:23:23 <hppavilion[1]> Taneb: No, I mean that I'm going to change the way my BF derivative works to make it fit
23:23:48 <Phantom_Hoover> i don't really care that you're wrong, i care that there's an easy way to be right and you're overlooking it
23:24:11 <Taneb> As Phantom_Hoover said, you can only access a countably finite number of cells
23:24:14 <hppavilion[1]> Phantom_Hoover: Not using the surreal numbers you mean?
23:24:38 <Phantom_Hoover> if you have < and > to move left and right, and <' and >' to move left and right by infinity, this behaves exactly the same way as having < and > to move left/right and ^ and v to move up/down
23:25:20 <hppavilion[1]> Taneb: I know, I know, I'm going to do it by using a sub... thing of the surreals. You can only access a countably finite number of BF cells normally, and BF is limited to the integers.
23:25:37 <hppavilion[1]> Phantom_Hoover: I know, I know. I'm working on making a better definition
23:26:22 <hppavilion[1]> Phantom_Hoover: OK. So how can I at least emulate using the surreals in a BF-like program?
23:27:18 <Phantom_Hoover> you'd have to have some way to run > infinity times, then do some stuff after
23:27:55 <hppavilion[1]> I mean, I can't literally do > infinity times, but I can pretend I do for the programmer's sake
23:28:15 <Phantom_Hoover> well you run up against the halting problem and thomson's lamp here
23:28:36 -!- Patashu has joined.
23:30:33 <hppavilion[1]> Phantom_Hoover: Is there a way I can /pretend/, for a programmer's sake, that I'm using Surreal Numbers
23:31:38 <Phantom_Hoover> what might be possible* is that you could hobble the language enough that you can reliably take the limit of a program as it runs forever, then add more computational power through transfinite operations
23:32:02 <Phantom_Hoover> *you'll need to do a lot more research, you're pretty confused about infinity right now
23:32:32 <ais523> Phantom_Hoover: "thomson's lamp"?
23:33:02 <ais523> I did that to Agora once
23:33:11 <hppavilion[1]> Your creepy friend that stalks you, granted. But still your friend. You have bad choices in friends.
23:34:53 <ais523> I also used that to fix a misconception I had with Banana StackFlow
23:35:26 <ais523> (I'm trying to figure out M:tG's computational class: it's clearly above TC but it's unclear how far above, and in particular, whether it's capable of solving its own halting problem)
23:36:02 <Phantom_Hoover> hppavilion[1], flash quiz: what's aleph one, what's beth one, and are they the same?
23:36:34 <ais523> "Moreover, Samus cannot traverse from the Check path down to the literal wires because she would have to jump and morph in mid-air." yes but you can do that in Super Metroid, that is an intended game mechanic
23:36:41 <ais523> Phantom_Hoover: haha ;-)
23:37:00 <ais523> strangely enough, my intuitive feeling is that I know what aleph 1 is, but don't know what beth 1 is
23:37:08 <hppavilion[1]> Oh. I thought the hyperreals were just a 3-dimensional number, where one of the extra axes is infinity and the other is the infintessimal.
23:37:19 <ais523> (I mean, I know the definitions, this is more about an understanding of what "numbers" they represent)
23:38:02 <Phantom_Hoover> it still seems crazy to me that anyone talks about aleph 1 like it's a definite, friendly thing
23:38:20 <ais523> well, it's a definite, clearly defined thing
23:38:23 <ais523> it just has insane properties
23:39:13 <ais523> oh hmm, they have a cop-out fix for Super Metroid
23:39:38 <ais523> claiming that the constructions are broken by additional game mechanics but can be easily fixed, but not saying how
23:41:42 <ais523> the Pokémon construction requires the player's Pokémon to be level 100; otherwise it can conceivably screw up the construction via learning moves through level up
23:45:30 <ais523> the NP proof there is broken in Gold/Silver and later, though, due to the existence of Leftovers which can outheal Struggle (although it's easily fixable in Gold/Silver/Crystal, I am less certain about Ruby/Sapphire onwards)
23:46:21 <ais523> actually, there's this build known as "FunBro" whose only purpose is to make the battle last indefinitely long
23:46:32 <ais523> the idea being that eventually your opponent gives up and concedes
23:48:51 -!- Tod-Autojoined has changed nick to TodPunk.
23:52:40 <FireFly> ais523: how is M:tG clearly above TC?
23:52:53 <ais523> FireFly: the infinite loop + subgame rules, combined
23:53:27 <ais523> basically, you can create a potentially infinite loop in a subgame, then inspect the life totals in the main game to see whether the subgame was automatically declared a draw or not
23:53:35 <ais523> in order to solve the halting problem
23:53:45 <FireFly> Hm, are there non-(un-) cards with subgames? (sorry, I've only played a bit of M:tG)
23:53:54 <ais523> Shahrazad, but it got banned from every format
23:54:13 <ais523> mostly because people were playing it recursively in a method to stall out a game
23:54:21 <ais523> *as a method to stall out a game
23:54:40 <FireFly> Hmm, that is interesting though, yeah
23:56:37 <ais523> hmm, now I wonder if you can create a communications channel from a subgame to a main game whose size isn't bounded in advance
23:56:59 <ais523> I don't think so; you can wish cards out of the main game, but I don't think wishes work on tokens
23:57:07 <ais523> meaning you'd be bounded by the size of the deck
23:58:03 <Phantom_Hoover> hppavilion[1], anyway, if you're still reading, it's cool that you're interested in this stuff, you just need to read more and better sources
23:58:51 <Phantom_Hoover> i regret that i can't recommend anything specific but there must be dozens of good explanations of cantor's groundwork by now
23:58:59 <hppavilion[1]> Phantom_Hoover: I know, I'm currently reading as much as I can on Surreals