00:04:32 [[*lang]] https://esolangs.org/w/index.php?diff=155603&oldid=155599 * DigitalDetective47 * (+352) refine definitions and add out statement 00:05:03 The IPv6 saga got a resolution. They've not confirmed it (yet, at least), but my ISP's support people said their network engineering team believed it was related to their routing configuration, and then a little while after that response it started working again, so presumably they did something to fix it. 00:08:06 [[Unstable]] N https://esolangs.org/w/index.php?oldid=155604 * Darkloyd255 * (+1550) Creation. 00:15:16 [[Special:Log/newusers]] create * Chalk1 * New user account 00:23:08 [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=155605&oldid=155577 * Chalk1 * (+175) 00:26:25 [[User:Chalk1]] N https://esolangs.org/w/index.php?oldid=155606 * Chalk1 * (+197) Created page with "== Greetings == ''Hello!'' I'm Chalk. I... umm... what do I say??? Uhhh... I don't know.. Uhhh???? Hmmm.... What do I say... Uhh... Umm... Hmmmm... Hmmmmmmmm... Uhhh... I give up. I can't do this." 00:26:53 [[*lang]] https://esolangs.org/w/index.php?diff=155607&oldid=155603 * DigitalDetective47 * (+80) define behavior when back recieves a pointer that has never been dereferenced 00:33:03 [[Talk:IHISIANGTUI]] N https://esolangs.org/w/index.php?oldid=155608 * Chalk1 * (+238) Created page with "== Python interpreter for IHISIANGTUI? == I could try to make a simple interpreter for it. I want to see where this project will go; it's pretty interesting. --~~~~" 01:21:49 How to make new input methods and output methods for use with XIM/XOM functions of Xlib? (Also, I think the functions requiring the locale isn't as good and better functions should be defined, e.g. XOpenOM2 which explicitly specifies the character set, character encoding, and options.) 01:32:06 [[*lang]] M https://esolangs.org/w/index.php?diff=155609&oldid=155607 * DigitalDetective47 * (+66) clarify that & is not allowed for assignment targets 01:48:27 [[Talk:Burn]] https://esolangs.org/w/index.php?diff=155610&oldid=155513 * Truttle1 * (+1124) 02:10:37 [[Hello]] https://esolangs.org/w/index.php?diff=155611&oldid=128971 * Tiziano220812 * (+269) /* Interpreter */ 02:11:50 [[*lang]] https://esolangs.org/w/index.php?diff=155612&oldid=155609 * DigitalDetective47 * (+13) only line initial whitespace is ignored 02:12:18 [[Hello]] https://esolangs.org/w/index.php?diff=155613&oldid=155611 * Tiziano220812 * (+43) /* Interpreter */ 02:30:56 [[Ruletable]] N https://esolangs.org/w/index.php?oldid=155614 * I am islptng * (+24) Redirected page to [[RuleLoader]] 02:31:07 [[User talk:Truttle1]] https://esolangs.org/w/index.php?diff=155615&oldid=148743 * I am islptng * (+684) 02:31:39 [[RuleLoader]] https://esolangs.org/w/index.php?diff=155616&oldid=145863 * I am islptng * (+1) Change my name 02:32:22 [[]] https://esolangs.org/w/index.php?diff=155617&oldid=146590 * I am islptng * (-79) Change my name 02:32:39 [[Wasaya/Libraries]] https://esolangs.org/w/index.php?diff=155618&oldid=148387 * I am islptng * (+1) Change my name 03:10:31 [[User:Anthonykozar/Notes]] https://esolangs.org/w/index.php?diff=155619&oldid=152205 * Anthonykozar * (+347) Add Hexagony, language based on IDS structures, base-3 languages, etc. 04:09:57 [[*lang]] https://esolangs.org/w/index.php?diff=155620&oldid=155612 * DigitalDetective47 * (+1055) add some example programs 04:14:40 [[Stackowey]] https://esolangs.org/w/index.php?diff=155621&oldid=155573 * Lampe2020 * (-177) Undo revision [[Special:Diff/155573|155573]] by [[Special:Contributions/Lampe2020|Lampe2020]] ([[User talk:Lampe2020|talk]]) 04:19:59 [[*lang]] M https://esolangs.org/w/index.php?diff=155622&oldid=155620 * DigitalDetective47 * (+101) add interpreter link 04:27:32 [[Talk:Stackowey]] N https://esolangs.org/w/index.php?oldid=155623 * Lampe2020 * (+599) Added note about revision undo. 04:30:29 [[*lang]] https://esolangs.org/w/index.php?diff=155624&oldid=155622 * DigitalDetective47 * (+139) add categories, finalize page 04:31:25 [[Language list]] M https://esolangs.org/w/index.php?diff=155625&oldid=155470 * DigitalDetective47 * (+13) /* Non-alphabetic */ add *lang 04:31:37 [[User:Anthonykozar/Notes]] https://esolangs.org/w/index.php?diff=155626&oldid=155619 * Anthonykozar * (+14) Adding Noisett. 04:35:58 [[Hello world program in esoteric languages (nonalphabetic and A)]] https://esolangs.org/w/index.php?diff=155627&oldid=150324 * DigitalDetective47 * (+475) add *lang 04:37:32 [[Truth-machine]] https://esolangs.org/w/index.php?diff=155628&oldid=153488 * DigitalDetective47 * (+396) /* Implementations */ add *lang 04:38:03 [[User:Anthonykozar/Notes]] https://esolangs.org/w/index.php?diff=155629&oldid=155626 * Anthonykozar * (+41) Adding user Zero who created Noisett? 04:41:06 [[Fool]] M https://esolangs.org/w/index.php?diff=155630&oldid=94740 * DigitalDetective47 * (+33) this is definitely declarative 04:41:29 [[User:DigitalDetective47]] https://esolangs.org/w/index.php?diff=155631&oldid=155575 * DigitalDetective47 * (+246) add *lang 05:00:23 I had played Pokemon recently, with random double battle, with dynamax allowed and shift commands disallowed (this rule was decided at random before the battle begins). I remember much of what happened. 05:02:15 My first two pokemons were Chimecho (with Prankster ability, and moves: Heal Pulse, Recover, Reflect, Light Screen), and Marowak (Rock Head ability, and moves included Swords Dance and Double-Edge and two others I didn't use), and opponent's first two pokemons were Gogoat and Grimmsnarl. 05:07:59 Marowak used Swords Dance a few times, Chimecho and Grimmsnarl both set up screens, Gogoat did Leech Seed on both of my pokemons. When Gogoat fainted, the opponent's next pokemon was Samurott and defeated Marowak by Hydro Pump. 05:11:47 I had guessed that Samurott was choice-locked, and I looked at my other pokemons, I had Gastrodon (with Storm Drain ability) and Eelektross (with Discharge move). I guessed that if I activated Gastrodon then probably Samurott would dynamax, and I would have Gastrodon also dynamax. 05:13:26 My plan was also that when opponent had only two active pokemons left, I would let Chimecho to faint (from Leech Seed, or having Gastrodon attack it if necessary), and then activate Eelektross; and that I would not attack Samurott before then. 05:15:13 Gastrodon's moves were Earth Power, Ice Beam, Clear Smog, and Recover. I could use Max Quake to increase Sp.Def, and Samurott used Max Darkness, to decrease Sp.Def, so they cancelled out. 05:15:25 My plan ended up working perfectly. 05:18:45 (since my own pokemons were not choice-locked, I could select moves of the other types in case the opponent was resisted or immune to some of them, and still defeat Samurott.) 05:22:33 [[User talk:Truttle1]] https://esolangs.org/w/index.php?diff=155632&oldid=155615 * PkmnQ * (+163) /* Burnlike */ 05:58:25 -!- amadaluzia has quit (Ping timeout: 276 seconds). 05:59:38 -!- Sgeo has quit (Read error: Connection reset by peer). 06:03:41 -!- amadaluzia has joined. 06:04:17 -!- amadaluzia has quit (Remote host closed the connection). 06:34:20 fizzie: great. now just make sure you keep testing that it doesn't break again soon. 06:35:59 zzo38: what are "shift commands"? 06:45:12 `olist 1322 06:45:14 olist : shachaf oerjan Sgeo boily nortti b_jonas Noisytoot 07:18:57 -!- Lord_of_Life has quit (Ping timeout: 252 seconds). 07:19:21 -!- Lord_of_Life has joined. 08:33:18 -!- chiselfuse has quit (Read error: Connection reset by peer). 08:33:35 -!- chiselfuse has joined. 08:42:21 [[User:Ractangle]] https://esolangs.org/w/index.php?diff=155633&oldid=155138 * Ractangle * (-10) /* Gammaline stuff */ 09:07:38 -!- lisbeths has joined. 09:17:49 Hi 09:31:27 APic: hello 10:20:57 -!- FreeFull has quit. 10:49:54 [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/Chess between HCr0 and PSTF]] https://esolangs.org/w/index.php?diff=155634&oldid=155557 * PrySigneToFry * (+10) 11:14:25 [[User:PrySigneToFry]] https://esolangs.org/w/index.php?diff=155635&oldid=155193 * PrySigneToFry * (+224) 11:18:22 [[Tskastic/Command Table]] https://esolangs.org/w/index.php?diff=155636&oldid=155532 * PrySigneToFry * (+222) 11:33:23 -!- amby has joined. 12:04:05 [[Special:Log/newusers]] create * FortuiteMan * New user account 12:05:15 [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/Chess between HCr0 and PSTF]] https://esolangs.org/w/index.php?diff=155637&oldid=155634 * Hotcrystal0 * (+22) 12:06:00 [[Talk:BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=155638&oldid=155341 * C++DSUCKER * (+218) 12:12:15 [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=155639&oldid=155605 * FortuiteMan * (+148) 12:12:26 [[Hexagony]] https://esolangs.org/w/index.php?diff=155640&oldid=106062 * FortuiteMan * (+91) /* Special characters */ 12:18:39 [[Talk:BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=155641&oldid=155638 * C++DSUCKER * (+199) 12:18:55 [[Talk:BitChanger Busy beaver/Proof]] https://esolangs.org/w/index.php?diff=155642&oldid=155641 * C++DSUCKER * (-1) 12:36:19 -!- lisbeths has quit (Quit: Connection closed for inactivity). 12:40:51 [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/Chess between HCr0 and PSTF]] https://esolangs.org/w/index.php?diff=155643&oldid=155637 * PrySigneToFry * (+15) 13:13:31 [[User:PrySigneToFry/Sandbox/Draft of EtPL]] https://esolangs.org/w/index.php?diff=155644&oldid=155024 * PrySigneToFry * (+126) 13:21:56 [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/Chess between HCr0 and PSTF]] https://esolangs.org/w/index.php?diff=155645&oldid=155643 * Hotcrystal0 * (+39) 13:22:09 [[WhatLang]] M https://esolangs.org/w/index.php?diff=155646&oldid=154738 * DGCK81LNN * (+508) /* WhatCommands */ 13:23:41 -!- amadaluzia has joined. 13:25:48 [[WhatLang]] M https://esolangs.org/w/index.php?diff=155647&oldid=155646 * DGCK81LNN * (-1) /* WhatCommands */ 13:26:31 [[TIAEPL]] https://esolangs.org/w/index.php?diff=155648&oldid=155559 * Dhzb * (-5) 13:34:22 [[TIAEPL]] https://esolangs.org/w/index.php?diff=155649&oldid=155648 * Dhzb * (+360) /* Character set */ 13:35:38 [[WhatLang]] M https://esolangs.org/w/index.php?diff=155650&oldid=155647 * DGCK81LNN * (+159) /* WhatCommands */ 13:36:07 [[Works in progress]] M https://esolangs.org/w/index.php?diff=155651&oldid=155484 * Dhzb * (+13) 14:19:29 [[Tskastic/Command Table]] https://esolangs.org/w/index.php?diff=155652&oldid=155636 * PrySigneToFry * (+457) 14:21:43 [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/Chess between HCr0 and PSTF]] https://esolangs.org/w/index.php?diff=155653&oldid=155645 * PrySigneToFry * (+57) 14:21:58 [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/Chess between HCr0 and PSTF]] https://esolangs.org/w/index.php?diff=155654&oldid=155653 * PrySigneToFry * (-1) 14:23:05 [[User:Anthonykozar/Notes]] https://esolangs.org/w/index.php?diff=155655&oldid=155629 * PrySigneToFry * (+87) 14:31:15 [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=155656&oldid=155403 * PrySigneToFry * (+1112) /* Collaboration? */ new section 14:31:52 [[TIAEPL]] https://esolangs.org/w/index.php?diff=155657&oldid=155649 * Dhzb * (-6) 14:33:17 [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/Chess between HCr0 and PSTF]] https://esolangs.org/w/index.php?diff=155658&oldid=155654 * Hotcrystal0 * (+35) 14:33:20 [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=155659&oldid=155656 * PrySigneToFry * (+98) 14:33:56 [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=155660&oldid=155659 * Hotcrystal0 * (+371) 14:34:07 [[User talk:Hotcrystal0]] https://esolangs.org/w/index.php?diff=155661&oldid=155660 * Hotcrystal0 * (+1) 14:35:10 [[User:PrySigneToFry/Silicon dioxide in a polypropylene box/Chess between HCr0 and PSTF]] https://esolangs.org/w/index.php?diff=155662&oldid=155658 * Hotcrystal0 * (+2) 14:37:35 -!- Sgeo has joined. 14:44:41 -!- lambdabot has quit (Remote host closed the connection). 15:00:14 -!- lisbeths has joined. 15:12:17 [[Talk:Translated Python]] https://esolangs.org/w/index.php?diff=155663&oldid=124000 * Hotcrystal0 * (+352) /* This looks somewhat like Poetic */ new section 15:47:08 r8 my language: https://github.com/memesmith0/calculator/edit/main/calculator.c 15:47:16 korvo 15:48:33 [[User:JIT]] https://esolangs.org/w/index.php?diff=155664&oldid=155061 * JIT * (+406) 15:57:32 -!- lambdabot has joined. 16:02:41 lisbeths: Retro. 16:05:17 What a hostile link (it redirects to a login page. No, I'm not signed into github, why would I be?) 16:06:49 s/edit/blob/ probably 16:07:08 Although it's still GitHub's shitty interface, so still hostile. 16:07:36 s=edit=blob/main= works 16:07:45 oh 16:07:49 nm 16:08:02 JAA: yeah that works 16:11:59 [[Brainfive]] https://esolangs.org/w/index.php?diff=155665&oldid=155602 * Darkloyd255 * (+2244) Added programs 16:12:39 [[Brainfive]] M https://esolangs.org/w/index.php?diff=155666&oldid=155665 * Darkloyd255 * (-13) Removed multithreaded as thats not really what it is. 16:14:23 If it still doesn't work, substitute "raw" in place of "blob"; that seems to work on many websites with git and not only on GitHub. It is also possible to use the GitHub API, or to write your own scripts to use the React data included in the HTML; I have done both. 16:14:58 [[Language list]] M https://esolangs.org/w/index.php?diff=155667&oldid=155625 * Darkloyd255 * (-45) Added my article "brainfive" 16:15:08 b_jonas: By shift commands in pokemon I mean when you use a shift command to switch out your active pokemon and switch in a different one (rather than being switched out by something like Volt Switch or U-Turn or being forced by Roar or Whirlwind) 16:16:14 its likely already been edited since you last saw it 16:16:20 https://github.com/memesmith0/calculator/blob/main/calculator.c 16:16:49 [[0widthnonjoiner]] M https://esolangs.org/w/index.php?diff=155668&oldid=141707 * Darkloyd255 * (+9) Article is a stub 16:16:59 the #c people think I'm lying when I said I am serious about it 16:18:07 lisbeths: I don't think anybody will notice that it changed. Because, if you're approaching this as the specification of a language, it's unreadable. Sure, you can approach this as a reverse engineering challenge (and in that category it's easy because the code is fairly short) but that's a much larger effort. 16:19:01 it is meant to be extended with reader macros 16:19:22 its essentially a really small reader macro system based on gnu dc 16:19:29 [[Eafish]] M https://esolangs.org/w/index.php?diff=155669&oldid=132999 * Darkloyd255 * (+9) stub 16:19:33 only it uses registers instead of a stack 16:21:40 [[Talk:Stackowey]] https://esolangs.org/w/index.php?diff=155670&oldid=155623 * Stkptr * (+943) 16:22:11 [[Unstable]] M https://esolangs.org/w/index.php?diff=155671&oldid=155604 * Darkloyd255 * (+9) Stub 16:23:13 [[Hydrogen]] https://esolangs.org/w/index.php?diff=155672&oldid=155469 * JIT * (-4) 16:24:36 [[Unstable]] M https://esolangs.org/w/index.php?diff=155673&oldid=155671 * Darkloyd255 * (+129) 16:27:26 [[Brainfive]] M https://esolangs.org/w/index.php?diff=155674&oldid=155666 * Darkloyd255 * (-108) Realized the cat program kinda sucked 16:34:32 lisbeths: Well, it's a fairly minimal wrapper around a subset of portable C. It's also worth knowing how this parallels the APL family, which has a standard pile of criticisms and only caught on because of array-programming idioms. 16:35:56 The parser feels like it's been deeply limited by the C way of structuring code combined with the desire to shove everything into a single procedure. Metacompilation seems like an impossible hassle, if you're looking at complexity ceilings. 17:02:56 (This "shift command" is also called "switch command") 17:31:43 [[List of ideas]] https://esolangs.org/w/index.php?diff=155675&oldid=155466 * Photostar * (+514) 17:48:19 korvo its primary mission is to make it possible in a small space to have reader macros 17:48:43 then once you have reader macros you implement an interpreter for a system that allows for better coding such as better metacompilation 17:57:13 lisbeths: What does your macro system look like? 17:58:55 korvo: you write functions that transform stdin into the default op codes 17:59:09 I mean concretely.d 17:59:40 well to show you an example it would take a long time for me to show you a concrete example 18:00:22 its basically like a very very simple assembly language. if you code in any assembly language at all you should be able to learn this assembly language easily 18:00:26 Okay, you don't have to do it. Why would it take a long time? 18:01:05 creating a function by hand can take some time in this assembly language 18:03:23 Okay. To me, that's a sign that the language is too low-level; paraphrasing Perlis, writing a procedure shouldn't require irrelevant details. 18:04:04 yeah this is meant to be able to fit into under 512 bytes of assembler 18:05:03 Sure, but that shouldn't mean that writing a procedure or encoding a function is a long or difficult task. 18:05:25 I'll think about that for a while 18:05:35 I mean, there are languages that are intentionally hard that way, like Malbolge, but I didn't get the impression that you wanted that sort of language. 18:06:04 What details are irrelevant details though? Sometimes some details might not be irrelevant, but higher level programming languages (including C) make it difficult or not possible to specify such things anyways, even if you want to do. 18:06:05 basically all arrays in this language in every cell it contains both an int and a pointer 18:06:27 For example, what does an identity function look like? Or, since you've given I/O, is there a cat program which loops over input and copies it to output? 18:06:28 and in a proper function all of the integer slots are filled with instructions with the last instruction being 0 18:07:09 so if I want to make a function I have to memory allocate the array and then fill each instruction into its slot one by one 18:14:14 zzo38: malloc() and arrays seem fairly irrelevant. 18:16:29 korvo how else am I gonna handle data of arbitrary complexity and size input into my program 18:22:08 lisbeths: Don't have an operation for allocating memory; instead, allocate memory as part of certain operations. 18:22:29 I disagree; I think that it is meaningful to have a function to allocate memory 18:22:45 This style's supposed to imitate Whitney, right? Look at how he allocates memory: https://github.com/kparc/ksimple/tree/main/ref 18:24:42 Oh, uh, the annotated file is probably better: https://github.com/kparc/ksimple/blob/main/a.c 18:26:12 He builds primitive words for allocating and freeing vectors, and then immediately builds refcounting on top so that users won't have to worry about it. 18:31:01 I haven't read too many other peoples attempts I am just doing what feels right 18:57:02 zzo38: I see. I did't know that was called "shift", and Bulbapedia wasn't very helpful. 19:21:52 [[Iota]] https://esolangs.org/w/index.php?diff=155676&oldid=155411 * Corbin * (+129) Infobox, TC proof, cleanup. I read Stay 2005 but didn't find anything interesting. 19:49:10 my calculator is super good 19:49:37 korvo vectors take up too many characters 19:56:57 [[Jot]] https://esolangs.org/w/index.php?diff=155677&oldid=117657 * Corbin * (+1493) Cleanup, TC proof, links, get closer to Barker's wording. 19:57:38 lisbeths: No worries. 19:58:30 I've just been cleaning up articles on combinators. By chance, have you seen the language Miranda yet? You're likely familiar with its most popular offspring Haskell, but classically Miranda was just a very nice syntax for a graph-reduction machine that evaluates combinators. 19:59:05 Ben Lynn has a wonderful step-by-step explanation of how a Miranda-like language can be written in very little code: https://crypto.stanford.edu/~blynn/compiler/ 20:01:42 korvo you are much more learned than me on these things but I compensate with my immense autism and schizophrenic ability to see patterns that don't exist 20:02:24 -!- tromp has joined. 20:02:53 [[EsoEnglish]] N https://esolangs.org/w/index.php?oldid=155678 * Darkloyd255 * (+3144) Created a wip page 20:07:28 [[0widthnonjoiner]] https://esolangs.org/w/index.php?diff=155679&oldid=155668 * Ractangle * (-9) this language is in the languages list, so... 20:10:01 [[User:AmNow]] https://esolangs.org/w/index.php?diff=155680&oldid=95466 * Ractangle * (-1) no one fixed the list? 20:27:54 my brain is starting to understand what you mean by my code is too low level 20:27:59 I need your high level secrets 20:28:10 what are these high level op codes u speak of 20:32:50 [[EsoEnglish]] https://esolangs.org/w/index.php?diff=155681&oldid=155678 * Darkloyd255 * (+1191) Added more detail 20:35:03 [[Language list]] M https://esolangs.org/w/index.php?diff=155682&oldid=155667 * Buckets * (+365) 20:35:32 lisbeths: I'm referencing a Perlis quote: "A programming language is low level when its programs require attention to the irrelevant." If you haven't seen these before, they are worth a look: https://www.cs.yale.edu/homes/perlis-alan/quotes.html 20:35:53 [[User:Buckets]] M https://esolangs.org/w/index.php?diff=155683&oldid=154985 * Buckets * (+364) 20:36:21 If your macro system is difficult to show to other folks because writing in it requires a lot of attention to irrelevant low-level details, then perhaps there is a higher-level simpler macro system that you could design which removes those details. 20:36:39 [[4gn/]] N https://esolangs.org/w/index.php?oldid=155684 * Buckets * (+10710) Created page with "{{wrongtitle|title=4g''''''''''n micromacro 20:45:45 But the idea of "small macro" is interesting. Shutt called the reach of a macro system its "abstractive radius" and proved a couple basic results about what they can't do. 20:45:55 In particular, privacy and isolation can't be provided by macros. 20:47:28 what if I use my macros to make lambda calculus 20:50:07 Then your macro-expansion phase becomes Turing-complete. If you want that, then look up "vau calculus". Shutt showed that this was practical by creating Kernel Lisp, a Lisp which uses vau calculus and has genuine f-expressions. 20:50:34 my macro system is already Turin complete 20:50:40 Proof? 20:50:51 it has reader macros 20:51:00 it can expand to any arbitrary thing 20:52:12 well pseudo Turing complete because it doesn't have an infinite tape 20:52:42 Could you show an example of a macro expansion? Was there a document that explained this, or just the C code? 20:53:10 I got to test all of my op codes first 20:53:18 I just rewrite this thing from scratch in the last 3 days 20:53:37 Like, I see that you've got a Von Neumann architecture and that the code is probably universally self-modifying. But that has *nothing* to do with macros. 20:53:52 false 20:53:59 you and I are defining macros differently 20:54:10 my macros are special and different than any textbook 20:54:20 I'm not seeing a reader, either, so I'm not sure where the reader macros are supposed to hook in. 20:54:27 Oh! Then pick a different word, please. 20:54:28 the reader is r 20:55:13 maybe reader macros isn't the right word 20:56:44 [[Pysembly]] https://esolangs.org/w/index.php?diff=155685&oldid=155597 * Photostar * (+6) 20:56:46 A reader macro extends a Lisp runtime so that it can (read) in non-native syntax. 20:56:54 [[Works in progress]] https://esolangs.org/w/index.php?diff=155686&oldid=155651 * Photostar * (-57) 20:57:04 oh well we don't use lisp read 20:57:16 how do you define read 20:57:21 They're considered macros because they expand that non-native syntax into standard Lisp syntax. 20:57:39 yeah I can write a function in my language that expands non native syntax into native syntax 20:57:56 That's just parsing. 20:57:57 [[User:Photostar]] https://esolangs.org/w/index.php?diff=155687&oldid=155482 * Photostar * (+0) 20:58:03 ok parse macros 20:58:28 I can extend the syntax semantics and grammar via parsing 20:59:33 a certain kind of macro is taking place here you can call it whatever u want but it extends the syntax 20:59:36 Sure. Plenty of systems can do that. 20:59:57 mine is designed so that that is all that it does 21:00:06 that is its only objective 21:00:12 I think that https://fexpr.blogspot.com/2013/12/abstractive-power.html might be a good read at some point, although I'll warn you that Shutt is very dense and sometimes I'll have to chew a paragraph for 20 or 30 minutes. 21:00:41 "Extensibility enthusiasts had hoped, frankly, that by means of language-extension mechanisms it would become possible for everyone to use a single base language and transform it into anything anyone needed for any particular purpose." 21:00:47 abstraction is the most powerful tool in my toolbelt 21:00:59 "Macro preprocessing, in particular, cannot easily be used to build a series of extensions, one on top of another, because as extension follows extension, the programmer is rapidly overcome by accumulating complexity." 21:01:57 lisbeths: I think that this is a dilemma. If you're working with genuine macros, then you need to accept that there are many limitations to what they can express. Otherwise, I think that whatever you've built for abstraction should not be called "macro". 21:09:41 my intuition tells me that other people likely fail to use macros as effectively as my intuition tells me that I can use them 21:13:07 this article you linked essentially says that extensibility languages as he calls it hasnt been given a serious try since 40 years ago 21:13:19 I think back then there were probably under a million coders 21:13:25 with no internet 21:13:41 they were all electrical engineers with very similar backgrounds 21:14:58 If you have the patience for it, Shutt gives a category-theoretic explanation; the obstacles are genuine. It's not a matter of trying hard. 21:16:13 "In language L0, records are declared with constant fields, and the fields can then be queried. … Language Lpriv is identical except that individual fields may be declared "private"; private fields cannot be queried, though they can be used when specifying the value of another field in the same record." 21:16:24 "It's easy to transform an Lpriv text sequence into a valid L0 sequence: just remove all the "private" keywords from the field declarations. This is a macro/polynomial transformation…" 21:18:05 But, as they prove in the final few paragraphs, there's no macro which transforms L0 into Lpriv under some reasonable desirable conditions. 21:19:34 well like originally I was sucked in by the idea of one language that could transform into anything 21:19:40 but that is no longer my goal 21:20:02 Anyway, no, the reason that the extensibility movement collapsed around that time is because of a much broader cultural revolution. UNIX is likely a big contributor; instead of trying to write monolithic mainframe applications that did everything, we switched to composition of smaller applications. 21:20:41 yeah I mean I think I am trying to do something a little different with this extension language 21:20:44 Relevant to this channel, the Turing-tarpit movement broke away from mainstream computing at that time too. 21:21:07 I don't agree that the definition of Turing tarpit maps to reality 21:21:21 the definition of Turing tarpit assumes that languages that people call Turing tarpits are useless 21:21:47 What definition? Perlis' definition is: "Beware of the Turing tar-pit in which everything is possible but nothing of interest is easy." 21:22:21 Turing machines and lambda calculus are tarpits. Computability theory still studies tarpits today. 21:22:55 I think my goals for this extension language are not as broad or far reaching as the goals of those monolithig guys in the 1960s 21:23:15 I am not planning on loading it up with heaps and heaps of macros. just a few good macros that make a language that I want 21:24:10 Sure. Sounds like fun. 21:42:42 -!- ais523 has joined. 21:45:30 b_jonas: zzo38: I think most Pokémon players refer to the command that replaces your active Pokémon with a different one as "switching Pokémon" 21:45:54 ais523: Yes, I mentioned that is another name for it 21:46:04 "shift" is used in the options menu for a setting that gives you a free switch whenever an opponent's Pokémon faints, but isn't widely used otherwise 21:46:48 (and my sense is that most serious Pokémon players like to pretend that the shift option doesn't exist, because the battle system is balanced much better without the free switch) 21:47:42 I also think it is better without, and I always disable that option anyways 21:50:02 getting basically any battle command for free is very powerful, even if it isn't very good (e.g. Growl is generally considered very weak as a move, but Intimidate, which gives the same effect as Growl for free upon switching in, is very strong) 21:50:33 and switching is one of the more useful battle commands, and giving that for free to someone who is winning is very unbalancing 21:50:42 Some implementations (e.g. Pokemon Unbound) do say "shift" on the menu to switch out your active pokemon for another, although some say "switch" 21:54:48 But I agree that is unbalancing so it should take up a turn. Although, that shift mode only applies in the single player game anyways I think; some versions have a "semi-shift" mode that you are not allowed to see what the opponent's next pokemon is, but none I have seen have "opponent shift" option that gives opponent the opportunity to do but the player does not. 21:55:55 well, an opponent shift would be pointless in singles because a shift triggers after a Pokémon faints, and when a Pokémon faints you have to replace it, so the opponent already got a choice of what to replace it with and there's no reason to let them immediately change their mind 21:56:07 it might make sense in doubles – if one Pokémon faints, you get to switch out the other for free 21:57:00 That is not what I meant. I meant the single player story mode, not a competitive battle, where when the player's pokemon faints the gym leader (or whoever it is) is allowed to switch for free. 21:57:09 oh, I see 21:57:58 Pokémon's AI is generally not very good even in the later generations, where lots of complex logic has been added to try to make it act intelligently 21:58:19 so maybe NPC shifting wasn't implemented because it would be too difficult to get it to make reasonable decisoins 21:59:26 Some unofficial versions have improved AI (although still have some problems) 22:00:15 (The battle I was describing though, was not the single player story mode, which does not use random teams or random rules anyways) 22:00:37 it's actually really hard to write a good AI for even really simple versions of Pokémon because the optimal strategy is usually a mixed strategy 22:03:17 Yes, I would expect so (much of the strategy is you have to guess if opponent will switch out, and other stuff), but still it could be improved from what official versions and even some things in unofficial versions; I have seen situations where the AI's selection does not seem to make much sense at all (especially if Explosion is involved, in my experience) 22:12:17 -!- tromp has quit (Quit: My iMac has gone to sleep. ZZZzzz…). 22:30:10 [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=155688&oldid=155639 * Cosmnik * (+142) add myself 23:19:04 -!- 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). 23:59:33 -!- lisbeths has quit (Quit: Connection closed for inactivity).