←2017-12-16 2017-12-17 2017-12-18→ ↑2017 ↑all
00:00:27 <oerjan> my intuition is that it is complete.
00:02:52 -!- hkgit03 has quit (Quit: Leaving).
00:02:59 <oerjan> i don't see why 2^(kn) is needed, the size of the binary string should be enough...
00:03:16 <oerjan> well i suppose it could make it easier.
00:08:38 <oerjan> it seems to me you can implement brainfuck with a finite number of LB cells
00:08:59 <oerjan> um
00:09:25 <oerjan> only +, not -, but that should be possible to deal with
00:10:22 <int-e> you get - modulo a given constant.
00:10:46 <oerjan> yes but you would want it modulo the input bound
00:11:13 <int-e> input is read into constants
00:11:31 <oerjan> in that case you don't get it
00:11:43 <oerjan> not immediately
00:12:11 <oerjan> hm probably a simple loop
00:12:13 <int-e> start with (n,n+1), increment both until the latter becomes divisible by the bound.
00:12:17 <oerjan> right
00:13:06 <oerjan> hm it should be possible to calculate 2^n from the input
00:13:25 <oerjan> with a loop that doubles until you hit it
00:13:51 <oerjan> hm but it won't be a constant that way
00:14:34 <oerjan> otoh you can test for even-ness, so you can probably test for 2^n division with a loop
00:15:30 <oerjan> (the control flow of the language is a bit weird though, hopefully nothing seriously limiting)
00:16:30 <oerjan> flags are easy.
00:17:12 <oerjan> and the if ... if else thing is good for enforcing several conditions for a command
00:17:32 <int-e> actually negation is the easier primitive (you can clear values modulo C (increment until divisible by C). To negate, start with (n,0) and incrment to (0,-n)).
00:18:15 <int-e> (in order to start with (n,n+1), one would have to copy a counter...)
00:19:02 <oerjan> @tell ais523 int-e and i are getting pretty convinced BuzzFizz _is_ LBA complete.
00:19:02 <lambdabot> Consider it noted.
00:19:38 <function> @tell lambdabot that I want it to be circular
00:19:38 <lambdabot> Nice try ;)
00:19:40 <function> :(
00:19:40 <function> lambdabot: no like me
00:19:46 <function> or its just slow
00:19:57 <function> or that's a human responding
00:20:02 * function confused
00:20:14 <oerjan> function: that's one of its standard replies
00:20:22 -!- augur_ has quit (Remote host closed the connection).
00:20:31 <oerjan> it looked fast to me, you may be lagged.
00:22:05 <oerjan> int-e: so it has plenty of arithmetic (with negation, multiplication should also be a breeze)
00:22:27 <zzo38> If you write "else if" is the else flag then set afterward?
00:23:25 <int-e> oerjan: and the else: isn't needed for all this. (In fact it makes arbitrary flow control harder, since the natural way of doing that is to add a flag for every basic block)
00:25:09 <Roger9> function ()
00:25:12 <oerjan> zzo38: hm that seems a bit weird.
00:25:38 * function executes Roger9
00:26:06 * Roger9 passes control flow to oerjan
00:26:08 <oerjan> int-e: oh right you can nest ifs
00:31:53 <oerjan> zzo38: http://nethack4.org/esolangs/buzzfizz/buzzfizz.y seems to imply so
00:33:08 <zzo38> OK
00:35:13 <oerjan> (it gets compiled into if ($else) { ... } $else = 1; )
00:35:45 <zzo38> Yes I saw that
00:36:54 <oerjan> oh and the divisions are perl %
00:37:06 <oerjan> `perl -e print (1%0);
00:37:07 <HackEgo> Illegal modulus zero at -e line 1.
00:37:14 <oerjan> so it will error
00:37:44 <oerjan> `perl -e print !(1%0);
00:37:45 <HackEgo> Illegal modulus zero at -e line 1.
00:43:48 <zzo38> What if you have multiple BuzzFizz programs piped together?
01:04:03 -!- Soni has quit (Ping timeout: 256 seconds).
01:04:53 -!- oerjan has quit (Quit: Nite).
01:05:13 -!- Soni has joined.
01:19:22 -!- boily has joined.
01:20:51 <boily> bonsœirjan!
01:20:56 <boily> QUINTHELLOPIA!
01:20:58 <boily> helloochaf.
01:36:17 <Aquenaton> bit brushes!!! \o/
01:40:17 -!- function has changed nick to trout.
01:44:58 * Roger9 eats trout
01:45:04 * trout bites Roger9
01:51:57 -!- sprocklem has quit (Ping timeout: 264 seconds).
01:58:49 -!- ais523 has joined.
02:12:51 <quintopia> coily
02:17:16 -!- sleffy has joined.
02:22:13 <boily> Aquenaton: Aquenatellon. bit brushes?
02:22:28 <boily> Rellogellor9, trellout.
02:26:19 -!- trout has quit (Quit: /dev/null is full).
02:27:17 -!- Aquenaton has left.
02:29:00 -!- variable has joined.
02:52:41 -!- boily has quit (Quit: NAÏVE CHICKEN).
03:04:19 -!- Phantom_Hoover has quit (Remote host closed the connection).
03:20:02 -!- sprocklem has joined.
03:24:40 <zzo38> The description for Unnecessary says that any valid program is a null program and is also a quine, but I am not so sure. Null program mean it has zero length; if it doesn't exist then it has not any length whether zero or otherwise. The quine is same problem.
03:26:14 <zzo38> Do you believe me or not?
03:27:23 <quintopia> not.
03:27:50 <quintopia> there is a difference between an empty file and a nonecistent file
03:28:08 <quintopia> only one of them can be listed in a directory
03:28:21 <quintopia> only one of them has a name
03:28:51 <zzo38> Yes, that is true, but it does not seem to have to do with what I mentioned
03:34:58 -!- ais523 has left ("sorry for my connection").
03:35:03 -!- ais523 has joined.
03:35:25 <ais523> in Unnecessary the program must be nonexistent, rather than empty
03:35:33 <ais523> however, it's not clear what it means for a program to generate nonexistent output
03:35:35 <ais523> maybe it should crash?
03:35:57 <variable> produce zero bytes?
03:36:27 <ais523> @message oerjan I'm far from certain it isn't LBA-complete; it would be surprising, but in a good way; it's confusing because it takes input in a different way from most LBAs
03:36:27 <lambdabot> Maybe you meant: messages messages-loud messages?
03:36:33 <ais523> @tell oerjan I'm far from certain it isn't LBA-complete; it would be surprising, but in a good way; it's confusing because it takes input in a different way from most LBAs
03:36:33 <lambdabot> Consider it noted.
03:36:40 <ais523> variable: that's empty output, not nonexistent output
03:36:52 <ais523> perhaps it should close stdout? delete stdout?
03:37:03 <ais523> deleting stdout is actually a meaningful operation on UNIX, sometimes, although you may well not have permission for it
03:37:49 <zzo38> Making producing nonexistent output is easily enough without changing the implementation; simply to define Unnecessary as having no I/O.
03:38:41 <zzo38> The fact that the interpreter is connected to stdout is not a feature of the programming language.
03:40:27 <ais523> hmm, I suspect it's possible to multiply numbers in BuzzFizz, at least as long as you only want to print the output
03:40:29 <ais523> can an LBA do that?
03:40:50 <zzo38> ais523: I don't know. Did you write a program to multiply numbers?
03:41:27 <esowiki> [[BuzzFizz]] M https://esolangs.org/w/index.php?diff=53634&oldid=53633 * Ais523 * (+18) /* Syntax */ minor fix to an ambiguous description
03:41:45 <ais523> zzo38: not yet but I think I know what it would look like
03:43:18 <variable> ais523: an LBA is strictly greater than a 2DFA
03:43:24 <variable> 2 DFA has been shown to be able to multiple numbers
03:43:31 <variable> so an LBA can multiply
03:43:56 <variable> https://dl.acm.org/citation.cfm?id=1740257
03:44:16 <ais523> variable: oh, duh, of course
03:44:22 <ais523> I was thinking there might not be room for the answer but of course there is
03:45:05 <ais523> you'd have to do it a digit at a time in most LBAs because they couldn't read the entire answer at once, but that's not really a problem, there's no rule saying you /can't/ do it a digit at a time
04:36:39 -!- moony has joined.
04:38:23 -!- sprocklem has quit (Ping timeout: 248 seconds).
05:27:51 -!- variable has quit (Quit: Found 1 in /dev/zero).
05:32:22 -!- sprocklem has joined.
06:28:22 -!- doesthiswork has quit (Quit: Leaving.).
06:52:34 -!- moony has quit (Quit: Leaving).
07:54:57 -!- moony has joined.
09:02:53 -!- sleffy has quit (Ping timeout: 256 seconds).
09:08:36 -!- tromp has quit (Remote host closed the connection).
09:21:32 -!- tiny881 has joined.
09:21:32 -!- tiny881 has quit (Remote host closed the connection).
09:22:22 -!- tromp has joined.
09:28:44 -!- AnotherTest has joined.
09:32:29 -!- zseri has joined.
09:32:46 -!- spazzo589 has joined.
09:32:48 -!- spazzo589 has quit (Remote host closed the connection).
09:41:10 -!- trashmet980 has joined.
09:41:14 -!- trashmet980 has quit (Remote host closed the connection).
09:52:28 -!- zarish-pa333 has joined.
09:52:40 -!- zarish-pa333 has quit (Remote host closed the connection).
10:14:43 -!- Cale has quit (Remote host closed the connection).
10:34:11 -!- kritixilithos has joined.
10:50:01 -!- kritixilithos has quit (Changing host).
10:50:01 -!- kritixilithos has joined.
10:52:57 -!- kritixilithos has quit (Read error: Connection reset by peer).
10:53:27 -!- kritixilithos has joined.
10:53:39 -!- kritixilithos has quit (Changing host).
10:53:39 -!- kritixilithos has joined.
11:01:48 -!- zseri has quit (Quit: Leaving).
11:26:17 -!- xkapastel has quit (Quit: Connection closed for inactivity).
11:27:53 -!- sprocklem has quit (Quit: WeeChat 2.0).
11:28:08 -!- sprocklem has joined.
11:30:38 -!- sebbu has quit (Ping timeout: 272 seconds).
11:31:16 -!- Lymia has quit (Ping timeout: 272 seconds).
11:33:37 -!- Lymia has joined.
12:05:30 -!- erkin has joined.
12:37:22 -!- variable has joined.
12:37:48 -!- sebbu has joined.
12:46:04 -!- Phantom_Hoover has joined.
12:46:04 -!- Phantom_Hoover has quit (Changing host).
12:46:04 -!- Phantom_Hoover has joined.
13:00:32 -!- moony has quit (Ping timeout: 265 seconds).
13:02:56 -!- boily has joined.
13:02:57 -!- variable has changed nick to constant.
13:06:42 -!- zseri has joined.
13:20:41 -!- jaboja has joined.
13:22:06 -!- kritixilithos has quit (Ping timeout: 272 seconds).
13:24:34 <boily> `5 w
13:24:39 <HackEgo> 1/2:thé//Thé is an oddly-spelled hot beverage popular in the Commonwealth. \ apt-get//apt-get installs whatever you wanted, plus whatever Mark Shuttleworth wanted. \ atriq//atriq or two \ rhubarb//Rhubarb rhubarb rhubarb, rhubarb: rhubarb rhubarb? Rhubarb, rhubarb, rhubarb rhubarb. \ termite//Termites are genericized ants for intellectu
13:24:40 <boily> `n
13:24:41 <HackEgo> 2/2:al property reasons.
13:25:30 -!- LKoen has joined.
13:28:31 -!- Guest6549 has joined.
13:30:58 -!- Slereah_ has quit (Ping timeout: 272 seconds).
13:31:10 -!- zseri has quit (Quit: Leaving).
13:39:04 -!- kritixilithos has joined.
13:39:13 -!- kritixilithos has quit (Changing host).
13:39:13 -!- kritixilithos has joined.
13:40:27 -!- Melvar has quit (Ping timeout: 240 seconds).
13:41:08 -!- idris-bot has quit (Ping timeout: 255 seconds).
13:47:39 -!- potato44 has joined.
13:49:39 -!- potato44 has quit (Client Quit).
13:49:49 -!- constant has quit (Quit: Found 1 in /dev/zero).
13:51:03 -!- potato44 has joined.
13:55:14 -!- Melvar has joined.
13:59:28 -!- ais523 has quit (Ping timeout: 272 seconds).
14:00:30 -!- doesthiswork has joined.
14:07:44 -!- potato44 has quit (Ping timeout: 260 seconds).
14:17:02 -!- Vampz has joined.
14:17:13 -!- Vampz has left.
14:23:14 <int-e> . o O ( argh. )
14:25:55 -!- LKoen has quit (Remote host closed the connection).
14:29:19 <Taneb> int-e, you OK?
14:30:52 <int-e> Yeah, I'm fine. Just feeling stupid for producing an unsolvable megaminx configuration because I forgot about the permutation parity.
14:32:31 <int-e> (I had this, http://int-e.eu/~bf3/tmp/d.svg ... and I noticed the parity problem when I reached the final face on the real thing :P)
14:35:03 <int-e> (the question I'm investigating is whether it's possible to have 11 distinct colors on each of the 12 sides)
14:45:19 -!- wob_jonas has joined.
14:45:50 <int-e> in any case this got a little out of hand... I guess I've already spent about 8 hours on this now.
14:46:16 <wob_jonas> Anyway, the upgrade has changed some settings that I left on default and I will have to set up, but the only big problem found so far is that twice I got locked up when switching away from an X11. Might be some driver problem.
14:46:33 <wob_jonas> How are you guys?
14:51:15 <boily> wellob_jonas!
14:51:40 <boily> int-ello!
14:51:42 <boily> Tanelle!
14:52:04 <int-e> oh well. next try... http://int-e.eu/~bf3/tmp/d2.svg
14:53:35 <boily> int-e: what are those shiny shapes?
15:08:12 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
15:09:13 -!- wob_jonas has joined.
15:11:25 -!- wob_jonas has quit (Client Quit).
15:12:13 -!- variable has joined.
15:12:41 -!- wob_jonas has joined.
15:12:57 -!- wob_jonas has quit (Client Quit).
15:14:12 -!- jaboja has quit (Ping timeout: 272 seconds).
15:33:48 -!- danieljabailey has quit (Ping timeout: 246 seconds).
15:34:47 -!- LKoen has joined.
15:35:29 <int-e> boily: it's supposed to be a (reachable) megaminx configuration with all sides consisting of distinct colors, but I still have an odd permutation for the corners...
15:38:22 -!- danieljabailey has joined.
15:44:14 <int-e> okay, I identified my mistake...
15:45:17 * boily wonders what in fungot's name is a megaminx...
15:45:17 <fungot> boily: and the lack of clarity
15:45:38 <int-e> @google megaminx
15:45:38 <lambdabot> https://ruwix.com/twisty-puzzles/megaminx-gigaminx-teraminx-petaminx/
15:45:42 <boily> oh! it's a d12 rubik!
15:49:18 * ATMunn tries to understand how to code in jelly
15:49:21 * ATMunn fails miserably
15:51:35 <int-e> So... let's be brutal (O(n^4) size encoding for even permutations of n elements...) and try again.
15:52:03 * ATMunn resorts to poking fungot
15:52:03 <fungot> ATMunn: okay...... not all of them
15:52:20 -!- moony has joined.
15:53:09 -!- wob_jonas has joined.
15:54:27 <wob_jonas> Ah, it's a megaminx configuration. Makes sense. I was wondering what that colored dodecahedron was.
15:55:11 <wob_jonas> Also, my go-to link would be https://www.jaapsch.net/puzzles/megaminx.htm
15:58:16 <int-e> maybe now it's finally correct? http://int-e.eu/~bf3/tmp/d3.svg
16:03:33 <wob_jonas> int-e: this would be easier if you just showed it on a physical megaminix that I could turn in my hand. it's hard to understand the config from a screen
16:09:11 <quintopia> helloily
16:09:49 <moony> belloily
16:09:56 <moony> behily
16:10:01 <moony> helloily
16:10:08 <quintopia> mhellony
16:10:12 <moony> boily!
16:10:13 <quintopia> o
16:11:20 <boily> QUINTHELLOPIA!
16:11:23 <boily> mhelloony!
16:11:32 * ATMunn wants to make an esoteric language and then write an interpreter for it
16:11:34 * ATMunn does so
16:11:47 <quintopia> good on you
16:11:58 <boily> ATMellonn. is it a purply language?
16:11:58 <moony> quintopia, challange: say hello to ATMunn like you do everyone else
16:12:18 <ATMunn> purply?
16:12:28 <moony> ATMunn, 'purple colored'. Don't ask.
16:12:34 <ATMunn> ok :P
16:12:45 <quintopia> hey everyone else! whats your language going to be about?
16:13:23 <moony> chickens
16:13:33 <ATMunn> (I may or may not end up posting about it here, don't expect it to be anything to profound or new though :P)
16:13:43 <quintopia> i wasnt talking to you moony
16:15:07 <quintopia> ATMunn: are you saying it will be a brainfuck derivative? that is a very popular way to make not new things
16:15:30 -!- bashrc has joined.
16:17:05 <moony> We already have so many brainfuck derivatives that there are no niches left to fill.
16:17:14 <boily> you'd be surprised.
16:17:38 <moony> not until we get meta brainfuck
16:17:44 <ATMunn> I was thinking a while ago about making a taxi-like language (but with a different "theme")
16:17:45 <moony> (With a real implementation)
16:18:17 <ATMunn> quintopia: nah I don't care much for bf
16:18:30 <ATMunn> idek how to write a program in it
16:19:12 <LKoen> it's pretty straightforward, it's an imperative language
16:19:22 <quintopia> oh its easy. you just strimg together +-<>[]., add pepper to taste
16:20:08 -!- boily has quit (Quit: FATHCER CHICKEN).
16:20:23 <ATMunn> yeah, I'm aware that it's not hard
16:20:34 <ATMunn> I just don't have much of an interest in it
16:21:20 <quintopia> youndont have to have an interest in it. you just use it as a way to scratch some other itch
16:22:48 <ATMunn> well anyways, I'm aware that there are about a million derivatives of it out there, so I certainly won't add to them
16:25:32 <moony> bf_derivatives.bind(Number.add, [1]).call(ATMunn);
16:25:50 <ATMunn> lol
16:29:49 -!- bashrc has quit (Ping timeout: 265 seconds).
16:35:47 -!- kritixilithos has quit (Ping timeout: 268 seconds).
16:45:53 -!- kritixilithos has joined.
16:45:53 -!- kritixilithos has quit (Changing host).
16:45:53 -!- kritixilithos has joined.
16:47:39 <wob_jonas> Let's start a Btjzxgquartfrqifjoust ring!
16:52:34 <int-e> okay, finally it worked out.
16:53:18 <int-e> wob_jonas: well, *now* I have a physical version of that configuration.
16:55:15 <wob_jonas> int-e: great.
17:22:40 <int-e> wob_jonas: http://int-e.eu/~bf3/tmp/d/
17:23:48 <int-e> (blurry photos but the idea is that the first series corresponds to the left half of the diagram (top of the dodecahedron) and the second series to the right side (bottom)
17:27:06 -!- xkapastel has joined.
17:45:46 -!- anarki1911 has joined.
17:51:41 <wob_jonas> int-e: nice
17:51:58 <wob_jonas> Is that a stickerless miniminx?
17:52:28 <int-e> yeah
17:52:33 <int-e> well, hmm
17:52:34 <int-e> mini?
17:52:41 <wob_jonas> megaminx, whatever
17:52:51 <wob_jonas> I don't follow how all these puzzles are called
18:04:08 -!- moony has quit (Quit: Leaving).
18:09:37 -!- anarki1911 has quit (Remote host closed the connection).
18:31:21 -!- sleffy has joined.
18:33:42 -!- fnodeuser has quit (Ping timeout: 272 seconds).
18:34:02 -!- fnodeuser has joined.
18:46:28 -!- Phantom_Hoover has quit (Remote host closed the connection).
19:02:19 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
19:04:38 -!- Cale has joined.
19:27:04 -!- variable has changed nick to function.
19:27:12 -!- moony has joined.
19:32:13 -!- Phantom_Hoover has joined.
19:38:27 -!- function has quit (Quit: Found 1 in /dev/zero).
19:45:33 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
19:45:37 -!- kritixilithos has quit (Quit: leaving).
19:53:32 -!- Phantom_Hoover has joined.
20:04:26 -!- hkgit03 has joined.
20:28:38 -!- oerjan has joined.
20:30:41 <oerjan> @messages-loud
20:30:41 <lambdabot> ais523 said 16h 54m 7s ago: I'm far from certain it isn't LBA-complete; it would be surprising, but in a good way; it's confusing because it takes input in a different way from most LBAs
20:42:12 -!- ais523 has joined.
20:42:47 -!- Guest6549 has changed nick to Slereah_.
20:57:29 -!- variable has joined.
21:08:25 <oerjan> ais523: if you have a Turing tape with useable length l and k cell values, then you can give BuzzFizz the input as the two values k^l and the-data-in-base-k, the combined size is linear in the turing tape input, and you can do an emulation of the bounded tape with two bounded registers (mod k^l).
21:08:55 <oerjan> s/data/input tape/
21:09:50 <oerjan> (k is a true constant so the program can depend on it.)
21:10:47 <ais523> oerjan: it's not immediately obvious how to extract digits in base k, but I wouldn't be surprised if there were some way
21:11:07 <oerjan> you can divide by k in a loop
21:11:40 <ais523> oh, because k is a constant, you can repeatedly loop from 1 up to k and subtract each time
21:11:51 <ais523> and the big advantage of having k^l as an input is that subtraction is a meaningful operation then
21:12:11 <ais523> or, actually, no
21:12:15 <ais523> you can subtract general integers
21:12:16 <oerjan> i don't think you strictly _need_ k^l as an input, but it makes things simpler
21:12:28 <ais523> loop up to the lower one, then start counting as you loop up to the higher one
21:12:58 <oerjan> yeah that's pretty much like int-e found out yesterday
21:14:02 <ais523> this language is unintuitive in the reverse way to normal
21:14:10 <oerjan> how so?
21:14:19 <ais523> instead of things that seem easy turning out to be hard, things that seem hard/impossible turn out to be doable in a fairly straightforward way
21:14:26 <oerjan> heh
21:14:38 <ais523> the "you have to have a counter on one side of \ and a constant on the other side" feels much more restrictive than it actually is
21:14:57 -!- variable has quit (Quit: Found 1 in /dev/zero).
21:18:07 <oerjan> meanwhile, i determined one thing about countercall
21:18:38 <ais523> I'm interested, more countercall knowledge sounds like a good thing
21:18:43 <oerjan> call a sequence of commands "clamped" if there's an upper bound to what values it can halt with.
21:18:43 <ais523> that seems to have caught many people's imaginatinos
21:18:52 <ais523> oerjan: what values of the counter, that is?
21:18:55 <oerjan> yes
21:20:21 <oerjan> then clamped sequences are infectious: any command sequence referring to one, including inside a function, is also clamped.
21:22:52 <ais523> ooh, that violates my intuition somewhat, but assuming that's correct the language probably isn't TC
21:23:20 <oerjan> note that this doesn't disallow sequences from not halting.
21:24:40 <oerjan> to prove this, it helps to have another more obvious fact:
21:25:29 <oerjan> for any command sequence there exists constants n and k such that if the initial counter is <=n, then the effect of the sequence is to add k to it.
21:26:27 <oerjan> (proof: n is -number of top-level + in the sequence, k is the +es - the -es.)
21:26:57 <oerjan> (and no function gets to run then.)
21:27:55 <ais523> oerjan: yes, that's fairly clear
21:29:19 <oerjan> this means, in particular, that if A and B are command sequences, A is clamped with bound m and B has the n and k as above, then there are at most m+n output values of A that B does anything other than add k to.
21:30:30 <ais523> oerjan: there seems to be a sign error here somewhere
21:30:32 <oerjan> hum
21:30:37 <oerjan> yeah, m-n i guess
21:30:42 <ais523> OK, I'll buy that
21:31:49 <oerjan> those m-n values can only give m-n outputs of B, so there's a maximum; everything else becomes less than m+k, so A B is clamped.
21:32:08 <oerjan> (ignoring things that don't halt.)
21:32:30 -!- jaboja has joined.
21:33:04 <ais523> oerjan: right
21:33:06 <ais523> although, hmm
21:33:21 <ais523> it's not 100% clear what proportion of the code has to be in terminating functions
21:34:00 <oerjan> well if you go keymaker's route and emulate things while never halting...
21:34:15 * oerjan saying "things" alot
21:34:58 <ais523> you have to let the functions terminate sometime, otherwise it's a 1-counter machine
21:35:14 <oerjan> okay
21:35:50 <ais523> actually, hmm, I'm not sure if the clampedness is a problem after all
21:35:53 <ais523> this language is so infuriating
21:36:09 <oerjan> that A B is clamped if B is is trivial, as is f where f : B and B is clamped.
21:37:03 <oerjan> um
21:37:10 * oerjan checks syntax
21:37:20 <ais523> oerjan: imagine a recursive function that calls itself, then a clamped function, then increments the counter
21:37:28 <ais523> I don't see any reason why the return value is necessarily clamped
21:38:04 <oerjan> ok there wasn't any syntax to check
21:39:43 <oerjan> ais523: f : ... f ... g + then calling f will end up with g + as the last command run if f runs at all
21:40:12 <oerjan> so it will be clamped to at most one higher than g is
21:40:38 <oerjan> oh, and if it halts.
21:41:34 <oerjan> if there is a return value at all, it must pass through g.
21:42:32 <oerjan> and that's at the top level call of f, what happens recursively doesn't matter.
21:46:43 <oerjan> also, if any function _doesn't_ get to run that means things are already clamped at <= 0.
21:47:21 <oerjan> so you cannot avoid this by getting g not to run
21:47:29 <oerjan> or f itself
21:48:03 <oerjan> hum
21:48:20 <oerjan> *procedure
21:48:56 <oerjan> but the way countercall works it's pretty much functions mathematically
21:59:16 -!- moony has quit (Ping timeout: 260 seconds).
22:02:24 <ais523> oerjan: ah right
22:02:33 <ais523> in that case I strongly suspect that countercall isn't TC
22:02:47 <ais523> as that makes it very hard to restore the counter to the positives without everything going out of control
22:09:59 <oerjan> it does seem tricky
22:12:59 -!- jaboja has quit (Ping timeout: 265 seconds).
22:13:18 -!- variable has joined.
22:38:01 -!- moony has joined.
22:43:01 -!- variable has quit (Read error: Connection reset by peer).
22:45:26 -!- variable has joined.
22:55:57 -!- pelegreno_ has quit (Remote host closed the connection).
22:56:33 -!- LeoLambda has quit (K-Lined).
22:58:19 -!- LeoLambda has joined.
23:03:34 -!- hkgit03 has quit (Quit: Leaving).
23:05:44 -!- boily has joined.
23:10:39 -!- variable has quit (Read error: Connection reset by peer).
23:12:52 -!- variable has joined.
23:14:47 <quintopia> wboily
23:15:26 <boily> QUINTHELLOPIA!
23:15:36 <quintopia> what did?
23:16:29 <boily> I may have shuffled tiles <_<... >_>'...
23:16:35 <boily> I can stop whenever I want!
23:21:23 <quintopia> okay. but can you want to stop whenever you want?
23:22:32 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
23:22:33 * boily ponders
23:23:48 -!- poq has joined.
23:26:23 <boily> `relcome poq
23:26:24 <HackEgo> poq: 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 EFnet or DALnet.)
23:26:35 -!- xkapastel has quit (Quit: Connection closed for inactivity).
23:26:49 <poq> <3
23:27:07 * poq blows ion a kiss
23:27:35 -!- poq has left.
23:29:15 <boily> ooooooh! a drive-by ion licking!
23:29:20 <boily> haven't seen that in a while ^^
23:32:25 <ais523> oh wow, is that what relcome looks like?
23:32:35 * ais523 is reminded of why they turned off color in their IRC client originally
23:32:45 <ais523> other channels I'm in use it for more useful things than that :-D
23:33:19 <boily> his523. what kind of useful things it can be used for?
23:34:12 <ais523> colorcoded bot messages, most commonly
23:34:22 <ais523> i.e. the bot outputs a colored header explaining why it posted the message
23:34:30 <boily> oh.
23:35:33 <ais523> `relcome test
23:35:34 <HackEgo> test: 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 EFnet or DALnet.)
23:35:39 <ais523> oh, that's better
23:35:54 <ais523> (the yellow in my client was out of place compared to the other colors, I adjusted it tob e more consistent with them)
23:36:00 <ais523> I might need to make the blue a bit brighter too, I guess
23:36:17 <fizzie> ais523: The wiki recent changes are colored, FWIW.
23:36:36 <ais523> `relcome test
23:36:37 <HackEgo> test: 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 EFnet or DALnet.)
23:36:46 <ais523> aha, that's nicely readable
23:39:06 <ais523> well, apart from being really garish and rainbow-colored, but I guess that's what it's meant to do
23:44:17 <quintopia> `rElCoMe ais523
23:44:18 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: rElCoMe: not found
23:44:21 <quintopia> aw
23:44:51 <quintopia> `RELCOME ais523
23:44:52 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: RELCOME: not found
23:45:05 <quintopia> this is sadly lacking in formatting possibilitites
23:45:33 <boily> `` find -iname '*elcome*
23:45:33 <HackEgo> ​/hackenv/bin/`: eval: line 5: unexpected EOF while looking for matching `'' \ /hackenv/bin/`: eval: line 6: syntax error: unexpected end of file
23:45:39 <fizzie> quintopia: Just compose.
23:45:40 <boily> `` find -iname '*elcome*'
23:45:40 <fizzie> `` relcome | CaT
23:45:42 <HackEgo> 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 eFnEt Or DaLnEt.)
23:45:43 <HackEgo> ​./bin/Welcome \ ./bin/wElCoMe \ ./bin/velcome \ ./bin/autowelcome \ ./bin/WELCOME \ ./bin/welcome \ ./bin/relcome \ ./bin/WeLcOmE \ ./bin/welcome \ ./bin/ReLcOmE \ ./bin/rwelcome \ ./bin/elcome \ ./share/autowelcome_status \ ./.hg/store/data/autowelcome__status.i \ ./.hg/store/data/bin/_welcome.i \ ./.hg/store/data/bin/velcome.i \ ./.hg/store/d
23:46:03 <boily> `` find bin -iname '*elcome*'
23:46:04 <HackEgo> bin/Welcome \ bin/wElCoMe \ bin/velcome \ bin/autowelcome \ bin/WELCOME \ bin/welcome \ bin/relcome \ bin/WeLcOmE \ bin/welcome \ bin/ReLcOmE \ bin/rwelcome \ bin/elcome
23:46:28 <ais523> I'm amused that it's even possible to bold the name of an executable (although I know why it works)
23:46:34 <ais523> `welcome test
23:46:36 <HackEgo> test: 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 EFnet or DALnet.)
23:47:25 <quintopia> i guess i should have started on R instead of r
23:47:31 <quintopia> `ReLcOmE ais523
23:47:33 <HackEgo> AiS523: 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 eFnEt oR DaLnEt.)
23:47:48 <shachaf> If I joined a channel and got that message, I would not feel welcome
23:48:04 <quintopia> that proves its effectiveness
23:48:19 <ais523> none of our welcomes, other than `welcome and its translated variants, are actually any good for welcoming new people
23:48:26 <ais523> they're mostly just for annoying regulars
23:48:44 <ais523> HackEgo had so much potential – it was intended as an esolang-running bot that could be expanded to understand new esolangs
23:48:50 <ais523> and yet look what people ended up doing with it :-(
23:49:02 <quintopia> s/:-(/:-)/
23:49:27 <shachaf> `# :-(//`? shaventions
23:49:28 <HackEgo> Shaventions include: before/now/lastfiles, culprits, hog/{h,d}oag, le//rn, tmp/, mk/mkx, sled/sedlast, spore/spam/speek/sport/1/4/5, edit. Taneb did not invent them yet.
23:49:31 <ais523> at least there was actual ontopic conversation here today!
23:49:40 <shachaf> I think many of the shaventions are useful.
23:51:08 <quintopia> we have had ontopic conversation for several days straight ais523. it's nice in small doses.
23:52:20 <shachaf> At what point do you give up on topic prescriptivism and recognize that the topic is what people talk about?
23:53:02 <ais523> shachaf: if the channel has no connection to its topic then it's effectively equivalent to all other channels with no connection to its topic, up to its userbase
23:53:20 <shachaf> I don't think that's true.
23:53:34 <ais523> you can flip this around: I'm currently in nine different NetHack-related channels and we often move a NetHack-related conversation from one to another because it's getting offtopic for the specific channel
23:53:52 <ais523> and they have different userbases because some people care about some conversations and not others
23:53:53 <shachaf> I do that too, of course.
23:54:17 <ais523> anyway, this channel has always had some proportion of offtopic conversation that I've disliked
23:54:33 <ais523> sometimes it has offtopic conversation I'm fine with (e.g. general programming/computery stuff)
23:54:39 <ais523> but the ontopic conversation is why I'm here
23:54:49 <ais523> and in periods when ontopic conversation has been rare I just haven't joined at all
23:54:59 <ais523> there are plenty of places to discuss general programming/computery stuff, after all
23:55:20 <ais523> incidentally, something came up at work recently that I thought this channel might like, it's rather eso in spirit
23:55:32 <ais523> I was looking into whether it's possible to extend anonymous inner classes in Java
23:55:55 <ais523> in the end it turned out to be unnecessary, so I stopped looking into it, but it's an interesting/bizarre problem
23:56:04 <ais523> because sometimes they're generated as final, sometimes not
23:56:08 -!- AnotherTest has quit (Ping timeout: 240 seconds).
23:56:13 <shachaf> Well, if you have a lot of channel overlap with other people in the channel, it's different, of course.
23:56:25 <shachaf> Non-static inner classes in Java are kind of an odd construct.
23:56:34 <shachaf> I was surprised when I first learned how they work.
23:56:58 <ais523> shachaf: one thing I have discovered is that it's possible to extend a named inner class, even if it's both not-static and private (!)
23:57:03 <ais523> although you have to be in the same package
23:57:27 <ais523> you can't construct an object of the resulting derived class via the normal means, as you can't run a super constructor, but you can do it using deserialisation or the like
23:58:05 -!- Vorpal has quit (Ping timeout: 240 seconds).
←2017-12-16 2017-12-17 2017-12-18→ ↑2017 ↑all