←2014-02-03 2014-02-04 2014-02-05→ ↑2014 ↑all
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 <Sgeo> Rule 100.6b Players can use the _Magic_ Store & Event Locator to find tournaments in their area
01:15:04 <Taneb> It is weird knowing people IRL who know me as "Taneb"
01:20:36 <coppro> haha
01:20:41 <coppro> Sgeo: yes, it's the best rule
01:22:05 <kmc> 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 <pikhq> 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 <kmc> https://twitter.com/EvilHaskellTips
03:48:35 <pikhq> kmc: <3
03:53:54 <kmc> https://twitter.com/mtabini/status/430159283683360768/photo/1
03:55:01 <pikhq> Is CGFloat an IEEE single float?
03:56:01 <pikhq> Oh. It is a float with the property sizeof(CGFloat) == sizeof(void*). :(
03:57:07 <pikhq> So... it can't actually even store a full US phone number on 32-bit systems.
03:57:54 <pikhq> "+1 555 867 5309" is greater than 2^24-1. :(
03:59:01 <kmc> amazing
03:59:25 <pikhq> Hell, so's "+1 000 000 0000".
04:00:03 <pikhq> Which is not a legal number, but that's neither here nor there.
04:00:05 <kmc> who needs this +1 though
04:00:06 <kmc> this is america
04:00:36 <kmc> even ITU agrees that we're number one
04:00:44 <pikhq> There are places in the country where you actually have to dial "1 XXX XXX XXXX" though.
04:00:47 <pikhq> Even for local numbers.
04:00:50 <kmc> yes
04:35:35 <lifthrasiir> "+82 10 XXXX YYYY"? (that's a lot greater than 2^24-1)
04:36:25 <lifthrasiir> 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 <Sgeo> Isn't that the sort of trick people would try in the 1970s?
05:09:03 <Sgeo> Right alongside two digit years?
05:09:15 <Sgeo> (Not sure why I'm blaming the 70s specifically)
05:12:50 <kmc> ?
05:14:02 <Bike> i for one have no idea what you are talking about
05:14:38 <Sgeo> Y2k, storing two digits of the year in order to save memory
05:20:29 <kmc> using a float for phone numbers is also space-inefficient, though
05:22:13 <kmc> > logBase 2 (10**15)
05:22:14 <lambdabot> 49.82892142331043
05:24:33 <pikhq> lifthrasiir: I was assuming this was American, and also I'm only really familiar with the North American dialing plan. :)
05:25:37 <lifthrasiir> ;)
05:40:48 <fizzie> +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 <pikhq> +1 NNN NNN NNNN is a North American number.
05:53:47 <pikhq> (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 <Sgeo> Kindle is so annoying to hold compared to the Nook
05:54:01 <Sgeo> Trying to remind myself that the software is far better
05:54:21 <kmc> if you have to remind yourself, is it really better?
05:54:59 <Sgeo> 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 <Bike> did you like buy both
05:55:07 <Sgeo> Bike: yes. Not at the same time though
05:55:14 <Bike> why?
05:55:52 <Sgeo> I think partially wanted the glow light stuff, partially sick of the Nook's perpetual bugginess, partially ... ads maybe
05:56:09 <Sgeo> Also remembering that the Kindle had a feature that I kept wishing the Nook had
05:57:52 <fizzie> 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 <Bike> how consumerist
06:32:40 <lifthrasiir> 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 <Sgeo> http://necros.gibdon.com/scene-music-minor
06:36:03 <Sgeo> Pentagonal Dreams is "less in quality than average, or short" according to this person
06:36:03 <Sgeo> 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 <Sgeo> '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 <fizzie> Then it must be "less in quality than average".
07:27:55 -!- FireFly has joined.
07:45:53 <kmc> 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 <fizzie> I read (some of) the Slashdot comments about that helicopter thing, and I wish I hadn't.
07:52:03 <kmc> why
07:52:25 <fizzie> Because it seemed to be approximately 90% about her gender.
07:52:39 <kmc> sigh
07:57:58 <kmc> she's pretty awesome
07:58:20 <kmc> 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 <kmc> i wonder what her job is
08:04:31 -!- tromp_ has quit (Ping timeout: 272 seconds).
08:05:13 <fizzie> Software developer, I think. We have some friends in common. (You know, Finland; it's not such a giant community.)
08:05:52 <fizzie> At the company with the silliest YouTube ads.
08:05:56 <fizzie> Let's see if I can find one.
08:06:14 <fizzie> http://www.youtube.com/watch?v=3Jym9rfQgec there you go
08:06:49 <fizzie> (I keep getting that in front of my videos, it's probably a geographically Finland-localized ad.)
08:08:17 <kmc> wow. what?
08:08:21 <oklopol> fizzie: yeah obviously the comments should be about how she's finnish
08:08:34 <fizzie> oklopol: Right, exactly!
08:08:47 <fizzie> (There was a bit of that too, since it said "Finnish" in the title.)
08:08:53 <oklopol> okay, good
08:09:27 <kmc> wow this video is available in 4K
08:09:28 <kmc> thank god
08:11:08 <fizzie> Does it make you want to go work there?
08:11:35 <fizzie> (It didn't really "work" for me, personally.)
08:14:06 <kmc> ... it kind of does, yeah
08:14:20 <kmc> but also makes me feel like i'm not cool enough to work there
08:14:47 <kmc> which is the problem with this sort of thing
08:15:44 <kmc> 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 <kmc> looks like they do some haskell too
08:16:22 -!- shachaf has joined.
08:17:58 <fizzie> 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 <kmc> wonder what happened
08:20:49 <fizzie> Oh, I guess in 2012 at least they just didn't take part.
08:21:13 <fizzie> You know, to be fair to other companies and all that.
08:23:18 <kmc> hehe
08:26:16 <shachaf> if you work at the best place to work at does that mean there's nowhere to go but down :'(
08:26:47 <kmc> and just by joining you're probably making the company worse :(
08:27:34 <fizzie> 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 <shachaf> apparently i work at the "best place to work at" (according to the Great Place to Work Institute's survey)
08:28:27 <fizzie> Globally, or regionally? (Do they even do a global ranking?)
08:28:30 <kmc> "best place at which to work" (according to grammar pedants)
08:29:00 <Bike> i've honestly never heard anyone do the preposition thing
08:29:01 <shachaf> kmc: p. sure that's a rule grammar pedants invented to have something to ped
08:29:17 <shachaf> fizzie: i don't know, i just went to their web page and clicked around
08:29:52 <shachaf> but these are all us companies so i guess it's regional
08:29:55 <b_jonas> guys, I realized something
08:30:52 <b_jonas> 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 <kmc> mine's only 115 V :(
08:31:20 <b_jonas> almost everything else in the hardware and software have been replaced with something more modern since much later.
08:31:25 <fizzie> This one's 230V, nominally. I'm sure that was the point.
08:31:45 <kmc> b_jonas: anyway that's an interesting observation
08:31:47 <b_jonas> fizzie: yes, it used to be 220 V nominal back then, now it's 230 V nominal.
08:32:10 <kmc> (the cable is IEC 60320 C13, for what it's worth)
08:32:42 <b_jonas> 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 <b_jonas> Every part has been replaced at least once, most parts have been replaced multiple times,
08:33:11 <shachaf> you can't replace the same part twice
08:33:17 <b_jonas> 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 <shachaf> it's just the same part because you think of it like that
08:33:27 <kmc> i have like 20 of those cables
08:33:35 <shachaf> (but then did you truly replace it........!!)
08:33:38 <b_jonas> shachaf: exactly, and it's the same computer only because I think of it like that.
08:33:55 <shachaf> i don't think i use desktop computers anymore
08:34:13 <b_jonas> 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 <shachaf> i don't think i trust this Great Place to Work Institute v. much
08:35:09 * kmc -> sleepytime
08:35:15 <shachaf> good neegan
08:35:28 <kmc> good night
08:35:41 <b_jonas> 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 <shachaf> in the really old days it was just a cable
08:36:52 <shachaf> but now it's a power cable
08:36:58 <shachaf> that has to be an upgrade
08:37:04 <b_jonas> 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 <fizzie> The 3.5mm jack is also a reasonably old design.
08:41:31 <Bike> 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 <Bike> 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 <b_jonas> 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 <Guest1732> 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 <SeeNoEvil> Guest1732: trying to understand IRC commands, and what time zone you are in.
10:30:13 <SeeNoEvil> Seem to recall some earlier chat where you seemed interested in eigenratios.
10:30:29 <elliott__> eigenratios are pretty cool
10:30:34 <elliott__> I don't know much about them though... that must have been ages ago
10:30:47 <SeeNoEvil> Yeah. I've been reading the logs.
10:31:43 <elliott__> my condolences, the further you go back the more annoying I am :P
10:32:46 <SeeNoEvil> You had a novel idea for defining a self-interpreter that wasn't "cheating" - having an eigenratio > 1.
10:33:20 <SeeNoEvil> Might not have been you. But I think it was - at least an "elliot".
10:33:40 <elliott__> yeah, that was mine, I think, though perhaps not originally or solely
10:33:57 <elliott__> 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 <elliott__> like, an eval instruction that adds a slight slowdown.
10:36:06 <SeeNoEvil> I think it might be a bit tricky to do I think.
10:36:22 <SeeNoEvil> I think. Yes. I do... :-)
10:36:46 <SeeNoEvil> I think... I think... I think... it might be a bit trick.
10:37:25 <SeeNoEvil> I think you should create an actual working example.
10:37:29 <elliott__> well, for instance
10:37:44 <elliott__> let's say you have an implementation where every instruction takes 1s to execute
10:37:53 <elliott__> but when you call eval, any evals in the code you're evalling take 2s instead
10:37:59 <elliott__> and then 4s when you nest deeper, etc.
10:38:18 <elliott__> (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 <SeeNoEvil> 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 <SeeNoEvil> I mean, you create the bottom level interpreter, and then run a stack of the self-interpreter on the blog.....
10:43:50 <SeeNoEvil> In your example with eval(eval(eval(something))), how would the inner instances "know" to run slower?
10:48:04 <SeeNoEvil> This one: http://eigenratios.blogspot.co.nz/2006/09/mark-ii-oisc-self-interpreter.html
10:51:28 <SeeNoEvil> 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 <boily> good SSL morning!
13:47:32 -!- tromp_ has quit (Remote host closed the connection).
13:48:47 <oerjan> ~metar ENVA
13:48:48 <metasepia> ENVA 041320Z 12008KT 080V150 CAVOK 06/M04 Q1008 TEMPO 16015G25KT RMK WIND 670FT 15010KT
13:49:49 <boily> ~metar CYUL
13:49:49 <metasepia> CYUL 041342Z 21006KT 8SM SCT037 BKN120 M12/M14 A3045 RMK SC3AC4 SLP314
13:49:59 <fizzie> ~metar EFHK
13:50:00 <metasepia> EFHK 041320Z 17006KT 2500 FZDZ BR BKN002 M00/M01 Q1023 TEMPO 1000 BKN001
13:50:06 <fizzie> Still doing the M00.
14:11:35 <Taneb> `? Nooodles
14:11:45 <Taneb> :(
14:12:16 <boily> `? ramen
14:12:23 <boily> hm.
14:13:44 <boily> Taneb: the Wisdom doesn't have /no+dles/i, but it has ramen: 拉麵是一種類型的麵條縫製從原始樹木。hth
14:14:01 <Taneb> The wisdom so does have Nooodles I'm looking at it right now
14:14:19 <elliott__> would anyone like to take over hosting the wiki
14:14:22 <elliott__> I don't have time for it any more
14:14:46 <boily> Taneb: eh?
14:14:54 <oerjan> !sh Hey I'm still alive!
14:14:56 <EgoBot> ​/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 <oerjan> or not.
14:15:02 <oerjan> oh.
14:15:06 <Taneb> boily, page 17
14:15:08 <oerjan> !sh echo Hey I'm still alive!
14:15:08 <EgoBot> ​/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 <oerjan> !sh echo Hey I'm still alive\!
14:15:22 <EgoBot> ​/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 <oerjan> !sh echo 'Hey I'm still alive!'
14:15:35 <EgoBot> ​/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 <Taneb> Anyway, I have a lecture to attend 2 miles away
14:15:40 <oerjan> rgh
14:15:43 <boily> Taneb: I fail at grep.
14:15:45 * Taneb ----> away
14:15:51 <oerjan> !sh echo "Hey I'm still alive!"
14:15:51 <EgoBot> Hey I'm still alive!
14:15:56 <oerjan> SEE
14:16:44 <boily> !sh echo "~echo !sh echo \"~echo hello\""
14:16:44 <EgoBot> ​~echo !sh echo "~echo hello"
14:16:50 <boily> meh.
14:18:15 <oerjan> metasepia: ~echo hi
14:18:22 <oerjan> nah.
14:18:51 * boily shields his bot from meddling Scandinavians
14:19:42 <oerjan> mwahahahandinavians
14:21:02 <elliott__> well, that is not a reassuring response
14:26:19 <boily> 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 <elliott__> 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 <elliott__> 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 <elliott__> wow, it's been two years since I took over the wiki
14:29:48 <elliott__> time flies
14:31:35 <oklopol> elliott__: where has your time gone
14:31:50 <oklopol> have you started doing the booze
14:31:58 <oklopol> ??
14:32:26 -!- oerjan has quit (Quit: leaving).
14:33:00 <oklopol> (o dear he do the booze.)
14:34:25 <elliott__> yeah, I've been drunk for the past year
14:34:45 <elliott__> getting my affairs in order before my inevitable death from liver failure, etc. etc. etc.
14:34:51 <elliott__> no seriously I'm just lazy
14:36:08 <oklopol> 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 <elliott__> it sounds better
14:38:01 <oklopol> so my phd thesis is currently 114 pages
14:38:09 <oklopol> *draft
14:38:39 <oklopol> how proud are you on a scale from 1 to \omega
14:38:53 -!- variable has changed nick to trout.
14:40:21 <oklopol> (most of it is doodles of dicks and walruses)
14:42:36 <boily> oklopol: ω² - 2ω, but only iff your dick-to-walrus ratio is within φ±ε.
14:42:56 <fizzie> "only if and only if".
14:43:44 <boily> sorry. I RAS syndromized that.
14:43:56 <oklopol> how surreal!
15:05:22 <b_jonas> boily: that isn't even between 1 to omega
15:05:30 <b_jonas> besides, it doesn't even make sensee
15:06:19 <boily> I know ^^
15:06:48 -!- password2 has joined.
15:08:58 <boily> !sh bin/relcome password2
15:08:59 <EgoBot> ​/tmp/input.397: line 1: bin/relcome: No such file or directory
15:09:13 <boily> Gregor`: I can't relcome people!
15:09:50 <b_jonas> oklopol: I'm 1075000000 proud of you on that scale
15:09:58 <b_jonas> approximately
15:13:23 <oklopol> seems appropriate
15:13:39 <oklopol> although i think that's a bit closer to 0 than \omega :(
15:14:18 <oklopol> also ω² - 2ω is a perfectly cromulent surreal number
15:25:06 <boily> but, a question remains unanswered: of what use are surreal numbers?
15:27:01 <int-e> 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 <int-e> (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 <int-e> oh ... ordered field.
15:30:33 <int-e> hyperreal numbers are used in non-standard analysis. is there a nice way to map those into the surreals?
15:31:21 <boily> what is non-standard analysis, and while we're on the subject, standard analysis?
15:34:49 <int-e> 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 <oklopol> 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 <int-e> (and oklopol just provided the definition of a hyperreal number)
15:35:19 -!- fungot has joined.
15:35:21 <oklopol> 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 <fizzie> (There should probably be a backup relcome in fungot.)
15:35:31 <fungot> fizzie: fnord? alice?
15:35:37 <oklopol> yeah definitions are totally better than explanations
15:36:02 -!- Slereah_ has joined.
15:36:09 <int-e> Oh fungot is back. I wonder whether it's become smarter.
15:36:09 <fungot> int-e: but a computer science textbook than a scheme source that exercises every aspect of a lisp name, i presume
15:36:50 <FireFly> ^help
15:36:51 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
15:37:35 <FireFly> What is the 0-9 in ^str?
15:38:01 <FireFly> Oh
15:38:33 <fizzie> A number.
15:38:36 <FireFly> Ten slots for strings, that could be referenced as str:N in a ^def I suppose
15:38:37 <int-e> ^str 42 get
15:38:37 <fungot> Usage: ^str 0-9 get/set/add [text]
15:38:41 <int-e> ^str 4 get
15:38:41 <fungot> Empty.
15:38:45 <fizzie> Yes.
15:38:48 <FireFly> ^str 0 get
15:38:48 <fungot> +++++++++++++++[>++++++++>++++>+++++++>+++++++<<<<-]>>++++++.>++++++.<<----.>----------------------------------.<----.>>+++.<<-----------.+.>>>.<++++++.<<-.>>-----.<++++++++++++++++++++++++++.--------------------------.<+.>>++.>+++++.<<<+.>>>+.<-.<.>----------------------.<++++++++++++.------------.>----------------------.<<------.>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.>>----.<---.<++++.++++++++.>-
15:39:41 <FireFly> ^bf ,[.,]!test
15:39:41 <fungot> test
15:39:42 <int-e> @bf +++++++++++++++[>++++++++>++++>+++++++>+++++++<<<<-]>>++++++.>++++++.<<----.>----------------------------------.<----.>>+++.<<-----------.+.>>>.<++++++.<<-.>>-----.<++++++++++++++++++++++++++.--------------------------.<+.>>++.>+++++.<<<+.>>>+.<-.<.>----------------------.<++++++++++++.------------.>----------------------.<<------.>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.>>----.<---.<++++.+++...
15:39:42 <lambdabot> Bot prefixes: fungot ^, HackEgjjj
15:39:48 <int-e> ...+++++.>-
15:39:54 <int-e> oh. darn.
15:40:08 <FireFly> Should be easy enough to add a backup welcome, then
15:40:19 <int-e> I guess that string is incomplete anyway.
15:40:52 <int-e> ^bf str:0
15:41:05 <password2> err
15:41:13 <FireFly> I guess it only likes that in ^def's
15:41:21 -!- FreeFull has joined.
15:41:35 <boily> 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 <boily> (yay engineering! we do stuff with advanced maths, but don't know why!)
15:42:11 <fizzie> The ^str does not necessarily print completely, if it's too long.
15:42:25 <fizzie> ^def tmp bf str:0
15:42:25 <fungot> Defined.
15:42:26 <fizzie> ^tmp
15:42:26 <fungot> Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?, thutubot +, metasepia ~, jconn ), blsqbot !
15:42:30 <fizzie> See, it's fine.
15:42:54 <fizzie> I guess it's like that because of the ).
15:44:19 <FireFly> What's problematic with the ) ?
15:45:01 <int-e> If I forget to close an opening parenthesis (like this
15:45:14 <boily> )
15:45:17 <int-e> ) then the closing one will typically be on the next line ;)
15:45:17 <jconn> int-e: |syntax error
15:45:17 <jconn> int-e: | then the closing one will typically be on the next line;)
15:45:32 <int-e> boily: (
15:45:36 <boily> )
15:45:43 <int-e> it's still unbalanced.
15:45:45 <int-e> (
15:45:48 <boily> )))))))
15:46:02 <int-e> boily: you closed a parenthesis that I closed as well.
15:46:10 <int-e> (((((((
15:46:23 <fizzie> FireFly: A lone ) is not outputtable with Underload, which is what static strings like that on fungot usually use.
15:46:23 <fungot> 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 <boily> ()()()()()()()()
15:46:46 <int-e> boily: you should be happy that I'm not compensating for the smileys.
15:46:49 <FireFly> fizzie: I see
15:47:27 <FireFly> ^def tmp bf ,[.,]!does i/o work here too?
15:47:27 <fungot> Defined.
15:47:31 <FireFly> ^tmp
15:47:37 <FireFly> ^tmp test?
15:47:37 <fungot> test?
15:47:41 <FireFly> Ah
15:47:47 <boily> ^tmp ^tmp test?
15:47:47 <fungot> ^tmp test?
15:48:04 <boily> ^tmp ~echo ^tmp ~echo ^tmp ~echo ^tmp ~echo test!
15:48:04 <fungot> ~echo ^tmp ~echo ^tmp ~echo ^tmp ~echo test!
15:48:04 <metasepia> ^tmp ~echo ^tmp ~echo ^tmp ~echo test!
15:48:04 <fungot> ~echo ^tmp ~echo ^tmp ~echo test!
15:48:05 <metasepia> ^tmp ~echo ^tmp ~echo test!
15:48:05 <fungot> ~echo ^tmp ~echo test!
15:48:05 <metasepia> ^tmp ~echo test!
15:48:05 <fungot> ~echo test!
15:48:05 <metasepia> test!
15:48:14 * boily grins like a maniac
15:48:15 <int-e> ^str 1 get
15:48:15 <fungot> >,[>,]<[<]>[<++++[>--------<-]+>-[-------[--[<+++[>----<-]+>[<
15:48:39 <int-e> ^def aux ^bf str:1
15:48:39 <fungot> Usage: ^def <command> <lang> <code>
15:48:44 <int-e> ^def aux bf str:1
15:48:44 <fungot> Mismatched [].
15:48:54 <int-e> ^str 2 get
15:48:54 <fungot> Empty.
15:49:06 <int-e> ^str 0-9 get
15:49:07 <fungot> Usage: ^str 0-9 get/set/add [text]
15:51:31 <fizzie> No need to be so literal.
15:51:59 <fizzie> There's something in 5 and 9 too.
15:52:08 <fizzie> ^def tmp bf str:5
15:52:08 <fungot> Defined.
15:52:11 <fizzie> ^tmp foo
15:52:11 <fungot> Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?, thutubot +, metasepia ~, jconn ) , blsqbot !
15:52:17 <fizzie> Oh, that's just the same.
15:52:19 <fizzie> ^def tmp bf str:9
15:52:20 <fungot> Defined.
15:52:21 <fizzie> ^tmp foo
15:52:21 <fungot> 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 <FireFly> Nice
15:52:49 <FireFly> ^str 9 get
15:52:49 <fungot> ,[.,]++++++++++++++[>++++++++>++++>+++++++>++++++<<<<-]>>++.--------------------------.>>+++.++++++++++++++.+++++++.<+.>+++.--.<++.<.<++++.>>>++.<<.>>+++++.<+++.---.<.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.+++++.>>.<.>--.----.<----.<<.>-----.>>+.-.<.>--.<-----------------------------------------------------------------.<-.+++++++++++++.>>----------.<.>++++.<<------.<--.>>.+++++++++++++++++++++
15:52:54 <fizzie> Output length limits strike again.
15:53:11 <fizzie> The program is probably complete, it's just that the bf interpreter has an overly short maximum length limit.
15:53:11 <int-e> ^style ...
15:53:11 <fungot> Not found.
15:53:23 <FireFly> ^style
15:53:23 <fungot> 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 <boily> ^tmp passby
15:59:39 <fungot> 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 <FreeFull> fizzie: That's one reason to have rle bf
16:10:02 <ais523> DDOS still going on? I couldn't connect earlier
16:10:09 <ais523> and was close to pinging out on this attempt
16:11:30 <boily> ais523: weird. I thought it calmed down yesterday fternoon, and SSL is back on track today.
16:13:09 <quintopia> why don't people think about anyone else?
16:13:12 <quintopia> hi boily
16:14:18 <boily> because people.
16:14:21 <boily> hi quintopia
16:15:28 <quintopia> how is new job
16:16:03 -!- Frooxius has joined.
16:16:36 <boily> quintopia: unknown. I start next week. if it is yours, also unknown.
16:16:51 <boily> Frhellooxius.
16:17:01 <quintopia> boily: i don't have a new job. you never got me one.
16:17:37 <quintopia> boily: so what are you doing this week?
16:18:57 <boily> quintopia: documenting what I was working on, tutorialing the teammates, (subtly) lazying around on IRC and wikipédia...
16:19:17 <quintopia> boily: sounds like a good week to invent a new esolang
16:19:35 <quintopia> boily: you're already better at it than. you're on cpressey's list!
16:19:57 <FireFly> This channel has plenty of lists, doesn't it?
16:20:02 <ais523> is cpressey's list a list of people who asked about cpressey's list?
16:20:05 <ais523> if so, I'm on it now, I guess
16:20:17 <boily> what is cpressey's list?
16:20:42 <ais523> boily: you were apparently on it already, no point in asking
16:21:30 <boily> ais523: oh well. time to retroactively bask in the Glory of being in Cpressey's List.
16:21:36 <quintopia> ais523: of course you are on it. you are also better at esolang than me
16:23:25 <quintopia> does anyone know what year Half-Broken Car in Heavy Traffic came out?
16:24:17 <ais523> quintopia: I'm not convinced I'm better at BF Joust than you, though
16:24:45 <boily> I horribly suck at the Joust.
16:24:51 -!- Tritonio has quit (Ping timeout: 272 seconds).
16:25:10 <quintopia> 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 <ais523> yeah, I don't have too much time on my hands right now
16:25:45 <ais523> but I'm upset at my latest strategy not being able to top the hill
16:25:53 <ais523> even when it beats every other program, it still doesn't top the hill
16:25:58 <ais523> which is really frustrating
16:26:06 <ais523> I have to, like, make it beat every other program by more, or something
16:26:21 <quintopia> hmm the original document for HBCHT says it was created 2011. does anyone remember seeing it anywhere before 2011?
16:26:50 <Slereah_> Having a Baby Cat Hurl on the Table?
16:27:19 <ais523> Half-Broken Car in Heavy Traffic seems likely from context
16:27:21 <quintopia> slereollah
16:27:45 <Slereah_> Woops
16:27:48 <Slereah_> Wrong channel
16:27:53 <Slereah_> Oh wait
16:27:54 <Slereah_> No
16:27:57 <Slereah_> It is the correct one
16:28:01 <Slereah_> What's a HBCHT
16:28:06 <quintopia> ...
16:28:25 <Slereah_> Oh right
16:28:28 <Slereah_> You answered
16:28:31 <Slereah_> NEVERMIND
16:29:08 <quintopia> this is cpressey's list: http://catseye.tc/node/Esolang
16:29:22 <quintopia> there are a number on here i never looked at before
16:29:29 <ais523> 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 <ais523> 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 <boily> re Aubergine: “nothing spectacular, but somewhat cute.” heh :D
16:33:58 -!- johnnie has joined.
16:34:33 <johnnie> hey, who's online right now?
16:34:39 <password2> Im surprised at how big this channel is
16:34:52 <johnnie> its pretty big, isn't it?
16:35:01 <password2> yep
16:35:23 <johnnie> I get the feeling that we're probably the only two active users right now.
16:35:35 <ais523> hmm
16:35:37 <ais523> are we being trolled?
16:35:38 <password2> maybe
16:35:43 <johnnie> Or three.
16:35:48 <ais523> it's been pretty active today
16:35:53 <johnnie> Oh that's good
16:35:58 <quintopia> definitely never seen these two before
16:36:01 <ais523> also, I've never seen either of you here today
16:36:02 <password2> yeah i see lots of words here
16:36:08 <ais523> that means rainbow welcome time?
16:36:13 <ais523> `relcome password2 johnnie
16:36:15 <boily> nope. and I couldn't `relcome them properly. *cough* Gregor` *cough*
16:36:21 <ais523> oh, the rainbow welcome bot is down
16:36:22 <boily> ais523: the gregorbots are dead.
16:36:35 <password2> i though the relcome is a typo
16:36:44 <boily> password2: it's a Rainbow wELCOME.
16:36:53 <password2> haha
16:36:53 <johnnie> 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 <ais523> !c printf("I'm a gregorbot and I'm not dead!\n");
16:37:07 <boily> johnnie: neat! that's a good start.
16:37:08 <EgoBot> I'm a gregorbot and I'm not dead!
16:37:09 <johnnie> And, thanks :)
16:37:16 <password2> i have nada
16:37:24 <quintopia> boily: dammit now i'm singing the lumberjack song :(
16:37:45 <boily> quintopia: uhm. I would like to say that it's not my fault, but then...
16:37:58 <johnnie> 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 <password2> brb
16:38:12 <ais523> oh, good, Phantom_Hoover isn't here, so you're safe even if it's a BF derivative
16:38:28 <ais523> but SPAM/1 isn't a BF derivative so that works even better
16:38:32 <boily> johnnie: have you looked at the PDF in the /topic?
16:38:45 <johnnie> I haven't, boily, no.
16:39:38 <johnnie> 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 <ais523> also, any esolang that requires snailmail to implement is pretty creative
16:39:43 <ais523> if unlikely to actually be implemented
16:39:55 <ais523> I think SPAM/1 is probably better just as it is
16:40:46 <ais523> johnnie: what order does XMTR retrive the stored data in?
16:40:46 <johnnie> 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 <ais523> 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 <ais523> which gets really annoying after a while
16:42:18 <Slereah_> BF is great as hell
16:42:26 <Slereah_> It's pretty good to prove Turing completeness
16:42:39 <johnnie> 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 <quintopia> 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 <ais523> johnnie: oh right
16:43:28 <Slereah_> Also if someone asks you to make a compiler at gunpoint?
16:43:33 <Slereah_> Bam, make a BF compiler!
16:43:35 <Slereah_> You're done
16:43:44 <ais523> quintopia: boring, like half my languages there's no obvious way to reduce BF to them directly
16:43:53 <quintopia> i get asked to make a compiler at gunpoint every Tuesday
16:43:56 <ais523> Slereah_: can't I make a Quiler self-compiler?
16:44:04 <ais523> that targets Quiler?
16:44:05 <boily> Slereah_: that's not a situation I think I'd find myself in in the foreseeable future...
16:44:25 <boily> (contrary to quintopia, who lives the American Dream every week.)
16:44:26 <ais523> I think any sequence of bytes fulfils that restriction
16:44:30 <Slereah_> You never know!
16:45:01 <boily> Slereah_: being forced to write a compiler while a moose is charging towards you, that is more likely for me.
16:45:06 <ais523> (Quiler is defined as folows: given any input, a Quiler compiler ignores it and outputs a Quiler compiler)
16:45:25 <ais523> (it is not a massively useful language)
16:45:54 <Slereah_> Canadian eh?
16:46:05 <boily> Slereah_: pretty much so. Québécois, even.
16:46:19 <ais523> are mooses inherently Canadian, or just associated with Canada
16:46:22 <ais523> umm… meese?
16:46:27 <boily> meeseses.
16:46:42 <ais523> boily: are the squirrels black in your area of Quebec too? or just Ottawa?
16:46:44 <johnnie> 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 <ais523> johnnie: that seems useful
16:47:26 <johnnie> I think mine is going towards a Chindogu. :)
16:47:32 <ais523> actually I'm trying to work out if SPAM/1 has the ability to store infinite data
16:47:35 <ais523> also I had an esolang idea
16:47:42 <quintopia> ais523: there are also meese in maine and alaska and other such northerly places
16:48:01 <quintopia> ais523: i always have esolang ideas
16:48:06 <ais523> 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 <ais523> that's it
16:48:17 <quintopia> i've got at least 3 just sitting around on paper
16:48:23 <ais523> can this be TC, I wonder?
16:48:42 <quintopia> ais523: depends on the rest of the language
16:48:46 <johnnie> I gotta get back to work. But it's good to know this place is useful for peer reviewing these ideas.
16:48:48 <ais523> quintopia: regardless of the rest of the language
16:49:14 <ais523> remember, this is the /only/ unlimited store, you're pasting it onto an FSM
16:49:29 <quintopia> 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 <ais523> quintopia: the store is unordered
16:49:54 <boily> ais523: our squirrels are gray. sometimes you get a glimpse of an albino one.
16:49:54 <ais523> or as in, we have the rest of the language, and we have the store
16:49:56 <johnnie> Bye guys!
16:50:08 <boily> johnnie: adieu!
16:50:08 <quintopia> bye
16:50:13 -!- johnnie has quit (Quit: Page closed).
16:50:18 <ais523> 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 <quintopia> ais523: okay but still. consider an instruction like "test for divisibility by x and branch"
16:51:31 <ais523> quintopia: the data themselves are finite size
16:51:39 <quintopia> ais523: then you can store bits as primes
16:51:40 <ais523> so that's equivalent to a really really large switch-case
16:55:11 -!- tromp_ has quit (Ping timeout: 245 seconds).
16:56:19 <password2> what makes a programming language esoteric
16:57:00 <ais523> I'm not sure there's any hard answer
16:57:14 <quintopia> 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 <ais523> and there's lots of gray area
16:57:21 <password2> any soft ones then :p
16:57:32 <quintopia> password2: yes on the wiki
16:57:39 <password2> ah
16:58:03 <password2> and the wiki is?
16:58:11 <ais523> 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 <ais523> http://esolangs.org/wiki/Main_Page
16:58:17 <quintopia> esolangs.org or something
16:58:25 <quintopia> yeah that
16:58:29 <ais523> 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 <password2> i have been on ther i think , but it was a few moons ago
16:59:37 <password2> tbh i just randomly joined this channel after listing channels on freenode
17:03:08 <b_jonas> what? this channel totally makes sense without that wiki, as long as you know esoteric programming languages from other sources
17:03:15 <b_jonas> um
17:03:25 <b_jonas> or at least it makes as much sense as it makes with the wiki
17:03:36 <quintopia> 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 <b_jonas> why don't we have the url of the wiki in the channel topic though?
17:03:50 <quintopia> *anyway
17:04:21 <Bike> maybe because we relcome everyone anyway
17:04:46 <quintopia> or we would
17:05:00 <quintopia> if we had another bot that could
17:05:08 <quintopia> fungot can't even finish a sentence
17:05:08 <fungot> quintopia: did either book mention schroedinger's cat? :() but i'll put it online :p
17:05:11 <b_jonas> ah
17:05:15 <b_jonas> that makes sense
17:05:35 <b_jonas> relcome
17:07:33 <b_jonas> ah, and apparently the url to the wiki is in the chanserv welcome message
17:07:48 <b_jonas> or so chanserv claims
17:08:33 <password2> wow , my internets is slow
17:09:37 <quintopia> 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 <ais523> http://esolangs.org/wiki/SELECT.
17:11:34 <ais523> not aware of the language
17:12:44 <b_jonas> this is scary
17:12:52 <b_jonas> this SELECT. language
17:13:25 -!- atriq has joined.
17:13:48 <ais523> 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 <ais523> I'm guessing of the order of tens of KB because of that
17:14:34 <b_jonas> how do these EXP. and LOG. and SELECT. commands work?
17:15:46 <password2> very rapidly
17:16:17 <quintopia> ais523: haha. no and very unlikely.
17:17:06 <password2> does it not jump by the distance of the result?
17:17:11 <quintopia> ais523: more reasonable would be in the hundreds of kb with comments and indentation stripped.
17:17:22 <ais523> 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 <quintopia> ais523: but i'll let you know once i've written it.
17:17:33 <ais523> it depends on what font you use, ofc
17:17:49 <b_jonas> how do you copy numbers exactly in this SELECT. language?
17:17:53 <quintopia> ais523: 7pt deja vu sans mono
17:17:57 <ais523> b_jonas: same way as in BF
17:18:06 <ais523> really, the numbers are a red herring
17:18:16 <ais523> you don't want to work with the numbers specifically
17:18:20 <ais523> but with their mathematical properties
17:18:25 <password2> oh yeah complex number , not used to seeing them in a programming language
17:18:30 <ais523> a typical program's going to store integers, BF-style, but not store them /as/ integers
17:18:37 <quintopia> b_jonas: RIGHT. EXP. LEFT. SELECT. RIGHT. LOG. RIGHT. SELECT. LEFT. will copy a number one cell to the right.
17:18:44 <ais523> but rather by extracting them from a set of complex numbers that are easily inter-converted
17:19:03 <ais523> or at least, it seems that quintopia's method of esolang programming is entirely different from mine :-)
17:19:19 <b_jonas> quintopia: hmm
17:19:57 <b_jonas> quintopia: that seems strange
17:20:41 <ais523> 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 <b_jonas> ais523: is that something you learnt from intercal?
17:21:32 -!- EgoBot has joined.
17:21:45 <ais523> b_jonas: no, actually using numbers as numbers in INTERCAL isn't so bad
17:22:22 <ais523> although modern versions are actually TC with no variables involved at all, I think
17:22:41 <quintopia> 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 <ais523> quintopia: I/O is normally comparatively minor although I guess not in 99bob
17:23:15 <b_jonas> ais523: um, no variables is a bit going too far
17:23:35 <b_jonas> because intercal has very convenient operations variable
17:23:45 <ais523> b_jonas: sure, but they're also unreadable
17:23:48 <b_jonas> I mean, it has array indexing and indexed assignment
17:23:59 <ais523> if you eschew variables entirely, it mostly just looks like COBOL, which isn't so bad
17:24:01 <quintopia> s/1/2/2/
17:24:30 <ais523> you forgot to escape the second /
17:24:36 <ais523> making that substitution pretty hard to read
17:24:47 <quintopia> well i was lagged out at the time and i knew you'd understand
17:25:04 <ais523> it took me like 10 seconds to figure it
17:25:40 <b_jonas> 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 <quintopia> yes
17:27:12 <b_jonas> quintopia: even then that sequence you gave doesn't make sense to me
17:27:23 <b_jonas> "RIGHT. EXP. LEFT. SELECT. RIGHT. LOG. RIGHT. SELECT. LEFT. will copy a number one cell to the right."
17:27:55 <quintopia> b_jonas: you have to assume both cells to the right contain the same constant k.
17:28:23 <b_jonas> oh. but how do you get such a state if the tape starts from random numbers?
17:28:36 <password2> correct me if I'm not mistaken , to write a brainfuck simulator would not be very difficult?
17:28:55 <atriq> password2: it isn't at all.
17:28:56 <quintopia> password2: not very, no
17:29:02 <password2> mmm
17:29:17 <quintopia> b_jonas: the tape starts like ...k k k k k k k k k...
17:29:56 <b_jonas> ah!
17:30:08 <quintopia> k is ostensibly randomly selected, but they are all equal, so it doesn't matter
17:30:17 <fizzie> FreeFull: Funnily enough, the under-the-hood representation is RLE-ish.
17:30:19 <fizzie> ^show tmp
17:30:19 <fungot> ,[.,]+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 <password2> If i'm bored enough , it would make an interesting easter egg
17:30:31 <fizzie> (Away for now.)
17:31:50 <quintopia> easter egg for what
17:32:03 <password2> :}
17:32:05 <b_jonas> did you figure out anything about that brainfuck-dowhile language btw?
17:32:14 <password2> a td
17:32:55 <quintopia> i should eat i've been laying here for two hours being hungry
17:33:42 <password2> heh , i'm waiting for mince to defrost so i can start making stirfry
17:33:45 <ais523> b_jonas: I created a language like that
17:33:48 <ais523> not sure if it's on the wiki
17:34:07 <ais523> password2: huh, I didn't think of combining those two foods, but it's kind-of obvious in retrospect
17:34:24 <password2> heh
17:34:30 -!- mroman has quit (Ping timeout: 252 seconds).
17:34:36 <password2> students tends to summon weird combinations
17:34:38 -!- mroman has joined.
17:35:02 <password2> they'll eat bread dipped in anything less runny than bread
17:35:45 <b_jonas> 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 <b_jonas> ais523: int-e asked yesterday whether it's turing complete, to which I handwaved a proof that it is.
17:36:32 <b_jonas> int-e might have a code generator by today or something.
17:36:39 <ais523> b_jonas: I designed that ages ago
17:36:49 <ais523> when I was learning Python live on #esoteric
17:36:54 <b_jonas> I see
17:36:54 <ais523> by entering it into codebots
17:37:03 <ais523> fun fact: I originally learned to write Python with no newlines
17:37:09 <quintopia> 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 <quintopia> ais523: did you learn it?
17:37:36 <ais523> which is basically unreadable because you do exec "first line of loop:\n inside of loop", etc.
17:37:39 <ais523> quintopia: the basics
17:37:52 <ais523> and yeah, I'd just compile from either boolfuck, or 8-bit non-wrapping BF
17:38:00 <quintopia> ais523: so none of the functional programming/object-oriented aspects?
17:38:12 <ais523> quintopia: I learned those later, not live in #esoteric
17:38:14 <password2> i assume in BF the instructions and memory is not the same space?
17:38:19 <ais523> although it doesn't really have any functional programming aspects
17:38:23 <ais523> apart from functions being barely first-class
17:38:37 <ais523> like, I think they were upgraded from economy class rather than buying the more expensive ticket
17:38:39 <ais523> password2: indeed
17:38:45 <password2> ah
17:38:46 <FreeFull> fizzie: bf has a lot of repeated symbols, so rle is perfect
17:38:46 <b_jonas> 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 <ais523> completely seperate
17:38:54 <ais523> this is usually (but not always) the case in esolangs
17:38:54 <quintopia> ais523: well yeah, but you can treat it functionally by having functions that take and return functions
17:39:03 <FreeFull> And it's faster to add 30 at once than to add 1 30 times
17:39:12 <b_jonas> 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 <ais523> 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 <ais523> b_jonas: we decided it was TC last time this came up, too
17:39:29 <ais523> but I can't remember why
17:39:45 <ais523> and yeah, it's obviously impossible to write a dofuck program which sometimes produces output and sometimes doesn't
17:39:57 <ais523> so you can't write cat, for instance, if you want it to work correctly on null input
17:39:58 <b_jonas> it's called dofuck? we didn't know it had a name
17:40:11 <ais523> that's what I called it, back then
17:40:15 <ais523> in camelcase, DoFuck
17:40:15 <b_jonas> great
17:40:23 <ais523> but it's such an obvious idea it's probably been invented more than twice
17:40:36 <ais523> DoFuck's easier to impl than BF, btw
17:40:49 <ais523> because you only have to be able to move the IP backwards, not forwards
17:40:54 <b_jonas> yeah
17:41:00 <ais523> err, by more than one instruction at a time
17:41:23 <ais523> 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 <ais523> (the first version looks something like SMITH, the second version arguably describes Underload)
17:42:17 <b_jonas> if I have to choose, I prefer bf
17:42:30 <ais523> you don't have to choose, normally
17:42:31 <b_jonas> over dofuck that is
17:42:40 <FreeFull> How about a language where values are stored in the IP?
17:42:41 <quintopia> password2: if you like languages with the instructions and data mixed , ire  recommend Aubergunine (hi oboily)
17:43:00 <quintopia> stupid lag dropping my backspaces
17:43:09 <quintopia> that's Aubergine
17:43:10 <ais523> FreeFull: that's almost equivalent to just storing them in a register
17:43:14 <ais523> possibly completely equivalent
17:43:20 <ais523> quintopia: your backspaces echoed literally
17:43:23 <ais523> which is quite impressive
17:43:33 <FreeFull> ais523: Except it jumps where you are in code
17:43:40 <password2> quintopia, by no means
17:43:47 <ais523> FreeFull: you mean storing them in the instruction?
17:43:48 <password2> its get confuzing
17:43:57 <ais523> my first, still unpublished, esolang worked like that
17:44:05 <FreeFull> ais523: No, the instruction pointer itself
17:44:15 <password2> and my client doesn't even understand the characters of what you said
17:44:21 <ais523> FreeFull: you mean the memory address that holds the location of the instruction pointer?
17:44:22 <b_jonas> doesn't arm-32 sort of work like that?
17:44:22 <FreeFull> Although I guess that wouldn't be useful unless you had instruction memory aliasing
17:44:44 <quintopia> 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 <b_jonas> but really, I don't understand what FreeFull wants to say
17:44:59 <FreeFull> 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 <FreeFull> So basically storing data in a jump
17:45:10 <ais523> FreeFull: that's just a computed jump
17:45:32 <b_jonas> FreeFull: oh, so you just mean memory-mapping the instruction pointer?
17:45:33 <ais523> but certainly, the instruction pointer /stack/ is a very common way to store data in esolangs
17:45:40 <FreeFull> With aliasing for the instruction memory, you could use it to pass a value to the code
17:45:53 <ais523> 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 <FreeFull> What about two queues?
17:46:50 <ais523> if you're having trouble proving a language TC, using the call stack as one is often a wise idea
17:46:51 <quintopia> i suppose it miiiiiiiiiiight be possible to write a Aubergine program that overwrites itself with a's
17:46:52 <ais523> FreeFull: even one queue is often (but not always) enough
17:46:56 <b_jonas> FreeFull: one queue is enough
17:47:03 <ais523> see http://esolangs.org/wiki/DownRight, for instance
17:47:27 <ais523> 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 <ais523> (obviously both are trivial if you're trying, e.g. you could have two stacks but no commands that manipulate them)
17:49:13 <b_jonas> 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 <b_jonas> hi, int-e
17:49:21 <quintopia> 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 <ais523> b_jonas: now you reminded me of delay line memory
17:50:02 <ais523> 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 <b_jonas> 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 <ais523> 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 <b_jonas> ais523: yes
17:51:15 <b_jonas> it's crazy
17:51:23 <b_jonas> I'm too young for these
17:52:27 <boily> back from lunch, and I didn't eat aubergines. hi o quintopia!
17:52:34 <olsner> did you also know that PAL decoders involve delay lines in quartz crystals?
17:52:50 <password2> i have seen one of those delay memorys on hackaday
17:52:53 <password2> very awesome
17:52:56 <b_jonas> olsner: I didn't know that
17:53:10 <password2> sound and piezo works as makeshift version
17:53:18 <olsner> (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 <b_jonas> wow
17:53:27 <b_jonas> crazy
17:53:57 <olsner> and then the outgoing signal (the last scanline) is compared to the current scanline to figure out the colors
17:55:58 <b_jonas> I'm not an EE or a hardware guy, I don't really understand how classical television works in general.
17:56:06 <olsner> me neither
17:56:24 <ais523> I am an EE, so I have more of an idea
17:56:32 <b_jonas> I treat it as a black box, so to speak
17:56:56 <boily> ais523: hi there, fellow engineer :D
17:57:20 <b_jonas> and I don't use analog video signals these days at all if I can avoid them
17:59:44 <password2> oo a EE
17:59:54 <password2> 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 <Slereah_> Maaaan
18:04:21 <Slereah_> i tried changing my registers to optimize some stuff
18:04:32 <Slereah_> But then "Gotta use ax for that!"
18:04:32 <Slereah_> Dang
18:04:36 <Slereah_> ax you are a monster
18:04:43 <Slereah_> Your thirst for power knows no end
18:05:40 <password2> that sounds dangerous "i tried changing my registers to optimize some stuff"
18:05:40 <password2> :p
18:06:10 <Slereah_> Well i'm doing some basic graphics with x86
18:06:23 <password2> ok
18:06:24 <Slereah_> And i'm like "man, I'm tired of having to switch registers around"
18:06:34 <Slereah_> So I tried to do another order with less saving involved
18:06:35 <Slereah_> But no
18:07:03 <password2> lol i read that as resistors , instead of registers
18:07:44 <boily> password2: just about the same thing. make a mistake and *FOOM* there goes the magic smoke.
18:07:52 <Slereah_> heh
18:07:54 <password2> hehe
18:08:05 <Slereah_> Though I did learn about the bswap trick
18:08:07 <Slereah_> It is quite neat
18:08:17 <Slereah_> Less shitty than popping and stacking
18:08:28 <boily> ~duck bwsap
18:08:28 <metasepia> --- No relevant information
18:08:31 <boily> ~duck bswap
18:08:31 <metasepia> --- No relevant information
18:08:39 * boily mapoles the Duck
18:08:56 <Slereah_> bswap is to swap the 16 bits in a 32 bits registers
18:09:10 <olsner> I thought bswap reversed all the bytes in a register
18:09:15 <boily> Slereah_: oh. shiny!
18:09:31 <Slereah_> Like [abcd....][xyz...] -> [xyz...][abcd...]
18:09:55 <fizzie> x86 bswap does reverse the order of all 4 or 8 bytes.
18:10:04 <fizzie> It doesn't swap the two 16-bit halves.
18:10:09 <Slereah_> Doesn't it?
18:10:10 <Slereah_> Hm
18:10:14 <Slereah_> Misread it I guess
18:10:29 <olsner> a rotate by 16 bits should work though
18:10:36 <password2> meh , am in a sound war with a firstyear
18:10:57 <Slereah_> "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 <Slereah_> Ah yes
18:11:44 <Slereah_> http://www.c-jump.com/CIS77/asm_images/bswap_eax.png
18:11:47 <Slereah_> So close and yet so far
18:12:26 <Slereah_> Let's go with a ROL
18:12:31 <elliott__> that gives you abcd -> dcba, you just need abcd -> badc to turn that into abcd -> cdab
18:12:31 <password2> heh
18:12:32 <FireFly> Is that a dedicated instruction? bswap, I mean
18:12:46 <elliott__> I don't know whether there's an instruction for that though
18:12:56 <fizzie> FireFly: It is, though only since the 486.
18:13:31 <Slereah_> Well a rotation will work
18:13:49 <Slereah_> You get more mileage out of 32 bit registers that way
18:15:16 <fizzie> 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 <fizzie> Since the byte order reversal doesn't matter.
18:16:20 <Slereah_> Hm
18:16:23 <Slereah_> True
18:16:30 <Slereah_> Let's go back with bswap then
18:16:57 <Slereah_> Thanks
18:17:56 <Slereah_> Plus unlike pops, you can disregard the order
18:20:24 <fizzie> 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 <fizzie> Or, well. I can't really deduce whether BSWAP also needs an operand-size override.
18:22:10 <fizzie> "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 <olsner> maybe it means intel and amd do it differently
18:28:06 <fizzie> 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 <Slereah_> Hm, my gay squares stopped changing color
18:31:42 <Slereah_> I guess I changed the value of ah by mistake
18:33:07 <boily> fungot: do you change ah, eh?
18:33:08 <fungot> boily: what does gnu stand for? yeah reading, wiki, so it doesn't need to
18:33:34 <FireFly> fungot: I don't think that's on the Wiki™
18:33:34 <fungot> FireFly: ' right'
18:33:56 <Slereah_> Oh wait, stosb inputs al, not ah
18:34:00 <Slereah_> dang
18:34:14 <fizzie> fungot: GNU's Noodly Unix.
18:34:15 <fungot> fizzie: oh ok, what file format should be scheme :) somebody'd probably implement it
18:35:00 <FireFly> I'm fairly sure somebody's already implemented scheme
18:36:29 <olsner> fungot: did you forget? they already did implement scheme
18:36:29 <fungot> olsner: darn this tab completion. i defined the scheme callback with a c world.
18:37:09 <Slereah_> Woo, my squares are gay again
18:38:10 <Slereah_> But the screen clearing still fucks up
18:39:32 <boily> fungot: you sound like me, blasphemating against the Evil Tab Completion.
18:39:32 <fungot> boily: ( define ( safe-apply func. args) ( for-each display args) ( car ' ' a" to *a*
18:39:55 <olsner> 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 <password2> Slereah_, were they straight?
18:42:03 <Slereah_> password2 : The program displays squares, and then increment the color
18:42:11 <Slereah_> Making them going through rainbow cycles
18:42:26 <password2> ah , but you said they are gay
18:42:37 <Slereah_> Yes
18:42:44 <password2> :D
18:42:47 <Slereah_> As gay as a three dollar bill, if bills were square
18:43:19 <password2> heh
18:43:37 <Slereah_> http://pastebin.com/Yx1V0kK6
18:43:54 <ais523> olsner: block it
18:43:55 <Slereah_> Does someone have any idea why the screen clearing hides the upper part of the screen
18:44:04 <olsner> ais523: yep, done
18:44:09 <Slereah_> Every cycle, I delete the screen by blackening it
18:44:18 <Slereah_> And redoing the squares in the next cycle
18:44:34 <Slereah_> But for some reason, the first 15 or so rows are totally black no matter what
18:44:35 <password2> oooh , i cant remember when last i used assembly
18:45:18 <ais523> third-party scripts you can't verify are a major malware source
18:46:12 <password2> i found a easyway to make any linux fanboy install malware
18:47:06 <Slereah_> i tried moving the screen clearing to various places
18:47:22 <Slereah_> Before the drawing, after the drawing, after checking for the next screen display
18:47:26 <Slereah_> But nothing works
18:48:02 <olsner> you probably need to vsync
18:48:08 <Slereah_> I did
18:48:21 <Slereah_> At label vsync0 and vsync1
18:49:29 <olsner> 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 <Slereah_> Let's see
18:50:30 -!- atriq has quit (Quit: Page closed).
18:51:31 <boily> hm. the guys over at /r/vxjunkies don't have much information pertaining to vsync problems.
18:51:37 <boily> Taneb: are you back from your lecture?
18:52:59 <Slereah_> Well
18:53:06 <Slereah_> I guess a test would be to remove the vsyncs and see what changes
18:53:19 <Slereah_> Or add a mov dx whatever
18:53:21 <Slereah_> Or both!
18:54:12 <Slereah_> Heh
18:54:22 <Slereah_> Removing the vsync actually works slightly better!
18:54:34 <Slereah_> I can see all squares, but they all kinda flicker
18:54:48 <Slereah_> Maybe it's a speed problem?
18:55:20 <olsner> or maybe the emulator isn't emulating vsync at all
18:58:26 -!- ggherdov_ has quit (Ping timeout: 264 seconds).
18:59:25 <Slereah_> Possibly
18:59:40 <Slereah_> .com files don't play on my computer unfortunately
19:00:07 <Slereah_> 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 <Slereah_> What's a good place to ask assembly questions?
19:00:57 <Slereah_> (Outside of "The 1970's")
19:03:33 <olsner> the 1980's might also be ok
19:03:59 <Slereah_> I don't have any hairband
19:06:45 <olsner> 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 <olsner> or you just ask fizzie
19:07:21 <boily> olsner: is there a #fizzie chännel?
19:07:30 <olsner> boily: I'm guessing not
19:07:58 <olsner> boily: also, pretty sure it's spelled channel
19:09:31 <boily> beuh...
19:10:02 <int-e> böilü
19:10:25 <boily> ïn̈ẗ-ë
19:10:34 <int-e> I'm slightly disappointed, is there really no lower case version of Ÿ?
19:10:46 <olsner> ÿ?
19:10:47 <boily> ÿ?
19:10:49 <ais523> olsner: boily has been umlauting random letters for a while
19:11:07 <ais523> and isn't ÿ the last character in Latin-1?
19:11:14 <int-e> thanks
19:11:39 <int-e> ais523: oh. indeed.
19:11:56 <ais523> that gives it some sort of distinction
19:12:09 <olsner> the ultimate letter
19:12:27 <ais523> `unidecode ÿ
19:12:34 <ais523> oh right
19:12:45 * boily unicodely mapoles Gregor`
19:12:56 <olsner> no hackego? *gasp*
19:13:30 <int-e> `help
19:13:32 <ais523> !c printf("%x", 'ÿ')
19:13:35 <EgoBot> c3bf
19:13:40 <ais523> huh, it's Firefox that causes my compose key to stop working
19:14:01 <int-e> > fromEnum 'ÿ'
19:14:02 <lambdabot> 255
19:14:06 -!- evalj has joined.
19:14:07 <ais523> huh, EgoBot interpreted my UTF-8 as Latin-1
19:14:19 <ais523> but you can tell it's 255 anyway if you have UTF-8 encoding memorised
19:14:25 <ais523> I don't, but I know about the C2 and C3 ranges
19:15:54 <olsner> oh, so that became a multicharacter character literal
19:16:58 -!- ggherdov_ has joined.
19:20:02 <ais523> yeah, and those are impl-defined
19:20:11 <ais523> but I believe gcc's handing is to concatenate the bytes
19:20:43 <ais523> which is usually the right handling anyway
19:21:06 <ais523> !c printf("%x", *u8"ÿ");
19:21:08 <EgoBot> Does not compile.
19:21:21 <ais523> even if I got the syntax right, that's C11
19:21:31 <ais523> !c printf("%ld", __STDC_VERSION__);
19:21:34 <EgoBot> 199901
19:21:39 <ais523> and that compiler's C99
19:21:43 <olsner> 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 <olsner> what does *u8"ÿ" mean?
19:23:05 <ais523> I think u8"string" means "this string is UTF-8", in some sense
19:23:07 <ais523> something like that
19:23:09 <ais523> let me check the docs
19:23:17 <ais523> and the * is just a pointer dereference as normal
19:23:35 <olsner> which on a utf8 string just gives the first byte?
19:23:39 <ais523> yep
19:24:31 <ais523> and I remembered right, it is u8"string" for a UTF-8 literal
19:24:35 <ais523> now I'm looking up what those do
19:25:13 <b_jonas> ] 3 u:7 u: 'ÿ 0A[é'
19:25:13 <evalj> b_jonas: 255 32 48 65 91 233
19:25:26 <ais523> 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 <ais523> whereas normally they'd be converted to the execution narrow or wide character set
19:25:49 <olsner> aah, that seems actually useful
19:25:49 <b_jonas> ais523: ^ that can show the unicode values
19:25:57 <b_jonas> ] 3 u:7 u: 'őű'
19:25:58 <evalj> b_jonas: 337 369
19:26:02 <b_jonas> takes utf8
19:26:03 <ais523> does J have an explicit map command, or is map too low-level?
19:26:20 <b_jonas> ais523: sort of yes
19:26:21 <ais523> wait, is that second letter a ü or a ű?
19:26:24 <ais523> they look pretty similar in this font
19:26:28 <ais523> ű I guess
19:26:37 <b_jonas> yes, ű (with double acute)
19:26:48 <ais523> huh, is double acute what it's called?
19:26:55 <ais523> I always thought of it as an acute umlaut
19:26:56 <b_jonas> double acute accent
19:27:05 <kmc> `unidecode ő
19:27:06 <ais523> it's an umlaut made of acutes
19:27:11 <kmc> HackEgo...
19:27:17 <ais523> but I guess you don't write ȯ for the un-umlauted, un-acute version
19:27:21 <int-e> a cute accent, hmm.
19:27:23 <kmc> fungot: what did you do with HackEgo
19:27:23 <fungot> kmc: riastradh believes beginners have to know
19:27:47 <olsner> fungot: I want to know
19:27:47 <fungot> olsner: are you looking for an angry fix!
19:27:53 <kmc> was Riastradh in here at some point?
19:27:55 <kmc> oh, #scheme
19:28:50 <kmc> @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 <lambdabot> Done.
19:29:40 -!- shachaf_ has joined.
19:29:45 <kmc> 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 <shachaf> higan
19:30:38 <shachaf> hi fungot
19:30:38 <fungot> shachaf: or is there a way to make scheme code readable to people who are using scheme in your head
19:30:42 <kmc> fungot: i'm looking for an angry fix!
19:30:42 <fungot> kmc: i would, but no cryptanalysis stuff. he does not know about them
19:30:54 <kmc> scheme? in *my* head? it's more likely than you think
19:31:08 <kmc> fungot: there is a crack in everything, that's how the scheme gets in
19:31:08 <fungot> kmc: but i mean for " touching"
19:31:15 <olsner> fungot: you generally don't let other people use scheme in your head ... at least not in public
19:31:16 <fungot> 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 <kmc> fungot: good touch or bad touch
19:31:17 <fungot> 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 <olsner> I wonder if my laundry is done so I can go to bed
19:32:53 -!- EgoBot has joined.
19:33:08 <kmc> EgoBot: are you HackEgo?
19:33:19 <kmc> `relcome kmc
19:34:10 <quintopia> 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 <quintopia> WITH MY GLASSES ON
19:35:00 <shachaf> fungot: are you HackEgo?
19:35:00 <fungot> shachaf: how's life? :o
19:35:09 <shachaf> fungot: :o
19:35:10 <fungot> shachaf: i think i've almost maybe got it.
19:35:30 <shachaf> fungot: got what
19:35:30 <fungot> shachaf: but they too were small, something like hash-tables consisting of variable-name/ value? i'm not sure it will!
19:36:50 <boily> 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 <fungot> ais523: have a look when i get around 30 spam per day on the bike
19:38:01 <kmc> i too confuse fungot
19:38:01 <fungot> kmc: last year, their servers were cracked.
19:38:05 <kmc> fungot: o no
19:38:05 <fungot> 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 <boily> I am a Master Confungotter!
19:38:40 <fungot> 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 <shachaf> ais523 uses fungot to confuse boily
19:39:56 <fungot> shachaf: we have one of each. :) it's so absurd it's hilarious. my favorite topping is pepperoni. interesting...
19:40:09 <kmc> cofungot
19:40:09 <fungot> kmc: way to go if i were obfuscating it i wouldn't have, but it
19:40:20 <shachaf> fungot: but it
19:40:21 <fungot> 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 <shachaf> fungot: so many people
19:41:18 <fungot> 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 <FireFly> fungot: got fun?
20:01:20 <fungot> 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 <boily> I won't be healed as easily as you think you are healing, Mr. FireFly! muah ah ah ah ah!
20:06:34 <boily> (said in a bad supervillain voice)
20:06:44 <FireFly> Argh
20:06:59 <boily> oh, btw, I surmised you're of the “Mr.” kind.
20:07:17 <FireFly> That is indeed the case
20:12:05 -!- ais523 has joined.
20:24:30 <Slereah_> I believe I have finally mastered Assembly https://dl.dropboxusercontent.com/u/19940612/Graphic8.COM
20:25:02 <boily> Slereah_: if I happen to want to potentially execute that on my machine, what should I do?
20:25:52 <fizzie> dosbox, mount, type the name?
20:26:30 <boily> fizzie: that's what I did, and I now understand the “gay squares”.
20:26:35 <Slereah_> Either you can just open it directly (esc to quit) or use dosbox
20:26:55 <kmc> you can just ron "dosbox graphic8.com" can't you
20:26:58 <kmc> run*
20:27:05 <kmc> fungot: fongut
20:27:05 <fungot> kmc: my answer: probably :p probably good for prototype. chicken will probably be using is ( fnord
20:27:21 <fizzie> kmc: Huh, that's convenient.
20:27:21 <FireFly> see, you can probably run that
20:28:03 <boily> I probably ran that.
20:28:25 <shachaf> if i run an arbitrary .com file with dosbox can it do things to my computer outside the dosbox
20:29:04 <kmc> shachaf: i spent a little while looking for such exploits, but didn't find any
20:29:17 <fizzie> I don't think dosbox is really focusing on sandbox security, however.
20:29:22 <kmc> it is easy to segfault dosbox with an invalid x86 instruction but it's just a NULL dereference
20:29:44 <fizzie> kmc: How about a TSR that manages to fake in some commands to the dosbox shell, which has mount &c.?
20:29:55 <shachaf> you can run mount /some/directory somedrive: in dosbox, can't you
20:30:00 <shachaf> can a .com program not do that
20:30:08 <kmc> that could work; I don't know if mount is restricted
20:30:13 <ais523> shachaf: it could probably insert the keystrokes for that into the keyboard buffer
20:30:18 <fizzie> 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 <fizzie> Interestingly, the "mount" is not a shell builtin, but a separate MOUNT.COM on the virtual Z: drive.
20:38:33 <fizzie> You can copy it elsewhere, and run, and it still works.
20:38:58 <fizzie> (The contents are the 20 bytes ndisasm'd at http://sprunge.us/aiAF)
20:39:39 <fizzie> So presumably you might not even need to play tricks with the input buffer, just use the same int 21h interfaces.
20:41:25 <fizzie> (All the other commands in Z: are also 20-byte files that only differ in their last bytes.)
20:43:24 <fizzie> 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 <kmc> did you look that up in RBIL
20:44:31 <fizzie> Yes, of course.
20:45:04 -!- Frooxius has quit (Ping timeout: 250 seconds).
20:45:23 <kmc> hooray for RBIL
20:46:12 <ais523> 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 <Slereah_> Damn MS DOS is way too fast for an animation!
20:54:00 <int-e> 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 <Slereah_> If I try to move a square to simulate MOVEMENT I see three at once!
20:54:15 <fizzie> int-e: <fizzie> (All the other commands in Z: are also 20-byte files that only differ in their last bytes.)
20:54:21 <Slereah_> Maybe I should use the timer instead
20:54:24 <ais523> Slereah_: move it more slowly then
20:54:33 <Slereah_> But how!
20:54:37 <int-e> fizzie: sorry.
20:54:39 <ais523> also, the timer in DOS runs at 19.2Hz
20:54:42 <ais523> which is normally too slow to be useful
20:54:45 <fizzie> 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 <ais523> although I think you can customize it to be faster
20:54:57 <int-e> fizzie: exactly
20:55:04 <Slereah_> yeah, but I need the screen to refresh at like
20:55:09 <Slereah_> 24 per second or something
20:55:11 <fizzie> (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 <Slereah_> That should be enough no?
20:55:35 <Slereah_> Oh wait, I guess that's 24 hertz
20:55:35 <Slereah_> Hm
20:55:46 <Slereah_> I guess I can wait for a couple of vsyncs
20:56:06 <int-e> fizzie: though you probably want FE /7
20:56:13 <fizzie> int-e: Yes, a typo/thinko. I think there's actually just two pointers following the FE /7.
20:56:26 <Slereah_> Let's wait for 16 vsyncs
20:58:07 <fizzie> Oh, the code's right there in misc/programs.cpp: http://sprunge.us/SCHM
20:59:36 <fizzie> And the final byte is an index into a table.
21:00:38 <fizzie> http://sprunge.us/iWHa love that "//MEM LEAK" comment.
21:04:56 <Slereah_> Apparently two vsyncs are enough
21:06:38 <fizzie> 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 <int-e> in 320x200 mode, vsyncs should have a frequency of 70 Hz.
21:10:18 <boily> fungot: do you notwithstand funkies?
21:10:18 <fungot> boily: great. should i care about" level.
21:17:04 <Slereah_> int-e : So 2 in a row is about 30 images per second
21:17:06 <Slereah_> which is fine
21:17:20 -!- MindlessDrone has quit (Quit: MindlessDrone).
21:21:06 <Slereah_> Hm
21:22:10 <Slereah_> Once I do two vsyncs, I have less problems with the screen clearing
21:22:17 <Slereah_> But the upper part of the screen still flickers
21:23:05 <Slereah_> The first 30 pixel rows or so
21:23:24 <int-e> it takes a while to clear the screen and draw the squares
21:24:26 <Slereah_> Yes, but the squares stay on the screen for a while as well
21:24:40 <Slereah_> Hm
21:24:44 <Slereah_> what to do
21:25:05 <Slereah_> I could do a function that removes the shapes instead
21:26:36 <Slereah_> I don't suppose I can do something much faster to clear the screen than rep stosd
21:29:15 <int-e> 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 <int-e> https://en.wikipedia.org/wiki/Mode_X links to http://www.gameprogrammer.com/3-tweak.html which looks useful
21:31:41 <Slereah_> I think the best solution is to implement a function that deletes the shapes and move them before reprinting them
21:32:09 <int-e> Slereah_: honestly I'd probably do the render to screen buffer, then blit thing.
21:32:19 <int-e> err. to memory buffer
21:32:43 <Slereah_> blit?
21:32:46 <int-e> copy
21:33:14 <int-e> "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 <Slereah_> Soon, I will be able to do a pong!
21:45:16 <fizzie> 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 <Slereah_> Thanks
21:46:48 <fizzie> 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 <fizzie> Er, mov, not sto.
22:03:59 <FreeFull> What you can do is chained mode 256x256 with 256 colours
22:04:08 <FreeFull> Which is convienient for some stuff
22:05:01 <Slereah_> 256x256 would be great
22:05:21 <Slereah_> Instead of doing sums and substractions I can just check for overflows
22:08:43 -!- oerjan has joined.
22:10:39 <FireFly> hm, this seems fun
22:10:54 <oerjan> 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 <oerjan> *than
22:11:06 <FireFly> Ouch
22:11:46 <ais523> oerjan: Norway has wildfires in February?
22:11:54 <ais523> it doesn't seem like an obvious month for them
22:11:58 <oerjan> ais523: and january
22:12:13 <oerjan> ais523: it's very unprecedented.
22:13:07 <oerjan> basically no precipitation since jan 11
22:13:21 <oerjan> and plenty of strong wind.
22:13:25 <ais523> there's less than usual in the UK, too, in that it hasn't been /constantly/ raining
22:13:35 <ais523> although there was a thunderhailstorm at one point
22:13:43 <ais523> which is rare in January, those normally happen in the summer
22:14:15 <oerjan> 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 <oerjan> let's start a conspiracy that putin made this to get good weather in russia for the olympics.
22:15:56 <kmc> meanwhile california is in the middles of our worst ever drought
22:16:22 <oerjan> kmc: oh i thought the us was buried in snow. i guess not all of it.
22:16:27 <kmc> indeed
22:17:57 <oerjan> i understand much of europe is having bad weather of various kinds
22:18:26 <oerjan> or at least strange
22:19:04 <ais523> oerjan: all of the northern hemisphere is, I think
22:19:18 <ais523> because the polar vortex that's meant to be over the arctic went and visited the US instead
22:19:51 <oerjan> ais523: well that's the us, but does that explain the high pressure zone over russia too?
22:20:07 <ais523> possibly
22:20:18 <ais523> I'm not that knowledgeable about how weather works
22:20:24 <ais523> (but then, neither is anyone else)
22:20:50 <oerjan> i understand they can connect the polar vortex moving to global warming, although not in a way that convinces republicans.
22:21:23 <kmc> "It is difficult to get a man to understand something, when his salary depends upon his not understanding it"
22:22:11 <oerjan> kmc: is that a quote
22:22:16 <kmc> yes
22:22:20 <kmc> hence the marks of quotation
22:22:27 <shachaf> "this is not a quote"
22:22:34 <kmc> ceci n'est etc
22:22:52 <oerjan> kmc: what we need to do is convince them that it will kill their children.
22:23:36 <kmc> good luck
22:24:00 <oerjan> well that's the only thing americans are more furious about than money, isn't it
22:24:55 <kmc> depends on the cause
22:25:27 <kmc> 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 <FreeFull> I sense sarcasm
22:28:38 <oerjan> sarcasm and insanity are the two only ways for americans to (temporarily) survive
22:30:39 <oerjan> FreeFull: so how's the weather in poland
22:32:10 <FreeFull> I'm not in Poland, I was just born there
22:32:16 <oerjan> wat
22:32:18 <FreeFull> I'm in England, and the weather sucks. Lots of flooding
22:32:45 <oerjan> I HAVE BEEN DECEIVED
22:34:56 <oerjan> here it's nice, warm (night temperature record yesterday) and dry. got a match?
22:39:29 <kmc> FreeFull: can you ship some of your water over to california
22:40:35 <FreeFull> kmc: Don't have the means of doing that, sorry
22:40:38 <oerjan> also here
22:41:43 <FreeFull> I'd happily swap water for snow
22:41:55 <FreeFull> Although I guess others wouldn't appreciate it as much
22:44:20 <oerjan> <fizzie> 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 <oerjan> <ais523> 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 <ais523> oerjan: yep
23:02:50 <ais523> and with only finitely many tokens
23:02:58 <ais523> perhaps you could do something based on probabilities, though
23:03:16 <oerjan> well there would be a chance of failure
23:03:53 <oerjan> it's like, you have just too little to implement fractran
23:03:59 <oerjan> (or Bag)
23:04:00 <ais523> yeah, but you can just reset the program if you detect a failure
23:04:17 <ais523> it'd work fine if you could detect failure reliably
23:04:31 <oerjan> i don't think it can be detected...
23:05:13 <ais523> 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 <oerjan> oh hm
23:05:41 <ais523> then you can compare X to Y by repeatedly removing items in the order C, A, B, C, A, B…
23:05:48 <ais523> and restarting the entire program if they come out in the wrong order
23:05:54 <ais523> it's unclear how you'd set that situation up to start with, though
23:05:57 <Slereah_> Woo
23:06:05 <Slereah_> I made a rectangle that moves if you press up or down
23:06:28 <Slereah_> TABLE TENNIS ON A COMPUTER
23:06:37 <Slereah_> You'll see it will be huge
23:06:53 <Slereah_> I call it electric entertainment
23:07:01 <ais523> 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 <oerjan> 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 <ais523> although attaching the net shouldn't be too difficult
23:07:21 <Slereah_> You'll see ais523
23:07:27 <ais523> oerjan: right, that's the computational class I was aiming for anyway
23:07:27 <oerjan> although it might not be able to restart a computation.
23:07:32 <Slereah_> It will be even bigger than Ball in a Cup
23:07:37 <oerjan> if a failure is detected.
23:07:44 <Slereah_> http://www.youtube.com/watch?v=vx4IEmZNegg
23:09:14 <ais523> oerjan: just keep extracting tokens until there aren't any more
23:09:21 <ais523> then jump back to the start of the program
23:09:24 <ais523> restarting is trivial
23:09:35 <oerjan> hm
23:10:07 <oerjan> ais523: ok as long as input is encoded in the program, which is enough for tc of course
23:10:26 <ais523> yep
23:22:16 <ais523> anyway, it's not obviously TC
23:22:22 <ais523> and not obviously sub-TC
23:22:29 <ais523> which is always a property I like in esolangs
23:24:24 <ais523> now all we need is an interesting FSM to hook it up to
23:24:34 <ais523> preferably a pretty powerful one
23:24:42 <ais523> and we have a new interesting esolang
23:32:58 <ais523> actually, there's a neat equivalent way to write this that's more efficient
23:33:16 <ais523> instead of removing entirely at random
23:33:27 <ais523> commands can give a set of values they want to remove
23:33:41 <ais523> if any are in the random bag, one is removed at random, otherwise the program enters an infinite loop
23:37:39 <oerjan> 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 <oerjan> ais523: so you are accepting that a program might loop infinitely instead of ever halting even if it could?
23:48:42 <ais523> oerjan: yes, but with zero probability
23:48:52 <oerjan> hm
23:49:01 <ais523> 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 <oerjan> oh i think it may be https://en.wikipedia.org/wiki/Dickson%27s_lemma
23:56:38 <oerjan> (that's not what i remember, but it may be the relevant special case)
23:57:45 <ais523> this reminds me of subturing oracles
23:58:09 <ais523> or well, subturing language + oracle that might bring it up to some higher computational class
23:59:17 <Taneb> Couldn't Fancy L be called a subturing oracle
←2014-02-03 2014-02-04 2014-02-05→ ↑2014 ↑all