< 1635034543 96186 :Lord_of_Life!~Lord@user/lord-of-life/x-2819915 QUIT :Ping timeout: 244 seconds < 1635034590 597821 :Lord_of_Life!~Lord@user/lord-of-life/x-2819915 JOIN #esolangs Lord_of_Life :Lord < 1635057039 756516 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :just realised that ttyrec is similar to gif in the way that it encodes timestamped regions < 1635057045 718560 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :there should be ttyrec compressors < 1635062746 638766 :hendursa1!~weechat@user/hendursaga JOIN #esolangs hendursaga :weechat < 1635062910 625061 :hendursaga!~weechat@user/hendursaga QUIT :Ping timeout: 276 seconds > 1635064637 829490 PRIVMSG #esolangs :14[[07Broken Calculator14]]4 M10 02https://esolangs.org/w/index.php?diff=89020&oldid=89008 5* 03Iamn00b 5* (+3) 10minor change < 1635065849 592328 :Sgeo!~Sgeo@user/sgeo QUIT :Read error: Connection reset by peer < 1635071364 635971 :SGautam!uid286066@id-286066.ilkley.irccloud.com JOIN #esolangs SGautam :Siddharth Gautam < 1635076152 16380 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN #esolangs oerjan :Ørjan Johansen < 1635076281 692293 :Noisytoot!~noisytoot@sourcehut/user/noisytoot QUIT :Quit: ZNC 1.8.2 - https://znc.in < 1635076960 283971 :Noisytoot!~noisytoot@sourcehut/user/noisytoot JOIN #esolangs Noisytoot :Ron < 1635077517 722615 :sprout_!~quassel@86-82-44-193.fixed.kpn.net JOIN #esolangs * :anon < 1635077720 574576 :sprout!~quassel@2a02:a467:ccd6:1:5d6e:87c6:1a95:cc2d QUIT :Ping timeout: 260 seconds > 1635078461 635159 PRIVMSG #esolangs :14[[07Special:Log/upload14]]4 upload10 02 5* 03Dominicentek 5* 10uploaded "[[02File:ImagePath - Hello World.png10]]" < 1635081350 67490 :Thelie!~Thelie@business-24-134-17-157.pool2.vodafone-ip.de JOIN #esolangs * :Thelie < 1635081672 781693 :APic!apic@apic.name PRIVMSG #esolangs :Hi < 1635082607 283984 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :I've been trying to construct the real numbers in Agda < 1635083676 707037 :shachaf!~shachaf@user/shachaf PRIVMSG #esolangs :Taneb: With what sort of construction? < 1635083731 207885 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :Cauchy sequences with explicit moduli of conversion < 1635083765 159082 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :dedekind kuts seem easier < 1635083773 397825 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :maybe less computational? < 1635083803 410282 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :I went with Cauchy sequences mostly because it's what I was in the mood for < 1635083814 428725 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :sure < 1635083816 192785 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :they vibe < 1635083963 497350 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :I believe Dedekind cuts are a trap, don't use them. They sound like they're easier because the definition of the set of reals itself is simpler. But once you actually try to define arithmetic and prove all its nice properties, Cauchy sequences behave nicer. < 1635084087 788678 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :b_jonas: are you speaking from experience? < 1635084200 849725 :riv!river@tilde.team/user/river PRIVMSG #esolangs :im no fan of dedekind cuts either < 1635084222 962384 :riv!river@tilde.team/user/river PRIVMSG #esolangs :i read some interesting discussion about how dedekind cuts vs cauchy sequences are actually different in some way, in constructive logic < 1635084254 254559 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :Yeah, you can turn a Cauchy sequence into a dedekind cut but not the other way around, I think < 1635084277 658886 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :(constructively, at least. They're classically equivalent) < 1635084320 816837 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :as presumed < 1635084327 413243 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :thanks folks < 1635084417 849614 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :I couldn't immediately see how to prove that multiplication converges, so I'm taking a little break. I'm normally best at this sort of thing just after I wake up, I think < 1635084773 549454 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :that's uhm < 1635084779 653212 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :a mathematical analysis theorem < 1635084785 710705 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :you go like uhm < 1635084792 791124 :sprout_!~quassel@86-82-44-193.fixed.kpn.net PRIVMSG #esolangs :uh, my intution would be that reals just aren't pat of constructive mathematics, period? < 1635084799 889338 :sprout_!~quassel@86-82-44-193.fixed.kpn.net PRIVMSG #esolangs :*part < 1635084817 152682 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :|a_n * b_n - a*b| = |a_n * b_n - a * b_n + a * b_n - a * b| < 1635084822 856619 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :sprout_: why do you think that? < 1635084823 292921 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :then argue by triangular inequality < 1635084851 833637 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :|a_n * b_n - a * b_n| + |a * b_n - a * b| < 1635084856 826374 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :second member converges < 1635084863 159544 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :first member must be argued about twice < 1635084880 154948 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :ah no ok, you use that convergent series are limited < 1635084882 296519 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :b_n is limited < 1635084884 426682 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :you got the moves < 1635084894 485264 :sprout_!~quassel@86-82-44-193.fixed.kpn.net PRIVMSG #esolangs :Taneb: no idea. because? infinite approximations and all that. probably not well founded when you observe it mathematically < 1635084926 598876 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :sprout_: in practice, you can define pretty much all of it, but you can't compute whether two arbitrary reals are equal < 1635084928 28481 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :sprout_: constructively reals are indeed on demand fractional numbers < 1635084931 847207 :sprout_!~quassel@86-82-44-193.fixed.kpn.net PRIVMSG #esolangs :any approximation is wf, but the thing itself isn't < 1635084937 380551 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :the more you want precision < 1635084943 753346 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :the more fractional numbers you can get < 1635084951 481741 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :that's why cauchy sequences is a good model < 1635084958 360984 :shachaf!~shachaf@user/shachaf PRIVMSG #esolangs :In fact no nontrivial property of the reals is decidable. < 1635084972 563760 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :you can get as far as you want in the sequence for getting a better approximation of reals < 1635085268 444851 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :Franciman: ah, I've not yet proven that convergent series are limited < 1635085284 42198 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :that's eaz < 1635085292 798502 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :how do you define convergent? < 1635085325 563812 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :epsilon-delta yadda yadda? < 1635085384 514856 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :seq is convergent iff forall positive rational epsilon, there exists an N such that for all m, n > N, |seq[m]-seq[n]| < epsilon < 1635085529 842705 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :Oh, I think I see how to do it < 1635085552 405786 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :I can ask how far I need to go before it's all within epsilon = 1 (say), then take the max up to then and add 1 < 1635085567 963638 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :exactly! < 1635085577 921511 :Franciman!~Franciman@mx1.fracta.dev PRIVMSG #esolangs :ggwp > 1635086182 131094 PRIVMSG #esolangs :14[[07User:Hakerh400/How to solve Slitherlink using SAT solver14]]4 10 02https://esolangs.org/w/index.php?diff=89022&oldid=89015 5* 03Hakerh400 5* (+4) 10 < 1635086744 519927 :Thelie!~Thelie@business-24-134-17-157.pool2.vodafone-ip.de QUIT :Remote host closed the connection < 1635088350 945273 :arseniiv!~arseniiv@136.169.235.33 JOIN #esolangs * :the chaotic arseniiv < 1635089825 81391 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :"Real Analysis in Reverse" https://arxiv.org/abs/1204.4483 is a fun paper which compares different ways of constructing reals. < 1635091870 811939 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :got suspended on reddit for saying that they suspend for reasons not stated in their rules < 1635091980 739121 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :(of course there is no rule against saying what I said) < 1635092355 941679 :arseniiv!~arseniiv@136.169.235.33 QUIT :Ping timeout: 265 seconds > 1635092861 966152 PRIVMSG #esolangs :14[[07Special:Log/upload14]]4 upload10 02 5* 03Dominicentek 5* 10uploaded "[[02File:ImagePath - Truth Machine.png10]]" > 1635092893 534310 PRIVMSG #esolangs :14[[07Special:Log/upload14]]4 upload10 02 5* 03Dominicentek 5* 10uploaded "[[02File:ImagePath - Cat Program.png10]]" > 1635092985 248109 PRIVMSG #esolangs :14[[07ImagePath14]]4 N10 02https://esolangs.org/w/index.php?oldid=89025 5* 03Dominicentek 5* (+2595) 10Created page with "ImagePath is an esoteric programming language created by Dominicentek for Truttle1's Visuals Esojam. It has a pointer that executes pixels in an image as instructions. Path is..." > 1635093055 578693 PRIVMSG #esolangs :14[[07User:Dominicentek14]]4 10 02https://esolangs.org/w/index.php?diff=89026&oldid=87955 5* 03Dominicentek 5* (+26) 10 > 1635093120 747457 PRIVMSG #esolangs :14[[07Language list14]]4 10 02https://esolangs.org/w/index.php?diff=89027&oldid=88948 5* 03Dominicentek 5* (+16) 10/* I */ < 1635093765 189457 :arseniiv!~arseniiv@136.169.235.33 JOIN #esolangs * :the chaotic arseniiv < 1635095941 971239 :Sgeo!~Sgeo@user/sgeo JOIN #esolangs Sgeo :realname > 1635096168 693157 PRIVMSG #esolangs :14[[07User:Hakerh400/Ideal programming language14]]4 N10 02https://esolangs.org/w/index.php?oldid=89028 5* 03Hakerh400 5* (+9570) 10Created page with "== Requirements == The more requirements from this list a language satisfies, the better language it is (more useful). Below is my opinion about some popular programming lang..." > 1635096233 911839 PRIVMSG #esolangs :14[[07User:Hakerh40014]]4 10 02https://esolangs.org/w/index.php?diff=89029&oldid=89016 5* 03Hakerh400 5* (+89) 10 > 1635096467 711051 PRIVMSG #esolangs :14[[07Composite14]]4 M10 02https://esolangs.org/w/index.php?diff=89030&oldid=88486 5* 03ArthroStar11 5* (-43) 10fixed typo and updated interpreter link > 1635096528 924954 PRIVMSG #esolangs :14[[07User:ArthroStar1114]]4 M10 02https://esolangs.org/w/index.php?diff=89031&oldid=88966 5* 03ArthroStar11 5* (-41) 10updated link to Composite > 1635096992 71074 PRIVMSG #esolangs :14[[07User:Hakerh400/Ideal programming language14]]4 10 02https://esolangs.org/w/index.php?diff=89032&oldid=89028 5* 03Hakerh400 5* (+163) 10Add Java > 1635097053 949154 PRIVMSG #esolangs :14[[07User:Hakerh400/Ideal programming language14]]4 10 02https://esolangs.org/w/index.php?diff=89033&oldid=89032 5* 03Hakerh400 5* (+21) 10 < 1635098140 614486 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :Taneb: not from experience, in that I never tried to formalize reals in Agda or other proof systems. < 1635098248 358477 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :(also not from experience in that I didn't invent real numbers, you did) < 1635098454 67588 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :"ah, I've not yet proven that convergent series are limitedah, I've not yet proven that convergent series are limited" => no, what you need is that Cauchy sequences are bounded. you don't need to even define convergent sequences until later, when you have real numbers. < 1635098470 597111 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :One can get pretty far with functions N -> 2 or N -> N depending on what one wants. To get good convergence, use something like continued logarithms (for N -> 2) or continued fractions (for N -> N). < 1635098476 295900 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :"seq is convergent iff forall positive rational epsilon, there exists an N such that"for all m, n > N, |seq[m]-seq[n]| < epsilon" => yeah, that's a Cauchy sequence < 1635098501 420930 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :Actually *writing* a formal library that proves facts and is correct is hard, but the conceptual part is straightforward enough. < 1635098517 460164 :b_jonas!~x@catv-176-63-3-240.catv.broadband.hu PRIVMSG #esolangs :"continued logarithms" => what? < 1635098599 410705 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :Like continued fractions, but with multiplication and division. They were described by Gosper in the same memo as their algorithms for continued fractions. < 1635098621 744542 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :https://carma.newcastle.edu.au/resources/jon/clogs.pdf is an example fun paper about them. < 1635098679 941772 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :Actually, this paper's great because it shows one way to build a correspondence between the N -> 2 and N -> N spaces by using the latter as run-length-encoding of the former. < 1635098897 604310 :Taneb!~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0 PRIVMSG #esolangs :b_jonas: I was keeping the same vocabulary as Franciman there < 1635099172 345100 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :sprout_: It can be taken as an axiom (the "Turing axiom" IIRC?) that the reals are computable. IIUC the resulting real numbers are sufficiently smooth for typical work, but I'm not sure; looking for references. < 1635099289 518119 :Corbin!~Corbin@c-73-67-140-116.hsd1.or.comcast.net PRIVMSG #esolangs :Ah, https://en.wikipedia.org/wiki/Church%27s_thesis_(constructive_mathematics) is the axiom. We must give up LEM, but that's fine constructively. < 1635099612 44547 :arseniiv!~arseniiv@136.169.235.33 QUIT :Ping timeout: 244 seconds < 1635100694 371008 :zegalch!~zegalch@178.128.75.133 QUIT :Remote host closed the connection < 1635100720 111850 :zegalch!~zegalch@178.128.75.133 JOIN #esolangs zegalch :The Lounge User < 1635102135 23929 :myname!~myname@ks300980.kimsufi.com PRIVMSG #esolangs :today i learned about the rado graph. surely, there is an esolang just hiding in there < 1635103195 288095 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :https://www.youtube.com/watch?v=4y_nmpv-9lI < 1635103256 10201 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :I'm not sure how the sqrt method works but I see another method that has no rejection and has only two random() calls, not three, like the rest of the methods he showed < 1635103697 832363 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :a = rand(); b = rand(); if (a < b) then { r = b; angle = a / b } else { r = 1 - b; angle = (1 - a) / b } < 1635104054 737640 :riv!river@tilde.team/user/river PRIVMSG #esolangs :wow < 1635104083 668267 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :oh, angle *= 2*pi after that < 1635104088 121512 :riv!river@tilde.team/user/river PRIVMSG #esolangs :never seen this way < 1635104296 580145 :nakilon!~nakilon@user/nakilon PRIVMSG #esolangs :and / (1 - b), not / b , in the second branch < 1635105930 387523 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca QUIT :Ping timeout: 258 seconds < 1635105993 311429 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca JOIN #esolangs zzo38 :zzo38 < 1635106139 959865 :SGautam!uid286066@id-286066.ilkley.irccloud.com QUIT :Quit: Connection closed for inactivity < 1635107144 991149 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca QUIT :Ping timeout: 244 seconds < 1635107256 663284 :Lykaina!~Lykaina@cpe-67-255-96-229.stny.res.rr.com JOIN #esolangs Lykaina :Lykaina Wolfe < 1635107369 343574 :zzo38!~zzo38@host-24-207-14-22.public.eastlink.ca JOIN #esolangs zzo38 :zzo38 < 1635109965 334291 :imode!~imode@user/imode PRIVMSG #esolangs :can you do an if/else if/else if/.../else structure in brainfuck? < 1635109991 111409 :imode!~imode@user/imode PRIVMSG #esolangs :I feel like I've had this answered before.. < 1635110123 291786 :earendel!uid498179@user/earendel JOIN #esolangs earendel :AmoreFS < 1635110169 512693 :imode!~imode@user/imode PRIVMSG #esolangs :I know you can do if/else pairs and by extension if/else chains. < 1635110191 280455 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :imode: hm i did a case match when i wrote mbfi the other day, that's pretty close. < 1635110192 524392 :imode!~imode@user/imode PRIVMSG #esolangs :but I feel like you can't just arbitrarily insert new conditions without having continual nesting. < 1635110201 826673 :imode!~imode@user/imode PRIVMSG #esolangs :oerjan: mbfi? < 1635110210 253967 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :^wiki mbfi < 1635110217 996415 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :hum < 1635110223 386147 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :`wiki mbfi < 1635110224 481099 :HackEso!~h@techne.zem.fi PRIVMSG #esolangs :https://esolangs.org/wiki/mbfi < 1635110231 814037 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :fungot!!!!!! < 1635110255 871721 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :although i borrowed the method from cgbfi < 1635110283 237643 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :basically you set a flag first, and the first condition to match clears it. < 1635110305 565245 :imode!~imode@user/imode PRIVMSG #esolangs :how is that phrased generally? it looks like nested if/else chains to me. < 1635110316 120022 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :yes. < 1635110327 90463 :imode!~imode@user/imode PRIVMSG #esolangs :ah. yeah.. I was hoping something like... < 1635110364 299212 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :you want to avoid increasing nesting level? < 1635110366 526273 :imode!~imode@user/imode PRIVMSG #esolangs : if else if else if ... else end < 1635110368 960408 :imode!~imode@user/imode PRIVMSG #esolangs :yeah. < 1635110373 195350 :imode!~imode@user/imode PRIVMSG #esolangs :just straight linear. < 1635110399 642985 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :well you can do that with flags too, i should think < 1635110400 105908 :imode!~imode@user/imode PRIVMSG #esolangs :you can do it if you add an additional conditional "break" instruction but that's cheating. < 1635110416 748138 :imode!~imode@user/imode PRIVMSG #esolangs :I don't think you can, because there always has to be some check, and checking induces nesting. < 1635110437 500785 :imode!~imode@user/imode PRIVMSG #esolangs :i.e "if this didn't run, run that". < 1635110444 562218 :imode!~imode@user/imode PRIVMSG #esolangs :"and if _that_ didn't run, run that." < 1635110460 893028 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :no, you still need just a flag < 1635110471 843727 :imode!~imode@user/imode PRIVMSG #esolangs :fwiw I'm working in a different language but the structural syntax is the same (looping). < 1635110487 108283 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :"if the flag wasn't cleared, run that." "if it's _still_ not cleared, run that." < 1635110534 854466 :imode!~imode@user/imode PRIVMSG #esolangs :so in FV3 this looks like (condition) 1[<[0<] (true) 00<]<[ (false) 0<] < 1635110608 700303 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :dbfi the super golfed one doesn't nest. although it uses a loop to get started. < 1635110609 704352 :imode!~imode@user/imode PRIVMSG #esolangs :we enqueue the flag as a 1 for later, we check the condition, if it's true, recall the flag, drop it (that's [0<]), do the body, then push a 0. < 1635110628 408294 :imode!~imode@user/imode PRIVMSG #esolangs :then the latter loop recalls the flag and then does the normal conditional check. < 1635110639 5031 :imode!~imode@user/imode PRIVMSG #esolangs :i.e if it's 1 then enter the loop otherwise it's don't. < 1635110658 130543 :imode!~imode@user/imode PRIVMSG #esolangs :I guess you could have a double-loop inside of every else-if case.. < 1635110658 203396 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :yeah < 1635110687 670661 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :well you need _some_ nesting, just not an arbitrary amount. < 1635110832 16558 :imode!~imode@user/imode PRIVMSG #esolangs :(cond_1) 1[<[0<] (true_1) 00<]<[ (cond_2) 1[<[0<] (true_2) 00<]]<[ (cond_3) 1[<[0<] (true_3) 00<]]<[ ... < 1635110842 650681 :imode!~imode@user/imode PRIVMSG #esolangs :that makes sense. < 1635110843 801896 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :you may have some additional inefficiency if i understand that you need to go around the queue to recheck the flag < 1635110867 235877 :imode!~imode@user/imode PRIVMSG #esolangs :think of the queue as a tape. < and > move it left and right, you just insert to the left of the head when you do 0 and 1. < 1635110873 695869 :imode!~imode@user/imode PRIVMSG #esolangs :to recall it, just move the tape to the left. < 1635110877 102824 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :ok < 1635110887 675943 :imode!~imode@user/imode PRIVMSG #esolangs :hmm. < 1635110892 374339 :imode!~imode@user/imode PRIVMSG #esolangs :so you need two levels of nesting. < 1635110902 232296 :imode!~imode@user/imode PRIVMSG #esolangs :that's better than arbitrary. < 1635110929 389140 :imode!~imode@user/imode PRIVMSG #esolangs :ehhhhhhh that won't work. < 1635110940 926427 :imode!~imode@user/imode PRIVMSG #esolangs :you still need if/else because what happens if the first branch is 0. < 1635110954 372871 :imode!~imode@user/imode PRIVMSG #esolangs :you'll consume the flag and end up with a 'tape underflow'. < 1635110969 480183 :imode!~imode@user/imode PRIVMSG #esolangs :lame. < 1635111064 609290 :imode!~imode@user/imode PRIVMSG #esolangs :what if you used two flags at the start and swapped between them. that could work. < 1635111094 344786 :imode!~imode@user/imode PRIVMSG #esolangs :ehh no it wouldn't.. you need some kind of `dup-bit` between everything. < 1635111139 459222 :imode!~imode@user/imode PRIVMSG #esolangs :which is easy. it's just 1[<[0<]1<1<00<]<[0<0<0<] < 1635111213 992894 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :mhm < 1635111216 520075 :imode!~imode@user/imode PRIVMSG #esolangs :1[<[0<]11<00<]<[00<0<] would be better as it leaves the bit under the tape head and the copy to the left of it. < 1635111276 342647 :imode!~imode@user/imode PRIVMSG #esolangs :so you'd compute the condition, the initial branch would either fire or not, and if it did, it'd leave a 0, which signals the rest of the branches to not fire. < 1635111319 274021 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :well you should leave a 0 or a 1, always, until you're through the branches < 1635111323 251937 :imode!~imode@user/imode PRIVMSG #esolangs :right. < 1635111354 288263 :imode!~imode@user/imode PRIVMSG #esolangs :and from there you could do else-if chaining by duping the bit, doing a [ (condition) [... 0<] 0<] < 1635111398 600243 :imode!~imode@user/imode PRIVMSG #esolangs :ehhh I need to think about that a little more. < 1635111441 177768 :imode!~imode@user/imode PRIVMSG #esolangs :first branch sends "yes I fired", rest of the branches should get and propagate a 0 until the terminal branch chomps it. < 1635111494 967813 :imode!~imode@user/imode PRIVMSG #esolangs :first branch sends "I failed to fire", next branch gets a "1", computes the condition, if the condition is true, rest of the branches get a "0", otherwise it passes a "1" flag onto the next branch. < 1635111749 9636 :imode!~imode@user/imode PRIVMSG #esolangs :https://hastebin.com/raw/zejamacaxa < 1635111751 287594 :imode!~imode@user/imode PRIVMSG #esolangs :somethin' like this. < 1635111792 185793 :imode!~imode@user/imode PRIVMSG #esolangs :need to add the point where you drop the bit, but. < 1635111980 91543 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :this is in some sense the opposite of something i noticed when writing mbfi < 1635112019 823464 :imode!~imode@user/imode PRIVMSG #esolangs :oh? < 1635112040 848741 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :that often in brainfuck it is more efficient to encode your status by your position relative to a flag than by changing the flag itself. < 1635112062 819791 :imode!~imode@user/imode PRIVMSG #esolangs :that makes sense, because you have a fixed background of cells. < 1635112095 352135 :imode!~imode@user/imode PRIVMSG #esolangs :you can litter the background with 1s and then move there. < 1635112105 485610 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :(i noticed that cgbfi spent a lot of time calculating flags, while i could avoid that because i had better spacing of temporary cells) < 1635112160 293331 :imode!~imode@user/imode PRIVMSG #esolangs :yeah. this is a deque automata though, so the background is "variable". I don't have fixed positions unless I make them. < 1635112166 947965 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :right < 1635112231 273860 :imode!~imode@user/imode PRIVMSG #esolangs :https://hastebin.com/raw/piyozagako < 1635112233 716164 :imode!~imode@user/imode PRIVMSG #esolangs :this should be it. < 1635112241 886695 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :ok maybe "i noticed" is the wrong word, because the parser of dbfi also used that method heavily. < 1635112256 763538 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :*pair of words < 1635112308 873687 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :if you say so. i cannot really read it :P < 1635112321 332936 :imode!~imode@user/imode PRIVMSG #esolangs :sorry I'm in matrix-mode. "I don't even see the code". < 1635112352 633736 :imode!~imode@user/imode PRIVMSG #esolangs : "<1[<[0<]1<1<0<]<[0<0<0<]" <-- this bit recalls the flag and leaves two copies of it at top of the queue. < 1635112406 760857 :imode!~imode@user/imode PRIVMSG #esolangs :the [ ... 0<] around each of the conditions and branches checks that. if it's a 1, we drop the copy of the flag, compute whatever condition fired.. < 1635112429 430590 :imode!~imode@user/imode PRIVMSG #esolangs :...and if that condition was _true_, then we do the branch associated with that condition and then set the flag to 0, _otherwise_ we do nothing and we set the flag to 1. < 1635112443 235681 :imode!~imode@user/imode PRIVMSG #esolangs :then it moves to the next branch and we dup the flag... etc. etc. until else. < 1635112454 437966 :imode!~imode@user/imode PRIVMSG #esolangs :which is branch_false. < 1635112573 899397 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :right < 1635113178 649716 :imode!~imode@user/imode PRIVMSG #esolangs :though I'll say that this is far more code to do the same thing... < 1635113511 287926 :imode!~imode@user/imode PRIVMSG #esolangs :tbf I'd probably just do the nesting. if it's a switch/case I imagine you could work out a far more general form from that. < 1635113559 96866 :imode!~imode@user/imode PRIVMSG #esolangs :like just do the equality check for every branch ahead of time and then just compute boom boom boom boom boom. < 1635113671 233847 :imode!~imode@user/imode PRIVMSG #esolangs :like the general form would be (value) (dup-value) (const_1) (equal) (right) (dup-value) (const_2) (equal) (right) ... (dup-value) (const_N) (equal) (right) <[ (branch_1) 0<] <[ (branch_2) 0<] ... <[ (branch_N) 0<] < 1635113685 788208 :imode!~imode@user/imode PRIVMSG #esolangs :so you'd generate something like 0000001000000 and each branch would grab a bit. < 1635113698 303903 :imode!~imode@user/imode PRIVMSG #esolangs :and which ever branch got the 1 gets to execute. < 1635113721 721492 :imode!~imode@user/imode PRIVMSG #esolangs :you can generate that because the switch/case form is always constant equality. < 1635113737 744558 :imode!~imode@user/imode PRIVMSG #esolangs :so you could even replace (equal) with a piece of code to recognize the value bit-for-bit. < 1635113814 395713 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :this is in some sense closer to what dbfi did, although without nesting. < 1635113827 188371 :imode!~imode@user/imode PRIVMSG #esolangs :precomputing conditions? < 1635113894 201884 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :it makes the length of a field of padding longer by the value tested < 1635113933 967276 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esolangs :then goes to the end, and goes left one step with each branch < 1635113939 531634 :imode!~imode@user/imode PRIVMSG #esolangs :aha. < 1635113946 514741 :imode!~imode@user/imode PRIVMSG #esolangs :yeah, that sounds closer to the above. < 1635114095 407968 :Melvar!~melvar@dslb-088-072-174-184.088.072.pools.vodafone-ip.de QUIT :Ping timeout: 258 seconds < 1635114252 258858 :Lykaina!~Lykaina@cpe-67-255-96-229.stny.res.rr.com PART #esolangs :Leaving > 1635115493 256374 PRIVMSG #esolangs :14[[07Special:Log/newusers14]]4 create10 02 5* 03Squidmanescape 5* 10New user account > 1635115943 114856 PRIVMSG #esolangs :14[[07Esolang:Introduce yourself14]]4 10 02https://esolangs.org/w/index.php?diff=89034&oldid=89017 5* 03Squidmanescape 5* (+544) 10/* Introductions */ > 1635116008 740249 PRIVMSG #esolangs :14[[07User:Squidmanescape14]]4 N10 02https://esolangs.org/w/index.php?oldid=89035 5* 03Squidmanescape 5* (+108) 10Created page with "Hello! I am Squidmanescape, and I like Gray Snail! ==Accounts== *[https://github.com/Ramanuj-Sarkar Github]" < 1635116421 381553 :Melvar!~melvar@dslb-088-072-174-184.088.072.pools.vodafone-ip.de JOIN #esolangs Melvar :melvar > 1635117055 290001 PRIVMSG #esolangs :14[[07JSMeth14]]4 10 02https://esolangs.org/w/index.php?diff=89036&oldid=78899 5* 03CoffeeHax17 5* (-69) 10 < 1635117183 203782 :arseniiv!~arseniiv@136.169.235.33 JOIN #esolangs * :the chaotic arseniiv < 1635117244 817033 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Nite < 1635117436 981553 :arseniiv!~arseniiv@136.169.235.33 QUIT :Ping timeout: 244 seconds > 1635118485 568340 PRIVMSG #esolangs :14[[07ImagePath14]]4 M10 02https://esolangs.org/w/index.php?diff=89037&oldid=89025 5* 03PythonshellDebugwindow 5* (+35) 10/* Examples */ make images clearer > 1635119559 500337 PRIVMSG #esolangs :14[[07Greg14]]4 M10 02https://esolangs.org/w/index.php?diff=89038&oldid=88919 5* 03TheJonyMyster 5* (-8) 10 > 1635119885 47785 PRIVMSG #esolangs :14[[07Gray Snail14]]4 10 02https://esolangs.org/w/index.php?diff=89039&oldid=75313 5* 03Squidmanescape 5* (+2725) 10I wrote some stuff. I hope to write more.