←2018-10 2018-11 2018-12→ ↑2018 ↑all
00:06:11 <int-e> `learn The password of the month is most forgettable.
00:06:13 <HackEso> Relearned 'password': The password of the month is most forgettable.
00:06:33 <shachaf> `dowg password
00:06:35 <HackEso> 11646:2018-11-01 <int-̈e> learn The password of the month is most forgettable. \ 11622:2018-10-02 <oerjän> learn The password of the month is wearing shorts despite the weather \ 11619:2018-09-05 <oerjän> learn The password of the month is ripe for picking \ 11587:2018-08-03 <int-̈e> learn The password of the month is alphanumer1c. \ 11584:2018-07-20 <int-̈e> learn The password of the month will be short-lived. \ 11570:2018-06-03 <oerjän> learn Th
00:06:53 <shachaf> Oh, right, you live in the future.
00:11:41 -!- nfd9001 has joined.
00:16:24 -!- nfd9001 has quit (Ping timeout: 252 seconds).
00:18:12 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:30:35 -!- nfd9001 has joined.
00:42:16 -!- MDude has joined.
00:55:53 -!- oerjan has joined.
01:57:10 -!- tromp has quit (Read error: Connection reset by peer).
01:57:45 -!- tromp has joined.
02:35:28 -!- nfd9001 has quit (Ping timeout: 268 seconds).
03:49:47 -!- GeekDude has joined.
03:56:52 -!- moonythevampire has changed nick to moonythedustpile.
04:35:08 <zzo38> I read somewhere that DEC VT300 can emulate a Tektronix terminal. Is that why xterm does, too?
04:46:29 <imode> happpy halloween.
04:47:02 <oerjan> moonythedustpile: happy sunrise?
05:19:22 -!- oerjan has quit (Quit: Nite).
05:33:39 <imode> I'm mad that my language doesn't have lambdas.
05:35:56 <zzo38> What language is that? If you are mad of such thing, can you add it?
05:40:03 <imode> yeah lmao I'm the author of it.
05:41:11 <imode> but it's gonna take some work.
05:42:42 <imode> https://ptpb.pw/_xfe/text
05:43:17 <imode> that code actually works. my tests include `map (add 1) (evens (s (s (s 1))))`
05:44:40 <imode> however I can't reduce it fully due to the way I perform evaluation. so I have to define a function that does it for me. unless I whip up some lambdas.
05:45:03 <imode> which I can do, I just don't know how to do it _well_. currently my interpreter is 236 lines of python code and I haven't had to touch it save for a couple of lines.
05:46:30 <imode> feeling kind of hopeless tbh.
05:48:45 <imode> I don't wanna add any new features. this just works via term rewriting and pretty dumb subtree matching for variables.
05:49:03 <imode> but I do plan on porting my interpreter to C, then assembly, then to verilog or VHDL.
05:50:56 <imode> so I wanna make sure I have my design right.
05:52:58 <int-e> shachaf: I adhered to UTC
06:05:57 <zzo38> Make up a scheme card of Magic: the Gathering that is based on the Scheme programming language.
06:06:55 <shachaf> If I have a thing that takes a block argument that can early-exit, what sort of thing can it be?
06:07:25 <zzo38> A macro, maybe, I don't know?
06:07:29 <shachaf> I'd like an answer other than "macro" and other than "continuation", if it exists.
06:07:48 <zzo38> OK, but I don't know that answer.
06:07:54 <shachaf> A block isn't a function because it can early-exit.
06:08:31 <zzo38> Yes, I know that
06:08:39 <shachaf> Yes, I know that you know that
06:09:14 <shachaf> But a block can be given a type.
06:09:18 <shachaf> It can even have input and output types.
06:28:53 <zzo38> Do you know what it is called in Magic: the Gathering when you do stuff in order to affect whether or not there is priority during the cleanup step?
06:35:54 <imode> shachaf: branch?
07:06:42 -!- nfd9001 has joined.
07:26:58 <imode> solved my problem using a more idiomatic solution: just unpack the damn arguments.
07:41:10 <shachaf> imode: ?
08:35:19 <shachaf> tromp: whoa, you're mentioned in https://docs.google.com/viewer?url=http://www.cwi.nl/~paulv/papers/average.ps
08:39:00 <tromp> well, both authors were my supervisor, so no surprise there
08:49:10 <oren> https://twitter.com/glanderco/status/1024103665265770496
09:06:33 <izabera> it's 3 months old
10:03:32 -!- FaerieFly has changed nick to FireFly.
10:13:01 -!- imode has quit (Ping timeout: 260 seconds).
10:31:15 <int-e> > let coerce = id Data.Profunctor.Unsafe..# undefined in appEndo (coerce (succ :: Int -> Int)) 1 :: Int
10:31:17 <lambdabot> 2
10:33:59 <oren> izabera: maybe but it still scaryyy
10:37:42 <esowiki> [[Madbrain]] M https://esolangs.org/w/index.php?diff=58167&oldid=58166 * Gamer * (+24) /* Example */
10:41:21 <esowiki> [[Madbrain]] https://esolangs.org/w/index.php?diff=58168&oldid=58167 * Gamer * (+450)
10:43:11 <esowiki> [[Madbrain]] M https://esolangs.org/w/index.php?diff=58169&oldid=58168 * Gamer * (-159) /* Hello World! */
10:43:38 <esowiki> [[Madbrain]] M https://esolangs.org/w/index.php?diff=58170&oldid=58169 * Gamer * (+159) /* Hello World! */
10:52:30 -!- AnotherTest has joined.
11:07:16 -!- Spooktober has quit (Quit: Spooktober is over.).
11:07:50 -!- grumble has joined.
11:33:31 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
11:36:07 -!- Lord_of_Life has joined.
11:36:07 -!- Lord_of_Life has quit (Changing host).
11:36:07 -!- Lord_of_Life has joined.
12:06:47 <esowiki> [[AsciiDots]] https://esolangs.org/w/index.php?diff=58171&oldid=58151 * Gamer * (-3) /* Samples */
12:31:57 -!- BowserFromThe80s has changed nick to Bowserinator.
12:35:47 -!- mniip has quit (Ping timeout: 600 seconds).
13:40:47 -!- arseniiv has joined.
13:41:25 -!- sleepnap has joined.
13:59:24 <esowiki> [[IRP]] https://esolangs.org/w/index.php?diff=58172&oldid=58157 * Gamer * (+162) /* Examples */
14:25:36 -!- AnotherTest has quit (Ping timeout: 260 seconds).
14:35:11 -!- Essadon has joined.
14:41:56 -!- imode has joined.
14:49:01 -!- AnotherTest has joined.
15:33:34 -!- sleepnap has quit (Ping timeout: 250 seconds).
15:33:55 <esowiki> [[LOLZ]] M https://esolangs.org/w/index.php?diff=58173&oldid=55612 * Gamer * (-20)
15:39:58 -!- Sgeo has quit (Read error: Connection reset by peer).
15:40:26 -!- Sgeo has joined.
15:44:16 -!- mniip has joined.
15:48:15 -!- sleepnap has joined.
16:01:14 -!- moei has joined.
16:03:47 -!- imode has quit (Quit: WeeChat 2.3).
16:23:05 -!- oerjan has joined.
16:58:12 -!- tromp has quit (Ping timeout: 244 seconds).
17:05:57 -!- tromp has joined.
17:57:37 -!- zzo38 has quit (Ping timeout: 244 seconds).
18:01:36 <esowiki> [[Truth-machine]] https://esolangs.org/w/index.php?diff=58174&oldid=58158 * Oerjan * (+2) ginorst
18:02:52 <esowiki> [[Truth-machine]] M https://esolangs.org/w/index.php?diff=58175&oldid=58174 * Oerjan * (-9) Policy
18:30:25 -!- atehwa has joined.
18:35:30 -!- Phantom_Hoover has joined.
18:43:22 -!- oerjan has quit (Quit: Later).
19:30:36 -!- nfd9001 has quit (Ping timeout: 250 seconds).
21:29:53 -!- moei has quit (Quit: Leaving...).
21:51:39 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
21:52:57 <esowiki> [[Truth-machine]] M https://esolangs.org/w/index.php?diff=58176&oldid=58175 * ZM * (-2) Undo revision 58174 by [[Special:Contributions/Oerjan|Oerjan]] ([[User talk:Oerjan|talk]]) L00P: those are, in fact, zeros
21:54:47 -!- Phantom_Hoover has joined.
21:54:47 -!- Phantom_Hoover has quit (Changing host).
21:54:47 -!- Phantom_Hoover has joined.
22:03:22 -!- sleepnap has left.
22:27:08 -!- MDude has quit (Ping timeout: 245 seconds).
22:27:15 -!- MDude has joined.
22:41:31 -!- Phantom_Hoover has quit (Remote host closed the connection).
22:56:31 -!- Essadon has quit (Quit: Qutting).
23:10:12 -!- arseniiv has quit (Ping timeout: 252 seconds).
23:11:25 -!- moonythedustpile has quit (Excess Flood).
23:12:36 -!- moony has joined.
23:12:57 -!- Soni has quit (Ping timeout: 250 seconds).
23:13:41 -!- Soni has joined.
23:26:37 -!- FireFly has quit (Quit: Goodbye).
23:26:48 -!- FireFly has joined.
23:31:37 -!- Lord_of_Life_ has joined.
23:34:30 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
23:34:32 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:34:40 -!- Lord_of_Life has quit (Changing host).
23:34:40 -!- Lord_of_Life has joined.
00:22:05 -!- tromp has quit (Remote host closed the connection).
00:22:59 -!- tromp has joined.
00:40:23 -!- oerjan has joined.
00:41:48 -!- nfd9001 has joined.
00:46:33 <esowiki> [[Truth-machine]] https://esolangs.org/w/index.php?diff=58177&oldid=58176 * Oerjan * (+2) Undo revision 58176 by [[Special:Contributions/ZM|ZM]] ([[User talk:ZM|talk]]) (No fair undoing *all* the moves. Also, we have a tradition to sort some "1337" names as if they were spelled normally, but maybe not consistently.)
00:48:30 -!- AnotherTest has quit (Ping timeout: 264 seconds).
01:17:35 -!- zzo38 has joined.
01:26:19 -!- zzo38 has quit (Disconnected by services).
01:26:24 -!- zzo38 has joined.
01:40:07 <moony> I'm writing a emulator for the MC88110. Someone please slap me.
01:51:19 <oerjan> @slap moony
01:51:20 * lambdabot loves moony , so no slapping
01:51:31 <oerjan> sorry, didn't work
01:52:27 -!- zzo38 has quit (Ping timeout: 240 seconds).
01:52:54 -!- zzo38 has joined.
01:53:15 <zzo38> Do you know how to uncook Magic: the Gathering puzzles?
02:00:58 -!- nfd9001 has quit (Ping timeout: 246 seconds).
02:04:19 -!- zzo38 has quit (Ping timeout: 244 seconds).
02:13:08 -!- zzo38 has joined.
02:29:35 <zzo38> Hello
02:36:06 -!- xkapastel has quit (Quit: Connection closed for inactivity).
04:00:01 -!- Lord_of_Life has quit (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine).
04:07:33 -!- MDead has joined.
04:10:21 -!- MDude has quit (Ping timeout: 268 seconds).
04:10:28 -!- MDead has changed nick to MDude.
05:29:12 -!- oerjan has quit (Quit: Nite).
05:44:48 -!- sleffy has joined.
05:45:47 -!- sleffy has quit (Client Quit).
06:04:49 -!- xkapastel has joined.
07:34:47 -!- tromp has quit (Remote host closed the connection).
07:34:59 -!- tromp has joined.
09:44:31 -!- xkapastel has quit (Quit: Connection closed for inactivity).
12:28:21 -!- xkapastel has joined.
13:33:17 -!- sleepnap has joined.
13:45:23 -!- arseniiv has joined.
15:09:22 -!- moony_ has joined.
15:09:31 <moony_> OpenBSD has an assembler for the MC88100. yaaaay
15:09:42 <moony_> So i have a reference point that I can use to crosscheck everything now
15:10:20 <moony_> https://github.com/syuu1228/openbsd-src/tree/ca0d3073d059b7237a1392dde772265698465272/sys/arch/m88k <<< Reference point! :D
15:18:12 -!- wob_jonas has joined.
15:18:19 <wob_jonas> zzo38: hello. what do you mean by uncook?
15:19:05 <moony_> hi wob_jonas
15:19:58 <wob_jonas> hi moony_. why are you writing an emulator, and are you at least making it very efficient and microoptimized?
15:21:05 <moony_> I plan on it, yes
15:21:17 <wob_jonas> good
15:21:31 <moony_> but i also have to make it accurate as possible, because otherwise it'd be a crappy emulator of an obscure system, and no-one else would be there to make a good one
15:21:48 <wob_jonas> but are you also putting on some impractical constraints that make the micro-optimization hard to do and a waste of your time?
15:22:17 <moony_> wob_jonas: no. Cache emulation in this case, for example, is actually easy and fast (Only 128 lines), so a modern CPU can easily pull it off.
15:22:41 <moony_> and the entire 88k cache, with it's status info, easily fits into a modern CPU's cache
15:23:24 <moony_> even then, emulating 192 different registers with only 16 registers is kinda hard :P (two sets of 64 control registers, 32 GPR, and 32 80-bit FPR)
15:24:02 <moony_> CPU only runs at 50MHZ, but it runs 2 instructions per cycle optimally, so I have to be careful anyways
15:24:07 <moony_> I want it to run at full speed accurately
15:24:48 <zzo38> w-b_jonas: I mean to make the altered version of the puzzle which avoids the cook, which should keep the proper solution or pretty close, and should also try to retain the theme if possible
15:25:09 <moony_> wob_jonas: if you're curious, here's the MC88K serie's manuals: http://www.bitsavers.org/components/motorola/88000
15:25:49 <wob_jonas> moony_: do you have any programs that run on that MC88110 that you'll be able to run with this emulator?
15:26:10 <wob_jonas> zzo38: ah, de-cheese the puzzle. I see.
15:27:36 -!- moony__ has joined.
15:28:07 <wob_jonas> moony__: do you have any programs that run on that MC88110 that you'll be able to run with this emulator?
15:28:16 <moony__> wob_jonas: OpenBSD, duh
15:28:23 <moony__> OpenBSD has a port, hence why i noted it
15:28:26 <wob_jonas> good
15:28:30 <moony__> i can use it as my testcase
15:28:51 <moony__> it also has an assembler and GCC port avaliable, but i'm rolling my own anyways because i can
15:29:27 -!- moony_ has quit (Ping timeout: 256 seconds).
15:29:43 <wob_jonas> moony_: you have checked that Bellard doesn't happen to have an accurate emulator for this system, right?
15:29:56 <moony__> I've looked everywhere :P
15:30:10 <wob_jonas> well sure, if it runs openbsd, then it has to have a gcc port
15:30:46 <wob_jonas> openbsd is implemented mostly in C
15:30:55 <moony__> yea
15:31:02 <wob_jonas> that doesn't mean that it's a well-maintained recent gcc port of course
15:31:15 <wob_jonas> just some gcc port that could more or less compile some stuff at some point
15:31:33 <wob_jonas> if a wizard knew how to invoke it
15:31:34 <moony__> The main difficulty with the 88k is that it supports multicore, but the way it does it is unusual these days: Each "core" is a seperate physical chip
15:31:51 <wob_jonas> that's not that unusual really
15:32:03 <wob_jonas> we only had to put them on the same chip because clock frequencies got faster,
15:32:09 <moony__> Mm.
15:32:28 <wob_jonas> maybe I'm showing my age
15:32:43 <moony__> I'm still in highschool, so maybe you are.
15:33:05 <wob_jonas> I mean sure, these days in mobile phones you put everything in one chip, memory and all
15:33:44 <wob_jonas> but that didn't make sense back when I was young, because individual chip designs cost a lot to start to make, and once they started they could make as many as they wanted for cheap, it's making the design that was hard
15:34:23 <wob_jonas> which is also why ROMs were a bit expensive, so video games could only be produced in large numbers, and there were no large enough volatile memories yet
15:34:33 <wob_jonas> so casettes and disks were eventually used as a workaround
15:34:54 <wob_jonas> and by disks I mean floppy disks, and eventually CDs
15:35:22 <wob_jonas> like for the famicom
15:35:55 <moony__> Oldest thing we have in my house is a gamecube
15:35:57 <moony__> :P
15:36:19 <wob_jonas> I don't have a famicom or other old hardware either
15:36:35 <wob_jonas> well, not as a physical system at least, I can run emulated old systems obviously
15:36:52 <wob_jonas> I don't even have a floppy drive anymore, I got rid of it
15:37:08 <wob_jonas> mind you, this computer I'm sitting at is old, but it's nowhere near that old
15:37:53 <wob_jonas> it's only like 8 years old or something
15:38:13 <wob_jonas> was a great top quality computer back when I got it
15:38:18 <wob_jonas> now it's very obsolete
15:38:42 <moony__> I wish i remembered my XBOX Live password for my 360
15:38:57 <moony__> because my account has Marble Blast Ultra installed, and guess what: Ultra is no longer for sale anywhere
15:39:03 <moony__> :<
15:39:25 <wob_jonas> get a copy in an illegal way then, if you're sure you've already bought it legally
15:39:39 <wob_jonas> or use their customer service to reset the password of your account
15:40:04 <moony__> I literally don't know anything related to the account anymore
15:40:08 <moony__> not even the email used
15:40:09 <wob_jonas> you probably only need to know your name and password and ask them on phone on workdays during business times
15:40:09 <moony__> :<
15:40:15 <wob_jonas> um
15:40:26 <wob_jonas> s/name and password/name and birth date/
15:40:30 <wob_jonas> isn't that how it works?
15:40:37 <moony__> Idk, I'll check when i get home
15:42:22 <wob_jonas> but getting an illegal copy of the software from the internets might still be simpler
15:42:42 <moony__> mk
15:43:11 <wob_jonas> that said, you'd better ask someone who actually knows something about nintendo or game systems, rather than me
15:43:27 <moony__> s/nintendo/microsoft/
15:43:32 <wob_jonas> yeah, that
15:43:34 <moony__> it doesn't matter much anyways
15:43:42 <wob_jonas> I only own a nintendo game boy, no other game system
15:44:03 <wob_jonas> apart from that, at home I only play video games on a PC
15:44:05 <moony__> Marble It Up!, a spiritual successor to the Marble Blast series (Gold and Ultra), is coming out for PC soon
15:44:15 <wob_jonas> although I've played quite a lot on other people's game systems of all brands
15:44:18 <moony__> so it's enough for me
15:44:42 <wob_jonas> well, not all brands
15:45:01 <wob_jonas> I've played on nintendo, sega, and sony, but not on microsoft ones IIRC
15:45:26 <wob_jonas> "spiritual successor" is ... somewhat broad.
15:46:14 <moony__> Well, the game has the same concept and design as the original Marble Blast games, even people from the original dev team helped
15:46:21 <moony__> you could say it's similar to what Sonic Mania is for sonic.
15:48:47 <moony__> it's not a TRUE successor only because GarageGames, the company that owns Marble Blast, doesn't seem to want a new Marble Blast game, probably because of the now small market
15:48:53 <moony__> :P
15:49:34 <wob_jonas> ah yes
15:49:37 <wob_jonas> `? keenlist
15:49:38 <HackEso> keenlist is notification for when Tom Hall acquires the necessary intellectual property rights to create the videogame series Commander Keen: The Universe is Toast
15:50:01 <wob_jonas> the owner of the brand isn't selling the rights, despite that they have no use for it
15:50:11 <moony__> pretty much
15:50:32 <wob_jonas> so instead of one good officially sanctioned games, there are only a lot of fan-made games
15:51:16 <wob_jonas> but none of them made by such a game developer genius as Tom Hall
15:51:52 <wob_jonas> most of the good ones are just modifications of the original games with new graphics and levels
15:52:16 <wob_jonas> which is certainly not what Tom Hall would do if he was allowed to make a new game
15:52:31 <wob_jonas> mind you, they can still be good games
15:52:36 <wob_jonas> it's just not the same thing
16:01:33 <wob_jonas> moony__: at some point, please publish this emulator thing somewhere public, and tell this channel about it too
16:01:44 <moony__> I plan on it
16:02:14 <moony__> One of my silly ideas was to try and make it connect to this channel and let you run stuff on it :P
16:02:52 <wob_jonas> nice. I've done that once, but I haven't written the emulator, I only wrote the connection, and I ran it on a side channel because it was too noisy
16:03:02 <moony__> i know. that DOS bot :P
16:03:20 <moony__> i was so curious i made a lot of said noise :P
16:03:30 <wob_jonas> I'd like to point to schmorp's two crazy projects each one emulating an old system with a cpu: http://blog.schmorp.de/2015-06-08-emulating-linux-mips-in-perl-1.html http://blog.schmorp.de/2015-11-10-emulating-vt102-hardware-in-perl-1.html
16:04:49 <moony__> Glad i learned perl recently
16:04:54 <moony__> (I like perl now. Send help)
16:04:56 <wob_jonas> also to this year's IOCCC winner by Christopher Mills http://www.ioccc.org/years.html#2018_mills
16:05:11 <wob_jonas> moony_: I can't really. I hate perl, but I can't stop using it
16:05:23 <wob_jonas> definitely look at ioccc/2018/mills if you haven't, it's very crazy
16:05:30 <moony__> Perl 6 has a lot of nice things
16:05:41 <wob_jonas> perl 6? ok, now you need help
16:05:52 <wob_jonas> perl 6 is bad for you, stop.
16:06:07 <pikhq> It's true.
16:06:08 <moony__> lol
16:06:13 <moony__> Perl 6 is slow
16:06:23 <moony__> i just use it for quick tasks, like i would with perl
16:06:25 <wob_jonas> are you tied in a room and is someone focing you to type "Perl 6 has a lot of nice things" under duress? can you give an address?
16:06:49 <moony__> Well i'm an insane codegolfer. Sorry, i'm sitting in a study hall typing that, no duress here
16:06:51 <wob_jonas> or at least a country
16:07:08 <moony__> i find writing x86-64 fun.
16:07:20 <wob_jonas> maybe there are charity organizations offering help for addiction issues available in your country
16:07:33 * moony__ is literally prototyping the cache lookup function at this second
16:07:39 * moony__ in x86-64
16:07:44 <wob_jonas> there's no problem with writing x86_64, that can be fun
16:07:53 <moony__> golfing it can be awful
16:07:55 <moony__> :P
16:07:59 <wob_jonas> it's only what you said about perl 6 that scares me
16:08:09 <moony__> no u
16:08:25 <wob_jonas> yeah, me too, and I'm seeing a psychologist about all the issues I have
16:08:37 <moony__> Here, to prove my insanity: The main reason i'm writing this massive emulator project is so i can do codegolf with it
16:08:54 <wob_jonas> oh, so that's why you want an _accurate_ emulator. that's a good reason
16:09:04 <moony__> :P
16:09:25 <moony__> That, and a real MVMe board, or designing my own board, would cost a fortune. So real hardware is out of the question
16:09:40 <moony__> unless someone gifts me one haha (Like that would ever happen)
16:10:36 <wob_jonas> sure! I'm a software guy, I think writing custom software on very powerful PCs is the solution to everything, and often consider custom hardware projects crazy when it seems like they could be replaced by a five line perl script
16:10:51 <moony__> Well, i plan on learning how to make custom hardware anyways
16:11:01 <wob_jonas> or not perl, whatever, a software solution on a PC they already have
16:11:05 <moony__> so maybe someday i COULD make a real system using the 88k if i want to
16:11:17 <moony__> i mean, a 88110 only goes for $20 on ebay, because no-one wants them
16:11:18 <wob_jonas> but I'm tolerant, just because I think they're crazy I won't try to stop them
16:11:28 <wob_jonas> it's their free time and they choose to spend it however they like
16:11:51 <wob_jonas> maybe it's a useful hobby to get into hardware and later design actually useful big hardware, one that does something that you can't just do with a simple program on a PC
16:11:54 <moony__> i wonder what happened to #asm
16:11:59 <moony__> it's become invite only
16:12:06 <moony__> i wanted to check if cmp was slower than test
16:12:22 <wob_jonas> moony__: it's forwarded to ##asm
16:12:33 <moony__> oh
16:12:42 <moony__> and ##asm says i'm banned. I blame freenode mask.
16:12:45 <moony__> :p
16:12:59 <wob_jonas> let me check
16:13:43 <wob_jonas> let me see which ban mask you match
16:13:56 <wob_jonas> oh
16:14:12 <wob_jonas> moony__: ":card.freenode.net 367 nc_jonas ##asm *__*!*@* card.freenode.net 1535082016"
16:14:21 <moony__> RIP
16:14:22 <wob_jonas> moony: renick yourself
16:14:32 -!- moony__ has changed nick to moony2.
16:15:01 <wob_jonas> does that help?
16:15:33 <moony2> mhm
16:16:52 <wob_jonas> note that usually IRC allows you to query the ban list even if you're banned from the channel
16:17:06 <wob_jonas> so if you meet this sort of thing you can check this yourself too
16:17:11 <wob_jonas> not that I don't want to help, just saying
16:17:37 -!- moei has joined.
16:18:49 <wob_jonas> zzo38: anyway, no, I don't know how to de-cheese M:tG puzzles. you can try to ask ais523
16:20:21 <wob_jonas> also, yes, I should continue doing the Oracle dump thingy
16:20:27 -!- moony2 has quit (Ping timeout: 256 seconds).
16:27:25 -!- AnotherTest has joined.
16:34:39 -!- moony2 has joined.
16:37:46 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
17:09:11 -!- moony2 has quit (Ping timeout: 256 seconds).
17:11:57 -!- Essadon has joined.
17:14:49 <esowiki> [[Temporal]] https://esolangs.org/w/index.php?diff=58178&oldid=58076 * Plokmijnuhby * (-265) On second thoughts, I'm making it more like Underload.
17:20:29 -!- oerjan has joined.
17:37:19 -!- hexfive has joined.
17:37:44 -!- hexfive has quit (Client Quit).
17:38:07 -!- hexfive has joined.
18:15:16 -!- oerjan has quit (Quit: Later).
18:48:58 -!- Bowserinator has quit (Excess Flood).
18:49:28 -!- Bowserinator has joined.
19:42:32 -!- Phantom_Hoover has joined.
19:47:03 <arseniiv> oh a time-travelling language
19:48:29 <arseniiv> for me it seems at least a part of these should be equivalent to languages abusing amb or other such nondeterministic retcon stuff
19:50:09 <arseniiv> also I occasionally unforgot about Riemann surfaces: these time-travelling programs could essentially run not on a linear time but some more exotic like two interdependent universes
19:51:07 <arseniiv> what do you think?
19:51:28 <arseniiv> okay I’m going to the past to give myself an idea
19:52:30 <arseniiv> @messages?
19:52:30 <lambdabot> Sorry, no messages today.
19:57:37 <arseniiv> oh lambdabot oh dear / it’s such a thing unclear / to me if you time-travel / or not; I hit the gravel
19:59:05 <arseniiv> it would be nice and all / if you could send me something / from future times to now / because I’ve lost the rhyme
20:11:19 <zzo38> Some television shows have popup messages. Can you get rid of them by recording from multiple channels and then some computer program can be used to fix them?
20:16:28 -!- arseniiv has quit (Ping timeout: 246 seconds).
20:27:13 -!- wob_jonas has joined.
20:28:15 <wob_jonas> I bought myself a frame for eyeglasses! I had my doubts, but I think I chose right. Unless this one is unsuitable somehow, I shall have a fancy new pair of eyeglasses ready by christmas 2018 the latest.
20:31:01 -!- MDude has quit (Ping timeout: 244 seconds).
21:32:30 <moony> Alright, i have a good idea of what i do need and what i don't for a fairly accurate emulator (Mostly™ cycle accurate). But first, nostalgia trip.
21:35:38 <wob_jonas> moony: what peripherials are you planning to support?
21:36:04 <moony> Serial, SCSI drive, and maybe a display.
21:36:10 <moony> Really just adding stuff as needed
21:36:12 <moony> :P
21:36:26 <wob_jonas> wow nice
21:36:41 <wob_jonas> wait, no floppy or casette? or the floppy or casette is on SCSI?
21:36:58 <moony> the MC88100, like it's cousin (the M68k), uses memory mapped peripherals, so i can just put less accurate peripheral emulation in another thread and call it a day
21:37:11 <moony> SCSI drive <<< yes
21:37:11 <wob_jonas> I guess you can have a SCSI floppy drive, and you probably don't even need to make the implementation for that yourself.
21:37:49 <wob_jonas> memory mapped peripherials still need some magic by the emulator for controlling the memory mapping
21:38:32 <moony> yea, but the emulator otherwise doesn't care much about what the peripheral IS
21:39:52 <wob_jonas> sure
21:40:07 <wob_jonas> luckily the peripherial and the OS do most of the work
21:40:15 <moony> mhm
21:40:43 <wob_jonas> and yes, serial line is definitely practical, it's easy to get working and a good way to interact with the program running in your emulated box
21:40:54 <wob_jonas> that's why I used serial console for termbot too
21:41:22 <wob_jonas> and that's why you couldn't use the many DOS programs that insist on communicating directly through keyboard and display
21:41:41 <wob_jonas> most DOS programs are optimized for that, they don't do both because that would cost resources
21:42:19 <moony> also, compared to the time needed to look up memory mapping info and emulate the cache, saying "ok forward this to a async buffer on a IO device" is cheap as hell
21:42:46 <wob_jonas> and these programs I ran were written in the PC era, when a working display (CGA or monochrome) and PC-like keyboard was standard for computers
21:42:51 <wob_jonas> (for DOS computers that is)
21:43:22 <wob_jonas> and the display and keyboard (and mouse) is just more versatile than a serial console
21:43:27 <wob_jonas> fast too
21:43:37 <wob_jonas> moony: sure
21:44:26 <wob_jonas> moony: so have you found good enough technical documentation about the CPU and motherboard that you can use for writing this emulator without having to guess too much?
21:44:45 <moony> The CPU's own manual is great. :P
21:44:58 <moony> I have a paperback copy of the MC88100 manual in my possession.
21:45:12 <wob_jonas> nice
21:45:24 <wob_jonas> how about the motherboard, including memory and IO connections?
21:45:34 <moony> MVMe boards will be a lot harder. I'll probably have to guess at it using what openbsd has in code
21:46:01 <wob_jonas> what kind of memory management does this cpu have?
21:46:14 <moony> Block management and Page management are both supported
21:46:25 <moony> and can be interchanged
21:46:54 <wob_jonas> and fast switch between user and system mode or between processes with different page tables?
21:47:02 <moony> also, memory interface is where difficulty no 1 comes in: the CPU can swap between big and little endian at runtime with a single instruction
21:47:13 <moony> yea, you can change the page table address
21:47:28 <wob_jonas> also, how large are the virtual address space and the physical memory address space?
21:47:46 <moony> physical is 32bit.
21:48:03 <moony> virtual is also 32bit. Entire system is 32bit besides the ""GPU"" and FPU :P
21:48:24 <wob_jonas> I see
21:48:52 <wob_jonas> wait, FPU?
21:49:13 <moony> FPU supports 80-bit precision. (That means i have to use x87 instructions, ewwww.)
21:49:32 <wob_jonas> is the FPU required? can't you just omit it and have the software or OS emulate it?
21:49:44 <wob_jonas> (and run mostly software that doesn't need it)
21:49:46 <moony> It's built onto the chip
21:49:57 <moony> so it's required
21:50:01 <wob_jonas> I see
21:50:04 <moony> it's off by default tho
21:50:23 <moony> so i can pretend it doesn't exist for a very short amount of time :P
21:50:30 <wob_jonas> you don't technically _have_ to use x87 instructions, unless you want fast emulation for the FPU. you might choose to run programs that don't use the FPU much, in which case you can just do something slow.
21:50:48 <moony> i wanna try and make the FPU fast. :P
21:50:55 <wob_jonas> ouch
21:50:56 <moony> i'll probably ignore it early on tho
21:51:04 <wob_jonas> that can be difficult or easy, depending on what the FPU is like
21:51:19 <wob_jonas> and its stupid arcane details too, the ones that rarely come up
21:51:35 <wob_jonas> but still make an accurate emulation (whether in software or hardware) a pain in the ass
21:51:57 <moony> I plan on emulating the MC88110, because suprisingly enough it's *easier* to emulate than it's predecessor. You can pick out details about it here: http://bitsavers.org/components/motorola/88000/MC88110UM_88110_Users_Manual_1991.pdf
21:52:18 <moony> it's predecessor doesn't have the ""GPU"", but it has *more* annoying to emulate quirks
21:53:36 <wob_jonas> it doesn't have that middle age feature where there's a mandatory delay so the result of an instruction can't be read by the next instruction, does it?
21:53:42 <moony> mostly because i have to care a lot more about processing order on the MC88100, because the FPU and the integer unit both share the same register file for some bizzare reason.
21:54:09 <moony> wob_jonas, no. It has pipelining that handles that cleanly
21:54:44 <wob_jonas> the FPU and integer unit sharing a register file isn't a big problem. that's what new x86_64 cpus do too with its SSE registers
21:55:47 <moony> it's a problem when there's only one "slot" to use on said file. It's an exclusive or, either use the integer unit or the fpu, OR you can just have lots of pipeline stalls and lose CPU time
21:55:49 <wob_jonas> the SSE register ops are still mostly in different execution units, but it's the same register file and sheduling and decoding pipeline and memory/cache interface
21:56:16 <wob_jonas> from the instruction set viewpoint it's different registers, but they're effectively handled by the same register file now in newer cpus
21:56:45 <moony> plus, SSE instructions can offset the loss by their vastly greater throughput
21:57:04 <wob_jonas> it didn't use to be that way in older x86_64, there used to be two or three register files, separate for index registers, integer vector registers, and float vector registers, but they got away from that in later archs
21:57:25 <wob_jonas> moony: not just greater throughput, but also in some areas better choice of instructions too these days
21:57:37 <moony> also go look at the MC88100's bus
21:58:02 <moony> it has two buses, the P and C bus. Each bus has to have it's own external MC88200 MMU in order to interface with the same data bus/
21:58:04 <wob_jonas> they're effectively the new general purpose registers, and the RBX etc series of 16 64-bit registers are the index registesr
21:58:45 <wob_jonas> it's not completely like that yet, there's still advantage to using the index registers for some general purpose computations because of the instruction encoding sometimes, but it's tending more towards the vectors
21:59:42 <wob_jonas> heck, in some rare cases you even want to use the vector registers to spill data into them from the index registers when you run out of the 16 index registers, because it's often handled more efficiently than the L1 cache or stack cache
22:00:35 <moony> when intel/amd gives us dedicated instructions to spill indexes into vectors, i'll be happy
22:00:35 <wob_jonas> I think there are even very rare pathological cases when it's worth to spill data into the MMX registers in some crazy loops, though you probably specifically have to engineer the right kind of problem for that to come up
22:00:59 <wob_jonas> moony: they do have specific move and insert and uninsert instructions already, with sometimes short encodings
22:01:10 * moony doublechecks
22:01:25 <moony> i dont remember x86-64 by the back of my hand, so i'm a derp sometimes :P
22:01:28 <wob_jonas> sure
22:01:37 <wob_jonas> and look at new enough documentation, not ancient stuff
22:01:44 <wob_jonas> it helps
22:01:50 <wob_jonas> I could be wrong here too
22:01:55 <moony> I usually just use http://www.felixcloutier.com/x86/
22:01:59 <wob_jonas> I'm sure there are such instructions, but I can be wrong about the details
22:02:16 <wob_jonas> these days I look at the official Intel docs and Agner Fog's docs
22:02:27 <wob_jonas> I used to look at AMD's docs too, but these days prefer the Intel doc
22:02:31 <moony> felix's are literally just autogenned from intel docs
22:02:40 <moony> but with nicer formatting
22:03:03 <moony> anyways, you were correct. http://www.felixcloutier.com/x86/PINSRB:PINSRD:PINSRQ.html
22:03:03 <wob_jonas> moony: sure, but is it recent enough? does it at least show AVX2, even if not AVX512 yet?
22:03:22 <moony> it's currently based on the may 2018 edition of intel's docs
22:03:24 <moony> so yes :P
22:03:39 <wob_jonas> moony: those too, but also look at the 64-bit move between index and XMM instructions
22:04:04 <wob_jonas> ok, I'll look at this felixcloutier docs, or at least bookmark it and look at it later
22:04:22 <moony> wob_jonas, it's more of an instruction reference
22:04:34 <moony> but it's really freaking handy, much easier than sifting through a massive PDF :P
22:05:21 <wob_jonas> the PDF is not ideal, but together with other sources (like Agner Fog's manuals) it's good enough, and it's at least accurate and right from the mouth of those who make the CPU
22:05:41 <wob_jonas> the Intel PDF has at least one typo, I even wrote an email to their support that they'll probably ignore
22:07:26 <wob_jonas> moony: the other relevant ones are http://www.felixcloutier.com/x86/MOVD:MOVQ.html , which move between an index register and XMM register, zero-extending,
22:09:02 <moony> also, just for note wob_jonas, the
22:09:23 <moony> 88k's FPU is quite similar to x86's
22:09:33 <moony> so emulation will be easier
22:09:50 <wob_jonas> but yes, also PINSRQ and PEXTRQ
22:10:30 <wob_jonas> moonyt: to the 387, or to the 8087? there's a stupid crucial difference that can like triple your speed if it's the former.
22:10:46 <wob_jonas> "quite similar" is not enough if you want accurate emulation
22:11:05 <moony> mk
22:11:50 <moony> whats said difference?
22:12:16 <wob_jonas> mostly that the relay 8087 handles the sign of infinities in a stupid way
22:12:31 <wob_jonas> there's some other minor ones too but they don't matter that much
22:12:42 <moony> i'd say it's more similar to the 387
22:12:46 <wob_jonas> the 387 can actually emulate the 8087 behavior, but only if you set some crazy flag that no sane software will set
22:14:08 <wob_jonas> also, the 387 actually has the sanest floating point behavior with respect to NaN representation that I've seen among CPUs. I wish other cpus had the same semantics for NaNs (but not other things, eg. I don't want a register stack or all that stupid state change and 80 bit variables and relative lack of non-floating-point instructions),
22:14:38 <moony> i think you'd like the 88k's FPU
22:14:50 <moony> http://bitsavers.org/components/motorola/88000/MC88110UM_88110_Users_Manual_1991.pdf section 04
22:14:54 <wob_jonas> but alas no, every 'cking architecture has to invent its own NaN representation behavior that's incompatible with everything else, so there's at least four different relatively sane behaviours out there, and that's not counting the ones that just throw their hands up and don't even try to handle NaNs
22:15:11 <wob_jonas> and because of compatibility, none of them can just change the behavior of course
22:16:11 <wob_jonas> moony: I probably won't look at that right now, though I may bookmark it, but in any case I'd like the best behavior in modern fast CPUs that run in my computer, not in some old thing. I can emulate the right behavior too if I can afford some speed loss, I don't need a 88000 for that.
22:16:41 <moony> Mc88110 just fires an exception when a source operand is a NaN, which i think is fairly sane
22:17:10 <moony> properly diffs between nonsignalling and signalling, as well. (Signalling NaNs can have a usermode handler)
22:17:15 <wob_jonas> moony: yes, but can the software mask the instruction?
22:17:19 <wob_jonas> um
22:17:21 <wob_jonas> mask the exception?
22:17:26 <wob_jonas> because usually that's what you want
22:17:31 <wob_jonas> and just check for NaN at the end
22:17:38 <wob_jonas> actually using the exception is a rare case
22:17:40 * moony doublechecks
22:17:50 <wob_jonas> in most CPUs, you can
22:18:24 <wob_jonas> and the CPU has defnite behavior of the result of the operation, sometimes even different result depending on whether the exception is masked or not
22:19:15 <moony> TCFP masks the NaN exception. (TCFP stands for Time Critical Floating Point)
22:19:19 <wob_jonas> eg. for an overflow exception, the result is infinity of correct sign from outside the exception, but the correct value with a constant added to the exponent for the exception handler (they get the result in different ways so there's no ambiguity)
22:20:07 <moony> and you can mask the NaN exception normally as well
22:20:07 <wob_jonas> x87, SSE, and MMIX all have individually maskable optional floating-point exceptions, they just differ in what NaN representation rules they have and some other details
22:20:20 <moony> TCFP mode just disables all but 2 exceptions
22:20:37 <wob_jonas> (I don't recall what AMR does, I looked at it very little, and mostly at the non-floating-point parts)
22:20:53 <wob_jonas> moony: right, that's the usual thing they do
22:21:11 <moony> yea, all FP exceptions are maskable besides 2
22:21:35 <moony> those two being things that only trigger when truly invalid behavior, like a unimplemented floating point instruction, is requested
22:22:02 <wob_jonas> SSE2 also has two flags for not handling denormal values (a flag for reading a denormal as zero, and a flag for giving a zero result instead of a denormal), and a speed hit when it actually has to handle denormals
22:22:19 <wob_jonas> or SSE or whatever
22:22:28 <moony> MC88110 has a similar thing, but i dont see any notes about denormals having a speed it.
22:22:30 <moony> *hit
22:22:32 <wob_jonas> I don't care when it was introduced between those
22:22:58 <wob_jonas> moony: if there's a flag then there's probably some sort of speed hit, or was in older versions of the CPU with a compatible instruction set
22:23:08 <wob_jonas> they wouldn't introduce a flag otherwise
22:23:21 <wob_jonas> it's possible to not have the speed hit but keep the flag for compatibility of course
22:24:06 <moony> oh nvm no flag
22:24:08 <moony> just misread
22:24:16 <moony> it doesn't even support denormals :p
22:24:29 <moony> it DOES fire an exception when they're encountered so software can handle it tho
22:25:40 <wob_jonas> ouch
22:26:16 <wob_jonas> because of its long history, x86_64 has a lot of historical features that you no longer need to use if your code only runs on newer cpus, but that the cpus must support for compatibility because they made sense on older cpus
22:26:46 <moony> ¯\_(ツ)_/¯ at least motorola was nice enough to write the handler for you, they provide it in a software package that is no longer on planet earth haha
22:27:25 <wob_jonas> eg. there are pairs of equivalent SSE2 instructions for bitwise operations on XMM registers that differ in speed depending on whether they're between integer or floating-point vector instructions, the cpu needed to transparently transfer the value to another register file if you used the wrong one, but there's no longer a separate register file
22:27:42 -!- Lord_of_Life has joined.
22:27:42 -!- Lord_of_Life has quit (Changing host).
22:27:42 -!- Lord_of_Life has joined.
22:35:59 <wob_jonas> moony: that's a pity, but no denormal handling in hardware is a compromise that I can understand
22:37:36 <wob_jonas> motorola wanted cheap chips, with the technology back then, it made sense
22:38:09 <wob_jonas> it's in chips today where I want the best behavior, because we could afford it if it weren't for historical compatibility issues
22:50:25 -!- sleepnap has left.
22:50:40 <wob_jonas> heck, even the most annoying limitation of x86_64 is because of historical compatibility: we can't have more than 128 kilobytes of L1 data cache, because more than 8-way cache would have too much latency, and we can't dispatch cache by more than modulo 4 kilobytes of address space, because we have to be historically compatible with 4 kilobyte sized
22:50:40 <wob_jonas> pages.
22:51:42 <wob_jonas> larger page size would be more efficient, but we can't get rid of supporting the smaller pages until some existing software depends on it, and it would be too impractical to have two entirely different L1 caches together, you'd probably have to duplicate the rest of the CPU with it
22:52:04 <wob_jonas> so we won't have a larger L1 cache until we throw away the entire x86 historical compatibility
22:53:52 <wob_jonas> this is harder to replace than the instruction set. x86_64 managed to get rid of at least some parts of the instruction set in true 64-bit mode, and you could get rid of more, but you can't get rid of the paging without throwing away all the compatibility
22:55:25 <wob_jonas> but the good news is, that will probably happen within my lifetime, the way how fast these computer architectures change
22:55:48 <wob_jonas> I'll be happy to learn about the details of a better architecture used in everyday consumer PCs
22:56:09 <wob_jonas> (some computers use ARM, admittedly, but even that is rather old)
22:56:33 <wob_jonas> (and x86_64 is used in the highest performance ones, which is the ones that matter for this)
22:58:13 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
23:08:06 -!- tromp_ has joined.
23:10:16 -!- tromp has quit (Ping timeout: 250 seconds).
23:13:33 -!- sebbu has quit (Read error: Connection reset by peer).
23:13:56 -!- sebbu has joined.
23:31:48 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
23:33:51 -!- Lord_of_Life_ has joined.
23:35:27 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
23:35:27 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:35:27 -!- Lord_of_Life has quit (Changing host).
23:35:27 -!- Lord_of_Life has joined.
23:35:58 -!- AnotherTest has quit (Ping timeout: 252 seconds).
23:41:15 -!- wob_jonas has joined.
23:42:06 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
23:42:44 <wob_jonas> Do you happen to know where I can find good reviews of current non-smart mobile phone user interfaces? I want to find the right phone to buy for myself. I have some candidates, but want to find reviews by people who care about similar interface sutff as me.
23:43:17 <wob_jonas> It would be cheaper and faster than to buy a phone and find out that it sucks after a few days of playing with it, like it happened with these stupid nokias.
23:43:51 <wob_jonas> But it looks like I can't find any good reviews.
23:44:43 -!- Lord_of_Life has joined.
23:44:43 -!- Lord_of_Life has quit (Changing host).
23:44:43 -!- Lord_of_Life has joined.
23:44:48 <wob_jonas> I might My current candidate is the CAT B30 dual sim. It is one of these stupid rubber-padded hard to break things with a small display, but if that's the extra I have to pay for to get a sane interface, it's OK.
23:46:59 <wob_jonas> Other candidates are the Myphone 6310 and the Myphone 3310.
23:48:22 <wob_jonas> sadly the 3310 is named such that the number is the same as a very popular new nokia phone (which is named of an older nokia phone, this is really stupid), so it's harder to search for it
23:50:19 -!- copumpkin has quit (Read error: Connection reset by peer).
23:50:34 -!- hakatashi1 has quit (Remote host closed the connection).
23:51:18 <wob_jonas> I totally can't find reviews, so unless someone here can pipe in with some useful info, I'll probably just buy a CAT B30 and try it.
23:51:31 -!- copumpkin has joined.
23:51:41 <wob_jonas> It's definitely not perfect, but I can't get a perfect phone, I know that.
23:51:51 <wob_jonas> I just need one that's not too annoying.
23:52:00 -!- hakatashi has joined.
00:05:28 -!- vertrex has quit (Ping timeout: 264 seconds).
00:06:18 -!- atehwa has quit (Ping timeout: 252 seconds).
00:06:52 -!- Taneb has quit (Quit: I seem to have stopped.).
00:07:01 -!- Taneb has joined.
00:07:07 -!- atehwa has joined.
00:07:08 -!- vertrex has joined.
00:13:19 -!- Essadon has quit (Quit: Qutting).
00:20:07 -!- tromp_ has quit (Remote host closed the connection).
00:20:42 -!- tromp has joined.
00:30:57 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
00:36:46 -!- wob_jonas has joined.
00:41:17 <wob_jonas> moony: I'm looking at the 88110 manual PDF that you linked. It says that the result of adding or subtracting two NaNs is a certain fixed positive NaN (although that NaN isn't the same indeterminate NaN that x87 and SSE use, it's a different one, but a fixed one.
00:41:35 <moony> mm.
00:41:44 <wob_jonas> I think this is yet another behavior, definitely different from the x87, SSE, and MMIX behaviors, although I'll have to double-check what the heck ARM does.
00:42:06 <moony> :P No-one can agree on how floating point even works
00:42:34 <wob_jonas> Even though this is different, it's at least a reasonably sane behavior on its own actually, saner than the SSE or MMIX behaviors when taken alone.
00:43:00 <moony> ok
00:43:03 <wob_jonas> And it was probably cheaper to implement than the x87 NaN behavior
00:43:26 <moony> still means i have to put a check around every floating point subtract haha
00:44:21 <moony> at least the MC88110 has a fairly clean execution model, which makes it easier to emulate
00:44:47 <wob_jonas> It also returns this different NaN if you subtract infinities or divide zeros.
00:44:48 <moony> plus all instructions are the same size, which means that less info has to be passed around when performing JIT to keep track of the IP
00:45:34 <wob_jonas> moony: no, you don't have to. the NaNs are propagated further, you only have to check at the end of the calculation or at certain branches, though you can probably write most branches in such a way that it Just Works doing the right thing.
00:46:17 <moony> also the graphics instructions are similar enough to the SSE ones that i can just use SSE for some of them
00:46:27 <moony> altho the pmul instruction will be very problematic
00:46:50 <moony> (It allows values in one spot to overflow into the other, a very strange behavior)
00:47:30 <moony> wob_jonas, can you think of a good way to make a optimized sequence for executing the PMUL instruction? :P
00:48:01 <wob_jonas> And I actually like their idea that this special NaN value is binary 0 11111111 1100000 00000000 00000000, again unless for compatibility that's better than the x87 or SSE one, which is the one with the smallest mantissa, 0 11111111 1000000 00000000 00000000,
00:48:45 <wob_jonas> although the difference doesn't matter too much actually
00:48:49 <moony> yea, the 88k is a nice processor, it's kinda a shame it flopped lol
00:49:21 <wob_jonas> moony: huh what? what PMUL instruction what? I don't get the context
00:50:08 <moony> See section 5: Graphics Unit Implementation
00:52:23 <wob_jonas> moony: wow, this one looks arcane
00:52:41 <moony> heh yea
00:52:45 <moony> pmul will be a tough one
00:52:59 <moony> and it's common in graphics code, so making it fast is a must if i implement a display peripheral
00:53:30 <wob_jonas> moony: wait, I'm trying to figure out how that instruction actually works
00:54:25 <wob_jonas> it says "The contents of register pair rS1:rS1+1 are multiplied by the contents of the register rS2 as if they were full 64- and 32-bit numbers, respectively"
00:54:29 <wob_jonas> that doesn't sound too bad
00:54:44 <moony> hm
00:54:49 <moony> i remembered it diffirently haha
00:55:16 <moony> the way i remembered it, it could overflow ALL boundaries, not just a halfword.
00:55:17 * moony derps
00:55:48 <moony> also, they were quite clever when they made the 88k's bitfield instructions
00:56:05 <moony> they can be used to replace what would be like x86's shl/shr instructions
00:56:24 <moony> and as such, said equivalent instructions don't exist, because they're unneeded :D
01:01:01 <wob_jonas> You can implement it on x86 with a 64-bit index register MUL instruction if you free up RDX and RAX, or with a 64-bit index register MULX instruction on new x86_64 cpus, or
01:01:43 <wob_jonas> in pure XMM registers by two separate multipliers and like two to four extra instructions depending on the cpu I think.
01:01:52 <moony> RAX through RSI are liekly going to be free in my design
01:01:56 <wob_jonas> I mean two separate multiply instructions, because there's no single wide enough one.
01:01:59 <moony> s/liek/like/
01:02:25 <moony> because they're so common, so keeping them as scratch makes sense
01:02:32 <wob_jonas> moony: sure, but you also need to transfer one operand to RAX and get the result from RAX
01:02:47 <wob_jonas> it's extra moves
01:02:55 <moony> mm
01:04:05 <moony> also as i use an AMD cpu, i'm going to follow along with there recommendations and avoid overusing the SSE registers in code that doesn't gain much from them. (Speculative execution on the CPU uses the registers when they're not being used (0'd out) by the currently running code)
01:04:27 <wob_jonas> will this be a pure interpreter, or are you planning to JIT-compile some instruction sequences to pure x86_64 later, or something in between (compiling to an intermediate representation that is)?
01:04:42 <moony> JIT. JIT's a must
01:04:45 <wob_jonas> moony: read intel's optimization manuals
01:05:09 <wob_jonas> note that there's separate x86_64 optimization manuals for different generations of the processor cores
01:05:15 <moony> ik
01:05:39 <wob_jonas> and I also recommend Agner Fog's manuals, they tell a lot about optimizations, probably more than you already know
01:05:50 <wob_jonas> http://www.agner.org/optimize/
01:06:21 <wob_jonas> and obviously get the latest version of the x86_64 architecture manual, of the optimization manual, and of Agner Fog's manual, since you have an internet connection
01:07:26 <wob_jonas> moony: wow. but you'll make it work without JIT to debug out the errors at first, right? and throw in the JIT later
01:07:34 <moony> mhm
01:07:39 <wob_jonas> very good
01:07:48 <moony> combining the two is actually the best choice
01:07:56 <wob_jonas> I'll be interested to see what you get, and probably other people too
01:08:03 <wob_jonas> well certainly
01:08:05 <moony> because the 88k itself is capable of JIT, and constantly recompiling JITed code with a JIT is stupid
01:08:50 <wob_jonas> JIT is something people tend to overuse, and I don't think you'll fall into that trap
01:09:06 <moony> who knows
01:09:15 <moony> i often walk about blindly on a new moon
01:10:02 <wob_jonas> threading and GPU computations too, and for threading in particular IMO the problem is that people try to put code to parallel threads at too low level, when generally it would be better to make much larger chunks of computation to parallel threads, such as entire processes or something, in most of the cases they meet
01:10:43 <moony> The Powder Toy is a case where neither of those have been used and they're urgently needed haha
01:11:04 <moony> entire game runs on one thread, maybe a second to run gravity sim in parallel but thats about it
01:11:15 <wob_jonas> the most notable case was when I was encoding a dozen video files at the same time, on a machine with a dozen cpu cores and two-way NUMA, and at first I didn't notice that the video encoder assumed I'd only encode one or two and tried to do each encoding in a dozen parallel threads because that's how many cores there were
01:11:36 <wob_jonas> I only noticed because the memory usage was so high that it ran out of memory, which was lucky
01:11:42 <wob_jonas> otherwise I'd have had trouble figuring out what's wrong
01:12:28 <wob_jonas> luckily the encoder does have an option to not do that, and use only one thread for all the main work
01:13:27 <wob_jonas> I'm very annoyed when people try to demand threads or GPU or JIT as silver bullets even in cases when they don't help
01:13:54 <wob_jonas> which is part of why I'm interested in x86_64 and efficient computation, especially in the single-threaded cpu case
01:14:06 <wob_jonas> the case when I don't do threading or GPU computations or JIT
01:14:35 <wob_jonas> I also try to know how to use threading or processes the right way though
01:15:00 <moony> TPT could genuinely benefit from it tho :p It also needs a lot of optimization in general, but laziness and mario kart reigns supreme
01:15:15 <moony> maybe you could take a crack at it
01:15:16 * moony runs
01:15:57 <wob_jonas> meh no, I'll do it with my own hobby project, or work I'm payed for
01:16:34 <moony> we could also probably do with rewriting the game's graphics to NOT be a freaking software renderer, but again we're all lazy
01:16:56 <moony> it's a shoddy software renderer at that 🤔
01:17:12 <wob_jonas> what do you mean by "we"?
01:17:33 <moony> The Powder Toy is a multiple person open source project. I'm just some random contributer :P
01:17:43 <wob_jonas> I see
01:21:50 -!- oerjan has joined.
01:22:13 <moony> hello Ørjan
01:25:34 <oerjan> good evening moony
01:26:17 <wob_jonas> helloerjan
01:27:20 <moony> œrjan™
01:33:12 -!- hexfive has quit (Ping timeout: 252 seconds).
01:47:27 -!- hexfive has joined.
02:26:34 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
02:31:26 <moony> thats enough procrastination for me. time to actually begin work on the emulator
03:12:56 <moony> wob_jonas: Thanks for all the advice :)
04:32:33 -!- yaewa has joined.
04:34:20 -!- moei has quit (Ping timeout: 272 seconds).
05:04:24 -!- oerjan has quit (Quit: Nite).
05:24:23 -!- TellsTogo has joined.
05:27:48 -!- xkapastel has quit (Quit: Connection closed for inactivity).
05:42:17 -!- TellsTogo has quit (Ping timeout: 256 seconds).
05:53:29 -!- xkapastel has joined.
07:01:42 <esowiki> [[List of ideas]] https://esolangs.org/w/index.php?diff=58179&oldid=58020 * Gamer * (+80) /* General Ideas */
07:02:53 <esowiki> [[List of ideas]] https://esolangs.org/w/index.php?diff=58180&oldid=58179 * Gamer * (+58) /* General Ideas */
08:01:00 -!- tromp has quit (Remote host closed the connection).
08:01:16 -!- tromp has joined.
08:40:53 -!- arseniiv has joined.
09:10:25 -!- yaewa has quit (Quit: Leaving...).
09:10:47 -!- moei has joined.
09:47:48 -!- xkapastel has quit (Quit: Connection closed for inactivity).
10:17:55 -!- AnotherTest has joined.
10:44:53 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58181&oldid=58118 * Gamer * (+14) /* D */
10:46:48 <esowiki> [[Joke language list]] https://esolangs.org/w/index.php?diff=58182&oldid=58107 * Gamer * (+85) /* General languages */
11:01:01 <esowiki> [[HQ9funge]] https://esolangs.org/w/index.php?diff=58183&oldid=57886 * Gamer * (+72)
11:22:43 -!- Essadon has joined.
11:23:55 <esowiki> [[TPLHBPTBOTEW]] N https://esolangs.org/w/index.php?oldid=58184 * Gamer * (+1190) Created page with "'''TPLHBPTBOTEW''', which is an acronym for '''This Programming Language Has Been Proven To Be On The Esolangs Wiki''', is an [[esoteric programming language]] created by Us..."
11:25:55 <esowiki> [[Special:Log/move]] move * Gamer * moved [[TPLHBPTBOTEW]] to [[```` ` ` `]]: i accidentally created the page
11:34:03 -!- hexfive has quit (Quit: WeeChat 2.2).
11:44:47 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
11:47:16 -!- Lord_of_Life has joined.
11:47:16 -!- Lord_of_Life has quit (Changing host).
11:47:16 -!- Lord_of_Life has joined.
11:58:43 -!- ais523 has joined.
12:02:49 <ais523> arseniiv: amb is quite different from time travel, a) you can reliably simulate it on a classical computer, b) it's impossible to create a paradox with it
12:03:04 <ais523> the main problem is just that it's inefficient
12:04:47 <ais523> on a vaguely related subject to that of CPU emulators: there's something I'd like to do and I don't know how easy or difficult it is
12:05:51 <ais523> which is to get a decent proportion of Debian running under WebAssembler (ideally compiling the packages from source), with a custom kernel (i.e. not Linux) that just handles the system calls that are meaningful in that context
12:06:26 <ais523> I'm imagining that the filesystems would be a) a read-only filesystem that downloads the files from the Internet, b) a read-write filesystem that's just in-memory and disappears when you close the browser tab
12:18:22 -!- ais523 has quit (Remote host closed the connection).
12:19:35 -!- ais523 has joined.
12:42:24 <arseniiv> ais523: thanks, yes, amb alone seems inequivalent
12:46:21 <int-e> ais523: this is different, but related: are you aware of https://bellard.org/jslinux/ ?
13:07:05 <ais523> int-e: yes
13:07:20 <ais523> however, I believe it emulates the entire CPU, and thus is likely fairly inefficient
13:07:37 <esowiki> [[```` ` ` `]] https://esolangs.org/w/index.php?diff=58187&oldid=58185 * Gamer * (+3287)
13:08:09 <int-e> ais523: Yes, it does, which is why I wrote that it's different from what you suggested.
13:09:14 <int-e> ais523: the technical description mentioins emscripten which apparently can deal with translating C to Javascript; it could be interesting to investigate its limitations.
13:09:42 <ais523> I've been trying to run emscripten for the last 10 minutes
13:09:46 <ais523> the version packaged in Ubuntu seems to be buggy
13:11:53 <esowiki> [[HQ9funge]] https://esolangs.org/w/index.php?diff=58188&oldid=58183 * Gamer * (+5)
13:13:38 <esowiki> [[```` ` ` `]] https://esolangs.org/w/index.php?diff=58189&oldid=58187 * Gamer * (+216)
13:14:50 <esowiki> [[Special:Log/move]] move_redir * Gamer * moved [[```` ` ` `]] to [[TPLHBPTBOTEW]] over redirect
13:14:50 <esowiki> [[Special:Log/delete]] delete_redir * Gamer * Gamer deleted redirect [[TPLHBPTBOTEW]] by overwriting: Deleted to make way for move from "[[```` ` ` `]]"
13:15:49 <esowiki> [[```` ` ` `]] https://esolangs.org/w/index.php?diff=58192&oldid=58191 * Gamer * (-26) Blanked the page
13:15:54 -!- wob_jonas has joined.
13:17:10 <wob_jonas> ais523: so all the user level packages would be directly compiled to webassembly (or a combination of webassembly and javascript and interpreters), and nothing would emulate a cpu?
13:17:50 <ais523> wob_jonas: that's the idea
13:17:54 <ais523> I don't know how hard or easy this would be
13:18:13 <wob_jonas> ais523: how much of debian would you want this to run? would you want programs connecting to an X11 that runs in the same browser somehow?
13:18:31 <esowiki> [[Special:Log/delete]] delete * Ais523 * deleted "[[```` ` ` `]]": Author request: apparently created by mistake
13:18:57 <ais523> wob_jonas: I'd initially be happy as a single-user system with a command line
13:19:22 <wob_jonas> ais523: writing a suitable kernel is probably possible, because people have ran simpler unix programs on many very different kernels already
13:20:00 <wob_jonas> I don't know about compiling packages to the browser, because I'm not familiar at all with modern web client-side scripting, and don't intend to learn it either.
13:20:19 <wob_jonas> I may use a little client-side scripting in webpages, but it's all so simple that I don't need modern tech for it.
13:20:58 <ais523> well, webassembly is the obvious thing to use
13:21:07 <ais523> but it's hard to find information about the toolchain
13:21:21 <wob_jonas> Of modern CSS and MathML features I do want to learn a little though. Especially how you can sanely put MathML and fallback HTML code on the same webpage in a sane way such that browsers will show the Right One of the two automatically, ideally even if javascript isn't ran.
13:24:16 <wob_jonas> ais523: ask the rust guys on irc server irc.mozilla.org channel #rust for pointers about webassembly, they know a lot about it because they make a webassembly backend for rustc (the compiler)
13:24:29 <wob_jonas> they might know about the toolchain
13:24:44 <wob_jonas> possibly ask in channel #rust-offtopic in the same place if you only care about non-rust toolchain
13:25:13 <wob_jonas> you can also try asking in ##workingset on freenode, but that channel is small
13:34:45 <ais523> hmm, some web searches imply that the Debian/Ubuntu emcc is a) very old, b) has a trigger which causes it to not work correctly (the current leading theory is having clang installed, which I do, but it may be unconditional)
13:40:37 -!- xkapastel has joined.
13:43:16 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
14:33:17 -!- ais523 has quit (Quit: quit).
15:21:17 <esowiki> [[TPLHBPTBOTEW]] https://esolangs.org/w/index.php?diff=58193&oldid=58190 * Gamer * (+2285)
15:21:56 <esowiki> [[TPLHBPTBOTEW]] M https://esolangs.org/w/index.php?diff=58194&oldid=58193 * Gamer * (+4) /* Commands */
15:24:40 <esowiki> [[TPLHBPTBOTEW]] https://esolangs.org/w/index.php?diff=58195&oldid=58194 * Gamer * (+163) /* Language Overview */
15:30:55 <esowiki> [[TPLHBPTBOTEW]] https://esolangs.org/w/index.php?diff=58196&oldid=58195 * Gamer * (+27) /* Commands */
15:31:29 <esowiki> [[TPLHBPTBOTEW]] https://esolangs.org/w/index.php?diff=58197&oldid=58196 * Gamer * (+5) /* Concept */
15:31:58 <esowiki> [[TPLHBPTBOTEW]] M https://esolangs.org/w/index.php?diff=58198&oldid=58197 * Gamer * (-4) /* Computational class */
15:34:33 <esowiki> [[TPLHBPTBOTEW]] https://esolangs.org/w/index.php?diff=58199&oldid=58198 * Gamer * (+30) /* Concept */
15:34:48 <esowiki> [[TPLHBPTBOTEW]] M https://esolangs.org/w/index.php?diff=58200&oldid=58199 * Gamer * (+2) /* Concept */
15:35:30 <esowiki> [[TPLHBPTBOTEW]] M https://esolangs.org/w/index.php?diff=58201&oldid=58200 * Gamer * (-4) /* Concept */
15:40:25 <esowiki> [[TPLHBPTBOTEW]] M https://esolangs.org/w/index.php?diff=58202&oldid=58201 * Gamer * (+84) /* Truth-machine */
15:43:25 <esowiki> [[TPLHBPTBOTEW]] M https://esolangs.org/w/index.php?diff=58203&oldid=58202 * Gamer * (+2) /* Truth-machine */
16:20:45 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58204&oldid=58181 * Gamer * (+19) /* T */
16:33:41 -!- tromp has quit (Remote host closed the connection).
16:34:15 -!- tromp has joined.
16:35:52 -!- tromp has quit (Remote host closed the connection).
16:36:04 -!- tromp has joined.
16:53:19 -!- oerjan has joined.
17:32:05 <esowiki> [[Joke language list]] M https://esolangs.org/w/index.php?diff=58205&oldid=58182 * Oerjan * (+0) q cemos beefor u
17:35:40 <oerjan> . o O ( math papers don't look that way. )
17:57:51 -!- wob_jonas has joined.
17:58:55 <wob_jonas> So I bought a CAT B30 dual sim mobile phone. I'm setting it up and will test it. So far I think its user interface is better designed than the Nokia's, not that there aren't downsides, but I'll try to tell more when I tested it.
17:59:48 <wob_jonas> I'm not sure if I'll adopt it immediately, that depends on how well it fits in my current belt loop mobile phone holder bag.
18:00:14 <wob_jonas> I mean, I'm not sure if I'll adopt it as my main phone immediately.
18:00:39 <wob_jonas> Oh, I also have to buy a screen protection foil, but I won't delay using the phone to when that one arrives.
18:02:19 <wob_jonas> Sadly it sometimes seem to lag noticably, in that there's a delay of deciseconds until it reacts to a button press. That sucks.
18:03:36 <oerjan> wob_jonas: is this from the company that made the grandmaphone that impressed you?
18:03:58 <wob_jonas> oerjan: no, that company is MyPhone
18:04:06 <oerjan> ah.
18:04:33 <wob_jonas> This is a phone that is protected against water and mechanical shocks, from a company that makes such phones.
18:05:19 <wob_jonas> But that also comes with having a sane interface, because the people who buy that kind of phone don't care that much about a fancy modern but unusable interface.
18:06:02 <wob_jonas> Also because of the protection, it has a smaller display, and it costs a bit more, but it's still relatively cheap.
18:06:43 <wob_jonas> oerjan: I looked a bit at the Myphone non-grandma feature phone, but it seemed to be worse
18:07:27 <wob_jonas> This one seems to have an even more terrible Hungarian UI translation, though I've only seen a very small sample of translated messages before I changed the UI language to English.
18:12:22 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
18:16:57 <zzo38> I would want to see a library and API to execute WebAssembly programs from a native C code.
18:50:43 -!- oerjan has quit (Quit: Later).
19:08:31 -!- wob_jonas has joined.
19:09:38 <wob_jonas> One problem with this mobile phone is that I don't seem to find a way to make the calendar display change to show weeks with Monday as their first day. That will make the calendar rather error-prone for me to use.
19:30:03 <zzo38> Then you should need one that you can reprogram with your own program instead of the one included in there already.
19:36:38 <esowiki> [[User:Timwi]] M https://esolangs.org/w/index.php?diff=58206&oldid=47169 * Timwi * (+22)
19:37:00 <esowiki> [[User:Timwi]] M https://esolangs.org/w/index.php?diff=58207&oldid=58206 * Timwi * (-54)
19:41:23 <zzo38> {?} Enchantment - Saga ;; I, II, III--Create a 1/1 white Bird creature token with flying and banding. ;; IV--Target permanent gains protection from a color of your choice until end of turn.
19:41:32 <zzo38> What you would think of them?
19:42:10 <wob_jonas> zzo38: at what cost?
19:43:05 <zzo38> I don't know what cost
19:43:59 <wob_jonas> Let me check the comp rules for how Sagas work... they're too new, and didn't seem useful, so I don't remember.
19:47:09 <zzo38> Abilities with roman numbers are triggered abilities, that trigger when a counter is added that increases it to that many or more. A turn-based action during your precombat main phase adds a counter. It starts with one counter, which triggers ability I. State-based actions get rid of it if it has as many or more counters as the last one if its abilities are not on the stack.
19:49:01 <wob_jonas> wow. I read the rules. they're strange
19:49:03 <zzo38> (This turn-based action is after setting a scheme in motion, if any. I don't know if this is your question, but before the rules were released this was my first question about it.)
19:49:50 <zzo38> I don't like the rule that the Saga is sacrificed as a state-based action, and think it should have been done it simply dies.
19:50:56 <wob_jonas> That's not my question, but sure.
19:53:36 <zzo38> (Also, in order to be more consistent with the rules for schemes and phenomena, that state-based action should consider any triggered ability rather than only chapter abilities, I should think; it seem strange that they do not match)
19:55:56 <wob_jonas> zzo38: that might be deliberate, because a saga is an enchantment so it's possible to have it gain all sorts of triggered abilities by using other cards, while they probably won't have other triggered abilities in their oracle text, while a plane often has other triggered abilities in the oracle text and it's hard to make it gain an ability because
19:55:56 <wob_jonas> it's not a permanent
19:56:18 <zzo38> Ah, maybe that is why.
19:56:51 <wob_jonas> For schemes this might not matter, I don't know.
20:15:02 <wob_jonas> `card-by-name aura flux
20:15:05 <HackEso> Aura Flux \ 2U \ Enchantment \ Other enchantments have "At the beginning of your upkeep, sacrifice this enchantment unless you pay {2}." \ UL-C
20:29:54 -!- AnotherTest has quit (Ping timeout: 250 seconds).
20:37:04 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
21:07:44 -!- sftp has quit (Excess Flood).
21:08:03 -!- sftp has joined.
21:22:20 -!- sftp has quit (Ping timeout: 250 seconds).
21:24:38 -!- sftp has joined.
21:44:14 -!- hexfive has joined.
21:46:40 -!- arseniiv has quit (Ping timeout: 246 seconds).
23:29:03 -!- AnotherTest has joined.
23:33:51 -!- AnotherTest has quit (Ping timeout: 260 seconds).
23:43:30 -!- Lord_of_Life_ has joined.
23:45:51 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
23:45:51 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:45:51 -!- Lord_of_Life has quit (Changing host).
23:45:51 -!- Lord_of_Life has joined.
00:18:57 -!- sftp has quit (Excess Flood).
00:19:25 -!- sftp has joined.
00:59:48 -!- xkapastel has quit (Quit: Connection closed for inactivity).
01:19:21 -!- oerjan has joined.
01:38:41 <zzo38> What do you think is the oldest telephone number still in use? 2600 suggested that it is the telephone number of Hotel Pennsylvania (which is "Pennsylvania 5000", in the 212 area code), but do you know of any others? (This was in reply to a letter they received asking this question; the asker had something but it wasn't old enough.)
01:40:05 <pikhq> It is more than likely the oldest assigned in NYC, though granted it's hard to be certain.
01:42:01 <pikhq> PEnnsylvania 6-5000 would've been assigned circa 1930 though?
01:45:24 <pikhq> There's few other alternative possibilities: systemic numbering schemes were only rolled out on a larger scale later, and NYC's local scheme only fit in because it happened to already have the 3-4 digit scheme that was put in place in the rest of the US.
01:46:51 <pikhq> Though a few other populous cities did the same.
01:47:38 <pikhq> So, I'd *guess* that if PEnnsylvania 6-5000 isn't the oldest continuously assigned phone number, it's at least the oldest in the US?
02:00:08 -!- Essadon has quit (Quit: Qutting).
02:08:34 <zzo38> OK, maybe that is what it is
03:13:07 <zzo38> I have written a (currently untested) SQLite remote virtual table module. I am now writing documentation of the protocol.
03:13:19 <zzo38> Do you like this?
03:46:19 <esowiki> [[User:Cortex]] N https://esolangs.org/w/index.php?oldid=58208 * Cortex * (+20) Created page with "Mainly just a reader"
04:23:48 -!- esowiki has quit (Ping timeout: 252 seconds).
04:24:28 -!- esowiki has joined.
04:51:22 <esowiki> [[TEPCS]] N https://esolangs.org/w/index.php?oldid=58209 * Cortex * (+1463) Created page with "(this article is under construction) TEPCS (Tilde, Exclamation Point, Caret, Semicolon) is an incomplete programming language created by [[User:Cortex]] at around midnight, N..."
05:04:21 -!- oerjan has quit (Quit: Nite).
05:43:55 <esowiki> [[TEPCS]] https://esolangs.org/w/index.php?diff=58210&oldid=58209 * Cortex * (+79)
05:44:28 <esowiki> [[TEPCS]] M https://esolangs.org/w/index.php?diff=58211&oldid=58210 * Cortex * (-2)
06:32:37 <esowiki> [[TEPCS]] M https://esolangs.org/w/index.php?diff=58212&oldid=58211 * Cortex * (-30)
06:41:15 <esowiki> [[TEPCS]] https://esolangs.org/w/index.php?diff=58213&oldid=58212 * Cortex * (+64)
07:02:35 -!- xkapastel has joined.
07:30:15 <esowiki> [[Keg]] N https://esolangs.org/w/index.php?oldid=58214 * JonoCode9374 * (+10011) Created page with "= Keg (Ke)yboard (G)olfed = ''Keg'' is a stack-based esolang with condensability as well as simplicity and readability in mind. Its main purpose is to be used for golf..."
07:31:09 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58215&oldid=58214 * JonoCode9374 * (+95) Added categories
07:32:59 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58216&oldid=58204 * JonoCode9374 * (+10) Added keg
07:42:54 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58217&oldid=58215 * JonoCode9374 * (+30)
07:47:05 <esowiki> [[W]] N https://esolangs.org/w/index.php?oldid=58218 * Cortex * (+1361) Created page with "W is a programming language with various unnecessary, redundant, and useless commands. If the compiler encounters an error, the source code is encrypted into the SHA1 hashing..."
07:59:46 -!- Sgeo_ has joined.
08:02:30 -!- Sgeo has quit (Ping timeout: 252 seconds).
08:41:10 -!- dingbat has quit (Quit: Connection closed for inactivity).
08:59:05 -!- arseniiv has joined.
09:08:46 -!- imode has quit (Ping timeout: 272 seconds).
09:34:54 <esowiki> [[User:Cortex]] https://esolangs.org/w/index.php?diff=58219&oldid=58208 * Cortex * (+7)
09:52:43 -!- xkapastel has quit (Quit: Connection closed for inactivity).
09:52:54 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58220&oldid=58216 * Cortex * (+12)
09:59:10 -!- AnotherTest has joined.
10:02:54 <esowiki> [[TEPCS]] M https://esolangs.org/w/index.php?diff=58221&oldid=58213 * Cortex * (+0)
10:12:05 -!- hexfive has quit (Quit: WeeChat 2.2).
10:22:28 -!- Cortex has joined.
10:23:15 <Cortex> d
10:24:38 -!- Cortex has quit (Client Quit).
10:56:37 <esowiki> [[W]] https://esolangs.org/w/index.php?diff=58222&oldid=58218 * Cortex * (+471)
10:59:17 <esowiki> [[TEPCS]] https://esolangs.org/w/index.php?diff=58223&oldid=58221 * Cortex * (+42)
11:11:29 -!- wob_jonas has joined.
11:11:33 <wob_jonas> zzo38: how old is that one?
11:45:28 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
11:47:58 -!- Lord_of_Life has joined.
11:47:58 -!- Lord_of_Life has quit (Changing host).
11:47:58 -!- Lord_of_Life has joined.
11:48:49 <wob_jonas> arseniiv: re Russian cursive in your video. I think I already mentioned how one of the tricks used that was non-obvious to me is that the letters л and м start with a peak close to the baseline, unless they're at the start of a word, which is how м clearly differs from и.
11:49:05 <wob_jonas> That one is non-obvious to me because Hungarian cursive never uses low peaks.
11:50:51 <wob_jonas> arseniiv: But I have a different question. At the start of the letters и, г, ь (and probably others), what decides whether you start the letter with a high frowny mouth going into the down straight line, or with a high peak going into a down straight line instead?
11:52:06 <wob_jonas> I also don't understand how the heck ъ works, but I think if I knew the answer to the previous question, that would become more obvious.
12:31:11 -!- Essadon has joined.
12:38:17 <arseniiv> wob_jonas: hm hm let me think…
12:40:09 <wob_jonas> This probably applies to more letters, like у, ш, ч etc, it's jsut и that's the most common and ь that's the most confusing to me.
12:40:55 <arseniiv> as far as I understand the question, I thought these two cases are the same and maybe I just wrote them unclearly
12:43:48 <wob_jonas> In Hungarian cursive, the normal way for letters that start with a downstroke like u, i, n, m, j, p, v, w is to connect with a high peak if the previous letter ends low, or with a high smile going into a peak if the previous letter ends high. A high frown instead of the peak could be used instead, and is seen in some styles, but I don't really like
12:43:48 <wob_jonas> that because it makes writing more ambiguous in some cases.
12:45:04 -!- xkapastel has joined.
12:45:12 <arseniiv> I think something like that applies here too
12:46:54 <wob_jonas> In some styles, the letter s and r also starts with a peak with possibly a high smile before, but the style I learned uses an alternate r which actually starts with a high frown going into a straight line down, and for a top connection from before, such as "or", that becomes a high wave (flipped tilde). The letter z also starts with a high frown in
12:46:54 <wob_jonas> some styles.
12:48:14 <wob_jonas> arseniiv: maybe you use a high smile for и at the start of a word to make it more distinct from an м ?
12:49:33 <arseniiv> at the start I’d begin и straight with a downstroke, as there’s nothing before it
12:49:56 <wob_jonas> ok, that works too
12:50:41 <arseniiv> I hope I said something helpful :D
12:50:52 <wob_jonas> still... I should check the video to find cases when you start и or г etc with a high frown. That seemed to occur several times, and didn't seem to be random sloppyness.
12:51:41 <arseniiv> okay, I’ll try to analyse these if you find them
12:52:58 <arseniiv> also maybe I’ll write something static on paper and scan it, if you’d have some suggestions
12:53:26 <arseniiv> this should be easier and also clearer
12:53:47 <wob_jonas> And I'll also look for instances of ф because it's just too rare and I don't understand how it works, but that's less important because ф is distinctive enough that it's easy to recognize in any context.
12:55:03 <wob_jonas> I also don't understand why you wrote the uppercase Т in two different stroke orders, but that doesn't seem important.
12:55:37 <wob_jonas> I don't care much about the uppercase letters, writing them in this fancy cursive style seems excessive anyway, I don't really do that even for Hungarian cursive.
12:56:18 <wob_jonas> Cursive is just not designed to accomodate uppercase letters in the fancy style people invented for it, half of the uppercase letters in Hungarian cursive don't even work.
12:57:43 <wob_jonas> arseniiv: in the В page, you write ьг with a high frown connecting the г
12:58:13 <wob_jonas> No sorry, in the Б page
12:59:17 <wob_jonas> In the Г page, the standalone г is like that too
12:59:35 <wob_jonas> doesn't matter for a standalone letter of course
13:02:38 <arseniiv> wob_jonas: I also don't understand why you wrote the uppercase Т in two different stroke orders, but that doesn't seem important. => usually I don’t write Т in cursive style, so I’m undiscipled in this case
13:03:28 <wob_jonas> Yeah, makes sense. Most uppercase letters just look stupid in this sort of cursive. They're just inherited simplified from back when people wrote more fancy cursives.
13:03:49 <arseniiv> writing them in this fancy cursive style seems excessive anyway, I don't really do that even for Hungarian cursive. => yes, the same for me, maybe except some letters that are simpler to write than sans-serify variants
13:04:06 <arseniiv> I love to agree
13:04:07 <wob_jonas> yes, "A" specifically
13:04:27 <wob_jonas> uppercase "A" is quite common in Hungarian because of the articles
13:04:44 <wob_jonas> and it happens to work out decent in two different cursive ways
13:04:47 <arseniiv> ok now I’ll watch that part
13:06:11 <wob_jonas> Some other uppercase letters work out because they happen to be just the lowercase letter grown up AND have a low connection. The ones with a high connection like "O" or "V" don't work well because you can't connect the next letter to the uppercase high connection.
13:06:36 <wob_jonas> "R" also works out fine, the same as "A".
13:07:56 <wob_jonas> Back in the video, the И page is not so clear, but it looks like you're trying to write the г with a high frown.
13:08:44 <wob_jonas> The Й page also definitely has a г with a frown
13:10:13 <wob_jonas> That means I have to look for a г with a peak, because maybe г normally starts with a frown.
13:10:40 <arseniiv> yes I think so
13:11:36 <arseniiv> okay I’ll be back several hours later I think
13:17:39 <wob_jonas> Щ page has frowning г too
13:19:24 <wob_jonas> oh I see! you definitely have to write ьг with a frowning г, because otherwise it would look like ы
13:21:52 <arseniiv> oops I just realised I had misread “frowning” as “smiling”, hm
13:22:44 <wob_jonas> I may have confused them somwhere too
13:28:19 <wob_jonas> Yeah, no more letter г, so it looks like you always wrote it frowning. Though now I wonder how you'd write ог
13:40:21 <arseniiv> something like that: https://i.postimg.cc/4ytgjWhV/Screenshot-1607.png
13:48:27 <wob_jonas> Ok.
13:58:05 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
16:14:19 -!- imode has joined.
16:27:46 -!- Sgeo__ has joined.
16:30:01 -!- Sgeo_ has quit (Ping timeout: 260 seconds).
16:40:26 -!- TellsTogo has joined.
17:09:33 -!- dingbat has joined.
18:01:47 -!- imode has quit (Ping timeout: 240 seconds).
18:03:18 -!- sftp has quit (Excess Flood).
18:03:35 <moony> wob_jonas you watching the logs?
18:04:00 <moony> Would the tradeoff of 4 YMM registers be worth it to keep all 32 GPR accessable at a moment's notice?
18:04:41 <moony> (Aka so i don't have to worry about the GPR falling out of cache)
18:06:47 -!- TellsTogo has quit (Ping timeout: 256 seconds).
18:13:42 -!- sftp has joined.
18:14:16 <zzo38> My remote virtual table extension currently does not support encrypted connections, nor supporting authentication. Now I try to figure out, how should I fix this? Should a proxy be used?
18:43:23 -!- zzo38 has quit (Ping timeout: 268 seconds).
18:46:41 -!- zzo38 has joined.
19:48:42 -!- imode has joined.
20:18:16 <esowiki> [[TEPCS]] M https://esolangs.org/w/index.php?diff=58224&oldid=58223 * Cortex * (+1)
20:31:48 -!- wob_jonas has joined.
20:31:51 <wob_jonas> moony: ping
20:31:57 <moony> 2hi
20:35:20 <wob_jonas> zzo38: re remote virtual table, I recommend to allow two things: for the same computer (but different process), use a PF_INET named socket, which you can put in an access-controlled directory, or use the sendmsg/recvmsg SO_PASSCRED to check the uid and gid of the other side of the connection. For remote connections,
20:37:25 <wob_jonas> use an optional SSL/TLS connection through a tcp socket, and expose the connection handle of the underlying SSL/TLS library (there's more than one option for that) to the user process so they can configure whatever options, including a sending a client certificate, and verifying from server/client side that the other side has one of a set of allowe
20:37:25 <wob_jonas> d client/server certificates.
20:39:39 <wob_jonas> moony: I can't really tell, this depends on (1) the architecture of that CPU you're emulating, (2) the host cpu you require, (3) how exactly your emulator works, how much it needs other registers, how often does it need to free registers to call a non-emulated function, etc.
20:40:38 <wob_jonas> moony: I don't know enough of that cpu you're emulating and the programs running on it to even guess.
20:40:51 <moony> RIP
20:40:57 -!- imode has quit (Ping timeout: 252 seconds).
20:41:00 <moony> i'll try it, maybe.
20:41:40 <wob_jonas> but reserving entire YMMs is very hard, because the calling conventions say that the top half of all YMM registers are caller-saved, so every function you call will modify them
20:42:10 <moony> I don't really need many XMMs at all
20:42:29 <moony> it literally would not hurt one bit to use 8 of the XMM registers for storage
20:42:31 <wob_jonas> moony: yes, but you don't have enough caller-saved XMM registers either, do you?
20:42:37 <moony> hm
20:42:46 <wob_jonas> moony: it's not you, it's all functions you call from libraries
20:43:11 <moony> I AM using a nonstandard CC, which helps a bit. A lot of the library functions i'm going to use adhere to said custom CC
20:43:23 <wob_jonas> wait, let me check how the calling convention goes exactly (in Agner's docs; there's other official docs out there like the 64-bit ELF docs that explain this, but it's nigh-unreadable)
20:43:31 <moony> for the ones that dont, they arn't called very often, and wrapping them with saving isn't hard.
20:44:42 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
20:46:17 -!- wob_jonas has joined.
20:46:17 <wob_jonas> moony: this isn't on windows, right? on x86_64 unix, every XMM register is scratch, so the caller has to save it
20:46:52 <wob_jonas> moony: this isn't on windows, right? on x86_64 unix, every XMM register is scratch, so the caller has to save it.
20:46:58 <moony> alright
20:47:09 <moony> yea, i'm on linux
20:47:12 <moony> windows smells
20:47:23 <moony> and i don't have a windows machine to dev on anyways even if i wanted to
20:50:22 <wob_jonas> moony: you'll probably have to have the JIT track which of those four YMM registers (if you decide to use YMM for this that is, I'm not sure that's a good idea) are swapped in to registers, and which are in RAM (presumably usually L1 cache) at which point.
20:50:52 <wob_jonas> and load them into register if you need it more than once, then swap it out to memory when you have to call external code.
20:51:37 <wob_jonas> it gets ugly, whether it's worth may depend on how long stretches of compiled code you expect to be able to run without interruption
20:51:42 <wob_jonas> dunno
20:54:18 <wob_jonas> do you expect to be able to compile jumps safely? is self-modifying code rare on this arch, and is code and writable data generally separated to different 4k pages, so you can detect writes to code by setting the pages containing code that you have compiled to read-only and trapping the fault?
20:54:59 <wob_jonas> Oh wait, you said you have to run complex code for memory accesses because you're emulating the cache, right?
20:55:08 <wob_jonas> In that case that won't be necessary, luckily.
20:55:16 <wob_jonas> You can just have your memory emulation handle it.
20:55:21 <wob_jonas> Unless you want a slow and a fast mode.
20:57:43 -!- imode has joined.
21:03:30 <esowiki> [[TEPCS]] https://esolangs.org/w/index.php?diff=58225&oldid=58224 * Cortex * (+60)
21:03:52 -!- imode has quit (Ping timeout: 246 seconds).
21:05:03 <zzo38> How does a PF_INET named socket work and how is SO_PASSCRED work?
21:05:40 <wob_jonas> zzo38: sorry, for local connections I mean a PF_UNIX named socket
21:05:53 <zzo38> O, OK.
21:05:58 <wob_jonas> do you know how that works at least?
21:06:28 <zzo38> I believe the man page explains it
21:06:29 <wob_jonas> sendmsg/recvmsg is ugly, it has a somewhat inconvenient API, although it's one you'll probably like
21:06:57 <wob_jonas> the bad part is only the rare case you'll almost never meet, which is reading multiple control messages at the same time, that's hard
21:08:13 <wob_jonas> basically with setsockopt thingies you can subscribe to various control or debug information about a socket, and then recvmsg gets as many of them as fit in the buffer, so if you get more than one type, you need some very stupid alignment calculation because they were too lazy to put a next link pointer in the messages
21:09:11 <wob_jonas> but for AF_LOCAL sockets, probably only two kinds of control messages make sense:
21:09:43 <wob_jonas> SOL_RIGHTS and SOL_CREDENTIALS, and you only need the latter here
21:12:57 <wob_jonas> The relevant docs are http://man7.org/linux/man-pages/man2/setsockopt.2.html , http://man7.org/linux/man-pages/man2/recvmsg.2.html , http://man7.org/linux/man-pages/man2/sendmsg.2.html , http://man7.org/linux/man-pages/man7/unix.7.html , and perhaps also socket(7), socket(2), bind(2), listen(2), connect(2), accept(2), etc.
21:13:32 <wob_jonas> There's also a parallel set of docs in http://man.openbsd.org/cgi-bin/man.cgi which are organized differently, the interface you need is the same, but you can choose which docs you prefer.
21:14:42 <wob_jonas> (Not all interfaces are the same, but they don't differe in unexpected ways, it's just that certain obscure APIs are present in only some operating systems or versions, but they'll nicely give compile error or runtime error from the calls when you call them.
21:14:52 <wob_jonas> I don't think any differing interfaces are relevant here.)
21:15:04 <zzo38> I have read the the documents socket(2), bind(2), listen(2), connect(2), and accept(2) (I have them on my computer, so do not need to access those webpages), although this SQLite extension uses socket() and connect(); it is only the client and not the server.
21:15:25 <wob_jonas> sure, I can just link to the pages on the web more easily than what's on your computer
21:15:48 <wob_jonas> um... but you'll have to write a server too to try it, right?
21:16:02 <zzo38> Yes, and I did write a test server program in JavaScript to test it
21:16:40 <wob_jonas> anyway, as for SSL/TLS, I haven't worked with any SSL/TLS library directly, and there are like five different ones, at least three of which are still supported, and I don't know enough about them to be able to help
21:17:12 <wob_jonas> there's GnuTLS, NaCL, and two incompatible major versions of OpenSSL I think
21:17:19 <wob_jonas> probalby more that I don't know about
21:17:44 <wob_jonas> Welcome to the international cornucopia for esoteric programming language discussion, design, development and deployment! | https://esolangs.org | logs: https://esolangs.org/logs/ http://codu.org/logs/_esoteric/ http://tunes.org/~nef/logs/esoteric/?C=M;O=D | https://www.dropbox.com/s/fyhqyvy3i8oh25m/wisdom.pdf
21:17:56 -!- wob_jonas has set topic: Welcome to the international cornucopia for esoteric programming language discussion, design, development and deployment! | https://esolangs.org | logs: https://esolangs.org/logs/ http://codu.org/logs/_esoteric/ http://tunes.org/~nef/logs/esoteric/?C=M;O=D | https://www.dropbox.com/s/fyhqyvy3i8oh25m/wisdom.pdf.
21:18:40 <wob_jonas> Should I write "the international pharmacopœia" instead?
21:18:59 <zzo38> I don't know if you should write that or not
21:20:49 <wob_jonas> sadly "cornucopœia" is apparently not a word
21:22:56 <esowiki> [[Special:Log/newusers]] create * Only Onion * New user account
21:33:08 <wob_jonas> zzo38: I assumed you'd just write a server that exposes a set of tables from an sqlite database read-only in a way that your remote virtual table client can connect to it.
21:34:20 <wob_jonas> And perhaps saves some log or debug information.
21:34:40 <zzo38> wob_jonas: I could do that (and it could be useful to do), although at first I just wrote a simple testing program.
21:34:53 <wob_jonas> makes sense
21:36:26 <zzo38> This remote virtual table protocol does support writable tables too (as long as the primary key is no more than one column), although of course the server may wish to provide read-only data anyways.
21:37:09 <wob_jonas> That's nice, but I'm more interested in read-only.
21:38:25 <wob_jonas> zzo38: is this extension somewhere on your server? can I get an URL?
21:39:29 <zzo38> Yes. All of my SQLite extensions are in one ZIP file: http://zzo38computer.org/sql/sqlext.zip The file "sqlext_remote.c" implements the client, and "sqlext_remote.doc" is the documentation (including the description of the protocol).
21:39:41 <wob_jonas> ah, it's in a zip file. ok.
21:40:06 <wob_jonas> and it's not in /textfiles
21:40:08 <wob_jonas> um
21:40:10 <wob_jonas> not in /textfile
21:43:47 <wob_jonas> and the sql/ directory isn't even in the gopher
21:43:59 <wob_jonas> so it's well hidden
21:45:02 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=58226&oldid=58110 * Only Onion * (+227)
21:45:10 <wob_jonas> this means there are at least three roots for this forest on your server: the gopher root (which leads to textfile/ and quizmenu/ ), "http://zzo38computer.org/sql/" , and "http://zzo38computer.org/fossil/"
21:45:13 <zzo38> These extensions are mentioned in the topic message for the #sqlite channel in Freenode IRC.
21:51:35 <wob_jonas> I wouldn't have thought to look there, but ok
21:56:21 <esowiki> [[Surreal FOREVER loop]] https://esolangs.org/w/index.php?diff=58227&oldid=46223 * Only Onion * (+25) Linked Zeno, as its main feature is essentially this.
21:58:24 <esowiki> [[Zeno]] https://esolangs.org/w/index.php?diff=58228&oldid=51801 * Only Onion * (+41) Linked a page that seems to describe the same concept as the zeno loop.
22:00:04 <moony> wob_jonas, well, it's probably going to be necessary. the most efficient and fastest way to handle a JIT'd memory block being modified while it's executing is to let the block continue until a check comes along, and then discard whatever it did when it hits the check
22:00:24 <moony> that means that i'll need a duplicate of the GPR and XR anyways
22:01:35 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58229&oldid=58217 * JonoCode9374 * (-33)
22:02:02 <wob_jonas> moony: sure, but only if the programs you have are modern and actually rarely write pages with code, and here pages means pages on the host OS, which will probably be 8k size
22:02:43 <wob_jonas> although you could waste some of the memory by leaving gaps in the emulated machine's memory as you map it to the host memory, but that's ugly
22:07:04 <zzo38> Did you read the document of the protocol? Did you see if it is good?
22:07:57 <wob_jonas> not yet
22:08:02 -!- Phantom_Hoover has joined.
22:08:06 -!- moei has quit (Quit: Leaving...).
22:13:25 <esowiki> [[Surreal FOREVER loop]] https://esolangs.org/w/index.php?diff=58230&oldid=58227 * Only Onion * (+2)
22:13:38 <esowiki> [[Zeno]] https://esolangs.org/w/index.php?diff=58231&oldid=58228 * Only Onion * (+2)
22:14:37 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
22:16:04 <esowiki> [[Brainfoctal]] N https://esolangs.org/w/index.php?oldid=58232 * Salpynx * (+11233) getting these thoughts down in some form
22:16:05 <esowiki> [[W]] https://esolangs.org/w/index.php?diff=58233&oldid=58222 * Cortex * (+198)
22:24:27 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58234&oldid=58229 * JonoCode9374 * (+1)
22:25:51 -!- AnotherTest has quit (Ping timeout: 260 seconds).
22:32:04 <esowiki> [[Brainfoctal]] https://esolangs.org/w/index.php?diff=58235&oldid=58232 * Salpynx * (+249) /* Quines */ link to Unary Quine
22:51:29 <esowiki> [[List of ideas]] https://esolangs.org/w/index.php?diff=58236&oldid=58180 * Salpynx * (+19) /* Mathematics */ Brainfoctal is Gdel numbering
23:19:32 <esowiki> [[Brainfoctal]] https://esolangs.org/w/index.php?diff=58237&oldid=58235 * Salpynx * (+212) Polyglots
23:20:20 <esowiki> [[Brainfoctal]] M https://esolangs.org/w/index.php?diff=58238&oldid=58237 * Salpynx * (+1) /* Polyglots */
23:29:31 <esowiki> [[Keg]] M https://esolangs.org/w/index.php?diff=58239&oldid=58234 * JonoCode9374 * (+3)
23:32:37 <esowiki> [[Keg]] M https://esolangs.org/w/index.php?diff=58240&oldid=58239 * JonoCode9374 * (+95)
23:35:30 -!- moony has quit (Quit: Bye!).
23:36:42 -!- moony has joined.
23:39:44 -!- moony has quit (Excess Flood).
23:42:07 -!- moony has joined.
23:44:15 -!- Lord_of_Life_ has joined.
23:48:01 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
23:48:02 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:48:02 -!- Lord_of_Life has quit (Changing host).
23:48:02 -!- Lord_of_Life has joined.
23:52:23 -!- Phantom_Hoover has quit (Remote host closed the connection).
23:54:17 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58241&oldid=58240 * JonoCode9374 * (+74)
00:00:04 -!- danieljabailey has quit (Quit: ZNC 1.6.5+deb2build2 - http://znc.in).
00:00:20 -!- danieljabailey has joined.
00:00:32 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58242&oldid=58241 * JonoCode9374 * (-2)
00:03:53 -!- wob_jonas has joined.
00:03:56 <wob_jonas> `ping
00:03:57 <HackEso> pong
00:04:02 -!- Essadon has quit (Quit: Qutting).
00:19:54 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58243&oldid=58242 * JonoCode9374 * (+7) /* External Resources */
00:21:02 <zzo38> I will play GURPS game tomorrow morning so if you bet what will be done then I can tell you tomorrow if it is good or not.
00:28:39 <esowiki> [[List of ideas]] https://esolangs.org/w/index.php?diff=58244&oldid=58236 * Only Onion * (+35)
00:54:59 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
01:14:56 <esowiki> [[List of ideas]] https://esolangs.org/w/index.php?diff=58245&oldid=58244 * Only Onion * (+108)
01:19:19 -!- oerjan has joined.
01:33:22 -!- arseniiv has quit (Ping timeout: 246 seconds).
02:13:27 <oerjan> *sigh* alpine gets really annoyingly nagging when the imap server goes down for a few minutes...
02:13:57 <oerjan> and the only option i found for turning it off _also_ turns off pinging on new mail, which i want
03:25:42 -!- imode has joined.
03:34:15 -!- fungot has quit (Ping timeout: 264 seconds).
03:37:07 -!- fungot has joined.
03:59:52 <oerjan> fungot: quiet, isn't it?
03:59:53 <fungot> oerjan: ( which is based on the same location
04:00:11 <oerjan> fungot: i'm not sure of that
04:00:12 <fungot> oerjan: sorting misc. stuff is code that loops over each ip.... no? objects have some tags so returned value of ( dec 4) 5) fnord
04:00:40 <oerjan> fungot: maybe.
04:00:41 <fungot> oerjan: what are the odds?) worked on his system handles the reduction and multiplication of units in strings which is defined as a list ( list ' define... ( namedlet-body exp))
04:01:12 <oerjan> fungot: 3:88
04:01:13 <fungot> oerjan: classes are c++, it's c/ c++ are used commercially, have a kitten." oh boy, now i can't leave until 1800 hours, and it's conceptually nice given that semantics for
04:21:25 <esowiki> [[TEPCS]] https://esolangs.org/w/index.php?diff=58246&oldid=58225 * Cortex * (-29)
04:22:24 -!- hexfive has joined.
05:34:12 <esowiki> [[User:Cortex]] https://esolangs.org/w/index.php?diff=58247&oldid=58219 * Cortex * (+31)
05:49:13 -!- clog has quit (Ping timeout: 246 seconds).
05:49:19 -!- clog has joined.
06:49:37 -!- oerjan has quit (Quit: Nite).
07:29:32 -!- imode has quit (Ping timeout: 272 seconds).
08:41:54 -!- sprocklem has quit (Quit: brb).
08:42:31 -!- sprocklem has joined.
09:03:51 -!- xkapastel has quit (Quit: Connection closed for inactivity).
10:18:26 -!- AnotherTest has joined.
11:22:50 -!- arseniiv has joined.
11:47:40 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
11:48:33 -!- Lord_of_Life has joined.
11:48:33 -!- Lord_of_Life has quit (Changing host).
11:48:33 -!- Lord_of_Life has joined.
12:09:41 -!- Essadon has joined.
12:12:02 -!- xkapastel has joined.
13:15:42 -!- TellsTogo has joined.
13:26:45 -!- TellsTogo has quit (Ping timeout: 256 seconds).
13:31:19 -!- rain1 has joined.
13:52:57 -!- sprocklem has quit (Ping timeout: 252 seconds).
13:54:03 -!- sprocklem has joined.
14:01:13 -!- sprocklem has quit (Ping timeout: 252 seconds).
14:03:46 -!- sprocklem has joined.
14:16:01 -!- Hooloovo0 has quit (Quit: Temporarily refracted into a free-standing prism.).
14:18:39 -!- sleepnap has joined.
14:25:37 -!- Hoolootwo has joined.
15:17:03 -!- hexfive has quit (Quit: WeeChat 2.2).
16:11:20 -!- imode has joined.
17:22:07 -!- Xor256 has joined.
17:22:44 <Xor256> hello, I'm new
17:24:08 <Taneb> Hi!
17:26:26 -!- mniip has quit (Quit: This page is intentionally left blank.).
17:27:29 -!- heroux has quit (Quit: Lost terminal).
17:29:02 -!- mniip has joined.
17:42:09 <Xor256> A language where a vector moves on surface which is answer to a polynomial expression
17:42:21 <Xor256> and you can alter variables on that expression
18:05:19 -!- Xor256 has quit (Quit: Leaving).
18:09:37 <arseniiv> laconic
18:34:34 -!- Hoolootwo has quit (Ping timeout: 250 seconds).
18:47:59 -!- Hoolootwo has joined.
19:10:22 -!- imode has quit (Ping timeout: 246 seconds).
19:11:16 -!- josh5tone has joined.
19:16:06 <esowiki> [[Special:Log/newusers]] create * Nulljester * New user account
19:16:36 -!- imode has joined.
19:20:21 <esowiki> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=58248&oldid=58226 * Nulljester * (+169)
19:40:48 <esowiki> [[Special:Log/newusers]] create * TBurnip * New user account
19:43:27 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=58249&oldid=58248 * TBurnip * (+205)
20:15:53 <esowiki> [[Twoee]] N https://esolangs.org/w/index.php?oldid=58250 * TBurnip * (+1384) First Edition of the page good luck and god speed
20:16:17 <esowiki> [[Twoee]] https://esolangs.org/w/index.php?diff=58251&oldid=58250 * TBurnip * (-5)
20:19:25 <esowiki> [[Twoee]] https://esolangs.org/w/index.php?diff=58252&oldid=58251 * TBurnip * (+4)
20:21:04 <esowiki> [[Twoee]] https://esolangs.org/w/index.php?diff=58253&oldid=58252 * TBurnip * (+517)
20:21:34 <esowiki> [[Twoee]] https://esolangs.org/w/index.php?diff=58254&oldid=58253 * TBurnip * (+20) /* Design Aims Proof Code */
20:21:48 <esowiki> [[Twoee]] https://esolangs.org/w/index.php?diff=58255&oldid=58254 * TBurnip * (+5) /* This proves that our design aims are meet */
20:22:51 <esowiki> [[Twoee]] https://esolangs.org/w/index.php?diff=58256&oldid=58255 * TBurnip * (+12)
20:23:44 -!- imode has quit (Quit: WeeChat 2.3).
20:24:08 <esowiki> [[Twoee]] https://esolangs.org/w/index.php?diff=58257&oldid=58256 * TBurnip * (-4) /* Control Operator */
20:24:40 <esowiki> [[Twoee]] https://esolangs.org/w/index.php?diff=58258&oldid=58257 * TBurnip * (+14)
20:58:00 -!- Hoolootwo has quit (Ping timeout: 250 seconds).
21:09:24 -!- Hoolootwo has joined.
21:13:44 -!- Phantom_Hoover has joined.
21:13:44 -!- Phantom_Hoover has quit (Changing host).
21:13:44 -!- Phantom_Hoover has joined.
21:49:41 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58259&oldid=58243 * JonoCode9374 * (+112)
21:50:22 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58260&oldid=58259 * JonoCode9374 * (-32)
21:52:23 -!- wob_jonas has joined.
22:16:41 -!- arseniiv has quit (Quit: gone completely :o).
22:23:22 <esowiki> [[]] https://esolangs.org/w/index.php?diff=58261&oldid=57952 * Salpynx * (+4300) add notes on computational class (believed TC) , and give more powerful examples
22:29:36 -!- Hoolootwo has quit (Ping timeout: 260 seconds).
22:46:05 <esowiki> [[Deadfish]] https://esolangs.org/w/index.php?diff=58262&oldid=58081 * Salpynx * (+218) Add variant
23:05:18 -!- AnotherTest has quit (Ping timeout: 264 seconds).
23:11:04 -!- Hoolootwo has joined.
23:31:50 -!- postno has joined.
23:32:30 <postno> test
23:41:27 -!- sftp has quit (Ping timeout: 252 seconds).
23:44:54 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
23:45:27 -!- Lord_of_Life_ has joined.
23:47:25 -!- sftp has joined.
23:49:10 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
23:49:11 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:49:11 -!- Lord_of_Life has quit (Changing host).
23:49:11 -!- Lord_of_Life has joined.
23:50:30 -!- Hoolootwo has quit (Ping timeout: 252 seconds).
23:52:40 -!- Hoolootwo has joined.
23:58:05 -!- Phantom_Hoover has quit (Remote host closed the connection).
00:15:51 -!- wob_jonas has joined.
00:15:52 <wob_jonas> `bobadventureslist http://bobadventures.comicgenesis.com/d/20181105.html
00:15:53 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: bobadventureslist: not found
00:15:58 -!- wob_jonas has quit (Client Quit).
00:27:51 -!- sleepnap has left.
00:35:10 -!- tromp has quit (Remote host closed the connection).
00:35:46 -!- tromp has joined.
00:41:45 -!- Hoolootwo has quit (Ping timeout: 252 seconds).
00:49:09 -!- Hoolootwo has joined.
01:08:37 -!- Essadon has quit (Quit: Qutting).
01:36:55 <esowiki> [[Anguish]] https://esolangs.org/w/index.php?diff=58263&oldid=47065 * Only Onion * (+61) Added categories.
01:41:06 <esowiki> [[Anguish]] https://esolangs.org/w/index.php?diff=58264&oldid=58263 * Only Onion * (+0)
01:53:04 -!- postno has left ("Leaving").
02:05:10 -!- moony has quit (Remote host closed the connection).
02:06:40 -!- moony has joined.
02:17:01 -!- copumpkin[m] has quit (Ping timeout: 250 seconds).
02:17:23 -!- siraben has quit (Ping timeout: 250 seconds).
02:20:12 -!- danieljabailey has quit (Ping timeout: 252 seconds).
02:21:59 -!- danieljabailey has joined.
02:47:59 -!- siraben has joined.
02:49:02 -!- copumpkin[m] has joined.
03:03:51 -!- xkapastel has quit (Quit: Connection closed for inactivity).
03:13:55 -!- imode has joined.
03:39:25 -!- siraben has quit (Ping timeout: 252 seconds).
03:39:42 -!- copumpkin[m] has quit (Ping timeout: 250 seconds).
04:34:13 -!- copumpkin[m] has joined.
04:34:45 -!- siraben has joined.
04:51:59 <esowiki> [[]] M https://esolangs.org/w/index.php?diff=58265&oldid=58261 * Salpynx * (+0)
04:53:06 <esowiki> [[]] M https://esolangs.org/w/index.php?diff=58266&oldid=58265 * Salpynx * (+2) /* Theme */
05:07:07 -!- imode has quit (Ping timeout: 240 seconds).
05:23:11 -!- siraben has quit (Changing host).
05:23:11 -!- siraben has joined.
05:23:11 -!- siraben has quit (Changing host).
05:23:11 -!- siraben has joined.
05:23:30 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=58267&oldid=58249 * SlackerSnail * (+117) /* Introductions */
05:33:52 -!- atslash has joined.
05:40:21 <esowiki> [[Ahead]] N https://esolangs.org/w/index.php?oldid=58268 * SlackerSnail * (+1240) Creating page
05:40:51 <esowiki> [[Ahead]] https://esolangs.org/w/index.php?diff=58269&oldid=58268 * SlackerSnail * (-6) /* Overview */
05:42:21 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58270&oldid=58220 * SlackerSnail * (+12) /* A */ Add Ahead
05:44:12 <esowiki> [[Ahead]] https://esolangs.org/w/index.php?diff=58271&oldid=58269 * SlackerSnail * (+97) added categories
05:44:44 <esowiki> [[Ahead]] https://esolangs.org/w/index.php?diff=58272&oldid=58271 * SlackerSnail * (-40)
05:45:12 -!- atslash has quit (Quit: Leaving).
05:47:09 -!- atslash has joined.
05:49:10 <esowiki> [[Ahead]] https://esolangs.org/w/index.php?diff=58273&oldid=58272 * SlackerSnail * (+62) categories
08:16:35 -!- tromp has quit (Remote host closed the connection).
08:16:51 -!- tromp has joined.
09:46:04 -!- AnotherTest has joined.
09:52:02 -!- tromp has quit (Remote host closed the connection).
09:52:29 -!- xkapastel has joined.
09:52:40 -!- tromp has joined.
10:07:22 -!- hexfive has joined.
10:07:50 -!- tromp has quit (Remote host closed the connection).
10:08:05 -!- tromp has joined.
10:36:23 -!- hexfive has quit (Quit: WeeChat 2.2).
11:03:34 <esowiki> [[Twoee]] https://esolangs.org/w/index.php?diff=58274&oldid=58258 * TBurnip * (+590)
11:06:30 -!- wob_jonas has joined.
11:08:10 <wob_jonas> zzo38: I think this is the first time at work when I met a case when SQL would actually be helpful to solve a problem, and it's on data that isn't yet in an SQL table. That is, it's not a persistent database that would be helpful, but some SQL statements for merging data between too many tables at the same time in several different ugly ways to fin
11:08:10 <wob_jonas> d all sorts of inconsistencies between three datasets.
11:10:05 <wob_jonas> I'm getting one dataset from a very ad hoc excel table with random data format where I can only find the ranges I need by hand, plus another datasets of a more consistent format but several tables and not in SQL format, and I have to look for inconsistencies in just the second dataset in various ways, and between the first and second dataset togeth
11:10:05 <wob_jonas> er.
11:10:40 <wob_jonas> The second dataset already has parts of the first dataset merged in, but badly, so I can't trust them matching.
11:41:19 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
11:47:15 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
11:50:19 -!- Lord_of_Life has joined.
11:50:20 -!- Lord_of_Life has quit (Changing host).
11:50:20 -!- Lord_of_Life has joined.
11:53:53 -!- moei has joined.
12:44:06 -!- AnotherTest has quit (Ping timeout: 252 seconds).
13:13:40 -!- arseniiv has joined.
13:13:55 -!- AnotherTest has joined.
13:43:48 -!- Essadon has joined.
14:08:10 -!- sleepnap has joined.
14:25:10 -!- rodgort has quit (Quit: Leaving).
14:34:33 -!- rodgort has joined.
14:59:38 -!- AnotherTest has quit (Ping timeout: 244 seconds).
15:10:47 -!- imode has joined.
15:16:50 -!- atslash has quit (Quit: Leaving).
15:21:36 -!- sebbu has quit (Read error: Connection reset by peer).
15:21:58 -!- sebbu has joined.
15:33:18 -!- imode has quit (Ping timeout: 252 seconds).
15:50:07 <esowiki> [[Alphabet Stew]] M https://esolangs.org/w/index.php?diff=58275&oldid=57488 * DMC * (-11) /* Concept */
15:57:30 -!- Gregor has quit (Ping timeout: 264 seconds).
15:58:15 -!- Gregor has joined.
16:04:18 -!- Gregor has quit (Ping timeout: 252 seconds).
16:09:54 -!- j-bot has joined.
16:15:38 <izabera> write an eval quine
16:16:29 <izabera> i.e. a statement in your favourite language that looks like eval foo bar baz and that will evaluate to eval foo bar baz
16:16:37 <izabera> and infinitely recurse
16:50:52 -!- imode has joined.
17:14:52 -!- oerjan has joined.
17:36:23 -!- S_Gautam has joined.
18:09:50 -!- oerjan has quit (Quit: Later).
18:18:48 -!- moony2 has joined.
18:19:14 <moony2> My work must be cut out for me. I forgot the Errata sheets existed for the MC88100, and now i can't find them.
18:19:35 <moony2> because apparently there are a few major bugs in the originals that probably need to be emulated
18:20:10 -!- Gregor has joined.
18:20:37 <moony2> i.e. the .usr bug, which from what i can tell requires padding of some sort to be added around any reads to user space from supervisor or else something stupid happens
18:20:55 <moony2> o/ Gregor, how's it going?w
18:23:24 -!- moei has quit (Read error: Connection reset by peer).
18:23:57 -!- moei has joined.
18:46:41 <int-e> `? hat
18:46:42 <HackEso> hatee-hatee-hatee-hooo
18:46:53 <int-e> `? high hat
18:46:54 <HackEso> A high hat is the same as a top hat, not the same as a hi-hat, just like how a top quark is not the same as an up quark.
18:50:09 * moony2 complains about how the MC88100 and the MC88110 have very different supervisor designs, but identical usermodes
18:51:08 <moony2> literally the only control registers the two share are fcr0, fcr62, fcr63, cr0, cr1, and cr2
18:55:22 <moony2> i'll probably only emulate the mc88110. the 88100 sucks anyways :p
19:06:54 -!- sleepnap has quit (Ping timeout: 252 seconds).
19:20:17 -!- sleepnap has joined.
19:26:12 -!- AnotherTest has joined.
19:29:48 -!- Phantom_Hoover has joined.
19:31:15 -!- wob_jonas has joined.
19:33:14 <wob_jonas> Standards are so great! My old Nokia 6502 phone, the current Nokia that I'm not satisfied with, and the new CAT B30 phone each use a different variant of the vcard file format to export contacts. So I'll have to look at the backup of the contacts this one makes, and try to write a converter that can emit something it can read.
19:34:27 <wob_jonas> Note that for the Nokia 6502, I tried to write the kind of file it needs (a zip file with individual files for each contact in vcard format), but failed to produce one that it would import. For the new Nokia I succeeded, and I think I'll be able to make something for this too,
19:35:19 <wob_jonas> because the CAT B30 could sort of read the vcard file that the Nokia exported (after I renamed its extension to ".vcf" instead of ".dat", which the in-phone file browser absolutely refuses to do, despite that it allows to rename the basename of the file, yay for protecting the user),
19:35:34 <wob_jonas> only it read most of the names wrong, because apparently it doesn't like mime equals sign quoted names.
19:39:30 <moony2> also, lucky me, the Luna88K (Which seems to be the only system OpenBSD supports, or at least i can't find the MVMe stuff) only runs at 33MHz, not 50MHz, so the CPU is running at 66MIPS not 100MIPS
19:39:34 <moony2> that means i have more leeway :D
19:40:14 <moony2> with the luna's memory model needing a lookup table for physical addresses, that's a very welcome thing.
19:40:37 <moony2> (Well, technically two, but having two is an optimization of all things)
19:42:21 <moony2> i still have absolutely no idea what TRI_PORT_RAM is. I know it's RAM (It's in the name), but i have zero idea what it does or how it works.
19:43:31 <moony2> at least there's no system specific expansion busses on it. It only has a PC-98 and a VME
19:44:14 <wob_jonas> moony2: re errata sheet -- ah right, it's an old CPU, "errata" doesn't mean that there's a new cpu ROM (microcode) update that fixes the bugs and the sheet tells what bugs it fixed, it means those bugs are there forever
19:44:23 <moony2> mhm
19:44:35 <moony2> and i kinda need that damn sheet, but it's no-where to be found :<
19:44:42 <wob_jonas> or even how to work around the bugs from kernel code, like in cpus in between
19:45:37 <moony2> OpenBSD's 88k setup has a bunch of stuff for some bug related to ld/st instructions with .usr applied
19:45:54 <moony2> all uses of ld or st isntructions with .usr are surrounded by NOPs
19:46:05 <moony2> and i have zero clue as to why :P
19:46:17 <wob_jonas> moony2: ouch
19:46:36 <moony2> in fact
19:46:47 <moony2> that NOP surround is gated behind a compiler flag for the bug
19:46:52 <moony2> so i know the reason is a bug
19:47:15 <wob_jonas> but what's this .usr thing?
19:47:37 <moony2> it allows STore and LoaD instructions executed in supervisor mode to pretend to be reading in user mode
19:47:50 <moony2> s/reading/executing/
19:47:55 <wob_jonas> ah, I see
19:48:33 <moony2> at least this is all well documented
19:48:38 <moony2> which helps immensely
19:48:47 <moony2> i bet the errata with .usr might be described somewhere
19:48:55 <wob_jonas> But is this something you have to emulate?
19:49:18 <moony2> Probably not. But emulating it == bonus points :p
19:49:54 <wob_jonas> Oh right, you want to write golf for the cpu, so you may want to be able to check that the golfed program doesn't run into the bug.
19:50:12 <wob_jonas> You don't just want to emulate OpenBSD, you want to write programs directly for the cpu.
19:50:34 <moony2> I do hope to make OpenBSD run tho, just for fun
19:50:35 <wob_jonas> Though, of course, you might be writing only usermode programs
19:50:53 <moony2> the hard part will be decoding how the display works
19:51:22 <wob_jonas> What kind of display?
19:51:28 <moony2> https://github.com/bluerise/openbsd/blob/463a59d491885c59f2eef9c9dfa0a5c14b1115be/sys/arch/luna88k/include/board.h#L152
19:51:31 <moony2> Looks like a CRT
19:51:46 <moony2> but i have no idea what these "bitmap functions" it talks about are
19:52:02 <moony2> if the display's driver can execute some form of code, i'm in for a real tough one
19:52:48 <moony2> *drawing* the display is the easy part, the hard part is getting the emulation right
19:52:58 <wob_jonas> You could hope that no program depends on the display itself...
19:53:09 <wob_jonas> You'll start with a serial console anyway
19:53:20 <moony2> OpenBSD's kernel depends on the display. :V
19:53:39 <wob_jonas> what?
19:53:47 <wob_jonas> even if you recompile?
19:54:07 <moony2> Looks like it. Still having trouble finding the def for "putchar" tho
19:54:23 <wob_jonas> I mean, Linux can be compiled without the console part, so you don't get either a text display or a keyboard on the text console, but you still get to use serial console.
19:54:34 <wob_jonas> It's really rare to use Linux that way, but it's possible.
19:54:54 <wob_jonas> And I think you don't have to actually recompile, just tell it to use the serial console at boot, the display will fail to initialize, but the system will run.
19:54:55 <moony2> i'm probably just dumb
19:55:03 <wob_jonas> Set up getty to use the serial console too obviously.
19:55:13 <wob_jonas> In inittab that is.
19:55:21 <wob_jonas> So that init spawns getty on the serial console
19:55:22 <moony2> bbl
19:55:52 <wob_jonas> You could ask the OpenBSD people about how to set this up on OpenBSD exactly
19:56:13 <wob_jonas> There is all sorts of docs online, and people too.
19:56:24 <wob_jonas> Probably much more than ones who know this cpu.
19:56:42 <wob_jonas> (And if that fails, then run NetBSD instead.)
19:59:55 -!- moony2 has quit (Ping timeout: 256 seconds).
20:16:25 <wob_jonas> Success, I think!
20:19:36 <wob_jonas> Except now I'll have to modify the names that start with Á or É or Ö, because the new Nokia sorted those half-sanely, but the old Nokia and the CAT B30 sorts them to the back of the phonebook. No problem.
20:52:30 -!- moony_ has joined.
21:05:57 -!- S_Gautam has quit (Quit: Connection closed for inactivity).
21:06:57 -!- imode has quit (Quit: WeeChat 2.3).
21:24:21 -!- moony_ has quit (Ping timeout: 256 seconds).
21:48:11 -!- MDude has joined.
22:02:47 -!- danieljabailey has quit (Read error: Connection reset by peer).
22:08:52 -!- moei has quit (Quit: Leaving...).
22:30:50 <wob_jonas> https://www.perlmonks.com/?node_id=1225327 Migrate phone numbers from Nokia 6303c to Nokia 216 then to CAT B30, or the quest for a sane phone
22:31:19 <wob_jonas> ais523: ^ repeats some of my triades against the Nokia 216, and tells what I bought instead.
22:32:48 -!- josh5tone has quit (Remote host closed the connection).
22:35:37 <wob_jonas> Doesn't tell all the details about how the Nokia 216 sucks, and I don't think it adds too much to what I already said, but just incase.
22:38:55 <wob_jonas> Drat.
22:39:29 -!- imode has joined.
22:45:31 <wob_jonas> I can't put my regular SIM card into the new phone yet, because it needs a smaller SIM card, and my regular SIM card is so old that it doesn't have the perforations for easily removing the part that makes it bigger.
22:51:00 -!- AnotherTest has quit (Ping timeout: 252 seconds).
23:06:30 -!- arseniiv has quit (Ping timeout: 252 seconds).
23:18:53 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
23:24:30 -!- Essadon has quit (Quit: Qutting).
23:32:27 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
23:41:39 -!- sleepnap has left.
23:46:07 -!- Lord_of_Life_ has joined.
23:49:51 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
23:49:52 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:49:53 -!- Lord_of_Life has quit (Changing host).
23:49:53 -!- Lord_of_Life has joined.
23:54:28 -!- Sgeo has joined.
23:56:47 -!- Sgeo__ has quit (Ping timeout: 240 seconds).
00:22:59 -!- hexfive has joined.
02:03:03 -!- oerjan has joined.
03:42:13 -!- xkapastel has quit (Quit: Connection closed for inactivity).
05:04:09 -!- S_Gautam has joined.
05:10:53 -!- Sgeo_ has joined.
05:13:27 -!- Sgeo has quit (Ping timeout: 240 seconds).
06:26:28 -!- atslash has joined.
06:27:17 <atslash> hello
06:27:26 <atslash> What's up
06:27:28 <atslash> guys
06:48:55 -!- hexfive has quit (Quit: WeeChat 2.2).
07:18:38 -!- imode has quit (Ping timeout: 268 seconds).
07:21:05 -!- oerjan has quit (Quit: Nite).
07:38:06 -!- xkapastel has joined.
08:06:07 <int-e> atslash: it's EARLY
08:06:21 <shachaf> @time int-e
08:06:21 <lambdabot> Local time for int-e is Wed Nov 7 09:06:21 2018
08:06:39 <int-e> :-P
08:06:57 <shachaf> @time
08:07:00 <lambdabot> Local time for shachaf is Wed Nov 7 00:06:57 2018
08:07:03 <int-e> I usually set my alarm clock around this time
08:07:23 <shachaf> you missed all the excitement
08:07:25 <int-e> but no, there's a seminar in 10 minutes... *yawn*
08:07:58 <int-e> I saw @realDonaldTrump celebrating his success of getting more than 9 senate seats out of 35.
08:08:16 <int-e> No commment on the House of Representatives.
08:08:38 <int-e> But that's hardly a surprise.
08:10:40 <int-e> This is just Trump... exaggerate your successes, don't talk about your losses; rather, call out the people who discuss the losses for lying.
08:23:50 <esowiki> [[User:TeslaX93]] N https://esolangs.org/w/index.php?oldid=58276 * TeslaX93 * (+52) Created page with "Creator of [[RTFM]], [[VeriBasic]] and [[TapeFuck]]."
09:17:18 -!- AnotherTest has joined.
09:41:24 -!- hexfive has joined.
09:48:56 -!- wob_jonas has joined.
09:54:24 <wob_jonas> It turns out that the new phone has 3G capability on the first SIM card, but not on the second SIM card. That's an interesting design choice.
10:29:45 -!- arseniiv has joined.
11:12:24 -!- S_Gautam has quit (Quit: Connection closed for inactivity).
11:19:38 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
11:40:18 -!- moei has joined.
11:49:36 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
11:51:03 -!- Lord_of_Life has joined.
11:51:04 -!- Lord_of_Life has quit (Changing host).
11:51:04 -!- Lord_of_Life has joined.
12:53:32 -!- ais523 has joined.
12:53:54 <ais523> @messages?
12:53:54 <lambdabot> Sorry, no messages today.
13:09:59 -!- AnotherTest has quit (Ping timeout: 276 seconds).
13:27:17 -!- AnotherTest has joined.
13:50:22 -!- wob_jonas has joined.
13:51:27 <wob_jonas> ais523: I bought myself a new phone on the weekend.
13:51:48 <ais523> wob_jonas: I still don't have a phone
13:55:02 <wob_jonas> ais523: I looked at a Myphone phone in a shop, but in a quick test, I didn't like its interface much, so instead I bought a CAT B30.
13:55:21 <wob_jonas> This one also isn't perfect, but I think it'll be least better than the terrible Nokia 216.
13:55:40 <wob_jonas> I started to use it as a main phone today, but don't yet know how good it is, I didn't use it enough yet.
13:55:51 <ais523> I'm probably the wrong person to talk to about phone interfaces
13:55:54 <wob_jonas> I've already seen some problems, but they are hopefully smaller than what the 216 had.
13:56:08 <wob_jonas> hmm
13:56:58 <wob_jonas> also I figured out how to copy the contacts from the 216 to the B30, and wrote it up in https://www.perlmonks.com/?node_id=1225327 just in case it helps someone else
13:57:18 <wob_jonas> it's not likely that anyone wants to copy between those two particular phones, but it may still help someone if they're using one of them
13:59:26 -!- moony2 has joined.
13:59:42 <moony2> oh my god. The latest openbsd release still supports the 88110
14:00:49 <wob_jonas> moony2: good. does it also support not having a graphics card?
14:00:54 -!- Sgeo_ has quit (Read error: Connection reset by peer).
14:01:05 <wob_jonas> if not, then I'd recommend trying netbsd
14:01:20 -!- Sgeo_ has joined.
14:02:06 <wob_jonas> hmm, what's the arch name? http://netbsd.org/ports/#ports-by-cpu doesn't seem to list it under some obvious way
14:03:54 <wob_jonas> https://www.openbsd.org/plat.html says it's a discontinued platform in OpenBSD actually
14:03:59 <wob_jonas> moony2: ^
14:04:21 -!- Sgeo__ has joined.
14:04:31 -!- moony2 has quit (Ping timeout: 256 seconds).
14:06:47 -!- Sgeo_ has quit (Ping timeout: 240 seconds).
14:26:09 -!- tromp has quit (Remote host closed the connection).
14:26:43 -!- tromp has joined.
14:29:58 -!- moony_ has joined.
14:30:31 -!- hexfive has quit (Quit: WeeChat 2.2).
14:30:36 <moony_> Yea, it does. Depends on the DIP switches on the Luna88k+'s front panel
14:30:47 <moony_> (This thing uses a bunch of front panel switches to control boot haha)
14:33:15 <wob_jonas> moony_: that makes sense. those old machines didn't have non-volatile memory, so it makes sense to have the settings in switches or jumpers.
14:33:35 <moony_> No, the Luna has a NVRAM
14:33:41 <wob_jonas> they also don't have extra circuitry for autodetecting hardware
14:34:00 <wob_jonas> moony_: um, ok. maybe it still uses switches because that's easy to configure and already established?
14:34:06 <moony_> probably
14:34:17 <wob_jonas> or maybe it also controls hardware
14:34:47 <wob_jonas> in fact, the graphics card is one of the few things that you might want to initialize (to text more or something) before even trying to read the NVRAM
14:35:33 <moony_> the PROM is my current issue
14:35:47 <moony_> it's the ROM the system boots from, and it has some sort of prompt and everything
14:35:52 <moony_> like a mini GRUB for the 88110
14:36:25 <wob_jonas> moony_: doesn't openbsd come with a bootloader for that platform?
14:36:55 <moony_> Nope. the PROM comes before everything, and handles booting OpenBSD
14:37:04 <moony_> https://ftp.openbsd.org/pub/OpenBSD/6.4/luna88k/INSTALL.luna88k
14:37:14 <moony_> well
14:37:20 <moony_> there is a bootloader, but the PROM comes before it
14:39:29 <wob_jonas> hmm
14:40:15 <moony_> bbl
14:40:19 -!- moony_ has quit (Quit: Page closed).
14:56:30 -!- Sgeo_ has joined.
14:58:40 -!- Sgeo__ has quit (Ping timeout: 268 seconds).
15:00:45 -!- AnotherTest has quit (Ping timeout: 252 seconds).
15:08:16 -!- ais523 has quit (Quit: quit).
15:28:54 -!- sleepnap has joined.
15:33:53 -!- error404notmoony has joined.
15:36:29 -!- imode has joined.
15:55:54 -!- imode has quit (Ping timeout: 244 seconds).
16:15:12 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
16:25:03 -!- error404notmoony has quit (Ping timeout: 256 seconds).
16:37:12 -!- imode has joined.
16:52:20 -!- oerjan has joined.
17:12:26 -!- sleepnap has quit (Ping timeout: 276 seconds).
17:26:08 -!- sleepnap has joined.
17:52:26 -!- sleepnap has quit (Ping timeout: 260 seconds).
18:02:16 -!- sleepnap has joined.
18:11:12 <esowiki> [[Special:Log/newusers]] create * Seh * New user account
18:13:27 -!- Essadon has joined.
18:17:17 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=58277&oldid=58267 * Seh * (+224)
18:32:16 <esowiki> [[NARchy]] N https://esolangs.org/w/index.php?oldid=58278 * Seh * (+454) Created page with "Source code: http://github.com/automenta/narchy [https://bitbucket.org/seh/narchy/ https://bitbucket.org/seh/narchy/ (mirror)] ==Introduction== TODO ==Syntax== TODO ==Rules..."
18:41:28 <esowiki> [[Eul]] N https://esolangs.org/w/index.php?oldid=58279 * Backspace * (+1020) Created page with "=Welcome to Eul= Eul is an esoteric programming language. It has been desinged to be short and percise. It is a stack-based language. =Naming= Eul's name comes from words "eu..."
18:42:46 <esowiki> [[Eul]] https://esolangs.org/w/index.php?diff=58280&oldid=58279 * Backspace * (-2)
18:43:50 -!- oerjan has quit (Quit: Later).
18:44:04 <esowiki> [[Eul]] https://esolangs.org/w/index.php?diff=58281&oldid=58280 * Backspace * (-9)
18:45:11 -!- error404notmoony has joined.
18:45:16 -!- AnotherTest has joined.
19:07:41 -!- error404notmoony has quit (Ping timeout: 256 seconds).
19:07:52 -!- sleepnap has quit (Ping timeout: 250 seconds).
19:21:48 -!- sleepnap has joined.
20:07:36 -!- imode has quit (Quit: WeeChat 2.3).
20:47:25 -!- lynn has quit (Read error: Connection reset by peer).
20:47:43 -!- ^[ has quit (Ping timeout: 252 seconds).
20:47:47 -!- mich181189 has quit (Read error: Connection reset by peer).
20:47:52 -!- lynn has joined.
20:48:00 -!- mich181189 has joined.
20:49:58 -!- ^[ has joined.
20:50:00 -!- fractal has quit (Ping timeout: 252 seconds).
20:51:06 -!- arseniiv has quit (Ping timeout: 252 seconds).
21:07:54 -!- fractal has joined.
21:16:16 -!- sleepnap has quit (Ping timeout: 264 seconds).
21:20:17 -!- sleepnap has joined.
21:36:47 -!- Phantom_Hoover has joined.
21:38:27 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58282&oldid=58260 * JonoCode9374 * (+102) /* Special Bits */
21:45:10 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58283&oldid=58282 * JonoCode9374 * (+777) /* For Loops */
21:45:50 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58284&oldid=58283 * JonoCode9374 * (-1) /* Cat Program */
21:46:46 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58285&oldid=58284 * JonoCode9374 * (+95) /* For Loops */
21:51:37 -!- atslash has quit (Quit: This computer has gone to sleep).
21:57:42 -!- moei has quit (Quit: Leaving...).
22:35:36 -!- MDude has quit (Ping timeout: 252 seconds).
23:00:08 -!- AnotherTest has quit (Ping timeout: 250 seconds).
23:16:26 -!- sleepnap has left.
23:30:14 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
23:48:25 -!- Lord_of_Life_ has joined.
23:50:53 -!- Lord_of_Life has quit (Ping timeout: 276 seconds).
23:51:02 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:51:19 -!- Lord_of_Life has quit (Changing host).
23:51:19 -!- Lord_of_Life has joined.
00:23:21 -!- Essadon has quit (Quit: Qutting).
01:16:25 -!- Storkman_ has quit (Ping timeout: 252 seconds).
01:16:33 -!- Storkman has joined.
01:37:39 -!- MDude has joined.
01:38:07 -!- oerjan has joined.
02:00:09 -!- heroux has joined.
02:03:01 -!- olsner has quit (Ping timeout: 260 seconds).
02:14:40 -!- olsner has joined.
02:30:22 -!- Sgeo has joined.
02:31:24 -!- Sgeo_ has quit (Ping timeout: 244 seconds).
03:00:42 -!- imode has joined.
03:17:53 -!- xkapastel has quit (Quit: Connection closed for inactivity).
04:21:54 <paul2520> I haven't done this in a while, but I'm trying to zsync the wiki. I'm getting an error:
04:21:56 <paul2520> failed to retrieve from https://esolangs.org/dump/esolang.xml.gz
04:21:58 <paul2520> Aborting, download available in esolang.xml.part
04:22:09 <paul2520> Any idea? I've tried thrice, it fails ~58% complete.
04:22:21 <paul2520> Anyway, heading to sleep but I'm on screen. Will check back tomorrow.
04:24:44 -!- atslash has joined.
04:45:56 -!- hexfive has joined.
04:51:52 <oerjan> fizzie: ^
05:49:31 -!- oerjan has quit (Quit: Nite).
06:35:12 -!- imode has quit (Ping timeout: 252 seconds).
07:18:59 -!- S_Gautam has joined.
07:57:33 <esowiki> [[Brainfoctal]] https://esolangs.org/w/index.php?diff=58286&oldid=58238 * Salpynx * (+2310) hopefully more informative description
08:04:34 <esowiki> [[Brainfoctal]] https://esolangs.org/w/index.php?diff=58287&oldid=58286 * Salpynx * (+2485) /* Example Hello World generation */
08:07:07 <esowiki> [[Brainfoctal]] https://esolangs.org/w/index.php?diff=58288&oldid=58287 * Salpynx * (+2) /* Example Hello World generation */
08:21:07 <esowiki> [[Brainfoctal]] https://esolangs.org/w/index.php?diff=58289&oldid=58288 * Salpynx * (-37) /* Example Hello World generation */ fix code and tidy names
08:29:08 <esowiki> [[Brainfoctal]] M https://esolangs.org/w/index.php?diff=58290&oldid=58289 * Salpynx * (+3) /* Example Hello World generation */
08:43:06 -!- Sgeo_ has joined.
08:46:07 -!- Sgeo has quit (Ping timeout: 268 seconds).
08:53:12 -!- AnotherTest has joined.
10:08:37 -!- S_Gautam has quit (Quit: Connection closed for inactivity).
10:19:00 <int-e> hmm, cute title: Rush Hour is PSPACE-complete, or “Why you should generously tip parking lot attendants”
10:26:47 <shachaf> "Why you should take the train"
10:29:15 -!- arseniiv has joined.
10:32:24 -!- S_Gautam has joined.
11:47:59 -!- Lord_of_Life_ has joined.
11:51:07 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
11:51:07 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
11:51:08 -!- Lord_of_Life has quit (Changing host).
11:51:08 -!- Lord_of_Life has joined.
12:48:25 -!- Essadon has joined.
12:54:36 -!- AnotherTest has quit (Ping timeout: 252 seconds).
13:16:47 -!- xkapastel has joined.
14:02:02 -!- arseniiv has quit (*.net *.split).
14:02:02 -!- atslash has quit (*.net *.split).
14:02:02 -!- Storkman has quit (*.net *.split).
14:02:02 -!- rodgort has quit (*.net *.split).
14:02:03 -!- hakatashi has quit (*.net *.split).
14:02:03 -!- FireFly has quit (*.net *.split).
14:02:03 -!- ski has quit (*.net *.split).
14:02:19 -!- hakatashi has joined.
14:02:34 -!- atslash has joined.
14:02:35 -!- Storkman has joined.
14:02:37 -!- rodgort has joined.
14:02:39 -!- arseniiv has joined.
14:05:24 -!- FireFly has joined.
14:07:07 -!- ski has joined.
14:31:26 -!- sleepnap has joined.
14:53:01 -!- ski has quit (Ping timeout: 260 seconds).
14:57:03 -!- ski_ has joined.
15:03:34 -!- ski_ has changed nick to ski.
15:13:10 -!- AnotherTest has joined.
15:21:10 <paul2520> another question: recommended books about esoteric languages/programming, and/or subjects like code golf? I'm working through Toledo Nanochess.
15:24:20 -!- imode has joined.
15:28:04 -!- sleepnap has quit (Quit: Leaving.).
15:28:05 -!- sleepnap1 has joined.
15:34:29 -!- sleepnap1 has quit (Read error: Connection reset by peer).
15:39:19 -!- MDude has quit (Ping timeout: 244 seconds).
15:46:24 -!- ais523 has joined.
15:51:26 -!- ais523 has quit (Remote host closed the connection).
15:52:39 -!- ais523 has joined.
16:01:39 -!- MDude has joined.
16:01:51 -!- imode has quit (Ping timeout: 264 seconds).
16:06:16 -!- MDude has quit (Ping timeout: 250 seconds).
16:14:48 <esowiki> [[Special:Log/newusers]] create * Mowag * New user account
16:19:04 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=58291&oldid=58277 * Mowag * (+161) Hi
16:19:09 <esowiki> [[Chef]] https://esolangs.org/w/index.php?diff=58292&oldid=37017 * Mowag * (-87) Added a link to a (slightly) better python interpreter
16:46:25 -!- hexfive has quit (Quit: WeeChat 2.2).
16:58:48 -!- MDude has joined.
17:54:49 -!- LKoen has joined.
18:04:13 -!- imode has joined.
18:33:30 -!- sftp has quit (Ping timeout: 252 seconds).
18:37:27 -!- sftp has joined.
19:03:46 -!- Phantom_Hoover has joined.
19:03:46 -!- Phantom_Hoover has quit (Changing host).
19:03:46 -!- Phantom_Hoover has joined.
19:30:21 -!- joast has quit (Ping timeout: 252 seconds).
20:16:57 -!- joast has joined.
20:18:37 -!- S_Gautam has quit (Quit: Connection closed for inactivity).
20:18:38 -!- subleq has quit (Remote host closed the connection).
20:23:55 -!- subleq has joined.
20:36:48 -!- dingbat has quit (Quit: Connection closed for inactivity).
20:44:44 -!- imode has quit (Ping timeout: 276 seconds).
20:50:57 <esowiki> [[Brainfoctal]] M https://esolangs.org/w/index.php?diff=58293&oldid=58290 * Salpynx * (-10)
20:52:23 <esowiki> [[Cupid]] https://esolangs.org/w/index.php?diff=58294&oldid=39774 * Rdebath * (+395) Add interpreter. I kinda like this TBS
20:55:34 -!- Sgeo_ has quit (Read error: Connection reset by peer).
20:56:00 -!- Sgeo_ has joined.
20:57:03 -!- dingbat has joined.
21:17:49 <esowiki> [[OM]] M https://esolangs.org/w/index.php?diff=58295&oldid=54972 * Robertpmorton39 * (-14) Fixed ambiguity in precedences and changed wording in built-in macros.
21:35:45 -!- LKoen has quit (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”).
21:37:45 <zzo38> If I use nc to create a UNIX socket and then try to connect to it, the listening process segfaults. What is doing wrong with this?
21:44:16 <zzo38> I figured out why; it is a bug, that it tries to use the port number, but there isn't any. Specifying a port number anyways will avoid this bug and allow it to work.
22:44:34 -!- subleq has quit (Remote host closed the connection).
22:46:43 <moony> I've poked the guy who maintains the OpenBSD port for the Luna88K to see if he can give me a copy of the device's PROM and Mask ROM. Hopefully he can
22:48:03 -!- Sgeo__ has joined.
22:50:13 -!- Sgeo_ has quit (Ping timeout: 244 seconds).
23:16:43 -!- AnotherTest has quit (Ping timeout: 245 seconds).
23:31:23 <fizzie> Hmm. I'm not sure why the zsync thing doesn't work. Though it's always been a little bit of a mystery to me anyway. It's not very good with error messages.
23:32:48 <fizzie> All I can say is that the files are generated with "(thing that produces the XML dump) | zsyncmake -z -f esolang.xml -u https://esolangs.org/dump/esolang.xml.gz", and that results in two output files esolang.xml.gz and esolang.xml.zsync, which are then based in that dump/ directory and seem to be be fetchable just fine.
23:33:37 <fizzie> Poking around a little, though, I think it might be that zsync just doesn't support https.
23:38:56 <fizzie> Yes, that seems to be the case. That's kind of unfortunate.
23:41:15 <ais523> are there any competing incremental download technologies?
23:41:38 <ais523> I know I wasn't able to get a working zsync backup last time I tried
23:41:54 <fizzie> There's rsync, but that's awkward to serve.
23:42:18 <ais523> I didn't realise it diffed at the file level
23:42:27 <fizzie> Someone seems to have made a "zsync-curl" project which replaces the HTTP client parts of zsync with libcurl, making it work over HTTPS. But at least Debian doesn't package that.
23:42:56 <ais523> come to think of it, something like git could work, couldn't it? although I'm not sure it actually sends updates as file-level diffs
23:43:57 <fizzie> I could also just remove the -u parameter from the zsyncmake command, in which case you should be able to download it over HTTP with conventional zsync, and HTTPS if you have a suitable client for that.
23:44:14 <fizzie> In that case I should probably also store a checksum that could be fetched over HTTPS to validate.
23:51:42 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
23:51:59 -!- Lord_of_Life has joined.
23:51:59 -!- Lord_of_Life has quit (Changing host).
23:51:59 -!- Lord_of_Life has joined.
00:04:41 <esowiki> [[Esolang:Wiki dumps]] https://esolangs.org/w/index.php?diff=58296&oldid=53557 * Fizzie * (+859) Update dump instructions re HTTPS (or lack of it)
00:05:11 <fizzie> I keep trying to write markdown instead of wiki-markup.
00:16:58 -!- Phantom_Hoover has quit (Remote host closed the connection).
00:18:25 -!- arseniiv has quit (Ping timeout: 246 seconds).
00:18:43 -!- Essadon has quit (Quit: Qutting).
00:58:55 <ais523> I'm annoyed at markdown taking over the world because so many versions of it have obvious shortcomings
00:59:29 <ais523> the original version is decent enough for its stated purpose, but I don't like markdown being used as a sandboxing method, because the syntax is awkwardly inexpressive when you don't have the escape to HTML
01:07:30 <zzo38> I happen to like the MediaWiki format, which has support for templates. (I have used the templates feature to make databases, although a block containing SQL codes might be better for this.)
01:48:27 <ais523> the one thing Markdown really got right was `…` for code formattinig
01:48:44 <ais523> it's quickly becoming standard even outside Markdown
01:56:31 <shachaf> I don't really like Markdown.
01:56:35 <shachaf> What should I use instead?
01:57:00 <shachaf> Mediawiki seems a lot more complicated than I want probably.
02:03:54 <shachaf> In e.g. C++, ; isn't associative, because of destructors: { { A; B; }; C; } ≠ { A; { B; C; }; }. What sort of meaning does {} have? Is it something like the "reset" operator for delimited continuations?
02:09:31 <ais523> shachaf: {} introduces a scope
02:09:39 <ais523> and destructors are tied to the end of a scope
02:10:12 <zzo38> There is also Fossil Wiki format
02:10:16 <shachaf> Yes.
02:10:27 <ais523> shachaf: what purpose do you want this markdown-like language for?
02:10:46 <shachaf> Maybe writing some things to put on my website.
02:10:49 <shachaf> Or maybe other things.
02:10:53 <ais523> I've been considering writing my own, but there are three jobs that a markdown-like language has to do and I'd be optimising for one of them specifically, which probably isn't the one you'd want
02:11:43 <ais523> a) making it easy to write formatted text quickly; b) being easy to read the resulting text without a specialised viewer; c) being able to represent everything you might want to write accurately, without special cases or other mishaps
02:11:58 <ais523> Markdown isn't so bad at a); I use it for my own blog for that reason
02:12:25 <shachaf> I'd like all three, with a preference of a over b
02:12:34 <shachaf> Er, no
02:12:37 <shachaf> A preference of b over a
02:12:43 <shachaf> No
02:12:48 <ais523> the language I had in mind was optimizing for b, c secondary, a not really at all
02:12:51 <shachaf> Wait, these aren't the things I thought about at all.
02:12:59 <ais523> for writing your own personal website or the like, b is irrelevant
02:13:19 <ais523> what were your considerations?
02:14:07 <shachaf> I don't even know anymore.
02:14:14 <shachaf> You can implement a "defer" statement in C++ such that "A; { B; defer Z; C; }; D;" = A; B; C; Z; D
02:15:19 <ais523> how do you prevent Z being evaluated immediately? or is it a representation of a thunk or the like?
02:15:22 <shachaf> In this sense "defer" captures things up to the nearest {}
02:15:27 <ais523> I can see how you'd evaluate it at the end of the scope
02:15:38 <shachaf> I guess I should say "defer { Z }"
02:16:39 <shachaf> Usually it's something like #define defer Thing blah##__LINE__ = ()[&]
02:17:13 <ais523> oh, I see
02:18:18 <shachaf> I'm wondering what exactly a scope is, or should be.
02:18:44 <shachaf> The fact that this defer is implemented with a destructor is kind of irrelevant. As is often the case for RAII objects.
02:19:10 <ais523> well, the normal definition of a scope is that variable names inside it shadow variable names outside it and aren't available outside it
02:19:17 <ais523> that's why the destructor runs at the end of the scope
02:19:42 <ais523> one interesting way to think about it is based on INTERCAL's STASH/RETRIEVE operations, which basically allow you to implement scopes that don't nest in the normal manner
02:19:56 <ais523> you explicitly shadow a variable (STASH) and revert to the old variable (RETRIEVE)
02:20:46 <shachaf> There's a sense in which a thing like defer gets a sort of continuation as an argument, but it's bounded up to the enclosing scope.
02:20:59 <shachaf> Is that something like dynamic scope?
02:21:35 <ais523> so the difference between dynamic scope (`local` in Perl), and lexical scope (`my` in Perl), is kind-of complex
02:21:47 <ais523> it's to do with what happens with things that already have a reference to the shadowed variable
02:21:53 <shachaf> Right.
02:22:15 <ais523> `perl-e $c=4; $d=\$c; {my $c=6; print $c, " ", $$d;}
02:22:16 <HackEso> 6 4
02:22:21 <ais523> `perl-e $c=4; $d=\$c; {local $c=6; print $c, " ", $$d;}
02:22:22 <HackEso> 6 4
02:22:26 <ais523> hmm
02:22:33 <ais523> that's not the result I expected
02:22:41 <ais523> now I'm wondering what I did wrong
02:23:40 <shachaf> Does $$ resolve variables by string name in the current scope or something?
02:23:43 <shachaf> I don't know Perl.
02:24:02 <shachaf> I think I read that PHP does that.
02:24:09 <ais523> $$ dereferences a reference
02:24:16 <shachaf> Ah.
02:24:22 <ais523> if you try to use a variable name as a reference it does what PHP does, that's insane though
02:24:32 <ais523> in this case $d is a proper reference to $c
02:24:34 <shachaf> Dynamic scope mostly seems like scow, but recently I've been wondering whether some things are effectively dynamically scoped and I haven't noticed.
02:25:09 <shachaf> In particular are "break"/"continue"/"return" effectively dynamically scoped?
02:25:19 <shachaf> This question doesn't quite make sense in any language I know of unfortunately.
02:27:42 <ais523> `perl-e $c=4; sub rc {return $c;} {my $c=6; print rc();}
02:27:42 <HackEso> 4
02:27:47 <ais523> `perl-e $c=4; sub rc {return $c;} {local $c=6; print rc();}
02:27:47 <HackEso> 6
02:27:51 <ais523> OK, /that/'s the difference
02:28:01 <ais523> that's even more confusing than I thought it was
02:28:24 <shachaf> That makes sense.
02:30:09 <shachaf> Even Haskell has dynamic scope
02:30:13 <shachaf> > let { ?c = 4 } in let { f x = x + ?c } in let { ?c = 40 } in f 5
02:30:15 <lambdabot> 45
02:30:16 <shachaf> > let { c = 4 } in let { f x = x + c } in let { c = 40 } in f 5
02:30:18 <lambdabot> 9
02:39:43 <ais523> I guess `local` isn't changing the value of the variable temporarily; it's actually changing the variable itself temporarily
02:39:45 <ais523> how Perl
02:40:03 -!- Sgeo__ has quit (Ping timeout: 245 seconds).
02:41:02 <shachaf> I as wondering whether you can make a monad thing for this.
02:41:20 <shachaf> E.g. do { A; bracket $ do { B; defer Z; C; }; D } -> do { A; B; C; Z; D; }
02:41:35 <shachaf> And bracket $ do { ret <- getCC; A; bracket $ do { B; defer Z; C; ret 0; D; }; E } -> do { A; B; C; Z; return 0; }
02:41:53 <ais523> that should be pretty easy, I think? at least the first example
02:42:04 <ais523> just have a state monad with a list inside the state, that counts up all the arguments to `defer`
02:42:09 <ais523> then have `bracket` run them all
02:43:10 <shachaf> Yes, I think bracket+defer on its own is pretty doable
02:43:31 <shachaf> Though defer isn't the only kind of effect I'd want. It's more like an arbitrary effect that can operate on the continuation up to the enclosing bracket.
02:44:04 <shachaf> Someone in #haskell implemented it, actually: https://gist.github.com/Lysxia/8a5c8d20f6c7c1332481190fb6f1c8b7
02:44:09 <shachaf> But it's not quite right, I think.
02:44:19 <ais523> "operate on the rest of the continuation" is pretty much literally what a monad /is/
02:44:27 <ais523> so I guess we're trying to make a dynamic monad? a monad that gets defined at runtime?
02:44:46 <shachaf> Right, except e.g. C++'s {}/; don't obey the associativity monad law.
02:45:01 <shachaf> Normally there's a law that (a >> b) >> c = a >> (b >> c)
02:45:15 <shachaf> But it's true that monads and continuations closely related.
02:45:29 <shachaf> are
02:45:33 <ais523> I think ; is still associative, just that {} are not ()
02:45:55 <shachaf> Yes, that's fair.
02:46:08 <shachaf> In C++ "A; B; C" means "A; { B; C; }"
02:46:25 <shachaf> With destructors running in reverse order and so on.
02:47:07 <ais523> well, if you see A; as being "A, and run the identity function on the rest of the block", that implies the same associativity here too
02:47:28 <shachaf> Monads in general don't have an equivalent of bracket
02:47:36 <shachaf> What would it look like?
02:48:15 <shachaf> One extra thing is that e.g. C++ supports early-exit outside of the enclosing block.
02:48:52 <shachaf> foo() { A; { B; if (p) return; }; C; }
02:48:55 <ais523> bracket takes a monad action as argument, and returns another monad action
02:49:04 <ais523> I don't think that's very common among monads
02:49:23 <ais523> what it's doing in between is basically running the monad actoins inside it, and bundling the result up into another monad action
02:49:55 <ais523> early exit should be easy to implement like this, anyway; just don't run the rest of the block
02:50:26 <shachaf> But you want to run the appropriate defers, and whatever else, on the way up.
02:50:59 <shachaf> I don't think things that operate on actions are very uncommon.
02:51:25 <ais523> normally they return a value, though, not another action
02:52:13 <shachaf> :t local -- this is in the spirit of what you're talking about, I think
02:52:14 <lambdabot> MonadReader r m => (r -> r) -> m a -> m a
02:52:15 -!- oerjan has joined.
02:52:48 <shachaf> (Both for dynamic scope and for monad action actions.)
02:53:43 <ais523> :t (>>=)
02:53:44 <lambdabot> Monad m => m a -> (a -> m b) -> m b
02:54:05 <shachaf> Of course (>>=) and fmap and so on also qualify
02:54:32 <ais523> what we effectively want here is a monad where each action defines its own >>=
02:54:36 <ais523> I'm trying to work out what type that has
02:55:19 <ais523> GenericMonad a = forall b.(a -> GenericMonad b) -> GenericMonad b
02:55:21 <ais523> I think
02:56:29 <shachaf> That's like a fixed point of Codensity or something
02:57:28 <ais523> so we have "return a atmb = atmb a", and "(>>=) ma atmb = ma atmb"
02:57:54 <ais523> @hoogle a->(a->b)->b
02:57:54 <lambdabot> Prelude ($) :: (a -> b) -> a -> b
02:57:55 <lambdabot> Prelude ($!) :: (a -> b) -> a -> b
02:57:55 <lambdabot> Data.Function ($) :: (a -> b) -> a -> b
02:58:13 <ais523> there really isn't a flip ($) in the standard library?
02:58:21 <ais523> but yes, looks like return is flip ($), and >>= is %
02:58:21 <shachaf> :t (&)
02:58:22 <lambdabot> a -> (a -> b) -> b
02:58:23 <ais523> * is $
02:58:26 <ais523> aha
02:58:35 <ais523> this kind-of makes sense given how generic the monad is
02:59:12 <ais523> it feels like this should obey the monad laws, it's 3am though and I'm lazy so I'm not going to try to work that out right now
03:00:11 <shachaf> I'm not sure I understand it but it seems like it might not be associative based on what you were trying to do?
03:02:05 <ais523> bleh, let's try to work through this anyway
03:02:18 <shachaf> I'll see if I can figure out what you mean.
03:02:58 <ais523> return a >>= f → return a f → f a, as required
03:04:18 <ais523> m >>= return → m return → -- OK, I don't think this one holds without an extra condition on what monad actions we allow
03:05:04 <ais523> and yes, associativity doesn't hold without a side-condition either
03:05:58 <shachaf> Hmm.
03:06:15 <shachaf> You could use the Codensity monad instance for this, which I think would have to make the laws hold?
03:06:57 <shachaf> m >>= k = (\c -> m (\a -> k a c))
03:07:24 <shachaf> It enforces associativity by reassociating everything to the right.
03:07:42 <shachaf> But that doesn't get the desired effect anymore, I guess.
03:08:24 <zzo38> (Codensity f) does form a monad regardless of what (f) is. It is possible to defer; I have managed to do that with a Codensity monad.
03:09:06 <shachaf> zzo38: This monad is like the fixed point of Codensity (?)
03:09:29 <ais523> shachaf: it looks like Codensity has the same monad definition and "return" as what I wrote above
03:09:33 <ais523> but >>= is different
03:09:45 <shachaf> Yes. It's the same (>>=) as Cont.
03:11:19 <ais523> reassociating everything to the right is correct, I think; you'd need a separate monad action → monad action function to add explicit rebracketing
03:11:44 <shachaf> Right, otherwise you can make things that are bracketing-aware.
03:14:16 <shachaf> You can define a similar thing for monoids and run into the same thing, I guess?
03:14:35 <ais523> I can't see one in the Codensity docs, but maybe I'm just missing it, or maybe it's a special case of something that's already there
03:15:10 <shachaf> I don't think it exists for arbitrary Codensity but only over some specific monads?
03:15:28 <ais523> it could be
03:16:43 <shachaf> You can have a "monoid" that has an element x where, in x*(abc), x gets to make some decision based on abc
03:17:57 <shachaf> But that's not compatible with associativity. You could right-reassociate everything à la difference lists, but then you kind of lose the point. You could add explicit brackets to recognize that you're really representing a tree.
03:18:34 <ais523> right, if you have the fixed point of Codensity, then bracket (runCodensity k) = k return
03:18:38 <ais523> I think, at least
03:19:11 <shachaf> Also someone suggested that Cont/runCont do the appropriate operations. I should figure that out.
03:19:18 <ais523> I'm not in the right state of mind for working throuhg this
03:19:28 <shachaf> https://www.vex.net/~trebla/haskell/cont.xhtml talks about it in terms of reset/shift at the end
03:19:49 <shachaf> OK, thanks for your help, I'll think about this thing.
03:21:45 <ais523> I've been thinking about this same subject myself, incidentally
03:21:51 <ais523> as it really seems like an important primitive
03:21:55 <ais523> (the "monad that can be anything")
03:23:43 <shachaf> "the mother of all monads"
03:23:48 <shachaf> I'm pretty sure the answer is Codensity.
03:28:56 <zzo38> There are other kind of monads such as Free and CodensityAsk, as well as Codensity.
03:29:46 <shachaf> But you can lift them all to Codensity
03:31:10 <zzo38> Yes, although still it is a different monad; (Codensity Maybe) is difference from just Maybe.
03:32:12 <shachaf> Yes.
03:45:52 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58297&oldid=58285 * JonoCode9374 * (+565) /* Example Programs */ -- Added 99 bottles of beer program
03:46:36 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58298&oldid=58297 * JonoCode9374 * (+62) /* Example Programs */
03:51:28 <esowiki> [[Messyscript]] https://esolangs.org/w/index.php?diff=58299&oldid=56035 * Rdebath * (+57) Is a TBF
04:03:52 -!- ais523 has quit (Quit: quit).
04:15:36 <oerjan> `cat bin/perl-e
04:15:37 <HackEso> ​#!/bin/bash \ perl -e "$@"
04:28:38 -!- Sgeo has joined.
04:37:42 <oerjan> today's http://www.mezzacotta.net/garfield/ appears to have a pun that only a norwegian would understand.
04:38:14 <oerjan> (and editor manyhills isn't norwegian afaiu)
04:39:32 <oerjan> so he probably thought it was only a surreal submission (well, it's that too)
04:48:32 <oerjan> ooh, dmm must have fixed my registration problem from way back...
04:48:46 <oerjan> (although i didn't get an email back)
05:14:49 <Hoolootwo> fjord pun?
05:16:32 -!- xkapastel has quit (Quit: Connection closed for inactivity).
05:28:43 <oerjan> Hoolootwo: no, https://no.wikipedia.org/wiki/Pusur
06:24:00 -!- oerjan has quit (Quit: Nite).
06:39:47 <Hoolootwo> ah, I see
07:26:05 <zzo38> Now I implemented a QOTD server (TCP only; the UDP one is subject to attacks so it is not implemented)
07:27:08 <zzo38> Do you like this?
08:03:46 -!- xkapastel has joined.
08:22:37 -!- Hoolootwo has changed nick to Hooloovo0.
08:42:28 <esowiki> [[User:Salpynx]] https://esolangs.org/w/index.php?diff=58300&oldid=57993 * Salpynx * (+243) /* Working on */
08:43:29 <esowiki> [[User:Salpynx]] M https://esolangs.org/w/index.php?diff=58301&oldid=58300 * Salpynx * (+10) /* Interested in */
09:13:52 <esowiki> [[User:Salpynx]] M https://esolangs.org/w/index.php?diff=58302&oldid=58301 * Salpynx * (+19) /* Interested in */
09:53:44 -!- AnotherTest has joined.
10:59:12 -!- moei has joined.
11:41:33 -!- Essadon has joined.
11:52:03 -!- Lord_of_Life_ has joined.
11:52:27 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
11:54:10 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
11:54:56 -!- Lord_of_Life has quit (Changing host).
11:54:56 -!- Lord_of_Life has joined.
11:56:44 -!- wob_jonas has joined.
11:57:44 <wob_jonas> ais523: yes, markdown format sucks. yes, file-level diff downloading is a hard problem that is possible in theory but no good practical solutions exist, so we use workarounds like splitting to smaller files, append-only logs, or (the old solution) sequences of patches.
11:59:35 <wob_jonas> for a format, to be able to accurately represent complicated things, I'd prefer to just allow most HTML codes in the formatted text even if there are other shortcuts, though of course if you have untrusted input, then you have to filter the HTML.
12:00:16 <wob_jonas> and I for one thing that every non-common extra feature should just use HTML-like syntax, rather than all other sort of ad-hoc syntax like magic templates, and non-HTML syntax only reserved for very common formatting
12:00:52 <wob_jonas> I might eventually try to implement such a formatting language, with multiple versions, as in one for trusted input and one for untrusted input, and specifically the features I need
12:01:57 <wob_jonas> I can't promise anything, but if I do get something like this done, I will mention it in this channel if possible
12:02:57 <wob_jonas> Back lots of years ago I already improved perlmonks' HTML-based markup language a bit, in particular I proposed adding the <c>...</c> shortcut for the very common <code>...</code> tags.
12:03:16 <wob_jonas> Note that in Perlmonks markup, <code>...</code> is magical, it's not the plain HTML tag.
12:03:59 <wob_jonas> The text between it is interpreted as plain text (sort of like in a CDATA), with & and < not being special
12:22:44 <wob_jonas> Whoa! "Subversion 1.11 is the first of the new 6-month regular releases with an emphasis on introducing new features more quickly and a shorter support See <a href="http://subversion.apache.org/docs/release-notes/1.11#non-lts-release">Subversion 1.11 is a Regular Release</a> below."
12:23:07 <wob_jonas> I did get surprised, because the minor release 1.10 was released this year.
12:23:54 -!- arseniiv has joined.
12:33:23 -!- xkapastel has quit (Quit: Connection closed for inactivity).
13:02:04 -!- AnotherTest has quit (Ping timeout: 250 seconds).
13:16:10 <wob_jonas> ais523: however, I believe you can use subversion for serving updates with in-file deltas over the internet, as long as the server stores old versions of the file and the client has one of those versions.
13:16:29 <wob_jonas> so that may work as incremental downloading for your purposes
13:24:16 <wob_jonas> subversion also stores the versions of files on disk in a compressed format that takes the similarity of different version to account and also compresses ordinary obvious low-entropy stuff, so storing lots of versions isn't too expensive
14:46:47 -!- sleepnap has joined.
15:03:14 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
15:12:11 -!- AnotherTest has joined.
15:36:30 -!- sleepnap has quit (Ping timeout: 252 seconds).
16:23:51 -!- moei has quit (Read error: Connection reset by peer).
16:24:27 -!- moei has joined.
16:53:03 <zzo38> Fossil wiki supports stuff like <verbatim-1> so that even if the text contains </verbatim> it can still work.
18:37:40 -!- xkapastel has joined.
18:56:05 <zzo38> Can Heirloom-mailx be made to work with NNTP?
20:15:12 <esowiki> [[BrainfuckX]] https://esolangs.org/w/index.php?diff=58303&oldid=46431 * Salpynx * (+27) formatting
20:15:19 <zzo38> Now I added into my "sqlext_remote" program, the possibility to use UNIX domain sockets.
20:46:28 <esowiki> [[Pluso]] https://esolangs.org/w/index.php?diff=58304&oldid=39848 * Rdebath * (+89) Golf!?
20:48:32 <zzo38> RFC 1288 says that the finger protocol can be used with vending machines. Are there vending machines that implement it?
20:56:08 <zzo38> (I suppose you might use it in a local network in a building, but it is not so useful for internet)
20:59:29 <zzo38> It says there were a few (and they were connected to the internet, even though they admitted it is not useful for internet), but I don't know if there are any now.
21:04:02 <zzo38> The account looks like it still exists, although it just says "No Plan" now.
21:18:37 -!- Phantom_Hoover has joined.
21:21:41 <esowiki> [[Special:Log/newusers]] create * MilkyWay90 * New user account
21:24:28 <esowiki> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=58305&oldid=58291 * MilkyWay90 * (+138)
21:24:44 <esowiki> [[User talk:Maxsteele2]] https://esolangs.org/w/index.php?diff=58306&oldid=43118 * MilkyWay90 * (+100)
22:47:14 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
22:59:01 <esowiki> [[Keg]] M https://esolangs.org/w/index.php?diff=58307&oldid=58298 * JonoCode9374 * (+1) /* Command Glossary */
23:00:28 <esowiki> [[Keg]] https://esolangs.org/w/index.php?diff=58308&oldid=58307 * JonoCode9374 * (+263) /* Example Programs */
23:06:37 -!- AnotherTest has quit (Ping timeout: 250 seconds).
23:43:18 -!- Melvar has quit (Quit: rebooting).
23:49:35 -!- Lord_of_Life_ has joined.
23:52:54 -!- Melvar has joined.
23:53:09 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
23:53:10 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:53:10 -!- Lord_of_Life has quit (Changing host).
23:53:10 -!- Lord_of_Life has joined.
01:28:54 <esowiki> [[Talk:Java sharp]] N https://esolangs.org/w/index.php?oldid=58309 * Only Onion * (+234) Created page with "== Delete? == This page has been empty for over a year. I would think if its creator wanted to do something with it, they would have already. ~~~~"
01:32:15 -!- Essadon has quit (Quit: Qutting).
01:32:48 -!- oerjan has joined.
01:42:13 -!- Melvar has quit (Ping timeout: 244 seconds).
01:53:51 -!- arseniiv has quit (Ping timeout: 252 seconds).
02:16:43 -!- Melvar has joined.
02:32:39 <esowiki> [[User talk:Maxsteele2]] M https://esolangs.org/w/index.php?diff=58310&oldid=58306 * Oerjan * (+68) /* Hey... */ unsigned and new section
02:33:33 <esowiki> [[Special:Log/delete]] delete * Oerjan * deleted "[[Java sharp]]": Author request: content before blanking was: "as"
02:35:30 <esowiki> [[Talk:Java sharp]] https://esolangs.org/w/index.php?diff=58311&oldid=58309 * Oerjan * (+177) Done
04:31:01 -!- atslash has quit (Ping timeout: 246 seconds).
04:34:25 -!- atslash has joined.
06:05:25 <zzo38> I deprecated the complicated stuff about control messages in Unusenet and wrote a simpler specification, which is a subset of that used by Usenet, although with a few different considerations due to the fact that namespaces and federation are different on Unusenet.
06:05:59 -!- xkapastel has quit (Quit: Connection closed for inactivity).
06:46:32 -!- oerjan has quit (Quit: Nite).
07:13:55 -!- nfd9001 has joined.
07:45:56 <esowiki> [[Wishmaster]] M https://esolangs.org/w/index.php?diff=58312&oldid=55192 * Jabutosama * (-13) fixed typos, clarified text
09:37:31 -!- laerling has joined.
10:11:24 -!- AnotherTest has joined.
10:50:42 -!- laerling has quit (Remote host closed the connection).
11:31:43 -!- xkapastel has joined.
11:51:22 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
11:54:39 -!- Lord_of_Life has joined.
11:54:39 -!- Lord_of_Life has quit (Changing host).
11:54:39 -!- Lord_of_Life has joined.
13:45:28 -!- Essadon has joined.
14:13:39 <esowiki> [[Talk:Factorial]] N https://esolangs.org/w/index.php?oldid=58313 * Camto * (+136) Created page with "There should be a list of factorials per lang like there is the list of hello worlds. ~~~~"
14:14:36 <esowiki> [[User:Camto]] M https://esolangs.org/w/index.php?diff=58314&oldid=58124 * Camto * (+10) Why not.
14:28:56 -!- arseniiv has joined.
15:01:13 -!- Sgeo has quit (Read error: Connection reset by peer).
15:01:41 -!- Sgeo has joined.
15:51:28 -!- Sgeo_ has joined.
15:53:27 -!- Sgeo has quit (Ping timeout: 252 seconds).
17:34:37 -!- grumble has quit (Quit: Need to reconnect so here's a random tip: The command "xrandr --output HDMI1 --set 'Broadcast RGB' Full" (you might need to replace HDMI1 with your monitor output name) might significantly improve contrast on external monitors. s/Full/Automatic/ to reset).
17:36:45 -!- grumble has joined.
18:04:16 <esowiki> [[Talk:Entfedern]] M https://esolangs.org/w/index.php?diff=58315&oldid=57322 * Camto * (-118)
18:19:25 <esowiki> [[User:Camto]] https://esolangs.org/w/index.php?diff=58316&oldid=58314 * Camto * (+127)
18:45:03 -!- wob_jonas has joined.
18:45:34 <wob_jonas> `olist 1146
18:45:35 <HackEso> olist 1146: shachaf oerjan Sgeo FireFly boily nortti b_jonas
19:10:25 <zzo38> Political parties and ridings don't mix well, I think.
19:44:59 <esowiki> [[\ () /]] M https://esolangs.org/w/index.php?diff=58317&oldid=57768 * Randairox * (-133) actualize js state
20:00:13 -!- Sgeo_ has quit (Read error: Connection reset by peer).
20:00:36 -!- Sgeo_ has joined.
20:24:58 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
20:38:47 -!- hexfive has joined.
20:52:30 -!- imode has joined.
21:06:02 <imode> https://git.imode.tech/?p=git/python/prime;a=summary
21:06:20 <imode> whoops, old link. https://git.imode.tech/?p=python/prime;a=summary
21:06:57 <imode> public REPL is up on imode.tech, port 1337. `telnet imode.tech 1337`.
21:07:27 <zzo38> Connection refused.
21:08:07 <imode> forgot to start the server lol. try now.
21:08:24 <imode> `sum (evens (~4))` gives you the sum of the first 4 even numbers.
21:08:24 <zzo38> OK, it works now.
21:08:24 <HackEso> sum: '(evens (~4))` gives you the sum of the first 4 even numbers.': No such file or directory
21:08:38 <imode> whoops, forgot that was for the bot.
21:10:44 <imode> the built-in ruleset is grossly incomplete. it's just a test to see what I can make with it. the language supports generic pattern matching over linear sequences of tokens. anything with parentheses around it is treated as a single token.
21:10:56 <zzo38> It works. The server does not explain the ~ command but I tried it as you suggested and it works.
21:11:30 <imode> ah. there's no built-in arithmetic or numbers or anything save for the rewriting logic. if you prefix a number with ~, it'll expand that number into its unary form.
21:11:34 <imode> it's a cheap hack.
21:11:54 <imode> so numbers are of the form (~x), where x is a positive integer.
21:12:03 <zzo38> (Although perhaps I did not look at the webpage you linked; maybe that explains more about it, and I didn't know because I didn't look at that)
21:12:16 <imode> nah, it doesn't explain it. not yet. a writeup is coming.
21:12:24 <imode> just been working on my site and setting up public git access.
21:12:43 <zzo38> Ah, OK.
21:12:47 <esowiki> [[Special:Log/newusers]] create * Sifoobar * New user account
21:13:47 <imode> there's a REPL on port 1338 without the prelude.
21:14:42 <imode> defining new rules is done via `def`. you just type `def`, it'll prompt you for the lhs of the rule, and then the rhs of the rule.
21:15:34 <imode> you can define any kind of pattern you'd like. for example, type `def`, hit enter, type `?x !`, hit enter, type `factorial ?x`, hit enter, type `(~4)!`, hit enter, and you'll get 24 in unary.
21:16:32 <imode> feel free to break it.
21:16:55 <zzo38> OK, although I do not want to right now.
21:17:12 <imode> the code is up on git.imode.tech. it's the only project, and the prelude is located under that project, right here: https://git.imode.tech/?p=python/prime;a=blob;f=prelude.prime;h=b2b2f0ab80f4c47a38d16eb8e945a022d4678532;hb=refs/heads/master
21:17:34 <zzo38> It looks good at least what I saw and what you explain so far
21:17:42 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=58318&oldid=58305 * Sifoobar * (+82)
21:17:46 <imode> thanks!
21:18:01 <imode> I got some interest from other people so I figured I'd start sharing it in the places I lurk.
21:18:17 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58319&oldid=58270 * Sifoobar * (+12) /* S */
21:19:27 <esowiki> [[Snigl]] N https://esolangs.org/w/index.php?oldid=58320 * Sifoobar * (+439) Created page with "[https://gitlab.com/sifoo/snigl Snigl] is an interpreted scripting language designed for embedded use that aims to strike a compromise between the simplicity of C and Forth an..."
21:20:07 <esowiki> [[Snigl]] https://esolangs.org/w/index.php?diff=58321&oldid=58320 * Sifoobar * (+80)
21:20:29 <esowiki> [[Snigl]] https://esolangs.org/w/index.php?diff=58322&oldid=58321 * Sifoobar * (+4)
21:22:28 <esowiki> [[Snigl]] https://esolangs.org/w/index.php?diff=58323&oldid=58322 * Sifoobar * (-2)
21:27:03 <esowiki> [[Snigl]] https://esolangs.org/w/index.php?diff=58324&oldid=58323 * Sifoobar * (+35)
21:27:26 <esowiki> [[Snigl]] https://esolangs.org/w/index.php?diff=58325&oldid=58324 * Sifoobar * (+0)
21:27:44 <esowiki> [[Snigl]] https://esolangs.org/w/index.php?diff=58326&oldid=58325 * Sifoobar * (+2)
21:28:36 <esowiki> [[Snigl]] https://esolangs.org/w/index.php?diff=58327&oldid=58326 * Sifoobar * (-12)
21:29:31 -!- wob_jonas has joined.
21:29:33 <wob_jonas> `pbflist http://pbfcomics.com/comics/harlots-web/
21:29:33 <HackEso> pbflist http://pbfcomics.com/comics/harlots-web/: shachaf Sgeo quintopia ion b_jonas Cale
21:29:38 -!- wob_jonas has quit (Client Quit).
21:31:17 <esowiki> [[Special:Log/upload]] upload * Sifoobar * uploaded "[[File:Snigl logo.png]]"
21:31:42 <esowiki> [[Snigl]] https://esolangs.org/w/index.php?diff=58329&oldid=58327 * Sifoobar * (+34)
21:31:55 <esowiki> [[Snigl]] https://esolangs.org/w/index.php?diff=58330&oldid=58329 * Sifoobar * (+1)
21:39:44 -!- hexfive has quit (Quit: WeeChat 2.2).
21:39:59 -!- rain2 has quit (Quit: WeeChat 2.2).
22:04:11 -!- arseniiv has quit (Ping timeout: 250 seconds).
22:07:24 -!- hmmmmm has joined.
22:16:06 -!- hmmmmm has quit (Quit: Page closed).
22:26:28 -!- imode has quit (Quit: WeeChat 2.3).
23:33:03 -!- AnotherTest has quit (Ping timeout: 252 seconds).
23:52:14 -!- Lord_of_Life_ has joined.
23:54:18 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
23:54:22 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:55:06 -!- Lord_of_Life has quit (Changing host).
23:55:06 -!- Lord_of_Life has joined.
23:59:43 <zzo38> imode: The way of doing comments does not seem like so good
00:15:50 <shachaf> https://twitter.com/sigfpe/status/1061408937558196225
00:16:33 <shachaf> Can you do a Magic: The Gathering quine with less nonstandard text?
00:19:50 <shachaf> I guess that card isn't a quine, it merely generates a quine.
00:21:26 -!- Melvar has quit (Ping timeout: 268 seconds).
00:21:53 -!- Melvar has joined.
00:33:31 -!- xkapastel has quit (Quit: Connection closed for inactivity).
01:18:47 <zzo38> Is there the possibility with Apache for changing the log format depending on the DNT header?
01:38:12 -!- oerjan has joined.
01:55:00 -!- Essadon has quit (Quit: Qutting).
01:55:48 -!- xkapastel has joined.
02:08:16 -!- imode has joined.
04:13:31 -!- xkapastel has quit (Quit: Connection closed for inactivity).
04:44:12 -!- xkapastel has joined.
05:02:47 <zzo38> I now configured my HTTP server so that if DNT:1 is specified then it only logs the date/time, response code, data length, and time taken to serve the request. (In case of DNT:0 or no DNT header, it also logs client IP address, first line of the request, and user-agent.) Do you think this is good?
05:05:12 <zzo38> Do you know how to also program the error log due to such thing?
05:24:33 <zzo38> I looked at the document it can set the error log format but not conditionally.
05:55:18 -!- Chittle has joined.
06:17:15 -!- Chittle has quit (Quit: leaving).
06:19:14 -!- oerjan has quit (Quit: Nite).
06:24:05 -!- Bowserinator has quit (Quit: Blame iczero something happened).
06:24:05 -!- ATMunn has quit (Quit: lol rip).
06:24:06 -!- moony has quit (Quit: Bye!).
06:24:33 -!- ATMunn has joined.
06:24:53 -!- Bowserinator has joined.
06:28:21 -!- moony has joined.
07:17:14 -!- Taneb has quit (Quit: I seem to have stopped.).
07:17:53 -!- Taneb has joined.
07:27:02 -!- ATMunn has quit (Quit: lol rip).
07:27:03 -!- moony has quit (Quit: Bye!).
07:27:03 -!- Bowserinator has quit (Quit: Blame iczero something happened).
07:27:22 -!- ATMunn has joined.
07:27:45 -!- Bowserinator has joined.
07:31:11 -!- moony has joined.
07:43:04 -!- atslash has quit (Quit: This computer has gone to sleep).
07:44:53 -!- atslash has joined.
08:29:53 <shachaf> https://arxiv.org/abs/1801.09553
08:40:10 -!- hexfive has joined.
08:43:31 -!- xkapastel has quit (Quit: Connection closed for inactivity).
09:07:27 -!- imode has quit (Ping timeout: 240 seconds).
09:09:43 <zzo38> shachaf: Just reading the short description, Penrose mentioned a similar thing in a footnote and I also tried too, with the same result of Penrose.
09:12:57 <zzo38> That the common notation for second derivatives is no good, so, this document suggests a revised notation hopefully will be better.
09:13:15 <shachaf> I think I've suggested the same notation in this channel in the past?
09:13:26 <shachaf> I don't remember. I was trying to figure it out, at any rate.
09:13:31 <shachaf> Maybe oerjan remembers.
09:17:30 <zzo38> Yes, I think someone else on this channel also was trying to figure out, not only me.
09:18:03 <zzo38> I do not remember who, but I was one who had figured it out. Maybe you were the other one; I do not remember.
09:20:45 <shachaf> I think it was also on Wikipedia or something.
09:21:13 <zzo38> Yes, maybe. There may also be others (outside of this IRC) who have figured similar stuff.
09:47:47 -!- AnotherTest has joined.
10:23:48 -!- arseniiv has joined.
10:32:35 <esowiki> [[Talk:Brainfoctal]] N https://esolangs.org/w/index.php?oldid=58331 * Rdebath * (+234) /* Numbering system */ new section
10:35:26 -!- S_Gautam has joined.
11:30:53 <esowiki> [[Brainfoctal]] https://esolangs.org/w/index.php?diff=58332&oldid=58293 * Rdebath * (+555) Oh yes, Ruby uses bignums.
11:52:56 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
11:56:26 -!- Lord_of_Life has joined.
11:56:27 -!- Lord_of_Life has quit (Changing host).
11:56:27 -!- Lord_of_Life has joined.
11:57:29 -!- zseri has joined.
12:03:25 <esowiki> [[Brainfuck derivatives with nontrivial computational class proofs]] https://esolangs.org/w/index.php?diff=58333&oldid=46767 * Rdebath * (+29) Link TBFS page
12:05:00 -!- zseri has quit (Quit: Leaving).
12:31:49 -!- Essadon has joined.
12:48:00 <int-e> fungot: hi there
12:48:01 <fungot> int-e: http://pikhq.nonlogic.org/ bfm.tar.bz2 new tarball up.) i look forward to it. i prefer the top-level binding, since it only uses bash built-ins
13:22:39 -!- xkapastel has joined.
14:09:01 <esowiki> [[English]] https://esolangs.org/w/index.php?diff=58334&oldid=57971 * Gamer * (+28)
14:13:46 <esowiki> [[Developers]] https://esolangs.org/w/index.php?diff=58335&oldid=43327 * Rdebath * (+552) TBFS interpreter
14:30:28 <arseniiv> fungot: you are in a good mood today eh?
14:30:29 <fungot> arseniiv: i first though i'd make real-time tone creating possible in the general case, also consider using mzscheme ( the command line.
14:30:44 -!- Sgeo_ has quit (Read error: Connection reset by peer).
14:31:09 -!- Sgeo_ has joined.
14:31:11 <arseniiv> fungot: thanks it could be useful some day. Though I’m fearful of some schemes
14:31:12 <fungot> arseniiv: seen jao?
14:32:05 <arseniiv> suddenly
14:32:44 <arseniiv> I should be glad fungot doesn’t asks about Nora’s Hair Salon Disaster Download Something Something
14:32:45 <fungot> arseniiv: so if the list contains a certain element of the list
14:33:19 <arseniiv> fungot: it’s called nonempty
14:33:20 <fungot> arseniiv: i got 2 functions, each of which can be " extended" inside of " blocks"
14:33:36 <arseniiv> hm, you won
14:34:07 <arseniiv> fungot is like tetris, it wins each time
14:34:26 <arseniiv> oops I called them
15:13:41 -!- wob_jonas has joined.
15:15:00 <wob_jonas> shachaf: re M:tG stuff, that works, but it's sort of an overkill, an ability on a card can copy that ability just fine, just see the tech on Unstable Shapeshifter or Cryptoplasm, you could copy the token creation ability to a token that way too.
15:22:21 <wob_jonas> zzo38: re apache HTTP server config question, try http://httpd.apache.org/docs/2.4/mod/core.html#if , I think that can be conditional on a header in the HTTP request, together with http://httpd.apache.org/docs/2.4/mod/mod_log_config.html#logformat
15:29:34 -!- atslash has quit (Quit: Leaving).
15:50:19 -!- Sgeo_ has quit (Read error: Connection reset by peer).
15:50:47 -!- Sgeo_ has joined.
16:04:07 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
16:05:56 -!- wob_jonas has joined.
16:10:08 -!- wob_jonas has quit (Client Quit).
16:10:12 <esowiki> [[A]] N https://esolangs.org/w/index.php?oldid=58336 * Cortex * (+2319) Created page with "'''A''' is a language created by [[User:Cortex]] which is designed to be extremely difficult to read and write code in. The command names are often either 1 letter or gibberis..."
16:10:56 <esowiki> [[User:Cortex]] https://esolangs.org/w/index.php?diff=58337&oldid=58247 * Cortex * (+8)
16:12:16 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58338&oldid=58319 * Cortex * (+64)
16:38:26 -!- hexfive has quit (Quit: WeeChat 2.2).
16:53:07 -!- arseniiv_ has joined.
16:56:16 -!- arseniiv has quit (Ping timeout: 260 seconds).
17:38:38 -!- imode has joined.
18:33:23 <oren> Hooray, knob and tube wiring has almost been removed!
18:33:52 <oren> also our extremely illegal carter system swicth
18:54:10 <zzo38> I tried to install Apache 2.4, but somehow it didn't install so I am using 2.2
20:26:20 -!- Sgeo_ has quit (Read error: Connection reset by peer).
20:26:43 -!- Sgeo_ has joined.
20:27:52 -!- Phantom_Hoover has joined.
20:45:08 -!- lambdabot has quit (Remote host closed the connection).
20:48:00 -!- lambdabot has joined.
21:04:22 <esowiki> [[MIX (Knuth)]] https://esolangs.org/w/index.php?diff=58339&oldid=58047 * Zzo38 * (+648)
21:05:52 <zzo38> Maybe I should add a JFILL pseudo-op into the MIXPC assembler to program the default target of a jump table.
21:07:36 <zzo38> Another possible option to add is a option to punch "0" in the first character position of all program cards except the first and last card. If you are using actual cards, it may then make it easier to sort the cards if they are mixed up.
21:35:05 -!- S_Gautam has quit (Quit: Connection closed for inactivity).
22:03:51 -!- arseniiv_ has changed nick to arseniiv.
22:10:45 -!- moei has quit (Quit: Leaving...).
22:38:06 -!- Essadon has quit (Quit: Qutting).
23:37:16 -!- AnotherTest has quit (Ping timeout: 250 seconds).
23:49:39 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
23:52:03 -!- Lord_of_Life_ has joined.
23:55:34 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
23:55:34 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:55:35 -!- Lord_of_Life has quit (Changing host).
23:55:35 -!- Lord_of_Life has joined.
00:00:20 -!- danieljabailey has joined.
00:06:50 -!- ais523 has joined.
00:07:04 <ais523> @messages?
00:07:05 <lambdabot> Sorry, no messages today.
00:07:17 <shachaf> his523
00:07:37 <ais523> hi
00:07:58 <ais523> any progress on the fixed point of Codensity?
00:08:13 <shachaf> I was going to ask you the same thing.
00:08:23 <shachaf> No, I didn't think about that type much since last time.
00:09:09 <shachaf> I think not satisfying the monad associativity law might not be so bad.
00:09:16 <shachaf> You just don't call your thing a monad.
00:11:01 <shachaf> The alternative is to explicitly make your code into a tree with "bracket $ do { ... }" calls. I think bracket is quite similar to reset from delimited continuations.
00:13:00 <shachaf> By the way, I said earlier that C mutable types were similar to e.g. refs in SML, but there's an important difference: If you have a ref containing a pair, you can't in general get a ref to each of its components.
00:13:11 <shachaf> Is there a language with explicit refs that does allow that?
00:14:14 <ais523> shachaf: the "how do you contrast elements of the pair with the pair itself" question is really, really complex
00:14:30 <ais523> and conflating them is one of the most common mistakes made in theoretical computer science
00:14:36 <ais523> I had to write quite a bit in my thesis about it
00:14:52 <shachaf> The situation in C is more complicated than I would've thought.
00:14:56 <ais523> unfortunately, this /specific/ question isn't one of the ones I have a ready-made answer to, and I don't want to throw out an answer quickly because experience shows that any simple answer here will probably be wrong
00:15:10 <shachaf> C has two "." operators for field access, one for lvalues and one for rvalues.
00:16:14 <shachaf> If read : LValue a -> RValue a, then read(lval.x) = read(lval).x, so it's easy to confuse them.
00:16:49 <ais523> the basic issue wrt pairs can be seen by trying to access both halves of the pair; is that a) a single operation that decomposes a pair into its two halves, or b) two operations, each of which reads one half of a pair?
00:17:21 <shachaf> I wish I knew a good language that doesn't have lvalues.
00:17:27 <ais523> if you're counting how many accesses are made to something (in my thesis, this came up wrt affine typing, but `volatile` is a more familiar example), the distinction is really important
00:17:35 <ais523> shachaf: but does have mutable variables?
00:17:46 <zzo38> Do you know BLISS?
00:17:48 <shachaf> No, just pointers/references.
00:17:59 <shachaf> zzo38: BLISS and ALGOL 68 are the two answers I know to this question.
00:18:14 <zzo38> OK
00:18:21 <ais523> shachaf: well, a reference to an immutable value is normally very hard to distinguish from the value itself
00:18:56 <shachaf> "volatile" seems like a weird thing to have as a property of a variable.
00:18:58 <ais523> the only difference is that if the value is deallocated, the reference becomes invalid, but deallocation is effectively a form of mutation
00:19:09 <shachaf> It seems much more like it should be a property of the read/write operation on the variable.
00:19:27 <ais523> shachaf: well, from a mathematical point of view, it's simplest to initially treat everything as volatile and then potentially allow for optimisations that change the number of reads on something
00:19:48 <ais523> I can see an argument to have a volatile version of lvalue and of rvalue dereferencing, though
00:20:02 <ais523> hmm… half the complexity of lvalues would be simplified if they /couldn't/ be read
00:20:12 <ais523> that'd be a pretty weird language, though
00:20:17 <shachaf> read, read_volatile : Ptr a -> a
00:20:37 <ais523> int X {get; set}; setX(4); setX(getX()+1);
00:21:27 <ais523> I don't see any particular reason why this style of programming wouldn't work, and it's a lot clearer than many others (and it's more or less how object-oriented program treats exposed variables, although probably for a different reason)
00:21:55 <ais523> now pass-by-reference is accomplished via passing the setX or getX /function/ by value
00:21:56 <shachaf> I think maybe C++ was making a change like that?
00:22:09 <ais523> that's most likely for class fields
00:22:13 <ais523> I don't think anyone treats /local/ variables like this
00:22:20 <ais523> (I stole the syntax from C#)
00:22:45 <shachaf> Oh, no, it's Rust: https://doc.rust-lang.org/std/ptr/fn.read_volatile.html
00:23:15 <shachaf> I was talking about the thing I said. I'm not sure what you mean by passing the function by value.
00:23:34 <ais523> I was going to ask "why is that unsafe" and then saw it works on `*` pointers, which would be a good reason
00:24:11 <ais523> re: passing the function by value, I mean you could pass the return value of getX() (i.e. pass by value), or you could pass the getX function itself so that the callee could then call it itself (i.e. pass by reference)
00:24:31 <ais523> like the difference between passing x and passing (int const *)&x in C
00:24:32 <shachaf> Where getX is a closure or something?
00:24:41 <ais523> getX is something like a closure, I think
00:24:54 <ais523> but the point is that the variable X can't be directly referenced at all
00:25:11 <ais523> all you have is its lvalue part setX and rvalue part getX, which correspond to the operations of assigning to it and reading it
00:26:02 <shachaf> It's nice to separate it into the covariant part and contravariant part, I guess.
00:26:46 <ais523> yes
00:27:36 <ais523> anyway, most languages treat variables like products of their lvalue and rvalue; a product's a type of pair where the pair itself acts as a unit, any operation on the pair can say "do this on the LHS" or "do this on the RHS" but the two parts aren't separable (unless you copy out of half of the pair individually)
00:28:16 <ais523> whereas this version of things treats variables like tensors of their lvalue and rvalue; a tensor's a type of pair which is basically just a wrapper for two halves, with the wrapper having no properties of its own, rather each half has its own independent behaviour
00:29:02 <ais523> typically speaking you have to copy a product to act on both halves of it (e.g. in a stack-based language, you'd do dup, then get hold of one half, operate on it, then get hold of the other half using the copy of the pair you made earlier)
00:29:16 <shachaf> I'm not sure I follow.
00:29:28 <ais523> whereas with a tensor, the operation you use to act on the tensor drops it into two halves of its own accord, so if you only act on one you need to explicitly pop the other one
00:29:56 <ais523> shachaf: this is a really confusing subject in general and I'm not all that great at understanding it
00:30:00 <ais523> *at explaining it
00:30:34 <ais523> it almost feels like the tensor/product distinction is the same sort of thing as monads, i.e. people use it all the time when writing in more mathematical languages but often only poorly understand it, except that it isn't well-known that it even is a problem
00:31:03 <shachaf> ski wrote about this a little while ago at http://slbkbs.org/ski-mercury.txt
00:31:07 <ais523> but it basically comes down to what happens when a language has some sort of metadata you can attach to a value (which is very common)
00:32:16 <shachaf> I'd like a language that makes all this very clear, most languages muddle it up or don't support talking about it at all.
00:32:40 <ais523> re: lvalue versus rvalue, OCaml is 100% explicit on the matter
00:33:19 <ais523> using := as lvalue dereference (producing a setter) and ! as rvalue dereference (which should produce a getter, although it actually executes the getter immediately; that's something of a mathematical flaw, I guess)
00:33:21 <shachaf> But can you get a ref to a part of a product inside another ref?
00:33:47 <ais523> no, you can't; that's because OCaml products are products
00:33:54 <ais523> rather than tensors
00:34:05 <ais523> or rather, there's a distinction
00:34:08 <ais523> do we have OCaml in hackego?
00:34:13 <ais523> `` which ocaml
00:34:13 <shachaf> I don't think so.
00:34:14 <HackEso> No output.
00:34:18 <ais523> nope
00:34:31 <ais523> anyway, in OCaml you can't get a ref to anything unless it was declared via the ref keyword
00:34:45 <ais523> so ref (1, 1) has a different type from (ref 1, ref 1)
00:34:51 <shachaf> Right.
00:35:07 <shachaf> This is what most of the explicit-about-refs languages do.
00:35:26 <shachaf> I'm interested in languages that help you talk about memory layout and so on.
00:35:40 <shachaf> When you declare a struct or union in C, what information exactly are you declaring?
00:36:02 <shachaf> I've asked that question before but I'm still not sure I have an answer.
00:36:05 <ais523> well, in the very early days of C, declaring a struct just gave you a list of constants representing memory offsets
00:36:20 <shachaf> In lvalue-land, you're declaring things like: A sizeof, an alignment, an offset for each field.
00:36:24 <ais523> like, if you wrote struct a {int b; int c}, that was more or less equivalent to "const int b = 0; const int c = 4;"
00:36:52 <ais523> (with the exception that struct a would be reported as having size 8 for the rest of the program, affecting things like sizeof, allocation of auto variables, and the like)
00:36:55 <shachaf> In rvalue-land, you're declaring something like, "this is the information that this struct consists of"
00:37:15 <shachaf> The thing in lvalue-land is effectively a memory encoding of the thing in rvalue-land.
00:37:22 <ais523> it feels like it's within the spirit of C for struct fields to not be rvalues at all
00:37:34 <shachaf> When you pass something by value to a function, the calling convention doesn't use the lvalue-land memory layout, it uses something more efficient.
00:37:37 <ais523> that said, I think they actually are in practice
00:37:56 <shachaf> "f().c" is an rvalue
00:38:01 <ais523> yes, as is 2+2
00:38:18 -!- arseniiv has quit (Ping timeout: 252 seconds).
00:38:29 <ais523> functions returning structs is something of a weird case in C; it doesn't feel like it "should" be possible, and in fact many compilers need special cases for it
00:38:45 <shachaf> It seems pretty reasonable to me.
00:39:10 <ais523> `` gcc -x c /dev/stdin <<< 'int main(void) {puts("Hello, world!"); return 0;}'; ./a.out
00:39:13 <HackEso> ​[01m[K/dev/stdin:[m[K In function ‘[01m[Kmain[m[K’: \ [01m[K/dev/stdin:1:17:[m[K [01;35m[Kwarning: [m[Kimplicit declaration of function ‘[01m[Kputs[m[K’ [[01;35m[K-Wimplicit-function-declaration[m[K] \ int main(void) {[01;35m[Kputs[m[K("Hello, world!"); return 0;} \ [01;35m[K^~~~[m[K \ Hello, world!
00:39:34 <ais523> `` gcc -x c /dev/stdin <<< 'int main(void) {puts("Hello, world!"); return 0;}' | cat; ./a.out
00:39:35 <HackEso> ​[01m[K/dev/stdin:[m[K In function ‘[01m[Kmain[m[K’: \ [01m[K/dev/stdin:1:17:[m[K [01;35m[Kwarning: [m[Kimplicit declaration of function ‘[01m[Kputs[m[K’ [[01;35m[K-Wimplicit-function-declaration[m[K] \ int main(void) {[01;35m[Kputs[m[K("Hello, world!"); return 0;} \ [01;35m[K^~~~[m[K \ Hello, world!
00:39:45 <ais523> hmm, what's up with all the terminal control codes
00:39:50 <shachaf> The reason I gave f().c as an example is that it shows that a.b doesn't always mean a thing like *(&a + b_offset).
00:40:09 <ais523> `` gcc -fdiagnostics-color=never -x c /dev/stdin <<< 'int main(void) {puts("Hello, world!"); return 0;}'; ./a.out
00:40:10 <HackEso> ​/dev/stdin: In function ‘main’: \ /dev/stdin:1:17: warning: implicit declaration of function ‘puts’ [-Wimplicit-function-declaration] \ int main(void) {puts("Hello, world!"); return 0;} \ ^~~~ \ Hello, world!
00:40:38 <ais523> `` gcc -fnodiagnostics-show-caret -fdiagnostics-color=never -x c /dev/stdin <<< 'int main(void) {puts("Hello, world!"); return 0;}'; ./a.out
00:40:38 <HackEso> gcc: error: unrecognized command line option ‘-fnodiagnostics-show-caret’; did you mean ‘-fno-diagnostics-show-caret’? \ Hello, world!
00:40:43 <ais523> `` gcc -fno-diagnostics-show-caret -fdiagnostics-color=never -x c /dev/stdin <<< 'int main(void) {puts("Hello, world!"); return 0;}'; ./a.out
00:40:44 <HackEso> ​/dev/stdin: In function ‘main’: \ /dev/stdin:1:17: warning: implicit declaration of function ‘puts’ [-Wimplicit-function-declaration] \ Hello, world!
00:41:09 <shachaf> `runc int main() { puts("hi"); return 0; }
00:41:10 <HackEso> hi
00:41:17 <ais523> shachaf: I agree that C currently works like this; however, I believe that all the cases that force structs to be treated as rvalues are weird special cases that /shouldn't/ have been in C
00:41:25 <zzo38> There is also LLVM, but does not have macros though
00:41:43 <shachaf> ais523: Do you also think struct assignments shouldn't be allowed?
00:41:50 <ais523> yes
00:42:04 <shachaf> Hm. They seem pretty reasonable to me.
00:42:20 <ais523> actually, there's a related question which is something that I've been really interested in over the past few months in general, and past few days more earnestly
00:42:21 <shachaf> What about passing structs as arguments by value?
00:42:42 <ais523> which is that languages seem to often use the same sort of language feature for a) large, complex values, and b) stateful objects
00:42:51 <ais523> I think they should be treated entirely differently
00:43:02 <ais523> things in class a) shouldn't be mutable, things in class b) shouldn't be passable by value
00:43:34 <ais523> quite a few languages are skirting round the edges of this idea but I don't think any has gone the whole way
00:45:39 <shachaf> How would languages be different if they made that distinction?
00:49:58 <zzo38> I did think of a way to make "user primitives" for JavaScript that can implement (a)
00:51:31 <ais523> shachaf: well for example, you'd never need a value/reference distinction
00:51:35 <ais523> in the actual syntax
00:52:00 <ais523> if something is a value, it's always a value; if something's an object, it isn't a value at all, it can only be manipulated via references to it (and those references are values)
00:52:17 <ais523> so the code itself sees only values
00:52:24 <ais523> (objects are manipulated via methods/accessor functions)
00:52:50 <ais523> more controversially, I /also/ think it would be beneficial if objects just persisted forever if they weren't explicitly deallocated, /but/ you could search for objects with particular properties
00:53:15 <ais523> my only argument in favour of this is that for something like the last 10 programs I've tried to seriously write, they'd be more easily written in that style than in a style that tries to maintain indexes manually
00:53:51 <shachaf> Search for?
00:54:57 <zzo38> Garbage collection works for unsearchable objects
00:55:35 <ais523> shachaf: like, there's a function that returns a reference to "the object whose x property is y"
00:56:24 <ais523> zzo38: I know that garbage collection works, however I think that garbage collection of reference-like objects is normally a bad idea, because if a programmer knows what they're doing they typically know the points at which they're supposed to become no longer useful anyway
00:57:06 <zzo38> I am not so sure that is true
00:57:14 <ais523> it's only objects that act like values that really benefit from garbage collection; this is because reference+garabage collect is a more efficient way of implementing the semantics you normally want (which is to replace referencing by copying, and freeing copies that go out of scope)
01:45:11 <esowiki> [[WHY]] M https://esolangs.org/w/index.php?diff=58340&oldid=58103 * Camto * (+54) Add them categories.
02:35:18 -!- oerjan has joined.
02:41:56 <shachaf> boker toevjan
02:43:31 <zzo38> What does that mean?
02:46:32 * oerjan suspects hebrew
02:46:57 * oerjan was right
02:47:08 <oerjan> heichaf
02:47:49 <shachaf> erev toevjan
02:48:11 <shachaf> hm, it's slightly irritating that "morning" and "evenign" are singular in hebrew, but e.g. "noon" is plural
02:50:41 <oerjan> <shachaf> Maybe oerjan remembers. <-- AAAAAAAAAAA
03:04:57 <shachaf> what is it that oerjan remembers? i've forgotten hth
03:14:11 <oerjan> yay
03:14:18 <oerjan> tdh thx
03:15:17 <shachaf> Oh, the thing with differentials.
03:23:34 <zzo38> Now I wrote a document for a internet protocol called Netsubscribe, which I invented, you can read and please to question, complaint, or other comments about it.
03:37:06 <zzo38> It is: http://zzo38computer.org/textfile/miscellaneous/netsubscribe Do you like this?
03:42:02 <esowiki> [[MIX (Knuth)]] https://esolangs.org/w/index.php?diff=58341&oldid=58339 * Zzo38 * (+399) Include the bootstrap card for MIXPC assembler
03:42:54 -!- ais523 has quit (Remote host closed the connection).
03:43:06 -!- ais523 has joined.
03:43:58 <ais523> zzo38: I think the specification could be organised a bit more clearly; for example, I would separate the normative description of the protocol itself from suggestions about how to implement it, and I would move any detailed description of competing protocols and protocols that you plan to replace to a separate section near the end
03:44:46 <ais523> it might also be helpful to separate the description of what data the protocol operates on from the way that those data are represented within the protocol, but I might be wrong about that
03:46:44 <zzo38> ais523: OK, I deleted some of the stuff from the introduction, such as the stuff about other protocols (which was there in order to try to make it more clearly), although one reason I put that there was to clarify it, although ideally it should be clear without.
03:47:05 <ais523> the set of error codes you have is much smaller than in most protocols; I think most protocols eventually discovered that they needed to use a system of error numbers, in which the number encoded some information about the error (so that clients knew how to handle unknown errors) but also just a code describing the cause of the error
03:47:23 <ais523> zzo38: I think that sort of information isn't necessarily useless, but people want to know the information in importance order
03:47:38 <ais523> if you have to read less important information to get to more important information it's easy to get confused
03:48:25 <zzo38> Yes, maybe there should be an error code for a permission error, and for a temporary error.
03:48:47 <zzo38> You can make other kind of suggestions about what kind of error you think needs to be mentioned.
03:49:15 -!- hexfive has joined.
03:49:22 <zzo38> Yes, I could add stuff about relation to other protocols in a section at the end, I will try to do that.
03:51:11 <zzo38> I am not sure how I should organize the suggestions how to implement it as you describe though, and I am not sure about separating the description of what data the protocol operates on from the way that those data are represented within the protocol (you say yourself you may be wrong about that, though)
03:52:19 <ais523> zzo38: well, in RFCs, advice like "don't use gets()" and similar advice about how to implement the protocol securely is often placed in a section called "security implications" at the end
03:55:20 <zzo38> I deleted the part about gets() and fgets(). And you could use fgets() anyways, as long as you check for the presence of the line break so I was wrong about that anyways.
03:58:02 <zzo38> But I will add a section of security implications.
04:00:00 -!- Taneb has quit (Quit: I seem to have stopped.).
04:01:29 -!- Taneb has joined.
04:01:37 <zzo38> Also, do you think there are any security implications that I may have missed?
04:05:13 <ais523> it's hard to get all the security implications first time with a new protocol; so I'd expect anyone to miss some the first time
04:05:24 <zzo38> Ah, OK.
04:05:27 <ais523> but I'm not really used to this protocol so I'd be even more likely to miss them
04:06:45 <zzo38> (But that is also why I ask; even if I might miss some that someone else doesn't, even if it is likely to miss them, there is also the possibility that there is one you don't miss, I suppose.)
05:20:56 -!- ais523 has quit (Quit: quit).
05:32:22 -!- xkapastel has quit (Quit: Connection closed for inactivity).
06:31:42 -!- nfd has joined.
06:35:16 -!- nfd9001 has quit (Ping timeout: 260 seconds).
06:38:55 -!- oerjan has quit (Quit: Nite).
06:42:13 <shachaf> @ask ais523 I've forgotten your idea involving generalizing Rust's ?, is it written somewhere?
06:42:13 <lambdabot> Consider it noted.
08:32:27 <shachaf> @ask ais523 I vaguely remember seeing a Haskell proposal that would translate something like do { f (<- a) (<- b) } into do { x <- a; y <- b; f x y } and so on. Do you remember something like that?
08:32:27 <lambdabot> Consider it noted.
08:32:35 <shachaf> Or oerjan or Taneb or whoever
08:40:35 -!- xkapastel has joined.
09:15:46 -!- nfd has quit (Ping timeout: 250 seconds).
09:51:12 -!- AnotherTest has joined.
10:09:56 <esowiki> [[Talk:Brainfoctal]] https://esolangs.org/w/index.php?diff=58342&oldid=58331 * Salpynx * (+1401) /* Numbering system */ great suggestion, thank you!!
10:10:37 -!- nfd has joined.
10:18:43 -!- imode has quit (Ping timeout: 246 seconds).
11:10:16 -!- xkapastel has quit (Quit: Connection closed for inactivity).
11:20:42 <shachaf> @tell ais523 Ah, it's https://github.com/ghc-proposals/ghc-proposals/pull/64
11:20:42 <lambdabot> Consider it noted.
11:21:47 <shachaf> @tell ais523 Oh, and http://docs.idris-lang.org/en/latest/tutorial/interfaces.html#notation is even closer
11:21:47 <lambdabot> Consider it noted.
11:53:55 -!- Lord_of_Life has quit (Ping timeout: 246 seconds).
11:56:20 -!- Lord_of_Life has joined.
11:56:20 -!- Lord_of_Life has quit (Changing host).
11:56:20 -!- Lord_of_Life has joined.
12:03:30 -!- wob_jonas has joined.
12:12:13 <wob_jonas> hmm
12:12:37 <wob_jonas> `dateu
12:12:38 <HackEso> 2018-11-12 12:12:38.052784510+00:00
12:25:54 -!- nfd has quit (Ping timeout: 252 seconds).
12:40:08 <esowiki> [[Falsebrain9Q+Fishload]] https://esolangs.org/w/index.php?diff=58343&oldid=57914 * Joshop * (+6)
13:23:34 -!- moei has joined.
14:09:25 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
14:17:12 -!- john_metcalf has joined.
14:43:58 -!- arseniiv has joined.
14:52:41 -!- Essadon has joined.
15:03:11 <ski> shachaf : "The reason I gave f().c as an example is that it shows that a.b doesn't always mean a thing like *(&a + b_offset)." -- hm, i suppose that goes into the difference between "persistent" vs. "transient" values (objects ?). cf. the C++ kerfuffle with "rvalue references" in relation to "move semantics" (and "perfect forwarding")
15:03:16 <ski> shachaf : "ais523 : I've forgotten your idea involving generalizing Rust's ?, is it written somewhere?" -- hm, i vaguely remember thinking and talking about something like that, on another channel
15:03:36 <ski> (partly in relation to my "reflective syntax" idea)
15:05:10 <ski> shachaf : fwiw, did you add some follow-up comments or questions after that (paste) snippet ? i think i intended to look and continue that conversation, but i got busy and then forgot, and now it's out of my scrollback
15:18:15 -!- Sgeo__ has joined.
15:20:07 -!- MDead has joined.
15:20:51 -!- Sgeo_ has quit (Ping timeout: 260 seconds).
15:21:12 -!- MDead_ has joined.
15:22:35 -!- MDude has quit (Ping timeout: 244 seconds).
15:25:15 -!- MDead has quit (Ping timeout: 264 seconds).
15:59:03 -!- sleepnap has joined.
16:15:19 -!- xkapastel has joined.
16:53:12 -!- Phantom_Hoover has joined.
17:12:00 -!- imode has joined.
18:03:59 -!- ais523 has joined.
18:04:07 <ais523> @messages-
18:04:07 <lambdabot> shachaf asked 11h 21m 54s ago: I've forgotten your idea involving generalizing Rust's ?, is it written somewhere?
18:04:07 <lambdabot> shachaf asked 9h 31m 40s ago: I vaguely remember seeing a Haskell proposal that would translate something like do { f (<- a) (<- b) } into do { x <- a; y <- b; f x y } and so on. Do you remember
18:04:07 <lambdabot> something like that?
18:04:07 <lambdabot> shachaf said 6h 43m 24s ago: Ah, it's https://github.com/ghc-proposals/ghc-proposals/pull/64
18:04:07 <lambdabot> shachaf said 6h 42m 19s ago: Oh, and http://docs.idris-lang.org/en/latest/tutorial/interfaces.html#notation is even closer
18:04:48 <ais523> shachaf: I don't think I posted my generalized-? idea anywhere but IRC, and it isn't fleshed out into a formal specification or anything like that
18:06:57 <ais523> perhaps we should try to express it in Haskell notation or something like that
18:07:28 <ais523> the basic idea is that x? converts the rest of the block into a function and gives it as an argument to x
18:07:36 <ais523> which can run it once, or not run it, or run it repeatedly
18:08:05 <ais523> and the f (<- a) (<- b) idea that you mention would be necessary so that code like f(a?)(b?) would be sensible
18:09:22 <ais523> Idris ! may be equivalent, although it's weird seeing it around presumably nullary terms like "print"
18:09:37 <ais523> err, not nullary, but returning a monad that contains unit
18:10:36 <ais523> I guess that works even in Rust
18:11:33 <ais523> there's no reason why you couldn't have a Result where the "non-error" case contained no data
18:11:34 <ais523> so (print x)? would mean "print x, and return on failure, otherwise continue"
18:11:40 <ais523> that's probably a common idiom in Rust already, come to think of it
18:11:56 -!- ais523 has quit (Quit: sorry for my connection).
18:12:08 -!- ais523 has joined.
18:19:06 <ski> (s/returning a monad that contains unit/returning a monadic action whose result is unit/)
18:20:17 <ski> <ski> shachaf : "ais523 : I've forgotten your idea involving generalizing Rust's ?, is it written somewhere?" -- hm, i vaguely remember thinking and talking about something like that, on another channel (partly in relation to my "reflective syntax" idea)
18:22:29 <ais523> I guess I'm mostly thinking about this ? proposal for less heavily functional languages
18:23:03 <ais523> does Haskell have anything resembling a promise library? or does it not need one, because the language is lazy anyway?
18:23:45 <ais523> …actually, the problem with Haskell wouldn't be blocking until the result arrives, but starting to ask for the result before you need it
18:23:56 <ais523> so that it's there when you do
18:24:19 <ais523> something that was discussed on a previous work project of mine, but not implemented, was "parallel call by need evaulation"
18:24:23 <ais523> *evaluation
18:24:28 -!- xkapastel has quit (Quit: Connection closed for inactivity).
18:25:02 <ais523> the idea is that when you see code "f x", you start evaluating x in the background while calling f; if f turns out to return without actually needing the value of x, you halt/discard the background evaluation
18:25:10 <ais523> (obviously, this only really works in a pure language)
18:25:30 <ais523> that style would make promises entirely irrelevant
18:28:04 <ski> iirc, the Rust `?' thing was (originally ?) about operations returning a result of option type ?
18:28:13 <ais523> anyway, re the "monad that contains" thing, I apologise for the sloppy language (but think "monadic action whose result is" is misleading; it's not really like a result at all, more like an argument)
18:28:55 <ais523> Rust's ? was probably first used with Result (the equivalent of Haskell's Either) as that's the type which most commonly needs it in practice
18:29:08 <ski> yea, i just like to emphasize that a monad is not a run-time value, really. a value of monadic type is something else
18:29:42 <ski> your description of `x?' above seemed related to CPS ?
18:30:07 <zzo38> I don't really like "monad that contains" or "monadic action whose result is". Some monads neither contain such a value nor perform an action having a result
18:30:24 <ski> example ?
18:30:35 <ais523> sk;
18:30:43 <ais523> *simplest example is probably the void monad
18:30:46 <ski> (i agree about not "containing" a value)
18:30:55 <ais523> although, actually, no, that doesn't support return
18:31:08 <zzo38> And then there is stuff that can contain a value of that type but might not, such as Maybe and []
18:31:12 <ski> i'm not sure what you have in mind by that term
18:31:15 <ais523> I guess I don't intuitively see why a monad should
18:31:34 <ais523> ski: "Maybe except it always contains Nothing", for example
18:31:42 <ski> `Maybe' expresses the possibility of not ending up with a result
18:31:43 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: Maybe': not found
18:31:53 <ski> that's the effect that the `Maybe' monad expresses
18:32:23 <ais523> I guess the difference in thought between me and everyone else is that I see monad actions as not necessarily belonging to any particular monad type
18:32:31 <ski> generally, one could say that all behaviour of an action of some monad, apart from simply "yielding" a single result, is an effect
18:32:46 <ais523> Haskellers think in terms of "Maybe Integer", whereas I think more in terms of "Nothing" or "Just 6"
18:33:00 <ais523> as being of type (Monad x) => x Integer
18:33:00 <ski> so, for `Maybe' an effect is not giving a result value. for list, an effect is not giving a result value, or giving multiple result values
18:33:22 <ski> for state, an effect is depending on, and possibly changing, the implicit state
18:33:37 <ais523> ski: why are you treating the case where one result value is available as a special case?
18:33:57 <oren> hmmm, can you compose types like "SuchThat f Integer"?
18:34:01 <ais523> because that's what "pure"/"return" does, and thus it isn't an effect by definition?
18:34:14 <ski> ais523 : well, `Nothing' is of type `Maybe Integer', not of type `Monad x => x Integer', afaiac -- i'm not following your line of thought here, elaborate ?
18:34:16 <oren> e.g. an integer such that f returns true on it?
18:35:05 <ski> ais523 : "why are you treating the case where one result value is available as a special case?" because that's the non-effectful ("pure") case, which is what the `return'/"unit" monadic operation (not that greatly named in Haskell) gives you
18:35:36 <ais523> ski: I know, it isn't of type Monad x => x Integer; it's more that for me, the important thing about Nothing and Just 6 is that (Nothing (>>=)) and ((Just 6) (>>=)) are funcitons that take (Integer -> a) arguments
18:35:48 <ski> oren : in dependent typing, you can
18:36:08 <ais523> …actually, I think I've realised what's up with my understanding; I think of monads as being /just/ the >>=
18:36:14 <ais523> without caring about the "return"/"pure" part of the mat all
18:36:29 <ski> well, both are important
18:36:38 <ski> while admittedly, one is more interesting than the other
18:37:00 <ski> but when branching, you want the ability/choice to not do anything interesting in one branch
18:38:24 <ski> hm, thinking of `(Nothing >>=)' and `(Just 6 >>=)' again to me suggests thinking about continuations (CPS, or in this case, the Codensity monad, which is a kind of optimization that you sometimes want to apply)
18:38:34 <ais523> …and thinking about this even more: the behaviour of ">>=" is effectively part of the monad /action/, whereas the behaviour of "return"/"pure" isn't, it's only part of the monad /type/
18:38:41 -!- wob_jonas has joined.
18:38:59 <ski> well, in a sense, both are trivial
18:39:09 <ski> both are about *sequencing* some kind of interesting *effects*
18:39:12 <wob_jonas> ohai
18:39:18 <ski> but neither of them actually expresses an interesting effect
18:39:25 <oren> because if you can have a SuchThat f Integer then you can instead of hacing a function return a Maybe Integer it can *take* a SuchThat f Integer
18:39:50 <ski> if you *only* have `return' and `(>>=)' operations of a monad to work with, that's (close to) useless, you can't do much useful stuff
18:39:55 <ais523> so suppose we have code like (Haskell) do {a1 <- a; b1 <- b; return (a+b)}
18:40:11 <ais523> is it possible to make something like that work when a and b belong to /different/ monads? my guess is no
18:40:22 <ais523> err
18:40:25 <ski> (actually, with higher-order operations, you can do some useful things. but only as library operations that eventually will have to be applied in a particular situation, with a particular monad with more operations available)
18:40:27 <ais523> do {a1 <- a; b1 <- b; return (a1+b1)}
18:40:45 <ski> "monad" is like an abstract data type interface, like "priority queue"
18:40:57 <ais523> yes
18:41:19 <ski> but, knowing that you have a priority queue, but not being given any additional, implementation-specific operations, for it, you can still do useful things
18:41:24 <ais523> I mean, and b have two different types, and each such class belongs to the typeclass Monad
18:41:25 <ski> with a monad, not so much
18:42:01 <ski> typically, you want to have some extra operations, like state operations, non-deterministic operations, exception operations, parsing, concurrency-related, continuation stuff, &c.
18:42:31 <ski> "is it possible to make something like that work when a and b belong to /different/ monads? my guess is no" -- in general, no -- in some particular cases, it may be possible
18:42:39 <ais523> OK, I think I know what goes wrong in Haskell; you'd need /two/ returns, the inner one creating a value that's pure with respect to b's effects, the outer one creating a value that's pure with respect to a's effects
18:43:09 <ski> well, that can also be useful, in certain situations
18:43:13 <ski> (but that's a different thing)
18:43:14 <ais523> yes
18:43:40 <ais523> the closest you can get to what I want in Haskell is do {a1 <- a; return do {b1 <- b; return (a1+b1)}}
18:43:40 <ski> oren : yep
18:44:34 <ski> let's say `a' in the state monad (`State t', say, `t' being the type of the state which the computation depends on, and may change)
18:44:47 <ski> and `b' in the environment/input/reader monad (`Reader t')
18:45:24 <ski> so, you're not interested in the final value of the state, and so you want to avoid bothering getting back the final state result from the "rightmost-leaning branch" in your computation tree
18:46:14 <ski> so, here we'd have a variant of `(>>=)', of type `m a -> (a -> n b) -> n b', where `m' here would be `State t', and `n' would be `Reader t'
18:48:36 <ski> (we also have a conversion of type `m a -> n a', which here just discards the final state, and `n a -> m a', which copies over the input state. the former operation is a post-inverse to the latter, but not the other way around. then there's some laws of interaction between these two conversions, and the `(>>=)' above, and the usual monadic operations)
18:49:03 <shachaf> ski: I don't remember what I wrote after that conversation, I didn't log it or anything.
18:49:24 <ski> (another example would be a version of lists, where we only care about the final number of solutions. so then `m = []' and `n = Const Integer' or somesuch)
18:49:30 <ski> shachaf : fair enough
18:51:02 <ski> ais523 : hm, so perhaps you could elaborate on "…and thinking about this even more: the behaviour of \">>=\" is effectively part of the monad /action/, whereas the behaviour of \"return\"/\"pure\" isn't, it's only part of the monad /type/" ?
18:52:04 <shachaf> ais523: Maybe you mean (Monad x *> x Integer) instead of (Monad x => x Integer)?
18:53:47 * ski sighs about presuppositions
18:54:41 -!- ais523 has quit (Remote host closed the connection).
18:54:59 -!- ais523 has joined.
18:55:08 <ais523> ski: well, the only "general-purpose" thing you can do with a monad action is to use its >>= (producing another monad action of the same type)
18:56:23 <ais523> so, in a sense, the monad action "is" its >>=, because anything else you could do with it is a special case
18:56:23 -!- ais523 has quit (Remote host closed the connection).
18:56:35 -!- ais523 has joined.
18:56:47 <ais523> <ais523> meanwhile, "return"/"pure" doesn't take a monad action as argument at all, it's a constructor for monad actions
18:56:58 <ais523> and the monad action you construct doesn't actually have anything to do with the monad it belongs to
18:57:10 <ais523> because all return values from "return"/"pure" have the /same/ >>=
18:57:49 <ais523> (specifically, "(>>=) (return x)" = "(\f -> return (f x))")
18:58:10 <ski> if you don't have access to other monadic operations, for some monad `m', than `return' and `(>>=)', then you can only build actions like e.g. `return x >>= \y -> return (f y)' which (by monad law) is equal to `return (f x)'
18:58:30 <ski> so, every action of type `m a' you can build will then be equal to `return x', for some `x'
18:58:35 <ski> that's not terribly exciting
18:58:55 <ais523> ski: I guess I'm assuming I have access to some constructors that return impure monad actions
18:59:19 <ski> (you can do a little more interesting stuff if you take monadic callback arguments, and express patterns of compsing them in particular ways, possibly while simutaneously traversing a data structure, or somesuch)
18:59:57 <ais523> …actually, I guess that what I'm doing is not wanting to draw a distinction between any instance of "return 4"
18:59:59 <wob_jonas> ski: I don't think you can. there's the monad associativity law that says that can't be more interesting.
19:00:17 <shachaf> I like the thing Oleg mentioned about how you can write dne :: (forall m. Monad m => (a -> m Void) -> m Void) -> a
19:00:30 <ais523> I don't see any reason why "Just 4" and "[4]" should be considered different values
19:00:39 <ski> wob_jonas : (simple) examples of such "slightly more interesting" operations i have in mind is `sequence' and `mapM'
19:01:11 <ski> (the associativity law says that the "bracketing/grouping" doesn't matter, only the order (may) matter)
19:01:11 <shachaf> It was on http://okmij.org/ftp/Computation/lem.html which is now a 404? Oh no
19:01:57 <ski> ais523 : the reason i was "singling out" `Just 4' and `[4]' above was that they can be expressed as `return x', for some `x'
19:02:12 <ski> and `return' is *the* way to express an "efectfully trivial" action
19:02:12 <shachaf> ski: Did I talk mention my weird "rest of block" programming language idea to you?
19:02:20 <ski> shachaf : i don't think so
19:02:56 <ski> ais523 : i agree this is a bit like singling out the integer zero from all the other integers ("because adding it to something doesn't change the result", so to speak)
19:03:09 <ais523> ski: right
19:03:44 <ais523> I guess from my point of view, I don't consider "Just 4" and "[4]" to be special in a different sense: the two values are indistinguishable using monad operations, even in an impure language
19:04:10 <ski> from my POV, monads are for capturing/expressing "effects". `return' is used when the interface (the type) allows the possibility of an effect, but in this particular case, we don't want one
19:04:28 <ski> (but if we never want one, then we don't need to use a monad there)
19:04:34 <ais523> if you imagine an impure language that has monads, you can do things like "x >>= \y.(unsafePerformIO (putStrLN (show y)))"
19:04:52 <ais523> and that lets you distinguish between different monadic actions in x, but you can't distinguish between the various sorts of return 4
19:05:09 <ski> hm, not sure what you have in mind by "the two values are indistinguishable using monad operations, even in an impure language"
19:05:45 <ski> ais523 : hm, what is the monad used for `(>>=)', there ?
19:06:14 <ais523> well, «(return 4) >>= (\y.(unsafePerformIO (putStrLn (show y)))» is, by monad laws, equivalent to «unsafePerformIO (putStrLn "4")»; and it doesn't matter what the monad you use is
19:06:34 <wob_jonas> but surely [4] and (Just 4) can't be completely interchangable if show can distinguish them
19:06:39 <ais523> likewise, in the original example, I'm assuming we don't know what type x has, just that it has type (Monad m) => m Integer
19:06:50 <ski> it looks to me like the type of the latter would be `()'/`unit'/`void', or however you spell it
19:07:06 <ski> which doesn't seem to fit the pattern `m a', of a monad `m' applied to a "monadic result type" `a'
19:07:21 <ais523> ski: sorry, I forgot a "return"
19:07:25 <ski> ah, ok
19:07:49 <ais523> «x >>= \y.(return (unsafePerformIO (putStrLn (show y))))»
19:08:01 * ski assumes ais523 means : just that is has type `m Integer', for some monad `m' (iow for some `m' satisfying `Monad m')
19:08:09 <wob_jonas> it's not like show is magical or breaks monad laws or purity or anything there
19:08:14 <ais523> ski: yes
19:08:36 <ski> (that's why i sighed about presuppositions before. i see this sort of confusion in #haskell all the time)
19:08:37 <shachaf> I think maybe you're thinking in terms of continuations, and how "return x" always calls its continuation exactly once, or something?
19:08:55 <ais523> wob_jonas: oh, I'm assuming that our monad action x has an unknown type other than being a monad action which takes functions that take integers in its >>=, so we can't give it directly as an argument to show because we don't know it implements Show
19:08:57 <ski> ais523 : anyway, i'm still now sure where you're going with this "indistinguishable" business
19:09:51 <ais523> ski: I guess I'm imagining a language with a weaker type regime than Haskell (possibly even untyped), in which case all possible return values from "return 4" are the same value, given that you have no way to distinguish between them
19:10:16 <ski> hm, it seems to me that's already the case in Haskell
19:10:19 <ais523> so if we want a value that's "Maybe Integer" we have two possibilities: a) "return n" for any Integer n; or b) "Nothing"
19:10:36 * ski nods
19:12:21 <shachaf> I think Maybe and [] are maybe misleading, especially since Maybe is just an affine special case of [].
19:12:27 <wob_jonas> ah, so like a... language with a different type system, and Monad defined such that return isn't a method, but a function that doesn't depend on the monad tycon?
19:12:29 <shachaf> Say "m" is (e ->) or something.
19:12:53 <ais523> shachaf: which monad is that? Reader?
19:13:04 <shachaf> Yes.
19:13:06 <ais523> wob_jonas: right
19:13:31 <shachaf> OK, I guess I might see what you're getting at
19:14:11 <ais523> shachaf: so with Reader, you have "return 4" being "\x.4", and you can likewise perform operations on that without knowing what x is
19:14:15 <wob_jonas> ais523: but then what would the signature of whatever becomes of the (>>=) method in that different Monad be like?
19:14:43 * ski isn't even sure what we're currently discussing, anymore
19:14:47 <shachaf> ais523: I don't think the >>=(\y.unsafePerformIO (putStrLn (show y))) thing makes sense, though
19:14:50 <ais523> wob_jonas: same as for any monad
19:14:59 <ais523> :t (>>=)
19:15:01 <lambdabot> Monad m => m a -> (a -> m b) -> m b
19:15:13 <ais523> shachaf: why not?
19:15:52 <wob_jonas> ais523: but then how could that work on both monads created by return and monads created in other ways?
19:16:04 <wob_jonas> I dunno
19:16:42 <ski> (s/monads/monadic actions/, sorry to bother)
19:17:11 <shachaf> ais523: Which value would that call the continuation with?
19:17:26 <ais523> OK, let's look at it this way: suppose we have an operator, let's call it (>>='), which has type (Monad m1, Monad m2) => m1 a -> (a -> m2 b) -> ? b, where ? is some monad
19:17:40 <ski> (well, have fun. i have to leave presently. will perhaps check in later)
19:17:42 <ais523> the question is, what type should ? have?
19:18:02 <ais523> and I think the answer is "in general you can't answer this, but for many specific cases there's a reasonable answer"
19:18:17 <ais523> for example, if either m1 or m2 is Identity, then you can make ? work as the other of the two monads
19:18:33 <wob_jonas> how did we even get here from places in structure fields?
19:18:37 <ais523> and if m1 = m2, then the unknown monad at the end is the same thing
19:18:43 <wob_jonas> or, um, how did you get here while I was not looking?
19:18:59 <ais523> wob_jonas: well, this sort of topic is something that shachaf and I have been discussing on and off for weeks
19:19:53 <shachaf> wob_jonas: This is an orthogonal discussion to the one about structs and lvalues, I think.
19:20:05 <wob_jonas> ok
19:20:14 <ais523> now, if we consistently use >>=' rather than >>=, then a) all existing Haskell code works because m1 and m2 will always have the same type, b) we can consistently define (return a) using the return from Identity, rather than using the original monad, and things will still work
19:22:23 <ais523> …so I guess what I want is a world in which all monads are associative in the sense that Monad1 (Monad2 x) and Monad2 (Monad1 x) are the same type
19:22:48 <wob_jonas> ais523: but isn't that impossible?
19:22:55 <ais523> maybe I should try to write a concrete language like this and see where it goes wrong
19:23:02 <ais523> wob_jonas: it depends on how many monads you support
19:23:12 <ais523> it's certianly possible if you have only a small whitelist of monads
19:23:14 <wob_jonas> well sure, if you only have Identity and nothing else that it could work
19:23:42 <ais523> for example, we could combine Maybe and List by deleting Nothiing-valued list elements
19:24:37 <shachaf> Something like https://en.wikipedia.org/wiki/Distributive_law_between_monads
19:24:49 <shachaf> I think I remember something about a system that used this? But I don't remember the details
19:27:44 <ais523> actually, an even better way to think about this is to think about the mathematical definition of monads (which uses two operations, one of type (x → m x), one of type (m m x → m x)); the ideal would be for the (m m x → m x) to work with two /different/ ms on the LHS
19:28:18 <ais523> in Haskell, at the moment, it's common to use monad transformers for that sort of thing
19:28:44 <ais523> e.g. it's easy enough to write a function (Reader (IO x)) → ((ReaderT IO) x)
19:29:01 -!- nfd has joined.
19:29:27 <ais523> …do monad /transformers/ always commute with each other? my guess is "not always, but they often do"
19:29:50 <shachaf> No
19:30:00 <shachaf> Monad transformers are kind of ad-hoc
19:30:14 <wob_jonas> they don't commute
19:30:22 -!- xkapastel has joined.
19:38:56 <shachaf> ski: So the idea is that you have a bunch of control flow things that affect "the rest of the block"
19:39:13 <shachaf> ski: Like { if(p); ... } for what's normally written as if (p) { ... }
19:39:27 -!- john_metcalf has quit (Ping timeout: 240 seconds).
19:39:31 <shachaf> And { x := for(xs); ... } for what's normally for (x : xs) { ... } or something
19:40:19 <shachaf> I now think that maybe this should be marked more explicitly, something like { if(p)`; ... }, where ` on a value means "pass the rest of the block as a continuation"
19:41:14 <shachaf> I think this is maybe similar to delimited continuations in a restricted form, with {} having a role similar to reset?
19:41:23 <shachaf> And { A; B; C; } meaning { A; { B; C; } }
19:43:49 <shachaf> Do you know of something like that?
19:44:19 <wob_jonas> yeah, you've asked about that earlier here, I think
19:44:39 <zzo38> I did think some time I wanted to have the possibility to have a macro in JavaScript that allows passing the rest of the function as a continuation.
19:44:53 <wob_jonas> there's prolog's nondeterminism which you could think of as a special case of that
19:55:48 <wob_jonas> but it's not delimited, it takes the whole rest of the run of the program, not just the rest of the "block"
19:58:28 <ais523> well, unless you have an alternative (based on ; or on a second definition of the same predicate)
20:37:47 <zzo38> I have now added two new responses to the Netsubscribe protocol, which are & (deferred processing) and T (timeout).
20:42:05 <esowiki> [[Esolang:Featured languages/Candidates]] https://esolangs.org/w/index.php?diff=58344&oldid=57018 * Camto * (+69) Burlesque
20:44:41 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
20:45:00 -!- wob_jonas has joined.
20:45:04 -!- wob_jonas has quit (Client Quit).
21:05:16 <esowiki> [[A]] https://esolangs.org/w/index.php?diff=58345&oldid=58336 * Cortex * (+23)
21:06:20 <esowiki> [[A]] https://esolangs.org/w/index.php?diff=58346&oldid=58345 * Cortex * (+0) /* Numbers from 1 to 10 */
21:11:34 <esowiki> [[A]] https://esolangs.org/w/index.php?diff=58347&oldid=58346 * Cortex * (+168)
21:11:58 <esowiki> [[A]] https://esolangs.org/w/index.php?diff=58348&oldid=58347 * Cortex * (+4)
21:32:16 <esowiki> [[Web framework list]] M https://esolangs.org/w/index.php?diff=58349&oldid=50039 * Camto * (+21) Retrieved from Wayback Machine.
21:52:52 -!- moei has quit (Quit: Leaving...).
22:37:38 <esowiki> [[User:JonoCode9374]] https://esolangs.org/w/index.php?diff=58350&oldid=57956 * JonoCode9374 * (+76)
23:14:57 -!- sleepnap has quit (Quit: Leaving.).
23:33:27 -!- AnotherTest has quit (Ping timeout: 240 seconds).
23:37:38 -!- tromp has quit (Remote host closed the connection).
23:37:54 -!- tromp has joined.
23:40:34 -!- Essadon has quit (Quit: Qutting).
23:53:23 -!- Lord_of_Life_ has joined.
23:56:36 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
23:56:37 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
23:56:37 -!- Lord_of_Life has quit (Changing host).
23:56:37 -!- Lord_of_Life has joined.
00:04:28 <zzo38> What port number should be in use for Netsubscribe protocol?
00:08:11 <ais523> zzo38: if it ever becomes popular enough a number would likely be officially assigned; if not, people will use their own numbers, but I suggest you recommend a number that currently isn't in common use
00:08:29 <ais523> there are lists of port numbers in common use, I think, so you could find such a list and pick an arbitrary number that isn't on it
00:10:56 -!- ATMunn has quit (Quit: lol rip).
00:11:08 -!- ATMunn has joined.
00:12:37 <fizzie> Wikipedia's [[List of TCP and UDP port numbers]] is a pretty reasonable one, including both official and unofficial assignments.
00:12:41 <esowiki> [[High Rise]] N https://esolangs.org/w/index.php?oldid=58351 * Ais523 * (+9511) about time I wrote this up
00:12:54 <zzo38> Yes, I did find that
00:13:14 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58352&oldid=58338 * Ais523 * (+16) /* H */ +[[High Rise]]
00:13:42 <esowiki> [[User:Ais523]] https://esolangs.org/w/index.php?diff=58353&oldid=58062 * Ais523 * (+15) +[[High Rise]]
00:14:20 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:21:31 <zzo38> I am not sure which one I should use, though.
00:27:02 <zzo38> Perhaps should trying to figure out which ones are not officially assigned and that other software that uses them is unlikely to be running on the same computer.
00:28:42 <zzo38> What number is your suggestion?
00:35:01 <ais523> why not choose one at random (that's above 1024), and reroll until you find one that isn't in use? that's normally a good way to reduce the chances of collisions
00:37:09 <zzo38> OK, I suppose that could be used.
00:43:40 <zzo38> IANA says that 9296 is currently unassigned, and Wikipedia does not list a use of that number either.
00:45:28 -!- ais523 has quit (Remote host closed the connection).
00:45:48 -!- ais523 has joined.
00:48:39 <zzo38> Now you can read the new version of the protocol document, because I have made many changes. I will also try to start to implement
00:56:17 -!- moony has quit (Excess Flood).
00:56:40 -!- moony has joined.
01:09:01 -!- tromp has quit (Remote host closed the connection).
01:09:39 -!- tromp has joined.
01:13:15 -!- oerjan has joined.
01:35:01 -!- arseniiv has quit (Ping timeout: 246 seconds).
01:41:08 -!- ais523 has quit (Quit: quit).
02:08:08 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
02:11:04 -!- Lord_of_Life has joined.
02:11:05 -!- Lord_of_Life has quit (Changing host).
02:11:05 -!- Lord_of_Life has joined.
03:08:07 -!- Bowserinator has quit (Quit: Blame iczero something happened).
03:08:23 -!- Bowserinator has joined.
03:09:07 <esowiki> [[Web framework list]] M https://esolangs.org/w/index.php?diff=58354&oldid=58349 * Oerjan * (-18) /* Esoteric frameworks for ordinary languages */ Template
03:28:56 <oerjan> @ask shachaf regarding your { if(...); ... } stuff, have i reminded you about Raph Levien's continuation language IO yet?
03:28:56 <lambdabot> Consider it noted.
03:29:42 * oerjan misspelled both parts of the name before looking it up
03:38:10 <shachaf> @messages-loer
03:38:10 <lambdabot> oerjan asked 9m 14s ago: regarding your { if(...); ... } stuff, have i reminded you about Raph Levien's continuation language IO yet?
03:38:27 <shachaf> I don't think so.
03:41:04 <shachaf> What is it?
04:02:53 <oerjan> http://canonical.org/~kragen/raph-io.html
04:03:21 -!- ATMunn has quit (Quit: lol rip).
04:03:33 -!- ATMunn has joined.
04:06:33 <esowiki> [[W]] https://esolangs.org/w/index.php?diff=58355&oldid=58233 * Cortex * (+69)
04:07:54 <esowiki> [[TEPCS]] https://esolangs.org/w/index.php?diff=58356&oldid=58246 * Cortex * (+24)
04:09:21 <esowiki> [[A]] https://esolangs.org/w/index.php?diff=58357&oldid=58348 * Cortex * (+99)
04:16:33 <oerjan> http://hackage.haskell.org/package/Ganymede is an implementation
04:34:16 -!- ATMunn has quit (Quit: lol rip).
04:34:28 -!- ATMunn has joined.
04:38:10 <zzo38> I look at the document of siginfo_t structure. I am not sure what use si_ptr is (since it is probably an address belonging to a different process), and I don't know why it does not include SIGPIPE.
04:59:43 <shachaf> Are Io continuations delimited?
04:59:55 <shachaf> I can't find much information about it. Maybe I can find the paper.
05:02:03 <zzo38> I don't know
05:13:34 <oerjan> shachaf: no
05:14:29 <oerjan> well, not that i've seen. i think they're pretty minimalistic.
05:15:11 <shachaf> I can't tell whether delimited continuations are more or less minimalistic than regular continuations.
05:34:29 <oerjan> well i mean, they're pretty much just lambda expressions that have no result but always just call another one
05:35:00 <shachaf> Delimited continuations, regular continuations, or Io things?
05:35:11 <oerjan> io things
05:35:20 <oerjan> it's a language where everything is CPS
05:39:40 -!- fungot has quit (Ping timeout: 272 seconds).
05:39:49 -!- fungot has joined.
05:50:06 -!- hexfive has quit (Quit: WeeChat 2.2).
07:46:13 -!- oerjan has quit (Quit: Nite).
08:08:15 -!- sprocklem has quit (Quit: brb).
08:15:35 -!- sprocklem has joined.
08:32:58 -!- tromp has quit (Remote host closed the connection).
08:33:14 -!- tromp has joined.
08:34:28 -!- xkapastel has quit (Quit: Connection closed for inactivity).
08:42:30 -!- joast has quit (Ping timeout: 252 seconds).
08:48:41 -!- imode has quit (Quit: WeeChat 2.3).
08:57:55 -!- tromp has quit (Remote host closed the connection).
08:58:29 -!- tromp has joined.
09:10:30 -!- tromp has quit (Remote host closed the connection).
09:10:43 -!- tromp has joined.
10:11:24 -!- AnotherTest has joined.
10:48:45 -!- wob_jonas has joined.
10:50:02 <wob_jonas> "<ais523> there are lists of port numbers in common use, I think, so you could find such a list and pick an arbitrary number that isn't on it" => Yeah, the problem is that there are only 65536 port numbers each for TCP and UDP (even in IPV6), and a large range of that is generally wanted for non-common port numbers as the other side of connections.
10:50:46 <wob_jonas> There's some tricky modern solution where there's a directory service per server where you can query the port number for a service based on some name that can be longer than two bytes, but I'm not sur how it works.
10:51:43 <wob_jonas> Or, for many protocols, you can just run multiple things on the same port and differentiate by content, such as on a HTTP or HTTPS port and differentiate by the URL, or different versions of the same protocol by some headers.
10:53:18 <wob_jonas> zzo38: in this case for usenet, if you're designing a protocol that tries to replace an old one, you might want a mechanism where one side connects to whatever is the normal port for usenet, and by some handshake it can tell whether the other side supports the newer protocol, or it has to fall back to the older protocol instead.
10:54:21 <wob_jonas> Also, don't use port number 0, the unix socket interface is badly designed and doesn't easily allow you to bind to it.
10:54:55 <wob_jonas> (The system calls interpret port number 0 in bind as letting the tcp/udp layer choose a port, which you can query with getsockname.
10:59:09 <wob_jonas> This dispatching on a single connection still works later if the client is set to just disconnect if the new protocol is not available.
11:00:45 <wob_jonas> zzo38: http://man7.org/linux/man-pages/man2/sigaction.2.html about siginfo_t
11:09:42 <wob_jonas> "I am not sure what use si_ptr is (since it is probably an address belonging to a different process)" => it's an opaque value that the kernel doesn't care about, it doesn't need to be a real pointer although it could be, it's between the two processes to define its meaning. it's a pointer type to make sure it's wide enough.
11:10:21 <wob_jonas> You could have it be an opaque handler small integer, or a pointer into a shapred memory region, possibly relative to its base, or a file offset, or whatever.
11:13:17 <wob_jonas> zzo38: re SIGPIPE, it's true that http://man7.org/linux/man-pages/man2/sigaction.2.html doesn't mention it, nor does http://pubs.opengroup.org/onlinepubs/9699919799/toc.htm . probably there's no special handling in SA_SIGINFO handlers for SIGPIPE,
11:13:40 <wob_jonas> because you rarely want to handle SIGPIPE in any complicated way anyway, you just look for the EPIPE errno from syscalls instead.
11:14:37 <wob_jonas> It's a synchronious error, it was only a signal for historical compatibility reasons to provide a sane default for small programs that don't bother to handle write errors, but then programs need to do that anyway for other unexpected write errors too.
11:16:34 <wob_jonas> I'd also like to mention that you shouldn't be confused by siginfo_t having so many fields. It can actually be a union with fields overlapping, the concrete definition on linux is https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/uapi/asm-generic/siginfo.h?h=v4.20-rc2
11:27:43 -!- mroman has joined.
11:33:18 <mroman> I'm trying to document Burlesque's syntax.
11:33:21 <mroman> F*ck me :(
11:33:33 <mroman> Can't be done without also documenting the exact order of how Burlesque tries to parse things.
11:33:44 <mroman> because that's what it does: it tries to apply a rule and if it doesn't match it tries the next rule.
11:34:29 <mroman> Built-ins don't really have a syntax.
11:38:52 <mroman> and I gotta document blsq ) begin lisp (?+ (?* 3 2) 1) end lisp
11:38:53 <mroman> as well
11:43:01 <wob_jonas> mroman: good luck
11:43:54 <mroman> yeah.
11:43:57 <mroman> y``@|[(yabcdY)to]| YShpe
11:44:01 <mroman> guess what this does.
11:44:54 <mroman> y Y is a block quote
11:45:12 <mroman> for some reason you can actually quote more than one identifier.
11:45:29 <mroman> I have no idea why this is even possible
11:47:18 <mroman> I guess in case a built-in wants more than one identifier arguments.
11:52:49 <mroman> also I doubt anybody knew that @'a gives you an infinite list of 'a's
11:53:24 <mroman> it's documented though.
12:21:44 -!- arseniiv has joined.
12:32:10 -!- Unitan has joined.
12:32:25 <Unitan> Hello
12:33:11 <ski> hullo
12:35:12 -!- Unitan has quit (Client Quit).
12:40:03 -!- mroman has quit (Ping timeout: 256 seconds).
13:10:12 <esowiki> [[Special:Log/newusers]] create * Unitan * New user account
13:13:21 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=58358&oldid=58318 * Unitan * (+155)
13:17:50 -!- joast has joined.
13:35:42 -!- Essadon has joined.
13:39:38 <esowiki> [[Doreq]] N https://esolangs.org/w/index.php?oldid=58359 * Unitan * (+1459) Created page with "[[Doreq]] is a [[OISC]] interpreter of the same named instruction. ==Basic== Each doreq instruction has 8 memory address operands. A B C X Y Z J K If the value at memory..."
13:43:34 <esowiki> [[Language list]] M https://esolangs.org/w/index.php?diff=58360&oldid=58352 * Unitan * (+12) /* Adding Doreq */
13:52:57 <esowiki> [[Doreq]] https://esolangs.org/w/index.php?diff=58361&oldid=58359 * Unitan * (+733) Inserted a JS Interpreter
13:54:04 -!- xkapastel has joined.
14:08:54 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
14:09:19 -!- Lord_of_Life has joined.
14:09:20 -!- Lord_of_Life has quit (Changing host).
14:09:20 -!- Lord_of_Life has joined.
15:07:36 -!- AnotherTest has quit (Ping timeout: 250 seconds).
15:30:39 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58362&oldid=58360 * Backspace * (+10) added Eul
15:42:01 -!- olsner has quit (Ping timeout: 246 seconds).
15:54:17 -!- Storkman has quit (Ping timeout: 268 seconds).
16:14:02 -!- sleepnap has joined.
16:44:54 <esowiki> [[Doreq]] M https://esolangs.org/w/index.php?diff=58363&oldid=58361 * Unitan * (-44)
16:56:36 -!- tromp has quit (Remote host closed the connection).
16:57:10 -!- tromp has joined.
17:03:44 -!- imode has joined.
17:06:38 -!- Storkman has joined.
17:18:22 -!- tromp has quit (Remote host closed the connection).
17:18:38 -!- tromp has joined.
17:20:07 -!- Storkman has quit (Ping timeout: 240 seconds).
17:27:58 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
17:32:26 <zzo38> Actually, NNTP can still be used for Usenet, because Netsubscribe is a bit different use. (Even if it was, you couldn't then use both protocols together if the same port number is in use, whether for the same or for two different purposes)
17:35:11 -!- AnotherTest has joined.
17:36:11 -!- olsner has joined.
17:43:37 <esowiki> [[Doreq]] https://esolangs.org/w/index.php?diff=58364&oldid=58363 * Unitan * (+269)
17:57:02 -!- Storkman has joined.
20:25:20 <esowiki> [[Special:Log/newusers]] create * LLmd * New user account
20:37:50 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=58365&oldid=58358 * LLmd * (+216) /* Introductions */
20:55:47 -!- imode has quit (Quit: WeeChat 2.3).
21:16:49 <esowiki> [[SimpliVode]] N https://esolangs.org/w/index.php?oldid=58366 * LLmd * (+694) Created page with "SimpliVode (Originally SimpleCodeV) is a one-instruction language that has no branching, operators or comparisons. It only has one command: mem <memory address> <value to wri..."
21:37:09 <esowiki> [[SimpliScript]] N https://esolangs.org/w/index.php?oldid=58367 * LLmd * (+447) Created page with "SimplScript is a derivative of [[SimpliVode]], with one important difference: the addition of the rpt command. rpt <memory address> {<code>} rpt repeats the code in <code> un..."
21:38:54 <esowiki> [[SimpliScript]] https://esolangs.org/w/index.php?diff=58368&oldid=58367 * LLmd * (-4)
21:39:41 <esowiki> [[SimpliScript]] https://esolangs.org/w/index.php?diff=58369&oldid=58368 * LLmd * (+3)
21:41:38 <esowiki> [[SimpliScript]] https://esolangs.org/w/index.php?diff=58370&oldid=58369 * LLmd * (+57)
21:42:09 -!- aloril_ has quit (Remote host closed the connection).
21:42:45 -!- aloril has joined.
21:47:44 <esowiki> [[SimpliScript]] https://esolangs.org/w/index.php?diff=58371&oldid=58370 * LLmd * (+172)
21:48:13 <esowiki> [[SimpliScript]] https://esolangs.org/w/index.php?diff=58372&oldid=58371 * LLmd * (-675) Blanked the page
22:20:20 -!- lambdabot has quit (Ping timeout: 272 seconds).
22:24:16 -!- lambdabot has joined.
22:36:58 -!- sebbu2 has joined.
22:40:40 -!- sebbu has quit (Ping timeout: 268 seconds).
23:12:59 -!- sleepnap has left.
23:23:31 -!- Essadon has quit (Quit: Qutting).
23:44:18 -!- AnotherTest has quit (Ping timeout: 264 seconds).
00:07:09 -!- tromp has quit (Remote host closed the connection).
00:07:43 -!- tromp has joined.
00:09:30 -!- xkapastel has quit (Quit: Connection closed for inactivity).
00:13:15 -!- imode has joined.
00:21:43 -!- Phantom_Hoover has joined.
00:36:37 -!- sprocklem has quit (Quit: brb).
00:38:20 -!- sprocklem has joined.
01:21:37 -!- Phantom_Hoover has quit (Quit: Leaving).
01:39:18 -!- oerjan has joined.
02:07:48 -!- Lord_of_Life_ has joined.
02:09:57 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
02:09:58 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
02:09:58 -!- Lord_of_Life has quit (Changing host).
02:09:58 -!- Lord_of_Life has joined.
03:00:30 -!- arseniiv has quit (Ping timeout: 264 seconds).
03:04:03 -!- arseniiv has joined.
03:09:48 <esowiki> [[Echo Tag]] N https://esolangs.org/w/index.php?oldid=58373 * Ais523 * (+2489) anyone care to help me prove this one TC for small n? when n is small enough, it's probably easier/more concise to implement than cyclic tag or fusion tag
03:10:11 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58374&oldid=58362 * Ais523 * (+15) /* E */ +Echo Tag
03:10:28 <arseniiv> @messages?
03:10:28 <lambdabot> Sorry, no messages today.
03:10:32 <esowiki> [[User:Ais523]] https://esolangs.org/w/index.php?diff=58375&oldid=58353 * Ais523 * (+14) +[[Echo Tag]]
04:49:33 -!- arseniiv has quit (Ping timeout: 252 seconds).
05:01:09 -!- hakatashi has quit (Remote host closed the connection).
05:01:33 -!- hakatashi has joined.
05:42:24 <shachaf> Taneb: whoa whoa whoa
05:52:55 -!- nfd has quit (Read error: Connection reset by peer).
05:53:07 -!- fungot has quit (Ping timeout: 240 seconds).
05:53:21 -!- nfd has joined.
05:54:23 <oerjan> fungone
06:18:40 -!- fractal has quit (Ping timeout: 264 seconds).
06:23:31 <esowiki> [[Doreq]] https://esolangs.org/w/index.php?diff=58376&oldid=58364 * Unitan * (+714) Added the super woke super rekter interpreter.
06:30:42 <esowiki> [[Doreq]] M https://esolangs.org/w/index.php?diff=58377&oldid=58376 * Unitan * (+17)
06:37:48 -!- Sgeo_ has joined.
06:40:40 -!- Sgeo__ has quit (Ping timeout: 268 seconds).
06:43:42 <oerjan> lord snackleford seems a bit sensitive
06:45:06 -!- hexfive has joined.
06:55:31 -!- imode has quit (Ping timeout: 246 seconds).
07:47:19 -!- fractal has joined.
07:50:02 <esowiki> [[Talk:Brainfoctal]] https://esolangs.org/w/index.php?diff=58378&oldid=58342 * Rdebath * (+441)
08:19:52 -!- tromp has quit (Remote host closed the connection).
08:20:07 -!- tromp has joined.
08:33:09 -!- oerjan has quit (Quit: Nite).
09:03:48 -!- AnotherTest has joined.
09:05:34 <esowiki> [[List of ideas]] https://esolangs.org/w/index.php?diff=58379&oldid=58245 * Haael * (+137) /* Joke/Silly Ideas */
09:40:22 -!- xkapastel has joined.
10:40:25 -!- LissajousPattern has joined.
11:44:31 -!- LissajousPattern has quit (Quit: Leaving).
12:28:15 <Taneb> > reverse "<><"
12:28:18 <lambdabot> "<><"
12:30:15 <myname> neat
12:43:30 -!- fungot has joined.
12:45:28 -!- Phantom_Hoover has joined.
12:45:36 -!- Phantom_Hoover has quit (Changing host).
12:45:36 -!- Phantom_Hoover has joined.
12:48:55 <int-e> that seems fishy
12:49:02 <int-e> `? fish
12:49:03 <HackEso> Come and dance and love the fish! Mister Disco summoned it.
12:57:16 -!- sftp has quit (Ping timeout: 260 seconds).
12:59:47 -!- sftp has joined.
13:10:13 -!- AnotherTest has quit (Ping timeout: 244 seconds).
13:35:36 -!- AnotherTest has joined.
13:47:19 -!- arseniiv has joined.
14:10:27 -!- Lord_of_Life has quit (Ping timeout: 240 seconds).
14:12:38 -!- Lord_of_Life has joined.
14:12:38 -!- Lord_of_Life has quit (Changing host).
14:12:38 -!- Lord_of_Life has joined.
14:22:22 -!- jix has quit (Ping timeout: 272 seconds).
14:23:39 -!- jix has joined.
14:39:17 -!- sleepnap has joined.
15:24:27 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
16:08:14 -!- mroman has joined.
16:10:12 <mroman> Remember kids: jJQ are identifiers and not specials while ,%@:) are specials and modifiers whereas #j #J #Q #q are identifiers but behave as modifiers and q is neither an identifier, nor a special nor a modifier but a syntax prefix.
16:10:53 <mroman> except in case there's a matching ( in which case the ) is parsed as the closing paren of the ( in which case it is not a special.
16:11:08 <mroman> obviously.
16:12:04 <mroman> also @ is the special @ and ``@ is the identifier @ so @ can also be a command as well.
16:13:29 <mroman> m, f and r are syntax prefixes when followed by a { in which case the block turns into an auto-block.
16:13:43 <mroman> auto-blocks are blocks that get evaluated before being pushed to the stack.
16:16:36 <mroman> and %%=1 is not a syntax error because of the fail safe parsing which turns %%=1 into the special %
16:17:01 <mroman> oh wait. % is actually not a modifier.
16:17:11 <mroman> it's a special but not a modifier.
16:17:37 <mroman> not yet.
16:22:10 <mroman> the problem is the only way to actually get a special % is by screwing up the syntax for assignment
16:23:13 <Taneb> This certainly sounds very esoteric
16:23:34 <mroman> yeah but you gotta be careful when screwing it up
16:23:37 <mroman> %%1 would parse as % % 1
16:23:44 <mroman> %%=1 parses as %
16:24:16 -!- imode has joined.
16:24:42 <mroman> A lot of stuff is parsed using parsec's try
16:25:40 <mroman> m{9} parses as an auto-block {9} and m{9 parses as the builtin m{ and 9
16:27:41 <mroman> function level scope is achieved by having a variable __SCOPE__ in the global context.
16:28:04 <mroman> which you can overwrite of course.
16:28:45 <mroman> and a lot of old hacks.
16:59:34 -!- AnotherTest has quit (Ping timeout: 268 seconds).
17:06:24 -!- nfd has quit (Ping timeout: 272 seconds).
17:21:10 -!- AnotherTest has joined.
18:14:42 -!- Essadon has joined.
19:02:44 <esowiki> [[Talk:Doreq]] N https://esolangs.org/w/index.php?oldid=58380 * Nthern * (+284) Turing Complete?
19:06:33 -!- xkapastel has quit (Quit: Connection closed for inactivity).
19:25:45 -!- sebbu2 has changed nick to sebbu.
19:28:02 -!- Camto has joined.
19:59:29 -!- Subject777 has joined.
20:01:05 -!- Subject777 has quit (Client Quit).
20:04:22 -!- MDead_ has quit (Quit: Going offline, see ya! (www.adiirc.com)).
20:15:33 -!- mroman has quit (Ping timeout: 256 seconds).
20:48:08 -!- imode has quit (Quit: WeeChat 2.3).
20:48:22 -!- Phantom_Hoover has joined.
20:56:09 -!- Phantom__Hoover has joined.
20:58:39 <Camto> Why are there two Phantom_Hoovers?
21:00:12 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
21:00:32 <Camto> Hmmm
21:08:27 -!- wob_jonas has joined.
21:34:36 -!- nfd9001 has joined.
22:19:06 -!- MDead_ has joined.
22:21:02 -!- Essadon has quit (Quit: Qutting).
22:29:51 <shachaf> Different number of _s
22:55:19 -!- Camto has quit (Quit: Page closed).
23:00:03 -!- nfd9001 has quit (Ping timeout: 264 seconds).
23:09:31 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
23:20:06 -!- sleepnap has quit (Quit: Leaving.).
23:24:26 -!- AnotherTest has quit (Ping timeout: 276 seconds).
23:29:47 -!- Phantom_Hoover has joined.
23:32:08 -!- Phantom__Hoover has quit (Ping timeout: 245 seconds).
23:33:02 -!- Phantom__Hoover has joined.
23:34:45 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
23:36:11 -!- Phantom_Hoover has joined.
23:39:09 -!- Phantom__Hoover has quit (Ping timeout: 252 seconds).
23:39:09 -!- fungot has quit (Read error: Connection reset by peer).
23:39:37 -!- Phantom__Hoover has joined.
23:40:44 -!- fungot has joined.
23:40:48 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
23:44:58 -!- nfd9001 has joined.
23:48:11 -!- Phantom_Hoover has joined.
23:48:30 -!- Phantom__Hoover has quit (Ping timeout: 252 seconds).
00:14:47 -!- nfd9001 has quit (Ping timeout: 240 seconds).
00:25:25 -!- nfd9001 has joined.
00:25:50 -!- Sgeo_ has quit (Read error: Connection reset by peer).
00:26:16 -!- Sgeo_ has joined.
00:40:31 -!- Phantom_Hoover has quit (Quit: Leaving).
00:58:14 -!- nfd9001 has quit (Ping timeout: 272 seconds).
01:31:30 -!- wob_jonas has joined.
01:34:09 <wob_jonas> I'm trying to compare writable digital media for backup and transfer.
01:36:46 <wob_jonas> 50 pieces of blank DVD-R or DVD+R disks of capacity 4.7 GB each cost 6470 HUF. 8 pieces of class 10 micro-SDHC cards of capacity 32 GB each cost 14721 HUF, which is 2.3 times the previous one. Both prices include slow shipping.
01:38:58 <wob_jonas> These two options have comparable total capacity, comparable read and write speeds in practice. both can be read and written by cheap high-speed USB drives. micro-SDHC cards are smaller and less sensitive to storing conditions. It's hard to tell how long they last because that depends on the brand and make and storing conditions, but we at least kn
01:38:58 <wob_jonas> ow that DVDs fail gradually with some data recoverable cheaply at home, whereas SDHC cards fail catastrophically with data recoverable from a failed drive only by professional services.
01:39:28 <wob_jonas> I will also have to look at rotation hard disks.
01:41:50 <wob_jonas> What's the most cost-effective size for rotation hard disks these days?
01:41:55 <wob_jonas> capacity I mean
01:42:43 <wob_jonas> obviously in practice I also have to take in account that I've already bought some micro-SD cards and blank DVD, so I can use those, but still
01:50:36 <wob_jonas> Ok, so for SATA rotational hard disks, the most cost-effective capacity for home use seems to be 2 TB or 4 TB, costing around 21000 HUF and 41000 HUF resp.
01:55:03 -!- arseniiv has quit (Ping timeout: 245 seconds).
01:56:40 -!- imode has joined.
01:58:20 -!- oerjan has joined.
01:59:27 <wob_jonas> These have a pretty high speed, much higher than the SD cards or DVDs, though the exact speed varies. If I use them externally with a hard disk rack connected through USB3, then the speed will be capped by the USB3 root hub to 625 MB/s and there's one USB3 root hub in most home computers.
02:01:41 <wob_jonas> In comparison, the medium price class 10 sd cards I was talking about above have speed between 10 MB/s and 45 MB/s; more expensive cards that I use for my digital camera where the wait time of saving a picture matters can go up to 90 MB/s
02:06:31 <wob_jonas> so for bulk amounts of data, the DVDs are 2.7 times more expensive than the hard disk, and the SD cards are 5.6 times more expensive.
02:07:04 <wob_jonas> But in practice, I'll rarely fill a 4 TB hard disk, so the practical price difference is lower.
02:07:45 -!- nfd9001 has joined.
02:08:04 <wob_jonas> Hard disks need a more expensive external SATA rack and cables, and are bulkier than SD cards but less bulky than DVDs.
02:10:25 -!- Lord_of_Life_ has joined.
02:10:31 <wob_jonas> In practice I'll definitely use a combination of hard disks and (SD cards or DVD) for backup and off-site backup; SD cards or DVD for transferring data to other people; and obviously SD cards for mobile phone and digital camera and similar devices, with the camera requiring slightly more expensive fast SD cards.
02:10:43 <wob_jonas> But it's best to see the current state cleanly to figure this out.
02:11:42 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
02:11:43 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
02:11:43 -!- Lord_of_Life has quit (Changing host).
02:11:43 -!- Lord_of_Life has joined.
02:14:37 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
02:24:09 -!- nfd9001 has quit (Ping timeout: 252 seconds).
03:22:32 -!- tromp has quit (Remote host closed the connection).
03:23:04 -!- tromp has joined.
05:19:08 -!- iconmaster has joined.
05:59:25 -!- incomprehensibly has quit (Ping timeout: 250 seconds).
06:00:26 -!- shikhin has quit (Ping timeout: 260 seconds).
06:00:43 -!- incomprehensibly has joined.
06:01:02 -!- shikhin has joined.
06:02:41 -!- shikhin has quit (Changing host).
06:02:41 -!- shikhin has joined.
06:27:32 <esowiki> [[An esoteric programming language (ess-oh-terr-ick), or esolang, is a computer programming language designed to experiment with weird ideas, to be hard to program in, or as a joke, rather than for practical use.]] N https://esolangs.org/w/index.php?oldid=58381 * Schmuui * (+716) I don't think this has ever happened before.
06:28:32 -!- Schmuui has joined.
06:28:43 <Schmuui> henlo
06:32:32 <esowiki> [[Esolang:Featured languages/Candidates]] M https://esolangs.org/w/index.php?diff=58382&oldid=58344 * Schmuui * (+99) /* List of candidates */
06:33:02 -!- Schmuui has quit (Client Quit).
06:40:47 -!- imode has quit (Ping timeout: 240 seconds).
07:14:16 -!- nfd9001 has joined.
07:19:13 -!- nfd9001 has quit (Ping timeout: 246 seconds).
07:25:48 <esowiki> [[Esolang:Featured languages/Candidates]] https://esolangs.org/w/index.php?diff=58383&oldid=58382 * Oerjan * (-99) Undo revision 58382 by [[Special:Contributions/Schmuui|Schmuui]] ([[User talk:Schmuui|talk]]) (See sentence in bold above)
07:30:20 <esowiki> [[Special:Log/move]] move * Oerjan * moved [[A programming language is a formal language that specifies a set of instructions that can be used to produce various kinds of output.]] to [[A programming language is a formal language, which comprises a set of instructions used to produce various kinds of output.]]: Someone changed it again
07:36:19 <esowiki> [[Template:Programming Language]] N https://esolangs.org/w/index.php?oldid=58386 * Oerjan * (+127) Time to save some work on the updating
07:37:14 <oerjan> hm wait should it be linked...
07:37:24 <oerjan> can it avoid it?
07:38:21 <esowiki> [[Template:Programming Language]] https://esolangs.org/w/index.php?diff=58387&oldid=58386 * Oerjan * (-4) Test something
07:40:35 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58388&oldid=58374 * Oerjan * (-109) Yay it works
07:43:47 <esowiki> [[User:Rottytooth]] https://esolangs.org/w/index.php?diff=58389&oldid=51007 * Oerjan * (-104) Hope you don't mind me adding the template here
07:46:21 <esowiki> [[Special:Log/delete]] delete * Oerjan * deleted "[[A programming language is a formal computer language designed to communicate instructions to a machine, particularly a computer.]]": Clean up after an old name change
07:48:02 <esowiki> [[Programming Language]] https://esolangs.org/w/index.php?diff=58390&oldid=52537 * Oerjan * (-109) Cross fingers that this works...
07:51:58 <esowiki> [[Programming Language]] https://esolangs.org/w/index.php?diff=58391&oldid=58390 * Oerjan * (+99) Seems not. At least subst: might work.
07:52:48 <esowiki> [[An esoteric programming language (ess-oh-terr-ick), or esolang, is a computer programming language designed to experiment with weird ideas, to be hard to program in, or as a joke, rather than for practical use.]] https://esolangs.org/w/index.php?diff=58392&oldid=58381 * Oerjan * (-351) Use new template
08:01:34 <esowiki> [[A programming language is a formal language, which comprises a set of instructions used to produce various kinds of output.]] https://esolangs.org/w/index.php?diff=58393&oldid=58384 * Oerjan * (-363) Templatize for sanity
08:02:02 -!- nfd9001 has joined.
08:03:05 <esowiki> [[Special:Log/delete]] delete * Oerjan * deleted "[[A programming language is a formal language that specifies a set of instructions that can be used to produce various kinds of output.]]": Finish (I hope) cleanup after renaming
08:09:17 -!- tromp has quit (Remote host closed the connection).
08:09:30 -!- tromp has joined.
08:45:47 -!- hexfive has quit (Quit: WeeChat 2.2).
09:07:32 -!- oerjan has quit (Quit: Nite).
10:15:21 <esowiki> [[VeriBasic]] N https://esolangs.org/w/index.php?oldid=58394 * TeslaX93 * (+409) Created page with "VeriBasic is a programming language, inspired by [http://en.wikipedia.org/wiki/Verilog Verilog] and [http://en.wikipedia.org/wiki/PHP PHP]. == Examples == // "Hello, world!"..."
10:15:33 <esowiki> [[VeriBasic]] https://esolangs.org/w/index.php?diff=58395&oldid=58394 * TeslaX93 * (-1)
10:37:45 <esowiki> [[VeriBasic]] https://esolangs.org/w/index.php?diff=58396&oldid=58395 * TeslaX93 * (+65)
10:39:39 <esowiki> [[An Odd Rewriting System]] N https://esolangs.org/w/index.php?oldid=58397 * Ais523 * (+4015) yet another new language
10:40:17 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58398&oldid=58388 * Ais523 * (+30) /* A */ +[[An Odd Rewriting System]]
10:40:51 <esowiki> [[An Odd Rewriting System]] https://esolangs.org/w/index.php?diff=58399&oldid=58397 * Ais523 * (+131) /* Syntax */ clarify whitespace and comments
10:41:33 <esowiki> [[User:Ais523]] https://esolangs.org/w/index.php?diff=58400&oldid=58375 * Ais523 * (+29) +[[An Odd Rewriting System]]
10:47:19 <esowiki> [[An Odd Rewriting System]] M https://esolangs.org/w/index.php?diff=58401&oldid=58399 * Ais523 * (+5) pipe year link
11:37:41 -!- xkapastel has joined.
11:52:33 -!- danieljabailey has quit (Ping timeout: 245 seconds).
12:10:33 -!- mroman has joined.
12:36:36 -!- wob_jonas has joined.
12:37:09 <wob_jonas> I've got my new eyeglasses!
12:37:48 <Taneb> \o/
12:37:49 <wob_jonas> I'm wearing it, but it will take at least weeks to decide how good it is, and more to find out how long-lasting it is.
12:39:21 <int-e> I think eyeglasses are plural.
12:39:45 <int-e> Unless it's a monocle.
12:41:01 <wob_jonas> For several years now I've been buying my eyeglasses on my own, as in from my own money without my parents' substantial help; but among those this is the first one where I brought the frame in a place other than the regular optician.
12:41:40 <wob_jonas> Since I bought the frame and the lens in different places, that has some risk, because there are some damages that won't be covered by warranty at either place because either of them can blame the other for the frame and lens being incompatible.
12:42:10 <wob_jonas> Still, my regular optics shop has had too little choice in frames for a while now, so I decided to take that risk.
12:43:18 <wob_jonas> In the future, when I buy the frame separately, I should be more specific in saying what kind of lens I will use.
13:40:21 -!- arseniiv has joined.
14:09:31 -!- Lord_of_Life_ has joined.
14:11:08 -!- Lord_of_Life has quit (Ping timeout: 244 seconds).
14:11:08 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
14:11:08 -!- Lord_of_Life has quit (Changing host).
14:11:08 -!- Lord_of_Life has joined.
14:28:43 -!- iconmaster has quit (Quit: Leaving).
14:51:33 -!- sleepnap has joined.
15:08:46 -!- hexfive has joined.
15:16:15 -!- mroman has quit (Ping timeout: 256 seconds).
15:30:15 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
15:32:29 -!- wob_jonas has joined.
15:53:57 -!- sleepnap has quit (Ping timeout: 250 seconds).
15:59:08 -!- AnotherTest has joined.
16:00:43 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
16:07:13 -!- sleepnap has joined.
16:35:59 -!- S_Gautam has joined.
16:47:02 -!- hexfive has quit (Quit: WeeChat 2.2).
16:47:45 -!- hexfive has joined.
17:32:06 -!- imode has joined.
18:42:26 -!- mroman has joined.
18:44:31 <mroman> What's the correct terminology for map f $ xs?
18:44:35 <mroman> f is mapped over xs?
18:44:38 <mroman> f is applied over xs?
18:47:02 <int-e> f applied to xs
18:48:11 <mroman> but f $ xs is also f applied to xs
18:59:40 <int-e> yes, because ($) is the identity function
19:00:05 <int-e> > succ 3 == (succ $ 3)
19:00:07 <lambdabot> True
19:01:08 <mroman> yeh.
19:01:18 <mroman> but if map f xs applies f to xs and f xs applies f to xs
19:01:28 <mroman> then it's weird because those are two completely different things.
19:12:41 <mroman> good news.
19:12:49 <mroman> only about 300 built-ins left to document.
19:13:40 <shachaf> fmap (+1) (*2)
19:13:45 <shachaf> (+1) is mapped over (*2)
19:16:26 -!- Essadon has joined.
19:19:41 <mroman> If I document 5 a day I'll be done in two months :D
19:21:09 -!- tromp has quit (Remote host closed the connection).
19:21:44 -!- tromp has joined.
19:57:07 -!- ais523 has joined.
19:58:29 <ais523> I have weird conjecture: AORS a) is Turing-complete, but b) cannot simulate every Turing machine in polynomial time
19:58:33 <ais523> *a weird conjecture
19:59:21 <ais523> so far I don't know that either half of this is correct for certain
19:59:39 <ais523> but I have lots of potential leads for implementing TC languages in AORS and all of them seem to involve an exponential slowdown…
20:22:10 -!- nfd9001 has quit (Ping timeout: 246 seconds).
20:25:05 <int-e> hmm that's a funny one
20:25:43 <int-e> I'd probably have used x:even:odd for the syntax if I had thought of this
20:26:29 <int-e> or add some silliness and write x?odd:even;
20:27:08 <ais523> I thought of x:even:odd first, but this syntax is intended to be extensible to variants of the language (and in particular, higher-level languages that compile into AORS but are compatible with it)
20:27:24 -!- xkapastel has quit (Quit: Connection closed for inactivity).
20:29:46 -!- imode has quit (Ping timeout: 268 seconds).
20:30:10 -!- ais523 has quit (Quit: sorry for my connection).
20:30:22 -!- ais523 has joined.
20:38:24 -!- ais523 has quit (Remote host closed the connection).
20:39:38 -!- ais523 has joined.
21:08:35 -!- grumble has quit (Quit: Well, would you look at the time. I've almost missed my ambiguous, non-existent appointment that I have scheduled just when I start to lose interest in my current conversation.).
21:11:10 -!- wob_jonas has joined.
21:11:21 <wob_jonas> ais523: what is AORS?
21:11:43 <ais523> https://esolangs.org/wiki/An_Odd_Rewriting_System
21:14:10 -!- grumble has joined.
21:14:54 -!- wob_jonas has quit (Client Quit).
21:17:22 <esowiki> [[AORS]] N https://esolangs.org/w/index.php?oldid=58402 * B jonas * (+37) Redirected page to [[An Odd Rewriting System]]
22:02:55 -!- MDead_ has quit (Quit: Going offline, see ya! (www.adiirc.com)).
22:03:16 -!- MDude has joined.
22:05:06 <shachaf> ski: Do you know something about callCC with restricted lifetime for the continuation?
22:07:39 -!- mroman has quit (Ping timeout: 256 seconds).
22:21:38 -!- arseniiv_ has joined.
22:24:38 -!- arseniiv has quit (Ping timeout: 245 seconds).
22:25:27 -!- S_Gautam has quit (Quit: Connection closed for inactivity).
22:31:15 -!- imode has joined.
22:46:05 -!- sleepnap has left.
22:55:07 -!- tromp has quit (Remote host closed the connection).
22:55:18 -!- tromp has joined.
23:20:21 -!- AnotherTest has quit (Ping timeout: 252 seconds).
23:31:22 -!- ais523 has quit (Quit: quit).
00:50:19 -!- mig22 has joined.
00:51:25 -!- mig22 has quit (Client Quit).
00:53:49 -!- xkapastel has joined.
00:55:50 -!- tromp has quit (Remote host closed the connection).
00:56:28 -!- tromp has joined.
01:11:00 -!- Essadon has quit (Quit: Qutting).
01:33:56 -!- oerjan has joined.
02:11:40 -!- Lord_of_Life_ has joined.
02:12:31 -!- Lord_of_Life has quit (Ping timeout: 246 seconds).
02:13:48 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
02:14:34 -!- Lord_of_Life has quit (Changing host).
02:14:34 -!- Lord_of_Life has joined.
03:47:48 <esowiki> [[Special:Log/move]] move * Cortex * moved [[A]] to [[Apple Pie]]
04:23:22 -!- xkapastel has quit (Quit: Connection closed for inactivity).
04:24:32 <esowiki> [[Apple Pie]] https://esolangs.org/w/index.php?diff=58405&oldid=58403 * Cortex * (+99)
04:27:03 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58406&oldid=58398 * Cortex * (+8)
04:31:38 <zzo38> I thought of a kind of backgammon game with dice and cards. You have sixteen pieces, and the pieces have suits. Dice can move any one but cards only move pieces of the same suit. You must roll one dice and then play one card. You have two cards face-up and two cards are face-down so it cannot be seen by opponent.
04:34:31 <esowiki> [[User:Cortex]] https://esolangs.org/w/index.php?diff=58407&oldid=58337 * Cortex * (+76)
04:46:25 -!- xkapastel has joined.
05:00:59 <esowiki> [[Special:Log/delete]] delete * Oerjan * deleted "[[A]]": content was: "#REDIRECT [[Apple Pie]]", and the only contributor was "[[Special:Contributions/Cortex|Cortex]]" ([[User talk:Cortex|talk]])
05:42:15 <oerjan> is this changing of homlomium to homnomium intentional or an error by the foglios...
05:44:08 <oerjan> and shortly after agatha finally got it right :P
05:53:45 <oerjan> hm the last comic makes me wonder, what if _guy mentioned there_ gets to drink lord bunstable's brew...
05:54:55 <oerjan> . o O ( this channel has got too quiet lately )
05:55:30 <zzo38> Well, I do not know the answer of that question, so, I did not answer
05:55:38 -!- Sgeo has joined.
05:56:20 <oerjan> no, i mean, too many people no longer talk here, and few new ones are showing up
05:56:36 * oerjan wants to blame that discord thing he hears about
05:56:38 -!- Sgeo_ has quit (Ping timeout: 244 seconds).
06:01:15 <zzo38> I think IRC is much better, although possibly the program can be made can be both a Discord client and IRC client to copy messages between them.
06:03:15 <shachaf> oerjan: I thought it was too quiet because you're never here!
06:03:45 <shachaf> anyway i've been esoing it up so don't blame me hth
06:04:01 <oerjan> hum
07:25:03 <int-e> `grwp soul
07:25:05 <HackEso> coffee:Coffee is a strange brew. Enticing wisps of vapour catch the eye, the soul ensnared into dark vortices of flavour. Some minds mix in milk and sugar to counteract coffee's black magic. \ mosquito:Mosquitos are tiny vampires, sucking out your soul.
07:25:32 <int-e> . o O ( a soul-searching moment )
07:28:03 -!- AnotherTest has joined.
07:32:33 -!- AnotherTest has quit (Ping timeout: 252 seconds).
07:37:34 -!- oerjan has quit (Quit: Nite).
08:08:57 -!- arseniiv_ has quit (Ping timeout: 250 seconds).
08:27:51 -!- tromp has quit (Remote host closed the connection).
08:28:04 -!- tromp has joined.
08:35:06 <esowiki> [[Special:Log/newusers]] create * Rich Farmbrough * New user account
08:46:38 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=58408&oldid=58365 * Rich Farmbrough * (+150) Befunged?
08:47:36 <esowiki> [[User talk:Rich Farmbrough]] N https://esolangs.org/w/index.php?oldid=58409 * Rich Farmbrough * (+66) Created page with "This is my talk page. I'm unlikely to see anything written on it."
08:50:28 <esowiki> [[User:Rich Farmbrough]] N https://esolangs.org/w/index.php?oldid=58410 * Rich Farmbrough * (+39) Redirected page to [[User talk:Rich Farmbrough]]
08:53:22 -!- xkapastel has quit (Quit: Connection closed for inactivity).
08:53:47 <esowiki> [[Malbolge]] https://esolangs.org/w/index.php?diff=58411&oldid=58108 * Rich Farmbrough * (-1) /* Virtual machine description */
08:56:10 -!- imode has quit (Quit: WeeChat 2.3).
09:48:02 -!- AnotherTest has joined.
09:50:45 -!- copumpkin has quit (Read error: Connection reset by peer).
09:51:58 -!- contrapumpkin has joined.
09:52:03 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
09:52:23 -!- tromp_ has joined.
09:52:40 -!- zzo38 has quit (Ping timeout: 268 seconds).
09:53:17 -!- tromp has quit (Ping timeout: 268 seconds).
09:53:33 -!- Lord_of_Life has joined.
09:53:33 -!- Lord_of_Life has quit (Changing host).
09:53:33 -!- Lord_of_Life has joined.
11:05:34 -!- wob_jonas has joined.
11:07:04 <wob_jonas> zzo38: re "kind of backgammon game with dice and cards", do you know the Niagara board game "https://boardgamegeek.com/boardgame/13308/niagara" ? I find it elegant how it has so little state information.
11:08:02 <wob_jonas> Objectively it's not much less than some other board games that don't have shuffled decks of cards, but it still looks so simple that that somehow captures me.
11:08:25 <wob_jonas> Sadly the physical implementation of the board is tricky.
11:10:51 <wob_jonas> also,
11:10:53 <wob_jonas> `ehlist http://eheroes.smackjeeves.com/comics/2696849/mushy-stuff/
11:10:54 <HackEso> ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: ehlist: not found
11:10:59 <wob_jonas> I should create those list files some day
11:32:01 -!- hakatashi has quit (Remote host closed the connection).
11:32:22 -!- hakatashi has joined.
11:41:00 -!- hexfive has quit (Quit: WeeChat 2.2).
12:03:28 <esowiki> [[A-DU]] N https://esolangs.org/w/index.php?oldid=58412 * Salpynx * (+4559) Another ancient language themed esolang I'm trying to develop, using Linear A
12:30:56 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
12:55:03 -!- AnotherTest has quit (Ping timeout: 245 seconds).
13:21:23 -!- hexfive has joined.
13:59:35 -!- Essadon has joined.
14:09:48 -!- Lord_of_Life_ has joined.
14:13:36 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
14:13:36 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
14:13:37 -!- Lord_of_Life has quit (Changing host).
14:13:37 -!- Lord_of_Life has joined.
14:19:51 -!- olsner has quit (Ping timeout: 264 seconds).
14:24:33 -!- olsner_ has joined.
14:34:06 <ski> shachaf : hm, like `call/ec' and `call/cc1' in Scheme ?
14:36:24 -!- sleepnap has joined.
15:06:33 -!- hexfive has quit (Quit: WeeChat 2.2).
15:12:50 -!- AnotherTest has joined.
15:43:19 -!- xkapastel has joined.
16:08:38 -!- arseniiv_ has joined.
16:09:42 -!- arseniiv_ has changed nick to arseniiv.
16:23:28 -!- Cale has joined.
16:32:08 -!- Sgeo_ has joined.
16:34:12 -!- Sgeo has quit (Ping timeout: 244 seconds).
17:38:50 -!- zzo38 has joined.
17:45:07 -!- olsner_ has changed nick to olsner.
18:27:18 <zzo38> Now SQLite has a better way to specify unusable query plans in a virtual table (not released yet).
18:48:56 -!- tromp_ has quit (Ping timeout: 260 seconds).
19:16:37 -!- tromp has joined.
19:33:05 <shachaf> ski: What's call/cc1?
21:35:52 <esowiki> [[LMBC]] N https://esolangs.org/w/index.php?oldid=58413 * Cortex * (+4953) Created page with "'''LMBC''' (Language Made By Cortex) is a brainfuck equivalent made by [[User:Cortex]] which Cortex made. ==Commands== {| class="wikitable" |- ! Brainfuck !! LMBC (which was m..."
21:39:45 -!- wob_jonas has joined.
21:40:13 <wob_jonas> fuck you, stupid phpBB for printing timestamps only as "Today" and "Yesterday" instead of a proper date
21:41:56 <zzo38> Yes, that isn't very good. Can you fix it?
21:42:03 <FireFly> I think usually (?) the ISO timestamp is available as an attribute on the timestamp tag (not sure about phpbb zpecifically, but on online forums in general)
21:42:38 <int-e> Yesterday, all my troubles seemed so far away...
21:42:45 <wob_jonas> I'm not running that instance. I'm not going to run any instance of that stupid forum, I'm just participating on several different around the web.
21:43:10 <zzo38> If so, then perhaps you could add a Stylish or GreaseMonkey code to alter it
21:43:41 <zzo38> I should instead to use a NNTP server, I think
21:43:53 <wob_jonas> FireFly: yes, that's what StackExchange does in _most_ (but not all) cases of dates. PhpBB doesn't, I checked. It has a little note saying "(ISO 8601)" next to the date instead. Even when it's not. So very fucking useful.
21:44:14 <wob_jonas> FireFly: in fact, it literally says "Today, 01:11 PM (ISO 8601)"
21:45:51 <wob_jonas> zzo38: sigh... that reminds me to work, sadly. they have a computer that has very limited internet access through a strict external firewall, for security purposes, and it can't connect to the NTP server because of that,
21:46:01 <FireFly> sounds useless
21:46:09 <FireFly> I know reddit and twitter both have the exact ISO timestamp at least
21:46:18 <wob_jonas> and for some reason I can't manually set the date either, because something on Windows resets it, and the time is 24 hours behind actual time,
21:46:29 <FireFly> (and it's not often twitter is better than oldschool forums at something)
21:46:43 <wob_jonas> which I'm sure will cause some troubles since the computer is logging data that will now have a very incorrect timestamp
21:46:46 <zzo38> Then you should complain that the date is incorrect.
21:47:13 <wob_jonas> I'll have to deal with the stupid boss of that company to bother his nonexisting sysadmin to fix the firewall or the machine
21:47:36 <zzo38> Preferably they should fix both
21:47:37 <wob_jonas> Yeah, I've complained. The problem is that I'll have to complain to another person instead, who won't fix it. Darn.
21:48:36 <wob_jonas> That computer isn't even in our company, it's a computer where we're installing custom software that we make, but the network is partly set up by their company, so it's only their side that could provide an NTP server.
21:49:10 <wob_jonas> And nobody understands windows and nobody will pay a proper sysadmin who understands it, so they won't be able to fix the computer itself, whatever is causing to reset the time when I try to change it.
21:50:36 <wob_jonas> I already hate how the city barely has any publically displayed clocks anymore, you can only find any on train station platforms, so if my mobile phone isn't working, I can't tell the time, like ever.
21:50:59 <wob_jonas> Apparently everyone just assumes that everyone else has a working watch and they never need to adjust it.
21:51:22 <wob_jonas> A decade ago we used to have clocks everywhere, because it's useful. And thermometers.
21:52:43 <zzo38> The skytrain station near here has a display of the time, although it is a display that also displays other stuff and only briefly displays the time, during its cycle of everything else, so you have to wait for a while to see what time it is.
21:53:32 <zzo38> (I am not sure who to complain to to tell them to fix it so that you can always see what time it is.)
21:53:55 <wob_jonas> The Keleti Pályaudvar railway station building used to have a beutifully ugly but highly visible big clock face with glowing fluorescent tubes for the two hands. They removed that a decade ago when they renovated the building.
21:54:47 <wob_jonas> Now they have a clock there with black hands and the dial (face) lit from below, which is much harder to see during the night, and still hard to see during the day.
21:55:24 <wob_jonas> And it's still ugly, only in a different way. The whole point of a big clock there was that it's at the end of a long straight road segment, so you could see the clock from far away. But no, they had to ruin that.
21:55:51 <wob_jonas> I mean, they could have replaced the fluorescent tubes with led strips if that's easier to maintain, but no.
21:56:33 <wob_jonas> The worst is the swimming pool I'm using, because I definitely can't take a mobile phone in the pool, but want to know the time while swimming.
21:57:08 <wob_jonas> Half of the time they don't have a working clock at all; the other half they have a clock that's not visible enough, at least for me because I also don't wear glasses or contacts in the pool.
21:57:16 <zzo38> At least the swimming pool I have seen near here, I can see through the window, that in the same room with the pool there is a large display on the wall that always displays the current date and time.
21:58:26 <wob_jonas> The only swimming pool that had a proper clock display was in Dagály, but they ruined the whole Dagály a few years ago, so I can no longer go to that pool.
21:59:08 <wob_jonas> The date too? Nice!
22:14:13 -!- wob_jonas has quit (Ping timeout: 245 seconds).
22:15:35 -!- hexfive has joined.
22:38:54 -!- wob_jonas has joined.
22:39:30 <wob_jonas> Wait... now not only qwantz, but Questionable Content is running a deal where you get to "See Tomorrow's Comic Today" if you're a supporter?
22:40:19 -!- arseniiv has quit (Ping timeout: 246 seconds).
22:46:54 -!- wob_jonas has quit (Ping timeout: 272 seconds).
22:51:10 -!- imode has joined.
22:52:24 <esowiki> [[DoEverything();]] N https://esolangs.org/w/index.php?oldid=58414 * Cortex * (+1311) Created page with "'''doEverything();''' is an esolang by [[User:Cortex]] that can do anything and everything, including everything. Its syntax is very similar to JavaScript. ==Commands== {| cla..."
22:52:46 -!- AnotherTest has quit (Ping timeout: 260 seconds).
23:26:54 -!- sleepnap has quit (Ping timeout: 264 seconds).
23:52:11 -!- Essadon has quit (Quit: Qutting).
00:21:30 -!- wob_jonas has joined.
00:22:11 <wob_jonas> https://medium.com/vantage/type-in-your-hand-512a5a6cbb98 Wow. Awesome printing museums, and you can watch the pictures and descriptions on the web without having to breathe in any of the lead fumes.
00:25:37 -!- wob_jonas has quit (Remote host closed the connection).
00:34:36 -!- rdococ has quit (Ping timeout: 252 seconds).
00:47:20 <ski> shachaf : one-shot (affine) continuation
01:02:13 -!- rdococ has joined.
01:40:19 <esowiki> [[DoEverything();]] https://esolangs.org/w/index.php?diff=58415&oldid=58414 * Cortex * (-163)
01:41:39 <esowiki> [[Joke language list]] https://esolangs.org/w/index.php?diff=58416&oldid=58205 * Cortex * (+73)
01:47:04 -!- oerjan has joined.
01:51:42 <ski> <oerjan> @ask shachaf regarding your { if(...); ... } stuff, have i reminded you about Raph Levien's continuation language IO yet?
01:51:47 <ski> @where Io
01:51:47 <lambdabot> Raphael L. Levien's language with continuations as fundamental structure, described in his paper "Io: a new programming notation" (1989-09-10) at <http://dl.acm.org/citation.cfm?id=70931.70934> and
01:51:47 <lambdabot> in chapter 2 of Raphael A. Finkel's book `APLD', implementations `Amalthea',`Ganymede' - (perhaps you were looking for `@wiki Introduction to IO' ?)
01:51:55 <ski> @where APLD
01:51:55 <lambdabot> "Advanced Programming Language Design" by Raphael Finkel in 1996 at <http://www.nondot.org/sabre/Mirrored/AdvProgLangDesign/>
01:56:37 <ski> (well seems that last link is broken now, try <https://web.archive.org/web/20150522052725/http://www.nondot.org:80/sabre/Mirrored/AdvProgLangDesign/>. see chapter 2, section 3 for continuations in Io. also section 4 (power loops) is interesting)
01:56:41 <ski> @where Amalthea
01:56:41 <lambdabot> Implementation made by Martin Sandin of the (continuation-based) `Io' language at <http://web.archive.org/web/20091106041222/http://www.guldheden.com/~sandin/amalthea.html>
01:56:50 -!- Cortex has joined.
01:56:51 <ski> @where Ganymede
01:56:51 <lambdabot> Implementation by BMeph of the (continuation-based) `Io' language at <http://hackage.haskell.org/package/Ganymede>
01:57:29 <Cortex> is this place dead or
01:57:40 <ski> oerjan : i hadn't seen the site <http://canonical.org/~kragen/raph-io.html> before, ty
01:57:51 <ski> Cortex : i don't think so
01:58:15 -!- Cortex has quit (Client Quit).
02:02:21 <ski> shachaf ^
02:11:53 <shachaf> ski: But do you have a link to the paper?
02:12:07 -!- Lord_of_Life_ has joined.
02:13:58 <shachaf> ski: So what I want is something like callCC (\k -> ...) such that you can use the k freely as long as the stack frame still exists, but not once callCC returns.
02:14:24 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
02:14:24 <shachaf> I guess that's the same as one-shot continuations.
02:14:24 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
02:14:25 -!- Lord_of_Life has quit (Changing host).
02:14:25 -!- Lord_of_Life has joined.
02:16:55 <shachaf> I guess what I mean isn't just the stack frame but the actual continuation.
02:17:22 <shachaf> In fact I literally mean that the continuation, as in the rest of the program, can't be copied.
02:18:20 <oerjan> oh the web archive seems to have amalthea's implementation, good (i've sorta got used to such files missing even if the website itself is archived)
02:19:13 <oerjan> . o O ( Cortex isn't a very patient ircist )
02:26:39 <ski> shachaf : hm, i suppose you want DNE, then ?
02:29:55 <shachaf> I guess DNE is linear and callCC is affine
02:30:14 <shachaf> I don't think it matters that much, though. I guess the affine version is fine.
02:32:11 <esowiki> [[Echo Tag]] https://esolangs.org/w/index.php?diff=58417&oldid=58373 * Oerjan * (+148) /* Specification */ Note something fairly obvious
02:33:27 <shachaf> ski: So now I think I want an explicit syntax, e.g. { x := foo`; ... } ---> foo(&{\x; ... })
02:33:56 <shachaf> In particular you might have something like { while`(p); ... }, to have the expression re-evaluated on every iteration.
02:40:52 * ski . o O ( "The anatomy of a loop: a story of scope and control" by Olin Shivers in 2005-09 at <http://www.ccs.neu.edu/home/shivers/citations.html#loop>,<http://lambda-the-ultimate.org/node/1026> )
02:41:03 <moony> . o O ( oerjan thinks a lot )
02:41:04 <esowiki> [[Piet++]] https://esolangs.org/w/index.php?diff=58418&oldid=46495 * SplatterWorthy * (-139) felt the move command was "un-piet"
02:48:00 <oerjan> . o O ( cauliflower )
02:49:29 <oerjan> roof light is blinking (on the blink?)
02:49:40 <oerjan> hm now it got worse
02:53:30 <shachaf> `? weather
02:53:31 <HackEso> lambdabot: @@ @@ (@where weather) CYUL ENVA ESSB KOAK PAMR
02:53:39 <shachaf> @metar ENVA
02:53:41 <lambdabot> ENVA 170250Z VRB03KT 9999 BKN018 07/06 Q1036 RMK WIND 670FT 22005KT
02:53:50 <shachaf> @metar KOAK
02:53:50 <lambdabot> KOAK 170153Z 35005KT 1 3/4SM HZ BKN016 BKN020 12/04 A2996 RMK AO2 SLP146 FU BKN016 FU BKN020 T01220044
02:54:18 <shachaf> someone who knows how to read metar tell me which part of that says the whole area is enveloped in smoke
02:55:30 * oerjan guesses FU
02:57:20 <shachaf> huh, so it is
02:58:28 <shachaf> `mkx bin/detar//echo "https://www.aviationweather.gov/metar/data?format=decoded&ids=$1"
02:58:29 <HackEso> bin/detar
02:58:31 <shachaf> `detar KOAK
02:58:32 <HackEso> https://www.aviationweather.gov/metar/data?format=decoded&ids=KOAK
02:59:42 <shachaf> Unfortunately their decoder seems incomplete?
03:00:42 <shachaf> `mkx bin/detar//echo "https://en.allmetsat.com/metar-taf/north-america.php?icao=$1"
03:00:43 <HackEso> bin/detar
03:00:53 <shachaf> this website is sufficiently 90s
03:06:19 <shachaf> `detar KOAK
03:06:20 <HackEso> https://en.allmetsat.com/metar-taf/north-america.php?icao=KOAK
03:07:20 <Sgeo_> I haven't used Haskell in so long, and I now have a project where I think Haskell might be the best fit
03:13:18 -!- MDead has joined.
03:15:45 -!- MDude has quit (Ping timeout: 252 seconds).
04:21:40 -!- moei has joined.
04:46:00 <esowiki> [[A-DU]] https://esolangs.org/w/index.php?diff=58419&oldid=58412 * Salpynx * (+149) /* Cat */ Linear A script version
04:50:17 <esowiki> [[A-DU]] M https://esolangs.org/w/index.php?diff=58420&oldid=58419 * Salpynx * (+93) ttf font link
04:56:22 <esowiki> [[A-DU]] M https://esolangs.org/w/index.php?diff=58421&oldid=58420 * Salpynx * (+2) /* Cat */ needs U+3000 IDEOGRAPHIC SPACE to maintain alignment
05:18:56 -!- Sgeo_ has quit (Ping timeout: 272 seconds).
05:18:57 -!- Sgeo has joined.
05:46:00 -!- tromp has quit (Remote host closed the connection).
05:46:33 -!- tromp has joined.
08:01:07 -!- Zajt has joined.
08:01:48 <Zajt> Anyone seen this before https://puu.sh/C3b0P/9940d2d3aa.png ? I thought it was Malbolge first but it was not
08:04:17 <zzo38> "The problem of finding the best query plan is equivalent to finding a minimum-cost path through the graph that visits each node exactly once." Is that like a traveling salesmen problem?
08:07:05 -!- tromp has quit (Remote host closed the connection).
08:07:18 -!- tromp has joined.
08:27:04 -!- tromp has quit (Remote host closed the connection).
08:27:40 -!- tromp has joined.
08:31:58 -!- oerjan has quit (Quit: Nite).
08:37:25 -!- tromp has quit (Remote host closed the connection).
08:37:39 -!- tromp has joined.
09:03:22 -!- xkapastel has quit (Quit: Connection closed for inactivity).
09:04:00 -!- AnotherTest has joined.
09:26:36 -!- imode has quit (Quit: later gator.).
11:06:29 -!- arseniiv has joined.
11:36:04 -!- ski has quit (Ping timeout: 264 seconds).
12:39:26 -!- Essadon has joined.
13:20:58 <Zajt> Anyone seen this before https://puu.sh/C3b0P/9940d2d3aa.png ? I thought it was Malbolge first but it was not
14:11:08 -!- Lord_of_Life_ has joined.
14:14:40 -!- Lord_of_Life has quit (Ping timeout: 268 seconds).
14:14:41 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
14:14:41 -!- Lord_of_Life has quit (Changing host).
14:14:41 -!- Lord_of_Life has joined.
14:24:32 -!- xkapastel has joined.
16:35:28 -!- ski has joined.
17:07:22 -!- imode has joined.
17:30:44 -!- AnotherTest has quit (Ping timeout: 276 seconds).
17:31:25 -!- AnotherTest has joined.
17:40:25 -!- Sgeo_ has joined.
17:42:27 -!- Sgeo has quit (Ping timeout: 240 seconds).
19:20:19 -!- derpy has joined.
19:44:30 -!- hakatashi has quit (Read error: Connection reset by peer).
19:44:34 -!- hakatashi2 has joined.
20:23:05 <esowiki> [[User:Cortex]] https://esolangs.org/w/index.php?diff=58422&oldid=58407 * Cortex * (+21)
20:28:37 <esowiki> [[User:Cortex]] https://esolangs.org/w/index.php?diff=58423&oldid=58422 * Cortex * (+9)
20:30:46 <esowiki> [[LMBC]] https://esolangs.org/w/index.php?diff=58424&oldid=58413 * Cortex * (+105)
20:41:23 <esowiki> [[Joke language list]] https://esolangs.org/w/index.php?diff=58425&oldid=58416 * Cortex * (+3)
20:41:44 -!- hexfive has quit (Quit: WeeChat 2.2).
20:43:16 <esowiki> [[Joke language list]] https://esolangs.org/w/index.php?diff=58426&oldid=58425 * Cortex * (+92)
20:43:59 -!- hexfive has joined.
20:43:59 -!- hexfive has quit (Client Quit).
20:44:32 -!- hexfive has joined.
20:44:34 <esowiki> [[Apple Pie]] https://esolangs.org/w/index.php?diff=58427&oldid=58405 * Cortex * (+25)
20:47:57 <esowiki> [[Truth-machine]] https://esolangs.org/w/index.php?diff=58428&oldid=58177 * Cortex * (+23)
20:48:44 <esowiki> [[Truth-machine]] https://esolangs.org/w/index.php?diff=58429&oldid=58428 * Cortex * (+2)
21:12:13 -!- rdococ has quit (Changing host).
21:12:13 -!- rdococ has joined.
22:00:10 -!- ais523 has joined.
22:02:06 <esowiki> [[A-DU]] https://esolangs.org/w/index.php?diff=58430&oldid=58421 * Salpynx * (+463) /* Examples */ truth-machine, and double sided tablet example
22:06:12 -!- wob_jonas has joined.
22:06:22 -!- wob_jonas has quit (Client Quit).
22:07:11 -!- b_jonas has joined.
22:08:37 <b_jonas> hi ais523
22:09:12 <ais523> hi
22:14:32 <b_jonas> I saw seven firefighting vehicles obviously already on the site of some big trouble today, in Budapest 6, at 2018-11-17 18:20+01:00. From the news article by the MTI (government news agency), there were ten firefighting vehicles,
22:14:51 <b_jonas> and it was a big fire in the roof and top floor of an office building.
22:15:32 <b_jonas> What took me like 20 minutes to realize is why the news says that the fifth storey of a four-storey house was building. But it's really obvious in retrospect.
22:16:44 <b_jonas> Care to guess the solution?
22:18:17 <b_jonas> A clue is that the news entry refers to two different sources for "fifth storey" and "five-storey office building", the first was said by a person using an office there, the second by the firefighters.
22:18:56 <b_jonas> But you may need some local knowledge for this that differs in some European countries, and I'm not sure how it works in the UK.
22:19:56 <b_jonas> This was in the city center of Budapest, so it's entirely impossible that the firefighters found out about this so slowly that the top storey of the building has entirely disappeared without trace by then.
22:20:32 <b_jonas> They have most likely heared of the fire within 30 seconds from when someone has seen the smoke and recognized it as coming from a fire.
22:20:46 <b_jonas> And they probably got there in less than five minutes.
22:21:39 <b_jonas> heh, the topic still says cornucopia. nobody changed that. strange.
22:24:00 <b_jonas> ais523: also, https://youtu.be/qA67T7FPBME video of ceremonial vote on CIPM conference by representatives of delegates of member states accepting new definitions of SI kilogram, ampere, mole and kelvin
22:25:14 <b_jonas> it's basically a formal celebration that the definitions had de facto been accepted by that time
22:25:18 <ais523> the most obvious reason to me for a "fifth storey"/"four-storey" discrepancy would be related to different numbering systems for storeys
22:25:25 <ais523> although the typical off-by-one goes in the other direction
22:25:58 <ais523> the standard numbering system in the UK is "ground floor" for the floor with the entrance, "first floor" for the floor above
22:26:06 <b_jonas> ais523: no, that one is actually consistently wrong in Hungary, "four-storey" always means that the top storey is the "fourth storey"
22:26:19 <b_jonas> but it is a difference in numbering, just not that
22:26:36 <b_jonas> yeah, what you're saying basically
22:26:53 <ais523> although given how hilly places like Birmingham are, frequently there are multiple ground floors, so you can have, e.g. "lower ground, upper ground, first floor"…
22:27:20 <ais523> places with more than two ground floors tend to use an entirely artificial numbering system; those aren't standardised and often make no sense
22:27:32 <zzo38> Some buildings in here also are 1 for the floor above the ground floor
22:27:38 <zzo38> But some aren't.
22:28:07 <b_jonas> for ordinary buildings with the entrance to a floor right above the ground, that floor is called groundfloor and numbered 0 consistently
22:28:15 <ais523> places in the UK which get a lot of foreign visitors often number the ground floor as 0, which makes things clearer for the foreigners whilst not contradicting the standard UK numbering scheme
22:29:08 <ais523> b_jonas: well, given the standard correspondence 0=first, 1=second, 2=third, if "four-storey house" means that the top storey is numbered 4, it would be the fifth storey, and that would fix the discrepancy
22:29:29 <b_jonas> but many buildings have the entrance on a storey that's either half a storey below ground level, and in that case, that floor is sometimes numbered 0 and sometimes -1, and sometimes people don't even know how it's numbered or use it inconsistently
22:29:37 <ais523> one of the biggest mistakes in English is to derive words like "fourth" from "four" rather than from "three"
22:29:59 <ais523> or, well, actually English has lots of much bigger mistakes because it's English, but that one really annoys me
22:30:18 <zzo38> I think they should just call the ground floor zero, since the level above the ground is zero, since it is at the ground.
22:30:26 <b_jonas> I have lived in such a building, with the entrance a meter below the ground. the storey with the entrance had the office of a small company and some common rooms, the three floors above had apartments
22:30:40 <ais523> over here floors below the ground floor are normally just called "basement", although you see negative numbers sometimes, especially if there's more than one of httem
22:30:42 <ais523> *them
22:31:02 <b_jonas> the storey with the entrance in that building was variously numbered 0 and -1, even in some official papers
22:31:40 <b_jonas> in buildings with an elevator, there is usually a consistent numbering because the elevator buttons are numbered, but the firefighters need not know about that numbering when they go for a fire
22:32:41 <b_jonas> for bigger buildings on sloped terrain, it happens that the same floor with an entrance is right above the ground on one face of the building, but below ground from the other face of the building. sometimes there's even entrances to two different levels on the different sides.
22:32:46 <ais523> in the UK the vast majority of buildings, other than dwellings/houses, that have multiple floors will have a lift (en_US:elevator)
22:33:02 <ais523> so the numbering from that will work
22:33:18 <b_jonas> a good example for such a building is the building K of BME (university), a rather large building
22:33:20 <ais523> the reason is basically because public buildings require disabled access to every floor
22:33:34 <ais523> and a lift is normally the only practical way to do that
22:33:48 <b_jonas> this one has five entrances, one on the front face from the Danube's side that is one storey higher than the other four entries on the other three sides of the building
22:34:22 <b_jonas> the storeys of the building have actually been renumbered a few years ago, with an offset of 1
22:34:22 <ais523> that'd be enough to indicate two ground floors, I think, in the UK
22:35:24 <ais523> in the building where I work the floors are numbered LG, UG, 1, 2, even though there's only one public entrance (on the upper ground floor); the lower ground floor has some fire exits at ground level (it's on a slope)
22:35:45 <ais523> also a loading entrance, I think (i.e. for moving goods from lorries into the building)
22:36:08 <zzo38> You can use 0 for the entrance I think is good
22:36:34 <b_jonas> zzo38, ais523: yes, that's correct about the storeys. the problem with 1-based ordinals themselves isn't specific to English, nor does it originate there. ancient Latin has had 1-based ordinals, which is why they say that Jesus was resurrected on Sunday, the third day after his death on Friday.
22:37:01 <b_jonas> the Jesus resurrection thing actually confused me a great deal when I was young
22:38:17 <b_jonas> as for naming the floors, if the floor half below the ground is numbered -1, then floor 0 is generally called either "magasföldszint" (elevated ground floor) or "félemelet" (half[th] storey).
22:40:09 <ais523> we have the word "mezzanine", which is basically a floor constructed inside the vertical extent of another floor (e.g. you have a large ground floor on one side of the building, but on the other side it's split into two)
22:40:24 <ais523> I don't think it's common to have no floor that matches ground level
22:41:06 <ais523> (in some areas the ground floor is about 50cm above-ground so that the basement can extend slightly above ground, giving access to natural light and a fire escape, but it's still considered the basement)
22:41:07 <b_jonas> it's especially confusing, because the day after easter sunday is a government holiday in Hungary, and it is called easter monday, and I also knew that Easter was (at least according to christianty) the feast of the resurrection of Jesus, so it was natural to assume that Jesus was resurrected on Monday then,
22:42:29 <b_jonas> only then it wasn't clear why Sundays in general were considered sort of the equivalent of the Sabbath by christianty, with the biggest christian churches claiming that one of the tenth commandments is to be understood to refer to Sundays now (though some christian churches disagree, and claim it refers to Saturday or Friday)
22:43:00 <b_jonas> ais523: yes, that happens too
22:43:54 <b_jonas> and in fact the floor with the entrance being slightly above ground is probably more likely for an office building in that dense inner city area than a floor a little below ground
22:44:39 <b_jonas> exactly because then the storey below the entrance level gets some light through windows partly lowered below the sidewalk
22:44:55 <b_jonas> s/partly lowered below/lowered partly below/
22:45:18 <ais523> oh, I think some hotels also have raised ground floors because it lets them install an impressive-looking staircase going up to them
22:45:30 <ais523> but they'll typically have a ground-level side entrance for disabled access
22:46:12 <b_jonas> did anyone else have this problem about Easter when they were young? or did you just get some organized education about christian culture and so could avert that?
22:46:47 -!- FreeFull has quit (Quit: kernel update).
22:47:27 <b_jonas> ais523: and yes, being an algebrist type of mathematician, one who cares about notation, I totally agree that ordinals should have started with 0, like "first, second, twoth, threeth, fourth ...", and generally use 0-based indexes without using the ordinals in the grammar sense,
22:48:19 <b_jonas> and I absolutely freaking hate how lua, a language that was decently designed and decently implemented, has a built-in # operator and a built-in optimized representation for dictionaries behaving as arrays, both of which only work well if you're using 1-based indexes for the arrays,
22:48:29 <b_jonas> and also absolutely hate how GAP uses 1-based indexes
22:51:33 <b_jonas> this GAP http://www.gap-system.org/ , for the record
22:57:38 <zzo38> Sometimes you might want a array index starting with something other than zero, but usually zero is better.
22:58:18 <b_jonas> zzo38: yes, the most common is wanting one starting with -1, but one starting with 1 or even 2 happens too
23:04:38 -!- AnotherTest has quit (Ping timeout: 245 seconds).
23:06:28 -!- FreeFull has joined.
23:07:53 -!- Zajt has quit (Quit: Leaving...).
23:30:00 -!- Sgeo_ has quit (Read error: Connection reset by peer).
23:30:35 -!- Sgeo_ has joined.
23:43:11 -!- Essadon has quit (Quit: Qutting).
23:43:34 <zzo38> I have starting writing the implementation of Netsubscribe. Currently it reads configuration from /etc/netsubscribe.conf and I have implemented subcommands "analyze", "checkpoint", and "vacuum", and configuration options for various limits and some permissions. Eventually I can also add the subcommands to use the protocol (mainly to use with xinetd), to post a note, list messages, set tags, etc.
23:45:22 <zzo38> But I also have a few questions, such as how should I do deferred operations that can be scheduled to do later and if it can't be done, to try again later until it is successful or gives up?
00:08:23 -!- tromp has quit (Remote host closed the connection).
00:08:58 -!- tromp has joined.
00:49:48 <ais523> zzo38: normally you should try deferred operations a few times with a long waiting period between them (e.g. try an hour, then a day, then a week), and notify someone (ideally the person who requested the operation) if it fails every time (then stop trying0
00:49:56 <ais523> this is what email relays do, and this seems like a similar situation
00:51:49 <zzo38> Yes, I think it is a similar situation I think
00:57:26 <zzo38> A local user posted the message, although the subscriber will be a remote user and if that operation fails then likely the subscriber cannot be notified.
00:59:27 <zzo38> What would likely to need to eventually be done is to eventually remove the subscriber from the local subscription list.
00:59:45 <b_jonas> ais523: yeah, that one confused me back in the late 1990s when the internet was very new. I sent an email to a mailing list, and later got an automated response that it couldn't be delivered. The mail was delivered to the mailing list and most people on it, only it couldn't be delivered to one person joined to the list, and some intermediate server somewhere mailed me about that.
01:01:44 <ais523> the mailing list is misconfigured, it should have asked for that sort of staus message to be sent to the list server
01:01:53 <ais523> (so that it can bounce the person in question off the list)
01:02:00 <b_jonas> ais523: yes, it was probably misconfigured. but that happens.
01:02:30 <b_jonas> and the notification probably told me who it couldn't deliver the mail to.
01:03:59 <ais523> <qmail> Hi. This is the qmail-send program at «domain». I'm afraid I wasn't able to deliver your message to the following addresses. This is a permanent error; I've given up. Sorry it didn't work out.
01:04:25 <ais523> people don't write error messages like that nowadays :-D
01:09:58 -!- oerjan has joined.
01:14:23 -!- oerjan has set topic: Welcome to the international corn cob for esoteric programming language discussion, design, development and deployment! | https://esolangs.org | logs: https://esolangs.org/logs/ http://codu.org/logs/_esoteric/ http://tunes.org/~nef/logs/esoteric/?C=M;O=D | https://www.dropbox.com/s/fyhqyvy3i8oh25m/wisdom.pdf.
01:15:05 <oerjan> b_jonas: hth
01:15:45 <oerjan> oh hm no space
01:15:54 -!- oerjan has set topic: Welcome to the international corncob for esoteric programming language discussion, design, development and deployment! | https://esolangs.org | logs: https://esolangs.org/logs/ http://codu.org/logs/_esoteric/ http://tunes.org/~nef/logs/esoteric/?C=M;O=D | https://www.dropbox.com/s/fyhqyvy3i8oh25m/wisdom.pdf.
01:22:08 -!- arseniiv has quit (Ping timeout: 245 seconds).
01:53:28 <oerjan> hm shtetl-optimized's certificate has expired
02:11:33 -!- Lord_of_Life_ has joined.
02:14:48 -!- Lord_of_Life has quit (Ping timeout: 252 seconds).
02:14:48 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
02:14:49 -!- Lord_of_Life has quit (Changing host).
02:14:49 -!- Lord_of_Life has joined.
02:37:38 -!- sleffy has joined.
02:37:46 -!- sleffy has left.
02:51:26 <zzo38> With the Netsubscribe even if it fails, the message is still public so someone can still read it later even if their side is down.
04:08:57 -!- sprocklem has quit (Quit: sprocklem).
04:09:55 -!- sprocklem has joined.
04:26:59 -!- ais523 has quit (Remote host closed the connection).
04:28:11 -!- ais523 has joined.
05:42:39 -!- ais523 has quit (Remote host closed the connection).
05:43:53 -!- ais523 has joined.
06:03:54 -!- ais523 has quit (Remote host closed the connection).
06:05:07 -!- ais523 has joined.
06:05:24 -!- ais523 has quit (Client Quit).
06:24:05 -!- xkapastel has quit (Quit: Connection closed for inactivity).
07:53:27 -!- joast has quit (Ping timeout: 240 seconds).
08:22:00 -!- imode has quit (Ping timeout: 252 seconds).
08:26:54 -!- oerjan has quit (Quit: Nite).
09:06:45 <zzo38> My question though was about what method should be used to set up the future attempts. Consider that the system may shut down or power failure or whatever before then, too, and that the program is setuid and setgid (although not to root).
09:12:50 -!- tromp has quit (Remote host closed the connection).
09:13:05 -!- tromp has joined.
10:01:06 -!- AnotherTest has joined.
10:07:22 -!- Vorpal has joined.
10:29:42 -!- tromp_ has joined.
10:29:42 -!- tromp has quit (Remote host closed the connection).
10:44:52 -!- tromp_ has quit (Remote host closed the connection).
10:45:07 -!- tromp has joined.
10:59:52 -!- hexfive has quit (Quit: WeeChat 2.2).
11:40:48 -!- arseniiv has joined.
11:56:54 <esowiki> [[Special:Log/newusers]] create * Micnap929b * New user account
12:02:52 <esowiki> [[Esolang:Introduce yourself]] M https://esolangs.org/w/index.php?diff=58431&oldid=58408 * Micnap929b * (+202) /* Introductions */
12:07:17 <esowiki> [[User:Micnap929b]] N https://esolangs.org/w/index.php?oldid=58432 * Micnap929b * (+6) Created page with "Hello!"
12:25:02 -!- Essadon has joined.
13:18:57 <arseniiv> hi, someone played Submachine game series? (by Mateusz Skutnik). I played several, nice work
14:12:27 -!- Lord_of_Life_ has joined.
14:16:12 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
14:16:13 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
14:16:13 -!- Lord_of_Life has quit (Changing host).
14:16:13 -!- Lord_of_Life has joined.
14:18:21 -!- xkapastel has joined.
14:20:27 -!- joast has joined.
17:47:04 -!- Phantom_Hoover has joined.
17:47:04 -!- Phantom_Hoover has quit (Changing host).
17:47:04 -!- Phantom_Hoover has joined.
18:14:20 <esowiki> [[TAPEX]] N https://esolangs.org/w/index.php?oldid=58433 * Micnap929b * (+7999) Created page with "''~by [[User:Micnap929b|micnap929b]]''<br/> == About == '''TAPEX''' is an esoteric programming language heavily inspired by [[Brainfuck|brainfuck]] (knowledge about it is advi..."
18:16:27 <esowiki> [[TAPEX]] M https://esolangs.org/w/index.php?diff=58434&oldid=58433 * Micnap929b * (+1)
18:20:47 <esowiki> [[Language list]] https://esolangs.org/w/index.php?diff=58435&oldid=58406 * Micnap929b * (+12) Added TAPEX
18:37:13 -!- xkapastel has quit (Quit: Connection closed for inactivity).
18:47:41 <esowiki> [[A-DU]] M https://esolangs.org/w/index.php?diff=58436&oldid=58430 * Salpynx * (+11) /* Rules for allocating storage cells */
18:49:24 -!- imode has joined.
19:09:39 -!- xkapastel has joined.
19:23:45 -!- MDead has changed nick to MDude.
19:53:55 <b_jonas> I had a dream of a paradoxical statement, but when I woke up and reconstructed it, it of course wasn't paradoxical at all.
19:54:08 <b_jonas> I'll have to write it down though.
19:57:20 <imode> combinators are the stuff of life.
19:58:25 <b_jonas> nah
19:58:29 <imode> yeah.
19:58:32 <b_jonas> they're one way of life
19:58:34 <b_jonas> but not the only way
19:58:59 <imode> they're the way of life, man. every arbitrary transformation set reduces to a set of combinators lmao.
19:59:06 <imode> hence the source of that joke. "stuff of life".
19:59:11 <imode> i.e water
19:59:39 <imode> and other building blocks and shit.
20:23:20 -!- AnotherTest has quit (Ping timeout: 250 seconds).
20:24:01 -!- AnotherTest has joined.
20:53:49 -!- hexfive has joined.
22:26:19 <esowiki> [[Brainfoctal]] https://esolangs.org/w/index.php?diff=58437&oldid=58332 * Salpynx * (+304) more elegant Godel numbering thanks to Rdebath!
22:50:31 <esowiki> [[Brainfoctal]] M https://esolangs.org/w/index.php?diff=58438&oldid=58437 * Salpynx * (-187)
23:06:05 <esowiki> [[Brainfoctal]] https://esolangs.org/w/index.php?diff=58439&oldid=58438 * Salpynx * (+571) /* Interpreters and Converters */ bash, accepts bf8 in any standard base
23:10:15 -!- AnotherTest has quit (Ping timeout: 252 seconds).
23:21:45 -!- sprocklem has quit (Quit: brb).
23:22:16 <esowiki> [[Brainfoctal]] M https://esolangs.org/w/index.php?diff=58440&oldid=58439 * Salpynx * (+11) /* Left-padding */
23:24:39 -!- sprocklem has joined.
23:26:30 <zzo38> Now I mentioned more specific of my question about setting future attempts for the Netsubscribe. Now do you know how to answer?
23:35:36 -!- Essadon has quit (Quit: Qutting).
00:00:20 -!- danieljabailey has joined.
00:01:52 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:17:18 -!- arseniiv has quit (Ping timeout: 252 seconds).
01:30:05 -!- oerjan has joined.
02:09:22 -!- xkapastel has quit (Quit: Connection closed for inactivity).
02:16:18 -!- Lord_of_Life has quit (Ping timeout: 272 seconds).
02:16:45 -!- Lord_of_Life has joined.
02:16:45 -!- Lord_of_Life has quit (Changing host).
02:16:45 -!- Lord_of_Life has joined.
04:21:02 <oerjan> today on mezzacotta: tips for creating a spring golem
04:21:17 <oerjan> http://www.mezzacotta.net/archive.php?date=2018-11-18
05:32:58 -!- hexfive has quit (Quit: WeeChat 2.2).
05:33:47 -!- hexfive has joined.
05:49:45 -!- nfd9001 has joined.
05:51:33 <zzo38> Now the first page of the Free Hero Mesh wiki includes the links for the documentation of invoking, configuration, file formats, and license. Perhaps, you can look see if these documents look like to you to be OK so far.
06:14:18 <esowiki> [[Hello++]] https://esolangs.org/w/index.php?diff=58441&oldid=56992 * Cortex * (+243)
06:23:54 <esowiki> [[Apple Pie]] https://esolangs.org/w/index.php?diff=58442&oldid=58427 * Cortex * (+117)
06:28:28 <esowiki> [[Apple Pie]] https://esolangs.org/w/index.php?diff=58443&oldid=58442 * Cortex * (-1)
06:30:21 -!- nfd has joined.
06:30:54 -!- nfd9001 has quit (Ping timeout: 272 seconds).
07:53:43 -!- tromp has quit (Remote host closed the connection).
07:54:19 -!- tromp has joined.
08:16:05 -!- tromp has quit (Remote host closed the connection).
08:16:20 -!- tromp has joined.
08:29:48 -!- imode has quit (Ping timeout: 252 seconds).
08:47:33 -!- xkapastel has joined.
09:10:31 <esowiki> [[Grime MC]] N https://esolangs.org/w/index.php?oldid=58444 * Salpynx * (+4441) mad ting
09:19:19 -!- b_jonas has quit (Quit: leaving).
09:29:19 <shachaf> zzo38: Do you think goto is important if you have named-break?
09:45:14 -!- AnotherTest has joined.
09:50:26 -!- oerjan has quit (Quit: Nite).
11:22:40 <esowiki> [[Eul]] https://esolangs.org/w/index.php?diff=58445&oldid=58281 * Backspace * (+30)
11:23:21 <esowiki> [[Eul]] https://esolangs.org/w/index.php?diff=58446&oldid=58445 * Backspace * (-30)
11:43:18 <esowiki> [[Grime MC]] M https://esolangs.org/w/index.php?diff=58447&oldid=58444 * Salpynx * (+20) /* Collatz (Eski-beat) Sequences */
12:52:00 -!- Essadon has joined.
12:55:56 -!- AnotherTest has quit (Ping timeout: 276 seconds).
13:12:35 -!- wob_jonas has joined.
13:12:42 <wob_jonas> argh! these tools suck and I have to work around them!
13:29:17 -!- AnotherTest has joined.
13:55:31 -!- wob_jonas has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client).
13:58:13 -!- arseniiv has joined.
14:13:30 -!- Lord_of_Life_ has joined.
14:14:33 -!- Sgeo_ has quit (Ping timeout: 244 seconds).
14:16:18 -!- Lord_of_Life has quit (Ping timeout: 245 seconds).
14:16:23 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
14:16:31 -!- Lord_of_Life has quit (Changing host).
14:16:31 -!- Lord_of_Life has joined.
14:26:18 -!- AnotherTest has quit (Ping timeout: 245 seconds).
14:30:58 -!- AnotherTest has joined.
14:58:40 <esowiki> [[TAPEX]] M https://esolangs.org/w/index.php?diff=58448&oldid=58434 * Micnap929b * (+322)
15:02:18 <esowiki> [[TAPEX]]