←2012-10-17 2012-10-18 2012-10-19→ ↑2012 ↑all
00:11:46 <kmc> shachaf: people elsewhere are talking about the best bagels in san francisco
00:12:31 <kmc> apparently http://www.deliboardsf.com/ has secret bagels
00:12:40 <kmc> which are boiled in new york, baked in SF, and not listed on the menu
00:13:00 <shachaf> On the other hand there's http://idlewords.com/2007/04/the_alameda-weehawken_burrito_tunnel.htm
00:14:08 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:15:33 <Sgeo> Someone asked a question in #clojure about whether the stdlib includes a feature
00:15:52 <Sgeo> As far as we can tell, it's both a really bad idea and impossible. But my language would make it possible.
00:16:00 <Sgeo> That sort of makes me take pause.
00:17:33 <Sgeo> Someone linked to http://www.ioccc.org/2012/tromp/hint.html
00:20:37 -!- sirdancealot7 has quit (Ping timeout: 246 seconds).
00:24:39 <Sgeo> Hmm, I think the scoping I have in mind is technically dynamic but with a function to essentially temporarily clear currently bound stuff
00:24:48 <ion> http://store.valvesoftware.com/product.php?i=CP201
00:26:01 <kmc> ++
00:26:24 <Sgeo> Is something like this too ugly?
00:26:28 <kmc> space gotta go to space
00:26:48 -!- sirdancealot7 has joined.
00:26:49 <Sgeo> (defn foo '[a b c] '(level '(+ a b c)))
00:26:55 <Sgeo> In terms of needing that level there?
00:26:59 <Sgeo> Wait, hmm
00:27:11 <Sgeo> o.O that level is in a very wrong place
00:29:08 <Arc_Koen> is that scheme?
00:29:17 <shachaf> Of course not.
00:29:26 <shachaf> It's Clojure. You don't even need to read it to know that it's Clojure.
00:29:27 <Arc_Koen> oh
00:29:34 <shachaf> The nick is enough.
00:29:43 <Arc_Koen> oh
00:30:13 <Sgeo> Not Clojure
00:30:26 <Sgeo> It's a variation based on Clojure + Tcl
00:30:33 <Sgeo> Unsure how I'm going to deal with lexical scoping
00:31:47 -!- Frooxius has quit (Ping timeout: 240 seconds).
00:32:40 <Sgeo> Is this ugly?
00:32:49 <Sgeo> (deflfn '[a b c] '(+ a b c))
00:32:51 <Arc_Koen> it looks like scheme
00:32:52 <Sgeo> Translates to
00:32:54 <Arc_Koen> how could it be ugly
00:33:08 <Arc_Koen> deflfn is a weird word though
00:33:20 <Sgeo> (def '(level '(fn '[a b c] '(+ a b c))))
00:33:59 <Arc_Koen> also for the ioccc link you provided - that looks like it's Real Fast Nora's Hair Salon 3: Shear Disaster Download
00:34:09 <Sgeo> It occurs to me that defn and anything similar should be providing a name
00:34:18 <Sgeo> (def 'foobar '(level '(fn '[a b c] '(+ a b c))))
00:34:26 <Sgeo> (deflfn 'foobar '[a b c] '(+ a b c))
00:35:49 <Arc_Koen> with LAMBDA as 00, APPLY as 01, ZERO as 10 and ONE MORE THAN as 1
00:38:49 -!- monqy has joined.
00:40:38 <Sgeo> I am slowly turning into Gamzee.
00:40:58 <Sgeo> That reminds me. Arc_Koen, keep reading Homestuck.
00:41:07 <Arc_Koen> yeah hum maybe
00:41:16 <Arc_Koen> I mean I liked the humour
00:41:25 <Arc_Koen> buuuut it was kind of repetitive and slow
00:41:39 <Sgeo> It speeds up
00:53:10 -!- sirdancealot7 has quit (Ping timeout: 246 seconds).
01:02:27 <Arc_Koen> 's a shame the mailing list doesn't exist any longer
01:20:14 <Sgeo> If I don't have true lexical scoping, but do have an easyish way to effectively say "Hey, consider this a separate scope", is that sufficient for a language to be comfortably usable?
01:21:19 <monqy> ???
01:26:20 * Sgeo is suddenly not sure if he's reinventing picolisp or not
01:26:57 <Sgeo> Hmm, I'm... not sure
01:27:20 <monqy> what are you doing and why
01:27:38 <shachaf> monqy: ask not what are you doing and why, but what aren't you doing and why not
01:27:39 <Sgeo> Language based off Clojure and Tcl where conditionally printing looks like
01:27:52 <Sgeo> (if blah '(println "true") '(println "false"))
01:27:58 <Sgeo> For example
01:28:07 <Sgeo> Tcl-esque
01:28:30 <monqy> have fun i guess
01:32:59 <monqy> why wouldn't you have lexical scoping though
01:33:02 <monqy> i bet it's a bad reason
01:33:34 <shachaf> "i bet you're a bad person" - "monqy'"
01:33:46 <monqy> sssh baby steps
01:34:16 <shachaf> monqy: HEY THAT WAS MONQY PRIME
01:34:17 <shachaf> not you
01:34:20 <shachaf> ok?
01:34:40 <monqy> ok
01:35:37 <shachaf> get it?
01:35:39 <shachaf> got it
01:35:40 <shachaf> good
01:50:42 <shachaf> kmc: 00000000-0000-0000-0000-000000000000 is a perfectly valid UUID!
01:50:53 <shachaf> It could've come about as random chance.
01:50:54 <shachaf> Stop reading into things.
01:51:43 <shachaf> kmc: So IOCCC 2012 is done.
01:51:51 <shachaf> When's your contest coming along?
01:53:03 <coppro> shachaf: guaranteed to be chosen at random
01:53:30 <kmc> oh IOCCC 2012 is done?
01:53:39 <kmc> i had a good idea for an entry
01:53:41 <kmc> next year i guess
01:54:17 <shachaf> kmc: http://www.ioccc.org/years.html#2012
01:54:39 <shachaf> 18:51 <ion> https://raw.github.com/gist/3909430/377bfe9b1a62e1c74acac0ec32ca4261c66379cd/%F0%9D%94%93%F0%9D%94%AF%F0%9D%94%A2%F0%9D%94%A9%F0%9D%94%B2%F0%9D%94%A1%F0%9D%94%A2.hs
01:55:10 <shachaf> ion: Why doesn't that export most of the identifiers?
01:56:19 <ion> I forgot.
02:07:47 -!- pikhq has quit (Read error: Connection reset by peer).
02:09:08 -!- pikhq has joined.
02:28:08 -!- jfguest has joined.
02:38:38 -!- jfguest has quit (Quit: leaving).
02:45:39 -!- Arc_Koen has quit (Quit: Arc_Koen).
02:46:59 -!- Max00355 has joined.
02:48:15 <Max00355> Is it possible to write to a file with brainfuck?
02:50:11 -!- pikhq_ has joined.
02:50:16 -!- pikhq has quit (Ping timeout: 244 seconds).
02:53:09 -!- Max00355 has quit (Ping timeout: 260 seconds).
03:02:46 -!- Max00355 has joined.
03:05:31 -!- zzo38 has quit (Remote host closed the connection).
03:19:51 <Sgeo> Max00355, well, you could direct the output of a brainfuck interpreter to a specific file
03:20:06 <Sgeo> Or you could use something like PSOX, although I abandoned it before hammering out the file stuff
03:28:42 <kmc> ion++
03:28:44 <kmc> that is amazing
03:30:42 <kmc> http://i.imgur.com/6QpIO.png
03:31:00 <ion> kmc: https://gist.github.com/3909452
03:33:51 <kmc> nice
03:37:10 <ion> Interesting, the gist title was cut off from the first non-BMP character.
03:43:49 <tswett> Max00355: Brainfuck itself has no particular mechanism for doing so.
03:44:46 <kmc> that's why you should always use brainfuck implementations where the tape has finite size and the array indexing is not bounds-checked
03:44:52 <kmc> then you can write to files
03:45:16 <kmc> now i wanna write a brainfuck JIT spray
03:52:02 <tswett> So, let me blab about NFU.
03:52:18 <tswett> NFU is that set theory where comprehension is allowed for any "stratified" formula.
03:53:10 <tswett> So {x where x = x} is a valid set. It contains everything. {x where {} is a subset of x} contains all sets. {(x,y) where x is a subset of y} is a valid set.
03:53:30 <tswett> {x where x is not in x} is not a valid set, because "x is not in x" is not a stratified formula.
03:54:33 <tswett> Stratified comprehension is the bulk of NFU. It has an axiom, the axiom of choice, that is equivalent to a function with a certain property.
03:55:05 <tswett> Equivalent to the existence of such a function, I mean.
03:55:11 <tswett> It has another axiom, the axiom of counting, which isn't obviously equivalent to the existence of a function at all.
03:58:04 <tswett> If S is a set, let Box(S) = {{x} where x in S}.
03:58:19 <tswett> The axiom of counting states that if S is finite, then S has the same cardinality as Box(S).
04:03:05 <tswett> The "obvious" way to express that as a function is to say that if S is finite, then there is a bijection between S and Box(S). But that sounds really dangerous.
04:11:47 -!- sivoais has quit (Quit: leaving).
04:12:17 -!- sivoais has joined.
04:16:44 -!- FreeFull has quit.
04:49:45 -!- Jafet1 has joined.
04:51:10 -!- Jafet has quit (Ping timeout: 265 seconds).
04:56:04 <kmc> is there pine tar flavored bread in finland
04:58:53 <shachaf> kmc: johnw of #haskell-blah is on the C++ committee, voting on C++14 features.
04:58:57 <shachaf> You're missing the fun.
04:59:10 -!- zzo38 has joined.
05:04:14 <kmc> jesus
05:04:17 <kmc> what's new in C++14
05:04:57 <shachaf> Apparently they were voting on "return { 10 };" syntax today.
05:05:39 <shachaf> Which, if your return type is a class, calls the constructor of the class?
05:11:26 <shachaf> Lots of other things.
05:42:34 -!- impomatic has quit (Quit: http://BASICcomic.com).
05:52:28 -!- FireFly has quit (Excess Flood).
06:00:04 -!- FireFly has joined.
06:51:18 -!- AnotherTest has joined.
06:51:26 -!- AnotherTest has left.
07:04:17 -!- Phantom_Hoover has joined.
07:14:06 -!- Jafet1 has quit (Quit: Leaving.).
07:25:28 -!- epicmonkey has quit (Remote host closed the connection).
08:02:54 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
08:04:50 -!- zzo38 has quit (Remote host closed the connection).
08:10:54 -!- nooga has joined.
08:23:30 -!- epicmonkey has joined.
08:30:04 -!- Jafet has joined.
08:55:55 -!- sirdancealot7 has joined.
09:04:45 -!- epicmonkey has quit (Remote host closed the connection).
09:04:55 -!- epicmonkey has joined.
09:15:47 -!- monqy has quit (Quit: hello).
10:11:49 -!- Phantom_Hoover has joined.
10:21:31 <Max00355> What exactly can brainfuck be used for besides printing out some ASCII characters?
10:23:01 <Phantom_Hoover> inputting ascii characters
10:23:21 <fizzie> Calculating exciting stuff.
10:23:24 <fizzie> ^pow2
10:23:25 <fungot> 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768 65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432 67108864 134217728 268435456 536870912 1073741824 2147483648 42949672 ...
10:23:31 <fizzie> See, that's from brainfuck.
10:23:41 <Jafet> Making benchmarks against your new language
10:24:07 <fizzie> Getting brain-bricked, via the "make a derivative language, wait a few seconds" plan.
10:24:50 <fizzie> ^rainbow Not to forget the prettiest rainbows.
10:24:51 <fungot> Not to forget the prettiest rainbows.
10:26:24 <fizzie> And then there's always the highly vibrant brainfuck adventure game development community. There's Lost Kingdom, and... well, I guess Lost Kingdom.
10:27:41 <Jafet> Can it be modded?
10:28:21 <fizzie> I seem to recall it was mostly automatically generated, so the code isn't perhaps too edit-friendly.
10:28:50 <fizzie> The source is 2189420 bytes long.
10:30:38 <Jafet> I bet most games aren't that big.
10:33:53 -!- ais523 has joined.
10:57:45 -!- ais523_ has joined.
10:57:50 -!- ais523 has quit.
10:59:01 -!- ais523_ has changed nick to ais523.
11:20:00 -!- atriq has joined.
11:38:38 -!- olsner has quit (*.net *.split).
11:43:02 -!- olsner has joined.
12:02:47 -!- boily has joined.
12:09:15 -!- Arc_Koen has joined.
12:09:34 <Arc_Koen> hello
12:09:55 <atriq> Hey
12:10:31 <nortti> moi
12:10:46 <Phantom_Hoover> bonjour mein freundes
12:11:00 -!- pikhq_ has quit (Ping timeout: 265 seconds).
12:11:18 <Arc_Koen> is this international day or something?
12:11:44 <atriq> Da.
12:11:49 <Phantom_Hoover> ad nibelung des moines
12:11:53 <Jafet> Internation indoeuropean day
12:12:08 <Arc_Koen> wow, Chris Pressey's back
12:12:28 <Arc_Koen> and it looks like he wants to make it up for the time he was missing!
12:16:50 <Arc_Koen> "mascarpone"
12:16:59 <Arc_Koen> so that's why someone said "another cheesy language" yesterday
12:17:15 <nortti> netbsd 6.0 released!
12:23:44 <nooga> where
12:24:06 <fizzie> In its natural habitat, one hopes.
12:24:08 <atriq> Back into the wilds of Northern Scotland
12:24:43 <fizzie> atriq: Do you have roaming bands of BSDs in Scotland?
12:25:05 <atriq> fizzie, nah, they're quite solitary
12:25:23 <atriq> I'm too far south to get them here, though
12:31:02 <Phantom_Hoover> northern scotland, or as literally everyone else calls them, the highlands
12:31:39 <fizzie> Is that where the HIGHLANDERS fight?
12:36:57 -!- ais523_ has joined.
12:37:14 -!- ais523 has quit (Read error: Connection reset by peer).
12:40:44 <boily> bon matin à tous! I'm wearing my http://www.amazon.com/Save-Planet-Learn-Proto-Indo-European-T-shirt/dp/B0087LFWDY t-shirt today!
12:47:30 <Phantom_Hoover> fizzie, no, they do that in new york
12:47:52 -!- ais523_ has changed nick to ais523.
12:59:16 -!- atriq has quit (Ping timeout: 246 seconds).
13:16:49 -!- atriq has joined.
13:18:42 -!- elliott has joined.
13:30:57 <elliott> ais523: ping
13:30:57 <lambdabot> elliott: You have 2 new messages. '/msg lambdabot @messages' to read them.
13:51:46 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:10:14 <elliott> UK court says Apple must now run adverts in major British papers and leave a banner on its website for 6 months saying Samsung isn't a tablet-design copycat. (zdnet.com)
14:10:15 <elliott> i
14:10:36 <elliott> [[Apple has lost an appeal against Samsung in the U.K. after the first judge claimed the Galaxy Tab 10.1 could not have infringed the iPad because it wasn't "cool" enough.]]
14:10:37 <elliott> im
14:12:11 -!- copumpkin has joined.
14:38:36 -!- function has changed nick to constant.
14:41:03 -!- copumpkin has quit (Remote host closed the connection).
14:53:59 <Phantom_Hoover> hahaha
14:54:27 <Phantom_Hoover> wait is this real life you're talking about
14:54:46 <Jafet> Surreal life
14:55:44 <Phantom_Hoover> i had an english teacher who pronounced surreal 'sooral'
14:56:15 <atriq> Soo ray al?
14:58:32 <Phantom_Hoover> yes
14:58:57 <Phantom_Hoover> she also pronounced poem 'poeeyem' but that's weirdly common in scotland
15:00:53 <atriq> Did she pronounce "film" with two syllables?
15:01:15 <Phantom_Hoover> probably
15:03:30 -!- copumpkin has joined.
15:05:27 <Arc_Koen> like "fillem"?
15:05:45 <atriq> Yes, or "fillum"
15:06:01 <Arc_Koen> nah, that's just you pronouncing fillem wrong!
15:06:06 <atriq> :P
15:06:24 <Arc_Koen> anyway see you later
15:06:28 <atriq> See ya
15:06:43 <Arc_Koen> oh and give a look at that mascarpone language it looks great
15:07:03 <Arc_Koen> (was looking for a slightly more expressive adjective than just "great" but hey)
15:07:46 <kmc> how about "awesome"
15:08:35 <boily> there's no page on the wiki. is there any public info floating somewhere on mascarpone?
15:11:13 <atriq> Possibly the same thing as Emmental, not sure
15:19:10 -!- zzo38 has joined.
15:21:23 -!- Vorpal has joined.
15:37:09 -!- ais523 has quit.
15:38:12 <atriq> Thinking about Featured Languages
15:41:18 <atriq> I'm gonna suggest not Underload, because Glass is stack based too
15:41:48 <atriq> I might put my weight behind Malbolge
15:44:59 <atriq> It's quite different to Glass and ///
15:45:03 <atriq> It's got examples
15:45:21 <atriq> It's got a specification
15:46:46 <atriq> It's implemented
15:50:03 -!- augur has quit (Remote host closed the connection).
15:52:06 -!- hagb4rd has joined.
15:53:45 <elliott> atriq: are you planning to become an admin
15:53:50 <elliott> do you want to be in charge of featured languages
15:54:06 <atriq> I don't know if I can be trusted with the responsibility!
15:54:47 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds).
16:03:06 -!- copumpkin has quit (Ping timeout: 264 seconds).
16:06:24 <zzo38> Do you have a pipe organ?
16:08:33 <atriq> I do not!
16:08:50 <atriq> I have an electric keyboard with 2 pipe organ voices, though
16:09:04 <elliott> atriq: Two????
16:09:08 <atriq> Yes
16:09:14 <atriq> Pipe Organ 1 and Pipe Organ 2
16:09:47 <atriq> Also, Synth Organ and Jazz Organ
16:12:05 <elliott> atriq: fancy
16:12:43 <elliott> atriq: Do they sound different???
16:12:48 <atriq> I don't know
16:12:51 <elliott> I want to hear Pipe Organ 1 and Pipe Organ 2. How do you make two separate pipe organ voices.
16:12:58 <elliott> how can you not know!!
16:14:05 <zzo38> Well, I suppose they could have different stops, different swell shades, etc
16:14:05 <atriq> Hmm
16:14:14 <atriq> Pipe Organ 1 sounds bolder, Pipe Organ 2 more italic
16:14:22 <atriq> I think that only makes sense for me
16:18:10 <elliott> atriq: i'm going to have to demand audio here
16:19:00 <atriq> I'm gonna have to refuse or at least arbitrarily delay
16:21:14 <elliott> harsh
16:21:20 <elliott> i will never know the smooth sounds of pipe organ 1 & 2
16:21:24 <fizzie> "More italic", is that like as in the cursive typeface?
16:23:52 <elliott> fizzie: Hey, how's that thing?
16:25:28 <fizzie> What, what, WHAT. There's no "things".
16:28:44 -!- copumpkin has joined.
16:32:55 -!- atriq has quit (Ping timeout: 252 seconds).
16:34:02 <elliott> fizzie: Are you sure??
16:36:38 -!- mindlessDrone has joined.
16:36:52 <mindlessDrone> hi
16:37:18 -!- ais523 has joined.
16:38:00 -!- FreeFull has joined.
16:38:23 <shachaf> elliott: http://www.youtube.com/watch?v=k-jRj8qXpag#t=1m40s
16:39:36 <elliott> `welcome mindlessDrone
16:39:48 <HackEgo> mindlessDrone: 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, try #esoteric on irc.dal.net.)
16:41:02 -!- augur has joined.
16:41:22 <shachaf> They tell you that it's the international hub, but really there are only two countries: Hexham and Finland.
16:41:29 <shachaf> (And I'm not Hexhammish!)
16:41:51 <fizzie> Hexland and Finham.
16:46:12 <zzo38> No, some people of esolang are Canada, too.
16:47:05 <fizzie> Some people of esolang are *alleged* to be Canada.
16:47:14 <fizzie> (Innocent until proven guilty and all that.)
16:47:34 <shachaf> zzo38: What is there in Canada, really, once you take out the Hexham and the Finland?
16:50:18 -!- copumpkin has quit (Ping timeout: 256 seconds).
16:50:27 <zzo38> shachaf: Canada.
17:04:02 -!- Phantom_Hoover has joined.
17:13:53 -!- AnotherTest has joined.
17:14:02 <AnotherTest> hello
17:17:24 -!- atriq has joined.
17:18:10 <atriq> fizzie, yes
17:20:13 -!- atriq has quit (Client Quit).
17:22:12 <fizzie> I'd ask how it translates to sound, but I might not want to hear the answer.
17:27:06 <FreeFull> I'm in England but not Hexham
17:27:38 <mindlessDrone> OMG this is a programming language? I thought this is hardcore esoteric like walking over water
17:27:58 <FreeFull> I can walk in water
17:28:06 <FreeFull> And over water if there is a bridge or something
17:28:16 <mindlessDrone> ^^
17:29:02 <zzo38> Can you walk on water if frozen to make ice?
17:29:27 <boily> I'm back from lunch and what do I know? people here doubting my canadianness.
17:29:57 <zzo38> mindlessDrone: What did you want about walking over water, anyways?
17:30:27 <zzo38> Esolang is not in itself a programming language, but rather involves prorgamming language; see wiki for information
17:30:49 <mindlessDrone> don't know ..i want to know how jesus may felt
17:31:50 <kmc> try nailing yourself to some wood
17:32:00 <mindlessDrone> xD
17:32:32 <mindlessDrone> i try to read the wiki ..but its so much text ...
17:34:18 <zzo38> It is supposed to be so much text ...
17:35:30 <FreeFull> zzo38: No, I slip
17:39:04 -!- oklofok has quit (Ping timeout: 246 seconds).
17:40:37 <fizzie> There's that thing.
17:41:16 <fizzie> http://dsc.discovery.com/gear-gadgets/man-attempts-walking-across-sea-in-a-human-sized-hamster-wheel-photos.html
17:41:22 <fizzie> That thing, maybe that's a bit Jesusy.
17:41:33 <fizzie> I mean, kind of, sort of.
17:42:26 -!- copumpkin has joined.
17:42:37 <mindlessDrone> awesome
17:43:21 <fizzie> And anyway wasn't he a carpenter's son or something? I mean, adopted, if you can call it that. I'm sure he could've fiddled together something like that.
17:44:05 <fizzie> Maybe a slightly more creakier version but still.
17:47:33 <mindlessDrone> sure ..sounds plausible
17:48:05 -!- nortti has changed nick to []{}\|-_`^.
17:48:10 <zzo38> It is also possible that they mistaken him, they misremembered, they added the walking on water for metaphorical purposes, and various other things, including but not limited to, divine magic
17:48:53 -!- []{}\|-_`^ has changed nick to nortti.
17:51:36 <mindlessDrone> a german comedian once sayed "maybe he was just buying water" because in german buying and walking are rhyming
17:52:35 <mroman> indeed.
17:53:28 -!- WeThePeople_ has joined.
17:57:07 -!- epicmonkey has quit (Ping timeout: 246 seconds).
18:00:02 <shachaf> FreeFull: Um...
18:00:07 <shachaf> England is *in* Hexham.
18:00:39 -!- nortti has changed nick to ^[.
18:00:51 <shachaf> nortti has escaped the dungeons of doom.
18:01:02 <^[> :P
18:01:25 <zzo38> Many electronic piano/synthesizer have only a few fixed settings and cannot be changed much, sometimes there are a few possibilities.
18:01:35 -!- WeThePeople_ has quit (Read error: Connection reset by peer).
18:02:00 <shachaf> zzo38: http://ampnoise.com/mp3/MusicOnThePDP-1X_Pinafore.mp3
18:02:25 -!- ^[ has changed nick to [-].
18:02:36 -!- [-] has changed nick to ^[.
18:02:52 <zzo38> I wrote on paper some 32 byte registration of digital synthesizer, including FM section, additive section, square section, saw/triangle section, organ section, percussion section, and global section.
18:04:10 -!- ^[ has changed nick to nortti.
18:06:16 <zzo38> And then you can have multiple manuals, each with their own registration, and pedalboard, as well as other pedals and other controls
18:07:16 -!- oklopol has joined.
18:12:45 <ais523> hmm, I think I hit my personal record for getting a Slashdot post modded up to +5
18:12:48 <ais523> it was less than 5 minutes
18:12:56 <ais523> (second post on an article about a court case, linking to the verdict)
18:17:34 <ais523> wow, I'm already old enough to have difficulty comprehending just how fast computer storage is increasing
18:17:49 <ais523> you can get a 64GB SD card for a reasonably affordable price, for insance
18:17:52 <ais523> *instance
18:18:20 <ais523> I grew up with floppy disks (5¼" were the most common when I started using computers, but 3½" were the first I really started using)
18:19:09 <shachaf> I never ued a 5¼" floppy disk. :-(
18:19:24 <ais523> that was before I started using PCs
18:19:24 <shachaf> But I remember 3½" fondly, of course.
18:19:33 <fizzie> SD cards don't freak me out as much as microSD cards. Aren't those up to at least 32G now too?
18:19:47 * shachaf has a 32GB microsd card.
18:19:58 <ais523> PCs were quite common when I was young, but didn't have anywhere near the market share they do nowadays
18:20:03 <shachaf> It used to be in my phone but now my phone doesn't have a microsd slot.
18:20:05 <fizzie> That gives me the shivers.
18:20:36 <shachaf> fizzie: You can get 64GB microsd these days.
18:20:53 <fizzie> That's, like, double-shivers.
18:21:04 <fizzie> It's the size of a fingernail.
18:21:08 <ais523> my primary school used primarily Acorn computers, together with some BBC Micros
18:22:24 <fizzie> The "parallel class" (not sure what's the term; same grade, a different group) in primary school had a PC. We were kinda jealous.
18:22:27 <zzo38> I don't like SD card much, though, especially the small ones which don't have a write protect switch.
18:22:40 <fizzie> (On the other hand, we took more class trips.)
18:23:01 <fizzie> Their PC ran Windows 1.02; this was in the higher grades.
18:23:21 <shachaf> Hmm, 32gb microsd is down to $20.
18:23:29 <ais523> the computers in my secondary school were PCs, mostly running Windows 95; some were on Windows 3.11, and they upgraded to 98 after a while
18:23:53 <fizzie> They also had a directory with "high-ascii" (sorry for the misnomer) characters in it, with Leisure Suit Larry 1 (I think) and some other games hidden in it.
18:24:07 <fizzie> See, the teachers couldn't get in there.
18:24:31 <elliott> i used a bbc micro in playschool
18:24:33 <elliott> pretty sure it was obsolete then
18:24:39 <ais523> elliott: it probably would have been
18:24:41 <fizzie> You had to memorize the numbers to type with alt-NNN. One of them was the empty space, too.
18:24:43 <elliott> since this was like late 90s-early 2000s :P
18:24:47 <ais523> about the time I finished secondary school, they decided to get rid of their BBC Micros
18:24:54 <ais523> so they sold them to their students for £20 each
18:25:03 <elliott> in year 1 or so we had an acorn(!!)
18:25:04 <ais523> we bought one and played with it for a while; I learned 6502 asm on it
18:25:14 <shachaf> BBC Micro? That sounds like the future.
18:25:21 <ais523> the B and Y keys were broken, but that wasn't impossible to deal with
18:25:31 <ais523> because function keys were rebindable
18:25:33 <fizzie> Then they installed that Windows 1, and the MS-DOS Executive let you navigate to any directory. It was a problem.
18:25:51 <ais523> you could get the B via copying-and-pasting from the "BBC" tagline it printed when it loaded
18:25:57 -!- Phantom_Hoover has quit (Ping timeout: 248 seconds).
18:26:10 <ais523> for Y you had to write a short BASIC program
18:26:15 <elliott> oh right, I presumably even knew the Micro was obsolete, since I got a computer before then...
18:26:18 <shachaf> Sounds like an esolang.
18:26:21 <elliott> (it ran windows 3.11)
18:26:27 <ais523> shachaf: it wouldn't be a very good one
18:26:32 <elliott> (did you know: windows 3.11 is not very good)
18:26:43 <Gregor> HEY
18:26:44 <Gregor> HEY
18:26:47 <Gregor> Windows 3.11 is awesome.
18:26:50 <ais523> elliott: I actually enjoyed 3.1, it did what it was intended to do quite well
18:26:50 <elliott> ais523: how long did it take you to relearn how to type on a keyboard with b and y where they are rather than on the fkey row
18:26:52 <ais523> didn't use 3.11
18:26:57 <shachaf> http://upload.wikimedia.org/wikipedia/en/c/c4/Interface_age_scan_nov_1983_p30_bbc_micro_ad.jpg
18:26:57 <ais523> elliott: not very long, actually
18:27:07 <ais523> I'm quite used to keys changing places when I move to a different keyboard
18:27:08 <fizzie> Same school where I was called to the principal's office, which was a bit worrisome, but then they just had printer problems.
18:27:10 <elliott> Gregor: i used windows 3.11 when i was 3, i'm the expert
18:27:14 <shachaf> That looks pretty great.
18:27:19 <shachaf> elliott: I did too, I think!
18:27:24 <ais523> fizzie: heh, I only got called to the headteacher's office when they wanted to reward me
18:27:29 <ais523> the punishment was mostly done by other people
18:27:44 <elliott> shachaf: that sounds unlikely
18:27:50 <elliott> shachaf: well I guess you aren't that much older than me
18:27:58 <shachaf> I'm pretty sure I did.
18:27:59 <elliott> and also windows 95 had been out for a few years by the time i got that thing anyway
18:46:12 -!- mindlessDrone has left.
18:59:36 <fizzie> Also remember not to SMARTDRV your Windows 3.1 system disk, because it will cause the loader to just eat a chunk of the Windows logo and choke.
18:59:51 <fizzie> Not SMARTDRV.
18:59:58 <fizzie> What's the online disk compression tool.
19:00:19 <fizzie> DBLSPACE, I mean.
19:01:03 <fizzie> (You can certainly SMARTDRV it.)
19:02:36 <fizzie> Apparently it's a valid configuration if you jump through the right hoops.
19:02:39 <fizzie> Didn't work out for me, though.
19:04:23 -!- AnotherTest has quit (Quit: Leaving.).
19:04:38 -!- AnotherTest has joined.
19:04:43 <olsner> smartdrv was the disk cache thing?
19:05:35 <fizzie> Yes.
19:05:53 <fizzie> Doublespace played all kinds of weird tricks with hidden volumes called h: and whatnot.
19:07:43 <fizzie> Also loadlin, that's so nifty. My first dual-boot box had its dual-boot done by keeping DOS in the MBR, then using the fancy DOS 6 [menu] menuitem boot menu things to automagically blarp with loadlin.
19:08:22 <elliott> loadlin is cool
19:08:22 <fizzie> And umsdos, isn't that even niftier? I think I had a slackware umsdos installation.
19:08:27 <fizzie> (Then it went bork.)
19:08:33 <elliott> what's umsdos
19:09:23 <fizzie> It's the thing that lets you put Unixy things like uids and gids into a plain directory of a FAT filesystem, so that you can have your root in C:\LINUX.
19:09:55 <fizzie> It puts the extra data into a FAT file called --LINUX-.---.
19:10:09 -!- epicmonkey has joined.
19:10:23 <fizzie> Then you can go peek at your /etc as C:\LINUX\ETC\ in DOS land.
19:10:36 <fizzie> And of course ruin everything if you mess with things there too much.
19:11:16 <fizzie> Goes well with loadlin: no partitioning, no boot loader messing-up-with, no nothing. You just enter the drag^HLinux from dos.
19:11:40 <fizzie> I suppose compared to ext2 there might have been some slight performance issues maybe.
19:15:42 -!- copumpkin has quit (Ping timeout: 255 seconds).
19:25:15 <ion> Try Jumping http://youtu.be/VSttd3edW98
19:29:11 <nortti> fizzie: drag^HLinux = draLinux?
19:29:46 <fizzie> Uh, ^W.
19:30:19 <fizzie> (Though "draLinux" doesn't sound like an unreasonable name for a distribution.)
19:30:22 <nortti> I was trying to find info on this draLinux on google
19:30:28 -!- AnotherTest1 has joined.
19:30:32 <nortti> I found nothing
19:30:42 <fizzie> The rules state you must now make it.
19:31:10 -!- AnotherTest has quit (Read error: Connection reset by peer).
19:31:39 <nortti> fizzie: good. I had no name for my distro
19:33:21 <nortti> fizzie: should I use 2.4 kernels so I could use umsdos?
19:38:47 -!- AnotherTest1 has quit (Quit: Leaving.).
19:39:14 -!- pikhq has joined.
19:39:20 <fizzie> I, uh. I wouldn't, but you are certainly free to.
19:40:11 <nortti> ok. I'm going to use mastodon linux as a starting point
19:40:44 <ais523> hmm… YouTube top comment is a warning not to read the rest of the comments
19:40:49 <ais523> YouTube's self-awareness is scary sometimes
19:41:04 <ais523> I read the first page of actual comments, they mostly just said that the comments were fine again now
19:41:11 <nortti> lol
19:42:04 -!- AnotherTest has joined.
19:42:37 <ion> Don’t you dare offer free education to our residents! http://chronicle.com/blogs/wiredcampus/minnesota-gives-coursera-the-boot-citing-a-decades-old-law/40542 Meanwhile: http://www.startribune.com/business/164349766.html
19:45:35 <nortti> I wonder how well modern linux software will work with gcc 2.95 and libc4
19:45:56 <pikhq> 2.95 might work.
19:46:03 <pikhq> Actually.
19:46:06 <pikhq> Depends on the program.
19:46:15 <pikhq> Some stuff will work just fine, some stuff depends on C99.
19:46:26 <nortti> and libc4?
19:46:34 <pikhq> Same issue.
19:46:40 <pikhq> C99 libc.
19:46:46 <pikhq> Also pthreads.
19:46:51 <nortti> linux 2.0 :D
19:46:51 <elliott> if you are using gcc 2.95 and libc4 then presumably you are enough of a neo-luddite to not want to use modern linux software
19:47:15 <pikhq> Linux 2.6.0 is the first (official, stable) version of Linux where you can have correct pthreads.
19:47:29 <pikhq> And 2.4.0 is the first where you can have threads that almost work if you squint.
19:47:32 <pikhq> (IIRC)
19:47:40 <nortti> I'll use 2.4 then
19:47:56 <pikhq> (pssst, you want to use musl)
19:48:15 <nortti> but why?
19:48:19 <nortti> :P
19:48:38 <fizzie> LinuxThreads/libc5 was a working combination for threads, at least, pre-NPTL. I don't quite know about libc4 and threads.
19:48:51 <pikhq> fizzie: Very non-conformant though.
19:48:58 <nortti> and musl doesn't build with 2.95 if I remember correctly
19:49:03 <fizzie> POSIX, schmosix.
19:49:06 <nortti> +gcc
19:49:14 -!- copumpkin has joined.
19:49:46 <olsner> as if any of the programs using threads are correct enough that you could tell that the thread implementation is broken
19:50:17 <nortti> I am still not sure if I want to make draLinux a serious distro or not
19:50:36 <pikhq> fizzie: Each thread in LinuxThreads has a different pid.
19:50:44 <nortti> ugh
19:50:50 <nortti> that. is. horrible
19:50:50 <pikhq> This isn't a *subtle* non-conformance error, it's a Big one.
19:50:55 <nortti> why?
19:51:41 <nortti> wait. is thread implementation part of kernel or part of libc on linux?
19:52:00 <pikhq> Part of libc, *but* with some support needed from the kernel.
19:52:10 <nortti> hmm
19:52:22 <pikhq> 2.4 doesn't support the flag for clone that indicates the new process needs the same PID as the parent.
19:53:01 <kmc> patch it
19:53:04 <kmc> ksplice it
19:53:10 <zzo38> Can we make the Imakuni?'s card in Dungeons&Dragons game?
19:53:21 <nortti> should it be hard to fix? I have not really poked anything newer than linux 0.2
19:53:39 <pikhq> Red Hat 9 backported it.
19:53:52 <pikhq> You could probably just filch their patch.
19:53:58 <kmc> what about RHEL3?
19:54:16 <nortti> I always read RHEL as RHELL
19:54:22 <pikhq> RHEL3 was derived from Red Hat 9.
19:54:22 -!- ais523 has quit (Remote host closed the connection).
19:54:25 <pikhq> So, I assume so.
19:54:25 <kmc> yes that's how it's often pronounced too
19:54:36 <kmc> ksplice never worked on 2.4 to my knowledge
19:54:44 -!- ais523 has joined.
19:54:59 <pikhq> Well, yeah. 2.4 to 2.6 involved Huge Changes.
19:55:26 <pikhq> nortti: Anyways, you should use musl because it is the Best Libc Ever. :P
19:55:56 <nortti> pikhq: ok. If I can get it to compile with something ancient I'll give it a shot
19:56:02 <kmc> well so does 2.6.9 to 3.4 and ksplice supports that whole range :)
19:56:05 <kmc> but yeah
19:56:07 <pikhq> nortti: Builds with PCC.
19:56:17 <kmc> going back to 2.4 would be a bigger deal still
19:56:31 <nortti> pikhq: isn't pcc c89 only?
19:56:40 <pikhq> No, it's been updated to C99.
19:56:46 <nortti> good
19:56:52 <nortti> that is worth a try
19:57:09 <nortti> linux 2.4+toybox+pcc+musl
19:57:38 <zzo38> Should the Haskell programs in their own pages in esolang wiki to use literate Haskell format so that you can download the file and then it will work?
19:58:20 <pikhq> GCC 2.95 however is C89-only. ;)
19:58:30 <nortti> yeah
19:58:40 <pikhq> Fair warning, you cannot build Linux with PCC.
19:59:07 <kmc> are you a bad enough dude to build linux with pcc
19:59:18 <nortti> I probably need both pcc and tcc and patches for linux or gcc 2.95
19:59:52 <elliott> or, you know
19:59:53 <elliott> gcc 4
20:00:01 <nortti> of course not
20:00:08 <nortti> that would be rational
20:00:51 <nortti> when I'm going to use linux 2.4 and coreutils without cp why not use ancient/obscure compilers
20:01:21 <nortti> +?
20:01:45 <nortti> and it will of course use umsdos and loadlin
20:02:13 <pikhq> The better option would be to pay landley to do qcc.
20:02:25 <nortti> hmm. yeah
20:02:58 <nortti> but wouldn't it have the same problem as pcc (lack of gcc specific stuff)?
20:03:24 <pikhq> What he wants to do with it is make it usable as the only compiler in his Aboriginal Linux project.
20:03:38 <pikhq> (and he considers it a regression if he can't build Linux From Scratch using that)
20:03:49 <nortti> that sounds good
20:04:05 <nortti> now to find out where and how I can send the money
20:04:23 <pikhq> And realize that paying a guy to do something fulltime for a few months is pricy. :P
20:04:42 <nortti> yeah...
20:05:26 -!- AnotherTest has quit (Quit: Leaving.).
20:05:35 <nortti> so qcc was tcc frontend bolted to qemy code generator, right?
20:06:07 -!- AnotherTest has joined.
20:07:47 <pikhq> And then the frontend boosted like crazy.
20:07:50 <pikhq> And then binutils.
20:08:08 <pikhq> Because, in short, "fuck GNU"
20:08:39 <nortti> yes
20:08:55 <nortti> I also hope toybox gets cp and mv soon
20:08:56 -!- AnotherTest has left.
20:09:16 <nortti> using sash for those things in my minidistro is getting annoying
20:09:38 <elliott> does it really not have cp and mv
20:09:59 <pikhq> On landley's todo list up there with "get email working".
20:10:04 <nortti> it does have those but those are broken
20:10:09 <pikhq> elliott: Nah, it's a relatively new project.
20:10:28 <pikhq> And landley's spent the past year unable to work on it as much as he'd like.
20:11:16 <zzo38> For Dungeons&Dragons game (and for Icosahedral RPG) I could make up the "Imakuni?'s" spells like the Imakuni?'s cards, and I could make up the "Kjugobe's" psionic powers like the psionic powers that would be made up by my character.
20:12:58 -!- atriq has joined.
20:13:16 <ais523> zzo38: why would anyone bother to memorize an Imakuni?'s spell?
20:13:23 <ais523> (also, why would anyone embed a question mark in their name?)
20:14:53 <zzo38> ais523: In case you are strange you would do those things, I suppose.
20:15:33 <zzo38> But it may occasionally find useful as you would any spells, so you might want to write on the scroll to use as a scroll.
20:18:20 <atriq> I wrote a dupdog interpreter because I was bored
20:18:24 <atriq> And I've no idea if it works
20:26:54 <atriq> "ॐኙ┯䩛钳𒥣𥋃񊖃򔬃*** Exception: Prelude.chr: bad argument: 1218051"
20:27:05 <atriq> That's meant to say "Hello, World!"
20:27:15 <ion> Close enough.
20:27:17 <atriq> I think my program is wrong
20:32:16 <fizzie> 1218051 is *so close*, it's almost a characer. I mean, relatively speaking. They do go up to 1114111.
20:36:25 <shachaf> ion: U+006D LATIN SMALL LIGATURE RN [m]
20:39:36 <ion> Verily.
20:41:55 <elliott> @remember shachaf U+006D LATIN SMALL LIGATURE RN [m]
20:41:56 <lambdabot> Okay.
20:42:29 <ion> Why do they call them like U+006D instead of U+6D?
20:43:19 <ion> On the other hand, now that we have U+1F773 ALCHEMICAL SYMBOL FOR HALF OUNCE, why isn’t it U+0006D?
20:44:08 <fizzie> It's some kind of a thing that it's max(4, needed) characters.
20:45:50 <FreeFull> > chr 'a'
20:45:51 <fizzie> (We do sort-of have U+100000 <Plane 16 Private Use, First> too, so maybe it should be U+00006D.)
20:45:51 <lambdabot> Couldn't match expected type `GHC.Types.Int'
20:45:51 <lambdabot> against inferred type ...
20:45:55 <FreeFull> > chr 1000
20:45:56 <lambdabot> '\1000'
20:46:02 <FreeFull> > chr 1114111
20:46:04 <lambdabot> can't find file: L.hs
20:46:08 <fizzie> Heh.
20:46:09 <FreeFull> > chr 1114111
20:46:11 <lambdabot> can't find file: L.hs
20:46:18 <FreeFull> What does that error mean
20:46:38 <fizzie> It's the let-definitions file, isn't it?
20:46:52 <fizzie> Possibly some sort of a race condition. Normally it's a very transient error, though.
20:46:55 <fizzie> > chr 1114111
20:46:56 <lambdabot> '\1114111'
20:47:03 <fizzie> "There, I fixed it."
20:47:10 <fizzie> (Full disclosure: I did nothing to fix it.)
20:47:37 <FreeFull> > map chr [0..]
20:47:38 <lambdabot> "\NUL\SOH\STX\ETX\EOT\ENQ\ACK\a\b\t\n\v\f\r\SO\SI\DLE\DC1\DC2\DC3\DC4\NAK\S...
20:47:47 <FreeFull> > map chr [32..]
20:47:48 <lambdabot> " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefg...
20:47:57 <fizzie> I like how it has the ASCII control character names.
20:48:03 <fizzie> > map chr [127..]
20:48:04 <lambdabot> "\DEL\128\129\130\131\132\133\134\135\136\137\138\139\140\141\142\143\144\1...
20:48:50 <FreeFull> > map chr [255..]
20:48:51 <lambdabot> "\255\256\257\258\259\260\261\262\263\264\265\266\267\268\269\270\271\272\2...
20:49:01 <FreeFull> It's not going to print them, is it
20:49:48 <fizzie> It doesn't look that way.
20:50:00 <fizzie> > "Ā"
20:50:02 <lambdabot> "\256"
20:50:06 <fizzie> Works as input, though.
20:51:04 -!- Vorpal has quit (Ping timeout: 246 seconds).
20:51:05 <fizzie> From what I recall, it disallows unallocated code points in string literals, if not escaped, due to some reason related to not getting the lexical information about the characters from the unicode character database.
20:51:34 <fizzie> > "࿿"
20:51:35 <lambdabot> <no location info>:
20:51:35 <lambdabot> lexical error in string/character literal at chara...
20:51:39 <fizzie> Right.
20:51:42 <FreeFull> > "♥"
20:51:43 <lambdabot> "\9829"
20:51:51 <FreeFull> > "\♥"
20:51:52 <lambdabot> <no location info>:
20:51:52 <lambdabot> lexical error in string/character literal at chara...
20:51:57 <FreeFull> > "\♥"
20:51:58 <lambdabot> <no location info>:
20:51:58 <lambdabot> lexical error in string/character literal at chara...
20:52:04 <ion> iOS6 maps? http://i.imgur.com/aaVkk.jpg
20:52:08 <FreeFull> > "\u0342"
20:52:09 <lambdabot> <no location info>:
20:52:09 <lambdabot> lexical error in string/character literal at chara...
20:52:12 -!- nys has joined.
20:52:13 <FreeFull> > "44"
20:52:15 <lambdabot> "44"
20:52:23 <fizzie> ion: Maybe they're just resting.
20:52:42 <fizzie> > "\x0342" -- maybe what you wanted?
20:52:43 <lambdabot> "\834"
20:53:05 <FreeFull> > "\\♥"
20:53:06 <lambdabot> "\\\9829"
20:53:23 <FreeFull> > ord '♥'
20:53:24 <lambdabot> 9829
20:53:51 <fizzie> Anyway, there are control character names (maybe slightly less standard) for 0x80..0x9F, IIRC, they could've added those names too, is what I was supposed to say after trying the 127.. thing.
20:56:10 <kmc> http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In-Depth lambda the ultimate
20:57:25 <FreeFull> > sqrt (-1)
20:57:26 <lambdabot> NaN
20:57:46 <FreeFull> > 1/0
20:57:47 <lambdabot> Infinity
20:57:54 <FreeFull> > -1/0
20:57:55 <lambdabot> -Infinity
20:58:03 <FreeFull> > (-1/0) + (1/0)
20:58:04 <lambdabot> can't find file: L.hs
20:58:28 <fizzie> > sqrt (-1) == sqrt (-1) -- the nans strike again
20:58:29 <lambdabot> False
20:58:36 <FreeFull> > (-1/0) + (1/0)
20:58:37 <lambdabot> NaN
20:58:57 <FreeFull> > sqrt -1 * 0
20:58:58 <lambdabot> Overlapping instances for GHC.Show.Show (a -> a)
20:58:58 <lambdabot> arising from a use of `...
20:59:09 <FreeFull> > sqrt (-1) * 0
20:59:09 <lambdabot> NaN
20:59:22 <FreeFull> Ok, multiplying by zero doesn't get rid of it
20:59:27 <FreeFull> > sqrt (-1) :: CReal
20:59:31 <lambdabot> mueval-core: Time limit exceeded
21:00:07 <fizzie> > sqrt ((-1) :+ 0) == sqrt ((-1) :+ 0)
21:00:08 <lambdabot> True
21:00:33 <fizzie> > sqrt ((-1) :+ 0) -- because
21:00:34 <lambdabot> 0.0 :+ 1.0
21:01:30 <FreeFull> Yay Data.Complex
21:04:34 -!- atriq has quit (Ping timeout: 240 seconds).
21:04:44 <fizzie> Data.Complex should do type Zomplex = Complex Double (or however that's written).
21:06:19 <fizzie> Hey, there's a BLAS.C.Zomplex Haskell module.
21:06:48 <fizzie> It defines things that operate on Ptr (Complex Double).
21:08:01 <fizzie> There's such delightful signatures like zgbmv :: CBLASOrder -> CBLASTrans -> Int -> Int -> Int -> Int -> Ptr (Complex Double) -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Ptr (Complex Double) -> Int -> IO ().
21:10:33 <kmc> it's haskell so i can tell right from the type what that does
21:10:34 <fizzie> (It does y = a*A*x + b*y, or y = a*A^T*x + b*y, or y = a*A^H*x + b*y, where a, b are scalars, x, y are vectors, A is a matrix, A^T is its transpose, and a^H its conjugate transpose, depending probably on the CBLASTrans.)
21:10:58 -!- boily has quit (Quit: Poulet!).
21:11:03 <fizzie> (And it does it FAST, because it's BLAS, and you have a BLASt.)
21:11:11 <kmc> whence the name "Zomplex"
21:11:12 <kmc> ?
21:11:25 -!- Phantom_Hoover has joined.
21:11:55 <Phantom_Hoover> <ais523> my primary school used primarily Acorn computers, together with some BBC Micros
21:12:07 <Phantom_Hoover> my neighbour used an acorn until like 5 years ago
21:12:11 <fizzie> It's the double-precision complex, I think for the blas/lapack single-letter names that go S for single-precision, D for double-precision, C for single-precision complex and Z for double-precision complex.
21:12:20 <fizzie> I'm thinking they just couldn't think of a suitable letter.
21:12:59 <fizzie> Also, SGI's math library uses 'complex' and 'zomplex' with the same difference. Not sure who was first there.
21:13:06 <Phantom_Hoover> it should be T, if anything
21:15:08 -!- augur has quit (Remote host closed the connection).
21:16:27 <fizzie> Actually I was slightly inexact there, A needs to be a general band matrix, i.e. only some amount of its diagonals are stored. You can (obviously) tell from the GV.
21:16:56 <fizzie> It would of course be ZGEMV for the general matrix-vector operation.
21:20:32 <fizzie> "General" to distinguish it from Hermitian (regular, band, packed-storage), orthogonal (regular, packed), Hessenberg (upper, upper-generalized), symmetric (regular, tridiagonal, packed), positive definite (regular, band, packed, tridiagonal), triangular (regular, packed, bad, generalized), trapezoidal, unitary (regular, packed), diagonal or bidiagonal matrices which all have their own ...
21:20:39 <fizzie> ... optimized storage formats and function versions. (List not exhaustive, I just got bored typing.)
21:20:42 <fizzie> Numeric programming must be such fun.
21:21:03 <fizzie> That one "bad" should've been "band".
21:21:17 <fizzie> There's no special version/format for bad triangular matrices.
21:21:35 <fizzie> In fact, I'm not sure what makes a triangular matrix bad. Maybe it has just one or two elements on the other side?
21:23:05 -!- epicmonkey has quit (Remote host closed the connection).
21:23:25 -!- epicmonkey has joined.
21:35:07 -!- monqy has joined.
21:56:31 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:00:12 -!- augur has joined.
22:10:50 -!- Phantom_Hoover has quit (Ping timeout: 268 seconds).
22:11:58 -!- Phantom_Hoover has joined.
22:19:07 <Max00355> What is brainfuck useful for exactly?
22:19:24 <coppro> everything
22:19:32 <Slereah_> It's Turing complete!
22:19:34 <Slereah_> So totally
22:20:23 <elliott> Max00355: proving other languages turing complete and not much else
22:21:30 <ais523> it has some interesting derivatives, and a lot more really boring derivatives
22:21:31 <Max00355> Hmm, but what I don't understand is how a self-interpreter could be made than.
22:21:42 <ais523> elliott: I'd actually say that proving other languages TC is not that useful a use
22:21:48 <coppro> Max00355: It's TC
22:21:53 <ais523> minsky machines or tag/cyclic tag machines are normally easier to implement
22:21:59 <Max00355> coppro, I know that.
22:22:09 <elliott> any turing-equivalent language admits a self-interpreter
22:22:18 <ais523> elliott: unless it can't take input
22:22:18 <coppro> ^
22:22:26 -!- copumpkin has joined.
22:22:27 <elliott> ais523: well, then you just need to encode it in initial state, or whatever
22:22:29 <ais523> (not being able to produce output isn't a problem)
22:22:32 <ais523> well, OK
22:22:38 <ais523> I guess it depends on your definition of interpreter
22:22:49 <coppro> I find myself agreeing with elliott here, repeatedly
22:22:49 <coppro> weird
22:23:04 <elliott> hmm, does any TC language admit a self-interpreter? even if it's super-Turing?
22:23:23 <elliott> seems like you could make a construct more powerful than a UTM, but one insufficiently inflexible to emulate itself
22:23:36 <elliott> like a halting oracle where you have to embed the program to check in the source code, or something
22:23:56 <ais523> hmm
22:24:04 <ais523> superturing isn't normally considerd tc
22:24:13 <ais523> would you consider BF to be a PDA?
22:24:22 <elliott> fair enough, but you know what i mean
22:25:15 <ais523> <Anonymous Coward> Any webhamster who specifies pt (or cm, for that matter) for a non-print layout (that is any non-fixed-size layout) should go to jail for no less than double the font size (measured in football fields, of course).
22:25:17 <ais523> hmm
22:25:50 <ais523> elliott: so would you say curly-L is strictly weaker than TC?
22:25:57 <ais523> or do you think it's pointing out that TC is poorly-defined?
22:26:56 <elliott> ais523: is this related?
22:27:51 <ais523> "this" = ?
22:28:01 <ais523> she shouldn't use pronouns on the internet
22:29:47 <elliott> this =
22:29:47 <elliott> <ais523> hmm
22:29:47 <elliott> <ais523> elliott: so would you say curly-L is strictly weaker than TC?
22:29:47 <elliott> <ais523> or do you think it's pointing out that TC is poorly-defined?
22:29:57 <elliott> related to =
22:29:58 <elliott> <elliott> hmm, does any TC language admit a self-interpreter? even if it's super-Turing?
22:29:58 <elliott> <elliott> seems like you could make a construct more powerful than a UTM, but one insufficiently inflexible to emulate itself
22:29:58 <elliott> <elliott> like a halting oracle where you have to embed the program to check in the source code, or something
22:29:59 <elliott> <ais523> hmm
22:30:01 <elliott> <ais523> superturing isn't normally considerd tc
22:30:03 <elliott> <ais523> would you consider BF to be a PDA?
22:30:13 <ais523> elliott: it's vaguely related
22:30:28 <ais523> curly-L is the class of languages that can interpret some TC language, right?
22:30:47 <ais523> so it's a case of establishing bounds either way
22:30:57 <ais523> but I just realised I wasn't really thinking
22:30:57 <elliott> sure
22:31:07 <ais523> hmm, are all super-turing languages also TC?
22:31:13 <elliott> fwiw, s/TC/capable of implementing a UTM etc./ in my statement
22:31:18 <elliott> if you want it unambiguous
22:31:19 <elliott> ish
22:31:21 <ais523> I'd imagine that a language that was, say, /just/ a halting oracle wouldn't be
22:31:51 <elliott> well... you can implement a UTM emulator with that, sort of
22:31:58 <elliott> TC if you can write a program that halts iff UTM, right?
22:32:02 <elliott> er
22:32:04 <elliott> TC if you can write a program that halts iff UTM halts, right?
22:32:09 <elliott> you can write a program that prints 1 iff UTM halts and 0 if not
22:32:13 <elliott> "sort of TC"
22:32:25 <ais523> oh, hmm, right
22:32:28 <ais523> although not vice versa
22:32:31 <elliott> not really TC
22:32:32 <elliott> but "sort of"
22:32:36 <ais523> yes
22:32:43 <ais523> it's reminiscent of curly-L but in a different way
22:32:54 <elliott> if you have halts(p) and ifnot (bool) stmt and loop_forever() then you can do
22:33:01 <elliott> ifnot (halts(...)) loop_forever()
22:33:16 <elliott> "ew" - audience
22:33:24 * ais523 optimises that
22:33:28 <ais523> whilenot (halts(...)) ;
22:33:38 <elliott> ais523: until (halts(...));
22:33:43 <Arc_Koen> hello
22:33:48 <ais523> elliott: you said "ifnot", not "unless"
22:33:51 <ais523> hi Arc_Koen
22:33:55 <ais523> elliott: so I was just copying your style
22:33:57 <elliott> ais523: it was a joke
22:34:02 <ais523> I know
22:34:04 <ais523> so was mine
22:34:09 <Arc_Koen> (what's a pda?)
22:34:14 <ais523> Arc_Koen: push-down automaton
22:34:15 <elliott> ais523: well, you're a joke
22:34:30 <elliott> Arc_Koen: personal digital assistant
22:34:32 <ais523> you know how languages with two stacks are usually turing-complete, unless they have weird flow control issues?
22:34:39 <elliott> Arc_Koen: public display of affection
22:34:44 <ais523> if you take one of those but give it only one stack, you usually get a push-down automaton
22:34:47 <elliott> Arc_Koen: pricy dice access
22:34:57 <elliott> Arc_Koen: pillar-dancing anemone
22:35:01 <ais523> elliott: he asked an on-topic question, can't he get an on-topic answer?
22:35:08 <elliott> Arc_Koen: park drive automobile
22:35:10 <elliott> ais523: no
22:35:13 <Arc_Koen> well personal digital assistant I knew
22:35:13 <elliott> ais523: well yes actually
22:35:13 <elliott> he did
22:35:18 <elliott> then i gave him lots of off-topic answers
22:35:21 <Arc_Koen> but somehow I figured that's not what brainfuck was
22:35:37 <ais523> Arc_Koen: a simple example is a modification of BF where all tape cells to the right of the pointer instantly get set to 0
22:35:57 <ais523> anyway, my point was that BF is at least as powerful as a PDA, but it's not normally considered a PDA because it's /also/ TC
22:35:58 <Arc_Koen> creepy
22:36:38 <Arc_Koen> well that seems only logical
22:36:55 <Arc_Koen> the set of brainfuck programs is strictly larger than the set of pda programs
22:37:00 <ais523> you could replace < with [-]<
22:37:03 <ais523> everywhere
22:37:05 <ais523> and get the same effect
22:37:07 <Arc_Koen> (larger than in the sense of inclusion)
22:37:14 <ais523> anyway, PDA is one of the few interesting sub-Turing computational classes
22:37:23 <ais523> and you can write some real programs in it, sometimes
22:37:33 <Arc_Koen> the set of rectangles is strictly larger than the set of squares
22:37:33 <ais523> (primitive recursive is another, and there are not nearly enough esolangs that use it)
22:37:43 <Arc_Koen> and yet rectangles are not normally considered squares
22:37:58 <ais523> (btw, I'm considering making the Anarchy compiler give a warning if the input program isn't provably primitive recursive)
22:38:06 <Arc_Koen> I've never really know the definition of primitive recursive
22:38:23 <ais523> Arc_Koen: the simplest definition is that for all loops, you need to be able to cap the number of iterations before you start looping
22:38:31 <elliott> <ais523> (btw, I'm considering making the Anarchy compiler give a warning if the input program isn't provably primitive recursive)
22:38:32 <elliott> just make it total
22:38:32 <Arc_Koen> oh, o
22:38:33 <ais523> this obviously implies that the program necessarily halts eventually
22:38:34 <Arc_Koen> ok
22:38:37 <elliott> all the cool languages are total
22:38:54 <ais523> elliott: I strongly considered that but it turned out that making it total syntactically disallowed interesting things
22:39:01 <ais523> so I decided static analysis for totality made more sense
22:39:03 -!- nys has quit (Quit: quit).
22:39:10 <ais523> and hey, if you really want to write an infinite loop, you can, but it's a little nontrivial
22:39:14 <elliott> what does it disallow that you want?
22:39:48 <ais523> elliott: most notably, tail-recursion (specifically recursion, don't really want general tail-calls for this) that simply mutates the input parameters
22:40:00 <ais523> you can refactor that into a version that doesn't but it's a lot of annoying boilerplate
22:40:13 <ais523> like, see C-INTERCAL's optimizer for an example
22:40:14 <elliott> ais523: um, I think Agda allows that
22:40:20 <elliott> so maybe your checking sucks :p
22:40:21 <ais523> hmm
22:40:24 <ais523> it can't allow it /in general/
22:40:27 <elliott> I think Coq does too
22:40:31 <elliott> but monqy probably knows more than me there
22:40:39 <ais523> what specific restrictions does it put on it to keep it total?
22:40:43 <elliott> no idea
22:40:48 <elliott> but for instance, foo (S n) = foo n is obviously OK
22:40:52 <ais523> because clearly if you don't mutate the parameters, you get an infinite loop
22:40:54 <elliott> since you know it can't keep taking that path forever
22:41:06 <elliott> (because it's not codata)
22:41:15 <ais523> elliott: Anarchy can do that too without the warning
22:41:28 <ais523> I'm thinking more along the lines of foo (x, y) | x > y = foo y x
22:41:33 <ais523> err, = foo (y, x)
22:41:43 <ais523> let me not muddle curried and uncurried versions of things
22:41:45 * elliott finds that definition dubious anyway
22:41:51 <elliott> brb
22:42:23 <coppro> elliott: codata?
22:42:25 <ais523> well of course it's dubious
22:42:57 <ais523> it'd be nice to be able to automatically resolve a bunch of those and determine whether it definitely halts, or whether the compiler isn't sure whether it definitely halts or not
22:43:09 <ais523> and thus only a warning, in case the compiler fails to solve the halting problem in that particular case
22:44:32 <Arc_Koen> how about a language with a halting oracle to which you give a pair (p, n) where p is a pointer to the beginning of a program (in that language) and n the length of the program
22:44:48 <Arc_Koen> this means you can feed the halting oracle the program it's in
22:45:20 <ais523> Arc_Koen: that just defies the laws of physics
22:45:26 <Arc_Koen> I think so
22:45:29 <ais523> if you can conditionally run an infinite loop
22:45:39 <elliott> ais523: anyway, I think you can do something like that
22:45:43 <elliott> but you need to use something stronger than booleans
22:46:07 <ais523> elliott: anarchy's type system is already straining at the edges of credibility anyway
22:46:10 <Arc_Koen> funnily enough we get the same paradoxes as with time travel
22:46:13 <ais523> I can implement it, but not in a compositional way
22:46:19 <ais523> Arc_Koen: see http://esolangs.org/wiki/TwoDucks if you haven't already
22:46:20 <elliott> ais523: that's very very bad
22:46:23 <elliott> I'd scrap it entirely
22:46:27 <Arc_Koen> I have
22:46:29 <ais523> elliott: it may be implementable compositionally too
22:46:37 <ais523> but really this is for ease of use rather than mathematical purity
22:46:41 <elliott> it should be obvious :)
22:46:44 <elliott> the two are linked
22:46:46 <ais523> "warning: code is dead, cannot typecheck it"
22:47:41 <ais523> elliott: well it probably annoys mathematicians, and Haskell fans in particular
22:47:41 <Arc_Koen> hmm, question
22:47:53 <ais523> and anyone who's listened to me talk to my boss will know how much I insist on things generally being compositional
22:47:57 -!- epicmonkey has quit (Ping timeout: 276 seconds).
22:48:02 <ais523> but it seems like a small price to pay for a language this great to use
22:48:10 <ais523> I wouldn't have invented Anarchy if I didn't really badly want to use it
22:49:12 <Arc_Koen> imagine I have a language X_n defined as { p in {brainfuck programs} such that the deepest level of loop-nesting in p is n }
22:49:26 <ais523> hmm… not counting efficiency/computational complexity, in pure total programs, call-by-name and call-by-value are observationally indistinguishable, right?
22:49:28 <Arc_Koen> so for instance X_0 is brainfuck without [ ], X_1 is brainfuck without nested loops, etc.
22:49:33 <elliott> ais523: I think that's because you only think about the Anarchy programs you want to write
22:49:37 <elliott> not the ones you'll miswrite by mistkae
22:49:38 <elliott> *mistake
22:49:56 <ais523> Arc_Koen: if the question is "what's the first that's TC", I've wondered that myself
22:50:29 <Arc_Koen> that's indeed the question
22:50:35 <Arc_Koen> what did yourself answered?
22:50:38 <ais523> Arc_Koen: it's widely believed to be either 2 or 3
22:50:44 <ais523> but I don't think it's ever been settled conclusively
22:50:44 <Arc_Koen> oh, sweet
22:51:04 <Arc_Koen> I was afraid none would be
22:51:11 <Arc_Koen> ok, new question then: what about qdecl?
22:51:40 <Arc_Koen> if I limit the number of nested loops to, say, 200 or something, do you expect it would still be TC?
22:51:52 <zzo38> Perhaps does anyone know how to make a quine with FurryScript? I have not figured it out by yet.
22:52:26 -!- Phantom__Hoover has joined.
22:53:02 <ais523> Arc_Koen: well put it this way, you can write a BF self-interpreter, right?
22:53:18 <Arc_Koen> I've never tried
22:53:20 <ais523> and you can bundle a self-interp with an input program, because you can do ++++>++>+++++>++>++++++> or whatever at the start of the program with no loops at all
22:53:33 <ais523> so the question boils down to "what BF self-interpreter has the least deeply nested loops?"
22:54:14 <shachaf> ais523++ # makes sense
22:54:23 <Arc_Koen> that sounds clever but I actually have no idea what your mean
22:54:54 <ais523> Arc_Koen: let's see
22:54:57 <kmc> xmodmap: please release the following keys within 2 seconds: Control_L (keysym 0xffe3, keycode 66)
22:55:07 <kmc> i like to read this as a threat
22:55:22 <ais523> suppose we extend BF with a command that interprets the input tape as a BF program
22:55:27 <ais523> two things happen
22:55:27 <shachaf> kmc: I hate it when that happens. :-(
22:55:39 <ais523> first, Phantom_Hoover replaces our brain with a brick
22:55:39 <shachaf> kmc: I'm too lazy to fix my things, so I run while true; do xmodmap -e 'remove Lock = Caps_Lock' -e 'keysym Caps_Lock = Escape'; disable-capslock; sleep 2; done
22:55:47 <ais523> second, we can compile any BF program into one that uses no loops
22:55:52 <kmc> heh
22:55:54 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
22:56:01 <ais523> because it doesn't require any loops to put the program on the tape
22:56:11 <ais523> and so we can just put the program on the tape, then run our new command
22:56:16 <ais523> do you understand that far?
22:56:23 <olsner> but how will you do complete the second step when your brain is a brick?
22:56:36 <Arc_Koen> ye,s I do
22:56:59 <Arc_Koen> ohhhh I get it
22:57:01 <ais523> Arc_Koen: now, suppose that in order to avoid inferring the wrath of Phantom__Hoover, instead of adding this new command to BF, instead we write a BF program that interprets the tape as a BF program and runs it
22:57:24 <Arc_Koen> yes, I get it, ++++>++>+++++>thing was filling the cells with a brainfuck program
22:57:37 <Arc_Koen> that's nice
22:58:18 <ais523> well, with a different instruction encoding, but there's no need to use ASCII
22:58:27 <zzo38> Do you like this psionic power for Dungeons&Dragons game???? http://zzo38computer.org/dnd/options/Kjugobe_Psionic_Hack.p
23:03:23 <ais523> Arc_Koen: anyway, I'm not sure if anyone's seriously tried to write a two-nested-loop selfinterp, or even a three-nested-loop selfinterp
23:04:05 <Arc_Koen> that's ok
23:04:20 <Arc_Koen> I was wondering because I wanted to prove Emmental TC
23:04:27 <Phantom__Hoover> ais523, i'm only a short train ride from birmingham, remember
23:04:29 <Arc_Koen> and I think I can convert Qdecl programs into Emmental
23:04:31 <Phantom__Hoover> you're playing with fire here
23:04:43 <Arc_Koen> except I need a distinct symbol for every nested loop
23:04:58 <Arc_Koen> and there are only 256 symbols soooooo
23:05:04 <olsner> the minimum nesting has to be finite because otherwise any TC interpreter written in BF would have to be infinite
23:05:12 <olsner> it's probably small too
23:06:19 <Arc_Koen> hmmm though I'm wondering if I only needed a distinct symbol for nested loops... for instance consider a program like BEGIN BEGIN END BEGIN END BEGIN END END
23:06:28 <Arc_Koen> (with actual code inside of all those loops)
23:06:37 -!- Jafet has quit (Quit: Leaving.).
23:07:44 <ion> http://www.comedycentral.com/video-clips/5a1dsd/key-and-peele-bling-benzy---da-struggle
23:11:13 -!- copumpkin has changed nick to brony.
23:11:16 -!- brony has changed nick to copumpkin.
23:22:07 <Gregor> copumpkin: Ahhh, other-channel-/nicking.
23:22:12 <Gregor> copumpkin: Always fun.
23:25:04 <copumpkin> yep
23:49:17 <elliott> ais523: huh, did you know that Debian changed official desktop environments?
23:49:26 <Phantom__Hoover> what is it now
23:49:45 <elliott> Xfce; http://anonscm.debian.org/gitweb/?p=tasksel/tasksel.git;a=commitdiff;h=2a962cc65cdba010177f27e8824ba10d9a799a08
23:50:37 <Gregor> “This ensures that the desktop will fit on CD#1, which gnome currently does not.”
23:50:39 <Gregor> Best reason.
23:51:08 <elliott> Gregor: suspect that's code for "I don't like GNOME 3 and thought of a decent technical excuse" :p
23:51:55 <Gregor> Eeyup.
23:52:30 <Gregor> If it were my call, I'd have just made the commit message “Switched the default WM to XFCE, because Gnome is fucking terrible.”
23:53:02 <elliott> if only xfce was actually godo rather than just not being gnome
23:53:31 <Phantom__Hoover> yeah
23:53:36 <Phantom__Hoover> why didn't they just use godo instead
23:53:43 <elliott> *good
23:53:49 <elliott> todo make wm called godo
←2012-10-17 2012-10-18 2012-10-19→ ↑2012 ↑all