< 1549756867 912169 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :figured as much. iirc two states with some fenangling makes you TC. < 1549756887 313706 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :thaaaaanks~ < 1549756897 223100 :int-e!~noone@int-e.eu PRIVMSG #esoteric :yeah, two states and sufficiently many symbols... hmm < 1549756899 489152 :b_jonas!~x@catv-176-63-24-117.catv.broadband.hu PRIVMSG #esoteric :right, but see ais523's language https://esolangs.org/wiki/StackFlow for when you have multiple tapes, and you choose which one to read from in the next step in each step < 1549756925 153891 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :huh. that's interesting. < 1549756957 668356 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :ACTION wonders if a two-tape one-state TM could be TC... < 1549756961 602911 :xkapastel!uid17782@gateway/web/irccloud.com/x-fzorscvvdxbzhmye QUIT :Quit: Connection closed for inactivity < 1549756975 540281 :int-e!~noone@int-e.eu PRIVMSG #esoteric :ais523 is involved in https://en.wikipedia.org/wiki/Wolfram%27s_2-state_3-symbol_Turing_machine :P < 1549756990 581496 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :naively you could store your current state in that alternate tape. < 1549757004 459461 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :wait really? lmao. < 1549757011 783744 :int-e!~noone@int-e.eu PRIVMSG #esoteric :imode: in that case you can certainly use one tape to store the state of an ordinary TM. < 1549757021 194704 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`? ais523 < 1549757022 331440 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :Agent “Iä” Smith is an alien with a strange allergy to avian body covering, which he is trying to retroactively prevent from ever evolving. On the 3rd of March, he's lawful good. < 1549757032 53006 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :useful information. < 1549757049 55650 :int-e!~noone@int-e.eu PRIVMSG #esoteric :it's more useful than you may think... the "Smith" is accurate. < 1549757112 725442 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :that two-tape one-state idea has me thinking about rewrite languages and CAs now.. < 1549757143 434016 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I can think of a good reason to have two active stacks for coroutines/asynchronous code. Is there ever a reason to have more than two? < 1549757172 784693 :int-e!~noone@int-e.eu PRIVMSG #esoteric :hmm... define "active" < 1549757201 948840 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I mean something like, you pass two stack pointers to procedures in two registers, and it's part of the calling convention or something. < 1549757211 185882 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :It's not really a precise word. < 1549757220 399353 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :you could use one tape as a buffer to hold the CA state along with markers around the start end end of the state... and you could swap between them based on whether or not you read the marker. < 1549757236 20710 :int-e!~noone@int-e.eu PRIVMSG #esoteric :if you have coroutines more than two of those may be involved in any particular computation and they may each want to do their own recursive stuff < 1549757261 307833 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Right, that's the kind of thing I was trying to avoid with the vague word "active". < 1549757293 556330 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :It seems like the compiler/calling only ever has to know about two stacks, and the switching between them would be done in user code or something. < 1549757294 32557 :int-e!~noone@int-e.eu PRIVMSG #esoteric :generator ( | transducer )* | consumer < 1549757319 174097 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :"If you read X from tape A, write Y to tape B, move head A right.", "If you read X from tape B, write Y to tape A, move head B right." < 1549757326 3249 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Also does anyone actually implement coroutines using two stacks? < 1549757349 30327 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :I tend to prefer cooperative multitasking and use state machines. < 1549757373 450654 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I'm talking about cooperative multitasking, and about ways of expressing these state machines nicely. < 1549757391 280022 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Well, they're not finite state machines, because there's a stack. But you could bound the size of the stack and prohibit recursion. < 1549757402 266179 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: why *two*? < 1549757433 357887 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Well, the usual implementation technique for coroutines involves only one stack. Right? < 1549757434 191029 :int-e!~noone@int-e.eu PRIVMSG #esoteric :each coroutine should have its own stack, in principle... < 1549757442 542214 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :And then the context switch switches to a new stack. < 1549757461 857090 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I don't know why you want to use two. < 1549757476 27941 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But then various things are stored in the coroutine stack that could just go on the main stack because they never yield. < 1549757502 576709 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Which means you get a lot of unnecessary cache misses, and also the stacks need to be bigger for no real reason. < 1549757550 124048 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :You also get things like https://marcan.st/2017/12/debugging-an-evil-go-runtime-bug/ < 1549757569 519481 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Well if you like, Haskell does that... the "main" stack is almost exclusively for FFI; all the coroutine stacks are managed on the heap. < 1549757590 391968 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Yes, but if you're using Haskell you've already given up on performance. < 1549757631 343466 :int-e!~noone@int-e.eu PRIVMSG #esoteric :No, not really. I've given up a factor of 3-10, depending on what I'm doing. Less when working with big integers. < 1549757655 731953 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :If you think about the "optimal" way of writing an asynchronous task, it probably involves giving the task some fixed-size block of memory, and doing regular computation in the regular stack. < 1549757697 869243 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I want to approach something like that but with nicer code. < 1549757721 504199 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :I've been trying to work on a small-scale network of automata that can communicate. < 1549757760 811568 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :cooperative multitasking with round-robin scheduling is pretty much my go-to. instead of trying to cram code into an automata framework, I'd rather just use automata. < 1549757793 758454 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Automata can be awkward to write. < 1549757811 517040 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :true, but so can assembly. < 1549757830 993585 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :the difference is that automata are composable. state tables can be arbitrarily wired up. < 1549757853 936609 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :That's why I want something which is neither automata nor assembly. < 1549757864 8278 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :you can build simple machines from smaller state tables. < 1549757871 358638 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :and then more complex machines from those simple machines. < 1549757912 752758 :int-e!~noone@int-e.eu PRIVMSG #esoteric :So compile to state machines. I suspect that this is something people actually do in this context (for tightly coupled coroutines. not threads.) < 1549757938 886624 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :exactly my thought. I'm planning on not breaking that thread of modeling, though. LSL from Second Life does some similar stuff. < 1549757959 642951 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :meaning, every script is a state machine with some internal stuff. you have to model things in terms of states. < 1549758059 135059 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: I actually think that the principle of the Haskell analogy is sound, that is, to manage a coroutine local stack on a heap, possibly as a linked list. In many cases where you care about performance this will degenerate into doing a single allocation of a block that stores all the state for the whole lifetime of the coroutine invocation. < 1549758145 739410 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Sure, the thing GHC does is more or less reasonable at a high level. < 1549758147 737612 :int-e!~noone@int-e.eu PRIVMSG #esoteric :To my mind the stack switching approach is mainly attractive because it doesn't require much (if any) compiler support. < 1549758164 41396 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :If you had compiler support and also cared about performance, what would you do? < 1549758198 370793 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I think the answer would look a lot like having two stacks. Though maybe you should care about performance even more, prohibit recursion, and statically bound the size of the stack. < 1549758323 255476 :int-e!~noone@int-e.eu PRIVMSG #esoteric :https://www.youtube.com/watch?v=j9tlJAqMV7U was inspiring in this context. < 1549758346 589261 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :That's the new C++ thing? < 1549758369 43804 :int-e!~noone@int-e.eu PRIVMSG #esoteric :yes, but it's more about the power of static analysis < 1549758380 16132 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I think that might be in the right direction though I haven't looked at the details. < 1549758402 726266 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :LLVM has a coroutine thing that looked reasonable at a high level though the details might've been a bit weird. I don't remember anymore. < 1549758793 221390 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1549758884 94650 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Oh he gives a lot of talks. https://www.youtube.com/watch?v=_fu0gx-xseY may be the one that I actually watched? I don't recall precisely. < 1549758925 818810 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I can't watch a talk right now but I'll look later. < 1549758936 880104 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Is there a spoiler for why the overhead is negative? < 1549759048 238591 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Ping timeout: 246 seconds < 1549759061 657215 :int-e!~noone@int-e.eu PRIVMSG #esoteric :My vague idea was that the compiler gets more information from statically analysing the coroutines than it did from analysing a hand-written state machine. And it did its own state-machine, while preserving the improved static analysis information. < 1549759147 207679 :int-e!~noone@int-e.eu PRIVMSG #esoteric :And I didn't think that the talk fully explained it. It does make for an amazing punchline though. ("We wrote high-level code, and the compiled result was better than our hand-optimized low-level (but still C++) code.") < 1549759246 162473 :int-e!~noone@int-e.eu PRIVMSG #esoteric :As far as I recall, this falls into the category where the coroutines are tightly coupled, and only need finite state. < 1549759369 63899 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I was kind of wondering whether this kind of thing can be implemented well as a pretty straightforward macro, but I think the answer is no, you want compiler support to do it well. < 1549759437 744671 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :In this one collection of language ideas I've been trying to figure out, stack memory allocation for variables is explicit, alloca-style. < 1549759446 740782 :b_jonas!~x@catv-176-63-24-117.catv.broadband.hu PRIVMSG #esoteric :shachaf: yeah, just "a pretty straightforward macro" is where all the downwards spirals to crazy preprocessing magic starts with < 1549759468 965837 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :b_jonas: well, that's not straightforward anymore, is it hth < 1549759475 924951 :int-e!~noone@int-e.eu PRIVMSG #esoteric :. o O ( just a simple recursively defined template ) < 1549759498 980585 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Something like "x := Var(int)", where x is a (const) pointer to a stack-allocated memory location. < 1549759511 23806 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Or "x := Var(0)" or whatever < 1549759605 301235 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But a thing like that isn't enough. < 1549759683 989319 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN :#esoteric < 1549759761 757725 :int-e!~noone@int-e.eu PRIVMSG #esoteric :http://www.afjarvis.staff.shef.ac.uk/sudoku/sudoku2.cc features a template static inline void search(); < 1549759802 476364 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Which inspired the "just a simple recursively defined template" thought. < 1549759812 121336 :int-e!~noone@int-e.eu PRIVMSG #esoteric :2005, so long ago... < 1549759830 662827 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I wish C++ had a way to pass an argument either at compile-time or at runtime. < 1549759879 870228 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :For some reason C++ people love to do complicated recursive things with templates. < 1549759885 507715 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Rather than just, y'know, a for loop < 1549759963 793254 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1549760000 798225 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Well that particular thing generates up to 81 nested for loops. < 1549760033 889325 :int-e!~noone@int-e.eu PRIVMSG #esoteric :But I'm not sure I would do it quite that way anymore. Probably not :) < 1549760077 924190 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :i,i,i for (int i = 0; i < 81; i++) { printf("for (int i%d = 0; i%d < k; i%d++) {\n", i, i, i); } < 1549760096 559903 :int-e!~noone@int-e.eu PRIVMSG #esoteric :right. < 1549760180 486560 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :What language is good at doing things like that? Plus isn't lisp. < 1549760205 263907 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I'd happily use Haskell to generate C code. < 1549760218 430696 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I mean something slightly nicer than string generation. < 1549760230 146080 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :More like quasiquoting, I guess? < 1549760240 478588 :rain1!~My_user_n@unaffiliated/rain1 PRIVMSG #esoteric :quasiquoting but not lisp? i don't know any < 1549760243 111115 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :But statically typed with a reasonable idea of eventually generating a compiled program. < 1549760253 830785 :rain1!~My_user_n@unaffiliated/rain1 PRIVMSG #esoteric :i suppose metaocaml < 1549760258 652033 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Ping timeout: 268 seconds < 1549760377 892490 :int-e!~noone@int-e.eu PRIVMSG #esoteric :http://hackage.haskell.org/package/inline-c maybe? < 1549760401 82100 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Also it's the same language as the language you're generating code for. < 1549760435 722240 :xkapastel!uid17782@gateway/web/irccloud.com/x-tkbhkahaiepddfnw JOIN :#esoteric < 1549760508 375316 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Template Haskell isn't all that bad. But it would defeat the purpose of generating nested loops for sudoku enumeration in the first place, which was performance. :P < 1549760530 248283 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :counterpoint: template haskell is all that bad < 1549760538 224986 :int-e!~noone@int-e.eu PRIVMSG #esoteric :http://hackage.haskell.org/package/haskell-src-meta < 1549760542 880254 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :even ignoring performance < 1549760594 980724 :int-e!~noone@int-e.eu PRIVMSG #esoteric :whatever < 1549760633 415140 :Essadon!~Essadon@81-225-32-185-no249.tbcn.telia.com QUIT :Quit: Qutting < 1549760641 569063 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :true < 1549760680 990738 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Have you used the fancy variadic templates in C++11? < 1549762384 669440 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I guess more widespread coroutines might be useful for other uses. < 1549762408 479504 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Possibly nicer than using callbacks for a lot of things? < 1549762425 529824 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Say, a function that wants to request more memory from the caller mid-execution. Do people do things like that? < 1549762581 310748 :Remavas[AFK]!~Remavas@unaffiliated/remavas NICK :Remavas < 1549763293 571556 :Remavas!~Remavas@unaffiliated/remavas QUIT :Quit: Leaving < 1549763474 767666 :b_jonas!~x@catv-176-63-24-117.catv.broadband.hu PRIVMSG #esoteric :shachaf: either it just returns an error telling how much memory it needs, like snprintf, or it calls an allocator callback < 1549763500 570231 :b_jonas!~x@catv-176-63-24-117.catv.broadband.hu PRIVMSG #esoteric :oh, you're asking about coroutine < 1549763504 402338 :b_jonas!~x@catv-176-63-24-117.catv.broadband.hu PRIVMSG #esoteric :um < 1549763531 811400 :b_jonas!~x@catv-176-63-24-117.catv.broadband.hu QUIT :Quit: leaving < 1549765406 260571 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1549765653 252808 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Ping timeout: 245 seconds < 1549768218 337202 :xkapastel!uid17782@gateway/web/irccloud.com/x-tkbhkahaiepddfnw QUIT :Quit: Connection closed for inactivity < 1549768384 960722 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1549768538 983084 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :a generalized version of finite automata would have transitions labeled with try/assett statements. < 1549768559 169754 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :s/assett/assert < 1549768577 18048 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :that sounds like a kind of scow generalization tdnh < 1549768592 322810 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :scow? :P < 1549768602 563320 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :..boat? < 1549768637 944563 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Ping timeout: 246 seconds < 1549768712 70144 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :lemme elaborate: any given entry for a state table would look like `in if then and go to ` < 1549768739 655766 :imode!~imode@unaffiliated/imode PRIVMSG #esoteric :I actually think someone's come up with that... abstract state machines or something. < 1549769271 212289 :biscayne!c6366dea@gateway/web/freenode/ip.198.54.109.234 JOIN :#esoteric < 1549769682 369611 :biscayne!c6366dea@gateway/web/freenode/ip.198.54.109.234 PART :#esoteric > 1549769903 769129 PRIVMSG #esoteric :14[[07Bitwise Trance14]]4 10 02https://esolangs.org/w/index.php?diff=59789&oldid=59788 5* 03Zzo38 5* (-9) 10 < 1549770580 122090 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :I thought of one chess variant can be Thue-Morse chess, similar to Marseillais chess but you don't always get a extra turn. < 1549770589 786484 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :(I don't know how well it is work) < 1549770630 474478 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Did you play this kind of chess? > 1549771964 315985 PRIVMSG #esoteric :14[[07Deadfish14]]4 10 02https://esolangs.org/w/index.php?diff=59790&oldid=59751 5* 03Zzo38 5* (-6) 10Colon include syntax in glasm < 1549772608 229371 :FreeFull!~freefull@defocus/sausage-lover QUIT : < 1549774151 847007 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :https://esolangs.org/wiki/Vague <-- i think Cortex may be parodying certain other users... < 1549774215 202926 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :oerjan: oh man, this is tg < 1549774856 256849 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1549775128 274101 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Ping timeout: 245 seconds > 1549775367 133399 PRIVMSG #esoteric :14[[07Joke language list14]]4 M10 02https://esolangs.org/w/index.php?diff=59791&oldid=59782 5* 03Oerjan 5* (+0) 10abcelmrs > 1549775813 654341 PRIVMSG #esoteric :14[[07Hurgusburgus14]]4 M10 02https://esolangs.org/w/index.php?diff=59792&oldid=58667 5* 03BradensEsolangs 5* (-197) 10It's really a deque, I will continue tomorrow, don't touch < 1549777484 611265 :ashirase_!~ashirase@modemcable098.166-22-96.mc.videotron.ca JOIN :#esoteric < 1549777748 876795 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: Watching the video now. Compared to this std::future lambda code, sure, I can see that coroutines would be faster. < 1549777771 114751 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Oh, he's writing it as a state machine, never mind. < 1549778143 476079 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1549778405 531890 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Ping timeout: 244 seconds < 1549779608 149988 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: I bet if you were comparing to C code rather than C++ code it would go the other way. < 1549779689 837430 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Nite < 1549783334 460785 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1549783596 388529 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Ping timeout: 250 seconds < 1549783838 763496 :liuqingyao!~liuqingya@183.213.160.96 JOIN :#esoteric < 1549784179 143401 :liuqingyao!~liuqingya@183.213.160.96 QUIT : < 1549785954 703757 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1549790304 834477 :heroux!sandroco@gateway/shell/insomnia247/x-tkjeugmbuermrpam QUIT :Ping timeout: 250 seconds < 1549790353 778103 :heroux!sandroco@gateway/shell/insomnia247/x-gowymjruswjihgsu JOIN :#esoteric < 1549790581 870598 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Remote host closed the connection < 1549791650 566952 :arseniiv!~arseniiv@46.191.132.151 JOIN :#esoteric < 1549791836 276354 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1549792114 330210 :Arsal!~Arsal@175.107.216.46 JOIN :#esoteric < 1549792925 357911 :Arsal1!~Arsal@42.201.130.203 JOIN :#esoteric < 1549793077 815402 :ashirase_!~ashirase@modemcable098.166-22-96.mc.videotron.ca QUIT :Ping timeout: 268 seconds < 1549793128 252525 :Arsal!~Arsal@175.107.216.46 QUIT :Ping timeout: 245 seconds < 1549793607 677082 :ashirase!~ashirase@modemcable098.166-22-96.mc.videotron.ca JOIN :#esoteric < 1549794236 161993 :Arsal1!~Arsal@42.201.130.203 QUIT :Quit: Leaving < 1549795654 530926 :AnotherTest!~turingcom@ptr-82l26zcehbybvusuxld.18120a2.ip6.access.telenet.be JOIN :#esoteric < 1549795782 753842 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: I'll make no bets. What I see is a potential to do better lifetime analysis of variables when starting out with coroutines (if you loop over { A; yield x; B; yield y; } then you know exactly which variables need to be preserved over the course of the first and second yield respectively. A C compiler would have to basically recover the coroutines to do that. That is, given a state... < 1549795788 744345 :int-e!~noone@int-e.eu PRIVMSG #esoteric :...machine, it has to figure out that after the basic block A, it will never reach A again without first reaching B. That's doable in theory, sure, but I doubt it's done. < 1549797396 545864 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu JOIN :#esoteric < 1549797584 456351 :imode!~imode@unaffiliated/imode QUIT :Ping timeout: 250 seconds < 1549797900 340304 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :zzo38: I still think that any version that adds extra turns without serious limitations to chess probably makes it less interesting. In fact, the creators of chess knew this, yet wanted to speed up the early game, < 1549797938 591409 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :so they didn't just add unlimited extra turns, but a restricted variant where you can move the same pawn forward twice from the starting position. < 1549798005 697495 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :The problems include that pieces often attack too much of the board if you can take two moves with them; and that if you have two moves and the opponent then has one, then it's very easy to set up a double attack that the opponent can't defend. < 1549802858 411197 :FreeFull!~freefull@defocus/sausage-lover JOIN :#esoteric > 1549803118 151300 PRIVMSG #esoteric :14[[07Talk:Bitwise Trance14]]4 N10 02https://esolangs.org/w/index.php?oldid=59793 5* 03Plokmijnuhby 5* (+709) 10Created page with "== Turing completeness == I'm not sure this really is a Turing complete language. Sure, it works fine as an FSM, but you run into problems when you start storing data. You wil..." > 1549803657 538921 PRIVMSG #esoteric :14[[07Bitwise Trance14]]4 10 02https://esolangs.org/w/index.php?diff=59794&oldid=59789 5* 03Plokmijnuhby 5* (+109) 10/* Empty program */ < 1549803850 843730 :Sgeo__!~Sgeo@ool-18b98dd9.dyn.optonline.net QUIT :Read error: Connection reset by peer < 1549803876 256009 :Sgeo__!~Sgeo@ool-18b98dd9.dyn.optonline.net JOIN :#esoteric > 1549804325 859340 PRIVMSG #esoteric :14[[07Talk:Bitwise Trance14]]4 10 02https://esolangs.org/w/index.php?diff=59795&oldid=59793 5* 03Plokmijnuhby 5* (+183) 10/* Turing completeness */ < 1549804362 343427 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1549804962 901652 :Essadon!~Essadon@81-225-32-185-no249.tbcn.telia.com JOIN :#esoteric < 1549809776 774191 :xkapastel!uid17782@gateway/web/irccloud.com/x-iddqfnvefrtnzcgn JOIN :#esoteric > 1549811517 804408 PRIVMSG #esoteric :14[[07Talk:Bitwise Trance14]]4 10 02https://esolangs.org/w/index.php?diff=59796&oldid=59795 5* 03Ais523 5* (+1610) 10bignum arithmetic seems impossible to directly implement; however you could probably get a program to copy itself in memory and expand the addresses in the process, despite not being able to address things much larger than itself < 1549814620 250606 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :In the scifi future, when people won't have fridges and freezers that cool food, but will instead simply have a stasis box that sends food forwards in time to the next time the door is opened, < 1549814625 548117 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :will ice cubes in drinks turn from something ordinary that people make at home to something you only have in restaurants and bars? < 1549814676 206129 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :Or will people once again buy ice (or get it delivered to them in some futuristic way, whatever) and put it into the stasis box so it doesn't melt? < 1549815730 982801 :oerjan!oerjan@sprocket.nvg.ntnu.no JOIN :#esoteric > 1549816435 4760 PRIVMSG #esoteric :14[[07Hurgusburgus14]]4 10 02https://esolangs.org/w/index.php?diff=59797&oldid=59792 5* 03BradensEsolangs 5* (-14) 10Done < 1549818468 747700 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Maybe people buying ice cubes might be less common then but some people might still have a use for it < 1549818761 341437 :xkapastel!uid17782@gateway/web/irccloud.com/x-iddqfnvefrtnzcgn QUIT :Quit: Connection closed for inactivity < 1549820236 615286 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :You could certainly add restrictions into a chess variant that adds extra turns, and there are different ways to add how many extra turns < 1549820316 196940 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :maybe extra turns are overpowered in every well-designed multiplayer tabletop game, because if they weren't, then it would have been designed with more moves allowed per turn to make it more fluid < 1549820652 863252 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :YYes, it may be < 1549820861 486514 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :ACTION wanted to use Esolang:Sandbox, and suddenly realizes it is not linked from any menus < 1549821137 792981 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :You can also just to enter the name directly (or add it to some menu if you prefer that) < 1549821631 410118 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :I was wondering if I should modify the *list commands to know which strips have been listed, and refuse to list a strip again if it's been listed already < 1549821672 413783 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :https://twitter.com/CreeepyJoe/status/1094656141173305344 < 1549821719 62369 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: Compilers already do the thing you're describing, don't they? < 1549821743 139572 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Maybe not for coroutines but for regular stack usage. < 1549821788 131316 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :so I'd change olist to do like echo -n "http://www.giantitp.com/comics/oots$1.html"; if ! test "$1" || ! grep -qxFe "$1" var/list-ids/olist; then echo -n ": "; tail -n+3 "$0" ; else echo " was already listed"; exit 1; fi < 1549821804 419369 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :except I'd test the shell script and fix all the errors < 1549821819 302117 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :oh right, it also has to say echo "$1" > var/list-ids/olist somewhere < 1549821849 733649 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :so it would like save the strip numbers to a file in the version control, and not ping people unless the strip is new < 1549821866 22407 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :that way I wouldn't have to check the channel logs to tell if a strip has already been listed < 1549821872 883612 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :this applies not only to olist, but also pbflist < 1549821876 961520 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :and others < 1549821896 311915 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :what does my honorable and learned friend fungot think about that idea? < 1549821896 769699 :fungot!~fungot@2a01:4b00:82bb:1341::2 PRIVMSG #esoteric :b_jonas: this has not been very good, and i am? with putin! the european union at the time that is not without a cost, and the fact of the matter is of course is the best security that the nation is the party of not planning. may i, in the nicest. < 1549822029 547184 :oerjan!oerjan@sprocket.nvg.ntnu.no PRIVMSG #esoteric :`ls < 1549822030 375577 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​:#,_@ \ a.out \ bin \ canary \ emoticons \ esobible \ etc \ evil \ factor \ good \ hw \ ibin \ interps \ izash.c \ karma \ le \ lib \ misle \ paste \ ply-3.8 \ quines \ quinor \ quotes \ share \ src \ test2 \ testfile \ tmflry \ tmp \ wisdom < 1549822071 305896 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I don't like a commit on every list < 1549822087 87682 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Except, y'know, `list, where it's unavoidable < 1549822199 339931 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Maybe like that but keep the state in unversioned storage. < 1549822223 688344 :oerjan!oerjan@sprocket.nvg.ntnu.no QUIT :Quit: Later < 1549822375 609608 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I've considered doing that before. < 1549822449 374366 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :shachaf: it could be on just certain lists < 1549822457 789406 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :like olists and pbflists < 1549822464 847977 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :and only on successful ones with an argument < 1549822472 305182 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :no need to commit for a failed or a no-arg one < 1549822482 251939 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :that would mean a three-way if but so what < 1549822515 892764 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: hmm < 1549822549 197846 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: how does unversioned state work these days? is it just persistent, but doesn't get reverted when the bot redoes a stateful command? < 1549822568 135315 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :and lost whenever hackego is migrated to a new owner? < 1549822572 235439 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :oh, by the way < 1549822604 486717 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Other possibility, using Netsubscribe, storing the state by adding objects into a Netsubscribe database; if the object ID is telling what is being notified then you can easily check for duplicates < 1549822609 136818 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :do we have a list that's triggered whenever the previous host or maintainer of hackego gives up and the next one reincarnates it from a backup with a slightly different name? < 1549822625 792567 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :zzo38: um, how would you put that in hackeso? < 1549822685 653375 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :b_jonas: I don't think hackeso has that capability, although it would be possible to use with IRC. < 1549822712 133100 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :But about hackeso, if you need to copy any unversioned files then I suppose you can do so before moving it < 1549822724 365059 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :(if you have enough advance notice) < 1549822736 29566 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :b_jonas: It's just a directory. It doesn't participate in the redo in any special way (so "mv" out from it is unsafe), and will be lost if you have to migrate without access to the previous instance. < 1549822823 674904 :imode!~imode@unaffiliated/imode JOIN :#esoteric < 1549823047 603855 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Normally you could maintain independent backups in "wget -m" style (in parallel with cloning https://hack.esolangs.org/repo) but I had to turn off nginx "autoindex" option to avoid an information leak -- there's no way to turn off following symlinks for the generated index page, so it could be used to get sizes of files outside the directory. < 1549823644 435855 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: but wouldn't that mean that if I tried to store this status there, and the *list command is re-ran, then it would falsely assume that the strip has been listed already, and we'd lose pings? < 1549823686 787843 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: in theory, the bot could have a directory that is reverted when a command is redone, but that isn't version-controlled. I don't know if we'd want that though. < 1549823720 567107 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :we might abuse it, in exactly the ways that the version repo is supposed to prevent < 1549823740 951368 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :oh, that reminds me < 1549823762 78281 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: if I put a file in hgignore, would it also behave just like a file in /tmp ? < 1549823925 589206 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: also, if someone, uh, "accidentally" moved everything from /hackenv to /tmp in one command, then moved everything back but also set everything to be hgignored in the next command, in order to break version control, how quickly would people notice that? < 1549823938 440361 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :if, say, someone did that in private message < 1549824333 738295 :pikhq!~pikhq@c-73-181-126-9.hsd1.co.comcast.net QUIT :Ping timeout: 252 seconds < 1549824376 926765 :xkapastel!uid17782@gateway/web/irccloud.com/x-pyqztiqjptktsqne JOIN :#esoteric > 1549824494 93996 PRIVMSG #esoteric :14[[07Fractran14]]4 10 02https://esolangs.org/w/index.php?diff=59798&oldid=57538 5* 03Oerjan 5* (+1324) 10Something I thought of when pondering [[Echo Tag]]: Squeezing fraction size < 1549824899 340610 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :b_jonas: In the normal case a *list command wouldn't ever re-run, because the only modifications it would do would be in tmp/, so there would be nothing to commit. There might be some race conditions though; with concurrent commands you might indeed lose some pings. < 1549824905 783123 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :b_jonas: And .hgignore is read-only now. Or, rather, automatically reverted to its pristine state right before any commit, since it couldn't really be made read-only, since it's not a directory. < 1549825036 952138 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(I think I was looking for an option to disable .hgignore and instead configure tmp/ in .hg/hgrc instead, but didn't find one.) < 1549825092 709148 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(Also the non-versioned persistent storage is tmp/ aka /hackenv/tmp/, plain /tmp is not persistent across commands.) < 1549825158 261892 :pikhq!~pikhq@c-73-181-126-9.hsd1.co.comcast.net JOIN :#esoteric < 1549825491 579944 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: hmm < 1549825504 408084 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :it's automatically reverted? nice < 1549825528 844158 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :oh, hg doesn't have that? doesn't it have a way to, like, tell what the name of that file is? Istr git had some such config < 1549825582 427044 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It has a way to set up additional ignore files. < 1549825602 453024 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :From the documentation, it didn't seem like there was a way to disable the default .hgignore though. < 1549825606 421016 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :ok < 1549825607 587430 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Didn't actually try this. < 1549825618 393365 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :I don't know hg really < 1549825644 13689 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :hackeso is where I used it the most, plus I've used it to clone a few other repos from the internet where people distribute some files only that way < 1549825674 758195 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Under the [ui] section, there's a config key 'ignore': "A file to read per-user ignore patterns from. This file should be in the same format as a repository-wide .hgignore file. Filenames are relative to the repository root. This option supports hook syntax, so if you want to specify multiple ignore files, you can do so by setting something like ignore.other = ~/.hgignore2." < 1549825693 343162 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :The "as a repository-wide .hgignore file" sounded like it meant that's always there. < 1549825726 955845 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Although it's possible setting ui.ignore in the per-repository .hgrc would actually control that. < 1549825731 284594 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: but does hg at least not allow .hgignore files in any directory? < 1549825740 473417 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :only at the repo top, right? < 1549825742 381050 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :one per repo < 1549825787 661397 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Yes, only at the repository root. If you want to put a .hgignore in a subdirectory, the documentation recommends "subinclude"ing it in the root .hgignore. < 1549825799 158402 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :ok < 1549825833 867314 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Still, reverting the .hgignore file is a bit messy, it needs to manually remove it first if someone replaces it with a directory tree. < 1549825835 276468 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :makes sense, I guess. that you can put one anywhere is mostly useful for repos where you often do partial checkouts, eg. in cvs and svn < 1549825891 477946 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :yeah, recursively (chmod then remove) < 1549826037 379001 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :I wonder what happened if someone made tmp a symlink to . < 1549826106 54780 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(That kind of questions are exactly why we can't have nice things.) < 1549826129 432377 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :I don't think it would do anything really < 1549826134 774788 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :hg wouldn't even notice where it points < 1549826268 299395 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: I know, I've ran bots too, but I think me just asking won't make it worse < 1549826687 948869 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :FWIW, it's still on the TODO list (though not up top) to allow (whitelisted, proxied) HTTP requests out of HackEso. It was possible at HackEgo at some point, though not for the last years. < 1549826798 935317 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :You may wish to later add other protocols too, although that would also need whitelisted too. < 1549826989 194364 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: is hackeso intended to be a bot strictly for this channel, or is it on the todo list to allow it to join other channels where it's invited? < 1549827081 325083 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I don't know. It's pretty channel-agnostic, I know HackEgo was on more than one channel. < 1549827102 477374 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Feels like it should be only on channels I'm on, though, just to keep an eye on it. < 1549827120 661907 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :And of course the repo and such are under the .esolangs.org domain. < 1549827133 365950 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :So the answer is probably "don't know". < 1549827140 523761 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :ok < 1549827162 162936 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :hmm, I guess technically I could just make a proxy bot that forwards between a channel and HackEso private message both ways < 1549828168 429591 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :At one point I was writing a "z80bot", which was to be a somewhat hackbot-style thing, except using an (emulated) Z80 core, with a system call API to a versioned filesystem (read/write-style, but also to map "ROM" pages from), and internet, and whatever else wouldn't be practical to implement internally. < 1549828218 77392 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I think I got that about three-quarters done, with the (homegrown) Z80 emulator, the filesystem bits, and yet another IRC client library done, before abandoing it. < 1549828269 944491 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Don't think very many people would've spent time using it though. It's a bit bigger barrier to entry than with hackbot. < 1549828285 760277 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :that sounds fun < 1549828290 195443 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :would it run CP/M? < 1549828326 172523 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: hmm, how much RAM? < 1549828346 552956 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :I guess it might not matter since it has access to a file system < 1549828351 382764 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :or TI-OS? < 1549828367 925939 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I'm sure some porting would be necessary, since it wouldn't have any of the expected hardware by those systems. < 1549828376 339019 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :the hard part with these bots is always figuring out what it's allowed to do on IRC by users' commands < 1549828426 630241 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I think I was intending it to have just the directly addressable 64k of RAM, with the top one quarter (C000..FFFF) mappable as a ROM page from the filesystem. < 1549828449 259393 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :hmm < 1549828460 557702 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :z80 has a separate IO address space, right < 1549828493 886617 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: what kind of interface would it use for accessing the filesystem? a "modern" unix/dos2 one with open, close, read, write calls? < 1549828509 612083 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :b_jonas: Yes, it has a separate I/O space, though only with 8 bits of addressing. < 1549828531 575481 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :s/dos2/dos3/ < 1549828560 847501 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :The syscall API had the usual read/write/seek calls, so you could access large files with (relative) ease. < 1549828584 327667 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(With both 16- and 32-bit variants for seek/tell.) < 1549828615 862459 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :no 64-bit variants? < 1549828635 607087 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Well, no. I would've had some sort of quota for it. < 1549828636 570476 :FreeFull!~freefull@defocus/sausage-lover QUIT : < 1549828743 254970 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :that would hit you back ten years later when most of the utilities developed up to that time can only deal with 32-bit files, and there's no sane way to recompile them to handle 64-bit files. like what's happend in unix. < 1549828781 631572 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :and then again when 2038 is nearing and you still have programs storing expoch second timestamps in int32_t < 1549828787 411388 :FreeFull!~freefull@defocus/sausage-lover JOIN :#esoteric < 1549828806 513055 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :no problem < 1549828807 191143 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :robots will kill us all before then < 1549828812 173583 :shikhin!shikhin@unaffiliated/shikhin QUIT :Ping timeout: 250 seconds < 1549828820 193044 :int-e!~noone@int-e.eu PRIVMSG #esoteric :like we need robots for doing that < 1549828843 699538 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :then the robots using the bot will curse you for having made such a stupid design < 1549828846 142214 :shikhin!shikhin@lambdaos.org JOIN :#esoteric < 1549828850 162429 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :What I think I have read is that 64-bit Linux uses 64-bit timestamps, but, the filesystem does not support 64-bit timestamps. < 1549828877 714251 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :zzo38: yes, that's more or less the current state, but it used to be worse < 1549828895 602464 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :also we're mostly past the 32 bit file offset problem too < 1549828898 968657 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: I had a quick look at the LLVM optimization passes overview at https://llvm.org/docs/Passes.html and none of that sounds like it would be able to reconstruct the coroutine basic blocks (and their sequencing, which would then enable liveness analysis on that level) from a state machine. < 1549828909 808136 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :but both of them caused a lot of trouble some time ago < 1549828928 196219 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :obviously it's never anything as simple as "unix uses ... timestamps" < 1549828937 597829 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :there are like a hundred different ways things on unix use timestamps < 1549828943 551632 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :different apis and stuff < 1549828947 56927 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :How to upgrade the filesystem to one that does support 64-bit timestamps? I do not need it right now, but maybe in eighteen years, will help < 1549828958 657144 :int-e!~noone@int-e.eu PRIVMSG #esoteric :ICBMs with nuclear warheads are on the doomsday menu again. < 1549828964 714744 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :again? < 1549828966 148203 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :they always were < 1549828984 604901 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :zzo38: for the file system, I'm more afraid of when the FAT timestamps run out. there still seems to be no plan to fix that, and there's no obvious way to fix it < 1549828990 307187 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I personally do not understand how anyone who works on nuclear weapons lives with themself < 1549828992 500001 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Oh sure but they were not advertised as such :P < 1549828999 899486 :int-e!~noone@int-e.eu PRIVMSG #esoteric :You'd have to ask the chef. < 1549829006 359450 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :When do the FAT timestamps run out? < 1549829007 343812 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :mostly because windows 95 OSR2 was so reckless as to use up all bytes in the 32 byte directory entries, so there's no place to extend them now < 1549829016 147564 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :zzo38: 2028-01-01 I think < 1549829019 467776 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :in local time < 1549829027 344136 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :that's the mtime, but nobody cares about the other two timestamps < 1549829029 771512 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :that goes double for things like Project Pluto which were explicitly designed to kill as many civilians as possible and poison the earth < 1549829072 56718 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :basically it started as a 7-bit year field within a 16-bit date field, and that 7-bit year field stores the date as an integer giving a two digit year < 1549829087 586053 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :what about ntfs < 1549829119 598147 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Were the FAT timestamps those with the odd (or, rather, even) two-second accuracy? < 1549829139 116046 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :perhaps we can change all the fs drivers to treat them rolling over, so 0 would get interpreted as 2028 instead of 1900 < 1549829154 43863 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: yes, because the time of day is also a 16-bit field < 1549829165 726223 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :and there's more than 65536 seconds in a day < 1549829183 908193 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :so they made it 5 bits for the hour, 6 bits for the minute, 5 bits for half of the second < 1549829247 439410 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :optimized for speed on the 8088 obviously < 1549829334 84157 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :and I think it might be DOS 2 after all, not DOS 3, that started to have unix-like read/write calls after all < 1549830916 627712 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: No, not from a state machine, I mean that optimization already exists for stack allocation in non-coroutine code. < 1549830932 273536 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I imagine you can do it by hand if you really cared, though, instead of using a struct. < 1549830943 327414 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :how did file IO work before that < 1549831008 442545 :int-e!~noone@int-e.eu PRIVMSG #esoteric :shachaf: Yes that exists but I'm not interested in that. I'm interested in a mechanism that would help a compiler starting from coroutines compared to a compiler that is facing a manually crafted corresponding state machine. < 1549831021 194175 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :I think old DOS uses file control blocks for file I/O < 1549831039 959272 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Oh, sure. < 1549831072 702409 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I mean, I think you can still craft a state machine manually that would be as good. < 1549831095 772069 :j4cbo!sid186930@gateway/web/irccloud.com/x-bknqqhhxzzlvqpqd PRIVMSG #esoteric :iopl < 1549831135 735 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Each state could have its own memory layout and you'd do the liveness analysis and so on yourself. Or something. < 1549831210 214163 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :kmc: DOS1 had inherited the kind of IO from CP/M where (1) there's no close, the file descriptor is a fixed size structure, and more importantly, (2) read and write work in fixed size blocks, you can't choose how many bytes to read and write, (3) file size is tracked by the fs in block granularity, not byte granularity < 1549831243 967143 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :and that's on a floppy disk, so it's less strange than the tape IO, which has variable sized blocks < 1549831258 767788 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :well, it depends < 1549831265 76019 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :it can have fixed sized blocks on tape too < 1549831290 568015 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :oh, and there were no directories, or rather, only one per drive < 1549831297 373538 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :mhm < 1549831346 180639 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :that's why text files in DOS used to have an extra "EOF" byte at the end, so they can be read by very old programs that use the CP/M calls and wouldn't know how many characters there are in the last sector < 1549831353 986638 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I had a computer that ran what I think was an old version of DOS, or similar < 1549831357 189406 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :the TRS-80 Model 100 < 1549831363 929166 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :(which has nothing to do with the other trash-80s) < 1549831368 323524 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :such a cool machine < 1549831446 254081 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`? ^Z < 1549831447 743814 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​^Z? ¯\(°​_o)/¯ < 1549831504 502585 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :oh, one more difference < 1549831526 410925 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :a laptop from 1983 that's *actually portable*, all solid state storage, indestructable, instant boot, 16 hours battery life < 1549831555 757451 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :with the unix-like interface, DOS introduced the unix idea of how programs can use the console device with the same read/write calls as you use for disk files < 1549831559 829047 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :and printers as well < 1549831576 608960 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :and a good keyboard < 1549831579 235520 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :or the serial console < 1549831595 161564 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :of course, in terms of CPU and RAM it was quite underpowered compared to desktops of the day and the luggables < 1549831606 125347 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :and you couldn't run real business software < 1549831619 773026 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :but still very good at certain niches, such as traveling journalists < 1549831636 366380 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :why would a traveling journalist need a computer? < 1549831663 438878 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :you could write text with the built in word processor and then send it back to the home office at 300 baud, using an acoustic coupler in your hotel room :P < 1549831670 3654 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :ah! < 1549831708 867823 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :yeah, that makes sense < 1549831743 98140 :int-e!~noone@int-e.eu PRIVMSG #esoteric :hah "luggable" < 1549831756 816310 :int-e!~noone@int-e.eu PRIVMSG #esoteric :. o O ( better bring a cart? :) ) < 1549831759 569245 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :it had a basic BASIC too, you could do cool things like scripting the terminal program to log you in automatically, etc < 1549831782 733073 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :also I guess they envisioned it for portable POS use b/c it has a barcode reader, you could make your own POS software in BASIC i suppose < 1549831801 815970 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I'm not sure if it had expansion ROMs for other programs < 1549831843 349866 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :iirc it did have PEEK and POKE, so you could probably have additional native code programs in RAM, and load them from the tape port with a BASIC stub < 1549831864 484604 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :however the RAM is limited and is also the only built-in 'nonvolatile' storage (via backup battery) < 1549831877 351841 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :that's why it had instant on, like a graphing calculator < 1549831917 4755 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :it was already obsolete by the time I was born, but I had a hand-me-down and got many hours of fun out of it < 1549831922 649395 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :I can still remember how the leather case smelled < 1549831934 23733 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :funny how smells stay with you for life. < 1549831967 38968 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :anyway, I loaded / saved programs into the Windows 95 sound recorder program, using the tape cable < 1549831986 268409 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :heh < 1549831992 640879 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :that sounds wasteful < 1549832000 130997 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :but it makes sense < 1549832015 244938 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :didn't you have a proper casette recorder? < 1549832021 313449 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :well, less wasteful than a real casette recorder < 1549832027 231218 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :what? < 1549832027 432086 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :although that'd be more authentic < 1549832034 713488 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i mean, i didn't have to buy tapes :P < 1549832036 436775 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :how is it less wasteful? < 1549832040 478704 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i might have been able to do it on my dad's boombox < 1549832044 796178 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :it stores the wave forms uncompressed < 1549832048 416393 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :using a bunch of transistors you have sitting around anyway is not really waste < 1549832049 205417 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :you can't store much on a disk that way < 1549832051 418993 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :that is true < 1549832060 449377 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :however i didn't have that many programs < 1549832060 557793 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :a few casettes would store more < 1549832064 717827 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :and each one was < 30 seconds of audio < 1549832067 368085 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :probably just one < 1549832070 509431 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :also I bet you could dither them to 8 bits < 1549832072 397778 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :didn't try tho < 1549832078 210723 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :anyway even back then I had a 1 GB hard drive < 1549832097 259656 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :to get the cable, my dad took me to radio shack -- this would have been mid to late 90s -- and they were shocked that someone was there to buy an accessory for a 15 year old computer, and even more shocked that they actually had one in the back room, in decaying packaging < 1549832099 320238 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :sure, but even with one gigabyte of hard drive < 1549832103 16918 :zzo38!~zzo38@24-207-15-213.eastlink.ca PRIVMSG #esoteric :Do you have a program that can convert the sound files to/from a more compact recording of the programs? < 1549832106 336518 :int-e!~noone@int-e.eu PRIVMSG #esoteric :. o O ( did it come on a truck? ) < 1549832106 647171 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :that's not more than a few recordable tapes < 1549832112 564683 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :zzo38: no, but it would probably be pretty easy to make < 1549832113 909513 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :I mean, you can only record an hour or two on that < 1549832123 935707 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :I had more recordable casettes than that when I was a child < 1549832135 952478 :int-e!~noone@int-e.eu PRIVMSG #esoteric :oh mid to late 90s... fine < 1549832178 679410 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :but i did much more BASIC programming on TI calcs < 1549832179 967761 :int-e!~noone@int-e.eu PRIVMSG #esoteric :IIRC around that time HDD sizes doubled every two years. < 1549832200 451513 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :because I could easily take it to school, and mess around in math class while pretending to work on the material I'd already finished :P < 1549832203 441388 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :int-e: I'd believe it < 1549832211 267319 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :the TI calculators were also more capable in many ways < 1549832219 497802 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :kmc: yeah < 1549832747 871953 :xkapastel!uid17782@gateway/web/irccloud.com/x-pyqztiqjptktsqne QUIT :Quit: Connection closed for inactivity < 1549832779 708053 :xkapastel!uid17782@gateway/web/irccloud.com/x-legmbsazkncousky JOIN :#esoteric < 1549834516 712786 :ashirase!~ashirase@modemcable098.166-22-96.mc.videotron.ca QUIT :Remote host closed the connection < 1549835726 532490 :arseniiv!~arseniiv@46.191.132.151 QUIT :Ping timeout: 240 seconds < 1549836273 411798 :Remavas!~Remavas@unaffiliated/remavas JOIN :#esoteric < 1549836368 47828 :Remavas!~Remavas@unaffiliated/remavas NICK :Remavas[AFK] < 1549837713 229707 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :`perl -eopen$F,">tmp/perm10"; @a=0..9;for$s(1..3628800){ print$F"@a\n";$k=$s;$m=2;$k/=$m++until$k%$m;@a[0,$m-1]=@a[$m-1,0]; }; warn "done" < 1549837714 358694 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :String found where operator expected at -e line 1, near "$F"@a\n"" \ (Missing operator before "@a\n"?) \ File size limit exceeded < 1549837720 344376 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :`perl -eopen$F,">tmp/perm10"; @a=0..9;for$s(1..3628800){ print$F "@a\n";$k=$s;$m=2;$k/=$m++until$k%$m;@a[0,$m-1]=@a[$m-1,0]; }; warn "done" < 1549837721 532450 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :File size limit exceeded < 1549837725 578727 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :darn < 1549837735 965136 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :`perl -eopen$F,">tmp/perm10"; @a=0..9;for$s(1..3628800){ print$F join("",@a),"\n";$k=$s;$m=2;$k/=$m++until$k%$m;@a[0,$m-1]=@a[$m-1,0]; }; warn "done" < 1549837737 511005 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :File size limit exceeded < 1549837755 572183 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :``` ulimit -f < 1549837756 279871 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :10240 < 1549837778 742671 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :is that ten megabytes or five megabytes? < 1549837790 461362 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :hmm < 1549837796 982730 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :in any case, it's too small for this < 1549837799 749582 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :darn < 1549837813 150564 :int-e!~noone@int-e.eu PRIVMSG #esoteric :5 I guess < 1549837874 397398 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :TAOCP 7.2.1 says "No sensible person would want to make a list of the 10! = 3,628,800 permutations of {0,1,2,3,4,5,6,7,8,9} by printing them out on thousands of sheets of paper, nor even by writing them all in a computer file." < 1549837891 902289 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :that sounds like the sort of thing #esoteric would want to do then < 1549837911 794516 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :but the 5 megabyte limit makes it impossible < 1549837915 893920 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :on hackeso that is < 1549837918 898777 :int-e!~noone@int-e.eu PRIVMSG #esoteric :if you say so < 1549838011 911674 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> length $ permutations [0..9] >>= (++ "\n") . (>>= show) < 1549838018 101330 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : mueval-core: Time limit exceeded < 1549838025 775557 :int-e!~noone@int-e.eu PRIVMSG #esoteric :> length $ permutations [1..9] >>= (++ "\n") . (>>= show) < 1549838028 695908 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : 3628800 < 1549838037 679411 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :`perl -eopen$F,"|wc"; @a=0..9;for$s(1..3628800){ print$F "@a\n";$k=$s;$m=2;$k/=$m++until$k%$m;@a[0,$m-1]=@a[$m-1,0]; }; warn "done" < 1549838044 571012 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :done at -e line 1. \ 3628800 36288000 72576000 < 1549838060 396340 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :`perl -eopen$F,"|wc"; @a=0..9;for$s(1..3628800){ print$F join("",@a),"\n";$k=$s;$m=2;$k/=$m++until$k%$m;@a[0,$m-1]=@a[$m-1,0]; }; warn "done" < 1549838064 836308 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :done at -e line 1. \ 3628800 3628800 39916800 < 1549838106 143920 :int-e!~noone@int-e.eu PRIVMSG #esoteric :you should also consider the age of TAoCP. < 1549838124 858278 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :int-e: volume 4 isn't old < 1549838137 175521 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :and it doesn't say that it can't be done, it says it's not worth < 1549838173 929086 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :or at least that it's not what you usually want when you're asking for generating all permutations < 1549838177 537446 :int-e!~noone@int-e.eu PRIVMSG #esoteric :it does make for a fun compression benchmark < 1549838186 43792 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :vol 4 handles some pretty big tasks < 1549838192 812218 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :4A really < 1549838359 532235 :int-e!~noone@int-e.eu PRIVMSG #esoteric :gzip -9: 1620145, bzip2 -9: 1150986, xz -9: 48068 ... wow?! < 1549838385 649817 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :int-e: which order of permutations is that? the one I gave, or the one you gave? < 1549838392 744005 :int-e!~noone@int-e.eu PRIVMSG #esoteric :the one you gave < 1549838408 442575 :int-e!~noone@int-e.eu PRIVMSG #esoteric :with spaces and newlines < 1549838415 508485 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :ok < 1549838446 469567 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :`perl -e@a=0..5;for$s(1..999){ print join("",@a),"\n";$k=$s;$m=2;$k/=$m++until$k%$m;@a[0,$m-1]=@a[$m-1,0]; }; < 1549838447 164152 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :012345 \ 102345 \ 201345 \ 021345 \ 120345 \ 210345 \ 310245 \ 130245 \ 031245 \ 301245 \ 103245 \ 013245 \ 213045 \ 123045 \ 321045 \ 231045 \ 132045 \ 312045 \ 012345 \ 102345 \ 201345 \ 021345 \ 120345 \ 210345 \ 410325 \ 140325 \ 041325 \ 401325 \ 104325 \ 014325 \ 314025 \ 134025 \ 431025 \ 341025 \ 143025 \ 413025 \ 013425 \ 103425 \ 301425 \ 031425 \ 130425 \ 310425 \ 410325 \ 140325 \ 041325 \ 401325 \ 104325 \ 014325 \ 214305 \ 124305 \ 421305 \ 2 < 1549838472 501512 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :`perl -e@a=0..4;for$s(1..120){ print join("",@a),"\n";$k=$s;$m=2;$k/=$m++until$k%$m;@a[0,$m-1]=@a[$m-1,0]; }; < 1549838473 171148 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :01234 \ 10234 \ 20134 \ 02134 \ 12034 \ 21034 \ 31024 \ 13024 \ 03124 \ 30124 \ 10324 \ 01324 \ 21304 \ 12304 \ 32104 \ 23104 \ 13204 \ 31204 \ 01234 \ 10234 \ 20134 \ 02134 \ 12034 \ 21034 \ 41032 \ 14032 \ 04132 \ 40132 \ 10432 \ 01432 \ 31402 \ 13402 \ 43102 \ 34102 \ 14302 \ 41302 \ 01342 \ 10342 \ 30142 \ 03142 \ 13042 \ 31042 \ 41032 \ 14032 \ 04132 \ 40132 \ 10432 \ 01432 \ 21430 \ 12430 \ 42130 \ 24130 \ 14230 \ 41230 \ 31240 \ 13240 \ 23140 \ 3214 < 1549838488 837908 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :`perl -e@a=0..4;for$s(1..120){ print join("",@a)," ";$k=$s;$m=2;$k/=$m++until$k%$m;@a[0,$m-1]=@a[$m-1,0]; }; < 1549838489 467345 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :01234 10234 20134 02134 12034 21034 31024 13024 03124 30124 10324 01324 21304 12304 32104 23104 13204 31204 01234 10234 20134 02134 12034 21034 41032 14032 04132 40132 10432 01432 31402 13402 43102 34102 14302 41302 01342 10342 30142 03142 13042 31042 41032 14032 04132 40132 10432 01432 21430 12430 42130 24130 14230 41230 31240 13240 23140 32140 12340 21340 41320 14320 34120 43120 13420 31420 21430 12430 42130 24130 14230 41230 01234 10234 20134 02134 1203 < 1549838506 501051 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :that's not even all permutations < 1549838509 694834 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :that has repetitions < 1549838512 823552 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :you're cheating < 1549838519 606073 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :or I'm cheating < 1549838556 554255 :int-e!~noone@int-e.eu PRIVMSG #esoteric :right I was going to check that... and that does explain the good compression, I guess. < 1549838672 926017 :int-e!~noone@int-e.eu PRIVMSG #esoteric :for the Haskell thing (newline, no spaces), gzip -9: 7913058; bzip2 -9: 9620381; xz -9: 1562180. < 1549838790 240073 :int-e!~noone@int-e.eu PRIVMSG #esoteric :and with spaces: gzip -9: 9525275; bzip2 -9: 9846341; xz -9: 2242728. < 1549838808 128500 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :how about with (7z a -mx=9 -sia kts-Ae6seFQj.7z; cat kts-Ae6seFQj.7z) ? < 1549838841 80647 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :(7z won't compress to a pipe, so I'm using a temporary file here) < 1549838867 527240 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :oh wait, you're saying gzip -9 rather than gzip -c9 so I don't have to cat it < 1549838891 529401 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I'm piping into it. < 1549838914 107720 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :piping into it is fine, it can take the uncompressed input in a pipe < 1549838926 350501 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :it just can't put or take the compressed file from a pipie < 1549838945 892410 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :so for compressing, it can read from a pipe, for decompressing it can write to a pipe < 1549838954 550999 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Archive size: 1759018 bytes (1718 KiB) < 1549838973 477946 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :ha! so it does sometimes win over xz < 1549839394 450490 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Remote host closed the connection < 1549840154 929878 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: I wonder whether there's a test program to run benchmarks with. < 1549840556 535549 :AnotherTest!~turingcom@ptr-82l26zcehbybvusuxld.18120a2.ip6.access.telenet.be QUIT :Ping timeout: 240 seconds < 1549841236 840073 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net JOIN :#esoteric < 1549841386 876492 :Essadon!~Essadon@81-225-32-185-no249.tbcn.telia.com QUIT :Quit: Qutting < 1549841442 970697 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I think it's 10 megabytes; bash ulimit -f is in 1024 byte units, except when in Posix mode. < 1549841446 914047 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`` ulimit -f; sh -c "ulimit -f" < 1549841447 681598 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :10240 \ 20480 < 1549841453 203958 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Checks out. < 1549841521 400666 :int-e!~noone@int-e.eu PRIVMSG #esoteric :hmpf < 1549841524 858725 :tromp!~tromp@ip-217-103-3-94.ip.prioritytelecom.net QUIT :Ping timeout: 250 seconds < 1549841560 690674 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Actually, what's sh there? < 1549841563 27292 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`` ls -l $(which sh) < 1549841563 934123 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :lrwxrwxrwx 1 0 0 4 Jan 24 2017 /bin/sh -> dash < 1549841599 218955 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :That Debian thing. < 1549841736 71523 :rain1!~My_user_n@unaffiliated/rain1 PRIVMSG #esoteric :`` cat /bin/sh < 1549841736 838766 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​ELF............>.....7......@.................@.8. .@.........@.......@.......@..................................8......8......8......................................................................... ..................!.....!...........>........ ...........h......h!.....h!................................T......T......T......D.......D..............Ptd...f......f......f.........................Q < 1549841764 456226 :Remavas[AFK]!~Remavas@unaffiliated/remavas QUIT :Quit: Leaving < 1549841773 286845 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :why do you gotta cat that < 1549841879 306498 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`? cat < 1549841880 438114 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :Cats are cool, but should be illegal. < 1549841885 887697 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :true < 1549841890 940978 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`5 w < 1549841891 687652 :kmc!~beehive@li521-214.members.linode.com PRIVMSG #esoteric :i disagree < 1549841893 179829 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :1/2:precision//78.75211317% of the time precision is totally overrated. \ gene ray//Dr Gene Ray is the Greatest Philosopher, and is the Greatest Mathematician. Cubic Harmonics. Only Cubic Harmonics can save humanity. Cubic Harmonics will pacify all religions. 96-hour Cubic Day debunks 1-day unnatural god. 96-hour day willdisprove disunity god. Academians are teaching - pseudocience. Worshipping a Word God will destroy the USA. \ web access//Sorry, Ha < 1549841898 725366 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`n < 1549841899 456903 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :2/2:ckEgo's sandbox currently has no web access. However, see `? `fetch \ type system//type system = kitten \ bugbear//A bugbear is a teddy bear that you can explain your bugs to. < 1549841935 509957 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`? `fetch < 1549841936 627543 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​`fetch [] downloads files, and is the only web access currently available in HackEgo. It is a special builtin that cannot be called from other commands. See also `edit. < 1549842071 712368 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :`` grwp -l HackEgo < 1549842072 682589 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​`! \ `# \ `fetch \ guarantee \ hackego \ hackeso \ `help \ `hoag \ list \ med \ print_args_or_input \ ruddy \ `run \ source \ test \ tmp \ web access \ zarutian < 1549842077 926021 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Less than I thought. < 1549842092 435147 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :fizzie: ah thanks < 1549842107 295957 :b_jonas!~x@catv-176-63-25-69.catv.broadband.hu PRIVMSG #esoteric :hmm < 1549842123 764031 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`? zarutian < 1549842125 820945 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :You can trust Zarutian. He fixes, as an electronics technician, banal mistakes of electronics engineers. Rather cy(ph|b)erpunkish in outlook regarding the 'Net. Knows more about ocaps than you can imagine. Possesses an Icelandic unnerver that ejects freezingly hot lava out of its business end. Bears an 'Authentic fakes provider' seal from the guild of Realers. He is also known for making rather long HackEgo wisdom entries. Take for instance this entry. It < 1549842161 603645 :int-e!~noone@int-e.eu PRIVMSG #esoteric :. o O ( `pwste zarutian ) < 1549842171 512064 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`paste wisdom/zarutian < 1549842172 405133 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :https://hack.esolangs.org/repo/file/tip/wisdom/zarutian < 1549842180 777530 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`2 ? zarutian < 1549842182 270467 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :2/2: It has a whole subentry just on Icelandic unnerver. Even though the Icelandic unnerver has its own. < 1549842200 203798 :int-e!~noone@int-e.eu PRIVMSG #esoteric :I also can't remember the proper repository URL command < 1549842207 279836 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It's `url. < 1549842218 847597 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I was just wondering if there was a `wrl. < 1549842291 700897 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`hwrl zarutian < 1549842292 386405 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :come on, you can type seven characters < 1549842305 59125 :int-e!~noone@int-e.eu PRIVMSG #esoteric :... useful. < 1549842316 398756 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`dowg bin/hwrl < 1549842319 149423 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :No output. < 1549842323 168815 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`doag bin/hwrl < 1549842324 781450 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :9814:2016-12-02 mkx bin/hwrl//echo \'come on, you can type seven characters\' < 1549842346 659263 :int-e!~noone@int-e.eu PRIVMSG #esoteric :what a horrible, opinionated character < 1549842388 156995 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Huh? < 1549842390 14890 :int-e!~noone@int-e.eu PRIVMSG #esoteric :ACTION also wonders about the difference between `url and `hurl < 1549842397 435428 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I don't remember that. Maybe it was an impostor. < 1549842400 25033 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Also horrible: there are entirely independent scripts bin/url and bin/hurl, where the only difference is that only the former supports tmp. < 1549842411 229008 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`cat bin/hurl < 1549842411 906706 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​#!/usr/bin/env python \ import sys, os.path, re, urllib \ if len(sys.argv) <= 1: \ print "https://hack.esolangs.org/repo/" \ else: \ f = os.path.abspath(sys.argv[1]) \ f = re.sub(r"^/+hackenv/", "", f) \ if re.match(r"/|(?:\.hg|tmp)(?:/|$)",f): \ sys.exit("File is outside web-viewable filesystem repository.") \ else: \ print ("https://hack.esolangs.org/repo/log/tip/" + \ urllib.quote(f)) < 1549842419 78617 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`dobg hurl < 1549842420 600460 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :11469:2018-04-08 sled bin/hurl//s,hackego.esolangs.org/fshg,hack.esolangs.org/repo,g;s,/index\\.cgi,, \ 10395:2017-03-11 sled bin/hurl//s,http,https,g \ 10316:2017-02-18 sled bin/hurl//s,codu.org/projects/hackbot,hackego.esolangs.org, \ 9142:2016-10-02 ` cp bin/{,h}url; sed -i \'11s/file/log/\' bin/hurl < 1549842425 961972 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`cblprits hurl < 1549842426 674876 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: cblprits: not found < 1549842429 552939 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :what! < 1549842439 972917 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`culprits bin/hurl < 1549842441 461548 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :fizzïe oerjän fizzïe oerjän < 1549842451 167785 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`culprits bin/url < 1549842452 746059 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :fizzïe fizzïe oerjän fizzïe oerjän fizzïe fizzïe fizzïe oerjän oerjän oerjän oerjän oerjän oerjän oerjän oerjän fizzïe fizzïe fizzïe fizzïe oerjän oerjän oerjän oerjän oerjän oerjän nitïa < 1549842462 962801 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :...yeah, nobody else to blame. < 1549842476 178968 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`url bin/url < 1549842477 13878 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :https://hack.esolangs.org/repo/file/tip/bin/url < 1549842502 73737 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Looks like I even fixed the paths in both url and hurl 10 months ago. < 1549842511 295072 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :So these aren't totally separate, they're almost identical. < 1549842550 350323 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I guess you can argue that because of the "h" in "hurl", it should only work for repository contents, while "url" is okay to support tmp as well. < 1549842570 68146 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Wait, these aren't independent. < 1549842574 989212 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :One of them is for the history of a file. < 1549842583 873415 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Ohhh. < 1549842598 906902 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`mkx hwrl//hurl "wisdom/$1" < 1549842600 477746 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :hwrl < 1549842606 545671 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I guess that makes sense. < 1549842608 838937 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`hwrl zarutian < 1549842609 686101 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :come on, you can type seven characters < 1549842624 19071 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`` mv hwrl bin < 1549842625 672590 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :No output. < 1549842629 331121 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`hwrl zarutian < 1549842630 119735 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :https://hack.esolangs.org/repo/log/tip/wisdom/zarutian < 1549842639 789385 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`mkx bin/wrl//url "wisdom/$1" < 1549842641 365247 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :bin/wrl < 1549842646 52712 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`wrl zarutian < 1549842646 793546 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :https://hack.esolangs.org/repo/file/tip/wisdom/zarutian < 1549842647 424945 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I guess hurl can't support tmp. Oh well. < 1549842663 936954 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Yes, it makes sense, I just didn't realize what it was for. < 1549842688 168872 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Yeah I was puzzled by the 'h' as well. So I learned something... useless. Yay. < 1549842743 259968 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :If you didn't know what hurl was, why were you hwrling? < 1549842759 283667 :int-e!~noone@int-e.eu PRIVMSG #esoteric :because I looked at /bin in the repo browser < 1549842775 456533 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Ah. < 1549842781 367672 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`url bin < 1549842782 219952 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :https://hack.esolangs.org/repo/file/tip/bin < 1549842800 511451 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Why is bin so full of nonsense? < 1549842816 971173 :int-e!~noone@int-e.eu PRIVMSG #esoteric :Because of the people. That is, us. :P < 1549842823 297179 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`cat bin/shachaf1sum < 1549842823 912664 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​#!/bin/bash \ sha1sum "$@" | tr a-z n-za-m < 1549842830 916674 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`dobg shachaf1sum < 1549842832 460131 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :2666:2013-04-14 printf \'#!/bin/bash\\nsha1sum "$@" | tr a-z n-za-m\' > bin/shachaf1sum && chmod +x bin/shachaf1sum < 1549842860 199567 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :kmc: SMILING CAT FACE WITH HEART-SHAPED EYES < 1549842873 260002 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`culprits bin/ < 1549842874 908825 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :oerjän < 1549842878 891316 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :HackEso: binaries of the people, by the people, for the people. < 1549842880 465082 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 JOIN :#esoteric < 1549842889 538046 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :`cat bin/ < 1549842890 230187 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :echo Stop taking everything literally! < 1549842899 82706 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :fizzie: There's still a DNS entry for hackego.esolangs.org < 1549842899 584133 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`help < 1549842900 7757 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch [] " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ < 1549842907 278874 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :cute < 1549842907 322368 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Which was confusing when I tried to hg pull a little while ago. < 1549842914 968806 :Lord_of_Life!~Lord@unaffiliated/lord-of-life/x-0885362 QUIT :Ping timeout: 246 seconds < 1549842941 399454 :Lord_of_Life_!~Lord@unaffiliated/lord-of-life/x-0885362 NICK :Lord_of_Life < 1549842957 14171 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :shachaf: I guess it doesn't look too likely the Cloud at Cost host is coming back... < 1549842960 550992 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`? shaventions < 1549842963 816840 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :Shaventions include: before/now/lastfiles, culprits, hog/{h,d}oag, le//rn, tmp/, mk/mkx, {s,p}led/sedlast, spore/spam/speek/sport/1/4/5, edit. Taneb did not invent them yet. < 1549842973 479482 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :No one ever uses things like before/now/lastfiles < 1549843011 552148 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :I think edit is a fizzievention by now < 1549843028 879883 :int-e!~noone@int-e.eu PRIVMSG #esoteric :`cat bin/No < 1549843029 526129 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :​#!/bin/sh < 1549843045 892881 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :int-e: I think that's for ruining an error quote. < 1549843063 231284 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`dobg No < 1549843064 779789 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :0:2012-02-16 Initïal import. < 1549843065 493300 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Or something along those lines. < 1549843075 667259 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`? nitia < 1549843076 727221 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :nitia is the inventor of all things. The BBC invented her. < 1549843106 49911 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :...why the BBC < 1549843123 270110 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Probably https://en.wikipedia.org/wiki/BBC_Nitia < 1549843127 285272 :FireFly!znc@freenode/staff/firefly PRIVMSG #esoteric :o < 1549843165 434452 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`cat bin/whoops < 1549843166 27269 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :OLD="wisdom/$1"; [ -z "$1" ] && OLD="$(lastfiles)"; NEW="${OLD}s"; if [ -f "$NEW" ]; then echo "«${NEW}» already exists"; exit 1; fi; mv "$OLD" "$NEW" && echo "«${OLD}» -> «${NEW}»" < 1549843174 362997 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`dobg whoops < 1549843175 938982 :HackEso!~h@techne.zem.fi PRIVMSG #esoteric :9714:2016-11-17 whoop ../bin/whoop \ 9713:2016-11-17 ` mv bin/whoop{s,} \ 9710:2016-11-17 ` mv bin/whoops{s,} \ 9709:2016-11-17 whoops \ 9708:2016-11-17 mkx bin/whoops//OLD="wisdom/$1"; [ -z "$1" ] && OLD="$(lastfiles)"; NEW="${OLD}s"; if [ -f "$NEW" ]; then echo "\xc2\xab${NEW}\xc2\xbb already exists"; exit 1; fi; mv "$OLD" "$NEW" && echo "\xc2\xab${OLD}\xc2\xbb -> \xc2\xab${NEW}\xc2\xbb" \ 5338:2015 < 1549843192 666868 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :oh man, tg