00:01:44 It would be convenient for bind statistics file to mention how long a period of time those statistics cover. I guess it might be the same as the process start time -- but then again, maybe not. 00:03:11 Which discs are better, +R or -R discs? I have -R discs, but I don't know what is better (and in what way). 00:04:09 Also, it seem that Parted Magic does not have a "umount" command, or, at least I tried it and it doesn't work. How do you unmount in Parted Magic? 00:06:14 -!- oerjan has joined. 00:07:23 O, I found apparently, +R and +RW discs allow resuming interrupted recordings with high accuracy. 00:10:51 Also, what I have read is that DVD+RW discs apparently have a different kind of menus than ordinary DVD menus; the VCR/DVD combo I have says it can record DVD+RW menus but does not have the ability to play back DVD+RW menus (although the recorded video can still be played back). 00:10:51 zzo38: these days it no longer matters whether you use -R or +R disks. it used to matter for old drives or drivers that were somewhat buggy, but that was like a decade ago. 00:11:40 O, OK. 00:14:57 heck, my computer is pretty old, and the DVD writer is like the most reliable piece of it 00:15:47 I wish I could keep it for the new computer I'll buy because it has served me so well, but alas, I can't, because it's an ATA one, and these days motherboards only have SATA and ESATA and USB connectors 00:16:03 so when I buy the new computer, I'll have to buy a cheap DVD writer 00:17:23 the motherboard is buggy, the RAM and cpu are not powerful enough, the CPU fan is terrible 00:18:06 can't you get a SATA to ATA bridge? 00:18:15 or a USB to ATA bridge 00:18:25 kmc: probably not for as cheap as a DVD writer these days 00:18:41 it used to be fancy new technology, but now it's just commonplace, so cheap they put it everywhere 00:19:20 I'll just get an USB DVD writer 00:20:33 -!- user24 has quit (Quit: Leaving). 00:26:26 ok 00:26:41 i thought there was some reason you wanted to keep this drive in particular 00:27:07 nah, just nostalgy 00:27:14 it's the first DVD drive that worked really well, that wasn't buggy 00:27:30 but these days new ones work well too 00:28:01 mm 00:28:05 I remember when I first got a DVD writer 00:28:07 it was hot shit 00:28:16 -!- Phantom_Hoover has quit (Ping timeout: 272 seconds). 00:28:52 What do you even do with a DVD writer, DVDs are so small. 00:29:45 I had about 100 GB total of hard drive space and I downloaded a lot of movies / TV shows 00:30:06 int-e: not much these days 00:30:08 so it was pretty great to get a 25 pack of DVD-R's and double that 00:30:15 int-e: but every CD reader is a DVD writer now 00:30:22 every new one that is 00:30:29 this was early 00s 00:30:38 I have a Blu-Ray disc that has a film I'd like to watch. 00:30:42 But I don't have a reader. 00:30:59 a present? 00:31:07 I wrote a Perl script to find approximate knapsack problem solutions so I could fit more pirated stuff onto a given number of DVDs 00:31:10 :) 00:31:32 It's a DVD of Jim Knopf (supposedly with English subtitles) that I ordered from Germany. 00:31:43 I mean a Blu-Ray. 00:31:48 I couldn't find it in any other format. 00:32:17 shachaf: can you find someone else who has a blu-ray reader and copy it? 00:32:25 That was my plan. 00:32:34 I asked several people and none of them seem to have one. 00:32:44 (And why would they? Optical media is passé.) 00:33:24 shachaf: there's this photo scanning company that makes a living of reading video casettes and lots of other old kinds of media in professional quality and digitizing them 00:33:33 also scanning large amounts of paper documents into usable forms 00:33:35 I'm not in a big hurry to watch it. 00:33:49 One day someone will come along with a Blu-Ray reader. 00:34:08 kmc: do you know a bunch of things about SAT solvers 00:34:12 aren't they tg? imo yes 00:34:39 https://memorescue.co.uk/ , I've no clue if they read blue-ray, but they probably do 00:35:13 I payed them to scan a few of the best paper positive family photos we had, including like two dozen of my parents' wedding pics 00:35:29 of those ones we have multiple copies of positives, but no negatives 00:36:05 there are other photos of which the negatives may be available somewhere in the attic, or at least so my mother claims but I don't completely trust her on that 00:36:33 I'm not going to send those folks my disc. 00:37:28 they're headquartered here, so for me it wasn't really sending as walking into their shop 00:40:47 do you know what else is tg 00:40:51 getting excited about things 00:41:14 about what things 00:41:47 whichever things 00:43:26 it's an enjoyable feeling, some kind of anti-cynicism thing 00:54:22 I bought an external USB DVD reader/writer just recently. 00:55:01 https://www.amazon.co.uk/gp/product/B01878ZQ8W/ if you want to get one someone else has. 00:55:07 I think they're all pretty much the same. 00:55:29 Is that addressed to me? 00:55:29 It comes with two of those fancy M-DISCs. 00:55:38 More to b_jonas. 00:55:51 . o O ( We need a fancy Greek translation of "brainfuck" so that we can append -phobia and have some fun. ) <-- a bit of cobbling together of terms gives me encephalobinema, except βίνημα means something innocent in modern greek 00:55:53 Ah, I missed those messages. 00:56:08 I have a DVD reader/writer. I thought it could do Blu-Ray but it turned out not. 00:56:27 but is attested to be rude in ancient grafitti, it seems. 00:56:45 what about brickbrain twh 00:57:37 oerjan: arseniiv already said something close to that 00:57:52 or wait 00:58:17 on Punctree: my stack organization is awful, I was implementing it for hours and yet it’s not done 00:58:21 -!- arseniiv_ has changed nick to arseniiv. 00:58:45 though I was changing implementations a couple of times 00:58:48 shachaf: plinthencephalos hth 00:58:58 it was salpynx actually 00:59:01 (maybe) 00:59:04 https://esolangs.org/logs/2019-06-28.html#lA 00:59:06 on the other hand, trees are nice 00:59:22 yeah 01:00:25 b_jonas: don’t confuse me with salpynx, our names have a different letter count! :D 01:00:33 b_jonas: i was trying hard to make the bine- have a suffix to make it a proper noun, i'm not sure salpynx did that. 01:00:33 okay bye 01:00:54 (proper as in appropriate) 01:01:29 uh I miss all the fun again 01:01:37 because bineo is a verb, which would seem awkward as i don't think greek confuses nouns and verbs like english do. 01:02:29 perhaps you need a translation that's less literal? 01:02:55 I seem to have this DVD drive: https://www.amazon.com/Samsung-Portable-External-SE-218CB-RSBS/dp/B00DBV28TG 01:03:08 I have no special comments on it. It seems to work. 01:03:58 b_jonas: i need a translation that is grammatically correct *twitch* 01:04:06 `? manglophobia 01:04:08 Manglophobia is the fear of horribly mangled "Greek" neologisms. 01:04:19 lol 01:04:43 I don't really see why it has to be greek anyway 01:04:50 `dowg manglophobia 01:04:51 9652:2016-11-09 learn Manglophobia is the fear of horribly mangled "Greek" neologisms. 01:04:53 of course i don't know ancient greek enough to be _sure_ i got the compounding right. 01:05:03 b_jonas: so it fits with -phobia 01:05:18 oerjan: use some other word instead of phobia 01:05:21 like "fear" or something 01:06:08 b_jonas: it's supposed to be a medical term and english pretty much _never_ uses germanic stems for those (unless it's an old disease name) 01:06:16 -!- arseniiv has quit (Ping timeout: 272 seconds). 01:06:25 oerjan: could be latin then? 01:06:29 -!- rdococ has quit (Remote host closed the connection). 01:06:31 how's it a medical term anyway 01:06:43 b_jonas: it's a joke medical term. 01:06:46 isn't it like an esolang term 01:07:07 "fear of brainfuck", if it were a recognized disease 01:07:39 hmm 01:07:52 could you use "P'" instead of "brainfuck"? maybe it's easier to translate 01:08:21 no wait, it's called P'' 01:08:25 https://esolangs.org/wiki/P%E2%80%B2%E2%80%B2 01:09:07 anyway, i took the point of this exercise to be finding out what it would be called if someone invented a "greek" medical term for it. 01:10:52 P'' seems to consist entirely of characters that are not greek tdnh 01:10:58 -!- Sgeo_ has joined. 01:12:33 oh if we go with -binema, the -ma needs to grow a -t- in compounds so it would be encephalobinematophobia. just rolls off the tongue. 01:14:25 -!- Sgeo__ has quit (Ping timeout: 268 seconds). 01:16:52 -!- rdococ has joined. 01:25:14 shachaf: Nothing wrong with multiplying a weight by a height. If you divide by a Times Square, you get a new ton. <-- *SWAT* -----### 01:30:23 -!- Lord_of_Life_ has joined. 01:32:07 -!- Lord_of_Life has quit (Ping timeout: 245 seconds). 01:32:07 -!- Lord_of_Life_ has changed nick to Lord_of_Life. 02:05:51 -!- xkapastel has quit (Quit: Connection closed for inactivity). 02:30:39 -!- Cale has quit (Ping timeout: 264 seconds). 03:31:37 -!- MDude has joined. 03:45:02 how come i never get swatted 04:13:23 maybe you only make fun puns and not horrible ones hth 04:41:54 -!- salpynx has joined. 04:50:53 oerjan: I was deliberately keeping to the verb form because I couldn't think of a noun formed from a thematic verb, other than a participle, which seemed wrong. 04:51:07 I thought of bf as claiming to be 'encephalobinetic', (cf εμεω and emetic) and phobias seem to apply generally to 'that sort of thing' 04:51:51 perhaps I should have suggested 'encephalobinetophobia' 04:53:26 I'm not sure about βινημα. εμεω (now that I've looked) has εμετος (m) as a noun for sickness or vomiting 04:58:09 miso- is the prefix for hate, and when combined with a vowel becomes misenecephalo-. The mis- for doing it badly is Germanic I believe, so wouldn't be attached to Greek roots. The -ea I added in misencephalobinea was euphonic and I didn't think about it too much. 05:02:38 b_jonas: You mentioned 𝒫 ″ earlier, I thought of suggesting that to you as a way to avoid bf with your Consumer Society application. Is that still too close? 05:05:21 I have used 𝒫 ″ for a TC proof in a Gödel numbering language (based on Lenguage) I'm working on to cheekily avoid referencing bf. 05:07:46 I like using bf for Gödel numbering because it is so convenient. Recent discussions have got me thinking of using Iota -> Jot -> Zot to create a Brainfoctal like system for working with Gödel numbering and avoid the bf cliche. 05:23:44 my google search also threw up βῖνος (both in https://lsj.gr/wiki/coito ) 05:23:58 Aristophanes uses βινειν in a coarse sense which seems like the best translation. I can't find βινημα anywhere that isn't the result of bad OCR for πινημα or something else 05:24:36 ooh, good link, thanks 05:29:05 you've obviously studied greek more than me, anyway 05:31:53 i was just looking stuff up in wiktionary and analogizing the transformation ἀθλέω → ἄθλημα to βινέω 05:32:47 and then found some hit. although googling again now i cannot find the grafitti mention i saw earlier 05:33:54 oh wait it's on the same site i linked, when clicking on the word 05:37:10 The source for the βινημα and βινος seems to be a Spanish dictionary, my vocab comes from LSJ (English) lexicon. I'll dig a bit more to see if I can find the sources 05:37:23 Why is everything terrible if you want to be a cheapskate? I've been looking for a free secondary DNS provider (after the current one went paid), and they're all broken. 05:37:52 In particular, he.net says "validation successful" but just doesn't load (forum chatter suggests because they find current DNSSEC algorithm types invalid), ClouDNS weirdly makes secondary/slave DNS a paid feature, DNS4.pro just says "Registration closed" on the sign-up form, BuddyNS has a too low limit of 300k requests/month, 1984hosting says absolutely nowhere what to whitelist for zone transfers. 05:37:59 (And pretty much all these problems are discoverable only after making an account.) 05:38:38 I could just use the esolangs.org server as a secondary, but that'd only work for esolangs.org, I don't feel right using it for any other because it's kind of a charity thing. 05:43:46 Funny, here's a paper that explicitly remarks that LSJ is not a good source for words like that. Use a continental dictionary, not an English one https://www.jstor.org/stable/639023 05:44:25 [[DOBELA]] https://esolangs.org/w/index.php?diff=63792&oldid=32434 * Stasoid * (+132) /* Implementations */ 06:01:02 From a first C graffito from Stabia, "... to obtain a βεινημα". This is the first and only occurrence of the nomen actionis derived from βινω." according to that paper I linked to above (p.59). 06:01:59 I'm learning a lot, mainly about how inadequate my beloved LSJ is 06:06:07 [[DOBELA]] https://esolangs.org/w/index.php?diff=63793&oldid=63792 * Stasoid * (+4153) /* Hello! */ 06:09:48 -!- oerjan has quit (Quit: Nite). 06:11:35 `𝒫 ″ 06:11:36 ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: 𝒫: not found 06:26:59 `unidecode 𝒫 ″ 06:26:59 ​[U+1D4AB MATHEMATICAL SCRIPT CAPITAL P] [U+0020 SPACE] [U+2033 DOUBLE PRIME] 06:30:41 that is my attempt at the name of C. Böhm's language. The script capital P is a slightly different form in the original paper (which I cannot find a digital readable version of anywhere, because information isn't free yet), but someone has scanned the characters and made that available. 06:33:43 Has anyone here worked with Iota / Jot / Zot? There doesn 06:34:17 t seem to be even a basic Hello World. 06:38:19 [[Zot]] M https://esolangs.org/w/index.php?diff=63794&oldid=46289 * Salpynx * (+23) /* External resources */ archived resource 06:41:58 [[Jot]] M https://esolangs.org/w/index.php?diff=63795&oldid=51795 * Salpynx * (+25) /* External resources */ archived resource 06:45:47 [[Jot]] M https://esolangs.org/w/index.php?diff=63796&oldid=63795 * Salpynx * (+35) reference Iota 06:50:17 [[Jot]] M https://esolangs.org/w/index.php?diff=63797&oldid=63796 * Salpynx * (-35) /* External resources */ turns out the creator still has a current site. 06:51:49 [[Zot]] M https://esolangs.org/w/index.php?diff=63798&oldid=63794 * Salpynx * (-36) direct link to current site 06:53:03 [[Chris Barker]] M https://esolangs.org/w/index.php?diff=63799&oldid=31885 * Salpynx * (+3) /* External resources */ update personal website 06:56:11 [[Iota]] M https://esolangs.org/w/index.php?diff=63800&oldid=63601 * Salpynx * (+34) /* External resources */ more relevant tutorial 07:00:22 [[DOBELA]] https://esolangs.org/w/index.php?diff=63801&oldid=63793 * Stasoid * (+0) Old code mixed the rule and reflections from walls, which made it obscure. New code shows the rule more purely. 07:07:12 [[DOBELA]] https://esolangs.org/w/index.php?diff=63802&oldid=63801 * Stasoid * (-939) /* Hello! */ 07:10:40 -!- AnotherTest has joined. 08:10:24 -!- MDude has quit (Read error: Connection timed out). 09:16:50 -!- Phantom_Hoover has joined. 09:49:38 -!- rdococ has quit (Changing host). 09:49:38 -!- rdococ has joined. 09:52:48 -!- ^ has changed nick to uplime. 09:55:19 salpynx: doesn't matter now, because I have invented Consumer Society already, and it would do no good to uninvent it. I was thinking of brainfuck as an example back when I first thought of that syntax trick. 10:03:12 -!- Sgeo_ has quit (Ping timeout: 244 seconds). 10:09:04 also, this channel is weird 10:15:36 -!- moei has joined. 10:40:52 [[User talk:A]] M https://esolangs.org/w/index.php?diff=63803&oldid=63776 * A * (+501) /* Write some nonsense here */ 10:44:52 -!- Sgeo has joined. 10:57:16 b_jonas: ah, I thought you were holding back from publishing Consumer Society because some parts weren't polished, and choosing bf or something else was part of that. 10:57:50 salpynx: oh, some parts aren't polished, that's true, but it doesn't have much to do with bf 11:00:23 I have to write example program, factor parts of it to a reusable library, then write a reference interpreter, and write detailed documentation 11:01:21 -!- user24 has joined. 11:24:28 -!- JonoCode9374 has joined. 11:29:31 -!- JonoCode9374 has quit (Ping timeout: 260 seconds). 11:32:56 [[Sign]] N https://esolangs.org/w/index.php?oldid=63804 * A * (+2875) The reason FORTRAN has a three-way branch IF (ABC) 1,2,3 is because the machine had a three-way branch, and that way they could generate that in a single instruction. 11:35:37 [[Sign]] M https://esolangs.org/w/index.php?diff=63805&oldid=63804 * A * (-316) 11:36:23 [[Sign]] M https://esolangs.org/w/index.php?diff=63806&oldid=63805 * A * (-182) /* Syntax */ Uhh... 11:44:36 -!- Jonocode9374 has joined. 11:45:24 -!- Jonocode9374 has quit (Remote host closed the connection). 12:29:08 -!- xkapastel has joined. 12:33:49 -!- atslash has joined. 13:00:30 -!- user24 has quit (Quit: Leaving). 13:30:58 -!- Lord_of_Life_ has joined. 13:33:21 -!- Lord_of_Life has quit (Ping timeout: 248 seconds). 13:33:34 -!- Lord_of_Life_ has changed nick to Lord_of_Life. 13:52:55 -!- Phantom_Hoover has quit (Ping timeout: 268 seconds). 14:34:48 -!- salpynx has quit (Remote host closed the connection). 14:47:11 -!- sftp has quit (Ping timeout: 268 seconds). 15:04:29 -!- xkapastel has quit (Quit: Connection closed for inactivity). 15:08:12 -!- arseniiv has joined. 15:13:45 -!- sftp has joined. 15:13:52 -!- xkapastel has joined. 16:02:16 arseniiv: I don't understand that description. what is the < instruction supposed to do in punctree? 16:06:23 b_jonas: there are three constructions of a tree′: as _, as 2 tree′ tree and as 2 tree tree′, so < filters out the second (and accidently the first too, but it can be remedied by equality testing beforehand). In other words, if the hole is somewhere in the left branch, it returns the argument intact, and if it isn’t, it returns _ 16:09:05 I found a computer game on this computer titled "Bugs In Space", but the title doesn't seems to make so much sense. The documentation says it is a text-adventure game, like Rogue or Hack. However, it isn't a text-adventure game, and it isn't a roguelike game either. And, the playfield memory is stored in the visible part of video memory. 16:09:33 [[Punctree]] M https://esolangs.org/w/index.php?diff=63807&oldid=63755 * Arseniiv * (+102) clarify < 16:10:41 b_jonas: more mundanely, < checks whether the hole is to the left or to the right 16:10:59 (_ being the hole) 16:11:18 b_jonas: in still other words, it filters “zipper-ready” values 16:12:18 The description for an extra life is "Strong You, can't move (keep track of lives)", and the description for a food is "Food, 1 food point", although there are no "food points"; collecting it does nothing except remove the food from the screen (so that objects other than the player can now pass). 16:16:05 zzo38: a strange game :D seems unfinished 16:17:21 oh I see! it checks which side of the root the hole is 16:17:27 that makes sense 16:17:42 though the choice of output looks a bit strange 16:20:22 so will you be implementing this language? with the zippers implemented as the tree being sliced all through the path from the root to the hole, and each level hanging off that stored in a banker queue, together with directions for which way the path turns, or something? 16:51:33 @metar EGLL 16:51:34 EGLL 291620Z AUTO 15011KT 9999 NCD 32/12 Q1012 16:59:22 b_jonas: yes, exactly my implementation 17:02:11 I had written all ideal stuff like trees, though that’s all untested, and now I’ve yet to complete it with mundane things like IO and that stack. I was foolish to suggest treating bars as other values in the stack, it makes so much hassle 17:04:34 I’ll writing it all currently in Jupyter and maybe then it will go into some Python module 17:04:50 s/I’ll/I’m 17:19:54 arseniiv: and then you'll be debugging it for about as long as implementing it took for the first place 17:20:13 I'll have to read the docs to figure out how those stack operations with the bars work 17:23:51 b_jonas: yeah I was noticing several subtle bugs which would be a pain if left as is, by pure chance 17:25:51 there's still some things I don't understand in this description 17:26:42 the ^ / \ operations, how do they represent the pair of the tree and the holey tree? do they store them as the two top elements of the stack? 17:27:10 or are the elements of the stack supposed to be such pairs? 17:32:38 and I don't understand how the ? command is supposed to work. what's on the stack when you run the code blocks, and what happens with what they leave on the stack? 17:33:09 do you just pop all three blocks at the start? 17:46:28 I got some "ext4_mb_generate_buddy" errors on my computer. As far as I can tell, no data is lost. Is it anything serious? 17:50:07 Also, is it possible to make it to store file access times in RAM but not to write them to disk (in order to reduce disk I/O)? 18:00:58 Also, are there checksums for files in ext4? 18:39:02 How many different ranks of poker hands are there if you split each rank into its subranks? For example, I think there are ten subranks of a straight flush (from ace low to a royal flush) 18:39:35 (and including everything lower than a pair, too) 18:41:11 yeah 18:41:29 and 10 subranks of a regular straight as well 18:42:03 -!- Sgeo_ has joined. 18:42:28 Yes. 18:42:58 -!- Sgeo has quit (Ping timeout: 244 seconds). 18:43:13 13*12 = 156 ranks of four-of-a-kind? 18:43:27 Yes, that is what I thought, too. 18:44:57 although, the fifth card is actually irrelevant? because you can't have two hands which each have the same 4-of-a-kind 18:45:04 but maybe you can in games like hold 'em where some cards are shared 18:45:50 full house would be 13*12 as well 18:46:43 Yes, sometimes there are shared cards, or maybe each player draws from a separate deck (not used in any form of poker I know, but potentially possible) 18:49:07 -!- Sgeo has joined. 18:49:32 -!- Sgeo_ has quit (Ping timeout: 268 seconds). 18:51:11 In Texas Hold'em no more than one player can have a royal flush unless everyone has a royal flush (if there are three players, it is not possible for only two players to have a royal flush), but you can have two players with the same four matching cards for four of a kind but one player might have a higher fifth card. 18:56:18 and you can't have six players have three or four of a kind in six different ranks, so how do you count the different fours of a kind and threes of a kind possible? I don't even understand what the question is supposed to be 18:57:57 and I think in some variants of poker, there are rules where if two players have hands that are close but not identical, they split the stakes of that round rather than determining which hand is better 18:58:33 For the purpose of my question, assume there are an unlimited number of players and that each player draws from a separate deck (of 52 cards only; no jokers) and that standard ranking is in use. 18:59:16 (You will not necessarily actually do this; it is just one way in which the conditions I intend of the question are in use.) 19:00:18 zzo38: in that case is the answer just the number of different hands possible, binomial(52,5)? 19:01:07 that's 2598960 19:02:24 No, since some hands are tied with each other, such as the four royal flushes all tie with each other, and broadways tie with each other, and so on. 19:02:37 ok 19:09:05 Do you know what is the rule in Texas Hold'em if there are three players, each bets 111 and then one player folds, so now the pot has 333, and then the two remaining players tie, what happens? 19:12:28 I don't know, I'd presume both of those players would get half of the stakes, which is 166.5 19:14:29 -!- xkapastel has quit (Quit: Connection closed for inactivity). 19:14:46 But what if the points are required to be integers? (Sometimes they must be a multiple of a larger number, but that is not relevant for freezeouts, in which you can just call the smallest unit 1) 19:15:49 zzo38: I don't think they are required to be integers. stakes and raises are required to be multiples of the starting stake for the round, but the fractions still matter when someone goes all in, which they can do even if their remaining money isn't a multiple of what they're required to be 19:16:07 and other players can also hold the same amount if someone goes all in, provided they have the money 19:16:33 but if you insist on integers, then I suggest you carry the remainder to the stake of the next round 19:17:09 Yes, although you can't split the chips into units smaller than the smallest units; if you are betting cash, then you can't split the cash smaller than one cent 19:19:01 It was my idea too though, to carry any remainder to the next round 19:38:04 -!- lldd_ has joined. 19:40:11 -!- xkapastel has joined. 19:47:32 -!- moei has quit (Ping timeout: 245 seconds). 20:04:10 the ^ / \ operations, how do they represent the pair of the tree and the holey tree? do they store them as the two top elements of the stack? => ah, no, no. Earlier int-e asked about the same thing; I reprezent a zipper (t′ t) as a holey tree 2 t′ t, it’s a nice opportunity, it’s naturally a pair 20:05:49 do you just pop all three blocks at the start? => yeah. I’ll add a comment that all command arguments are popped before it’s executed 20:07:15 then, when a block is runned, the stack is as it was before, but the evaluation of commands from the previous code is suspended while the block runs, then the stack again is not perturbed in any way and the previous code resumes to run 20:07:43 I think FALSE treats these blocks analogously, and some Forth variants which have them, too 20:11:11 [[Punctree]] M https://esolangs.org/w/index.php?diff=63808&oldid=63807 * Arseniiv * (+376) /* Syntax */ clarify 20:15:07 I mean, both evaluation of blocks and evaluation of control-flow commands (all are popped beforehand) 20:15:50 also I would cheat and wouldn’t convert code to trees (or back) if there is no necessity 20:16:30 technically it would give us a language with two data types and an implicit conversion, but… well… 20:17:08 let’s treat as a secret interpreter optimization 20:22:55 document the pair thing too 20:46:11 it’s already elaborated after yesterday’s int-e question :) 20:46:22 is it too obscure still?.. 21:07:51 -!- Phantom_Hoover has joined. 21:11:28 [[Talk:Rook]] https://esolangs.org/w/index.php?diff=63809&oldid=63784 * Areallycoolusername * (+135) 21:17:48 The Microsoft QuickBASIC compiler does not have very well optimization; for example, it reloads the segment register for each PEEK and POKE, even though it should not have to do that. 21:18:46 dunno, let me look 21:19:18 -!- lldd_ has quit (Quit: Leaving). 21:20:17 arseniiv: well... it might be better if it mentioned that at the list of statements, but whatever 21:20:50 (It also clears the high half of the register when doing PEEK even in cases where the high half isn't used anyways.) 21:21:09 zzo38: but it has functions to call into machine language routines, so you can just use those for the most important inner loops if you want 21:21:46 and VARPTR and VARSEG functions to get the address of variables, and a documented representation for strings, so you can bridge the basic data with the machine language data 21:22:39 Yes, although on the DOS computer I do not have any other compiler that I can use with it, and do not know the file format for the files to do it by myself either. 21:22:52 -!- arseniiv has quit (Ping timeout: 246 seconds). 21:23:10 but in the end, it's supposed to be a simple language for what then counted as high-level graphical programs, which is why it has some fancy graphical builtins, but not a very good high-performance programming language 21:23:11 Yes, I know of VARPTR and VARSEG, and the string representation. 21:24:26 zzo38: what do you mean? there are native pascal and C compilers on DOS. they also don't optimize very well, but the C compilers are at least better then BASIC, and come with fewer overhead because they're careful with what they link in, 21:24:33 and they too can interface easily with machine language code 21:24:57 (I think I have also used VARPTR$ to compare by-reference arguments) 21:25:29 b_jonas: But I do not have any of those, nor the assembler that can be linked with BASIC codes in this way. 21:26:26 (The BASIC compiler can output a assembly code dump, and some optimizations can be done using that, in case I will make my own optimizer for it, but I don't know how to compile the result into a .OBJ file) 21:27:18 zzo38: if you don't have a compiler, you may have to get one from the internet. it's pretty hard to buy them now. 21:27:33 termbot had those compilers 21:27:41 an assembler too 21:27:53 well, the assembler comes with the compiler 21:29:11 If I have a assembler and learn enough about the x86 code then I could use that. 21:30:40 Also, how can I do more precise timing in QuickBASIC? I have used SOUND for timing, but if you are using other sounds already then that won't work. 21:30:47 for learning about the PC and DOS environment and x86, a good book is the one linked at https://esolangs.org/wiki/Y86#References 21:31:28 I don't think it has builtins for more precise timing. you might need to call machine code subroutines for that. 21:33:28 What machine code subroutines, though? Using PEEK to read the system timer counter is not more precise than TIMER. 21:34:29 dunno, for that you'd have to read about the hardware stuff from that book or other books 21:35:26 Fortunately I have a book describing the PC hardware 21:48:36 Reprogramming the system timer might do butwould cause other problems, probably. 21:50:24 zzo38: you can try using the video card, it has a timer to advance between scanlines 21:53:29 Can the number of frames be counted? Also, will this work on DOSBOX as well? 21:53:50 I don't know 21:53:58 I don't think it counts frames 22:01:06 I don't know how portable it is, but on some circumstances you might be able to use channel 1 of the PIT, without affecting the other uses (system timer interrupt generation, PC speaker). 22:01:22 -!- AnotherTest has quit (Ping timeout: 246 seconds). 22:01:53 There's also the more modern HPET. 22:03:34 And on modern hardware (Pentium and later) there's always the TSC. 22:03:52 I wonder if you can use RDTSC[P] from real mode. 22:05:10 The manual sort of implies that probably. 22:05:36 "When in protected or virtual 8086 mode, the time stamp disable (TSD) flag in register CR4 restricts the use of the RDTSC instruction as follows." 22:06:16 Which you could read to mean otherwise it's not restricted. 22:07:04 Oh, for RDTSCP it even explicitly says that. "When in real-address mode, the RDTSCP instruction is always enabled." 22:11:12 welp 22:11:26 -!- Sgeo_ has joined. 22:13:23 How to do the timing with the video card? 22:15:30 -!- Sgeo has quit (Ping timeout: 268 seconds). 22:15:32 zzo38: read which scan line it is in using its IO register interface, that way you can track time as long as you read at least once per frame 22:15:56 that's exposed so that you can update during vertical retrace 22:21:44 There's also an interrupt you can enable at the start of the vertical retrace, which is apparently something introduced in EGA, supported on VGA but not properly working in DOSBox or included in many of the VGA programming references available on the interwebs. 22:21:54 Or so says http://www.vcfed.org/forum/showthread.php?62049-The-myth-of-the-vertical-retrace-interrupt-on-EGA-VGA 22:22:35 I will want to ensure that the program will work properly on DOSBOX, so, maybe it won't do. 22:33:22 Right. Poking at the DOSBox source, looks like it indeed only triggers the IRQ if the machine is set to EGA mode. And I don't know where in VGA registers the scan line is exposed. (There's a "vertical retrace is on" bit in the Input Status #1 Register, but that's just that bit. 22:34:13 (In case it helps, http://www.osdever.net/FreeVGA/home.htm is what I've always used to look up VGA programming materials.) 22:34:29 -!- xkapastel has quit (Quit: Connection closed for inactivity). 22:34:43 Hmm can the 8253 counter be read? That would give a 1.2 MHz resolution. 22:36:02 I wonder, doesn't the CGA expose a counter that has a longer cycle than one frame (or two frame for interlaced)? It must have some such timer internally for blinking the cursor 22:37:11 apparently so: https://wiki.osdev.org/Programmable_Interval_Timer#Reading_The_Current_Count 22:38:31 I guess. You'd have to read it at least as often as the channel's counter is reset, though. 22:39:50 Well this is the same chip that's driving the 18.2Hz timer interrupt which already increments a counter. 22:47:12 (It would still be messy to use. You can't just read the global timer counter and the current PIT counter; you also have to figure out whether there was an interrupt inbetween these two operations.) 22:48:32 int-e: or just disable interrupts between the two reads, because that's simpler 22:49:10 not really 22:49:24 because the question is whether the PIT internal counter overflowed or not. 22:49:31 oh 22:50:23 I guess if using the SOUND command was an option, so's probably busy-looping and looking at the counter often enough. 23:16:00 -!- xkapastel has joined.