00:01:16 Yes. 00:01:34 For a function definition, int main() is identical to int main(void), which is explicitly permitted. 00:02:08 ISO C also *permits* non-specified types for main, IIRC. 00:02:46 nice 00:02:54 ghci allows Unicode line-drawing characters as operator names 00:02:58 :) 00:04:31 > let (┌────────┐┌─────────────────┐┌────────┐) = (+) in 2 ┌────────┐┌─────────────────┐┌────────┐ 3 00:04:32 5 00:07:37 -!- olsner has joined. 00:13:42 > (`div`) 2 3 00:13:43 : parse error on input `)' 00:14:18 > 2 `+` 3 00:14:19 : parse error on input `+' 00:32:06 > 2 `(+)` 3 00:32:07 : parse error on input `(' 00:32:10 Bah 00:33:19 -!- sivoais has quit (Read error: Connection reset by peer). 00:33:59 -!- sivoais has joined. 00:38:36 there is no way to use `` on anything but an alphanumeric identifier, alas 00:42:40 -!- Arc_Koen has quit (Quit: Are you telling me you can build a time machine but you can't cook a cheese soufflé? You've got your priorities all wrong!). 00:44:09 Oh, hello from Portland, Oregon. 00:44:14 is there not a good lint for C anymore? 00:44:17 splint doesn't support C99... 00:44:21 Time zones are kinda weird. 00:44:34 HELLO FROM THE FUTURE 00:45:00 portland, oregon, isn't that were Gregor is 00:45:08 I don't know. 00:45:18 Gregor at least has been here, since he spoke of the food in here. 00:45:44 i guess he may be the kind of person who does moving and stuff. 00:46:15 *is from 00:46:24 aha 00:47:09 HELLO FUTURE GOOD TO SEE YOU ARE STILL ALIVE 00:49:04 Woke up at 3am to catch the flight from Helsinki, and it's now 3:49am the next day in Finland, but here it's supposedly still Saturday, and it's just getting to be 6pm. 00:50:25 Also I am apparently faster than my bags, since I managed to catch the Seattle-Oregon transfer (even with baggage claim + customs + baggage recheck + security check in the way) with 10 minutes to spare, but my bag didn't; it took the next Seattle-Portland flight (an hour later). 00:51:06 Turns out there was a direct AMS-PDX flight leaving ten minutes before my AMS-SEA, too; I'm a bit confused why they didn't book that for me. I guess this must've been cheaper. (Or maybe I was late.) 00:51:17 Seattle-Portland transfer, I mean. 00:51:43 Travel is all so confusing. I think I'll go buy stuff. -> 01:21:49 fizzie: Almost assuredly price is the reason. 01:22:40 who was booking it for you? 01:22:49 Direct flights are expensive. To the point that a flight from A to B is usually more expensive than a flight from A to C with a layover at B. 01:24:49 i don't think that's usually the case 01:24:53 it is occasionally the case 01:27:08 people on flyertalk seem to think that a) it's rarely the case, and b) airlines don't try very hard to keep you from just leaving the airport at B 01:27:11 http://www.flyertalk.com/forum/travelbuzz/1349573-intentionally-miss-connection.html 01:28:19 expect the rest of your ticket to get cancelled and your checked luggage to get routed to /dev/null 01:28:48 The checked baggage is an issue. 01:28:57 ah apparently the insider term for this is "hidden city ticketing" 01:29:44 Anyway, I know that it's frequently the case with A=IND, B=ORD. 01:30:00 http://www.nytimes.com/2011/05/08/magazine/mag-08subversion-t.html 01:30:02 Err, wait, that's a slightly different case, but same idea. Buying A->B->C to get B->C 01:30:26 e.g. a flight from IND->SFO via ORD is $159, but a direct from ORD->SFO is $210 01:30:44 yeah, i see 01:30:56 The SAME direct, mind you :) 01:31:35 Anyway, your destination probably needs to be a major hub for that to work. 01:32:00 -!- Vorpal has quit (Ping timeout: 276 seconds). 01:32:08 yeah, it works when your desired route is a near-monopoly 01:33:24 oh, haha, this column is by nate silver 01:33:26 didn't even notice 01:35:13 checked baggage is best avoided, anyway :) 01:39:17 Gregor: what dates were those flights on? 01:39:40 i would expect ORD-SFO to be reasonably competitive 01:40:35 a search on Oct 16 finds AA, UA, VX, DL, US all $140 or less 01:40:37 mostly non-stop 01:41:21 one time i flew DSM-DEN-SFO-LAX which was pretty silly 01:45:24 i think the shortest commercial flight segment I ever took was MSN to MKE 01:45:51 unplanned; another plane had crash-landed at Milwaukee and they diverted us to Madison temporarily 01:58:48 * pikhq has had it cheaper to fly out of COS rather than DEN before... 01:59:05 Keep in mind the flight from COS was a short connecting jump to DEN. 02:01:13 -!- soundnfury has joined. 02:03:51 We have a university-wide quasi-exclusive thing about booking all air traffic via a particular Finnish travel agency. 02:04:22 They sent me four suggestions sorted by price and I chose the least annoying-looking one. 02:04:39 (It has a direct PDX-AMS flight on the way back home.) 02:19:31 kmc: I was looking on the 15th, a Saturday. 02:19:45 kmc: And also, direct flight. 02:20:25 And I just did THE SAME EXACT SEARCH, but now there are tickets for half the price X-D 02:20:29 Air travel, folks. 02:20:31 yeah 02:21:14 having prices that go up and back down makes sense 02:21:23 from a business perspective 02:21:51 i can't really fault them for that, even if it is annoying to the consumer 02:23:04 Bing Travel (formerly Farecast) will attempt to predict whether the price is going to go up or down 02:24:35 Yeah, I'm quite accustomed to this nonsense. 02:24:42 Luckily I never have to pay for my tickets ^^ 02:26:54 height scares the hell out of me 02:27:14 i think i would rather not travel at all.. 02:27:23 the spacial world in general scares me 02:28:03 Feels weird just to swipe a credit card everywhere; at home we always stick them halfway in and then key in a PIN code. Or if not PINning, then at least sign a piece of paper. 02:30:08 yeah 02:32:04 i feel important with my debit card :3 02:32:24 i used to have a mere keycard 02:33:47 height scares the hell out of me, but not on planes fortunetely 02:33:55 *a 02:35:05 every part of flying sucks except the part where you're actually in the air 02:35:44 -!- mig22 has joined. 02:36:53 -!- TodPunk has quit (Quit: This is me, signing off. Probably rebooting or something.). 02:44:43 oerjan: KLM's in-flight magazine had a multi-page feature about Trondheim. 02:44:58 good, good 02:49:22 hmm 02:49:44 it was easier when i was younger, long bus rides 02:49:56 i was interested in the technological expansion 02:50:09 in the projects people were working on 02:50:26 -!- TodPunk has joined. 02:51:05 i remember the best busride ever was one long trip back from a camp when i was discussing video games with my friend 02:51:39 he told me his dad knew something about some video game console supiter jupiter 02:52:02 considering that sega had saturn and neptune, i have to wonder if it was actually a real thing 02:53:16 * oerjan thinks of the jupiter ace, but you're too young for that 02:53:53 oerjan, itidus21 isn't saying he used it himself. 02:54:50 apparently http://en.wikipedia.org/wiki/Sega_32X was initially supposed to be called jupiter 02:56:15 this bustrip may have been in 1992... 02:56:34 im not sure 02:57:14 apparently saturn is pronounced Satān in japanese... 02:57:15 but i started secondary college in 1994 and it was a primary school camp 02:57:29 oerjan: Yup. 02:57:36 so mr satan in dbz might be mr saturn? 02:57:40 Which sounds absolutely nothing like English "satan". 02:58:09 but does it sound like "satan" in most european languages _other_ than english? 02:58:32 oerjan: sahtahn would be a rough approximation of the sound of it... 02:58:45 oh.. 02:58:51 dbz satan wasnt sataan 02:59:02 itidus21: Nah, it's definitely supposed to be Mr. Satan there. 02:59:10 " In 2009, his real name was revealed to be Mark (マーク Māku?), which is a pun on the word "Akuma", meaning "devil/demon" in Japanese. " 02:59:18 so basically it sounds like when norwegians are swearing _particularly_ forcefully. got it. 03:00:19 Japanese long vowels (denoted by that mark over the vowel) aren't different vowels, they are just literally pronounced longer. 03:01:03 are they double vowels? 03:01:12 i thought you meant the ah's to represent long a's 03:01:32 oerjan: I was saying "sahtahn" to approximate the sound in English phonology. 03:01:46 And then commented that a Japanese long a is just a longer Japanese a. 03:01:52 itidus21: Yes, they are pronounced twice as long as a normal vowel. 03:01:59 itidus21: Two morae instead of one. 03:02:28 the topic in here is so sensitive to my random comments.. 03:02:36 that's good, same in norwegian (while swedish has a bigger difference...) 03:03:13 which is not good because i just dont actually do esolangs 03:03:18 for long vs. short a that is 03:03:54 i feel like my presence here is killing the channel... 03:04:27 itidus21: We mostly don't esolang here anyways. 03:04:34 but... 03:04:35 It's not you, it's the common trend. 03:04:44 And predates you, I'm pretty sure. 03:04:45 so many major projects have formed in the history of #esoteric 03:04:51 there's been more than usual esolanging lately 03:05:13 still not a majority conversation 03:05:19 the eso lang wiki itself, codu, hackego, fungot, the logs, the quotes 03:05:20 itidus21: ok. the errors are just when installing the launcher 03:05:57 dwarf fortress sessions, 03:06:40 i simply don't contribute to such things 03:07:06 however, no one was really talking when you started the topic 03:08:03 and japanese and linguistics have been discussed here long before you joined 03:08:13 true 03:08:25 ^_^ 03:08:46 maybe since pikhq started learning it 03:09:05 Which, IIRC, was actually a little *before* I joined this channel, actually. 03:09:11 then i guess i was wrong 03:09:12 Though I sucked then. 03:10:04 i was interested in japanese for quite a while... 03:10:09 well i vaguely recall japanese have sucking vowels 03:10:14 *has 03:10:30 ... Does it? 03:10:31 i see the japanese as an example of how interesting a foreign culture can be 03:10:41 or is it just unvoiced ones 03:10:58 its.. basically i see the whole world is turning to crap 03:11:17 a lot of absurd ideals being sought 03:11:24 The vowels are IPA /a/ /i/ /u/ /e/ /o/. 03:11:33 the humanity is being drained away 03:12:20 its all about money 03:12:56 i mean for example... colonization kills cultures 03:13:28 the most warhungry cultures expand the farthest 03:17:20 what i mean to say is, all the interesting aspects of japanese culture are a result of it's long term isolation 03:19:17 when cultures are concentrated and left alone to their own devices, things go better 03:21:46 ahhhh my mom is so loud on the phone 03:21:58 trying to block it out with music and headphones 03:22:05 i cant think straight 03:25:30 -!- itidus21 has left ("ichi ni san yon go"). 03:37:22 -!- TeruFSX has quit (Read error: Connection reset by peer). 03:38:00 -!- hagb4rd has joined. 03:39:05 I am writing the rules for a game called "Sorcery Card". There are 24 ways to play. 03:48:43 -!- augur has joined. 03:53:42 -!- Phantom_Hoover has quit (Remote host closed the connection). 04:51:36 -!- oerjan has quit (Quit: Good night). 04:57:45 > let (×) = (*) in 2 × 3 04:57:46 6 04:58:17 -!- hagb4rd has quit (Ping timeout: 246 seconds). 05:01:33 -!- ogrom has joined. 05:05:15 ket (*) = (x) in 2 * 3 05:05:18 woops 05:05:21 > let (*) = (x) in 2 * 3 05:05:22 Couldn't match expected type `t1 -> t2 -> t' 05:05:22 against inferred type ... 05:05:27 \o/ 05:18:31 -!- Phantom_Hoover has joined. 05:24:41 Gah! Blakeyrat is a total moron amirite? 05:25:32 Probably. 05:27:36 * soundnfury is reading his "The Linux CLI sucks" thread 05:27:54 and he keeps saying incredibly idiotic things 05:28:29 What about it sucks? 05:28:48 http://forums.thedailywtf.com/forums/p/26646/302986.aspx 05:28:58 The Linux CLI is good. In my opinion, he is very wrong. 05:29:09 I have recently written some music yesterday and today. 05:29:28 Ooh, what kind of music? 05:29:42 and, you're right, it is, and he is. 05:30:45 soundnfury: http://2a03.free.fr/?p=pub&dir=zzo38 kind of music. (The zzo38_2 is the recent one; read 00README.txt for information) 05:31:24 ooh, chiptune 05:31:52 You will need NES/Famicom emulator (or a hardware NSF player) in order to play it. 05:32:21 yeah, 'fraid I can't be arsed 05:33:00 but I'll bookmark it in case my arsedness coefficient increases later 05:33:13 OK 05:33:52 If you want to modify it, that is OK with me. 05:36:14 Unlikely; I know shit all about the Famicom 05:36:22 I'm a ZX Spectrum fanboi 05:36:42 Dunno even what cpu the Famicom has. Is it 6502? 05:37:21 Yes, except it lacks decimal mode. 05:38:14 (You can still set and clear decimal mode, and if the flags are pushed on the stack it will still specify if it is set or not, but it won't affect the operation of addition and so on.) 05:38:39 heh, the Z80 doesn't have a decimal mode. It just has N and H flags and a magic "DAA" instruction 05:38:47 (Decimal Adjust Accumulator) 05:39:00 which, btw, is a pig to implement in an emulator 05:39:43 do { bonghits } while (0); 05:40:18 why are you doing while 0? 05:40:31 it's an idiom for C macros 05:40:52 isn't that just equivalent to { bonghits }? (Brackets retained for scoping-ism) 05:40:54 http://stackoverflow.com/questions/257418/do-while-0-what-is-it-good-for 05:40:55 When I learned of that I now do sometimes use do { ... } while(0) in a C macro. 05:41:31 Do! While! 0! Good gods, y'all! What is it good for? Absolutely nothing! 05:42:31 the second answer is actually a totally different use of do { ... } while (0) 05:42:39 which i don't think i've seen in actual code 05:43:34 O, yes, that is another use, if you do not want to name a label. 05:44:06 Frankly, if something you want to do takes multiple statements to achieve, I don't think it should be a macro. 05:44:15 that is an idiotic viewpoint 05:44:16 inline functions spring to mind 05:44:37 many uses of macros cannot be written as inline functions 05:44:38 No, there are some things that macros will do better. 05:44:48 But some things are better with inline functions. 05:44:58 for example if it needs access to the scope or the control flow (return etc) at the call site 05:45:18 longer macros represent a greater savings of duplicated code 05:45:45 zzo38: I think I would rather use 'goto' instead of do { ... break; ... } while (0); 05:46:07 kmc: well if you need that then your control flow is excessively baroque and obtuse 05:46:21 goto is unstructured, you savage 05:46:36 yeah guys i heard goto is considered harmful so let's write really ugly weird code to avoid it 05:46:43 soundnfury: you're just wrong 05:46:44 Jafet: goto is fine, put the raptors away 05:46:45 C is excessively baroque and obtuse 05:46:47 kmc: Yes, you can use goto there; unless you don't want a label, or if there are other purposes having to do with macros that you need this break 05:46:57 kmc: wow, what a reasoned and convincing argument 05:47:01 For example if use many times in a macro and you don't want duplicate label names 05:47:07 Hmm, mosh doesn't do color prediction. 05:47:07 "you're just wrong". I'll have to remember that one. 05:47:13 soundnfury: i can't argue against you because you aren't presenting any argument 05:47:16 soundnfury: Errors are baroque and obtuse control flow. 05:47:18 But I too would usually use goto in this case. 05:47:21 Editing a file with syntax highlighting over a slow connection is funny. 05:47:38 I think he's arguing that he's correct. 05:48:12 kmc: I'm arguing that 'doing clever things with macros' encourages you to write code so clever you can't maintain it 05:48:25 yes, you can go overboard with macros 05:48:35 on the other hand, you can make things much nicer if you use them right 05:48:50 but "only one statement per macro" is not a suitable guideline 05:49:18 Well, we'll just have to respectfully disagree there 05:49:32 right then 05:49:38 Using macros to write multiple statements is not particularly virtuosic 05:49:55 A lot of library plumbing is done that way 05:54:47 By the way, using ewd rhetoric has about the same effect on people as if you went around riding fixies 05:54:51 I think C macros is useful, although a bit weak. 05:55:24 soundnfury: I count over 4000 uses of the "do { ... } while (0)" trick in the Linux kernel codebase 05:55:37 I'm not holding up Linux as the be-all standard of a beautiful C program 05:55:51 but it's a huge codebase worked on by a lot of very smart people 05:55:56 and apparently a number of them disagree with you ;P 05:56:16 \E x. x \in C && pretty x? 05:56:42 Well, I'm not surprised. There's no One True Brace Style, either, but we're still allowed to hold opinions on which is best 05:57:02 yeah but allow me some skepticism if you claim that my brace style is "baroque and obtuse" 05:57:02 and it's my /opinion/ that "do { ... } while (0)" is Considered Harmful 05:57:17 if that's an arbitrary aesthetic judgement on your part, then fine 05:57:21 Yes; and you can program using the brace style you prefer. 05:57:25 i agree that the need for this extra while loop is ugly 05:57:27 A brace style could be baroque and obtuse... 05:57:31 but it is the solution to a problem which needs solving 05:57:31 if(foo) 05:57:32 { 05:57:33 (In Haskell you can even omit the braces if you prefer.) 05:57:35 bar; } 05:57:53 I'd say that's pretty obtuse, but it's valid C so what the fuck, do what you like 05:58:10 soundnfury: Yes, do what you like. I don't like that brace style either but use if you want to. 05:58:33 I prefer: 05:58:38 void xyz(void) { 05:58:38 when you started this conversation you really did not seem to be describing an aesthetic preference 05:58:49 if(a) { 05:58:54 bc(); 05:58:56 de(); 05:58:57 } 05:58:58 } 05:59:16 If you hate this style then don't use it. 05:59:39 soundnfury: your rule about macros is fundamentally unlike a brace style question because I can rewrite any code to use whatever brace style you prefer, but there are many macros I fundamentally can't write with only one statement! 05:59:54 you are limiting the expressiveness of code and not merely imposing an aesthetic rule 06:00:01 do { ... } while(0) is one statement, though. 06:00:37 another reason to prefer macros over inline functions in C is that macros can be type-generic 06:01:03 the same macro can work on float or int, or it can work on every struct with a field of some particular name 06:01:10 kmc: Yes they can; there are other things you can do with macros too, though; not only those things! 06:01:18 again reducing code duplication, and making things clearer if used tastefully 06:01:26 But those are some of the things done, and I have done things like that too. 06:01:34 Some things better with functions, though. 06:01:39 yep 06:01:44 you have to consider each circumstance 06:01:56 which is why blanket rules like "goto is bad!" or "multi-statement macros are bad!" are bad 06:02:15 i do think that all else being equal, a multi-statement macro should get more scrutiny 06:02:20 in terms of "am i being too clever" 06:02:26 I agree; goto is not bad, and macros is not bad, etc 06:02:30 @yarr 06:02:30 Arrr! 06:02:33 @quote scrutiny 06:02:34 ksf says: There's always going to be cases where good programs are rejected. But those who abandon close scrutiny for the sake of ease have earned neither ease nor maintainable programs. 06:02:34 one thing that was kind of hard for me to accept is that sometimes, the best way really is just to duplicate some code 06:04:34 Wait 06:04:45 We are discussing the harmfulness of common C idioms 06:04:48 Sometimes that may be the case. 06:04:49 in #esoteric? 06:05:05 But sometimes macro is better at least my opinion. 06:05:08 Linux programmers seem to have gone a bit overboard with this idiom 06:05:16 do { current->hardirq_context++; } while (0) 06:05:23 there's no need for it here, right? 06:05:33 In that case it would certainly seem you don't need it. 06:05:50 maybe it catches some cases of misuse better 06:05:56 prevents you from using that expression as an expression 06:06:08 Yes that is one possibility. 06:06:21 Actually, every macro that expands to a statement is placed in do { _ } while(0) 06:06:31 There is some reason for it 06:06:39 kmc: couldn't you do that with ((void)(current->hardirq_context++)), or am I mistaken? 06:06:48 possibly 06:06:57 soundnfury: here is a pretty good one: 06:07:02 (Of course, you could still use it in an expression, but not any expr you'd be likely to write) 06:07:11 #define might_sleep() do { __might_sleep(__FILE__, __LINE__, 0); might_resched(); } while (0) 06:07:17 kmc: Consistency can be a reasonable goal in itself. 06:07:30 shachaf: yeah 06:07:39 As long as you have to resort to code duplication, it's probably better to have the same pattern everywhere. 06:07:43 People are pretty good at patterns. 06:07:48 yeah 06:08:05 it makes it more likely they will DTRT when they add a second statement to your macro 06:08:07 I think they should allow return from a void function to have an expression of a void function call optionally in order to specify tail call hint for the compiler. 06:08:40 heh, cute 06:09:04 (But, they don't allow that.) 06:09:54 C ought to have void values. 06:09:58 I'm pretty sure gcc ignores almost all voodoo constructs that programmers throw in to hint at optimizations 06:10:02 Well, they would be much more useful in C++ than in C. 06:10:19 Then they should allow in C++ as well. 06:10:49 Justification: template res_t foo(...) { struct { res_t res; run() { res = ...; } s; ...; return s.res; } 06:11:10 You can probably specialize a template on void. 06:11:15 Yes. 06:11:20 But then you have to write the code twice. 06:11:43 i wonder if gcc has rules specifically to detect silly tricks people do and turn them into code that's actually good on modern machines 06:11:52 zzo38: GCC does allow that, and I've used that idiom in one case. 06:12:05 You need to specialize templates anyway, because your template probably won't all work the same way for rvalue-refs, lvalues, lvalue-refs, lvalue-const-refs, pointers, or the new atomic types 06:12:07 Not to specify an optimization hint, just to make things clearer. 06:12:29 shachaf: They do? Do other compilers supporting GNU89 (such as Clang) supports that? 06:12:52 kmc: it probably happens as special cases of some optimizer passes 06:13:33 zzo38: Yes, it works in Clang too. 06:13:51 Are there any other compilers supporting GNU extensions? 06:14:05 icc supports some 06:14:26 i think some GNU extensions are very widely supported 06:14:30 for example // comments in c89 mode 06:14:48 icc uses edison's parser 06:15:06 Calling that a GNU extension is a bit strange. 06:15:09 Presumably edg implements common extensions 06:15:16 it's... a extension supported by gnu 06:15:31 Jafet: most of them can't be removed at the parsing stage, though 06:15:41 kmc: gcc doesn't support // comments in c89 mode, actually. 06:15:45 It supports them in gnu89 mode. 06:15:48 Well, the entire front-end 06:16:03 I always use GNU89 mode except compiling a program requiring a different mode. 06:16:15 Intel mainly implements the back-end 06:16:22 zzo38: Isn't that true of every mode? 06:16:54 shachaf: I am not sure exactly you mean. 06:17:35 I suppose it's not really. 06:17:46 shachaf: ah, right 06:18:04 but strangely (i discovered today) it allows mixed declarations and code with -std=c89 06:18:11 that is, declarations after statements 06:18:16 only with -pedantic does it complain 06:18:48 -std=c89 without -pedantic isn't real -std=c89 06:18:53 :3 06:19:01 gotta sleep, ttyl all 06:19:12 nn then 06:19:45 The gcc developers officially take the standards as guidelines 06:20:20 I,I non-standard static analysis 06:20:24 So they try to implement the standards for you, but It's A Crapshoot 06:20:37 And the default is always -gnuXX 06:49:38 -!- zzo38 has quit (Remote host closed the connection). 07:49:17 -!- epicmonkey_ has joined. 08:11:19 -!- AnotherTest has joined. 08:11:45 hello 08:30:15 -!- Vorpal has joined. 08:35:46 -!- Vorpal has quit (Ping timeout: 250 seconds). 08:35:54 -!- Vorpal_ has joined. 09:07:03 -!- kinoSi has quit (Read error: Connection reset by peer). 09:07:30 -!- kinoSi has joined. 09:17:31 -!- augur has quit (Remote host closed the connection). 09:21:34 -!- augur has joined. 10:00:35 -!- nooga has joined. 10:51:42 -!- Dovregubben has quit (Ping timeout: 264 seconds). 10:56:35 -!- Dovregubben has joined. 11:04:23 -!- Dovregubben has quit (Ping timeout: 268 seconds). 11:04:44 -!- Dovregubben has joined. 11:44:41 -!- augur has quit (Read error: Connection reset by peer). 12:32:22 -!- nooga has quit (Ping timeout: 252 seconds). 12:52:25 -!- MoALTz has joined. 12:57:21 -!- MoALTz has quit (Quit: brb). 12:58:09 -!- ogrom has quit (Quit: Left). 13:07:05 -!- kinoSi has quit (Read error: Connection reset by peer). 13:07:32 -!- kinoSi has joined. 13:07:38 -!- MoALTz has joined. 13:18:49 -!- augur has joined. 13:51:27 -!- MoALTz has quit (Ping timeout: 252 seconds). 14:08:34 -!- mig22 has quit (Quit: mig22). 14:11:37 -!- MoALTz has joined. 14:14:05 > 8 * 19800 + 33000 14:14:06 191400 15:00:01 -!- epicmonkey_ has quit (Ping timeout: 245 seconds). 15:05:56 -!- epicmonkey has joined. 15:15:09 -!- epicmonkey_ has joined. 15:15:14 -!- epicmonkey has quit (Read error: No route to host). 15:38:33 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 15:40:09 -!- Phantom_Hoover has joined. 15:52:18 -!- zzo38 has joined. 16:13:49 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 16:21:49 -!- MoALTz_ has joined. 16:24:36 -!- MoALTz has quit (Ping timeout: 245 seconds). 16:25:13 -!- atriq has joined. 16:26:35 -!- nooga has joined. 16:27:38 @messages? 16:27:38 Sorry, no messages today. 16:28:31 -!- oerjan has joined. 16:30:49 -!- epicmonkey_ has quit (Remote host closed the connection). 16:31:22 -!- itidus21 has joined. 16:39:32 A brace style could be baroque and obtuse... 16:39:33 -!- copumpkin has joined. 16:40:44 do {{ /*********************** GLORIA ***********************/ {{ 16:40:51 -!- MoALTz_ has quit (Quit: brb). 16:40:54 zzo38: something tells me that your nes sound files are very difficult to play. 16:41:11 -!- MoALTz has joined. 16:41:19 i have several nes emulators, and i see the online file directory where the nes music is contained 16:41:30 }} /****************** IN EXCELSIS DEO *******************/ }} 16:41:41 however... the operation of appending one file onto another is beyond my ken 16:41:46 while (0); 16:41:52 itidus21: You need not append one file onto another to play them. 16:42:03 Appending one file onto another is only if you want to play ZZT files. 16:42:16 ^bonus points for using the word ken 16:42:16 in a Famicom emulator. 16:42:25 ahh 16:42:32 HEY YOUR BLATHER IS RUINING MY BAROQUE BRACE STYLE 16:42:58 itidus21: To play the .NSFs you need not append any files. 16:42:59 can you fix it? 16:43:07 lets let oerjan do his work 16:43:23 well i'm finished but it got a bit broken up 16:43:27 do {{ /*********************** GLORIA ***********************/ {{ 16:43:29 }} /****************** IN EXCELSIS DEO *******************/ }} 16:43:31 while (0); 16:44:19 itidus21: I clarified the text and will upload a new version later today. 16:44:29 For now, just load the .NSF files without appending anything. 16:44:51 when i said fix it i meant can oerjan fix his baroque brace style :D 16:44:58 i did 16:45:22 yup 16:45:25 success 16:45:27 the text doesn't seem to be properly centered in the /***/ blocks 16:45:47 Yes I know that; but that is not what I meant. 16:45:58 I meant that you can load the .NSF without appending one file onto another. 16:46:10 olsner: sadly GLORIA and EXCELSIS DEO don't have the same parity, so i cannot do that 16:46:26 *IN EXCELSIS DEO 16:46:28 hmm, choose a different proverb? 16:46:33 or whatever that is 16:46:47 A hymn lyric 16:46:52 aha... the nes emulator is happy with nsf 16:47:01 Ding dong merrily on high, I think? 16:47:20 dongs 16:47:23 -!- MoALTz has quit (Ping timeout: 246 seconds). 16:48:08 oh i know 16:48:31 do {{ /********************** LAUDATE **********************/ {{ 16:49:05 }} /********************** DOMINUM **********************/ }} 16:49:10 while (0); 16:49:38 ah... virtuanes doesn't like it, but nestopia does 16:50:04 I am using VirtuaNES; they should work with VirtuaNES. 16:50:13 maybe i set it up weird 16:50:16 who knows 16:50:30 But any compliant emulator should play them. 16:50:35 or maybe my virtuanes is out of date 16:50:53 i did notice however that virtuanes had a nicer gui 16:51:02 but it didn't do anything 16:51:22 You need to tell it to start the music! Unlike other emulators it will not start automatically. 16:51:43 Go Option->Controller->NSF Player you can configure which key to start music. 16:51:50 haha 16:52:07 Ding dong merrily on high, I think? <-- that may be where i heard it first (our english teacher in high school was a nice old scottish woman) 16:52:10 oerjan: when you indent, do you reduce the number of asterixes to match? 16:52:42 Ding dong merrily on high, hosana in excelsis 16:52:43 olsner: obviously. 16:52:49 ah ok! 16:52:53 No wait 16:52:57 It's something else? 16:52:58 I think 16:52:59 it is happening now 16:53:01 I DO NOT KNOW 16:53:26 pie iesu domine, dona eis requiem 16:53:30 atriq: there's a long "gloooooooooria" inside it, and in excelsis. i don't think the "in deo" was there when she taught us, but i've heard it with it later 16:53:50 er 16:53:54 *-in 16:54:52 as in, i think her version had "hosana in excelsis" but i've heard oslo gospel choir sing "in excelsis deo" 16:55:15 I think hosana is hebrew? 16:55:23 zzo38 (Untitled) #2 is a nice music 16:56:33 itidus21: OK. Did you read the comment? (The file 00README.txt has comments for all of this music) 16:56:34 -!- Arc_Koen has joined. 16:56:43 i peeked at it 16:57:14 my nes rom folder is such a mess.. and is 374mb due to lots of repeats 16:57:37 You could organize them into directories 16:57:46 "Hosanna is a liturgical word in Judaism and Christianity. In Judaism, it is always used in its original Hebrew form, Hoshana." 16:58:07 i have not really put enough effort into the rom collection 16:58:29 ""Gloria in excelsis Deo" (Latin for "Glory to God in the highest") is a hymn known also as the Greater Doxology (as distinguished from the "Minor Doxology" or ..." 16:58:51 Dumped ROMs may be given differing filenames from different sources, including based on method of dumping; homebrew ROMs tend to have only a single filename and do not have that problem. (You may have both kinds on your computer.) 16:58:53 hello guys! I wanted my first message on the channel today be about my love for coffee. so there it is: I LOVE COFFEE thank you for your time 16:59:09 zzo38: my strategy was to download torrents with as many nes files as possible 16:59:42 "The hymn begins with the words that the angels sang when the birth of Christ was announced to shepherds in Luke 2:14" 16:59:42 itidus21: O, in that case, yes there are going to be lots of repeats, of dumped ROMs especially. 16:59:49 so that's where that's from 17:00:01 but naturally, the people who build such torrents have not invested endless time making it perfect 17:00:03 Arc_Koen: welcome, I hope you'll enjoy loving coffee in this channel 17:00:22 I promise you I will 17:00:55 so what's up? any new TC proofs, a major breach in computational banana schience fiction? 17:00:58 I wonder who added "I HAVE NOW" to the topic and what it means 17:01:19 At least for GameBoy, homebrew ROMs downloaded from sources which also include dumped ROMs generally change the filenames of homebrew ROMs as well, though. 17:01:31 (I don't know for NES) 17:01:34 searching the logs for "have you" might give a beginning of answer olsner 17:01:49 it might! 17:02:07 i like roms. i like the way they sever most dependancies 17:03:21 Arc_Koen: we are living in Pax Coffeana! 17:03:33 basically... i like that you don't have to install a rom... you don't have to even unzip it 17:03:40 all those wars in ancient times were just because they couldn't get their morning coffee 17:03:51 with roms you can keep a set of games in their zip files 17:03:54 oerjan: when I was in prepschool we have had *one* algorithmic test in a whole year 17:03:57 olsner, the "I HAVE NOW" comes from a picture I saw and showed to oerjan 17:04:03 atriq: nice 17:04:09 I answered every question except one *and it's been haunting me since then* 17:04:28 i like any system which has such an airtight file storage 17:04:32 and yesterday I had coffee with my grandmother; she makes very, very strong coffee 17:04:39 olsner, http://a2.sphotos.ak.fbcdn.net/hphotos-ak-ash4/217130_3530847072634_1433380748_n.jpg 17:04:52 atriq: that's funny 17:04:53 I drank two cups and yesterday night I was unable to sleep 17:05:10 and the solution to the unanswered question *appeared* to me 17:05:16 at approximately 4am 17:05:25 ironically it was pretty simple :( 17:05:32 today my dinner was 2 rolls with hommus dip, sliced ham, and mild american mustard 17:06:06 clearly the zenith of luxury 17:06:36 so what's up? any new TC proofs, a major breach in computational banana schience fiction? <-- you _have_ looked at Banana Scheme, right? it's not new, though. 17:06:36 bread rolls? 17:06:40 ya 17:06:47 I have, oerjan 17:06:51 not royce rolls 17:06:53 and I found it great 17:07:08 I wonder who added "I HAVE NOW" to the topic and what it means <-- i did, it was a reference to a picture someone linked of a dog 17:07:14 :( 17:07:28 I read zzo's language with time travel 17:07:42 and it was in category "uncomputable" and I wondered "what else can there be in that category?" 17:07:48 and I pretty much read all pages 17:09:19 zzo38: i have always liked wave patterns ever since i saw akira 17:09:32 ooh, http://esolangs.org/wiki/You_are_Reading_the_Name_of_this_Esolang is a nice name for a language 17:10:04 that aspect of the akira story was exciting 17:10:36 every time you read it you get that nice feeling of "appropriately, I *am* just now reading the name of that esolang" 17:11:40 itidus21: Do you like any of other musics in there? And, yes, the ROMs are generally a single file which works in any compatible emulator or hardware, so that is OK. NES/Famicom games are being written even very recently, even though Nintendo no longer supports them. 17:13:14 nintendo is a big believer in investing absurd amounts of money into useless novelty gimmicks such as virtual boy and 3ds, although i am still curious to play a 3ds one day 17:13:46 uhmm 17:14:04 I have designed (but not implemented) a hardware NSF player. The hardware is the same for any .NSF file, it can use any combination of expansion chips, including banked, NTSC, PAL, multi tracks. Push left/right select track number, START to play music, A button to stop. 17:14:06 zzo38: i am just replaying zzo38 #2 at the moment 17:14:41 itidus21: the 3DS has sold pretty well 17:14:43 itidus21: Have you ever written any .NSF music? 17:15:27 kmc: yeah..... i guess i do want one.. because 3d does sound fun 17:15:31 it's funny to use 'useless novelty gimmicks' as a criticism when talking about video games 17:16:11 zzo38: no i havent. 17:16:41 kmc: you're right. it's a bit of cognitive dissonance in part 17:17:12 -!- MoALTz has joined. 17:18:03 With the 3DS if you take photographs using the camera and it is connected to the internet, then Nintendo can look at them (it says so in their license agreement). I don't know why; it is no sense. The license agreement also says young children should not use the camera so that Nintendo cannot see them. 17:19:15 sigh itidus21 17:20:20 kmc: my concern is partially the fact that it supposedly gives a lot of people headaches, and can't really be played for hours on end, and 3d setting is advised to be turned off around children 17:20:36 But 3DS does have a program for a one-time fee of $8.00 to write and run programs in BASIC. 17:20:43 and also that the virtual boy flopped completely 17:21:02 itidus21: Yes, that too. You can turn off and adjust the 3D setting by a slider at any time, though. 17:21:10 zzo38: ...that's not available in EU yet :( 17:21:14 It took me a while to figure out what the problem with 3D games is but then i realized you’re talking about stereo games. 17:22:05 itidus21: i don't see how the virtual boy is relevant 17:22:15 the 3DS has been on sale for more than a year 17:22:25 you do not need to speculate to determine if it is a flop 17:22:27 it was nintendo's first attempt at selling stereo graphics 17:23:14 guys i think 3D movies are a fad, I think _Avatar_ won't do very well at the box office 17:23:32 Arc_Koen, what's your opinion on the Fancy L problem? 17:23:51 i just honestly can't understand how you think itidus21 17:23:53 I have determined that many people prefer the 2D version of the movies in this area, although 3D version is still played and some people like it. 17:24:12 kmc: i'm mentally ill really. 17:24:19 theres no two ways about it 17:25:12 I have invented a "NTSC stereovision" protocol where at first is synchronization signal, three gray frames followed by black, white, black, white, black, white, black, white, black, white, and then the left frame alternates with right frame; nine unchanging frames turns off stereovision. 17:25:30 It can be used with digital as well. 17:25:48 Also usable with VGA, PAL, etc. 17:26:16 Arc_Koen, http://esolangs.org/wiki/%E2%84%92 17:26:31 the 3DS sales were poor initially but have picked up, to "solid" if not "runaway success" 17:26:37 "After a very rocky start, Nintendo has announced it sold 4.5 million Nintendo 3DS handhelds in the United States during its first year. Believe it or not, that's better than the much-loved Nintendo DS did with its first year." 17:26:42 kmc: i know how to give you insight into how i think 17:27:03 itidus21: Have you ever written any music at all or try to or intend to? I used PPMCK to write these .NSF musics although other programs exist too. 17:27:29 zzo38: nice, but i think 14.99 FPS is not enough 17:28:18 kmc: I suppose you are correct. Still, the similar thing can be used with formats other than NTSC. 17:28:25 I sincerely don’t see why you keep creating protocols and cable specifications based on analog legacy video systems. Why not a fast packet-based digital bus? 17:28:33 also, how does it interact with interlacing 17:28:55 do you send a full left frame in 2 interlaced half-frames, and then a full right frame? 17:29:07 kmc: Yes. 17:29:20 if you did a left half-frame and then a right half-frame, you could get better framerate 17:29:21 Still, using formats without interlacing it may work better. 17:29:29 or maybe the interlacing artifacts would be horrible in 3D 17:29:30 i don't know 17:29:41 kmc: this is entirely safe for work http://oi48.tinypic.com/2iji4ar.jpg 17:29:46 kmc: Yes that is another possibility; but I also don't know if interlacing artifacts will be horrible in 3D. 17:30:02 Still it could use with other formats such as the "Digi-RGB" format of my design. 17:30:21 a picture says 1000 words i like to think 17:30:40 you have 4 notepads open 17:31:14 * ion is reminded of how awful the lack of virtual desktops is. 17:31:46 Digi-RGB is four pins for red, four for green, four for blue, one for clock, one for synchronization, and the others for power/ground. The aspect ratio is always a power of 4/3, which ensures that the correct screen resolution is always known. 17:32:34 so is it 12-bit color? 17:32:44 Other than some electrical specifications and stuff, this is basically entirely how it works. It is a very simple protocol. 17:32:47 the icons behind all that are a mess too 17:32:55 Restricting it to sRGB might also be not the best idea. 17:32:55 kmc: No; I forgot to mention: There are two clocks per pixel. 17:32:57 or do you have multiple clocks per pixel 17:32:58 ah 17:33:16 that does sound simple 17:33:26 zzo38: i have anvil studio for playing with midi files but is a long time since i did that 17:34:11 as far as 8bit music goes i am interested in the way creativity thrives under constraints 17:34:18 If the host wants to turn off the display for power saving, you can fix the synchronization signal high. 17:35:57 also i have a copy of warioware diy for ds which has a music editor for short music about 16 seconds long i think 17:36:07 or maybe its 8 seconds 17:36:13 and repeated twice for 16 17:36:43 itidus21: There is also program to convert MIDI to .NSF, I think, by Tom 7 Entertainment System. There is also PPMCK (I use a version of PPMCK which I have made improvements to), Famitracker, NerdTracker, and possibly others. 17:36:57 in midi i just clicked on random spots 17:37:31 hmm.. actually some of the midi music i came up with isn't all that bad 17:37:35 its merely terrible 17:37:38 The ZZT music player I have written for Famicom will also be .NSF format. 17:38:04 -!- ogrom has joined. 17:38:15 i like the bull in a museum approach to music composition 17:38:17 Other programs I have heard for writing .NSF musics is Impulse Tracker to .NSF, and SuperNSF (which includes a software synthesizer, I think) 17:38:35 -!- Eladith has quit (Quit: leaving). 17:39:20 In that music collection of my .NSF music files, the .mml are the source files and are just plain text files; you can look at them if you are interested in it. 17:39:24 also, i have started to ponder about the relationship between things... 17:40:12 like, with the sound track of a movie, the main relationship between the music and the footage is that someone decided to put them together 17:40:26 Yes 17:40:46 its an unsettling idea really 17:41:23 Well, sometimes the people make the music specifically for this movie 17:41:43 its almost as if the director is trying to trick you into listening to their favorite songs, and asking you to pay for the privelige 17:41:43 But sometimes they just make various music and then see which one they want. 17:41:46 its rather clever 17:43:15 so... next time you want to show someone your favorite music 17:43:25 simply set it to an interesting footage! 17:43:33 haha 17:43:45 im half-joking 17:44:50 zzo38: yeah good point.... maybe if i had actually composed music i would understand a bit more 17:45:28 when in doubt, people like me always assume the option which involves humans being brain-dead 17:45:29 You can try to write a .NSF music if you want; first you will need some software which will compile it. Two main styles are MML and trackers; some prefer one and some prefer another. 17:46:26 And then, you have to learn the 2A03 audio and the expansion audio. 17:46:39 people often assume, "when he did that, he did not think about it..." 17:47:02 this is probably a fallacy in itself 17:47:03 itidus21: Yes that does sometimes seem to be the case that they did not think about it very well. 17:47:12 (Not always, though.) 17:49:38 Other than MML and trackers, another possibility is using MIDI recording. 17:50:27 theory of mind of a stranger can't be very accurate 17:50:40 I agree 17:53:03 Have you used any other programs for writing music, other than Anvil Studio? 17:53:51 i am bad at arriving at a point. but i mean i don't understand what an artist or composer does. i almost have trouble believing in art at all. and no i haven't 17:54:20 I think different composers can compose music using different ways 17:54:48 However I know some things about music theory, so I can use that too. 17:55:15 i think people can impart their uniqueness on what they do 17:55:53 Yes I think so too. 17:56:32 i guess what i really mean by that is, the way one person does things will always be different from how everyone else does it 17:56:46 OK 17:58:46 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds). 17:58:53 and maybe this is always true, except, when measuring what people do, somehow theres a finite number of options 17:59:56 in anatomy, no animal is ever precisely matching the anatomy of it's species 18:00:12 it's always somewhere in a continuum of evolution 18:01:34 an eye is an eye but it is evolving beyond some other eye, and evolving towards some other eye 18:02:25 I would think that, although it is continuous only the discrete ways are realized as I think quantum physics works like this? 18:02:48 Therefore it applies to everything, whether it is physics or chemistry or biology or electronics 18:02:51 i have no idea 18:02:55 hahaha 18:03:37 atriq: hmmmm trick question 18:04:26 I personally feel "is said language turing-complete or not?" is not enough of a question to describe a language's computational class 18:04:39 I mean, Turing-machines don't even have i/o 18:05:09 I have now typed the changes of the character sheet of Dungeons&Dragons game; I helped another player to fill their character sheet and now I have put it into the computer too. This also include entirely story text too, and all character sheets, footnotes, etc 18:05:25 i am thinking that in the acts of rolling a dice, or flipping a coin, a person cannot express their uniqueness... but on the other hand something tells me that they can 18:05:29 Arc_Koen: OK; does computation class include I/O class though? Perhaps I/O class is another difference thing. 18:06:18 zzo38: computation class includes rogue, paladin, cleric, mage, sorceror, and assassin 18:06:31 zzo38: well, I never said it had to be linear :) classes are set, so there is not necessarily an absolute order on them 18:06:36 quintopia, can I be a cleric? 18:06:40 if people were not expressing some form of being unique then elections would have everyone voting the same way 18:06:50 atriq: you want to be the healer? 18:06:53 quintopia: ha ha no I do not think so. 18:06:56 quintopia, yeah 18:07:03 They're pretty cool guys 18:07:08 A cleric does not necessarily have to be the healer, although generally it would be. 18:07:28 Could I be a mezzer? 18:07:53 In D&D game I am in, there are two player characters, one fighter and one wizard (actually multi-classed). 18:08:05 i just made a new programming language called Healing Serj. It is Cleric-complete. 18:09:05 In D&D game I do the psychic healing myself. 18:09:18 what race 18:09:48 My character is illithid wizard, other character is human fighter 18:10:41 But you have to read the file to learn what happened in this game. Actually it started with a different player who is now out and the new player who is human fighter came in afterward. 18:10:50 It is a different player and a different character. 18:11:23 only if you read my file 18:11:28 What file? 18:11:44 character reference 18:11:59 OK do you have URL (or netcat transfer)? 18:12:23 do you have google account? 18:12:26 No. 18:12:42 oh 18:13:03 the file currently only exists as a google doc and it is constantly changing 18:13:15 -!- Phantom_Hoover has joined. 18:13:36 Maybe you can do netcat transfer of the current version? 18:14:06 not from my phone. 18:14:09 hmm 18:14:14 i just had idea. 18:14:59 I would prefer a text file rather than a Google Docs file anyways 18:15:10 me too 18:15:15 but i didnt make the thing 18:15:17 But use a different format if it is necessary. 18:16:00 Then put it on your computer and then transfer it to text format, and then host it or upload it to another host or netcat transfer it to me directly. 18:21:12 -!- itidus21 has quit (Ping timeout: 244 seconds). 18:21:18 -!- itidus20 has joined. 18:22:14 i cant download it :/ 18:23:06 Then copy it to the clipboard and paste it. 18:23:28 If that won't work either, retype it or take a screenshot. 18:23:47 (using a camera if necessary) 18:24:19 Doesn't Google Docs allow converting to other formats, though? So why can't it work? 18:25:12 it does but not for mobile 18:26:39 Then transfer it to your desktop computer. 18:28:13 With mine, I am only one changing it, and it is available for public, you can download the .tex and .dvi files (the .dvi may not be up to date) 18:29:11 And in addition you can easily download it by wget or netcat so it is not necessary to use a web browser. 18:30:44 -!- itidus20 has changed nick to itidus21. 18:31:44 i will wait until it is more uptodate and not changing as much 18:34:21 OK. 18:37:48 Do you have Dungeons&Dragons character? What is their name? 18:38:07 My character's name is Iuckqlwviv Kjugobe (I generated at random on my graphing calculator) 18:38:15 yep 18:38:20 but can you pronounce it 18:38:34 mine is an elven mage named lola 18:39:37 Yes I can pronounce it, but some people find it difficult. 18:40:29 are you a fighter, a social, or a thinker. 18:40:34 mymoney's on thinker 18:40:43 Yes. 18:41:09 you like puzzles and traps and mysteries 18:41:13 Yes. 18:41:20 The other player character is fighter. 18:41:25 man i must be psychic 18:41:49 My character is also psychic^Wpsionic. 18:42:07 psichonic 18:42:11 We do both do various things, just mainly my character is thinker and other character is fighter 18:43:26 i meant you as a player, though it doesnt surprise me that your character is just like you 18:43:57 funny, the vulcans think time travel is impossible, but places where "the laws of physics don't apply" are fine 18:44:19 Well, yes, as me as a player is the one thinking about the game mostly. 18:45:18 And my character is not just like me; nor is the other player's character exactly like her, either. 18:45:41 -!- MoALTz has quit (Ping timeout: 246 seconds). 18:53:06 -!- FreeFull has quit (Remote host closed the connection). 19:00:31 -!- ogrom has quit (Quit: Left). 19:04:36 -!- FreeFull has joined. 19:07:22 OK, you tell me when you have the file I will look if you want me to. 19:20:53 Are there tests for pseudorandom number generators programmed in 6502 machine code? 19:21:00 http://img.reversegif.com/14022.gif 19:22:12 idgi 19:28:22 -!- AnotherTest has quit (Quit: Leaving.). 19:28:25 -!- atriq has quit (Ping timeout: 252 seconds). 19:34:30 What is a good simple pseudorandom number generator usable to shuffle a deck of cards which can be programmed in a 6502 machine code? 19:35:25 http://forums.wolfram.com/mathgroup/archive/2003/Feb/msg00456.html here is some discussion of simple PRNGs 19:36:12 MWC256 is pretty good but it involves 32-bit math and wants 1kB of state 19:37:31 -!- MoALTz has joined. 19:42:13 you could capture the RNG's output from an emulator and then run it through http://www.phy.duke.edu/~rgb/General/dieharder.php 19:45:12 This program is for Famicom and should make one using 8-bit math and not as much RAM; MMC5 can be used for multiplication if it helps, another idea is the microphone but that is only Japanese systems and doesn't generally work with emulators, and I don't know how sensitive it is anyways. 19:47:14 hey guys, if I'm willing to learn a (non-esoteric) concurrent programming language, what would you recommand? I thought maybe occam-pi but I would be glad to have a second opinion 19:48:57 zzo38: Also won't work on all real Famicoms. 19:49:26 zzo38: The AV Famicom didn't have a microphone, instead opting for NES controller ports. 19:49:35 I do not think the microphone is sensitive enough anyways as far as I know. 19:49:48 (the AV Famicom is the Japanese version of the top-loading NES) 19:53:50 OK 19:54:08 But yes for those reasons, probably should not use microphone. 19:57:04 For what I am doing I need to shuffle a standard deck of cards, however the ranks are not relevant, only the suits are used. 20:01:29 I wonder if there are other features of the 2A03 audio, of PPU, and/or of common mappers, which may be used to help random numbers. 20:04:49 most games from way back then used user interaction delays as sources of randomness 20:05:26 like "fifteen frames between loading this menu and the user pressing a key" 20:06:09 I did intend to use that as the seed for the random number generator. 20:07:12 maybe you can use this http://codebase64.org/doku.php?id=base:small_fast_8-bit_prng 20:07:20 -!- Vorpal_ has quit (Read error: Operation timed out). 20:07:21 -!- ais523 has joined. 20:17:36 Arc_Koen: erlang or haskell perhaps? (from hearsay really. the latter is my favorite PL but i don't really use the concurrency parts.) 20:18:02 oh, I did not even realize haskell had concurrent programming 20:18:29 pure functionalness really helps make some aspects of it easier (i hear :) ) 20:18:47 easier to learn? 20:18:55 Arc_Koen: I'm told it's really good, but I've not played with it enough. 20:19:03 no, easier not to mess up with deadlocks and the like 20:20:03 I'll look into it, thank you 20:21:33 erlang afaik has a single concurrency model based on message passing and automatic distribution. haskell has a lot of different possibilities but mostly for single multicore chip work (there is distribution research but it's not really part of normal haskell yet i think) 20:22:06 ghc haskell has both concurrent IO actions and parallel evaluation of pure function applications 20:22:11 different constructs for each 20:22:23 and yeah, there isn't much for distributed programming 20:22:29 also the infamous STM monad 20:22:50 people talk about Cloud Haskell as a replacement for Erlang, but it's still research grade as far as I know 20:22:58 Haskell supports the IO monad, the STM monad, and the function monad. 20:23:05 It's all monads, you see. 20:23:07 at least in #haskell they downplay all that "trivial" boring engineering work needed to actually use stuff 20:23:12 hmmmm yes that's what I wasn't attracted by erlang much. I have no use for *actual* distribution - is it possible to use concurrent programming in haskell with more concurrent parts than cores on my computer? 20:23:14 (software transactional memory, where everything that could break the model is disallowed by types) 20:23:25 Arc_Koen: yes, you can easily spawn 1,000,000 threads in GHC 20:23:41 they are lightweight threads which map onto a configurable number of OS threads (usually one per core) 20:23:41 * Sgeo sads at how expensive threads are on the JVM 20:24:07 well that does sound very attractive 20:24:16 oerjan: "is disallowed by types" is a bit silly. 20:24:23 also you can do blocking IO from those million threads, and the GHC runtime translates that into efficient event-based system calls (e.g. select, epoll, kqueue) 20:24:27 It's like saying that everything that does IO is disallowed by types. 20:24:42 so it's pretty sweet 20:24:54 The only thing types do in that case is catch errors early. 20:24:59 i think that new clojure language may also be good for concurrency with encouraged but not enforced pure functionalness, but i haven't looked at it 20:25:36 shachaf: well i was trying to find a phrase that didn't require understanding monads already :) 20:25:48 on the other hand, it's a huge amount of work to learn Haskell well enough to write complicated robust performant programs 20:26:14 It has nothing to do with monads! 20:26:15 a lot of the lore you need to know is poorly documented and basically exists as oral history in #haskell 20:26:18 and #haskell sucks 20:26:54 Is that really true? 20:26:56 The first sentence, I mean. 20:27:01 i think so 20:27:14 There are a lot of Haskell people who don't use #haskell at all... 20:27:26 yeah i don't know how they get by 20:27:40 honestly there's not that much overlap between #haskell users and core Haskell library developers 20:27:48 or people who are using Haskell in real world applications 20:27:50 as far as i can tell 20:27:55 so maybe my other claim is bs 20:28:07 * shachaf won't dispute the second one. 20:28:13 when i was doing more haskell i felt like a lot of the things I knew, i couldn't find any specific reference for 20:28:19 much less a top-level "Here are the things you should learn" document 20:28:29 as far as performance, understanding evaluation model, GHC tricks, etc 20:28:31 That's true. 20:28:41 You should write a Haskell book! 20:28:44 no 20:28:59 Why can I do (!! 4) [0..10] but not (!! 4 [0..10]) 20:29:13 > (!! 4 [0..10]) 20:29:14 Overlapping instances for GHC.Show.Show ([a] -> a) 20:29:14 arising from a use of... 20:29:14 I'm starting to wonder if there's a similar "need to be in the IRC channel" issue with Clojure 20:29:26 > (!! 4 [0..10]) "hello monqy" 20:29:27 'o' 20:29:28 FreeFull: that parses as (!! (4 [0..10])) 20:29:36 * shachaf shouldn't do that. :-( 20:29:43 I don't do it in #haskell, at least. 20:29:50 fuck lambdabot 20:30:20 a lot of the lore you need to know is poorly documented and basically exists as oral history in #haskell <-- what about stackoverflow? 20:30:24 yeah maybe 20:32:32 kmc: Should I do https://www.coursera.org/course/crypto ? 20:32:46 sure 20:32:54 Wait, why does (!! 4) [0..10] work when the type is [a] -> Int -> a 20:33:20 (`operator` arg) = (\x -> x `operator` arg) 20:33:23 FreeFull: (!! 4) is syntactical sugar for \x -> x !! 4 20:33:50 Oh, because !! is an infix operator 20:33:54 yes 20:34:04 (+ x) and (x +) are special syntactic forms 20:34:07 for any infix operator + 20:34:09 they are called "sections" 20:34:28 _except_ - , for which (- x) doesn't work (it gives negation instead. 20:34:30 ) 20:34:39 > (- 4) 20:34:40 -4 20:35:08 ((-) 4) 20:35:11 > ((-) 4) 20:35:12 Overlapping instances for GHC.Show.Show (t -> t) 20:35:12 arising from a use of `... 20:35:18 > ((-) 4) 4 20:35:19 0 20:35:45 You could've picked *any* number other than 4 for the second argument... 20:35:50 > ((-) 4) 3 20:35:51 1 20:35:57 > (4 -) 3 20:35:58 1 20:36:00 > (subtract 4) 3 20:36:02 -1 20:36:08 () deinfixes 20:36:11 FreeFull: you shouldn't actually try to learn from lambdabot 20:36:19 it implements a bizarre variant of Haskell with a bunch of nonstandard definitions 20:36:23 FreeFull: also shachaf's complaint and kmc's swearing above is because lambdabot has a special instance which makes it able to treat functions as numbers. which means some of the examples work differently 20:36:23 kmc: I mostly use ghci 20:36:27 for the amusement of the regulars in #haskell 20:36:38 kmc: stop making my point a half second before i finish it :) 20:36:44 apparently they find it entertaining to confuse beginners, or something 20:36:50 oerjan: What sort of function will it treat as a number? 20:37:10 I think oerjan means "numbers as functions". 20:37:14 numeric literals in Haskell are overloaded 20:37:18 4 has type (Num a) => a 20:37:25 it can take on any type in the typeclass Num 20:37:38 and lambdabot has an instance (Num a) => Num (b -> a) 20:37:52 :t 4 :: Char -> Int 20:37:53 Char -> Int 20:38:01 which is equavalent to (const 4) i.e. \x -> 4 20:38:02 kmc: well that would explain why the chatter count in haskell is about 950, c++ is about 650, and c is about 450 ... on freenode 20:38:04 > 4 5 20:38:05 4 20:38:16 > 4 "sucks" 20:38:17 4 20:38:28 then addition is like (f + g) x = (f x) + (g x) 20:38:29 one could naively assume that haskell was the preferred language of freenode chatters 20:38:30 and so forth 20:38:34 Why? 20:38:38 > (4 + 5) "foo" 20:38:39 9 20:38:40 FreeFull: why which 20:38:45 Why does lambdabot do that 20:38:59 because the regulars in #haskell find it amusing to play with these ideas 20:39:09 it's not really fair for me to say they find it amusing to confuse beginners 20:39:13 but it certainly does confuse beginners 20:39:23 and nobody much seems to care 20:39:31 Don't beginners use ghci though =P 20:39:31 #haskell is full of people who talk past each other about what's the best way to teach Haskell 20:39:35 You care, at least. 20:39:36 nothing ever changes, nobody writes anything down 20:39:46 yeah but I quit #haskell 20:39:53 after making some attempts to get people to fix things 20:40:03 FreeFull: a lot of them join #haskell for help 20:40:07 i popped in just to check the count 20:40:10 FreeFull: yes, but sometimes beginners ask haskell questions in irc and then it's nice to have lambdabot to demonstrate 20:40:11 and then someone tries to use lambdabot to help them 20:40:16 and then lambdabot does something confusing 20:40:27 and five people try to explain the confusing thing all at once 20:40:27 943 or so.... thats really quite a packed channel 20:40:33 and then they start arguing about which explanation is better 20:40:41 Sounds funny 20:40:44 itidus21: you can check the count with /list #haskell 20:40:46 But unhelpful 20:40:50 humm 20:40:51 it gets old ;P 20:41:56 Great, I did /list kmc and now it's listing all the channels 20:42:16 ok i guess /list can be a _little_ dangerous >:) 20:42:33 Also I somehow didn't get flooded off by the /list 20:43:16 it is possible freenode is a little more careful about sending /list responses 20:44:41 it seems to me that it is simply ignoring the kmc argument, which seems singularly unhelpful 20:45:35 ignoring the kmc argument, just like #haskell 20:45:46 THAT EXPLAINS EVERYTHING! 20:47:41 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 20:48:21 eek lag 20:50:06 maybe it was a side effect of me using /rawquote, it disappeared when i did a /whois 20:50:36 (as in, irssi registered lag but there wasn't _really_ any...) 20:52:03 hm no, it is happening again. it's because /rawquote swallows pings 20:52:53 * oerjan thinks /rawquote is wrong but can never remember the correct command to send things directly to the server from irssi (it is _not_ /raw) 20:56:19 -!- oerjan has quit (Remote host closed the connection). 20:56:26 -!- oerjan has joined. 20:57:04 so /rawquote swallowed a ping reply from the server, causing irssi to timeout :P 20:57:26 (it was /quote btw but i had to google it) 20:57:37 irssi's help is _not_ good. 20:58:00 olsner: so, have you? :) 20:58:03 #python has more users than #haskell curiously 20:59:43 testing 20:59:43 -!- oerjan has set topic: I HAVE NOW | Official channel of ESME | ESME is the best programming language. Why have you abandoned ESME? | Do not fret, ESME can forgive you. Give yourself freely to ESME. | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki. 21:00:35 i notice ESME is not _actually_ all caps but it feels like it should be 21:06:06 -!- MoALTz has quit (Ping timeout: 264 seconds). 21:07:25 -!- copumpkin has joined. 21:12:23 http://fd-imaging.com/the-worlds-tiniest-tiff-image/ 21:13:16 nice 21:13:29 reminds me of http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html 21:13:34 which is a classic 21:13:38 :-) 21:15:43 Phantom_Hoover, update 21:15:51 And tswett 21:16:00 And sorry about not mentioning updates before 21:17:07 ah, good old sgeobot 21:18:59 MOST SHOCKING TWIST YET 21:27:37 twisted elecric cords 21:27:39 *+t 21:27:47 *+h 21:27:51 wait, no 21:28:07 *-*+h 21:33:33 -!- KingOfKarlsruhe has joined. 21:36:23 mgifos 21:37:11 At least on my computer the command is /RAW to send directly to the server, it does no further processing and only sends it directly to server; if you want CRLF you have to add that yourself too. (If you don't want this then you don't use /RAW) 21:38:31 I don't know what they are in irssi and other programs. 21:39:48 i think /raw is common, and it's annoying that irssi calls it something else 21:40:12 /quote in irssi 21:40:19 But it does send the CRLF 21:40:34 FreeFull: um yes it does. /rawquote doesn't, however. 21:40:52 which is how i got disconnected a while ago 21:41:20 O, so that is why it doesn't work. 21:42:26 specifically i got back the following answer after doing /rawquote help 21:42:29 22:51 helpPING Unknown command 21:44:22 which means irssi never got back an answer to its automatic PING, which means it timed out. despite lots of other lines flowing back and forth. 21:56:32 oerjan: My irssi doesn't have /rawquote 21:56:41 Are you sure it's not part of a script 22:01:26 it's listed with /help, but it has no help itself 22:03:43 "We decided to remove /rawquote because it serves no purpose." 22:04:06 so my irssi is a little old then 22:04:40 0.8.12 22:12:12 So, so far this year, two IRC channels I'm in have experienced significant drama 22:12:16 I wonder when #esoteric's due 22:12:30 Yesterday. 22:12:31 * Arc_Koen chokes 22:12:42 -!- impomatic has joined. 22:16:40 Arc_Koen: sorry, not dramatic enough 22:17:20 * oerjan chokes, then explodes 22:17:39 It looks in this Sorcery Card game, you could instantly win if you are dealt the XXI XX XIX XVIII XVII XVI of trumps, since you can deal more damage than their starting hit points are. 22:20:30 I wonder if you could evolve levels of a game with a fitness function that leads to the player having a certain amount of trouble, no more, no less. 22:20:44 Try. 22:20:58 Such that as the player improves, the levels will on average get harder, and if the player starts slipping, they start getting easier. 22:21:18 Although, since it's such a random walk, it's likely not going to feel like that over the short term 22:21:26 I don't really like that; they should get harder by selecting a difficulty setting instead. 22:21:46 (Of course one of the difficulty settings could be, automatic.) 22:27:31 oerjan: you are too fast to be dramatic! if i'm only choking there will be that long, painful time when i'm not dead yet but people feel helpless and don't know how to save me. besides, many people enjoy explosions, so where's the drama? 22:29:06 it'sa gritty action-o-drama! 22:31:09 I wonder if you could evolve levels of a game with a fitness function that leads to the player having a certain amount of trouble, no more, no less. <-- i have a theory that's how the real world works. also someone decrease my level _just_ a tad, please? 22:33:20 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 15.0.1/20120905151427]). 22:43:18 -!- nooga has quit (Ping timeout: 264 seconds). 22:50:09 -!- Phantom_Hoover has quit (Quit: Leaving). 22:53:31 zra recursive acronym... 23:01:58 i was thinking about evolution in gaming 23:10:30 -!- Jafet has quit (Quit: Leaving.). 23:14:24 -!- heroux has quit (*.net *.split). 23:14:24 -!- Lumpio- has quit (*.net *.split). 23:14:24 -!- SimonRC has quit (*.net *.split). 23:15:29 -!- heroux has joined. 23:15:29 -!- Lumpio- has joined. 23:15:29 -!- SimonRC has joined. 23:33:02 -!- Arc_Koen has quit (Quit: Are you telling me you can build a time machine but you can't cook a cheese soufflé? You've got your priorities all wrong!). 23:57:11 Is there something wrong with this? x@(Surreal l _) <= y@(Surreal _ r) = null (filter (y <=) l) && null (filter (<= x) r);