00:14:11 -!- FireFly has quit (Quit: WeeChat 0.4.0). 00:15:13 -!- FireFly has joined. 00:41:09 -!- Bike has quit (Ping timeout: 248 seconds). 00:42:56 -!- Bike has joined. 01:12:58 Rule 100.6b Players can use the _Magic_ Store & Event Locator to find tournaments in their area 01:15:04 It is weird knowing people IRL who know me as "Taneb" 01:20:36 haha 01:20:41 Sgeo: yes, it's the best rule 01:22:05 Sgeo: does that mean they are allowed to do so during a game? 01:36:54 -!- yorick has quit (Read error: Connection reset by peer). 01:43:58 -!- oerjan has quit (Quit: leaving). 02:18:49 I would assume so. 02:22:45 -!- augur has joined. 02:24:00 -!- augur_ has joined. 02:24:29 -!- augur has quit (Read error: Connection reset by peer). 03:03:08 -!- Sorella has quit (Quit: It is tiem!). 03:43:12 https://twitter.com/EvilHaskellTips 03:48:35 kmc: <3 03:53:54 https://twitter.com/mtabini/status/430159283683360768/photo/1 03:55:01 Is CGFloat an IEEE single float? 03:56:01 Oh. It is a float with the property sizeof(CGFloat) == sizeof(void*). :( 03:57:07 So... it can't actually even store a full US phone number on 32-bit systems. 03:57:54 "+1 555 867 5309" is greater than 2^24-1. :( 03:59:01 amazing 03:59:25 Hell, so's "+1 000 000 0000". 04:00:03 Which is not a legal number, but that's neither here nor there. 04:00:05 who needs this +1 though 04:00:06 this is america 04:00:36 even ITU agrees that we're number one 04:00:44 There are places in the country where you actually have to dial "1 XXX XXX XXXX" though. 04:00:47 Even for local numbers. 04:00:50 yes 04:35:35 "+82 10 XXXX YYYY"? (that's a lot greater than 2^24-1) 04:36:25 and I think E.164 allows the maximum of 15 digits 04:56:17 -!- tromp_ has quit (Remote host closed the connection). 04:56:51 -!- tromp_ has joined. 05:01:25 -!- tromp_ has quit (Ping timeout: 248 seconds). 05:08:37 Isn't that the sort of trick people would try in the 1970s? 05:09:03 Right alongside two digit years? 05:09:15 (Not sure why I'm blaming the 70s specifically) 05:12:50 ? 05:14:02 i for one have no idea what you are talking about 05:14:38 Y2k, storing two digits of the year in order to save memory 05:20:29 using a float for phone numbers is also space-inefficient, though 05:22:13 > logBase 2 (10**15) 05:22:14 49.82892142331043 05:24:33 lifthrasiir: I was assuming this was American, and also I'm only really familiar with the North American dialing plan. :) 05:25:37 ;) 05:40:48 +358 40 NNN NNNN is a typical Finnish mobile phone number. 05:42:58 -!- polytone has quit (Quit: Server updates). 05:44:50 -!- monotone has joined. 05:53:06 +1 NNN NNN NNNN is a North American number. 05:53:47 (can't be more specific than that; that's the scheme, there's not a more nation-specific easy prefix, nor is there such a thing for cell numbers) 05:53:54 Kindle is so annoying to hold compared to the Nook 05:54:01 Trying to remind myself that the software is far better 05:54:21 if you have to remind yourself, is it really better? 05:54:59 I'm likely to get used to the lack of bugs and ability to do simple things like hilighting across pages and likely to take that for granted 05:55:00 did you like buy both 05:55:07 Bike: yes. Not at the same time though 05:55:14 why? 05:55:52 I think partially wanted the glow light stuff, partially sick of the Nook's perpetual bugginess, partially ... ads maybe 05:56:09 Also remembering that the Kindle had a feature that I kept wishing the Nook had 05:57:52 040, 041, 044, 0450, 046 and 050 (the initial 0 is dropped when used with the country code) used to be operator-specific prefixes for mobile phone networks, but they changed it so that you can keep the number when switching operators, so they're all mixed up these days. 06:11:19 how consumerist 06:32:40 fizzie: the same thing happened in Korea, +82 (0)10 vs. +82 (0)1[1-9]. 06:34:06 -!- jix_ has joined. 06:34:08 -!- heroux_ has joined. 06:35:38 http://necros.gibdon.com/scene-music-minor 06:36:03 Pentagonal Dreams is "less in quality than average, or short" according to this person 06:36:03 wtf 06:37:41 -!- Vorpal has joined. 06:38:16 -!- conehead_ has joined. 06:38:45 -!- FireFly has quit (*.net *.split). 06:38:45 -!- lambdabot has quit (*.net *.split). 06:38:45 -!- olsner has quit (*.net *.split). 06:38:45 -!- shachaf has quit (*.net *.split). 06:38:45 -!- Vorpal_ has quit (*.net *.split). 06:38:46 -!- conehead has quit (*.net *.split). 06:38:46 -!- jix has quit (*.net *.split). 06:38:47 -!- heroux has quit (*.net *.split). 06:38:48 -!- fungot has quit (*.net *.split). 06:39:14 -!- heroux_ has changed nick to heroux. 06:41:46 'infinity' which is on the main list, is about as short as pentagonal dreams 06:47:39 -!- lambdabot has joined. 06:48:46 -!- olsner has joined. 07:08:52 Then it must be "less in quality than average". 07:27:55 -!- FireFly has joined. 07:45:53 Oona Räisänen‏ @windyoona: "Russians keep referring to me as Финский инженер (Finnish engineer). I wonder if it means something else." 07:47:30 -!- augur_ has quit (Ping timeout: 252 seconds). 07:51:14 -!- augur has joined. 07:51:54 I read (some of) the Slashdot comments about that helicopter thing, and I wish I hadn't. 07:52:03 why 07:52:25 Because it seemed to be approximately 90% about her gender. 07:52:39 sigh 07:57:58 she's pretty awesome 07:58:20 waiting for your meal at a restaurant? why not reverse engineer the wireless paging protocol http://www.windytan.com/2013/09/the-burger-pager.html 07:59:13 -!- tromp_ has joined. 07:59:21 -!- tromp_ has quit (Read error: Connection reset by peer). 08:00:03 -!- tromp_ has joined. 08:00:38 i wonder what her job is 08:04:31 -!- tromp_ has quit (Ping timeout: 272 seconds). 08:05:13 Software developer, I think. We have some friends in common. (You know, Finland; it's not such a giant community.) 08:05:52 At the company with the silliest YouTube ads. 08:05:56 Let's see if I can find one. 08:06:14 http://www.youtube.com/watch?v=3Jym9rfQgec there you go 08:06:49 (I keep getting that in front of my videos, it's probably a geographically Finland-localized ad.) 08:08:17 wow. what? 08:08:21 fizzie: yeah obviously the comments should be about how she's finnish 08:08:34 oklopol: Right, exactly! 08:08:47 (There was a bit of that too, since it said "Finnish" in the title.) 08:08:53 okay, good 08:09:27 wow this video is available in 4K 08:09:28 thank god 08:11:08 Does it make you want to go work there? 08:11:35 (It didn't really "work" for me, personally.) 08:14:06 ... it kind of does, yeah 08:14:20 but also makes me feel like i'm not cool enough to work there 08:14:47 which is the problem with this sort of thing 08:15:44 but their incredible committment to the "rockstar" trope is almost enough to make it un-terrible 08:16:01 -!- MindlessDrone has joined. 08:16:11 looks like they do some haskell too 08:16:22 -!- shachaf has joined. 08:17:58 They were "best place to work at" (according to the Great Place to Work Institute's survey) in Finland for 2008, 2009, 2010 and 2011, but not in the last couple of years. 08:19:42 wonder what happened 08:20:49 Oh, I guess in 2012 at least they just didn't take part. 08:21:13 You know, to be fair to other companies and all that. 08:23:18 hehe 08:26:16 if you work at the best place to work at does that mean there's nowhere to go but down :'( 08:26:47 and just by joining you're probably making the company worse :( 08:27:34 I think you're supposed to think of it so that if you switch jobs, you'll just have to help make the new place even better. 08:28:08 apparently i work at the "best place to work at" (according to the Great Place to Work Institute's survey) 08:28:27 Globally, or regionally? (Do they even do a global ranking?) 08:28:30 "best place at which to work" (according to grammar pedants) 08:29:00 i've honestly never heard anyone do the preposition thing 08:29:01 kmc: p. sure that's a rule grammar pedants invented to have something to ped 08:29:17 fizzie: i don't know, i just went to their web page and clicked around 08:29:52 but these are all us companies so i guess it's regional 08:29:55 guys, I realized something 08:30:52 the 220 V cable between the mains and the power supply is the oldest piece of technology we have in our computers. it's been exactly the same type of cable since the XT. 08:31:03 mine's only 115 V :( 08:31:20 almost everything else in the hardware and software have been replaced with something more modern since much later. 08:31:25 This one's 230V, nominally. I'm sure that was the point. 08:31:45 b_jonas: anyway that's an interesting observation 08:31:47 fizzie: yes, it used to be 220 V nominal back then, now it's 230 V nominal. 08:32:10 (the cable is IEC 60320 C13, for what it's worth) 08:32:42 At home I'm still using the same computer as the one I've first had on my own, since about 18 years ago, but it's only the same computer because I think of it like that. 08:32:56 Every part has been replaced at least once, most parts have been replaced multiple times, 08:33:11 you can't replace the same part twice 08:33:17 and at one point almost the whole hardware got replaced at the same time (but the hard disk stayed the same at that point). 08:33:19 it's just the same part because you think of it like that 08:33:27 i have like 20 of those cables 08:33:35 (but then did you truly replace it........!!) 08:33:38 shachaf: exactly, and it's the same computer only because I think of it like that. 08:33:55 i don't think i use desktop computers anymore 08:34:13 shachaf: when all the hw got replaced, I could have decided it's a new computer only I migrated the hard disk and the software and the desk and some other stuff. 08:34:49 i don't think i trust this Great Place to Work Institute v. much 08:35:09 * kmc -> sleepytime 08:35:15 good neegan 08:35:28 good night 08:35:41 So anyway, the power cable isn't the same piece either, but that's the only part that hasn't been upgraded to something more modern. The same power cable I first used might still work today. 08:36:13 in the really old days it was just a cable 08:36:52 but now it's a power cable 08:36:58 that has to be an upgrade 08:37:04 I think the power led might be another candidate. Since when has that been using the same two-pin arrangement on the motherboard? 08:38:36 -!- augur has quit (Read error: Connection reset by peer). 08:38:44 -!- augur has joined. 08:40:50 The 3.5mm jack is also a reasonably old design. 08:41:31 god, hooking up the main bus on the motherboard was a pita. fucking speaker on a wire with this shitty ass hookup. 08:43:28 came out at least four times during build, and that's where the fucking power button connects! 08:52:38 -!- conehead_ has quit (Quit: Computer has gone to sleep.). 08:52:39 -!- conehead__ has changed nick to conehead_. 09:01:20 -!- Tritonio has joined. 09:01:51 fizzie: true 09:11:47 -!- Tritonio1 has joined. 09:14:20 -!- Tritonio has quit (Ping timeout: 250 seconds). 09:30:45 -!- Slereah__ has quit (Ping timeout: 272 seconds). 10:19:11 -!- SeeNoEvil has joined. 10:21:06 -!- elliott has joined. 10:21:30 -!- elliott has changed nick to Guest1732. 10:22:18 -!- Guest1732 has left. 10:22:18 -!- Guest1732 has joined. 10:22:27 SeeNoEvil: CTCP TIME? 10:22:30 -!- Guest1732 has quit (Client Quit). 10:22:40 -!- elliott_ has joined. 10:23:02 -!- elliott_ has changed nick to Guest50025. 10:23:31 -!- Guest50025 has quit (Client Quit). 10:23:41 -!- elliott__ has joined. 10:28:30 Guest1732: trying to understand IRC commands, and what time zone you are in. 10:30:13 Seem to recall some earlier chat where you seemed interested in eigenratios. 10:30:29 eigenratios are pretty cool 10:30:34 I don't know much about them though... that must have been ages ago 10:30:47 Yeah. I've been reading the logs. 10:31:43 my condolences, the further you go back the more annoying I am :P 10:32:46 You had a novel idea for defining a self-interpreter that wasn't "cheating" - having an eigenratio > 1. 10:33:20 Might not have been you. But I think it was - at least an "elliot". 10:33:40 yeah, that was mine, I think, though perhaps not originally or solely 10:33:57 I quite like it, but IIRC you can just cheat in a more elaborate way by defining the host language in a way that lets you do a cheating self-interpreter with an eigenratio slightly above 1 10:34:19 like, an eval instruction that adds a slight slowdown. 10:36:06 I think it might be a bit tricky to do I think. 10:36:22 I think. Yes. I do... :-) 10:36:46 I think... I think... I think... it might be a bit trick. 10:37:25 I think you should create an actual working example. 10:37:29 well, for instance 10:37:44 let's say you have an implementation where every instruction takes 1s to execute 10:37:53 but when you call eval, any evals in the code you're evalling take 2s instead 10:37:59 and then 4s when you nest deeper, etc. 10:38:18 (this runs into another problem with this kind of stuff -- eigenratios are sort of an implementation-dependent notion rather than something inherent to the language) 10:39:53 Not always. Implement your own interpreter for the SUBLEQ interpreter on eigneration.blogspot,com and see it you do it in a way that produces a different eigenratio from the 34.xxx value. 10:40:59 I mean, you create the bottom level interpreter, and then run a stack of the self-interpreter on the blog..... 10:43:50 In your example with eval(eval(eval(something))), how would the inner instances "know" to run slower? 10:48:04 This one: http://eigenratios.blogspot.co.nz/2006/09/mark-ii-oisc-self-interpreter.html 10:51:28 Gotta go. "I'll be back" some other time. 10:51:40 -!- SeeNoEvil has left. 10:53:00 -!- oerjan has joined. 11:12:10 -!- jconn has quit (Remote host closed the connection). 11:12:19 -!- jconn has joined. 11:25:12 -!- sebbu has joined. 11:25:46 -!- sebbu has quit (Changing host). 11:25:46 -!- sebbu has joined. 11:40:31 -!- yorick has joined. 13:02:14 -!- Sgeo has quit (Read error: Connection reset by peer). 13:08:16 -!- tromp_ has joined. 13:15:57 -!- Sorella has joined. 13:38:18 -!- boily has joined. 13:43:00 -!- boily has quit (Client Quit). 13:43:22 -!- boily has joined. 13:43:28 -!- metasepia has joined. 13:43:50 good SSL morning! 13:47:32 -!- tromp_ has quit (Remote host closed the connection). 13:48:47 ~metar ENVA 13:48:48 ENVA 041320Z 12008KT 080V150 CAVOK 06/M04 Q1008 TEMPO 16015G25KT RMK WIND 670FT 15010KT 13:49:49 ~metar CYUL 13:49:49 CYUL 041342Z 21006KT 8SM SCT037 BKN120 M12/M14 A3045 RMK SC3AC4 SLP314 13:49:59 ~metar EFHK 13:50:00 EFHK 041320Z 17006KT 2500 FZDZ BR BKN002 M00/M01 Q1023 TEMPO 1000 BKN001 13:50:06 Still doing the M00. 14:11:35 `? Nooodles 14:11:45 :( 14:12:16 `? ramen 14:12:23 hm. 14:12:51 Gregor`: USE YOUR NECROMANCY SKILLZ AND REVIVE YOUR BOTS PLZKTHX. 14:13:44 Taneb: the Wisdom doesn't have /no+dles/i, but it has ramen: 拉麵是一種類型的麵條縫製從原始樹木。hth 14:14:01 The wisdom so does have Nooodles I'm looking at it right now 14:14:19 would anyone like to take over hosting the wiki 14:14:22 I don't have time for it any more 14:14:46 Taneb: eh? 14:14:54 !sh Hey I'm still alive! 14:14:56 ​/tmp/input.31598: line 1: unexpected EOF while looking for matching `'' \ /tmp/input.31598: line 2: syntax error: unexpected end of file 14:14:59 or not. 14:15:02 oh. 14:15:06 boily, page 17 14:15:08 !sh echo Hey I'm still alive! 14:15:08 ​/tmp/input.31656: line 1: unexpected EOF while looking for matching `'' \ /tmp/input.31656: line 2: syntax error: unexpected end of file 14:15:21 !sh echo Hey I'm still alive\! 14:15:22 ​/tmp/input.31732: line 1: unexpected EOF while looking for matching `'' \ /tmp/input.31732: line 2: syntax error: unexpected end of file 14:15:34 !sh echo 'Hey I'm still alive!' 14:15:35 ​/tmp/input.31784: line 1: unexpected EOF while looking for matching `'' \ /tmp/input.31784: line 2: syntax error: unexpected end of file 14:15:40 Anyway, I have a lecture to attend 2 miles away 14:15:40 rgh 14:15:43 Taneb: I fail at grep. 14:15:45 * Taneb ----> away 14:15:51 !sh echo "Hey I'm still alive!" 14:15:51 Hey I'm still alive! 14:15:56 SEE 14:16:44 !sh echo "~echo !sh echo \"~echo hello\"" 14:16:44 ​~echo !sh echo "~echo hello" 14:16:50 meh. 14:18:15 metasepia: ~echo hi 14:18:22 nah. 14:18:51 * boily shields his bot from meddling Scandinavians 14:19:42 mwahahahandinavians 14:21:02 well, that is not a reassuring response 14:26:19 elliott__: btw, by “hosting over”, you mean only yielding your admin responsibilities to someone else, or move everything to a new server also? 14:27:24 the latter; handing over root access on the box I store semi-sensitive stuff and IRC from isn't my idea of fun :p 14:27:57 and the problem isn't sysop duty so much as upgrading mediawiki and so on -- it's not actually much effort, I've just been neglecting it and appear likely to continue to do so for the forseeable future 14:29:47 wow, it's been two years since I took over the wiki 14:29:48 time flies 14:31:35 elliott__: where has your time gone 14:31:50 have you started doing the booze 14:31:58 ?? 14:32:26 -!- oerjan has quit (Quit: leaving). 14:33:00 (o dear he do the booze.) 14:34:25 yeah, I've been drunk for the past year 14:34:45 getting my affairs in order before my inevitable death from liver failure, etc. etc. etc. 14:34:51 no seriously I'm just lazy 14:36:08 SO UMM WHY DID YOU SAY "elliott__> I don't have time for it any more" IF YOU MEANT THAT YOU ARE JUST LAZY, THAT SEEMS A BIT ILLOGICAL COULD YOU EXPLAIN 14:37:55 it sounds better 14:38:01 so my phd thesis is currently 114 pages 14:38:09 *draft 14:38:39 how proud are you on a scale from 1 to \omega 14:38:53 -!- variable has changed nick to trout. 14:40:21 (most of it is doodles of dicks and walruses) 14:42:36 oklopol: ω² - 2ω, but only iff your dick-to-walrus ratio is within φ±ε. 14:42:56 "only if and only if". 14:43:44 sorry. I RAS syndromized that. 14:43:56 how surreal! 15:05:22 boily: that isn't even between 1 to omega 15:05:30 besides, it doesn't even make sensee 15:06:19 I know ^^ 15:06:48 -!- password2 has joined. 15:08:58 !sh bin/relcome password2 15:08:59 ​/tmp/input.397: line 1: bin/relcome: No such file or directory 15:09:13 Gregor`: I can't relcome people! 15:09:50 oklopol: I'm 1075000000 proud of you on that scale 15:09:58 approximately 15:13:23 seems appropriate 15:13:39 although i think that's a bit closer to 0 than \omega :( 15:14:18 also ω² - 2ω is a perfectly cromulent surreal number 15:25:06 but, a question remains unanswered: of what use are surreal numbers? 15:27:01 I like them as an example of a field that fails to be complete because there are too many numbers between 0 and 1 15:27:25 (I am, btw, still amazed that they form a field at all.) 15:27:44 * boily 's brains choke on int-e's affirmation 15:28:15 oh ... ordered field. 15:30:33 hyperreal numbers are used in non-standard analysis. is there a nice way to map those into the surreals? 15:31:21 what is non-standard analysis, and while we're on the subject, standard analysis? 15:34:49 Ah I don't know this stuff. I'd say that analysis is abstract calculus; you have measure theory, integrals, derivatives, function spaces, many notions of convergence ... but ultimately based on real numbers. non-standard analysis has inifiniesimals and inifinities, allowing things like the dirac delta function. https://en.wikipedia.org/wiki/Dirac_delta_function 15:34:50 non-standard analysis is when you take an ultrafilter U on N, and say that a hyperreal number is a function R^N and a < b if the set of coordinates i s.t. a_i < b_i is in U (exactly one of the sets {i | a_i < b_i}, {i | a_i > b_i}, {i | a_i = b_i} is in U, because it's an ultrafilter) 15:35:15 (and oklopol just provided the definition of a hyperreal number) 15:35:19 -!- fungot has joined. 15:35:21 and then you have a lot of numbers between 0 and any number larger than it, because any sequence going to 0 provides you with one 15:35:30 (There should probably be a backup relcome in fungot.) 15:35:31 fizzie: fnord? alice? 15:35:37 yeah definitions are totally better than explanations 15:36:02 -!- Slereah_ has joined. 15:36:09 Oh fungot is back. I wonder whether it's become smarter. 15:36:09 int-e: but a computer science textbook than a scheme source that exercises every aspect of a lisp name, i presume 15:36:50 ^help 15:36:51 ^ ; ^def ; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool 15:37:35 What is the 0-9 in ^str? 15:38:01 Oh 15:38:33 A number. 15:38:36 Ten slots for strings, that could be referenced as str:N in a ^def I suppose 15:38:37 ^str 42 get 15:38:37 Usage: ^str 0-9 get/set/add [text] 15:38:41 ^str 4 get 15:38:41 Empty. 15:38:45 Yes. 15:38:48 ^str 0 get 15:38:48 +++++++++++++++[>++++++++>++++>+++++++>+++++++<<<<-]>>++++++.>++++++.<<----.>----------------------------------.<----.>>+++.<<-----------.+.>>>.<++++++.<<-.>>-----.<++++++++++++++++++++++++++.--------------------------.<+.>>++.>+++++.<<<+.>>>+.<-.<.>----------------------.<++++++++++++.------------.>----------------------.<<------.>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.>>----.<---.<++++.++++++++.>- 15:39:41 ^bf ,[.,]!test 15:39:41 test 15:39:42 @bf +++++++++++++++[>++++++++>++++>+++++++>+++++++<<<<-]>>++++++.>++++++.<<----.>----------------------------------.<----.>>+++.<<-----------.+.>>>.<++++++.<<-.>>-----.<++++++++++++++++++++++++++.--------------------------.<+.>>++.>+++++.<<<+.>>>+.<-.<.>----------------------.<++++++++++++.------------.>----------------------.<<------.>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.>>----.<---.<++++.+++... 15:39:42 Bot prefixes: fungot ^, HackEgjjj 15:39:48 ...+++++.>- 15:39:54 oh. darn. 15:40:08 Should be easy enough to add a backup welcome, then 15:40:19 I guess that string is incomplete anyway. 15:40:52 ^bf str:0 15:41:05 err 15:41:13 I guess it only likes that in ^def's 15:41:21 -!- FreeFull has joined. 15:41:35 int-e: thanks. and about the Dirac: I guess that's why the teachers told us that it wasn't kinda like a regular function, waved their hands, and continued teaching. 15:42:00 (yay engineering! we do stuff with advanced maths, but don't know why!) 15:42:11 The ^str does not necessarily print completely, if it's too long. 15:42:25 ^def tmp bf str:0 15:42:25 Defined. 15:42:26 ^tmp 15:42:26 Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?, thutubot +, metasepia ~, jconn ), blsqbot ! 15:42:30 See, it's fine. 15:42:54 I guess it's like that because of the ). 15:44:19 What's problematic with the ) ? 15:45:01 If I forget to close an opening parenthesis (like this 15:45:14 ) 15:45:17 ) then the closing one will typically be on the next line ;) 15:45:17 int-e: |syntax error 15:45:17 int-e: | then the closing one will typically be on the next line;) 15:45:32 boily: ( 15:45:36 ) 15:45:43 it's still unbalanced. 15:45:45 ( 15:45:45 STOP UNBALANCING THE UNIVERSE, YOU VILE FUNGOTTER! 15:45:48 ))))))) 15:46:02 boily: you closed a parenthesis that I closed as well. 15:46:10 ((((((( 15:46:23 FireFly: A lone ) is not outputtable with Underload, which is what static strings like that on fungot usually use. 15:46:23 fizzie: there is nothing behind the grape-0 includes all brainfuck programs with up to sixty five thousand states. feel particularly compelled to read it. 15:46:36 ()()()()()()()() 15:46:46 boily: you should be happy that I'm not compensating for the smileys. 15:46:49 fizzie: I see 15:47:27 ^def tmp bf ,[.,]!does i/o work here too? 15:47:27 Defined. 15:47:31 ^tmp 15:47:37 ^tmp test? 15:47:37 test? 15:47:41 Ah 15:47:47 ^tmp ^tmp test? 15:47:47 ^tmp test? 15:48:04 ^tmp ~echo ^tmp ~echo ^tmp ~echo ^tmp ~echo test! 15:48:04 ~echo ^tmp ~echo ^tmp ~echo ^tmp ~echo test! 15:48:04 ^tmp ~echo ^tmp ~echo ^tmp ~echo test! 15:48:04 ~echo ^tmp ~echo ^tmp ~echo test! 15:48:05 ^tmp ~echo ^tmp ~echo test! 15:48:05 ~echo ^tmp ~echo test! 15:48:05 ^tmp ~echo test! 15:48:05 ~echo test! 15:48:05 test! 15:48:14 * boily grins like a maniac 15:48:15 ^str 1 get 15:48:15 >,[>,]<[<]>[<++++[>--------<-]+>-[-------[--[<+++[>----<-]+>[< 15:48:39 ^def aux ^bf str:1 15:48:39 Usage: ^def 15:48:44 ^def aux bf str:1 15:48:44 Mismatched []. 15:48:54 ^str 2 get 15:48:54 Empty. 15:49:06 ^str 0-9 get 15:49:07 Usage: ^str 0-9 get/set/add [text] 15:51:31 No need to be so literal. 15:51:59 There's something in 5 and 9 too. 15:52:08 ^def tmp bf str:5 15:52:08 Defined. 15:52:11 ^tmp foo 15:52:11 Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?, thutubot +, metasepia ~, jconn ) , blsqbot ! 15:52:17 Oh, that's just the same. 15:52:19 ^def tmp bf str:9 15:52:20 Defined. 15:52:21 ^tmp foo 15:52:21 foo: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, ... 15:52:27 Nice 15:52:49 ^str 9 get 15:52:49 ,[.,]++++++++++++++[>++++++++>++++>+++++++>++++++<<<<-]>>++.--------------------------.>>+++.++++++++++++++.+++++++.<+.>+++.--.<++.<.<++++.>>>++.<<.>>+++++.<+++.---.<.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.+++++.>>.<.>--.----.<----.<<.>-----.>>+.-.<.>--.<-----------------------------------------------------------------.<-.+++++++++++++.>>----------.<.>++++.<<------.<--.>>.+++++++++++++++++++++ 15:52:54 Output length limits strike again. 15:53:11 The program is probably complete, it's just that the bf interpreter has an overly short maximum length limit. 15:53:11 ^style ... 15:53:11 Not found. 15:53:23 ^style 15:53:23 Available: agora alice c64 ct darwin discworld enron europarl ff7 fisher fungot homestuck ic irc* iwcs jargon lovecraft nethack pa qwantz sms speeches ss wp youtube 15:54:21 -!- Tritonio1 has quit (Ping timeout: 245 seconds). 15:55:05 -!- Tritonio has joined. 15:59:16 -!- passby has joined. 15:59:39 ^tmp passby 15:59:39 passby: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoteric ... 15:59:55 -!- passby has left. 16:00:05 -!- passby has joined. 16:02:22 -!- passby has left. 16:09:51 -!- ais523 has joined. 16:09:59 fizzie: That's one reason to have rle bf 16:10:02 DDOS still going on? I couldn't connect earlier 16:10:09 and was close to pinging out on this attempt 16:11:30 ais523: weird. I thought it calmed down yesterday fternoon, and SSL is back on track today. 16:13:09 why don't people think about anyone else? 16:13:12 hi boily 16:14:18 because people. 16:14:21 hi quintopia 16:15:28 how is new job 16:16:03 -!- Frooxius has joined. 16:16:36 quintopia: unknown. I start next week. if it is yours, also unknown. 16:16:51 Frhellooxius. 16:17:01 boily: i don't have a new job. you never got me one. 16:17:37 boily: so what are you doing this week? 16:18:57 quintopia: documenting what I was working on, tutorialing the teammates, (subtly) lazying around on IRC and wikipédia... 16:19:17 boily: sounds like a good week to invent a new esolang 16:19:35 boily: you're already better at it than. you're on cpressey's list! 16:19:57 This channel has plenty of lists, doesn't it? 16:20:02 is cpressey's list a list of people who asked about cpressey's list? 16:20:05 if so, I'm on it now, I guess 16:20:17 what is cpressey's list? 16:20:42 boily: you were apparently on it already, no point in asking 16:21:30 ais523: oh well. time to retroactively bask in the Glory of being in Cpressey's List. 16:21:36 ais523: of course you are on it. you are also better at esolang than me 16:23:25 does anyone know what year Half-Broken Car in Heavy Traffic came out? 16:24:17 quintopia: I'm not convinced I'm better at BF Joust than you, though 16:24:45 I horribly suck at the Joust. 16:24:51 -!- Tritonio has quit (Ping timeout: 272 seconds). 16:25:10 ais523: i'll concede we are roughly equal there, but that only says we have too much timme on our hands roughly once a year 16:25:28 yeah, I don't have too much time on my hands right now 16:25:45 but I'm upset at my latest strategy not being able to top the hill 16:25:53 even when it beats every other program, it still doesn't top the hill 16:25:58 which is really frustrating 16:26:06 I have to, like, make it beat every other program by more, or something 16:26:21 hmm the original document for HBCHT says it was created 2011. does anyone remember seeing it anywhere before 2011? 16:26:50 Having a Baby Cat Hurl on the Table? 16:27:19 Half-Broken Car in Heavy Traffic seems likely from context 16:27:21 slereollah 16:27:45 Woops 16:27:48 Wrong channel 16:27:53 Oh wait 16:27:54 No 16:27:57 It is the correct one 16:28:01 What's a HBCHT 16:28:06 ... 16:28:25 Oh right 16:28:28 You answered 16:28:31 NEVERMIND 16:29:08 this is cpressey's list: http://catseye.tc/node/Esolang 16:29:22 there are a number on here i never looked at before 16:29:29 alternatively, it's a BCT variant which uses '0', '1', and 'H'; the 'H'es don't do anything but you have to sprinkle them into the program anyway, much like PLEASE in INTERCAL 16:30:39 hmm, it seems I'm quite good at guessing which of my esolangs would appeal to cpressey 16:30:54 -!- nooodl_ has joined. 16:31:02 -!- nooodl_ has quit (Read error: Connection reset by peer). 16:33:52 re Aubergine: “nothing spectacular, but somewhat cute.” heh :D 16:33:58 -!- johnnie has joined. 16:34:33 hey, who's online right now? 16:34:39 Im surprised at how big this channel is 16:34:52 its pretty big, isn't it? 16:35:01 yep 16:35:23 I get the feeling that we're probably the only two active users right now. 16:35:35 hmm 16:35:37 are we being trolled? 16:35:38 maybe 16:35:43 Or three. 16:35:48 it's been pretty active today 16:35:53 Oh that's good 16:35:58 definitely never seen these two before 16:36:01 also, I've never seen either of you here today 16:36:02 yeah i see lots of words here 16:36:08 that means rainbow welcome time? 16:36:13 `relcome password2 johnnie 16:36:15 nope. and I couldn't `relcome them properly. *cough* Gregor` *cough* 16:36:21 oh, the rainbow welcome bot is down 16:36:22 ais523: the gregorbots are dead. 16:36:35 i though the relcome is a typo 16:36:44 password2: it's a Rainbow wELCOME. 16:36:53 haha 16:36:53 Oh don't worry about it. I'm new to the whole process anyway. I have only one entry on the Esoteric wiki. 16:37:04 !c printf("I'm a gregorbot and I'm not dead!\n"); 16:37:07 johnnie: neat! that's a good start. 16:37:08 I'm a gregorbot and I'm not dead! 16:37:09 And, thanks :) 16:37:16 i have nada 16:37:24 boily: dammit now i'm singing the lumberjack song :( 16:37:45 quintopia: uhm. I would like to say that it's not my fault, but then... 16:37:58 SPAM/1...I'm going to flesh it out some more tonight. I have a lot of good ideas about it. But I need to iron those out. 16:38:00 brb 16:38:12 oh, good, Phantom_Hoover isn't here, so you're safe even if it's a BF derivative 16:38:28 but SPAM/1 isn't a BF derivative so that works even better 16:38:32 johnnie: have you looked at the PDF in the /topic? 16:38:45 I haven't, boily, no. 16:39:38 I'm trying to work in SPAM/1 as part Monty Python joke. SPAM/2 was supposed to have been "SPAM/EGGS/SAUSAGE/SPAM" and SPAM/3 as "I/DONT/LIKE/SPAM" 16:39:38 also, any esolang that requires snailmail to implement is pretty creative 16:39:43 if unlikely to actually be implemented 16:39:55 I think SPAM/1 is probably better just as it is 16:40:46 johnnie: what order does XMTR retrive the stored data in? 16:40:46 I like the idea of BF. I took SPAM/1 is a different direction by making the input minimal instead of making the language minimal. 16:41:54 the thing about BF is that BF itself is pretty good, but people have a tendency to make uncreative minor variations on it 16:41:58 which gets really annoying after a while 16:42:18 BF is great as hell 16:42:26 It's pretty good to prove Turing completeness 16:42:39 I used Dartmouth-BASIC as a model for the bulk of the commands. XMTR is nothing more than a Basic DATA statement. 16:43:14 it's so good that people start to have strange ideas like "this isn't turing-complete because it's not readily obvious how to directly reduce BF to it" 16:43:26 johnnie: oh right 16:43:28 Also if someone asks you to make a compiler at gunpoint? 16:43:33 Bam, make a BF compiler! 16:43:35 You're done 16:43:44 quintopia: boring, like half my languages there's no obvious way to reduce BF to them directly 16:43:53 i get asked to make a compiler at gunpoint every Tuesday 16:43:56 Slereah_: can't I make a Quiler self-compiler? 16:44:04 that targets Quiler? 16:44:05 Slereah_: that's not a situation I think I'd find myself in in the foreseeable future... 16:44:25 (contrary to quintopia, who lives the American Dream every week.) 16:44:26 I think any sequence of bytes fulfils that restriction 16:44:30 You never know! 16:45:01 Slereah_: being forced to write a compiler while a moose is charging towards you, that is more likely for me. 16:45:06 (Quiler is defined as folows: given any input, a Quiler compiler ignores it and outputs a Quiler compiler) 16:45:25 (it is not a massively useful language) 16:45:54 Canadian eh? 16:46:05 Slereah_: pretty much so. Québécois, even. 16:46:19 are mooses inherently Canadian, or just associated with Canada 16:46:22 umm… meese? 16:46:27 meeseses. 16:46:42 boily: are the squirrels black in your area of Quebec too? or just Ottawa? 16:46:44 I'm mulling over a BASIC version of the "LIST" command for SPAM/1. How does this sound...in SPAM/1, LIST "program name" @ "address" will send a printed copy of the list program to the specified address. 16:46:54 johnnie: that seems useful 16:47:26 I think mine is going towards a Chindogu. :) 16:47:32 actually I'm trying to work out if SPAM/1 has the ability to store infinite data 16:47:35 also I had an esolang idea 16:47:42 ais523: there are also meese in maine and alaska and other such northerly places 16:48:01 ais523: i always have esolang ideas 16:48:06 here it is: the only unlimited-size data store available, you can add a datum to it (of fixed maximum size), and remove a random datum from it 16:48:11 that's it 16:48:17 i've got at least 3 just sitting around on paper 16:48:23 can this be TC, I wonder? 16:48:42 ais523: depends on the rest of the language 16:48:46 I gotta get back to work. But it's good to know this place is useful for peer reviewing these ideas. 16:48:48 quintopia: regardless of the rest of the language 16:49:14 remember, this is the /only/ unlimited store, you're pasting it onto an FSM 16:49:29 ais523: we can't disregard the rest of the language. if the rest of the language provides a means to recognize which datum was removed... 16:49:42 quintopia: the store is unordered 16:49:54 ais523: our squirrels are gray. sometimes you get a glimpse of an albino one. 16:49:54 or as in, we have the rest of the language, and we have the store 16:49:56 Bye guys! 16:50:08 johnnie: adieu! 16:50:08 bye 16:50:13 -!- johnnie has quit (Quit: Page closed). 16:50:18 and the only way they can communicate is via "add this element", "retrieve a random element" 16:50:53 -!- tromp_ has joined. 16:51:13 ais523: okay but still. consider an instruction like "test for divisibility by x and branch" 16:51:31 quintopia: the data themselves are finite size 16:51:39 ais523: then you can store bits as primes 16:51:40 so that's equivalent to a really really large switch-case 16:55:11 -!- tromp_ has quit (Ping timeout: 245 seconds). 16:56:19 what makes a programming language esoteric 16:57:00 I'm not sure there's any hard answer 16:57:14 ais523: yeah i think the unordered thing mostly breaks TC. if only aggregate data are available, you end up with no more than a single perceptron at best. 16:57:14 and there's lots of gray area 16:57:21 any soft ones then :p 16:57:32 password2: yes on the wiki 16:57:39 ah 16:58:03 and the wiki is? 16:58:11 I have a working answer of "there wouldn't be any point in trying to create a useful standard library", but that excludes some languages like Funge-98 16:58:15 http://esolangs.org/wiki/Main_Page 16:58:17 esolangs.org or something 16:58:25 yeah that 16:58:29 if you haven't gone there yet, do so, the channel makes no sense if you haven't seen the website it's associated with 16:59:04 i have been on ther i think , but it was a few moons ago 16:59:37 tbh i just randomly joined this channel after listing channels on freenode 17:03:08 what? this channel totally makes sense without that wiki, as long as you know esoteric programming languages from other sources 17:03:15 um 17:03:25 or at least it makes as much sense as it makes with the wiki 17:03:36 ais523: i think your definition holds anyone. just because people make libraries for esolangs doesn't mean that there was any point in doing so. 17:03:41 why don't we have the url of the wiki in the channel topic though? 17:03:50 *anyway 17:04:21 maybe because we relcome everyone anyway 17:04:46 or we would 17:05:00 if we had another bot that could 17:05:08 fungot can't even finish a sentence 17:05:08 quintopia: did either book mention schroedinger's cat? :() but i'll put it online :p 17:05:11 ah 17:05:15 that makes sense 17:05:35 relcome 17:07:33 ah, and apparently the url to the wiki is in the chanserv welcome message 17:07:48 or so chanserv claims 17:08:33 wow , my internets is slow 17:09:37 ais523: care to take any bets on how many kb in a SELECT. 99 bottles program. assume it singularizes correctly and prints the optional verse. 17:11:28 http://esolangs.org/wiki/SELECT. 17:11:34 not aware of the language 17:12:44 this is scary 17:12:52 this SELECT. language 17:13:25 -!- atriq has joined. 17:13:48 quintopia: it doesn't seem that different from BF in terms of storage and flow control, so the main difficulty is just the storage for the images 17:14:10 I'm guessing of the order of tens of KB because of that 17:14:34 how do these EXP. and LOG. and SELECT. commands work? 17:15:46 very rapidly 17:16:17 ais523: haha. no and very unlikely. 17:17:06 does it not jump by the distance of the result? 17:17:11 ais523: more reasonable would be in the hundreds of kb with comments and indentation stripped. 17:17:22 quintopia: I think that by picking an appropriate base, you can construct a value that has real>imag change after 256 exps, which are reversible by logs 17:17:22 ais523: but i'll let you know once i've written it. 17:17:33 it depends on what font you use, ofc 17:17:49 how do you copy numbers exactly in this SELECT. language? 17:17:53 ais523: 7pt deja vu sans mono 17:17:57 b_jonas: same way as in BF 17:18:06 really, the numbers are a red herring 17:18:16 you don't want to work with the numbers specifically 17:18:20 but with their mathematical properties 17:18:25 oh yeah complex number , not used to seeing them in a programming language 17:18:30 a typical program's going to store integers, BF-style, but not store them /as/ integers 17:18:37 b_jonas: RIGHT. EXP. LEFT. SELECT. RIGHT. LOG. RIGHT. SELECT. LEFT. will copy a number one cell to the right. 17:18:44 but rather by extracting them from a set of complex numbers that are easily inter-converted 17:19:03 or at least, it seems that quintopia's method of esolang programming is entirely different from mine :-) 17:19:19 quintopia: hmm 17:19:57 quintopia: that seems strange 17:20:41 but my first rule of esolang programming is: even if the esolang has numbers, it's often a bad idea to use them, you can go synthesize your own arithmetic instead if it's easier 17:21:08 -!- EgoBot has quit (Write error: Broken pipe). 17:21:30 ais523: is that something you learnt from intercal? 17:21:32 -!- EgoBot has joined. 17:21:45 b_jonas: no, actually using numbers as numbers in INTERCAL isn't so bad 17:22:22 although modern versions are actually TC with no variables involved at all, I think 17:22:41 ais523: yeah, you could definitely just store your numbers as nth exponentiations of i^(1/4)^((1/2)^(1/256)) i suppose, but you'll still have to convert them to output them. 17:22:56 quintopia: I/O is normally comparatively minor although I guess not in 99bob 17:23:15 ais523: um, no variables is a bit going too far 17:23:35 because intercal has very convenient operations variable 17:23:45 b_jonas: sure, but they're also unreadable 17:23:48 I mean, it has array indexing and indexed assignment 17:23:59 if you eschew variables entirely, it mostly just looks like COBOL, which isn't so bad 17:24:01 s/1/2/2/ 17:24:30 you forgot to escape the second / 17:24:36 making that substitution pretty hard to read 17:24:47 well i was lagged out at the time and i knew you'd understand 17:25:04 it took me like 10 seconds to figure it 17:25:40 ah, so in SELECT., the SELECT. statement doesn't write to the cell under the pointer. it writes to where the pointer was when you last did LOG. or EXP. 17:25:55 yes 17:27:12 quintopia: even then that sequence you gave doesn't make sense to me 17:27:23 "RIGHT. EXP. LEFT. SELECT. RIGHT. LOG. RIGHT. SELECT. LEFT. will copy a number one cell to the right." 17:27:55 b_jonas: you have to assume both cells to the right contain the same constant k. 17:28:23 oh. but how do you get such a state if the tape starts from random numbers? 17:28:36 correct me if I'm not mistaken , to write a brainfuck simulator would not be very difficult? 17:28:55 password2: it isn't at all. 17:28:56 password2: not very, no 17:29:02 mmm 17:29:17 b_jonas: the tape starts like ...k k k k k k k k k... 17:29:56 ah! 17:30:08 k is ostensibly randomly selected, but they are all equal, so it doesn't matter 17:30:17 FreeFull: Funnily enough, the under-the-hood representation is RLE-ish. 17:30:19 ^show tmp 17:30:19 ,[.,]+14[>+8>+4>+7>+6<4-]>2+2.-26.>2+3.+14.+7.<+.>+3.-2.<+2.<.<+4.>3+2.<2.>2+5.<+3.-3.<.+73.+5.>2.<.>-2.-4.<-4.<2.>-5.>2+.-.<.>-2.<-65.<-.+13.>2-10.<.>+4.<2-6.<-2.>2.+69.<2+.>.+5.>.<-2.>+4.>-3.-67.<2-2.<-.-3.-8.>+2.<-6.>-5..>.<+.<+6.>3.<2-2.>-8.<+2.<.>+7.>.<2.-2.>3.<3-.>2+4.<-2.>+4.-2.<-5.>2.<-6.<.>+3.>.<3.+.>+2.<+7.>-.+10.<+.>2+.<2+.>-5.>2+.-.<-31.<2+.>-2.>2.<2-5.+2.+3.>+31.>.<+4.<-4.-8.>+6.+3.<2-2.>-5.>+2.<2-4.+6.-.>3+12.-12. 17:30:22 If i'm bored enough , it would make an interesting easter egg 17:30:31 (Away for now.) 17:31:50 easter egg for what 17:32:03 :} 17:32:05 did you figure out anything about that brainfuck-dowhile language btw? 17:32:14 a td 17:32:55 i should eat i've been laying here for two hours being hungry 17:33:42 heh , i'm waiting for mince to defrost so i can start making stirfry 17:33:45 b_jonas: I created a language like that 17:33:48 not sure if it's on the wiki 17:34:07 password2: huh, I didn't think of combining those two foods, but it's kind-of obvious in retrospect 17:34:24 heh 17:34:30 -!- mroman has quit (Ping timeout: 252 seconds). 17:34:36 students tends to summon weird combinations 17:34:38 -!- mroman has joined. 17:35:02 they'll eat bread dipped in anything less runny than bread 17:35:45 ais523: we talked about it yesterday. it's a bf variant where a bracket loop runs at least once, so it's like a do-while instead of a while loop. +- commands are modulo 256. 17:36:03 ais523: int-e asked yesterday whether it's turing complete, to which I handwaved a proof that it is. 17:36:32 int-e might have a code generator by today or something. 17:36:39 b_jonas: I designed that ages ago 17:36:49 when I was learning Python live on #esoteric 17:36:54 I see 17:36:54 by entering it into codebots 17:37:03 fun fact: I originally learned to write Python with no newlines 17:37:09 ais523: i'd like to see your version of programming SELECT. honestly, seeing as how mine is so wasteful of tape. or would you just build a compiler from boolfuck or something? 17:37:33 ais523: did you learn it? 17:37:36 which is basically unreadable because you do exec "first line of loop:\n inside of loop", etc. 17:37:39 quintopia: the basics 17:37:52 and yeah, I'd just compile from either boolfuck, or 8-bit non-wrapping BF 17:38:00 ais523: so none of the functional programming/object-oriented aspects? 17:38:12 quintopia: I learned those later, not live in #esoteric 17:38:14 i assume in BF the instructions and memory is not the same space? 17:38:19 although it doesn't really have any functional programming aspects 17:38:23 apart from functions being barely first-class 17:38:37 like, I think they were upgraded from economy class rather than buying the more expensive ticket 17:38:39 password2: indeed 17:38:45 ah 17:38:46 fizzie: bf has a lot of repeated symbols, so rle is perfect 17:38:46 basically I argued that you can translate (bf without the io) to bf-dowhile, for which you have to simulate each cell with a sequence of multiple cells. the translation is a bit wasteful but nothing unexpected for bf. 17:38:46 completely seperate 17:38:54 this is usually (but not always) the case in esolangs 17:38:54 ais523: well yeah, but you can treat it functionally by having functions that take and return functions 17:39:03 And it's faster to add 30 at once than to add 1 30 times 17:39:12 however, bf-dowhile can't quite have all values of a bf program because there's some io you can't do. 17:39:13 you can see http://esolangs.org/wiki/Category:Self-modifying for esolangs where the code can be used as data, in one way or another 17:39:26 b_jonas: we decided it was TC last time this came up, too 17:39:29 but I can't remember why 17:39:45 and yeah, it's obviously impossible to write a dofuck program which sometimes produces output and sometimes doesn't 17:39:57 so you can't write cat, for instance, if you want it to work correctly on null input 17:39:58 it's called dofuck? we didn't know it had a name 17:40:11 that's what I called it, back then 17:40:15 in camelcase, DoFuck 17:40:15 great 17:40:23 but it's such an obvious idea it's probably been invented more than twice 17:40:36 DoFuck's easier to impl than BF, btw 17:40:49 because you only have to be able to move the IP backwards, not forwards 17:40:54 yeah 17:41:00 err, by more than one instruction at a time 17:41:23 a language where the IP /only/ moves backwards is going to be sub-TC unless it's self-modifying or has first class functions or uses some other loophole I didn't think of 17:42:05 (the first version looks something like SMITH, the second version arguably describes Underload) 17:42:17 if I have to choose, I prefer bf 17:42:30 you don't have to choose, normally 17:42:31 over dofuck that is 17:42:40 How about a language where values are stored in the IP? 17:42:41 password2: if you like languages with the instructions and data mixed , ire  recommend Aubergunine (hi oboily) 17:43:00 stupid lag dropping my backspaces 17:43:09 that's Aubergine 17:43:10 FreeFull: that's almost equivalent to just storing them in a register 17:43:14 possibly completely equivalent 17:43:20 quintopia: your backspaces echoed literally 17:43:23 which is quite impressive 17:43:33 ais523: Except it jumps where you are in code 17:43:40 quintopia, by no means 17:43:47 FreeFull: you mean storing them in the instruction? 17:43:48 its get confuzing 17:43:57 my first, still unpublished, esolang worked like that 17:44:05 ais523: No, the instruction pointer itself 17:44:15 and my client doesn't even understand the characters of what you said 17:44:21 FreeFull: you mean the memory address that holds the location of the instruction pointer? 17:44:22 doesn't arm-32 sort of work like that? 17:44:22 Although I guess that wouldn't be useful unless you had instruction memory aliasing 17:44:44 i've already written a cheat-quine in Aubergine. I should write a self-deleting program. That sounds ... i don't even know it's possible. it probably isn't 17:44:49 but really, I don't understand what FreeFull wants to say 17:44:59 ais523: I mean, you write a value to the instruction pointer, so now it points at a different position in the instructions 17:45:09 So basically storing data in a jump 17:45:10 FreeFull: that's just a computed jump 17:45:32 FreeFull: oh, so you just mean memory-mapping the instruction pointer? 17:45:33 but certainly, the instruction pointer /stack/ is a very common way to store data in esolangs 17:45:40 With aliasing for the instruction memory, you could use it to pass a value to the code 17:45:53 one nice rule of thumb is "two stacks = TC", which obviously has loads of exceptions but is still reasonably reliable in practice 17:46:16 -!- atehwa has quit (Read error: Operation timed out). 17:46:16 -!- int-e has quit (Read error: Operation timed out). 17:46:18 -!- atehwa_ has joined. 17:46:49 What about two queues? 17:46:50 if you're having trouble proving a language TC, using the call stack as one is often a wise idea 17:46:51 i suppose it miiiiiiiiiiight be possible to write a Aubergine program that overwrites itself with a's 17:46:52 FreeFull: even one queue is often (but not always) enough 17:46:56 FreeFull: one queue is enough 17:47:03 see http://esolangs.org/wiki/DownRight, for instance 17:47:27 but it's much easier to design a one-queue language that isn't TC than a two-stack language that isn't TC, by accident 17:48:14 (obviously both are trivial if you're trying, e.g. you could have two stacks but no commands that manipulate them) 17:49:13 one queue reminds me to those very old home-built computers using a disk, before ram existed 17:49:14 -!- int-e has joined. 17:49:17 hi, int-e 17:49:21 now i want to design a language that has two stacks and a queue and is TC, but becomes sub-TC if you remove any one of the three 17:49:49 b_jonas: now you reminded me of delay line memory 17:50:02 have you heard of that? it was used before magnetic core memory was invented, as in a really /really/ long time ago 17:50:25 int-e: that bf-dowhile language we were talking about, ais523 calls it "DoFuck", says he also thinks it's turing-complete, and says "it's such an obvious idea it's probably been invented more than twice" 17:50:28 basically data is stored using vibrations in a trough full of mercury, you put the data in at one end, and it comes out the other end a few seconds later 17:50:36 ais523: yes 17:51:15 it's crazy 17:51:23 I'm too young for these 17:52:27 back from lunch, and I didn't eat aubergines. hi o quintopia! 17:52:34 did you also know that PAL decoders involve delay lines in quartz crystals? 17:52:50 i have seen one of those delay memorys on hackaday 17:52:53 very awesome 17:52:56 olsner: I didn't know that 17:53:10 sound and piezo works as makeshift version 17:53:18 (electric signals go in, vibrate the quartz, the vibrations zig zag across the crystal for exactly 60µs (or whatever the delay is), reach the other end and become electricity again) 17:53:18 wow 17:53:27 crazy 17:53:57 and then the outgoing signal (the last scanline) is compared to the current scanline to figure out the colors 17:55:58 I'm not an EE or a hardware guy, I don't really understand how classical television works in general. 17:56:06 me neither 17:56:24 I am an EE, so I have more of an idea 17:56:32 I treat it as a black box, so to speak 17:56:56 ais523: hi there, fellow engineer :D 17:57:20 and I don't use analog video signals these days at all if I can avoid them 17:59:44 oo a EE 17:59:54 you see more of em than CE on the tubes 18:03:57 -!- Frooxius has quit (Read error: Connection reset by peer). 18:03:58 -!- Frooxius has joined. 18:04:12 Maaaan 18:04:21 i tried changing my registers to optimize some stuff 18:04:32 But then "Gotta use ax for that!" 18:04:32 Dang 18:04:36 ax you are a monster 18:04:43 Your thirst for power knows no end 18:05:40 that sounds dangerous "i tried changing my registers to optimize some stuff" 18:05:40 :p 18:06:10 Well i'm doing some basic graphics with x86 18:06:23 ok 18:06:24 And i'm like "man, I'm tired of having to switch registers around" 18:06:34 So I tried to do another order with less saving involved 18:06:35 But no 18:07:03 lol i read that as resistors , instead of registers 18:07:44 password2: just about the same thing. make a mistake and *FOOM* there goes the magic smoke. 18:07:52 heh 18:07:54 hehe 18:08:05 Though I did learn about the bswap trick 18:08:07 It is quite neat 18:08:17 Less shitty than popping and stacking 18:08:28 ~duck bwsap 18:08:28 --- No relevant information 18:08:31 ~duck bswap 18:08:31 --- No relevant information 18:08:39 * boily mapoles the Duck 18:08:56 bswap is to swap the 16 bits in a 32 bits registers 18:09:10 I thought bswap reversed all the bytes in a register 18:09:15 Slereah_: oh. shiny! 18:09:31 Like [abcd....][xyz...] -> [xyz...][abcd...] 18:09:55 x86 bswap does reverse the order of all 4 or 8 bytes. 18:10:04 It doesn't swap the two 16-bit halves. 18:10:09 Doesn't it? 18:10:10 Hm 18:10:14 Misread it I guess 18:10:29 a rotate by 16 bits should work though 18:10:36 meh , am in a sound war with a firstyear 18:10:57 "Reverses the byte order of a 32-bit (destination) register: bits 0 through 7 are swapped with bits 24 through 31, and bits 8 through 15 are swapped with bits 16 through 23. " 18:10:59 Ah yes 18:11:44 http://www.c-jump.com/CIS77/asm_images/bswap_eax.png 18:11:47 So close and yet so far 18:12:26 Let's go with a ROL 18:12:31 that gives you abcd -> dcba, you just need abcd -> badc to turn that into abcd -> cdab 18:12:31 heh 18:12:32 Is that a dedicated instruction? bswap, I mean 18:12:46 I don't know whether there's an instruction for that though 18:12:56 FireFly: It is, though only since the 486. 18:13:31 Well a rotation will work 18:13:49 You get more mileage out of 32 bit registers that way 18:15:16 If all you want is to use the high bits of eax as "shadow space" for ax, you can keep using bswap too. 18:15:32 Since the byte order reversal doesn't matter. 18:16:20 Hm 18:16:23 True 18:16:30 Let's go back with bswap then 18:16:57 Thanks 18:17:56 Plus unlike pops, you can disregard the order 18:20:24 Probably saves two bytes, too, if the 486-dependency isn't a problem. ("0F C8+rd BSWAP" vs. "C1 /0 ib ROL r/m32, imm8" with an operand-size override prefix byte in 16-bit mode.) 18:21:10 Or, well. I can't really deduce whether BSWAP also needs an operand-size override. 18:22:10 "When the BSWAP instruction references a 16-bit register, the result is undefined", it says. Maybe that means it does. Saves a byte, anyway. 18:24:31 maybe it means intel and amd do it differently 18:28:06 I was sort of assuming that since BSWAP only exists for 32 bits, it'd have an implicit default operand size of 32, but if they've bothered to put in that statement (and don't say so explicitly), I guess it probably doesn't. 18:31:33 Hm, my gay squares stopped changing color 18:31:42 I guess I changed the value of ah by mistake 18:33:07 fungot: do you change ah, eh? 18:33:08 boily: what does gnu stand for? yeah reading, wiki, so it doesn't need to 18:33:34 fungot: I don't think that's on the Wiki™ 18:33:34 FireFly: ' right' 18:33:56 Oh wait, stosb inputs al, not ah 18:34:00 dang 18:34:14 fungot: GNU's Noodly Unix. 18:34:15 fizzie: oh ok, what file format should be scheme :) somebody'd probably implement it 18:35:00 I'm fairly sure somebody's already implemented scheme 18:36:29 fungot: did you forget? they already did implement scheme 18:36:29 olsner: darn this tab completion. i defined the scheme callback with a c world. 18:37:09 Woo, my squares are gay again 18:38:10 But the screen clearing still fucks up 18:39:32 fungot: you sound like me, blasphemating against the Evil Tab Completion. 18:39:32 boily: ( define ( safe-apply func. args) ( for-each display args) ( car ' ' a" to *a* 18:39:55 ehm, wtf, my internet bank is running some kind of analytics script ... from a third-party web server with an expired certificate 18:41:23 Slereah_, were they straight? 18:42:03 password2 : The program displays squares, and then increment the color 18:42:11 Making them going through rainbow cycles 18:42:26 ah , but you said they are gay 18:42:37 Yes 18:42:44 :D 18:42:47 As gay as a three dollar bill, if bills were square 18:43:19 heh 18:43:37 http://pastebin.com/Yx1V0kK6 18:43:54 olsner: block it 18:43:55 Does someone have any idea why the screen clearing hides the upper part of the screen 18:44:04 ais523: yep, done 18:44:09 Every cycle, I delete the screen by blackening it 18:44:18 And redoing the squares in the next cycle 18:44:34 But for some reason, the first 15 or so rows are totally black no matter what 18:44:35 oooh , i cant remember when last i used assembly 18:45:18 third-party scripts you can't verify are a major malware source 18:46:12 i found a easyway to make any linux fanboy install malware 18:47:06 i tried moving the screen clearing to various places 18:47:22 Before the drawing, after the drawing, after checking for the next screen display 18:47:26 But nothing works 18:48:02 you probably need to vsync 18:48:08 I did 18:48:21 At label vsync0 and vsync1 18:49:29 hmm, are you sure dx has the expected value when you get there? I don't know what the calling convention of those interrupts are, but they might clobber it 18:50:17 Let's see 18:50:30 -!- atriq has quit (Quit: Page closed). 18:51:31 hm. the guys over at /r/vxjunkies don't have much information pertaining to vsync problems. 18:51:37 Taneb: are you back from your lecture? 18:52:59 Well 18:53:06 I guess a test would be to remove the vsyncs and see what changes 18:53:19 Or add a mov dx whatever 18:53:21 Or both! 18:54:12 Heh 18:54:22 Removing the vsync actually works slightly better! 18:54:34 I can see all squares, but they all kinda flicker 18:54:48 Maybe it's a speed problem? 18:55:20 or maybe the emulator isn't emulating vsync at all 18:58:26 -!- ggherdov_ has quit (Ping timeout: 264 seconds). 18:59:25 Possibly 18:59:40 .com files don't play on my computer unfortunately 19:00:07 But I played many vidyah gehms on dosbox and it seems to have no problem with graphics 19:00:39 -!- password2 has quit (Ping timeout: 272 seconds). 19:00:45 What's a good place to ask assembly questions? 19:00:57 (Outside of "The 1970's") 19:03:33 the 1980's might also be ok 19:03:59 I don't have any hairband 19:06:45 there is #assembly (iirc) on freenode, and when it's not plagued by "I almost know a bit of C, how do I make an OS?" #osdev would have people that know assembly 19:06:54 or you just ask fizzie 19:07:21 olsner: is there a #fizzie chännel? 19:07:30 boily: I'm guessing not 19:07:58 boily: also, pretty sure it's spelled channel 19:09:31 beuh... 19:10:02 böilü 19:10:25 ïn̈ẗ-ë 19:10:34 I'm slightly disappointed, is there really no lower case version of Ÿ? 19:10:46 ÿ? 19:10:47 ÿ? 19:10:49 olsner: boily has been umlauting random letters for a while 19:11:07 and isn't ÿ the last character in Latin-1? 19:11:14 thanks 19:11:39 ais523: oh. indeed. 19:11:56 that gives it some sort of distinction 19:12:09 the ultimate letter 19:12:27 `unidecode ÿ 19:12:34 oh right 19:12:45 * boily unicodely mapoles Gregor` 19:12:56 no hackego? *gasp* 19:13:30 `help 19:13:32 !c printf("%x", 'ÿ') 19:13:35 c3bf 19:13:40 huh, it's Firefox that causes my compose key to stop working 19:14:01 > fromEnum 'ÿ' 19:14:02 255 19:14:06 -!- evalj has joined. 19:14:07 huh, EgoBot interpreted my UTF-8 as Latin-1 19:14:19 but you can tell it's 255 anyway if you have UTF-8 encoding memorised 19:14:25 I don't, but I know about the C2 and C3 ranges 19:15:54 oh, so that became a multicharacter character literal 19:16:58 -!- ggherdov_ has joined. 19:20:02 yeah, and those are impl-defined 19:20:11 but I believe gcc's handing is to concatenate the bytes 19:20:43 which is usually the right handling anyway 19:21:06 !c printf("%x", *u8"ÿ"); 19:21:08 Does not compile. 19:21:21 even if I got the syntax right, that's C11 19:21:31 !c printf("%ld", __STDC_VERSION__); 19:21:34 199901 19:21:39 and that compiler's C99 19:21:43 I would sort of be happier with "nope, that's not a character", but I think there's some legacy that needs them 19:22:45 what does *u8"ÿ" mean? 19:23:05 I think u8"string" means "this string is UTF-8", in some sense 19:23:07 something like that 19:23:09 let me check the docs 19:23:17 and the * is just a pointer dereference as normal 19:23:35 which on a utf8 string just gives the first byte? 19:23:39 yep 19:24:31 and I remembered right, it is u8"string" for a UTF-8 literal 19:24:35 now I'm looking up what those do 19:25:13 ] 3 u:7 u: 'ÿ 0A[é' 19:25:13 b_jonas: 255 32 48 65 91 233 19:25:26 aha, if you do u8"string", then the contents of the string are interpreted as in the source multibyte character set, and converted to UTF-8 19:25:37 whereas normally they'd be converted to the execution narrow or wide character set 19:25:49 aah, that seems actually useful 19:25:49 ais523: ^ that can show the unicode values 19:25:57 ] 3 u:7 u: 'őű' 19:25:58 b_jonas: 337 369 19:26:02 takes utf8 19:26:03 does J have an explicit map command, or is map too low-level? 19:26:20 ais523: sort of yes 19:26:21 wait, is that second letter a ü or a ű? 19:26:24 they look pretty similar in this font 19:26:28 ű I guess 19:26:37 yes, ű (with double acute) 19:26:48 huh, is double acute what it's called? 19:26:55 I always thought of it as an acute umlaut 19:26:56 double acute accent 19:27:05 `unidecode ő 19:27:06 it's an umlaut made of acutes 19:27:11 HackEgo... 19:27:17 but I guess you don't write ȯ for the un-umlauted, un-acute version 19:27:21 a cute accent, hmm. 19:27:23 fungot: what did you do with HackEgo 19:27:23 kmc: riastradh believes beginners have to know 19:27:47 fungot: I want to know 19:27:47 olsner: are you looking for an angry fix! 19:27:53 was Riastradh in here at some point? 19:27:55 oh, #scheme 19:28:50 @remember Riastradh Actually, there are a lot of 'factorization challenges' where you can win a lot more than 200,000 USD if you manage to factor a 2048-bit RSA modulus, but you might have to watch out for the cops if you enter and win these challenges. 19:28:50 Done. 19:29:40 -!- shachaf_ has joined. 19:29:45 hichaf_ 19:29:58 -!- shachaf_ has quit (Changing host). 19:29:58 -!- shachaf_ has joined. 19:30:06 -!- shachaf has quit (Disconnected by services). 19:30:11 -!- shachaf_ has changed nick to shachaf. 19:30:20 higan 19:30:38 hi fungot 19:30:38 shachaf: or is there a way to make scheme code readable to people who are using scheme in your head 19:30:42 fungot: i'm looking for an angry fix! 19:30:42 kmc: i would, but no cryptanalysis stuff. he does not know about them 19:30:54 scheme? in *my* head? it's more likely than you think 19:31:08 fungot: there is a crack in everything, that's how the scheme gets in 19:31:08 kmc: but i mean for " touching" 19:31:15 fungot: you generally don't let other people use scheme in your head ... at least not in public 19:31:16 olsner: the pointer is the instruction layer featuring all the instructions like ". though britain is more humid than finland i guess. it's the sort of thing 19:31:17 fungot: good touch or bad touch 19:31:17 kmc: is it still not yet even a complete superset of the lambda symbol... who cares that an os should never need to touch asm to get anything across. 19:32:21 -!- EgoBot has quit (Write error: Broken pipe). 19:32:27 I wonder if my laundry is done so I can go to bed 19:32:53 -!- EgoBot has joined. 19:33:08 EgoBot: are you HackEgo? 19:33:19 `relcome kmc 19:34:10 boily: i just opened a bag of Takis, and the act of pulling the bug open launched a tiny crumb of peppery deliciousness directly into my right eye. 19:34:18 WITH MY GLASSES ON 19:35:00 fungot: are you HackEgo? 19:35:00 shachaf: how's life? :o 19:35:09 fungot: :o 19:35:10 shachaf: i think i've almost maybe got it. 19:35:30 fungot: got what 19:35:30 shachaf: but they too were small, something like hash-tables consisting of variable-name/ value? i'm not sure it will! 19:36:50 quintopia: usually only grapefruits being peeled can manage to snipe one's eyes. a piece of Takis must be painful too! 19:37:39 * ais523 confuses boily with fungot 19:37:40 ais523: have a look when i get around 30 spam per day on the bike 19:38:01 i too confuse fungot 19:38:01 kmc: last year, their servers were cracked. 19:38:05 fungot: o no 19:38:05 kmc: like in the case of scheme48, every structure has its own scripting language and compiler)?? has type fnord, it messes up vim's highlight mode 19:38:39 I am a Master Confungotter! 19:38:40 boily: take the difference of whether or not it deserves to be read. this wouldn't be so surprised. few people ever use the ( cl-style), you have to browse deitti.net before i find myself in an annoying and stupidly offensive way too, so... 19:39:56 ais523 uses fungot to confuse boily 19:39:56 shachaf: we have one of each. :) it's so absurd it's hilarious. my favorite topping is pepperoni. interesting... 19:40:09 cofungot 19:40:09 kmc: way to go if i were obfuscating it i wouldn't have, but it 19:40:20 fungot: but it 19:40:21 shachaf: let me see if i have a function that returns the source of a builtin function, not sure if i ever think something geeky is funny, because so many people 19:41:17 fungot: so many people 19:41:18 shachaf: and i don't know if that is what i was thinking it had something to do 19:48:08 -!- atehwa_ has changed nick to atehwa. 19:49:51 -!- conehead has joined. 19:51:20 -!- ais523 has quit (Ping timeout: 250 seconds). 20:01:19 fungot: got fun? 20:01:20 FireFly: i understand the problem now? can i use 20:03:15 * boily selfconfuses himself 20:04:24 * FireFly uses full heal 20:05:11 * boily impersonates a spacial vortex and randomly blinks around 20:06:26 I won't be healed as easily as you think you are healing, Mr. FireFly! muah ah ah ah ah! 20:06:34 (said in a bad supervillain voice) 20:06:44 Argh 20:06:59 oh, btw, I surmised you're of the “Mr.” kind. 20:07:17 That is indeed the case 20:12:05 -!- ais523 has joined. 20:24:30 I believe I have finally mastered Assembly https://dl.dropboxusercontent.com/u/19940612/Graphic8.COM 20:25:02 Slereah_: if I happen to want to potentially execute that on my machine, what should I do? 20:25:52 dosbox, mount, type the name? 20:26:30 fizzie: that's what I did, and I now understand the “gay squares”. 20:26:35 Either you can just open it directly (esc to quit) or use dosbox 20:26:55 you can just ron "dosbox graphic8.com" can't you 20:26:58 run* 20:27:05 fungot: fongut 20:27:05 kmc: my answer: probably :p probably good for prototype. chicken will probably be using is ( fnord 20:27:21 kmc: Huh, that's convenient. 20:27:21 see, you can probably run that 20:28:03 I probably ran that. 20:28:25 if i run an arbitrary .com file with dosbox can it do things to my computer outside the dosbox 20:29:04 shachaf: i spent a little while looking for such exploits, but didn't find any 20:29:17 I don't think dosbox is really focusing on sandbox security, however. 20:29:22 it is easy to segfault dosbox with an invalid x86 instruction but it's just a NULL dereference 20:29:44 kmc: How about a TSR that manages to fake in some commands to the dosbox shell, which has mount &c.? 20:29:55 you can run mount /some/directory somedrive: in dosbox, can't you 20:30:00 can a .com program not do that 20:30:08 that could work; I don't know if mount is restricted 20:30:13 shachaf: it could probably insert the keystrokes for that into the keyboard buffer 20:30:18 It's not restricted when you type it in, at least. 20:36:39 -!- evalj has quit (Remote host closed the connection). 20:38:26 Interestingly, the "mount" is not a shell builtin, but a separate MOUNT.COM on the virtual Z: drive. 20:38:33 You can copy it elsewhere, and run, and it still works. 20:38:58 (The contents are the 20 bytes ndisasm'd at http://sprunge.us/aiAF) 20:39:39 So presumably you might not even need to play tricks with the input buffer, just use the same int 21h interfaces. 20:41:25 (All the other commands in Z: are also 20-byte files that only differ in their last bytes.) 20:43:24 For the record, int 21h/AH=4Ah is supposed to be "DOS 2+ - RESIZE MEMORY BLOCK" -- resize the block pointed to by ES to have a new size of BX paragraphs. 20:44:20 did you look that up in RBIL 20:44:31 Yes, of course. 20:45:04 -!- Frooxius has quit (Ping timeout: 250 seconds). 20:45:23 hooray for RBIL 20:46:12 I actually learned that DOS has malloc/free/realloc as interrupts from a paper book 20:48:13 * impomatic has a copy of Ralf Brown's Interrupt List as a paper book! 20:53:58 Damn MS DOS is way too fast for an animation! 20:54:00 fizzie: the really funny thing is that the files on Z: are almost the same; they only differ in their last byte, as far as I can see. 20:54:13 If I try to move a square to simulate MOVEMENT I see three at once! 20:54:15 int-e: (All the other commands in Z: are also 20-byte files that only differ in their last bytes.) 20:54:21 Maybe I should use the timer instead 20:54:24 Slereah_: move it more slowly then 20:54:33 But how! 20:54:37 fizzie: sorry. 20:54:39 also, the timer in DOS runs at 19.2Hz 20:54:42 which is normally too slow to be useful 20:54:45 int-e: Turns out the int 21h/AH=4Ah bits are just regular code, and it's the invalid opcode FE /8 that does something DOSBox-specific. 20:54:47 although I think you can customize it to be faster 20:54:57 fizzie: exactly 20:55:04 yeah, but I need the screen to refresh at like 20:55:09 24 per second or something 20:55:11 (FE /0 is INC r/m8, and FE /1 is DEC r/m8, but the other reg digits of FE are not used.) 20:55:14 That should be enough no? 20:55:35 Oh wait, I guess that's 24 hertz 20:55:35 Hm 20:55:46 I guess I can wait for a couple of vsyncs 20:56:06 fizzie: though you probably want FE /7 20:56:13 int-e: Yes, a typo/thinko. I think there's actually just two pointers following the FE /7. 20:56:26 Let's wait for 16 vsyncs 20:58:07 Oh, the code's right there in misc/programs.cpp: http://sprunge.us/SCHM 20:59:36 And the final byte is an index into a table. 21:00:38 http://sprunge.us/iWHa love that "//MEM LEAK" comment. 21:04:56 Apparently two vsyncs are enough 21:06:38 Notwithstanding the funky callback mechanism, it still seems possible for a program to programmatically call the mount-program callback, by setting up the memory properly. 21:10:06 in 320x200 mode, vsyncs should have a frequency of 70 Hz. 21:10:18 fungot: do you notwithstand funkies? 21:10:18 boily: great. should i care about" level. 21:17:04 int-e : So 2 in a row is about 30 images per second 21:17:06 which is fine 21:17:20 -!- MindlessDrone has quit (Quit: MindlessDrone). 21:21:06 Hm 21:22:10 Once I do two vsyncs, I have less problems with the screen clearing 21:22:17 But the upper part of the screen still flickers 21:23:05 The first 30 pixel rows or so 21:23:24 it takes a while to clear the screen and draw the squares 21:24:26 Yes, but the squares stay on the screen for a while as well 21:24:40 Hm 21:24:44 what to do 21:25:05 I could do a function that removes the shapes instead 21:26:36 I don't suppose I can do something much faster to clear the screen than rep stosd 21:29:15 tough. draw to a memory buffer; copy that over. or learn to use VGA's "unchained mode". then there's 4 pages worth of graphics memory, but you need some IO to actually access it (it interleaves 4 planes of memory). I never really did that. 21:31:09 https://en.wikipedia.org/wiki/Mode_X links to http://www.gameprogrammer.com/3-tweak.html which looks useful 21:31:41 I think the best solution is to implement a function that deletes the shapes and move them before reprinting them 21:32:09 Slereah_: honestly I'd probably do the render to screen buffer, then blit thing. 21:32:19 err. to memory buffer 21:32:43 blit? 21:32:46 copy 21:33:14 "block image transfer" 21:35:58 -!- boily has quit (Quit: FISHY CHICKEN). 21:36:00 -!- metasepia has quit (Remote host closed the connection). 21:45:16 Soon, I will be able to do a pong! 21:45:16 You can also see http://www.brackeen.com/vga/unchain.html for a simplish overview, I think I have used that page. 21:45:38 Thanks 21:46:48 It has both basic double buffering (draw to in-memory buffer and memcpy -- in your case, perhaps rep stosd -- to video memory) and proper page flipping which needs the masked-write stuff. 21:48:31 Er, mov, not sto. 22:03:59 What you can do is chained mode 256x256 with 256 colours 22:04:08 Which is convienient for some stuff 22:05:01 256x256 would be great 22:05:21 Instead of doing sums and substractions I can just check for overflows 22:08:43 -!- oerjan has joined. 22:10:39 hm, this seems fun 22:10:54 apparently the trøndelag region has had more wildfires so far this year as _all_ of last year. and about half of them last week. 22:11:04 *than 22:11:06 Ouch 22:11:46 oerjan: Norway has wildfires in February? 22:11:54 it doesn't seem like an obvious month for them 22:11:58 ais523: and january 22:12:13 ais523: it's very unprecedented. 22:13:07 basically no precipitation since jan 11 22:13:21 and plenty of strong wind. 22:13:25 there's less than usual in the UK, too, in that it hasn't been /constantly/ raining 22:13:35 although there was a thunderhailstorm at one point 22:13:43 which is rare in January, those normally happen in the summer 22:14:15 i recall also in the newspaper some firefighter saying they hadn't experienced such a bad month before at _any_ time of year. 22:15:40 let's start a conspiracy that putin made this to get good weather in russia for the olympics. 22:15:56 meanwhile california is in the middles of our worst ever drought 22:16:22 kmc: oh i thought the us was buried in snow. i guess not all of it. 22:16:27 indeed 22:17:57 i understand much of europe is having bad weather of various kinds 22:18:26 or at least strange 22:19:04 oerjan: all of the northern hemisphere is, I think 22:19:18 because the polar vortex that's meant to be over the arctic went and visited the US instead 22:19:51 ais523: well that's the us, but does that explain the high pressure zone over russia too? 22:20:07 possibly 22:20:18 I'm not that knowledgeable about how weather works 22:20:24 (but then, neither is anyone else) 22:20:50 i understand they can connect the polar vortex moving to global warming, although not in a way that convinces republicans. 22:21:23 "It is difficult to get a man to understand something, when his salary depends upon his not understanding it" 22:22:11 kmc: is that a quote 22:22:16 yes 22:22:20 hence the marks of quotation 22:22:27 "this is not a quote" 22:22:34 ceci n'est etc 22:22:52 kmc: what we need to do is convince them that it will kill their children. 22:23:36 good luck 22:24:00 well that's the only thing americans are more furious about than money, isn't it 22:24:55 depends on the cause 22:25:27 if it's school shootings then there's nothing we can do, the government has no place in regulating devices whose literal only purpose is to kill large numbers of people quickly 22:27:32 I sense sarcasm 22:28:38 sarcasm and insanity are the two only ways for americans to (temporarily) survive 22:30:39 FreeFull: so how's the weather in poland 22:32:10 I'm not in Poland, I was just born there 22:32:16 wat 22:32:18 I'm in England, and the weather sucks. Lots of flooding 22:32:45 I HAVE BEEN DECEIVED 22:34:56 here it's nice, warm (night temperature record yesterday) and dry. got a match? 22:39:29 FreeFull: can you ship some of your water over to california 22:40:35 kmc: Don't have the means of doing that, sorry 22:40:38 also here 22:41:43 I'd happily swap water for snow 22:41:55 Although I guess others wouldn't appreciate it as much 22:44:20 Oh, that's just the same. <-- 5 is the most recent version. 22:46:01 -!- ais523 has quit (Ping timeout: 245 seconds). 22:59:05 -!- ais523 has joined. 22:59:06 -!- ais523 has quit (Changing host). 22:59:06 -!- ais523 has joined. 23:01:26 can this be TC, I wonder? <-- it seems to me that this is a bag of tokens where you cannot reliably detect that a token is not present unless the bag is completely empty. 23:02:26 oerjan: yep 23:02:50 and with only finitely many tokens 23:02:58 perhaps you could do something based on probabilities, though 23:03:16 well there would be a chance of failure 23:03:53 it's like, you have just too little to implement fractran 23:03:59 (or Bag) 23:04:00 yeah, but you can just reset the program if you detect a failure 23:04:17 it'd work fine if you could detect failure reliably 23:04:31 i don't think it can be detected... 23:05:13 like, say you use a representation where you have X copies of element A, Y copies of element B, min(X,Y) copies of element C 23:05:37 oh hm 23:05:41 then you can compare X to Y by repeatedly removing items in the order C, A, B, C, A, B… 23:05:48 and restarting the entire program if they come out in the wrong order 23:05:54 it's unclear how you'd set that situation up to start with, though 23:05:57 Woo 23:06:05 I made a rectangle that moves if you press up or down 23:06:14 THE FUTURE OF VIDEO GAME IS NIGH GUYS 23:06:19 I AM WORKING ON THIS AMAZING IDEA 23:06:28 TABLE TENNIS ON A COMPUTER 23:06:37 You'll see it will be huge 23:06:53 I call it electric entertainment 23:07:01 Slereah_: I'm not sure it'll work, computers aren't particularly flat, making it unfair, and there might not be enough space to get a decent serve either 23:07:07 ais523: ok maybe you can do something that works like a nondeterministic turing machine, in that _if_ it halts without detecting a failure it will have calculated the right result. 23:07:07 although attaching the net shouldn't be too difficult 23:07:21 You'll see ais523 23:07:27 oerjan: right, that's the computational class I was aiming for anyway 23:07:27 although it might not be able to restart a computation. 23:07:32 It will be even bigger than Ball in a Cup 23:07:37 if a failure is detected. 23:07:44 http://www.youtube.com/watch?v=vx4IEmZNegg 23:09:14 oerjan: just keep extracting tokens until there aren't any more 23:09:21 then jump back to the start of the program 23:09:24 restarting is trivial 23:09:35 hm 23:10:07 ais523: ok as long as input is encoded in the program, which is enough for tc of course 23:10:26 yep 23:22:16 anyway, it's not obviously TC 23:22:22 and not obviously sub-TC 23:22:29 which is always a property I like in esolangs 23:24:24 now all we need is an interesting FSM to hook it up to 23:24:34 preferably a pretty powerful one 23:24:42 and we have a new interesting esolang 23:32:58 actually, there's a neat equivalent way to write this that's more efficient 23:33:16 instead of removing entirely at random 23:33:27 commands can give a set of values they want to remove 23:33:41 if any are in the random bag, one is removed at random, otherwise the program enters an infinite loop 23:37:39 i vaguely recall there is a theorem that is relevant to this, if i can find it again. 23:40:58 -!- Phantom_Hoover has joined. 23:48:31 ais523: so you are accepting that a program might loop infinitely instead of ever halting even if it could? 23:48:42 oerjan: yes, but with zero probability 23:48:52 hm 23:49:01 I normally only care about positive probabilities when it comes to nondeterministic languages 23:53:23 * oerjan cannot remember what it's called 23:56:18 oh i think it may be https://en.wikipedia.org/wiki/Dickson%27s_lemma 23:56:38 (that's not what i remember, but it may be the relevant special case) 23:57:45 this reminds me of subturing oracles 23:58:09 or well, subturing language + oracle that might bring it up to some higher computational class 23:59:17 Couldn't Fancy L be called a subturing oracle