←2025-11-17 2025-11-18 2025-11-19→ ↑2025 ↑all
00:20:14 -!- ajal has joined.
00:20:25 -!- amby has quit (Ping timeout: 264 seconds).
00:30:44 -!- chiselfuse has quit (Remote host closed the connection).
00:30:59 -!- chiselfuse has joined.
00:32:00 -!- ajal has quit (Ping timeout: 245 seconds).
00:32:10 -!- amby has joined.
00:34:12 <int-e> avih: Right, you can use one space less if you don't want to store result of the != 0 comparison anywhere.
00:35:05 <avih> yeah, my requirement is "if (==0) BODY" not "store (==0) someplace"
00:35:51 <avih> though i think this approach should work for that as well
00:38:23 <avih> as in >+<[>->]<<
00:38:43 <avih> err... not sure..
00:38:44 <int-e> you'd end up with >+<[>->]>[>>]<<<
00:39:00 <avih> i guess...
00:39:10 <int-e> which should look vaguely familar :P
00:39:45 <avih> lol
00:39:49 <avih> i think you're right
00:40:05 <int-e> Anyway, this is more of an idea than a fixed code pattern to me; I tend to consider various positions for landing pads and useful data and see what's shortest.
00:40:18 <int-e> All part of having dozens of variations of the code.
00:41:39 <avih> right. i'm more interested in having a catalog of patterns, but it doesn't mean there's no overlap. each case is a puzzle, but once solved, hopefully it's applicable elsewhere too
00:42:23 <int-e> the important thing is to have fun
00:42:33 <avih> i would _think_ that a pattern for "if (==X) BODY" and "while (==X) BODY" should be reusable
00:42:36 <avih> :)
00:43:59 <avih> in contrast to, i think, pattern i've seen more often of "if (!=X) BODY", and the same with while, but these are much simpler to code.
00:49:36 <avih> btw, i did look at bfmacro to see if/how if solves it. i don't think it does. its macros are useful but largely trivial. it just composes them together which can save a lot of headache, but not the kind which is needed to implement "if (==X) BODY" (without changing the cell).
00:51:13 <avih> both its "if" and "while" are destructive. if you don't want that, good lock finding a solution on your own.
00:51:27 <avih> luck*
00:51:56 <avih> (but you do have a macro to make a copy and use that)
00:53:39 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=168578&oldid=168447 * None1 * (-707)
00:53:56 <int-e> avih: https://esolangs.org/wiki/Asm2bf is a more serious BF generator
00:54:16 <esolangs> [[ALEFL]] N https://esolangs.org/w/index.php?oldid=168579 * None1 * (+2652) Created page with " '''ALEFL''' ('''A'''lpha-'''L'''ess '''E'''xception&'''F'''unction '''L'''anguage) is an esolang invented by [[User:None1]]. Just like its name, it uses no letters and control flow is done by exception and functions. ==Features== ===Type system=== There are only 2 types in
00:54:32 <avih> int-e: interesting. thx
00:54:41 <esolangs> [[User:None1/InDev]] https://esolangs.org/w/index.php?diff=168580&oldid=168578 * None1 * (+8)
00:55:32 <esolangs> [[Language list]] https://esolangs.org/w/index.php?diff=168581&oldid=168574 * None1 * (+12) /* A */
01:01:11 <esolangs> [[Interpret Esolangs Online]] https://esolangs.org/w/index.php?diff=168582&oldid=166988 * None1 * (+39)
01:01:35 <esolangs> [[Interpret Esolangs Online]] M https://esolangs.org/w/index.php?diff=168583&oldid=168582 * None1 * (+3) used the correct word
01:05:55 <esolangs> [[User:None1]] https://esolangs.org/w/index.php?diff=168584&oldid=165925 * None1 * (+79)
01:10:05 <avih> int-e: actually: >+<[>-]>[>]<< so either the 1st or the 2nd are entered, one of them zeroes the ==0 cell, the other doesn't
01:11:10 <korvo> avih: Well, the standard tools are available, but they look more like `dup X = if BODY then` and `begin BODY dup X = until`; Brainfuck's model is not about preserving the contents of variable locations.
01:11:39 <esolangs> [[ALEFL]] https://esolangs.org/w/index.php?diff=168585&oldid=168579 * None1 * (+25)
01:12:04 <avih> korvo: right, but the mental model of the dev is
01:12:34 <avih> so something has to interface it. a copy is indeed a solution in such case
01:12:37 <esolangs> [[SLet]] https://esolangs.org/w/index.php?diff=168586&oldid=167151 * None1 * (+300) /* Implementation */
01:13:06 <esolangs> [[SLet]] M https://esolangs.org/w/index.php?diff=168587&oldid=168586 * None1 * (+465) /* Implementation */
01:13:30 <esolangs> [[SLet]] https://esolangs.org/w/index.php?diff=168588&oldid=168587 * None1 * (-229) /* Implementation */
01:13:53 <avih> well, at lease the general development mental model is non-destructive. but it's possible that "serious bf devs" do think in bf
01:15:45 -!- pool6 has quit (Read error: Connection reset by peer).
01:16:22 <korvo> I'm mostly thinking in Forth-like stack idioms. bfmacro was a non-trivial part of programs like https://github.com/MostAwesomeDude/bb-gauge/blob/main/bfm/laver.bfm which were originally written for stack automata.
01:16:49 <avih> i don't know Forth...
01:17:42 -!- pool has joined.
01:38:59 <korvo> No worries. It's rare today. Used to be rare too. Still is.
01:45:11 <avih> :)
01:45:58 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168589&oldid=168561 * NTMDev * (-23)
01:49:04 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168590&oldid=168589 * NTMDev * (+399) /* Formatting strings */
02:02:16 -!- 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).
02:06:12 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168591&oldid=168590 * NTMDev * (+1754) /* Max and Min */
02:06:43 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168592&oldid=168591 * NTMDev * (-3) /* = */
02:07:28 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168593&oldid=168592 * NTMDev * (+12) /* Getting Started */
02:09:16 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168594&oldid=168593 * NTMDev * (+266) /* Formatting strings */
02:10:19 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168595&oldid=168594 * NTMDev * (-4) /* Slicing = */
02:15:31 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168596&oldid=168595 * NTMDev * (+556) /* Filtering (based on Condition) */
02:15:56 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168597&oldid=168596 * NTMDev * (+4) /* Filtering (based on Function) */
02:19:34 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168598&oldid=168597 * NTMDev * (+438) /* Splitting a String */
02:20:05 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168599&oldid=168598 * NTMDev * (+10) /* Print */
02:20:25 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168600&oldid=168599 * NTMDev * (-160) /* Print */
02:23:27 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168601&oldid=168600 * NTMDev * (+518) /* Bugs */
02:24:25 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168602&oldid=168601 * NTMDev * (+152) /* Bugs */
02:24:50 <esolangs> [[ASTLang]] https://esolangs.org/w/index.php?diff=168603&oldid=168602 * NTMDev * (+12) /* Bugs */
02:27:14 -!- Melvar has quit (Ping timeout: 256 seconds).
02:35:58 <esolangs> [[Main Page]] https://esolangs.org/w/index.php?diff=168604&oldid=168526 * NTMDev * (+197)
02:40:08 -!- Melvar has joined.
02:41:06 <esolangs> [[Main Page]] M https://esolangs.org/w/index.php?diff=168605&oldid=168604 * Corbin * (-197) Undo revision [[Special:Diff/168604|168604]] by [[Special:Contributions/NTMDev|NTMDev]] ([[User talk:NTMDev|talk]]): Wikis are foundationally oriented around the principle that user edits are quick (Hawaiian: "wiki wiki") to appear for everybody. Like most wikis, we rely on co
03:11:43 <zzo38> The Minsky (nearly) circle algorithm can be made as a Matrix as [1,-epsilon;epsilon,1-epsilon^2]. If you set epsilon=i then you can make Fibonacci numbers.
05:16:13 -!- pool has quit (Read error: Connection reset by peer).
05:18:13 -!- pool has joined.
05:44:19 <esolangs> [[110010000100110110010]] https://esolangs.org/w/index.php?diff=168606&oldid=168577 * Yayimhere2(school) * (-9) not a stub
05:50:50 <esolangs> [[]] https://esolangs.org/w/index.php?diff=168607&oldid=134565 * Yayimhere2(school) * (+9)
05:51:43 <esolangs> [[Brainyay]] https://esolangs.org/w/index.php?diff=168608&oldid=167950 * PhiPhiPHIpHi * (-61)
05:52:44 <esolangs> [[]] https://esolangs.org/w/index.php?diff=168609&oldid=168607 * Yayimhere2(school) * (-12) /* syntax */
06:16:21 -!- pool has quit (Read error: Connection reset by peer).
06:18:17 -!- pool has joined.
06:40:44 <esolangs> [[Readable]] M https://esolangs.org/w/index.php?diff=168610&oldid=167918 * None1 * (+179) Explain why it isn't ambiguous
06:54:31 <esolangs> [[Readable]] https://esolangs.org/w/index.php?diff=168611&oldid=168610 * None1 * (+252) /* Commands */
06:55:55 <esolangs> [[Readable]] https://esolangs.org/w/index.php?diff=168612&oldid=168611 * None1 * (+223) Added Python interpreter and implemented category tag
06:57:16 <esolangs> [[Deadfish/Implementations (M-Z)]] https://esolangs.org/w/index.php?diff=168613&oldid=162603 * None1 * (+2289) /* Raku */ Add Readable implementation of deadfish
07:00:13 <esolangs> [[Hello world program in esoteric languages (N-S)]] https://esolangs.org/w/index.php?diff=168614&oldid=166421 * None1 * (+346) /* RASEL */ Add Readable implementation
07:01:37 <esolangs> [[User:None1]] M https://esolangs.org/w/index.php?diff=168615&oldid=168584 * None1 * (+0) /* My Esolangs */
07:49:28 <esolangs> [[Brainyay]] https://esolangs.org/w/index.php?diff=168616&oldid=168608 * PhiPhiPHIpHi * (+2122)
07:50:22 <esolangs> [[Brainyay]] https://esolangs.org/w/index.php?diff=168617&oldid=168616 * PhiPhiPHIpHi * (+1)
07:55:16 <esolangs> [[Brainyay]] https://esolangs.org/w/index.php?diff=168618&oldid=168617 * PhiPhiPHIpHi * (+404)
08:01:43 <esolangs> [[Brainyay]] https://esolangs.org/w/index.php?diff=168619&oldid=168618 * PhiPhiPHIpHi * (+174)
08:36:05 -!- Sgeo has quit (Read error: Connection reset by peer).
09:26:54 -!- msv has quit (Remote host closed the connection).
09:31:43 -!- ais523 has joined.
09:56:31 <APic> Hi
09:56:34 <APic> Moin ais523 ☺
09:57:54 <ais523> morning APic
09:58:01 <APic> 😌
10:24:53 <b_jonas> zzo38: that seems correct, but it gives only every other Fibonacci number, so you might want to use the matrix [1,1;1,0] instead, as suggested by Concrete Mathematics
10:26:55 <esolangs> [[]] https://esolangs.org/w/index.php?diff=168620&oldid=168609 * Yayimhere2(school) * (+32) /* overview */
10:28:40 <esolangs> [[]] https://esolangs.org/w/index.php?diff=168621&oldid=168620 * Yayimhere2(school) * (+1) /* syntax */
12:16:52 -!- pool has quit (Read error: Connection reset by peer).
12:17:19 -!- pool has joined.
12:36:15 -!- wob_jonas has joined.
12:51:06 <wob_jonas> `python3 -cimport numpy as np; print(np.linalg.eig(np.float64([[0,1],[1,1]]))[0]) # one step of Fibonacci
12:51:08 <HackEso> ​[-0.61803399 1.61803399]
12:51:21 <wob_jonas> `python3 -cimport numpy as np; print(np.linalg.eig(np.float64([[0,1],[1,1]]))[0]**2) # two steps of Fibonacci
12:51:24 <HackEso> ​[0.38196601 2.61803399]
12:51:40 <wob_jonas> `python3 -cimport numpy as np; epsilon=1j; print(np.linalg.eig(np.complex128([[1,-epsilon],[epsilon,1-epsilon**2]]))[0]) # also two steps of Fibonacci
12:51:42 <HackEso> ​[0.38196601+0.j 2.61803399+0.j]
13:01:20 <wob_jonas> `python3 -cimport numpy as np, itertools as it; print([float(p[1,1]) for p in it.accumulate(it.repeat(np.float64([[0,1],[1,1]]),28),np.matmul)])
13:01:22 <HackEso> ​[1.0, 2.0, 3.0, 5.0, 8.0, 13.0, 21.0, 34.0, 55.0, 89.0, 144.0, 233.0, 377.0, 610.0, 987.0, 1597.0, 2584.0, 4181.0, 6765.0, 10946.0, 17711.0, 28657.0, 46368.0, 75025.0, 121393.0, 196418.0, 317811.0, 514229.0]
13:03:10 <wob_jonas> literal oeis
13:03:14 <wob_jonas> fact literal oeis
13:03:20 <wob_jonas> argh
13:26:02 <ais523> @oeis 1,2,3,5,8,13,21,34,55
13:26:02 <lambdabot> Sequence not found.
13:26:13 -!- wob_jonas has quit (Ping timeout: 250 seconds).
13:28:39 <fizzie> Such an obscure sequence, not even OEIS has heard of it.
13:28:45 <esolangs> [[MultiScript]] N https://esolangs.org/w/index.php?oldid=168622 * PrySigneToFry * (+4241) Created page with "MultiScript is designed by PSTF inspired from [[]]. Inspired by a problem from the 'Algorithm Training Camp,' I created this language. = Intro = As the name shown, MultiScript is multi-threaded. Each program has at least one and at most five threads. For ea
13:30:02 <fizzie> Oh, oeis.org gives a 500 in the browser too. "There is an internal server error on Cloudflare's network."
13:30:28 <fizzie> I guess I completely missed a huge Cloudflare outage.
13:31:31 <int-e> . o O ( Number 2 single point of failure provider for the Internet. )
13:31:47 <fizzie> What's #1, AWS?
13:31:56 <int-e> yeah
13:37:35 <fizzie> Here's something I don't like: this thing companies have nowadays of just reusing the same product name, and maybe adding a (non-visible) "generation" or "edition" disambiguator somewhere.
13:37:39 <fizzie> I'm trying to find the ports on these monitors without the incredible hassle of actually looking underneath, and they report themselves as "HP Z27n", but the first HP support specs page is clearly for a newer edition.
13:38:42 <fizzie> Apparently there's a "G2" and a "G3" but what I've got is the first-gen, no-G model.
13:39:12 <fizzie> (Managed to find it eventually, just had to use an external search engine rather than the HP support site's one.)
13:39:20 <int-e> zero G :)
13:40:02 <fizzie> The "full specifications" don't actually mention what inputs it has, that's pretty amazing.
13:40:16 <fizzie> "Ports: 4 USB 3.0 (four downstream and one upstream); 1 audio output".
13:40:53 <fizzie> At least it's arsenic-free, that's good.
13:42:45 <int-e> DDG found a third-party site that lists more, no clue how they source the infor though: https://www.displayspecifications.com/en/model/8c77109f
13:43:14 <int-e> also they say 2 USB upstreams which is weird
13:45:31 <fizzie> The on-screen input selector menu lists "DisplayPort 1", "DisplayPort 2", "DVI" and "MHL / HDMI", so that page's probably correct as far as the inputs go.
13:46:22 <fizzie> Dunno about USB upstreams. I guess it could make sense as a built-in KVM of sorts, if it also allowed to configure which upstream port goes with which output. But I only remember one hole down there when wiring these up.
13:47:03 <int-e> <3 https://jp.ext.hp.com/content/dam/jp-ext-hp-com/jp/ja/ec/lib/jp/ja/products/workstations/monitor/z27n_datasheet.pdf
14:11:43 -!- ais523 has quit (Quit: sorry about my connection).
14:39:55 -!- pr1sm has joined.
14:40:47 <esolangs> [[Iterate]] https://esolangs.org/w/index.php?diff=168623&oldid=168517 * Aadenboy * (+53)
14:40:59 <esolangs> [[Special:Log/move]] move * Aadenboy * moved [[Iterate/Math]] to [[Iterate/Library\]]
14:41:07 <esolangs> [[Special:Log/move]] move * Aadenboy * moved [[Iterate/Library\]] to [[Iterate/Library]]: Misspelled title: whoops
14:41:29 <esolangs> [[Iterate/Math]] https://esolangs.org/w/index.php?diff=168628&oldid=168625 * Aadenboy * (-1) fix redirect
14:44:31 <esolangs> [[Iterate/Library]] https://esolangs.org/w/index.php?diff=168629&oldid=168626 * Aadenboy * (+515)
14:57:09 <esolangs> [[Iterate/Floating-point]] https://esolangs.org/w/index.php?diff=168630&oldid=168318 * Aadenboy * (+4284) reimplement
15:08:24 -!- zzo38 has quit (*.net *.split).
15:16:17 -!- wob_jonas has joined.
15:20:56 -!- Everything has joined.
15:24:06 -!- ais523 has joined.
15:24:31 <ais523> <fizzie> I guess I completely missed a huge Cloudflare outage. ← yep, big Cloudflare outage happening today, it's affecting most of the Internet I think
15:24:40 <ais523> or, well, all the cloudflare-protected parts which is most of them
15:25:06 <ais523> Cloudflare's status page says they fixed it at 14:42
15:25:16 <ais523> and sites do seem to be back up now
15:26:05 <wob_jonas> is there a variant syntax for HTML where control characters are used as delimiters instead of the punctuation & < " > ]
15:26:38 <ais523> ]?
15:27:08 <ais523> also I think = is special in HTML, and occasionally ?, ! and -
15:27:16 <ais523> (and ; to end &-entities)
15:28:09 <wob_jonas> ais523: right bracket might be only for XML, in <![CDATA[text]]>
15:28:30 <ais523> oh, that reminds me, there is a rich text format that uses mostly the same control characters that terminals do, and which appears to aim to support an HTML-like set of features, but it isn't base on HTML
15:28:44 <ais523> https://en.wikipedia.org/wiki/Open_Document_Architecture
15:29:52 <ais523> nowadays it's almost completely dead, but it did inspire the codes that terminals use for 256-color and 24-bit color (although annoyingly they aren't exactly the same as the ODA codes)
15:30:17 <ais523> I don't know of anyone doing a similar principle with HTML itself, though
15:31:16 <wob_jonas> I see
15:31:54 -!- msv has joined.
15:36:05 <ais523> fwiw I think the recent Cloudflare outage might have affected more websites than the recent AWS US-East-1 ouage
15:36:23 <ais523> although the Cloudflare outage will probably have been easier/faster to recover from
15:36:40 <int-e> plausible, but AWS is leaving the building more often
15:37:54 <ais523> I'm not sure if there have been any recent or semi-recent outages that took down all of AWS at the same time
15:51:15 <avih> yeah, i think many sites i frequent were down today. more than other outages
15:58:32 <esolangs> [[Special:Log/newusers]] create * * New user account
15:59:08 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=168631&oldid=168435 * * (+86)
16:00:05 <esolangs> [[User:]] N https://esolangs.org/w/index.php?oldid=168632 * * (+219) Created page with ""
16:00:14 <wob_jonas> perlbot oeis 2,3,5,8,13,21,34,55,89,144,233,377,610
16:00:32 <wob_jonas> perlbot?
16:00:48 <wob_jonas> perlbot echo 2,3,5,8,13,21,34,55,89,144,233,377,610
16:01:10 <wob_jonas> strange, it does answer in private message
16:01:21 <wob_jonas> what am I doing wrong?
16:01:28 <int-e> nothing
16:01:37 -!- ChanServ has set channel mode: -q perlbot!*@*.
16:02:28 <wob_jonas> oh
16:02:33 <wob_jonas> perlbot oeis 2,3,5,8,13,21,34,55,89,144,233,377,610
16:02:34 <perlbot> wob_jonas: http://oeis.org/searchs?q=2%2C3%2C5%2C8%2C13%2C21%2C34%2C55%2C89%2C144%2C233%2C377%2C610 A000045(1/18) Fibonacci numbers: F(n) = F(n-1) + F(n-2) with F(0) = 0 and F(1) = 1.: 0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368,75025,121393,196418,317811,514229,832040,1346269,2178309,3524578,5702887,9227465,14... [Output truncated. Use `more` to read more]
16:02:43 <esolangs> [[User talk:]] N https://esolangs.org/w/index.php?oldid=168633 * * (+233) Created page with " <nowiki>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~</nowiki> up up down down left right left right B A"
16:03:02 <int-e> wob_jonas: been that way for a while: https://logs.esolangs.org/libera-esolangs/2025-03-28.html#lQ ff.
16:04:17 <esolangs> [[WORST]] https://esolangs.org/w/index.php?diff=168634&oldid=168538 * * (+29)
16:04:46 <esolangs> [[User talk:Sawyer.go0923]] https://esolangs.org/w/index.php?diff=168635&oldid=168534 * * (+67) /* Tag your slop */ new section
16:06:05 <int-e> Hmm, I don't understand how that loop got started.
16:06:14 <esolangs> [[User talk:Sawyer.go0923]] https://esolangs.org/w/index.php?diff=168636&oldid=168635 * * (+83) /* Tag your slop */
16:07:51 <int-e> was it the (+ substring?
16:12:19 <wob_jonas> func oeis_r shall be ^eval substr ^quote d ^get ^eval use URI; $a=URI->new("https://oeis.org"); $a->query_form("q", ^arg d~ ); "$a"~ //div[@class="sequence"][1]//div[@class="seqnumname"] ~~, 0,280~
16:12:22 <wob_jonas> perlbot func oeis_r shall be ^eval substr ^quote d ^get ^eval use URI; $a=URI->new("https://oeis.org"); $a->query_form("q", ^arg d~ ); "$a"~ //div[@class="sequence"][1]//div[@class="seqnumname"] ~~, 0,280~
16:12:22 <perlbot> wob_jonas: Stored oeis_r shall be ^eval substr ^quote d ^get ^eval use URI; $a=URI->new("https://oeis.org"); $a->query_form("q", ^arg d~ ); "$a"~ //div[@class="sequence"][1]//div[@class="seqnumname"] ~~, 0,280~
16:13:02 <wob_jonas> perlbot oeis_r 279935,1679615,10077695,60466175
16:13:05 <perlbot> wob_jonas: A024062 a(n) = 6^n - 1.
16:13:45 <wob_jonas> oeis needn't be a built-in function of perlbot anymore, we can implement something close enough to it as a macro
16:14:20 <wob_jonas> perlbot oeis_r 4998,18321,67791,253288,952527,3603761
16:14:26 <perlbot> wob_jonas: Your Xpath didn't match anything
16:14:56 <int-e> @oeis 0,1,1,2,3,5,8,13,21,34,55
16:14:57 <lambdabot> Sequence not found.
16:15:08 <int-e> Well, I guess something broke.
16:17:38 <esolangs> [[Viktor's Divisibility Checker]] N https://esolangs.org/w/index.php?oldid=168637 * Yayimhere2(school) * (+2321) Created page with "'''Viktor's Divisibility Checker''', or just '''Viktor''' is an Esoteric Programming Language created by [[User:Yayimhere]], that checks the divisibility of different numbers in a list. It is based on a 1 register [[Minsky Machine]], as
16:22:59 <wob_jonas> perlbot oeis_r 279935,1679615,10077695,60466175
16:23:01 <perlbot> wob_jonas: A024062 a(n) = 6^n - 1.
16:23:23 <wob_jonas> I'll have to modify this to distinguish no sequence found from errors
16:25:40 <wob_jonas> the difficult part is that I still have no idea how to use Xpath.
16:27:08 -!- ChanServ has set channel mode: +o ais523.
16:27:43 <ais523> the trigger last time was someone writing -- in an edit summary, which caused esolang to post a message contianing -- in the chat and triggered perlbot: botloop--
16:27:55 <ais523> perlbot: karma botloop
16:27:56 <perlbot> ais523: botloop has karma of -1
16:28:06 <ais523> OK, so that isn't reproducing right now, at least
16:28:09 -!- ais523 has set channel mode: -o ais523.
16:28:37 <ais523> we should probaby get esolangs to ignore perlbot, though
16:28:47 <ais523> or the other way round, not sure which is easier
16:29:11 <ais523> int-e: ^
16:29:26 * int-e nods
16:29:30 <int-e> yeah I should've seen the --
16:29:35 -!- Lord_of_Life_ has joined.
16:29:43 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
16:29:59 <esolangs> [[Iterate/Library]] M https://esolangs.org/w/index.php?diff=168638&oldid=168629 * Aadenboy * (+2) /* Is number */ h3
16:30:22 <esolangs> [[Special:Log/newusers]] create * Aaaaaaaaaaaaaaaaaaaalol * New user account
16:30:24 <int-e> but it looks like the DB issue that perlbot had then (resulting in a noisy reply) has been resolved.
16:30:55 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
16:33:50 <esolangs> [[Iterate/Floating-point]] https://esolangs.org/w/index.php?diff=168639&oldid=168630 * Aadenboy * (-1700)
16:34:55 <esolangs> [[Iterate/Floating-point]] https://esolangs.org/w/index.php?diff=168640&oldid=168639 * Aadenboy * (+1808) Undo revision [[Special:Diff/168639|168639]] by [[Special:Contributions/Aadenboy|Aadenboy]] ([[User talk:Aadenboy|talk]])
16:36:17 -!- wob_jonas has quit (Quit: Client closed).
16:36:32 -!- wob_jonas has joined.
16:38:23 -!- wob_jonas has quit (Client Quit).
16:38:25 <esolangs> [[WUUI]] https://esolangs.org/w/index.php?diff=168641&oldid=145521 * Yayimhere2(school) * (+4) /* Control flow */ change to <code> instead of <tt> as its more consistent and less confusing
16:38:45 -!- wob_jonas has joined.
16:43:37 <wob_jonas> perlbot func oeis_r shall be ^eval substr ^quote d ^get ^eval use URI; $a=URI->new("https://oeis.org"); $a->query_form("q", ^arg d~ ); "$a"~ //div[@class="pagelinkbox"]//td/div | //div[@class="sequence"][1]//div[@class="seqnumname"] ~~, 0,280~
16:43:37 <perlbot> wob_jonas: Stored oeis_r shall be ^eval substr ^quote d ^get ^eval use URI; $a=URI->new("https://oeis.org"); $a->query_form("q", ^arg d~ ); "$a"~ //div[@class="pagelinkbox"]//td/div | //div[@class="sequence"][1]//div[@class="seqnumname"] ~~, 0,280~
16:44:33 <wob_jonas> perlbot oeis_r 3887,23327,139967
16:44:36 <perlbot> wob_jonas: A198796 3*6^n-1.
16:47:23 -!- pr1sm has quit (Remote host closed the connection).
16:49:44 <wob_jonas> perlbot oeis_r 2027,3208,78266,255031
16:50:14 <perlbot> wob_jonas: Sorry, but the terms do not match anything in the table. There were no advanced matches found for the numeric terms in your query. If your sequence is of general interest, please submit it using the form provided and it will (probably) be added to the OEIS! Include a brief descri
16:51:39 <esolangs> [[Viktor's Divisibility Checker]] https://esolangs.org/w/index.php?diff=168642&oldid=168637 * Yayimhere2(school) * (+128) /* Semantics */
16:55:51 -!- wob_jonas has quit (Quit: Client closed).
17:00:21 <ais523> perlbot: help
17:00:21 <perlbot> ais523: Provides help text for a specific command. Try 'help echo'. See also the command 'plugins' to list all of the currently loaded plugins.
17:00:28 <ais523> perlbot: help plugins
17:00:29 <perlbot> ais523: Returns a list of all of the loaded plugins for this bot. Syntax, plugins
17:00:34 <ais523> perlbot: plugins
17:00:34 <perlbot> ais523: 8ball allowpaste arg cache_check compose conf conf_dump default dumpsaid echo eval factoids geoip get google head help host host_lookup join karma karma_modify karmatop more nick_lookup null oeis package part pastebinadmin perldoc plugins quote reload_plugins restart rss rss_title save_config seen shorten talktome tell title translate twitter unicode utf8 zippit
17:00:55 <ais523> perlbot: help conf
17:00:55 <perlbot> ais523: Sorry, no plugin named conf found.
17:03:06 -!- wob_jonas has joined.
17:03:33 -!- Everything has quit (Quit: leaving).
17:03:48 -!- amby has joined.
17:10:41 -!- wob_jonas has quit (Quit: Client closed).
17:17:17 -!- pool has quit (Read error: Connection reset by peer).
17:19:25 -!- pool has joined.
17:23:07 <esolangs> [[Do Minsk Family]] https://esolangs.org/w/index.php?diff=168643&oldid=167782 * Yayimhere2(school) * (+63) /* A tree of all the languages */
17:26:37 -!- amby has quit (Remote host closed the connection).
17:28:34 <esolangs> [[Do Minsk Family]] M https://esolangs.org/w/index.php?diff=168644&oldid=168643 * Aadenboy * (+0) /* A tree of all the languages */
17:28:41 -!- amby has joined.
17:54:35 -!- tromp has joined.
18:11:28 <b_jonas> ais523: I should write a summary about perlbot (or its ancestor buubot3) on the esowiki, it's a language I helped create and has some esoteric properties, but so far I was lazy
18:11:44 <ais523> b_jonas: I was mostly trying to figure out if I could set an ignore on it
18:11:53 <ais523> i.e. for it, telling it to ignore esolangs
18:18:43 <b_jonas> simcop2387: ^
18:24:06 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
18:35:11 -!- Yayimhere has joined.
18:35:19 <Yayimhere> hello IRC.
18:35:38 <Yayimhere> I had an idea for an esolang recently
18:35:52 <Yayimhere> and I wanted to hear your guys thoughts on it
18:35:55 <Yayimhere> if your willing
18:36:01 <Yayimhere> now I'll describe it
18:36:28 <korvo> Go for it.
18:36:34 <Yayimhere> The program is made up of two coordinates x and y
18:36:46 -!- tromp has joined.
18:36:51 <Yayimhere> then check the color value of that x y coordinate on the Mandelbrot set
18:37:14 <Yayimhere> then add that to the *sequence*. The sequence holds every coordinate used
18:37:41 <Yayimhere> so for our little description here, it would be x,y,z where z is that color value I mentioned before
18:37:52 <Yayimhere> then our next coordinate set would be (y,z)
18:37:54 <Yayimhere> and so on
18:37:57 <Yayimhere> forever
18:38:06 <Yayimhere> yea thats it
18:39:09 <korvo> The color? Like, black for members of the set and some gradient for how fast non-members diverge?
18:39:17 <Yayimhere> yes
18:39:25 <Yayimhere> i forgot the actual name
18:39:29 <Yayimhere> no not name
18:39:33 <Yayimhere> what it actually is
18:40:45 <korvo> The main issue is that non-members diverge very quickly. In fact, if the absolute value of your two-coordinate vector is ever >= 2 then it is not a member.
18:40:59 <Yayimhere> korvo: hm
18:41:10 <Yayimhere> maybe I should pick another fractal
18:41:19 <korvo> This isn't really a language, but it might make for a pretty picture. When I was your age, it was popular to draw buddhabrots, another Mandelbrot variation: https://en.wikipedia.org/wiki/Buddhabrot
18:42:00 <korvo> Yayimhere: Why do you think that fractals ought to be languages? There are languages that describe fractals, but that's going in the other direction: https://en.wikipedia.org/wiki/L-system
18:42:40 <Yayimhere> korvo: i had no reason other than I like fractals. I just though it would be fun to try and make the function ofma language be based fractal based
18:42:48 <Yayimhere> *of a
18:42:50 <korvo> These would both be great projects for a beginning programmer, although they might take several nights to finish.
18:42:59 <Yayimhere> lol
18:43:47 <ais523> when I was younger I implemented the Mandelbrot fractal using floats
18:43:56 <ais523> it worked for a bit, but you could see it go wrong if you zoomed in far enough
18:44:04 <ais523> (because floats aren't accurate enough to calculate it properly)
18:44:14 <Yayimhere> ais523: nice
18:44:17 <Yayimhere> well
18:44:22 <Yayimhere> not very nice
18:44:24 <Yayimhere> but uh cool
18:45:05 <korvo> Mandelbrot's chaotic, which means that any attempt at computing it smoothly will fail. It doesn't ever have any sharp edges or boundaries; it's infinitely fuzzy. Raytracing chaos always leads to a jumbled rainbow of pixels in that chaotic region.
18:46:05 <ais523> korvo: right but there are some number of pixels, at various zoom levels, that can be calculated correctly
18:46:06 <Yayimhere> (also, if korvo ever wonders why I seemingly never actually code, I just dont have the time, because I balance esolanging with schoolwork, music, and other stuff)
18:46:14 <ais523> and if you zoom in far enough, floats don't calculate even those
18:46:50 <Yayimhere> also, just to make sure im not crazy, if a system has an undecidable question, is it turing complete?
18:47:03 <Yayimhere> because I remember that from somewhere
18:47:05 <ais523> I'm not sure it's been proven in that direction
18:47:11 <Yayimhere> but im not actually 100% sure on it
18:47:13 <ais523> in the other direction it's provable, all TC languages have an undecidable question
18:47:17 <Yayimhere> yea
18:47:24 <Yayimhere> hmmmmm
18:47:27 <ais523> but going the other way round, the language might be undecidable for reasons other than its computational class
18:47:34 <Yayimhere> like?
18:47:40 <Yayimhere> (just to get an example)
18:47:49 <ais523> e.g. because it has a command that computes something undecidable, but that doesn't generalise to be used in a larger program
18:48:08 <Yayimhere> true
18:48:18 <Yayimhere> thats kinda the hq9+ problem
18:48:23 <ais523> right
18:48:48 <Yayimhere> well
18:49:00 <Yayimhere> it is *literally* the hq9+ problem
18:49:22 <Yayimhere> for example ^
18:49:31 <korvo> Yayimhere: I know why you don't code. I'm trying to push you to start learning as young as possible so that you get a good intuition for it. I started at around 12 and started spending serious time on it when I was maybe 15.
18:49:32 <Yayimhere> a language where ^ computes the halting problem
18:49:43 <Yayimhere> korvo: k!
18:49:46 <Yayimhere> :]
18:50:12 <Yayimhere> its so weird to me that not even the square brackets escape
18:50:14 <Yayimhere> :}
18:50:18 <Yayimhere> lol
18:50:34 <Yayimhere> anyways
18:51:25 <korvo> Yayimhere: Think of TC-ness explicitly: A system is Turing-complete when any Turing machine's execution can be represented within it. Undecidability is about having a set of things; if a property of things is undecidable then we can't compute whether a thing has the property.
18:51:58 <korvo> It turns out that many properties of Turing machines (the "semantic" properties) aren't decidable. That's the entire connection between them.
18:52:05 <Yayimhere> korvo: hm
18:52:09 <Yayimhere> I guess that makes sense
18:52:59 <Yayimhere> on the point of "can be represented", how close does it have to be?
18:53:12 <Yayimhere> like if we say I simply generate a sequence
18:53:21 <Yayimhere> of characters that represents all the turing machines states
18:53:25 <Yayimhere> that counts right?
18:53:30 <Yayimhere> but what if I didnt do it
18:53:36 <Yayimhere> with the actual turing machine
18:53:39 <Yayimhere> if u know what I mean
18:53:46 <Yayimhere> if it just happened to happen
18:54:01 <korvo> It has to be "faithful" in the mathematical sense. If I choose a Turing machine, a starting tape, and a number of steps, then the system needs to represent the execution history that starts with that tape and runs for that number of steps.
18:54:36 <korvo> Yes, the system can just happen to do this. But usually we want a *proof* that it happens to do this.
18:54:44 <Yayimhere> makes sense
18:55:00 <Yayimhere> (I feel like thats kinda just what wang tiles do)
18:55:07 <Yayimhere> (but maybe thats just my option)
18:55:11 <Yayimhere> *opinion
18:56:16 <korvo> Wang tiles or Post tiles (as in Post correspondence machines) work by writing down the states and symbols on tiles, and only allowing tile edges to match when the TM would transition. Then the execution history emerges as a partial tesselation of those tiles.
18:56:51 <korvo> So it's not accidental but a deliberate thought experiment: what if we take Turing's piece of paper and pen, and instead of writing repeatedly with the pen on the paper, instead we ripped up the paper and wrote once on each piece?
18:58:03 -!- amby has quit (Remote host closed the connection).
18:58:20 -!- amby has joined.
18:58:32 <Yayimhere> im not saying its an. accident
18:58:48 <Yayimhere> imm just saying its like
18:59:09 <Yayimhere>  a very *non* turing machine way of simulating a turing machine
18:59:27 <Yayimhere> and i just find it interesting where the line goes!
19:00:38 <korvo> Well, it's worth remembering that Turing wasn't talking about Turing machines other than as a method of proof. He wanted to talk about computable sequences of natural numbers. Set the machine up with an input tape, turn it on, and it prints numbers forever; what can be done with that?
19:00:42 <Yayimhere> i have no idea how I got both a . and a (very partial) indent in by accident
19:01:16 <Yayimhere> korvo: thats quite the surprise to me
19:01:30 <Yayimhere> I guess its not much of a surprise there's some misinformation around
19:01:33 -!- Trigon has quit (Ping timeout: 250 seconds).
19:01:46 <ais523> some of the more important results in computer science were, oddly, discovered before the computer was invented
19:02:00 <ais523> and classified under "philosophy" as that was the closest available field at the time
19:02:05 -!- Trigon has joined.
19:02:16 <Yayimhere> ais523: is lambda calculus not in that category?
19:02:20 <Yayimhere> oh yea
19:02:40 <Yayimhere> I remember seeing some multiverse, esolang looking stuff being done in the field of "philosophy"
19:02:49 <ais523> I think lambda calculus predates the computer but am not sure, I've never had to compare the timings of those two branches of research before
19:03:11 <Yayimhere> ais523: if the truttle1 video is correct, it does
19:04:00 <ais523> I wonder how long, after the invention of the computer, it took to start implementing lambda-calculus concepts like closures
19:04:05 <korvo> https://esolangs.org/wiki/Computable has the relevant timeline. Lambda calculus was mid-1930s, before WW2. It was in response to Hilbert and friends, who had been asking about variations on the question for a few decades.
19:04:28 <ais523> they wouldn't initially have seemed a high priority
19:05:07 <Yayimhere> random little question, do you think "Viktor's Divisibility Checker" is a good esolang name?
19:05:18 <korvo> I'd say closures were introduced in 1964 by Landin for the SECD machine, part of a series of abstract machines for efficiently normalizing lambda calculus.
19:05:47 <korvo> Yayimhere: It's not a terrible name. I don't know the reference; is this Viktor from Arcane, or another character?
19:06:17 <Yayimhere> Korvo: its a painter, specifically, of "Knight at the Crossroads"
19:06:27 <Yayimhere> of which the language also goes across crossroads
19:06:37 <Yayimhere> (exeter style? I think?)
19:06:49 <korvo> TIL! Cool reference.
19:07:01 <Yayimhere> thanks!
19:07:51 -!- zzo38 has joined.
19:09:11 <Yayimhere> here is the wikipedia page I found it on: https://en.wikipedia.org/wiki/Fork_in_the_road_(metaphor)
19:09:19 <korvo> Yayimhere: So, the main thing to understand is that we discovered computability by asking "How do we solve mathematical problems with paper and pen?" and the answer is a surprising "We can't solve every problem that way!" Computability is about what we *can* solve.
19:09:41 <Yayimhere> korvo: yea that makes sense
19:09:44 <korvo> Aha. Okay, that's a pretty good reference. Good name.
19:09:50 <Yayimhere> thanks!
19:10:48 <Yayimhere> I also named another esolang of mine after Isaac Asimov's The Last Question
19:11:37 <korvo> So when we say that something *happens* to be Turing-complete, we're saying that it *happens* to be able to solve problems as well as paper and pen. That's all. If your esolang can be simulated with paper and pen then that merely means that your language is computable, not that your language can simulate paper and pen itself.
19:11:52 <Yayimhere> korvo: yea
19:12:37 <Yayimhere> also, on the note of names, ais523, where does the name WUUI come from
19:13:01 <ais523> it's an initialism for "while, unless, until, if" (possibly the two Us are the other way round)
19:13:25 <zzo38> I don't know of any variant of HTML with control characters, but there are some similar thinga that do use control characters for specifying formatting codes and hyperlinks and other stuff.
19:13:27 <Yayimhere> makes sense
19:14:26 <Yayimhere> also on names, what do you think is the cleverest name you've made?
19:14:31 <zzo38> (I think using control characters will be better to avoid needing escaping, and you can also use control characters to switch character sets etc)
19:16:45 <ais523> Yayimhere: Incident
19:17:02 <ais523> I put extra effort into that one because it was for a competition
19:17:07 <ais523> (the competition was never judged, as far as I know)
19:17:11 <Yayimhere> ais523: where does that name come from, actually=
19:17:52 <ais523> it's a blend of "incident" meaning an accident (double meaning between accident = bad thing happening and accident = thing happening accidentally) and part of "coincident"/"coincidence"
19:17:54 <korvo> Yayimhere: Monte is great, but it was technically dash's name, not mine. Still, Mont-E Python, wow. I've followed up on that with a flavor of Monte that can operate on top of Cammy, "Monte B.", short for Monte Bison.
19:18:18 <Yayimhere> ais523: ah thats smart
19:18:21 <ais523> plus it lets me use "incidence" to talk about a particular occurrence of a token
19:18:38 <Yayimhere> korvo: heh
19:18:41 <Yayimhere> thats nice
19:18:54 <korvo> Vixen's going to be great if I actually set up a Linux distro with it. I'm going to adopt Xenia, the *other* Linux mascot, who is a foxgirl.
19:19:07 <ais523> it also let me call the spec the Incident Report, which was a bonus
19:19:15 <Yayimhere> eyy
19:19:17 <Yayimhere> lol
19:20:08 <Yayimhere> for me, I think Viktor's Divisibility Checker is best
19:20:13 <Yayimhere> from me
19:20:42 <korvo> Still hacking on Vixen in the background. Writing one or two new objects every day. I currently have a SymlinkFarm and I'm figuring out an Editor. Vixen's a new kind of viroid for Nix stores.
19:20:47 <Yayimhere> however I do like distressed
19:22:19 <korvo> ais523: Oh wow, that's clever. I like that. Monte didn't have a complete formal spec, but I did have an opinionated roadmap which I updated every year, the "montefesto" https://github.com/monte-language/monte/blob/master/docs/source/montefesto.rst
19:22:35 <sorear> Yayimhere: "intermediate Turing degrees"?
19:22:49 <Yayimhere> sorear: what is this replying to?
19:22:53 <korvo> This is extra-funny if you know anything about the Esperanto-Lojban rivalry. Monte has lots of easter eggs for Lojbanists.
19:23:12 <ais523> I didn't realise that Esperanto and Lojban were rivals but somehow I'm not surprised
19:23:23 <sorear> " if a system has an undecidable question, is it turing complete?"
19:23:45 <b_jonas> I don't think they're rivals
19:24:05 <sorear> there's also the -complete versus -hard distinction
19:24:10 <ais523> the rivalry I'm most familiar with is Emacs-vim but it's very complex and multilayered, to the extent that I think most Emacs users and most vim users don't particularly dislike the other camp (and there's also a camp of people who use Emacs with vim keybindings)
19:24:17 <Yayimhere> sorear: i dont rlly know
19:24:27 <korvo> Esperanto was carried forward by a big international socialist movement. Lojban's authors were California neoliberals. There's always been a bit of a tension, although Lojban encourages the public domain and got swept up in Free Software, so lots of communists have supported it recently.
19:24:34 <sorear> I gave you something to look up
19:24:55 <APic> ais523: Emacs can emulate vi much better than the other Way round
19:25:07 <esolangs> [[User:Yayimhere]] https://esolangs.org/w/index.php?diff=168645&oldid=168406 * Yayimhere2(school) * (+62) /* esolangs */
19:25:19 <korvo> Esperantists are concerned with "krokodilo", the act of speaking non-Esperanto, which is a social taboo. Lojbanists are often {xekce}, nitpicking each other's wording. Two different irritating pathologies.
19:25:25 <ais523> APic: yes – the interesting thing is that the Emacs and vi/vim philosophies are orthogonal and not really in conflict with each other
19:25:43 <ais523> so I think which side you prefer depends on what you value more
19:25:55 <ais523> Emacs solves some problems, vim solves some other problems
19:26:03 <ais523> if you have both sets of problems together you learn Emacs with vim bindings
19:26:04 <APic> ais523: Can You summarize both?
19:26:37 <APic> Emacs has M-x butterfly, thanks to Sepi, who i met often here in the µCCC in the Pasts 😌
19:26:48 <ais523> APic: vim is easier, it's primarily about editing speed – if you learn it fully (and are good at counting) you can very quickly fly across a document to find the places you want to change, and change them quickly
19:27:20 <ais523> Emacs is more about having the editor understand and be able to work with the structure of the file type you're using
19:27:21 <APic> (And of course originally thanks to https://xkcd.com/378/ )
19:27:44 <APic> ais523: Thanks!
19:28:14 <ais523> when writing most programming languages in Emacs (except Python), I immediately know when I've made a mistake matching brackets or quoting things because it indents to a column I wasn't expecting
19:28:22 <ais523> err, programs in most programming languages
19:28:37 <ais523> and this is true even if the brackets actually match, if they weren't matching the way I intended them to
19:29:02 <ais523> Emacs and vim have both got better at the other's speciality over time, though
19:29:14 <Yayimhere> APic: thats a pretty funny comic
19:29:27 <ais523> like, nowadays vim has syntax highlighting and auto-indentation and can probably even talk to language servers
19:29:29 <APic> Yayimhere: And a pretty epic Emacs Function!
19:29:38 <Yayimhere> Apic: lol
19:29:48 <APic> Yes, M-x butterfly really exists by now
19:30:11 <ais523> they did have to rearrange the sequence of keypresses from the comic in order to avoid clashing with other commands
19:30:33 <ais523> and the implemented version is just a joke command that isn't actually useful
19:31:39 <korvo> Yayimhere: There's always an xkcd. The Lojban word {xekce} is a Lojbanization of "xkcd"! It's a reference to https://xkcd.com/191/ (The alt text reads "haha that was a joke! please be my friend")
19:32:16 <ais523> I stopped reading xkcd after a while, some of them are good but most of them aren't the sort of thing I was interested in reading
19:33:40 <korvo> It's one of the few shared points of culture that we have, even if it's somewhat NASA- and MIT-specific. By contrast, stuff like Goomics https://goomics.net/ is probably not legible outside of Silicon Valley.
19:39:42 <APic> ais523: Yes
19:39:53 <APic> (To the Joke Command)
19:40:20 <Yayimhere> korvo: is there an esolang related xkcd?
19:40:56 * APic still reads XKCD regularly, and i even did not need https://ExplainXKCD.com/ very often in the Past
19:40:59 <ais523> there was one with a joke parser but its rules aren't consistent enough to implement (which I think was the joke)
19:44:06 <korvo> Yayimhere: https://xkcd.com/2309/ is one example.
19:44:33 <Yayimhere> korvo: lol
19:44:42 <Yayimhere> not that funny but oh well
19:45:54 <korvo> Sometimes satire stings.
19:46:05 <Yayimhere> yeaa
19:46:07 <korvo> Sometimes it just doesn't land.
19:46:31 <Yayimhere> true
19:47:43 <korvo> Yayimhere: It might help to know that there's a long tradition of people saying that introducing a bad programming language is morally bad, because when somebody learns to think in that bad language, they will have trouble imagining better possible ways of programming.
19:48:10 <korvo> There's a famous Dijkstra paper https://www.cs.utexas.edu/~EWD/transcriptions/EWD04xx/EWD498.html with quotes like "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
19:48:11 <Yayimhere> korvo: thats the state of me currently
19:48:32 <Yayimhere> also thats a wild qoute
19:50:02 <korvo> There's also a famous Paul Graham essay which I'm not linking because he's a bad writer, where he introduces the Blub paradox: people who only know one language, call it Blub, have a tough time imagining anything else. Everything's either weaker than Blub or more complex than Blub. https://wiki.c2.com/?BlubParadox
20:06:06 -!- Yayimhere has quit (Quit: Client closed).
20:13:05 <ais523> korvo: fwiw the first language I programmed in was BASIC
20:13:14 <ais523> but I was only about 6 years old at the time and didn't understand looops
20:13:44 <ais523> that said, my "main" language growing up was Visual Basic for Applications, with data I wanted to persist being stored in cells of an Excel spreadsheet
20:13:59 <ais523> (oddly, this lead to me giving up on Windows because it broke backwards compatibility too often)
20:15:14 <ais523> I'm really not sure what the best language for teaching is, atm
20:16:57 <zzo38> I think what Dijkstra wrote about that is not really accurate
20:17:35 -!- pool has quit (Read error: Connection reset by peer).
20:18:17 <ais523> zzo38: what's the first programming language you seriously used?
20:19:30 -!- pool has joined.
20:19:34 <zzo38> I do not remember, but I think it was BASIC
20:19:57 <ais523> I think that's probably common for a lot of people my age, it was readily available at the time
20:20:04 <ais523> (starting with BASIC, that is)
20:20:21 <ais523> nowadays it's still available but computers don't normally boot into it
20:21:05 <sorear> we got a good decade when every Mac booted into Forth but this didn't translate into a popularity boom
20:21:11 <ais523> oh right, I remember now – when I left primary school, the school was replacing its old 6502-based computers that booted into BASIC with newer ones, and they let the pupils/their parents buy them for very low prices as a result
20:21:33 <ais523> so I had a computer that booted into BASIC, but they also gave me a book on 6502 asm for some reason
20:21:36 <ais523> so I learned asm from that
20:22:02 <ais523> I don't think I wrote any complicated programs in 6502 asm but it was still a new skill to learn and it came in handy later
20:22:22 <zzo38> I think a computer design should have the option to boot into BASIC or Forth (and do this automatically if configured to do so or if there is no operating system to load)
20:22:31 <ais523> the house also had a couple of manuals for a Prolog implementation, for reasons I don't fully understand
20:22:43 <ais523> but I went and read those a lot, and eventually ended up implementing my own mini-Prolog in Microsoft Excel
20:22:53 <ais523> (because I didn't otherwise have a Prolog implementation to try it out in)
20:23:14 <ais523> I didn't do much with that, but I did start codegolfing in Prolog later on and already knew how to write it from reading the textbooks
20:23:34 <ais523> zzo38: it probably wouldn't be too hard to write a bootloader that does that, nowadays
20:23:43 <ais523> the difficult part would likely be file handling (it was the difficult part at the time, too!)
20:24:27 <ais523> the computers came with 5¼" floppy drives but nobody there really understood how to use them
20:24:46 <zzo38> I think it should be stored in ROM so that it will work even without a disk
20:24:50 <ais523> (software-wise, that is – the hardware side was much easier)
20:25:00 <ais523> zzo38: I mean, to save the program once you'd written it
20:25:41 <zzo38> Yes, the ability to read/write disks will still be useful to include
20:27:00 <sorear> that's what the block word set is for
20:27:39 <ais523> actually I feel like one thing that's really important in a teaching-programming environment (and useful even for programming generally) is a good way of handling persistence
20:27:51 <ais523> you want to be able to persist the program and data separately
20:28:22 <ais523> even when I was a child, I wanted to be able to write simple games and have a way to have separate save files, so a whole "mix up all the program and data" approach (like, e.g., Smalltalk uses) wasn't really appropriate
20:28:44 <ais523> I think I did it anyway (within Excel) by having a sort of "blank save" state and commands to copy it over the saved game
20:28:53 <zzo38> I agree that storing them separately is helpful
20:29:11 <sorear> it does however mean that you have to actually define your data model
20:30:05 <ais523> sorear: I'm not convinced, a "blank all *these* storage locations" can be implemented even without really understanding what you're doing
20:33:23 <APic> Humans built a Lot of Cities without understanding what they did
21:00:45 <b_jonas> why do I get a HTTP 500 error when I'm trying to pull anything from github from a http origin?
21:01:11 <ehmry> internet is old and tired
21:01:20 <ehmry> and made some bad decisions
21:03:18 <ais523> github has been becoming increasingly broken recently
21:03:38 <ais523> the most annoying to me is that the button to load more comments on an issue page loses your scroll position and normally jumps back up to near the top of the page
21:04:02 <ais523> (I don't actually understand why pages have that sort of button, just sending all the comments unconditionally would probably be less bandwidth than sending all the JS they send)
21:05:30 <JAA> b_jonas: https://www.githubstatus.com/incidents/5q7nmlxz30sk
21:05:47 <sorear> most of my page loads send 0 bytes of JS...
21:05:56 <JAA> As they should.
21:06:51 <b_jonas> JAA: I see
21:06:52 <JAA> Immich is a particularly ridiculous example. It loads over a hundred scripts to display an image.
21:07:08 <JAA> If only browsers knew what to do with a bare image file.
21:07:10 <ais523> the other thing that bothers me is that the Github pull-request-conversation and issue-conversation views have effectively the same functionality and requirements and yet are clearly implemented with entirely different code
21:07:27 <ais523> because the UI is different in a number of ways which are reasonable in each case but there's no reason for it not to match
21:07:42 <JAA> Heh
21:10:04 <ais523> (and because the annoying scrolling bug I mentioned above affects only issues, not pull requests)
21:10:34 <ais523> I'm wondering whether Github is implemented mostly with Copilot nowadays, that might explain why it doesn't work properly any more
21:11:13 <sorear> i think that particular bug predates copilot
21:12:40 <ais523> it isn't the only bug or even the only bug that's affected me, just the one that I most often hit and that most often annoys me personally
21:14:36 <ais523> (I dislike using Github in general but for some projects it's either the only, or the least objectionable, way to interact with them)
21:14:52 <JAA> Yeah, lots of things on GitHub mess up the scroll position.
21:15:18 <JAA> There's one I run into from time to time involving the tree and blob view.
21:15:46 <JAA> Going back to the tree from a blob retains the scroll position in the blob or something like that.
21:16:06 <JAA> Instead of going to the scroll position you had on the tree, as it would work if they were simply normal HTML pages.
21:16:34 <JAA> But no, everything needs to be JS and then fixed by adding more JS to remember and restore scroll positions.
21:17:45 -!- pool has quit (Read error: Connection reset by peer).
21:19:47 <ais523> this sort of conversation is frustrating because it is clear that everyone involved in it is likely to be agreeing with each other, and yet can't do anything about it
21:19:52 -!- pool has joined.
21:27:17 <b_jonas> func oeis_r.getraw is [get [eval use URI; $a=URI->new("http://oeis.org"); $a->query_form("q", [arg d] ); "$a"] .*]
21:27:22 <b_jonas> perlbot func oeis_r.getraw is [get [eval use URI; $a=URI->new("http://oeis.org"); $a->query_form("q", [arg d] ); "$a"] .*]
21:27:22 <perlbot> b_jonas: Stored oeis_r.getraw is [get [eval use URI; $a=URI->new("http://oeis.org"); $a->query_form("q", [arg d] ); "$a"] .*]
21:28:26 <b_jonas> func oeis_r.new [eval use HTML::Tree; for$e(HTML::Tree->new_from_content([quote d [oeis_r.getraw [arg]]])->descendants){ $o{$e->attr("class")}//=$e->as_text } $o{seqnumname}//$o{pagelinkbox} ]
21:28:32 <b_jonas> perlbot func oeis_r.new [eval use HTML::Tree; for$e(HTML::Tree->new_from_content([quote d [oeis_r.getraw [arg]]])->descendants){ $o{$e->attr("class")}//=$e->as_text } $o{seqnumname}//$o{pagelinkbox} ]
21:28:33 <perlbot> b_jonas: No factoid found. Did you mean one of these: [function p3rl] [functionalperl] [fursecute] [fnux] [felsius] [nomikos] [foo_macro] [on second] [punchcard] [finger print]
21:28:38 <b_jonas> perlbot func oeis_r.new is [eval use HTML::Tree; for$e(HTML::Tree->new_from_content([quote d [oeis_r.getraw [arg]]])->descendants){ $o{$e->attr("class")}//=$e->as_text } $o{seqnumname}//$o{pagelinkbox} ]
21:28:39 <perlbot> b_jonas: Stored oeis_r.new is [eval use HTML::Tree; for$e(HTML::Tree->new_from_content([quote d [oeis_r.getraw [arg]]])->descendants){ $o{$e->attr("class")}//=$e->as_text } $o{seqnumname}//$o{pagelinkbox} ]
21:29:00 <b_jonas> perlbot oeis_r.new 184,192,188
21:29:00 <perlbot> b_jonas: Compose failed to find a plugin named: oeis_r.getraw
21:29:12 <b_jonas> perlbot call oeis_r.new 184,192,188
21:29:13 <perlbot> b_jonas: Compose failed to find a plugin named: oeis_r.getraw
21:29:16 <ais523> perlbot: karma C
21:29:16 <perlbot> ais523: C has karma of 23884
21:29:34 <b_jonas> perlbot func oeis_r.new is [eval use HTML::Tree; for$e(HTML::Tree->new_from_content([quote d [#esolangs oeis_r.getraw [arg]]])->descendants){ $o{$e->attr("class")}//=$e->as_text } $o{seqnumname}//$o{pagelinkbox} ]
21:29:35 <perlbot> b_jonas: Stored oeis_r.new is [eval use HTML::Tree; for$e(HTML::Tree->new_from_content([quote d [#esolangs oeis_r.getraw [arg]]])->descendants){ $o{$e->attr("class")}//=$e->as_text } $o{seqnumname}//$o{pagelinkbox} ]
21:29:38 <b_jonas> perlbot call oeis_r.new 184,192,188
21:29:39 <perlbot> b_jonas: Compose failed to find a plugin named: #esolangs
21:29:47 <b_jonas> perlbot func oeis_r.new is [eval use HTML::Tree; for$e(HTML::Tree->new_from_content([quote d [call oeis_r.getraw [arg]]])->descendants){ $o{$e->attr("class")}//=$e->as_text } $o{seqnumname}//$o{pagelinkbox} ]
21:29:48 <perlbot> b_jonas: Stored oeis_r.new is [eval use HTML::Tree; for$e(HTML::Tree->new_from_content([quote d [call oeis_r.getraw [arg]]])->descendants){ $o{$e->attr("class")}//=$e->as_text } $o{seqnumname}//$o{pagelinkbox} ]
21:29:51 <b_jonas> perlbot call oeis_r.new 184,192,188
21:29:55 <perlbot> b_jonas: A310386 Coordination sequence Gal.6.368.1 where Gal.u.t.v denotes the coordination sequence for a vertex of type v in tiling number t in the Galebach list of u-uniform tilings.
21:29:58 <b_jonas> perlbot call oeis_r.new 184,192,186
21:30:02 <perlbot> b_jonas: Sorry, but the terms do not match anything in the table. The following advanced matches exist for the numeric terms in your query.
21:30:14 <b_jonas> perlbot func oeis_r is [eval use HTML::Tree; for$e(HTML::Tree->new_from_content([quote d [call oeis_r.getraw [arg]]])->descendants){ $o{$e->attr("class")}//=$e->as_text } $o{seqnumname}//$o{pagelinkbox} ]
21:30:15 <perlbot> b_jonas: Stored oeis_r is [eval use HTML::Tree; for$e(HTML::Tree->new_from_content([quote d [call oeis_r.getraw [arg]]])->descendants){ $o{$e->attr("class")}//=$e->as_text } $o{seqnumname}//$o{pagelinkbox} ]
21:30:24 <b_jonas> perlbot call oeis_r 184,192,18
21:30:27 <perlbot> b_jonas: Sorry, but the terms do not match anything in the table. The following advanced matches exist for the numeric terms in your query.
21:30:29 <b_jonas> perlbot call oeis_r 184,192,188
21:30:33 <perlbot> b_jonas: A310386 Coordination sequence Gal.6.368.1 where Gal.u.t.v denotes the coordination sequence for a vertex of type v in tiling number t in the Galebach list of u-uniform tilings.
21:30:43 <b_jonas> perlbot call oeis_r A390757
21:30:46 <perlbot> b_jonas: A390757 Numbers k such that (23^k - 4^k)/19 is prime.
21:30:48 <JAA> ais523: Yeah, very true. Venting can feel good personally, but indeed not constructive.
21:30:55 <int-e> . o O ( was unmuting perlbot really a good idea )
21:30:55 <b_jonas> perlbot forget oeis_r.new
21:30:55 <perlbot> b_jonas: Forgot oeis_r.new
21:31:19 <b_jonas> int-e: well we have a working OEIS command now
21:31:25 <b_jonas> or did lambdabot's work?
21:31:37 <ais523> @oeis 184, 192, 188
21:31:37 <lambdabot> Sequence not found.
21:31:46 <ais523> @oeis 184,192,188
21:31:47 <lambdabot> Sequence not found.
21:32:26 <ais523> perlbot: call oeis_r 1,1,1,3,5,9,17
21:32:30 <perlbot> ais523: A000213 Tribonacci numbers: a(n) = a(n-1) + a(n-2) + a(n-3) with a(0)=a(1)=a(2)=1. (Formerly M2454 N0975)
21:32:44 <b_jonas> perlbot oeis_3 184,192,188
21:32:44 <perlbot> b_jonas: No factoid found. Did you mean one of these: [oeis 1] [oic] [oogy] [.oh.us]
21:32:46 <b_jonas> perlbot oeis_r 184,192,188
21:32:49 <perlbot> b_jonas: A310386 Coordination sequence Gal.6.368.1 where Gal.u.t.v denotes the coordination sequence for a vertex of type v in tiling number t in the Galebach list of u-uniform tilings.
21:33:03 <ais523> b_jonas: is there a reason you're testing with that sequence specifically?
21:33:04 <b_jonas> I don't think you need the call in a top-level command, you need it inside a macro or compose command
21:34:37 <b_jonas> ais523: not really. I asked OEIS for a random recently added, sequence, got something like A390396 which has the infix 184,192,195, and I started to decrease the last term
21:36:40 <b_jonas> perlbot compose `eval "I was trying with this query first, but the title of the sequence is so short that the reply looks wrong"; `quote d `call oeis_r 3887,23327,139967'''
21:36:44 <perlbot> b_jonas: A198796 3*6^n-1.
21:37:03 <int-e> I guess I should've expected this: (github) remote: Internal Server Error
21:41:19 <int-e> anyway, lambdabot's issue is that OEIS force-forwards HTTP to HTTPS and the implementation used relies on a HTTP library that doesn't have TLS support.
21:41:35 -!- sytra has joined.
21:42:08 <int-e> I have an update for that and never got it to the actual bot :P
21:46:31 <b_jonas> I just like perlbot because I can implement a custom command to get info from any website and process it in any way, even in multiple steps with multiple website access. there happens to be an oeis builtin, but probably only for historical reasons. HackEso can't do this, it doesn't have a service that lets us send web queries.
21:46:51 <b_jonas> and this one supports https
21:47:11 <b_jonas> or.. um
21:47:26 <b_jonas> perlbot literal oeis_r.getraw
21:47:26 <perlbot> b_jonas: <*:##NULL> func oeis_r.getraw is [get [eval use URI; $a=URI->new("http://oeis.org"); $a->query_form("q", [arg d] ); "$a"] .*]
21:47:42 <b_jonas> perlbot func oeis_r.getraw is [get [eval use URI; $a=URI->new("https://oeis.org"); $a->query_form("q", [arg d] ); "$a"] .*]
21:47:43 <perlbot> b_jonas: Stored oeis_r.getraw is [get [eval use URI; $a=URI->new("https://oeis.org"); $a->query_form("q", [arg d] ); "$a"] .*]
21:47:51 <b_jonas> perlbot oeis_r 184,192,188
21:47:54 <perlbot> b_jonas: A310386 Coordination sequence Gal.6.368.1 where Gal.u.t.v denotes the coordination sequence for a vertex of type v in tiling number t in the Galebach list of u-uniform tilings.
21:48:03 <b_jonas> yep, supports HTTPS
21:53:43 <b_jonas> github may have fixed the problem, I could successfully pull now
21:55:05 <b_jonas> int-e: ^
21:55:47 <int-e> apparently so, what unlucky timing
21:55:53 <int-e> (thanks)
22:07:10 <esolangs> [[User:Buckets]] M https://esolangs.org/w/index.php?diff=168646&oldid=168573 * Buckets * (+16)
22:07:48 <zzo38> Many servers redirect from HTTP to HTTPS and in my opinion they should not do that (at least for read only files that do not require authentication to access). (My specification of Scorpion protocol also says it is not supposed to do that, unless the client is trying to authenticate with a X.509 certificate.)
22:08:50 <int-e> yeah but these windmills have sailed ;)
22:09:51 <esolangs> [[Language list]] M https://esolangs.org/w/index.php?diff=168647&oldid=168581 * Buckets * (+17)
22:10:13 <esolangs> [[Befunge]] N https://esolangs.org/w/index.php?oldid=168648 * Buckets * (+2135) Created page with "Befunge is An Esoteric programming language created by [[User:Buckets]] in 2020 to be a 1-d [[Befunge]] before [[User:Buckets]] learned the existence of [[Befunge#History|Unefunge]]. Even though The esolang is 1-d, multiple Lines are Not banned, but If you use them You
22:11:10 <zzo38> Cookies have a secure flag but I think it could be implemented in a way that ignores that and instead any cookies set with TLS should not be sent without TLS, and could also warn before sending the cookies if the server's certificate does not match; however, cookies are not the best kind of authentication anyways and X.509 client certificates will be better.
22:15:32 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
22:16:29 -!- tromp has joined.
22:18:03 -!- pool has quit (Read error: Connection reset by peer).
22:20:01 -!- pool has joined.
22:21:13 <zzo38> (There are a few HTTP servers that do not automatically redirect to HTTPS, but do support HTTPS as well.)
22:37:02 <APic> Good Night
22:57:36 <esolangs> [[User talk:]] https://esolangs.org/w/index.php?diff=168649&oldid=168633 * * (+2)
23:00:26 <esolangs> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=168650&oldid=168631 * * (+50)
23:01:17 -!- Sgeo has joined.
23:09:39 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…).
23:34:16 -!- sytra has quit (Remote host closed the connection).
23:41:32 <b_jonas> perlbot echo esolangs: what is the programming language created by Arthur Whitney called?
23:41:32 <perlbot> b_jonas: esolangs: what is the programming language created by Arthur Whitney called?
23:41:59 <b_jonas> ais523: so perlbot might be ignoring esolangs now, but I'm not sure how to test that
23:42:38 <b_jonas> `echo perlbot: echo +5409-2531-8837+6134
23:42:40 <HackEso> perlbot: echo +5409-2531-8837+6134
23:42:40 <perlbot> HackEso: +5409-2531-8837+6134
23:43:03 <ais523> I don't think esolangs can be made to answer something that perlbot will react to with a message, unless there's a way to add new triggers that look mid-message
23:43:15 <ais523> (reminder to everyone that the IRC spec says that bots should use PNs rather than PMs, but this is widely ignored)
23:43:42 <b_jonas> ais523: why did you ask for perlbot to ignore esolangs then?
23:43:51 <b_jonas> or did I misunderstand your ignore request?
23:44:00 <ais523> b_jonas: in case the same loop happens later
23:44:20 <ais523> it was caused by a malfunction in perlbot that caused anything it looks for to produce a message, even if it wouldn't normally react to it with a messag
23:44:28 <ais523> but if the malfunction isn't there you can't test
23:44:50 <int-e> ais523: IIRC mIRC decided that "notice" is something important that produces a popup, and that killed the notion completely, if it was ever adhered to
23:45:01 <ais523> oh right, mIRC ruining everytihng
23:47:42 <b_jonas> and bots disagree on the new protocol instead of notice. some bots like HackEso think they should only reply to messages that start with their invocation character(s), eg. HackEso. some think they should only reply to messages that start with their nick, eg. jevalbot. usually these only answer if the nick is right at the start of the message, but perlbot does not adhere to that convention. some bots
23:47:48 <b_jonas> answer to both nick and shortcut invocation, eg. jevalbot or lambdabot.
23:48:40 <b_jonas> also some bots answer to private messages without requiring any sort of prefix. that can be quite dangerous because if you make one bot like that private message another they'll often botloop.
23:50:43 <b_jonas> you can get the a similar problem with two bots that each respond to their own nick and reply with the sender's nick without a prefix, eg. perlbot
23:50:45 <perlbot> b_jonas: I am #perl's infobot and utility bot. I only answer if addressed. Type "perlbot: perl" to learn about "perl", "perlbot: re" to learn about "re", etc. I was originally written by Chris62vw but am currently maintained by simcop2387 and the codebase is based on "buubot". For more information see, perlbot: source
23:50:58 <b_jonas> NO YOU DON'T
23:51:39 <ais523> b_jonas: how did you trigger that? it could be used to test the ignore
23:51:53 <b_jonas> I don't know. perlbot?
23:52:09 <ais523> was it just a case of writing a message that ends with perlbot
23:52:17 <ais523> apparently not
23:52:41 <b_jonas> there might be a cooldown for that. let me search the source code
←2025-11-17 2025-11-18 2025-11-19→ ↑2025 ↑all