00:12:02 -!- ais523 has quit (Quit: quit).
00:40:16 <zzo38> I think I had heard of experiments of programming languages with game controllers before, although I do not remember now what they are.
00:41:21 -!- Sgeo has joined.
00:44:39 <zzo38> Separate mode for command mode and insert mode like vi, might be one thing to help, maybe.
00:51:52 <korvo> Yep. That's a feature of the editors I'm thinking about, from games like Actraiser or Portal 2.
00:53:52 <zzo38> I wonder how well uxntal would work. Depending how many buttons on the game controller (uxn itself defines eight, the same as Game Boy or NES/Famicom).
01:15:33 -!- ais523 has joined.
01:16:11 <ais523> this is definitely an accessibility question, I think
01:17:47 <zzo38> How many buttons does your game controller have?
01:22:53 <ais523> zzo38: this is mostly a hypothetical, but I could obtain one with quite a lot of buttons if necessary
01:23:40 <ais523> a typical modern game controller has four shoulder buttons, a 4-directional d-pad, four face buttons, two analog sticks that can be pushed in to serve as an extra button, and some special-purpose buttons that would be hard to use for general input
01:25:36 <korvo> I'm mentally already at the bar, speedrunning. I'm imagining entering my name in Zelda 3 with a SNES controller.
01:39:24 <ais523> the game controller I currently own is a generic one designed to be able to emulate a playstation, xbox or gamecube controller
01:39:40 <ais523> although I haven't used it in a while
01:40:30 <ais523> (it also has a button to cause the analog sticks to be quantized as though they were d-pads, in case you want to emulate an older controller type like a game boy's)
01:41:05 <zzo38> Does it not already have a d-pad?
01:43:11 <ais523> yes, you can use that instead
01:43:17 <ais523> but the analog stick is in a better place to press
01:43:18 <korvo> I have a similar pad. A Logitech USB controller. I've got like four of them; they were popular at the time.
01:43:20 <ais523> the left one, at least
01:44:17 <ais523> I have realised that probably I write more comments than I do actual code, in my projects, so the main problem might be to have an efficient way to input text using a game controller
01:44:30 <ais523> the standard "move a cursor along a grid of letters" works to some extent but is extremely slow
01:47:56 <zzo38> If using it for a programming language, then possibly a separate mode might be used for ordinary text than for the programming code syntax. Comments is not the only things where you might do that though; there is also e.g. character strings (although some programs will not use many character strings)
01:50:47 <ais523> and many programs that do use character strings aren't storing human-readable text in them (although some are)
01:51:34 <zzo38> Yes, that is also a valid consideration
01:52:17 <ais523> I feel like for program code, something based around strong typing and syntax similar to that of Java methods would be helpful, so that you could get a fairly list of methods that were applicable to the type of the expression you had written so far
01:53:35 <ais523> actually I think an Emacs-like modal interface would work better than a vi-like one (the difference is that vi uses keypresses to change between modes, whereas an Emacs-like interface holds a key to enter commands and releases it to go back to the equivalent of insert mode)
01:55:30 <ais523> for English text, I suspect the best method involves choosing the word you want from a list of predictions, with the ability to enter an approximation to reorder the list based on a combination of prediction and similarity to the approximation
01:55:52 <ais523> most input methods that I've seen seem to boil down to that
01:56:10 <zzo38> Chording would be another idea, although I do not know how well that works with a game controller
01:56:24 <ais523> mobile phones use it, and most CJK input methods work like that too
01:56:26 <zzo38> (for the purpose of entering English text, I mean, rather than in general)
01:56:44 <ais523> chording works very well on a game controller as long as you aren't chording two face buttons or two opposite d-pad directions
01:57:34 <ais523> (the opposite directions are often blocked in hardware or software, whereas all game controllers I'm aware have hardware/software capable of chording face buttons but it's a physically difficult button combination to press)
01:57:35 <zzo38> Yes, but is it enough combinations when you exclude those combinations that don't work as well?
01:59:05 <ais523> it should be – if you exclude diagonals on the d-pad because they're hard to press accurately, you have 4×4×2⁴ combinations that chord a d-pad direction and face button and any number of shoulder buttons
02:00:41 <ais523> I feel like probably using only two of the shoulder buttons would be desirable if aiming for input speed, though, and not chording face buttons with d-pad because you would have to be careful to release both before pressing the next input
02:01:12 <zzo38> Some might be needed to switch modes (I think the Emacs will not work due to needing to enter different kind of text; in some cases the mode will switch automatically based on what command is entered in the program, but sometimes it is necessary to do so manually).
02:01:29 <zzo38> (If you have four shoulder buttons then it is possible to use other one for such a purpose, I suppose)
02:02:00 <ais523> so 8×2² which is 32 – enough for 26 letters and a few special cases (and the more difficult-to-enter combinations could use other buttons)
02:03:01 <ais523> I think this is totally doable and might actually be faster than a keyboard once you get used to it – but it also seems like it would be difficult to learn
02:03:09 <zzo38> There is 5-bit code such as Baudot code
02:03:32 <ais523> because the input mechanism would have to be learned from scratch, it would make sense to try to get it right first time, rather than ending up with a QWERTY situation
02:04:16 <zzo38> Yes, that seem it would be a good idea, but it might be difficult to do that.
02:05:28 <ais523> apparently some games have used 8 analog stick directions × 4 face buttons to produce a 32-option keyboard
02:06:10 <ais523> that's a clever idea to do chording, you don't have to worry about accidental orthogonal presses while trying to hit the diagonals because the position of the stick only matters when the face button is pressed
02:08:39 <ais523> I am not sure whether 8 is the right number of directions, an analog stick can theoretically distinguish between a very large number of directions but if you have too many a human can't hit them accurately
02:09:49 <ais523> one game I played a lot when I was younger made diagonal inputs easier to hit by using one of the shoulder buttons as a way to filter out orthogonal inputs, so that only diagonal ones would be accepted
02:09:53 <zzo38> More than eight is probably too difficult, and possibly more than four might be difficult (although maybe not); I think using buttons is probably easier, even though there are less combinations (but diagonals will be possible)
02:10:14 <ais523> that might mix well with an "8 directions on the analog stick" approach – you could have ambiguous inputs be interpreted as orthogonal if not holding the button and diagonal if holding the button
02:10:42 <zzo38> Yes, that might work
02:11:09 <zzo38> (although that is for when directions are needed, e.g. in a game; for text input it does not seem relevant since you can use the button combinations directly instead)
02:14:51 <korvo> Gonna take this question to the bar and see if folks have any interesting examples. Back in a few hours. Peace.
02:27:22 * ais523 measures their own typing speed with QWERTY, as a baseline
02:27:29 <ais523> it's around 450 characters per minute, it seems
02:27:43 <ais523> so 7.5 characters a second
02:27:49 <ais523> it may be hard to match that with a game controller input
02:27:57 <ais523> (this was tested on easy, common words)
02:28:36 <ais523> this is much faster than the average person but considerably slower than people who actively aim for typing speed records, which seems about right
02:30:29 <ais523> matching that on a game controller seems difficult, especially if chording is required, but maybe not impossible
02:56:23 -!- amby has quit (Quit: so long suckers! i rev up my motorcylce and create a huge cloud of smoke. when the cloud dissipates im lying completely dead on the pavement).
03:26:13 <esolangs> [[Airline Food]] https://esolangs.org/w/index.php?diff=177379&oldid=99893 * BODOKE2801e * (+288)
03:37:23 <esolangs> [[Input hello world or else without a quine]] https://esolangs.org/w/index.php?diff=177380&oldid=177284 * BODOKE2801e * (-24) /* Interpreters */
03:40:50 <esolangs> [[ZecZec]] https://esolangs.org/w/index.php?diff=177381&oldid=177354 * BODOKE2801e * (+191) /* Syntax */ MEHR
03:42:36 <esolangs> [[ZecZec]] https://esolangs.org/w/index.php?diff=177382&oldid=177381 * BODOKE2801e * (+64) /* FizzBuzz */ MEHR
03:43:51 <esolangs> [[Self-interpreter]] https://esolangs.org/w/index.php?diff=177383&oldid=171185 * BODOKE2801e * (+37) /* Languages known for self-interpretation */
03:56:54 <esolangs> [[ZecZec]] https://esolangs.org/w/index.php?diff=177384&oldid=177382 * BODOKE2801e * (+543)
03:57:14 <esolangs> [[ZecZec]] https://esolangs.org/w/index.php?diff=177385&oldid=177384 * BODOKE2801e * (+2) /* Notes */
04:36:19 -!- Artea has quit (Ping timeout: 264 seconds).
05:02:29 -!- somefan has quit (Ping timeout: 244 seconds).
05:06:31 -!- Artea has joined.
05:32:05 <korvo> Folks at the bar were interested but didn't have many examples. A couple folks mentioned Super Mario Maker (2), which is a good example, if buggy.
05:35:06 <korvo> I got a 2:05 in-game time on Super Metroid, which is not great IMO. I did get first-try mockball into early supers, though.
05:40:34 -!- chloetax has quit (Ping timeout: 248 seconds).
05:44:55 -!- chloetax has joined.
06:13:59 <zzo38> Which do you think are some rules of Magic: the Gathering, or of some other game (chess, Pokemon, etc) that will only be significant very rarely that a puzzle can be made up that involves it in a way possibly other than what the rule was intended for?
06:16:31 <zzo38> (I have tried to do such things with Hero Hearts, revealing that some things documented as invariant weren't; e.g. the "Explain Death" option is not supposed to affect the behaviour of the game (a replay list is supposed to have the same meaning whether or not this option is enabled, and regardless of what speed it is played back at), but I made a puzzle that depends on it.)
06:17:33 <zzo38> (My implementation of Hero Hearts does not emulate this bug, nor does it emulate some of the related bugs, although some bugs that do not violate these invariants are emulated if they do affect the behaviour of the game.)
07:05:52 <ais523> zzo38: Yu-Gi-Oh has some rules like that but they're convoluted enough that I don't really understand how they work (and some of them may be subjective)
07:06:33 <ais523> it used to have a rule that you cannot perform an action that creates an infinite loop, which some people exploited to win by constructing a gamestate where almost any action by the opponent would create an infinite loop, forcing them to pass their turn
07:07:24 <ais523> and then the rule was changed to match the situation if a loop gets created by a game rule rather than an action, which is that the judge moves the card most responsible for the loop (which is subjective and hard to define) into the graveyard
07:07:56 <ais523> anyway, I should go to bed (thanks for the discussion/ideas korvo)
07:08:12 <ais523> and thanks for the ideas zzo38, too
07:08:24 <korvo> ais523: Good night!
07:08:30 <ais523> it feels like this should be doable but will take some work and practice
07:08:35 -!- ais523 has quit (Quit: quit).
07:11:23 <zzo38> That rule for loops doesn't seem a very good rule for infinite loops; the rule in Magic: the Gathering looks like better to me
07:15:05 <zzo38> (How commonly is rule 731 used in Magic: the Gathering puzzles?) (Although, rule 731.1c says tournaments use different rules for loops)
07:18:39 <zzo38> (Even the rules in Magic: the Gathering are not perfect; one change I would make is to distinguish between implicit draws and explicit draws, with different rules relating to them (and different rules cause each kind), but in both cases the final result of the game will be a draw)
07:30:23 -!- Sgeo has quit (Read error: Connection reset by peer).
08:01:44 <esolangs> [[Input hello world or else without a quine]] M https://esolangs.org/w/index.php?diff=177386&oldid=177380 * Ractangle * (+24) that is still output only
08:40:34 -!- somefan has joined.
08:40:34 -!- somefan has changed hostmask to ~somefan@user/somefan.
10:41:45 <fizzie> I have a vivid recollection of having seen a video of some sort of novel input mechanism, years back, when predictive text input still felt kind of novel, but I can't recall any of the detail so not sure how amenable that would be for gamepad input.
10:45:08 <fizzie> (Found it in an AI-assisted way.)
10:45:29 <fizzie> https://en.wikipedia.org/wiki/Dasher_(software)
10:46:08 <fizzie> I _guess_ you could use that approach with a gamepad, since it only requires a two-dimensional pointing mechanism of some kind (so a single analog stick would suffice), but it'd be throwing away most of the capabilities of one.
10:48:10 <int-e> was this the inspiration for flappy bird :P
10:48:52 <fizzie> I just remembered it because it was so visual. Whoosh.
10:49:37 <fizzie> Apparently (at least according to the 2006 paper) imagined as a text input mechanism for brain-computer interfaces, which sounds plausible enough.
10:51:49 <fizzie> If you've got two eyes, two hands, and a gamepad with two analog sticks, surely you could handle an input system with two independent Dasher squares, say one for individual letters and one for predicted words.
10:51:59 <fizzie> Perhaps presented on some sort of head-mounted display, one per eye.
10:52:46 <int-e> that's a lot of equipment to replace a *check notes* keyboard
10:58:05 <fizzie> AIUI, you're not supposed to *write* programs any more, anyway, you're supposed to just direct "agentic" things that do it for you, so surely you just need to slap a speech-to-text/text-to-speech interface on top of one of those, though.
10:58:16 <fizzie> Okay, on a crowded bus maybe that won't make you the most popular person.
10:59:17 <int-e> Dasher is a cute idea, but I imagine that its cognitive load is way too substantial for using it for anything serious. (The downside of using adaptive predictions, as I believe they do, is that you can't learn fixed input sequences.)
11:01:59 <int-e> Re: AI. https://bsky.app/profile/ianboudreau.com/post/3mgc2aaktak2s resonated strongly with me.
11:03:12 <int-e> (Though if I were to express my own sentiments I'd probably dwell on the subsidy aspect of it too, and the anti-human attitude behind it all ("People? Where WE are going we won't need people!")
11:08:22 <int-e> Like, the outcome will be terrible if this comes crashing down (maybe 2026, maybe 2027...), but I believe the outcome will be worse if any of this shit starts working (the AGI dream, the singularity...). And not because of alignment problems, but because of who is doing this and how they'll use it.
12:13:36 -!- simcop2387 has quit (Ping timeout: 264 seconds).
12:13:50 -!- perlbot has quit (Ping timeout: 265 seconds).
12:14:46 -!- simcop2387 has joined.
12:22:09 -!- perlbot has joined.
12:41:38 <b_jonas> ais523: There's an Atari 2600 game called BASIC programming, but it only technically matches your question. You are typing the command and giving commands not the normal ATARI 2600 joystick, but on a pair of controllers that each have 12 buttons in a telephone keypad arrangements. These can be used for multiple different games with printed legend overlay sheets, so they're technically game controllers.
12:41:44 <b_jonas> Normally two separate players use the two controllers, but for BASIC programming they're used by one player.
12:44:58 <b_jonas> ais523: If you're aiming for a bus then I don't think you can count the full range that you mentioned, as in four shoulder buttons, two joysticks, a d-pad and four face buttons. I don't think you can reasonably hold both such a controller and read a display on a bus. You can get close with a Nintendo Switch or Switch 2, but you'll only get two shoulder buttons, not four.
12:47:32 <b_jonas> Also, even just that, two controllers, only works if you're sitting on a bus, I don't think you can reasonably use the normal range of two controllers while standing.
12:48:50 <b_jonas> If you want to write programs while standing on a bus, one of the commercial programmable calculators could work. Their keypad is normally designed to be typed on with one hand while the calculator is sitting on a desk, but they also work for typing with your thumb with the calculator is handheld, that's just slower.
12:51:17 <b_jonas> The TI-92 is an exception, it has an unusual large keyboard that's bigger than you can use with one hand. I don't really know what it's optimized for, as in how you're supposed to operate it. I've seen a working specimen in real life very long ago, but I don't think I operated it, or only for a very short time.
12:52:08 <int-e> If you just want to "manage" your "agents", maybe a Tinder-like interface for proposed changes could suffice ;)
12:52:09 <b_jonas> There exist various hardware designed specifically to work as chorded keyboards, both ones held in one hand and ones held in two hands.
12:52:56 <b_jonas> Btw Atari 2600 Basic programming is very limited, but that's because the Atari 2600 has very little RAM.
12:53:47 <b_jonas> I wonder if they made a better version for the Atari 5200 .
13:11:52 <fizzie> I've also only very briefly seen a TI-92. It wasn't particularly popular at school, I imagine mostly because it had a CAS, and therefore it was forbidden to use as a calculator in exams. We "all" just had TI-86s (the school ran a discount bulk order thing), except a few people who already had a TI-85 and continued to use it, and one or two oddball HP RPN calculator users.
13:14:21 <fizzie> TI-86 had come out in 1996, I think I entered the level of school where a graphing calculator was expected (years 7-12 if numbered consecutively starting from 1) in 1997. So it was the hot new thing.
13:15:41 <fizzie> Actually it must've been 1996 already, because I got out of there in 2002. Off-by-one errors.
13:19:12 <b_jonas> fizzie: I never went to any schooling where a handheld graphing or programmable calculator was expected. Only a minority of students had anything like that. Programming and drawing graphs on desktop PCs in a computer lab seating twenty-something people was expected occasionally.
13:20:01 -!- amby has joined.
13:21:11 <fizzie> We had a sorta slightly "math-focused" line, maybe that accounted for it.
13:21:28 <fizzie> The teacher had a slide projector attachment for their TI-85.
13:22:02 <int-e> oh advanced optics
13:22:12 <fizzie> As in, a bulky transparent LCD display that you could put on top of an overhead projector (that you would put slides on) to show the display mirrored on the wall.
13:22:41 <fizzie> You couldn't plug it into a regular TI-85, it had to be a special model.
13:23:19 <b_jonas> yeah, a special display that doesn't melt from the projector
13:23:34 <fizzie> They'd written a TI-BASIC program that made like a stage curtain kind of an effect followed by a "<teacher's name> presents" box.
13:23:38 <fizzie> They were _very_ proud of that.
13:24:26 <b_jonas> I thought that's the part that you do with hand-drawn transparency slide stop motion
13:24:44 <b_jonas> before you put the calculator screen on
13:24:52 <fizzie> (Also I'm not sure why I'm defaulting to a gender-neutral pronoun here, there was no ambiguity about that. Probably from writing interview feedback recently.)
13:25:35 <fizzie> (I guess Finnish only has the one singular third-person pronoun, and this was a Finnish person I'm talking about, could be that too.)
13:25:58 <fizzie> Well, it's more impressive when it's Computer Graphics™.
13:26:12 <int-e> hopefully they won't mind
13:26:50 <b_jonas> can you connect that projector to the students' TI-86 calculator so they can show stuff projected to the whole class too?
13:27:20 <b_jonas> ah no, you already answered
13:27:25 <b_jonas> "You couldn't plug it into a regular TI-85"
13:28:15 <fizzie> Yeah, sadly no. It didn't do it over the link cable protocol.
13:28:34 <fizzie> Which as I recall is kind of an interesting protocol as well, it doesn't have a fixed baud rate, it's an async kind of a thing.
13:35:58 <fizzie> Yeah, assuming I can trust Gemini (but this description _sounds_ like the one I've seen but couldn't find), it's a bit of an oddity in that there's no clock line as such, it's a three-wire protocol with ground and two data lines ("red" and "white"). To send a bit, one side pulls either the red (0) or white (1) line down, and then the other end acknowledges that by pulling the _other_ line down
13:36:00 <fizzie> (which the sender waits for).
13:36:16 <fizzie> So it runs at whatever speed the two endpoints involved can manage to run this process.
13:36:55 <b_jonas> anyway, for the original question, something where the keypad looks like a good calculator keypad but has more capability to detect multiple keys pressed at the same time could work as chorded input on the bus I think
13:36:55 <fizzie> And the calculator ROM code just bit-bangs it out with the Z80 CPU instead of using an UART or something.
13:37:00 <b_jonas> for one handed typing that is
13:37:34 <b_jonas> you'd need one of those chorded palm thingies if you want to use multiple fingers to type
14:20:14 <b_jonas> oh, it's "long/bumpy car/bus journeys", not short public transport ride to school, so sitting down can be assumed. then two controllers is fine.
14:20:23 <b_jonas> or like two hands on a controller
14:20:39 <b_jonas> you might even be able to affix the display on the seat in front of you
14:30:58 -!- ais523 has joined.
14:33:41 <ais523> fizzie: that wire protocol does sound a lot like async electronics (which I've worked a lot with at a previous job) – the usual protocol I would use for that in async programming uses three data wires (one for which the sender changes the logic level to send a 0, one for which the sender changes the logic level to send a 1, and one which the receiver changes the logic level to acknowledge). but that's an interesting way of reducing the number of wires
14:34:17 <ais523> (it does seem a little inefficient because after sending a bit, you have to unsend it and then wait for the caller to acknowledge the unsend, because you can't visibly pull down a wire that someone else is also pulling down)
14:50:02 <b_jonas> you've probably seen the recent video about another interesting async electronic protocol: https://www.linusakesson.net/hardware/frontpanel/index.php
14:50:41 <b_jonas> I think technically that's async from one side only, whereas the link cable between calculators is async both ways
14:56:25 -!- impomatic has joined.
15:35:10 <ais523> the problem with async in practice is that there's always at least one part of the circuit where wire propagation delay matters (in the sense that if it's too large or too small the circuit malfunctions) – there's a theorem that limits the computational class of what you can do without that to something obviously useless
15:35:44 <ais523> of course, it's possible to manufacture circuits like that in practice, but it means that one of the simplifying assumptions you'd normally use no longer holds
15:35:48 <ais523> (this is async hardware, specifically)
15:44:41 <b_jonas> sure, but we don't want fully async hardware, just an async interface between two hardware that do have reasonable timing limits inside
15:45:11 <b_jonas> and that is possible, it just needs more wires than typical interfaces, and has a bit of overhead
15:45:56 -!- impomatic has quit (Quit: Client closed).
15:46:47 <fizzie> Yeah, the TI protocol is a four-step one. Sender pulls one line down and waits; receiver acks it by pulling the other line down and waits; sender reacts to the ack by letting the first line float back high and waits; receiver reacts by letting the other line also go back up; and that finally signals to the sender it can start transmitting the next bit.
15:47:00 <b_jonas> so you use it where the few extra wires and the overhead doesn't matter too much, but you want portability between all sorts of different hardware, and possibly software control without too much of a specific controller
15:48:53 <b_jonas> I think this is so that you can drive this from software on a PC where the operating system can sometimes take control from the communications software for long time unpredictably
15:49:32 <b_jonas> without needing extra communications hardware or special support in the operating system
15:52:14 <fizzie> There were also various more or less kosher ways of wiring the link cable to a PC, including the "$4 serial link" https://www.ticalc.org/images/cables/seriallinkpic.gif , the "$5 parallel link", and for the posh, the PIClink (which uses a PIC16F84 microcontroller to translate between the calculator and RS232 in a way compatible with TI's official software).
15:52:23 <fizzie> And of course also the official overpriced solution from TI.
15:56:34 -!- chloetax2 has joined.
15:56:35 -!- chloetax has quit (Ping timeout: 244 seconds).
15:56:35 -!- chloetax2 has changed nick to chloetax.
16:04:57 -!- impomatic has joined.
16:41:41 -!- tromp has joined.
16:44:30 <esolangs> [[Lehbar]] https://esolangs.org/w/index.php?diff=177387&oldid=177361 * BODOKE2801e * (-355) /* Syntax */
16:50:33 -!- impomatic has quit (Quit: Client closed).
16:51:45 -!- ais523 has quit (Quit: quit).
17:19:36 -!- impomatic has joined.
17:47:01 -!- ais523 has joined.
17:48:11 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
17:57:21 -!- Sgeo has joined.
18:14:09 -!- tromp has joined.
19:21:00 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
19:30:57 -!- ais523 has quit (Quit: quit).
19:48:12 -!- Lord_of_Life_ has joined.
19:49:27 -!- Lord_of_Life has quit (Ping timeout: 267 seconds).
19:51:06 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
19:55:27 <esolangs> [[Rotator]] https://esolangs.org/w/index.php?diff=177388&oldid=164777 * Kaveh Yousefi * (+7762) Introduced an examples section comprehending two incipial members, added an interpreter implementation in Common Lisp, and modified the page category tag Unimplemented to Implemented.
20:10:52 <esolangs> [[Rickrolling]] https://esolangs.org/w/index.php?diff=177389&oldid=177368 * Hotcrystal0 * (+27) adding another category
20:36:48 <esolangs> [[Special:Log/newusers]] create * Frog * New user account
20:47:03 <esolangs> [[Special:Log/newusers]] create * JanitorRaus * New user account
20:52:52 <esolangs> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=177390&oldid=177375 * JanitorRaus * (+262) /* Introductions */
20:55:29 <esolangs> [[BytePusher]] https://esolangs.org/w/index.php?diff=177391&oldid=167714 * JanitorRaus * (+14) Replace dead mega link for Langton's Ant. For those who were missing this, enjoy!
21:05:33 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=177392&oldid=177390 * Frog * (+162) /* Introductions */
21:05:49 <esolangs> [[Brainfuck algorithms]] https://esolangs.org/w/index.php?diff=177393&oldid=175502 * Frog * (+237) /* if (x == 0) { code } */
21:09:30 <esolangs> [[Brainfuck algorithms]] https://esolangs.org/w/index.php?diff=177394&oldid=177393 * Frog * (-10) /* if (x == 0) { code } */
21:18:38 -!- impomatic has quit (Quit: Client closed).
21:25:30 -!- ais523 has joined.
21:25:58 <ais523> I just suddenly realised that a search engine could detect adverts, or even cookie popups, as a method of filtering out websites that people probably don't want in their search results
21:26:15 <ais523> meanwhile, I've been doing research into how chorded keyboards normally work
21:26:46 <ais523> I don't think it's the greatest fit for a games console, they mostly rely on all possible pressed/non-pressed combinations
21:27:31 <ais523> I also looked into the keyboards that are used to set typing speed records, and they have a number of interesting differences from regular keyboards
21:28:35 <ais523> mostly they're based around a grid system where you can press between the keys in order to press two adjacent keys simultaneously (to act as a virtual key in between), this is combined with chording to allow the fingers on each hand to type consonants / consonant clusters simultaneously
21:29:19 <ais523> and the thumbs type the vowels, using a similar method but with only four states for each thumb (left key, right key, between the keys, or unpressed) to provide 15 different vowel clusters (or not at all to indicate no vowels)
21:30:12 <ais523> the chords for the fingers are normally pressed in a roughly horizontal line, rather than having the fingers move upwards/downwards individually
21:30:34 <ais523> and all this is combined with a dictionary to handle issues like "English actually has more than 15 different vowel clusters"
21:31:08 <ais523> this seems difficult to replicate on a game controller but it might be possible to adopt some of the same techniques…
21:36:15 -!- tromp has joined.
21:37:40 <b_jonas> ais523: typing speed records is probably not what you want to go for for programming, because in programming the bottleneck is usually not how fast you can type
21:38:21 <ais523> but my thoughts were more along the lines of "the same techniques that are used to change normal-speed input methods into super-fast ones may change excessively slow ones into normal speed"
22:13:30 -!- Sgeo has quit (Read error: Connection reset by peer).
22:15:51 -!- Sgeo has joined.
23:03:43 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
23:28:59 <esolangs> [[Alkmini]] N https://esolangs.org/w/index.php?oldid=177395 * Arctenik * (+7501) Create article
23:31:42 <esolangs> [[Talk:Alkmini]] N https://esolangs.org/w/index.php?oldid=177396 * Arctenik * (+10008) Add compilation notes
23:36:08 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=177397&oldid=177269 * Arctenik * (+14) /* A */ Add Alkmini
23:37:29 <esolangs> [[User:Arctenik]] https://esolangs.org/w/index.php?diff=177398&oldid=142078 * Arctenik * (+14) Add Alkmini