00:00:51 DES was probably less pathetic in the 1970s. 00:01:18 yes 00:01:37 i don't know why MIT can't switch now 00:01:38 kmc, Debian keys produced with that bug, would trying all possible keys be considered brute-force? 00:02:21 probably they have some legacy system that only does DES but i don't know what or how important it is 00:02:42 i think SIPB should force the issue by buying a DES cracker; they have too much money anyway 00:02:53 Sgeo: not for the purposes of my statement 00:02:57 the screwup there is Debian's patch 00:03:27 Does a device that brute-forces DES in a day really cost $10,000? 00:04:02 cheater__: Yesterday? But the full moon has not yet occurred. 00:05:36 looked full enough. 00:07:40 It isn't quite full. 00:09:22 shachaf: it's hard to find prices, but some places say $10k 00:09:30 i believe it anyway 00:09:35 -!- itidus22 has joined. 00:12:13 I mean that I would've expected it to be less. 00:12:20 But I don't have much of a reference point. 00:12:33 ah 00:12:34 (Other than "$250,000 in 1999, apparently".) 00:12:52 If you have a horoscope, you can see when the full moon is. There should be a line (called an aspect) between the sun and moon. If this line passes through the center of the chart, then it is full moon. The moon and sun move counterclockwise relative to the signs; the moon moves much faster. So depending on which side the aspect line misses the center, you can see the before/after full moon. 00:13:01 -!- itidus20 has quit (Ping timeout: 276 seconds). 00:13:07 yeah 00:13:11 EFF's thingy used custom chips 00:14:11 zzo38: is there a bare eye way to discern a full and not-quite-full moon? 00:14:40 cheater__: I don't know if the difference is enough to see by a bare eye; you might need a telescope. 00:15:14 ok 00:15:36 thx 00:25:38 -!- itidus22 has quit (Ping timeout: 240 seconds). 00:28:55 -!- itidus21 has joined. 00:29:23 -!- MoALTz has joined. 00:31:45 phantom_hoover: URL, please. 00:31:54 Oh, he left. 00:32:25 hion 00:32:44 hachaf 00:35:29 You could use the UNIX "phase of moon" program if you have it, to tell you phase of moon. You could also use a program such as Astrolog to tell you the phase of moon and many more things (if you can understand what everything means). Most calendars also have phase of moon but those only indicate the date and not the time of day, so it may not be precise enough. 00:36:28 (Note: Astrolog has the ability to print calendars, but you cannot plot any other data on these calendars; only the month, days of week, and day numbers are being displayed!) 00:37:05 thion 00:37:56 heegan 00:52:12 -!- nortti has quit (Ping timeout: 272 seconds). 00:55:49 -!- Patashu has quit (Ping timeout: 248 seconds). 00:57:52 -!- pikhq_ has joined. 01:01:24 -!- pikhq has quit (Ping timeout: 245 seconds). 01:18:05 -!- Patashu has joined. 01:27:56 -!- jfischoff has joined. 01:32:30 -!- PatashuXantheres has joined. 01:35:20 -!- Patashu has quit (Ping timeout: 255 seconds). 02:05:11 What is the bird for (\f g x -> f (g x) (g x))? 02:06:17 Rooster. 02:06:58 joke. 02:07:09 good joke 02:07:54 Rooster is only going to make some of us hungry. 02:14:31 I made it so that Warbler is a type for endomorphisms of any category and Starling is a type for endomorphisms of a Kleisli category of a monad on any category. 02:14:58 -!- calamari has joined. 02:21:15 -!- PatashuXantheres has quit (Ping timeout: 255 seconds). 02:23:16 `log [e]xtend every extra extreme 02:23:49 No output. 02:23:52 `log [e]xtend every extra extreme 02:24:07 2012-04-26.txt:01:24:11: and finally, there is a game named Extend Every Extra, and as google told me another one named Extend Every Extra Extreme. And another game named Kingdom Hearts 3D subtitled Dream Drop Distance 02:27:42 -!- Patashu has joined. 02:48:57 Do you agree that the whole house system is stupid? 03:01:48 -!- jfischoff has quit (Quit: jfischoff). 03:23:29 s/house //, yeah 03:24:25 -!- jfischoff has joined. 03:29:02 OK 03:54:36 -!- azaq23 has quit (Quit: Leaving.). 04:06:10 -!- Taneb has joined. 04:06:12 Hello 04:12:48 OK 04:13:31 The time is not a time I like 04:13:42 Why? 04:13:57 Because it's inbetween 3 and 6 AM 04:14:40 What house is the sun at? 04:15:02 Number 14? 04:15:11 I don't actually know what that means 04:15:22 No, I mean the houses on a horoscope; they only go up to 12. 04:15:50 Well, I have no idea 04:16:21 (Houses numbered 1 to 6 are below the horizon; numbered 7 to 12 are above the horizon. The sun is at the cusp of the 10th house at solar noon.) 04:17:02 It looks like twilight at the moment? 04:17:13 But it's been twilight for a while 04:21:53 On my computer I can compute those things with a few different house systems. In my location, sun is in 6th house. 04:22:25 For twilight, maybe the sun is in first house? 04:25:02 If I give you my co-ordinates, will that help? 04:25:22 Yes. 04:25:51 54.9695 N, 2.0842 W 04:26:06 (approximately) 04:26:36 That is close enough 04:26:56 Yes the sun is in first house in that location 04:26:56 The approximation is in accuracy, not precision 04:26:58 Okay 04:27:23 It is still close enough for most purposes. 04:28:22 Could I have just said "55N, 2W"? 04:28:59 Taneb: The program I have expects two decimal places, and the coordinates of a city in a map should be close enough. 04:29:12 Okay 04:38:40 -!- jfischoff has quit (Quit: jfischoff). 04:38:58 i was pondering yesterday that it would be interesting to me to have a number that was either: integer a + 0, or integer a + 0 > b > 1 .. written like 3 or 3.f where f stood for fraction 04:40:09 since i will get told off no matter which incorrect notation i use, i tried my best 04:41:05 so, normally i might have 4 numbers: 2, 5.3, 7, 3.11 but i would now have them as: 2, 5.f, 7, 3.f 04:41:36 or probably even leaving the decimal off altogether 04:42:26 Some house systems are Placidus, Campanus, and Regiomontanus. 04:43:11 (There is also Whole, but Whole house system is very stupid so don't use it.) 04:52:28 -!- jfischoff has joined. 05:34:18 -!- jfischoff has quit (Quit: jfischoff). 05:34:24 This week’s electronics lectures have a promising start: http://imm.io/oobP 05:50:49 zzo38: have you ever played stratego? 05:58:13 So. There's a way to stick 364 bytes in a Twitter message. 05:58:15 How, you ask? 05:58:24 Easy. Encode base 2^21-1. 05:59:04 Twitter's message limit is in codepoints, not bytes. 05:59:18 https://blogs.oracle.com/ksplice/entry/the_1st_international_longest_tweet 06:00:45 Oh, dear, you can use UTF-8 that doesn't map to code points. 06:01:22 I would have thought it would be characters, not codepoints 06:01:37 Taneb: It's not. If it's characters East Asia is screwed. 06:01:46 because they would perform normalization server-side? 06:01:54 kmc: Kay, true. 06:01:54 that's plausible but not what I would expect 06:02:16 quintopia: I have played some similar things. 06:02:24 zzo38: kriegsspiel? 06:02:48 how many copies of U+FDFA 'ARABIC LIGATURE SALLALLAHOU ALAYHE WASALLAM' can you tweet :) 06:03:11 that one probably doesn't normalize out to basic letters 06:03:19 under whatever twitter would use 06:03:29 So, the upper bound is... 538 bytes? 06:03:37 but there are some situations where single codepoints will expand dramatically 06:04:52 pikhq_: is there a way to print a message longer than usual so that it will display correctly on the twitter site? 06:05:13 lb((2^31-1)^139)/8 that is. 06:06:20 quintopia: I have once played a chess variant known as kriegspiel. 06:06:33 zzo38: how hard was it? did you win? 06:06:56 Of course, if their UTF-8 parsing is still more naive you might be able to get more in. 06:06:58 I forget. 06:07:15 Maybe they let you use an unbound number of continuation bytes? :) 06:08:11 But I also know about Luzhanqi (which is a Chinese kind of Stratego game) 06:13:55 -!- asiekierka has joined. 06:18:34 "Assembling service pack", says Windows. 06:18:47 I like to think they write it in assembly and distribute the source code. 06:39:34 -!- TeruFSX has quit (Ping timeout: 244 seconds). 06:40:03 -!- jfischoff has joined. 06:45:34 zzo38: i think one of the biggest problems in game design is that sometimes people think there are rules to follow they can rely on, and other times people think there are no rules 06:47:49 i'll have a second shot at saying that: game designers are subject to the following wiki cut and paste: 06:47:53 "At a group or community level, the conventional levels of significance or salience are slowly embedded in the sign systems and culture, and they cannot arbitrarily be changed." 06:50:31 Like I still don't understand why platform games are fun, but due to convention it is difficult to think about 2d games in other ways. 06:53:29 5 fucking hours, and Windows is installed. 06:53:40 And I still don't have a C compiler! 06:55:17 -!- Slereah_ has quit (Ping timeout: 248 seconds). 06:55:52 -!- Slereah has joined. 07:01:34 itidus21: The rules of game design are whatever you design the rules to be. And then, if you don't like it, adjust it until it is better. 07:02:11 pikhq_: Yes, that is the problem of Windows; it lacks many important programs as standard. 07:02:53 zzo38: Not the only one. 07:03:06 Probably not even the most significant problem. 07:03:20 pikhq_: Yes; there are many other problems too. 07:03:22 Probably the most significant problem is how stupifyingly hard it is to dev for. 07:03:58 yeah, even though free tools exist, a lot of them don't work as well as MSVC 07:04:02 like for anything OpenGL 07:04:16 if you're just doing basic stuff though, Dev-C++ is a pretty easy way to get mingw set up 07:04:20 and an okay IDE 07:04:27 kmc: And MSVC itself doesn't work tolerably for C. 07:04:34 nb: all my information about windows dev is 5+ years out of date 07:04:36 pikhq_: oh? 07:04:44 kmc: They last touched it in the 90s. 07:04:57 true, they don't even implement all of C99 07:04:57 Besides which, unless you're going to use a higher-level language, you're stuck with the Win32 API. 07:05:11 Which is evidence in favor of the nonexistence of God. 07:05:25 They don't even implement C90 perfectly. 07:05:39 from what i recall, Win32 API is pretty bad, but POSIX is no picnic either 07:05:42 Though admittedly, that's just because of a couple weird edge cases. 07:06:18 POSIX is rough. Win32 is designed by monkeys on typewriters. 07:06:34 i hear the Windows kernel interface is pretty nice, if undocumented 07:06:47 itidus21: In addition, I do not completely understand that wiki cut and paste. 07:06:47 Win32 contains the letter s a few dozen times, and some monkey piss? 07:06:58 because unlike Linux they break compatibility whenever they like 07:07:15 Linux has a *lot* of syscalls which are special cases of other syscalls 07:07:50 int CALLBACK WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) 07:08:09 what does CALLBACK do? 07:08:10 How do you make the *entry point itself* seem horrible? 07:08:24 that's not so horrible 07:08:30 kmc: It's one of the calling convention specifiers. 07:08:36 which one, though 07:09:50 -!- jfischoff has quit (Quit: jfischoff). 07:10:23 -!- asiekierka has quit (Read error: Connection reset by peer). 07:10:49 -!- asiekierka has joined. 07:11:00 Dammit this is impossibly hard to find. 07:11:24 -!- Patashu has quit (Ping timeout: 245 seconds). 07:12:20 It's odd that one of C's main criticisms has became standard in many programming languages 07:12:24 Namely, = vs == 07:13:28 that's not one of C's main criticisms 07:13:51 Worse still, just by not using those *stupid* typedefs it could look nicer: int WinMain(void *h_instance, void *h_previnstance, char *cmdline, int cmd_show) 07:14:49 Shame that junk's there because Win16. 07:15:20 kmc, it's the criticism of C that I hear most often 07:15:45 Where it would've been more like int WinMain(void __long * h_instance, void __long *h_previnstance, char __long *cmdline int cmd_show) 07:16:57 Also, some moron liked his Hungarian. 07:20:38 hikhq_ 07:21:28 Hi. 07:21:43 Taneb: that's because people are idiots and can't look past trivial syntactic matters to the things which actually make a language good or bad 07:22:22 also it's easy to have an opinion about syntax, and there's no objective right/wrong answer 07:22:33 Except we can all agree Malbolge is bad. 07:22:48 Anything less than Malbolge, though? Yeaaah. 07:23:13 if you voice an opinion about semantics or types or implementation or security, someone can actually refute your claim with objective fact 07:23:49 kmc: In some cases it might depend what kind of opinion they are, too? 07:23:57 (Like, I mean, more specific than what you said) 07:23:59 though the opposite extreme is dumb as well 07:24:21 programming language design is largely a user interface problem, and syntax *is* important 07:25:10 Just easy to bikeshed on. 07:25:21 Though, any UI problem is. 07:26:27 -!- Slereah has quit (Remote host closed the connection). 07:26:59 yeah 07:29:31 -!- Slereah has joined. 07:29:41 i think the spelling of = and == is probably below the level that makes a big difference even from a UI / UX perspective 07:30:11 stuff like having consistent syntax, uncluttered syntax, that's a big deal 07:30:26 = and == are conventional enough by now that I don't really care 07:30:42 = versus <- causes loads of confusion in Haskell, but it's not like there's an existing convention to appeal to 07:30:55 =/== bugs can be a big deal when you can use = in expressions like in C 07:31:11 /= in Haskell is a bit weirder. 07:31:34 monqy: true, but it's easy enough for a compiler to warn about those 07:31:38 kmc: How does = versus <- cause confusion in Haskell? 07:32:04 zzo38: they're both sort of like assignment in traditional imperative languages, but neither is actually that 07:32:19 the confusion is not actually syntactic 07:32:47 the confusion is that beginners don't have the concept of "let binding" and "monadic sequencing" 07:32:55 but it's phrased as "what's the difference between = and <-" 07:32:57 does it ever really help to overload operators when bugs will be caused by the differences? 07:33:05 Just that the syntax happens to look like the syntax for completely different semantics. 07:33:18 Though in-and-of-itself = and <- are quite reasonable choices. 07:33:21 kmc: The problem is solved by not using do-notation and list-comprehensions? 07:33:28 zzo38: maybe 07:33:37 But = just means to specify the definition of something 07:33:39 you still have to explain how = in let/where is not an assignment 07:33:55 also in practice people will see tons of code that uses "do" and list comprehensions 07:34:00 you can't just ignore them 07:34:09 in general, does not knowing what any piece of a program does always lead to bugs :D 07:34:11 itidus21: i recommend writing code without bugs instead 07:34:33 I recommend writing in /bin/cat. 07:34:47 that language has a simple quine 07:34:56 or, in other words, does writing code with side effects always result in bugs? 07:35:17 So does shell. 07:35:23 kmc: Sure, a lot of codes will use them; but you do not have to use them even if another code does. 07:35:43 zzo38: but you have to understand them if you want to read existing haskell code 07:35:43 crackers never seem to run out of exploits 07:35:48 including any of the popular books 07:35:55 and that's really essential if you want to learn the language 07:36:02 (unless the null file happens to be a valid executable on your system) 07:36:22 a "cracker" is someone who breaks into computers, not to be confused with a "hacker", which is someone who cares a lot about what Paul Graham and ESR write 07:37:20 kmc: Yes, that is right; you should understand the features of existing programs. 07:37:42 but do hackers call vulnerabilities in programs "exploits", and write code which makes use of said "exploits"? 07:38:44 itidus21: I suppose it might sometimes be the case; but features of the program might not necessarily be security vulnerabilities 07:38:46 by which i mean, a bug which only matters when someone intentionally invokes it 07:39:51 i imagine that you wouldn't get many bugs in pure functional code 07:40:02 itidus21: you'd fit right in in #haskell 07:40:12 you should go there and ask them "does writing code with side effects always result in bugs?" 07:40:13 I don't really know if such things really are bugs which only matters when someone intentionally invokes it 07:41:14 verily, one might say the maintenance part of the software development lifecycle is due to side-effects 07:41:30 Verily. 07:41:58 Clearly there are no bugs in the software that is never ran. 07:42:16 itidus21: basically, if your program typechecks, it's fairly certain to be doing what it's supposed to do 07:42:26 * pikhq_ for i in /bin/* /usr/bin/*;do ln -sf /dev/null $i;done 07:42:50 Knuth once said "Beware of bugs in the following program; I have only proven it correct, not tried it" 07:42:58 especially functions of type [Char] -> [Char]. 07:43:14 Yeah! What could that possibly do? 07:43:37 well theres a malware side-effect 07:43:39 zzo38: *proved 07:43:45 Clearly it can't be anything *but* a perfectly correct C-to-Brainfuck compiler. 07:43:49 itidus21: the bonzy buddy theorem, yes. 07:43:53 bonzi? 07:43:56 it installs a rootkit 07:43:58 pikhq_: Well, it is certainly wrong 07:44:00 pikhq_: there you go 07:44:09 somewhere between [Char] and [Char] 07:44:56 itidus21: That is why they have Safe Haskell 07:45:20 So that you cannot install a rootkit somewhere between [Char] and [Char] 07:45:23 what if someone calls unsafeExecuteBonziBuddyExe 07:45:38 in c (which is basically all i know) char stuff(char a) { install_rootkit(); return a; } >:-) 07:45:51 unsafeExecuteBonziBuddyExe :: () -> () 07:46:05 -!- monqy has left. 07:46:12 oops 07:46:14 bonqy 07:46:22 stuff = unsafePerformIO install_rootkit `seq` id 07:46:23 There's no channel like #esoteric. 07:47:06 Oh dear. 07:47:19 Jamie Oliver and Steven Gerrard have joined forces. 07:47:23 This cannot bode well. 07:47:27 have they joined bodies? 07:47:29 itidus21: Yes, you can od that, but even in C, you could have the operating system deal with what you are doing such as having things to sandbox the program or to trace system calls or whatever 07:47:56 who are these people 07:48:34 BBC News‎ - 6 hours ago 07:48:35 Celebrity chef Jamie Oliver and England footballer Steven Gerrard are calling on the government to fight obesity through cookery teaching in ... 07:48:37 first hit 07:48:38 google it 07:48:41 "what's google" 07:48:58 google is a search engine which you access with the URL http://www.google.com 07:49:12 worse c code might be .. char add(char a, char b) {unsigned int c,d,e; c=(unsigned int)a; b=(unsigned int)d; e=c+d; a=(char)e; return a; } 07:49:21 kmc: What would you think, my opinion that such features of Haskell such as do-notation and so on should be macros rather than built-in; what would you think? 07:49:30 that's not obfuscated 07:49:44 zzo38: i would like that 07:49:53 i'd like to have a macro system powerful enough to do these things 07:49:57 itidus21: Why, that's isomorphic to the Haskell code "foo = unsafeLaunchTheMissiles"! 07:49:58 as long as it's not also terrible 07:50:15 Oh, wait, no. 07:50:25 I'm stupid: all variables actually do get initialised there. 07:50:28 i was at a job interview last wednesday, and they gave me fizzbuzz, i solved it by concatenating strings, and outputting it in the end. it was argued that use of a variable to hold the final output string was obfuscation and the code became unmanageable. 07:50:33 That's merely bad. 07:50:36 int main() { printf((char*) 0xGOATSE); } 07:50:44 pikhq_: What about d? 07:50:45 kmc: Myself too, it is why I wanted to make up the working group for new "Ibtlfmm" programming language, to make these and other features; perhaps we can help 07:50:52 what's it stand for? 07:50:54 shachaf: Oh, blah, sure enough. 07:50:55 kmc: are you able to solve the fizzbuzz problem 07:50:58 pikhq_: ya.. the main problem with it is the function being named add 07:51:06 kmc: I would think that is not a valid C code, it won't compile, isn't it? 07:51:07 shachaf: Why, that *is* identical to unsafeLaunchTheMissiles. 07:51:13 kmc: it is a very prominent problem in computer science 07:51:21 npikhq_ 07:51:39 cheater__: you should have given them a solution which uses each of the GoF Design Patterns 07:51:42 cheater__: If by "computer science" you mean "interviews that seek to eliminate people with truly gross incompetence". 07:51:57 if they don't get the joke, walk out immediately 07:52:09 kmc++ 07:52:10 if they do get the joke, cockslap them for being smug elitists and walk out 07:52:13 kmc: actually on friday i was considering if you could make a language where Singleton and MVC are the only two basic data structures, and there are some simple operations between them 07:52:18 kmc+=kmc 07:52:18 and if it would be touring-complete 07:52:45 tourette-complete 07:52:48 cheater__: Put something on esolang wiki if you have ideas about that 07:53:03 > map succ "Haskell" 07:53:03 "Ibtlfmm" 07:53:07 cheater__: I hope you don't want to work at that place that gave you fizzbuzz. 07:53:18 kmc = kmc↑↑↑G 07:53:44 kmc: i started to get a hint of it when i learned that the best assembly language programmers basically know all the side effects of all the instructions 07:53:48 I mean, really, giving a shit about it beyond "is this person less qualified than the average janitor?"? 07:53:50 no they wanted to pay much below the standard rate 07:53:54 asking fizzbuzz does not necessarily indicate that they're idiots 07:54:02 but it does indicate that they're casting something of a wide net 07:54:05 also they didn't have AC 07:54:06 kmc: Computable functions are passé. 07:54:18 with full-height glass walls 07:54:20 at which point, i don't really see why assembly language is so valuable 07:54:20 true 07:54:35 which means you end up being a roast chicken in june and august 07:54:46 kmc: Fizzbuzz only really tells me that they happen to have idiots coming in asking for jobs. 07:54:52 kmc = fix (\i → Σ(i)) 07:55:02 ok i should have wrote fix Σ 07:55:03 i don't particularly look forward to sitting in a room with four sweating computer programmers 07:55:05 itidus21: But assembly language can be good for program for only a specific computer; for other programs you shouldn't use assembly language 07:55:06 Well, except they then gave a damn about how it's implemented. 07:55:10 haha cheater__ 07:55:17 kmc: Too mch time away from #haskell! 07:55:20 What's Σ? 07:55:23 pikhq_: i think everyone offering a job has some idiots coming in 07:55:26 busy beaver function 07:55:27 is the one i meant 07:55:31 -!- Slereah has quit (Remote host closed the connection). 07:55:32 perhaps assembly language programs should be specified in terms of the intended side-effects 07:55:39 kmc: can i see your beaver? 07:55:40 Ah. 07:55:44 like .. "i want to swap this flag" 07:55:45 good function 07:55:47 And fizzbuzz is quite handy for finding those idiots. 07:55:54 -!- Slereah has joined. 07:55:55 i'm not sure they're idiots exactly 07:55:59 they also gave me some other thing 07:56:02 they're people trying to scam their way into a job they aren't qualified for 07:56:07 a thousand word text to sort by frequency 07:56:10 they might be perfectly intelligent 07:56:12 Kay, true. 07:56:13 -!- Slereah has quit (Read error: Connection reset by peer). 07:56:28 i imagine a lot of the people caught by fizzbuzz are smarter than average people with useless liberal arts degrees who can't pay rent anymore 07:56:34 -!- Slereah has joined. 07:56:38 Damned shame programming ability *isn't* identical to intelligence. :P 07:56:52 i did this in the simplest way possible and the guy gave me shit that i didn't use some sort of hashing algorithm to keep count during a single iteration 07:56:53 pikhq_: what do you mean? my ability to write PHP code proves I'm a world-class olympic rockstar genius 07:57:07 And, given some of the code I've seen, at best only weakly correlated. :/ 07:57:10 you know you learn a lot about the company in an interview 07:57:17 maybe more than they learn about you 07:57:21 and then i told him that it still wouldn't have been perfect and started describing to him the ultimate way of doing it char by char 07:57:25 using a trie 07:57:28 ℙℍℙ 07:57:30 and he bailed out 07:57:31 basically each assembly language instruction seems to be a set of register manipulations not implied by the mnemonic in question 07:57:38 shachaf: my eyes, i can see forevenr 07:57:53 If you get asked to do a fizzbuzz program at an interview, do they tell you which one's fizz and which one's buzz? 07:58:11 actually they did "hip" and "hop" on mine 07:58:21 What if they're *both* fizz, man? 07:58:33 Then it would be called fizzfizz 07:58:45 And you'd have to do it in Befunge 07:58:47 arguably you get more information because the company interviews more people than the number of places you interview at 07:59:03 and so their interview performance is more of a well-worn expression of their identity 07:59:06 Haneb 07:59:15 i have definitely learned more about them than they about me 07:59:23 it was some privately-owned startup 07:59:42 owned by some aging guy who put his family's savings into it 07:59:59 i'm kind of hoping that next time I need to get a job, I can just be like "look at all this stuff i made [url]" and skip the fizzbuzz stuff 08:00:01 ended up buying a lot of stylish furniture for the office 08:00:14 If you program assembly languages codes you should learn the effect of the instructions. 08:00:14 kmc: for bonus points, make the url fizzbuzz 08:00:20 haha yes 08:00:32 i'll be sure to put up a gratuitous implementation of fizzbuzz too 08:00:35 zzo38: but... i don't like the fact that theres no shortcuts 08:00:52 like a version in AVR assembly which uses self-modifying code 08:01:14 why can't side-effects be friendly ... 08:01:15 fpga 08:01:21 yes 08:01:25 but write it in verilog, not vhdl 08:01:58 -!- Phantom_Hoover has joined. 08:02:25 no, a board made with wire wrapped 7400 series DIP quad NAND gates 08:03:03 dip is for pussies, you want to do bga with a toaster 08:03:03 i kind of want to build a relay computer 08:03:08 no you don't 08:03:09 i wonder if i can get cheap relays somewhere 08:03:14 kmc: Have you ever been asked actual fizzbuzz-style interview questions? 08:03:25 I think that's mostly a myth. 08:03:31 i don't think so 08:03:40 kmc applies for jobs much finer than i 08:04:04 the closest i got was "implement fib(n) recursively, then iteratively, and write the time complexity of each" 08:04:10 in C++ 08:04:16 the first part of which is fizzbuzz level 08:05:07 yeah, i get the stable boy jobs 08:05:32 at the finance company we had a written programming test which everyone got as the first thing in the day 08:05:38 and this was the first question 08:06:16 was it the idea of a Big Swinging Dick 08:06:17 "write this recursively" seems like a strange thing to say, as opposed to "write this". 08:06:29 heh 08:06:32 cheater__: Liar's Poker? 08:06:52 you're adept 08:07:03 yeah after i accepted the job, they sent me a copy of that book 08:07:18 "efficiently" is a reasonable constraint, I guess, but "do this recursively and iteratively" seems dangerously close to a game of "guess what I'm thinking". 08:07:20 did they stick "training manual" on the front cover 08:07:26 haha 08:07:35 did you finish it 08:07:40 yeah 08:07:52 i think the best small companies try to hire through personal connections 08:08:03 no they hire through python.org/jobs 08:08:06 so they know everyone coming in can at least pass fizzbuzz 08:08:10 this doesn't scale so well 08:08:19 if you think so then you've never relied on friends for doing a job 08:08:26 you end up severely disappointed 08:08:39 like you hope each person you get expands your network a bit 08:08:58 everyone at ksplice has pretty much the same friends and so this didn't really work 08:09:06 they do, but the people working for you are for a reason not the people hiring newcomers 08:09:12 it's because they don't know how to 08:09:15 they hired like the entire MIT computing club as interns 08:09:24 It's just a shortcut anyway. 08:09:27 so this guy they'll rave about, he's just as likely to be good as he is to be weak 08:09:45 hm 08:09:47 You don't get more information from it than you would from asking some write-code-which-also-happens-to-be-interesting question, you just get it faster. 08:09:47 explain? 08:09:59 shachaf: that's true 08:10:08 yeah it works in places with very strong compsci communities 08:10:09 but not in usual places 08:10:09 with the usual run of the mill digital carpenters 08:10:39 shachaf: actually we moved to an online programming test which they could take before even the phone screen 08:11:04 @ping 08:11:04 pong 08:11:09 which theoretically saved a lot of time by going asynchronous 08:11:22 in a place where people see computer programming as just a job, they'll be less likely to form connections based on the quality of someone's understanding 08:11:28 the pecking order is decided by other things 08:11:36 you can easily cheat on an online test, but it only wastes their time and ours 08:11:53 in a place like a good university everyone will be looking up to the best h5x4rz 08:12:06 h sexars 08:12:15 kmc: If your plan is to cheat your way through the whole thing somehow, you'll probably start with the online test. 08:12:19 "Joy of joys" now I'm getting junk SMS 08:12:22 hsex is like sex but better because it's in haskell 08:12:28 shachaf: true 08:12:39 Worse, it's phishing junk SMS. 08:12:50 From shady-ass companies apparently in Panama 08:13:01 pikhq_, at least you can pretend to have friends! 08:13:03 pikhq_: WAL-MART CUSTOMER: U have won a free $100 gift card! 08:13:17 speaking of U 08:13:18 shachaf: BESTBUY, actually. 08:13:21 i should get going 08:13:54 And another one saying "we are giving away free overstock iPad 2's" 08:14:03 it was nice chatting with you all, pikhq_ shachaf and itidus21 and kmc and Taneb and zzo38 08:14:15 nice chatting with you cheater__ 08:14:24 we should definitely arrange a repeat 08:14:31 you know where to find me :) 08:14:31 i'll have my PA call your PA 08:14:45 * shachaf wonders where to find kmc 08:14:58 shachaf: Mid-Cambridge, obviously 08:15:03 Bye, cheater__ 08:15:05 berkeley basement dungeons 08:15:14 bbl 08:15:29 Nice place, Mid-Cambridge. 08:15:57 I should move there. 08:16:46 you could work for Ksploracle 08:16:52 or ITAoogle 08:17:06 I thought big companies were evil. 08:17:19 or Akamanotboughtbygooglejustyet 08:17:31 maybe 08:17:33 Did the company interview ever ask you questions, such as, how much garlic do you put in your tomato sauce? 08:17:40 not i 08:17:46 -!- lexande has joined. 08:17:50 lexande! 08:17:52 hexande 08:18:05 And, how many different colors of socks do you own? 08:18:07 octande 08:18:46 all my socks are gray/grey and need to be washed 08:19:14 zzo38: How much garlic do you put in your tomato sauce? 08:19:45 shachaf: did I tell you about my idea for a disruptive mobile social local web application platform? 08:19:49 it's called SockSwap 08:20:11 kmc: Did you figure out a way to make a non-reverse-engineerable lock yet? 08:20:13 you know, everyone has different sorts of socks, sometimes an odd number of one kind 08:20:31 so you photograph your sock drawer using our iPhone™ app 08:20:45 and it maches you with other people in your area who also have one of that kind of sock 08:21:03 which provides a platform for social engagement (coffee, fucking, founding of web startups) 08:21:09 kmc: I saw a Vietnamese soup place called iPho. 08:21:12 All my socks are white with dark blue/black on the heels, toes, and with bands at the top 08:21:13 -_- 08:21:15 Except the 'o' was an almost-Apple-logo. 08:21:15 shachaf: really? 08:21:18 wow 08:21:29 -!- calamari has quit (Quit: Leaving). 08:21:39 Is it weird that I find it satisfying to report shit like that to the FCC? 08:22:02 FCC? 08:22:06 Downtown Mountain View has a frozen yogurt shop called "yoogl". 08:22:08 not, like USPTO? 08:22:23 It used to have Google-colored-and-fonted letters. 08:22:28 They changed that at one point, though. 08:22:38 kmc: Junk text messages and cell phone telemarketing. 08:22:44 Oh. 08:22:48 pikhq_: Can you report mine too? 08:22:50 http://s3-media1.ak.yelpcdn.com/bphoto/gVdl2TZJWcDEJj2yvLjAgw/l.jpg 08:22:56 pikhq_: oh, I thought you meant iPho 08:22:58 thikhq_ in advance. 08:23:12 kmc: Yep, that was the logo. 08:23:20 Complete violation of FCC regulations, and companies that do it and get caught (i.e. reported) get fined obscene amounts. 08:23:22 so what other restaurants can be named this way 08:25:25 kmc: How well do you know category theory and other mathematical things? 08:25:36 Facebok choy 08:25:39 that's pretty weak 08:26:31 Bing Crab 08:27:01 Kiwikipedia 08:27:11 ipad thai 08:27:27 blexande 08:27:53 excuse me? 08:28:03 instagram crackers 08:28:21 bless you, lexande 08:29:09 Apple pie 08:29:28 shachaf: Blants. 08:34:13 If I make company, it is private so that nobody can purchase it and then mix it up too much 08:54:06 Do you know how to write a file for Internet Quiz Engine? (The documentation says that certain commands can only be used in certain areas, but this isn't precisely correct. Any command can be used in any area, although they won't necessarily do what you expect.) 08:55:39 -!- Phantom_Hoover has quit (Remote host closed the connection). 08:59:42 For example, the ? = ; commands are actually all equivalent, except that ? accepts an optional skip condition based on the answer to the previous question, and neither ? nor = will be skipped in a false conditional. 09:10:11 -!- zzo38 has quit (Remote host closed the connection). 09:10:34 -!- quintopia has quit (Ping timeout: 276 seconds). 09:24:12 I feel awful 09:24:15 -!- Patashu has joined. 09:35:59 -!- impomatic has joined. 09:36:47 -!- quintopia has joined. 09:42:24 Taneb: :( 09:42:27 why / how? 09:43:45 Tired and hungry 09:44:01 Because I'm tired I don't feel like eating, and because I'm hungry I can't sleep 09:48:41 oh 09:48:42 that blows 10:00:50 -!- Taneb has quit (Quit: Leaving). 10:06:49 -!- cheater_ has joined. 10:10:22 -!- cheater__ has quit (Ping timeout: 276 seconds). 10:12:25 -!- MoALTz has quit (Quit: brb). 10:18:42 -!- MoALTz has joined. 10:36:29 -!- MoALTz_ has joined. 10:39:45 -!- MoALTz has quit (Ping timeout: 260 seconds). 10:57:16 -!- impomatic has quit (Quit: impomatic). 11:31:19 -!- impomatic has joined. 11:42:18 -!- azaq23 has joined. 11:48:00 -!- impomatic has quit (Ping timeout: 260 seconds). 12:04:44 -!- pikhq_ has quit (Ping timeout: 245 seconds). 12:04:47 -!- pikhq has joined. 12:35:18 -!- ais523 has joined. 12:37:12 hm, do C++ compilers have a special rule to treat "main" as extern "C"? 12:38:08 Yes 12:38:37 Or to emit a separate main function which calls the C++ main, or whatever. 12:39:02 "main" isn't the actual entry point 12:39:10 yeah 12:39:15 a c++ program starts with c++ main, exactly how that happens is unspecified magic afaik 12:39:25 i guess the C++ runtime library could arrange to call a C++ name-mangled main 12:39:28 The entry point does initialization and teardown before calling your name() 12:39:32 but that's not how g++ does it apparently 12:39:38 er, teardown comes after obviously 12:39:56 IIRC gcc likes to generate the entry point as _start or something 12:40:06 That stuff could be added to your main() instead of being in a separate entry point. 12:40:08 well gcc doesn't generate _start 12:40:12 it's part of the C runtime library 12:40:25 Well fine "the gnu tools" 12:40:34 Combined 12:41:00 kmc: main isn't allowed to be recursive in C++, partly because of this sort of thing 12:41:02 C runtime library and/or libc 12:41:06 ais523: interesting 12:43:12 if main were the entry point, returning from main would not work 12:43:14 at least on Linux 12:44:21 it would work on DOS 12:44:34 stack starts out with a 0 on it, and there's an exit instruction at memory location 0, with .com files 12:45:08 cute 12:45:29 Compilers could emit the appropriate exit code in place of returns from main. 12:45:45 Deewiant: another reason to make it not recursive 12:45:47 Deewiant: but then you wouldn't be able to call main from elsewhere 12:45:54 which is allowed in C? 12:46:00 kmc: it is, but not in C++ 12:46:01 i'm not sure if it's allowed actually 12:46:03 ok 12:46:10 i haven't seen it done except in IOCCC entries 12:46:22 but i'm sure there is "legitimate" code somewhere that does it 12:46:29 probably to re-enter the options parser 12:47:02 nah, it'd be really bad style, you should just use a wrapper function for that 12:47:02 there is C++ code at google which is like void Foo::reset() { this->~Foo(); new (this) Foo; } 12:47:05 so anything's possible 12:47:23 ais523: sure, it's really bad style, but I'm sure someone has done it and thought themselves quite clever for it 12:47:42 kmc: well, that code is just a bizarre way to call the destructor then constructor, isn't it? 12:47:48 yeah 12:48:28 i'm no C++ language lawyer but I'm pretty sure it's allowed (maybe not if reset is virtual) 12:48:38 however it's bizarre 12:48:49 uses a couple of C++ features that many professional C++ programmers don't know about 12:49:01 kmc: if reset is virtual and the destructor is not virtual, you'd be asking for trouble 12:49:10 yeah 12:49:26 and I can only see one rarely known feature there (placement new) 12:49:32 what's the other one? calling a destructor manually? 12:49:36 yeah 12:49:46 i guess even if you aren't aware this can be done, the syntax is what you expect 12:49:48 it's just a function, I don't see why you /couldn't/ do that 12:49:53 right 12:50:05 although it's nontrivial to parse, there are larger issues in C++ parsing 12:50:15 (did you know that C++ 11 allows you to use >> to close two < brackets?) 12:50:21 yeah 12:50:38 did you know that there are valid C++03 programs which are still valid under this rule but behave differently? 12:50:40 154702 kmc there is C++ code at google which is like void Foo::reset() { this->~Foo(); new (this) Foo; } 12:50:46 no, don't fucking use that 12:50:47 no 12:51:04 kmc: no, that's hilarious; what does it use to hide the > > from the C++11 version? 12:51:34 there's an example in http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1757.html 12:51:40 std::cout << (Y>::c >::c>::c) << '\n'; 12:52:02 also, hmm, the syntax for placement new is really weird, you'd think this->Foo() would be more natural 12:52:17 that's kind of weird too 12:52:19 because placement new is not the opposite of any sort of delete, it just calls the constructor with an arbitrary pointer 12:52:22 perhaps it'd need a cast 12:52:39 you're calling a method on something that isn't yet a valid pointer to an object of that type 12:52:46 also, you can overload operator new with any argument type you like 12:52:47 I wonder if c++ allows mysterious invisible dependencies on this that make destroying this illegal even if you don't use this in the source before reconstructing 12:52:58 kmc: if it's not a virtual method, there's clearly no intrinsic problem with that at all 12:53:28 if you have a nonvirtual method foo and a variable obj of type Obj, obj->foo(x,y) compiles to Obj::foo(obj,x,y) 12:53:36 there's no difference between this and any of the other arguments 12:53:45 Pool pool; new (pool) Foo; 12:53:55 makes a lot more sense syntactiaclyl than pool->Foo(); 12:54:14 let's say if your compiler copies all code from the class into constructed objects, and clears out the code when destroying an object 12:54:15 ais523: that's an implementation detail, in a sense 12:54:30 kmc: right, but it may be one that's implied by the language 12:54:33 i agree that usually you can call ((Foo*) 0)->bar() if bar is a non-virtual method 12:54:53 like the stack in C (auto variables in C have stack-like semantics, so even if you're not storing them on a stack, you have to store them on something that works like a stack) 12:55:06 or you know ((Foo*) malloc(sizeof(Foo)))->bar() 12:55:10 does the standard require this to be non-null in a cal? 12:55:14 *call 12:55:21 but I don't think that's a reasonable syntax for placement new 12:55:27 because it violates expectations 12:55:31 but it would be hardly the first C++ feature to do so 12:55:44 ais523: don't know 12:55:47 kmc: well, to me placement new violates expressions, because I expect new, in some sense, to be the opposite of delete 12:55:53 and placement new isn't the opposite of anything 12:55:58 *violates expectations 12:56:08 you can overload operator delete as well 12:56:22 and operator new, can't you? 12:56:24 if you're implementing a memory pool, you would do both 12:56:46 except nobody knows about this feature or can be bothered to use it 12:56:48 only a memory pool for a specific class 12:56:58 that's probably not the most common application 12:56:58 ais523: no, the overload returns a void* 12:57:14 oh, I see, you could overload it outside a class 12:57:22 http://www.parashift.com/c++-faq-lite/new/memory-pools.html 12:57:42 even overloading it within a class makes sense when you're taking an allocator as an argument to the constructor, I guess 12:57:58 I've seen an STL that does that (not sure if it was /the/ STL or some third-party one) 12:59:23 also some calling conventions pass "this" in a special way 12:59:41 the default calling convention in Visual C++ in fact 13:00:31 on x86, 'this' is passed in ECX and all other arguments are on the stack 13:00:48 i don't know if there's a rationale or if someone at microsoft was just hitting the crackpipe particularly hard that day 13:02:11 normally if passing arguments in registers, you have to come up with some complicated rule for deciding what goes where in all possible circumstances 13:02:17 "this always goes in ECX" is a pretty simple rule 13:02:22 ais523: by "/the/ STL" you mean SGI's reference implementation? 13:02:45 kmc: I was referring to APIs, so I mean the API specified by the standard 13:02:50 oh 13:03:07 whether or not constructors can take allocators as argument is definitely an API issue 13:03:11 STL containers usually take an optional template argument specifying the allocator to use 13:07:35 maybe the idea in thiscall is that methods frequently invoke other methods on the same object 13:07:44 often without doing much additional work 13:11:58 ais523: is there any reason you couldn't store C function activation records in a garbage-collected heap? 13:12:27 kmc: no, but it would have to have stack semantics, for determining what copy of the variable to look at 13:12:58 there's nothing forcing it to /be/ a stack, it just has to /act like/ a stack 13:13:07 which means that it's usable as a stack 13:13:48 many things are 13:14:22 for determining what copy of the variable to look at, you just have a register that points to the current activation frame 13:14:32 and you can CPS transform so that you never need to restore old values of that register 13:14:42 doing this for C is probably unreasonable, but is possible 13:15:13 i agree this is usable as a stack 13:15:25 so is a heap-allocated linked list, or a heap-allocated church-encoded linked list :) 13:18:15 I entirely agree that a heap-allocated church-encoded linked list could be used for C auto variables 13:18:22 but I would /still/ say that it's a stack 13:18:31 it's not a stack implemented in terms of an array, but it's still a stack 13:21:49 the other day I saw a bird that looks like a duck and quacks like a duck but isn't a duck 13:23:06 i think it was a loon 13:23:49 if you take 2 arbitrary measurements of thing X, and they match type Y, then thing X must be type Y 13:24:19 i apologize for the mistakes. 13:24:21 kmc: but how did you know it was not a duck, if it did everything like a duck? 13:24:36 because someone who knows more about birds than I told me so 13:24:50 you should have asked for more proof 13:24:58 it quacks like a duck but not *exactly* like a duck 13:25:01 such as duck dna? 13:25:05 the duck is in the details 13:25:54 BBC: 'A "supermoon", bigger and brighter than usual, is seen in the night sky as it comes closer to the Earth' 13:26:06 how much closer? 13:26:08 this is a really alarming headline if you assume that scientists have no idea why it happened 13:26:45 itidus21: over 9000 feet 13:26:45 as if i wasn't already alarmed by things 13:26:47 :P 13:28:05 what, 9000? 13:28:21 thats no moon 13:28:29 thats a space station 13:28:29 itidus21++ 13:29:05 ty ty 13:29:08 there is no dark side of the moon really 13:29:08 someone remind me the workaround for the /top tab-completion bug in irssi 13:29:12 matter of fact it's all dark 13:30:43 in a conspiracy theory lab, in a suburb far far away 13:31:01 plans are made about what the reptiles have dubbed the supermoon 13:31:47 -!- Vorpal has joined. 13:46:16 -!- ais523 has quit. 13:56:45 -!- nortti has joined. 13:57:20 Fuck yeah! Got sasl to work after disabling DH-BLOWFISH 14:03:42 `pastefirtunes 14:03:51 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: pastefirtunes: not found 14:03:57 `pastefortunes 14:04:04 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.14206 14:05:22 i clicked the link and i didnt get any tunes :/ 14:05:30 i even went and pasted it 14:05:36 still no tunes appeared 14:05:41 stupid hackego 14:05:51 quintopia: paste fortunes 14:06:34 nortti: paste for tunes -______- 14:07:00 quintopia: so it takes paste and gives you tunes? 14:07:08 :D 14:07:15 no, but thatd be great 14:07:36 or other way around 14:08:09 no thatd be stupid 14:09:25 `pastefortunes 14:09:31 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.20091 14:12:06 -!- TeruFSX has joined. 14:14:19 -!- Patashu has quit (Ping timeout: 245 seconds). 14:16:02 quintopia: what kind of daemon is thatd? 14:19:06 -!- atehwa has quit (Remote host closed the connection). 14:21:18 I'll give rep+ to the first one to decipher what this piece of python code does (lambda x: (lambda s,(x,y): ([(x[0],y[0])]+s(s,(x[1:],y[1:]))) if len(y)>0 else [])((lambda s,(x,y): ([(x[0],y[0])]+s(s,(x[1:],y[1:]))) if len(y)>0 else []),(x,x[1:]))) 14:21:53 Looks like zip 14:22:33 zip`ap`tail 14:22:55 zip`ap`tail? 14:23:03 > (zip`ap`tail) [1..10] 14:23:04 [(1,2),(2,3),(3,4),(4,5),(5,6),(6,7),(7,8),(8,9),(9,10)] 14:23:16 ?quote aztec 14:23:17 quicksilver says: zip`ap`tail - the Aztec god of consecutive numbers 14:23:27 @rep+ Deewiant 14:23:27 Plugin `dummy' failed with: Prelude.read: no parse 14:23:40 @rep 14:23:40 () 14:23:46 @rep nortti 14:23:46 nortti 14:23:57 @karma nortti 14:23:57 nortti has a karma of 1 14:24:04 -!- impomatic has joined. 14:24:07 @karma+ Deewiant 14:24:07 Deewiant's karma raised to 2. 14:25:50 Deewiant: is zip`ap`tail builtin in haskell? 14:25:56 ?ty zip 14:25:57 forall a b. [a] -> [b] -> [(a, b)] 14:25:58 ?ty ap 14:25:59 forall (m :: * -> *) a b. (Monad m) => m (a -> b) -> m a -> m b 14:25:59 ?ty tail 14:26:00 forall a. [a] -> [a] 14:26:35 The only "builtin" part of that is the syntax, zip`ap`tail means ap zip tail 14:27:33 (Which means ap(zip,tail) or rather (ap(zip))(tail) in a language with C-style function call syntax.) 14:29:04 ?ty ap :: (c -> a -> b) -> (c -> a) -> (c -> b) -- the relevant Monad instance expanded 14:29:05 forall c a b. (c -> a -> b) -> (c -> a) -> c -> b 14:41:44 -!- AnotherTest has joined. 14:41:49 hello guys 14:50:26 @karma AnotherTest 14:50:26 AnotherTest has a karma of 0 14:50:34 @karma+ AnotherTest 14:50:34 AnotherTest's karma raised to 1. 14:50:40 @karma- AnotherTest 14:50:40 AnotherTest's karma lowered to 0. 15:12:46 -!- Lumpio- has quit (Read error: Operation timed out). 15:13:02 @karma nortti 15:13:02 nortti has a karma of 1 15:13:07 ooh. 15:13:19 @karma itidus21 15:13:19 itidus21 has a karma of 1 15:13:36 itidus21: what about my karma 15:13:57 no reason 15:36:34 -!- Lumpio- has joined. 15:36:47 -!- elliott has joined. 15:37:06 17:56:37: what language would you propose as an alternative? 15:37:06 17:56:44: to C++? C 15:37:06 17:57:13: well, it really depends on what you're using it for 15:37:07 17:57:14: Not really an alternative. 15:37:09 17:57:31: since C doesn't even check types 15:37:11 17:57:43: and also, it doesn't allow for user defined types 15:37:13 you're high 15:38:04 I meant user-defined types that have member functions 15:38:16 it has those, too 15:38:18 and C doesn't check types [properly] 15:38:22 yes, it does 15:38:25 AnotherTest: why is your nick AnotherTest 15:38:27 as much as C++ does 15:38:29 No idea. 15:38:39 Why is yours nortti? 15:38:43 there are minor differences in terms of const, and C++ has a safer version of casting 15:38:52 but that's it 15:39:01 elliott: let's first clarify which version of C we are talking about 15:39:07 ANSI? 15:39:09 C89, C99, doesn't matter one bit 15:39:17 basically applies to K&R too, if anyone still used it 15:39:19 elliott: Around a year ago you were going to hack some pty-related stuff into tup, but I'm not getting coloured output from clang, what's up! 15:39:21 oh, C11 is out too 15:39:23 C11 too! 15:39:33 Deewiant: I was? 15:39:33 well, define a type in C that has a member function? 15:39:47 struct type_in_c { void (*member_function)(int); }; 15:39:49 elliott: https://groups.google.com/group/tup-users/msg/b303970d79ed6edc 15:40:03 Deewiant: :( 15:40:05 Deewiant: Stupid archiving. 15:40:08 AnotherTest: I used nick nörtti in ohjelmointiputka.net but when I tried using it on ircnet when I wanted to join #ohjelmointiputka my own irc client crashed 15:40:18 Deewiant: I didn't do it, ask tup-users if anything's happened. :p 15:40:28 elliott: Presumably not :-P 15:40:30 so I used nortti and it just stuck 15:40:42 Deewiant: ISTR *something* happening along those lines. 15:41:14 nortti ah I see 15:41:34 -!- ais523 has joined. 15:41:41 ais523: wat: http://esolangs.org/w/index.php?title=BAM128&curid=3491&diff=32356&oldid=30896 15:42:01 hi elliott 15:42:04 hi ais523 15:42:05 elliott: I can't be bothered to ask, I'm just putting 'CC = clang -fcolor-diagnostics' in my Tupfile 15:42:22 Deewiant: Yeah, I think that might have been the solution. Or maybe I'm thinking of ninja. 15:42:25 it consists of? 15:42:35 elliott: looks like a test edit, more than anything else 15:42:37 AnotherTest: What? 15:42:41 or someone who doesn't understand English and thinks they do 15:42:44 I just rolled it back 15:42:59 I was going to revert it with a meaningful edit summary, but I suppose that works too :p 15:43:13 I'm pretty sure it's someone trying to fix the grammar, except they're not any good at it 15:43:15 elliott: It happened in ninja, at least (its bug report is the top Google result I've run into a couple of times now when wondering whether tup does it) 15:43:22 elliott: Should I use ninja? 15:43:22 Deewiant: Right. 15:43:28 elliott: I just noticed the edition, found I a little weird 15:43:32 *editing 15:43:38 Ah, right. 15:43:46 Deewiant: I dunno. I'd stick with tup. 15:43:52 Deewiant: With ninja, you need to write a script to generate your build script. 15:44:03 Usually in Python, since they have an outputting library for it. 15:44:21 It's kind of yucky. Good for things like Chrome where you need MAXIMUM SPEED and the build rules don't change often, since that's what it was designed for. 15:44:23 elliott: I asked you because you're the "DO THE ARROWS GO UPWARDS" guy when it comes to build systems 15:44:32 Deewiant: ninja's arrows do go upwards, though, yes. 15:44:43 And ninja supports multiple output files, which is what got me interested in it in the first place (for Haskell). 15:44:48 I have a patch in ninja! 15:45:20 Deewiant: I'd just stick with tup though. Especially since variants are coming. 15:45:30 What's the most minimal programming language existing? 15:45:40 (as in minimal typing to do a certain task) 15:45:58 AnotherTest: That is not really a meaningful question. 15:46:06 alright 15:46:10 let me attempt to refine 15:46:25 wtf? MIT Scheme says (eval '(+ 1 1)) is invalid 15:46:28 nvm I'll fail 15:46:32 nortti: It is. 15:46:36 You need to pass an environment too. 15:46:46 elliott: if I find a website that puts an in an URL and later omits a _ from the same URL, what should I assume? broken parser for a Markdown-like language? 15:46:54 (the was replacing a _) 15:47:03 ais523: Yes. 15:47:04 elliott: repl.it didn't require that 15:47:09 nortti: Then repl.it is broken. 15:47:17 elliott: That reminds me: re. variants, the thread on them currently ends with Mike asking for your thoughts. 15:47:18 Or, rather, has some implementation-specific extension. 15:47:21 Consult R5RS. 15:47:27 elliott: why is it not meaningful? 15:47:31 Deewiant: Yes, I have that email set as unread so I can reply to it. 15:47:39 AnotherTest: Because "a given task" is pretty vague. 15:47:45 ah I see 15:47:45 elliott: Alright, just checking. 15:47:57 (I wrote that before your parenthical; I interpreted "minimal" very differently beforehand, which kinda proved my point :P) 15:48:06 Deewiant: I guess I'll do it now, since you've prodded me. 15:48:11 ah 15:48:18 I also need to reply to Conor McBride :( 15:49:20 If you'd e-mail less, you'd have to reply less. 15:49:40 I hardly email at all! 15:49:41 which language allows the shortest implementation for an algorithm that solves the traveling-salesmen problem using a brute-fore approach without it being a built-in feature? 15:49:46 (better?) 15:50:00 Deewiant: Anyway, that's not strictly true. 15:50:15 AnotherTest: Define "built-in feature"... I could split the algorithm into two parts and give those one instruction each. 15:50:49 He probably means "existing language". 15:50:49 existing language anyway, I doubt any language has such a feature so just drop that last part 15:51:08 Also 15:51:14 Deewiant: That question is still probably impossible to answer, since you don't know what the shortest program for the task in any given language is. 15:51:16 I'm pretty sure you know what I mean 15:51:17 *don't (can't) 15:51:20 so just anwser 15:51:28 AnotherTest: It is not possible to answer. 15:51:33 Doubt it. 15:51:40 AnotherTest: Very well, you answer it then. 15:51:41 Maybe it's not possible for you. 15:51:56 I see you're still suffering from Dunning-Kruger. 15:51:57 I ask the question; it is thus only logical that I do not know the answer 15:52:18 Of course it's possible, just prove a minimum length in each language and then enumerate all programs up to that length. 15:52:31 (Okay, maybe the proof isn't so easy.) 15:52:46 let's not start about the physics guy who wasn't a physics guy again 15:52:47 Deewiant: FSVO enumerate that involves a human-written proof at each step. 15:53:00 because it's still clear that you suffer autism 15:53:04 lol 15:53:07 Go away already. 15:53:21 no thanks 15:53:26 I'm free to come here 15:53:27 elliott: Not at each step, only for each language. 15:53:32 I.e. before the enumeration. 15:54:09 AnotherTest: please don't insult people like that 15:54:15 I try not to 15:54:18 You failed. 15:54:23 Correct. 15:54:27 (If you really did try, you'd apologise afterwards.) 15:54:44 Well, no, because you sort of insulted me to 15:54:46 *too 15:54:55 you seem to make a habit of that every time I visit 15:55:04 You've only been here twice. 15:55:08 Anyway, whatever. 15:55:12 Yes, I have 15:55:21 but does that mean it can't be a habit? 15:55:23 -!- jfischoff has joined. 15:56:05 "The judge and attorneys have to question the child to determine the communication skills of the child and also question to determine if the child understands the difference between true and false, and will tell the truth." 15:56:17 why don't they do that with /adults/? 15:56:32 Because the judge and attorneys are adults. 15:57:34 that's about witnesses 15:57:47 I guess they get them to swear oaths, but I'm not sure everyone has respect for oaths 15:57:53 -!- ais523 has quit. 15:58:10 -!- ais523 has joined. 15:58:15 -!- ais523 has quit (Changing host). 15:58:15 -!- ais523 has joined. 15:58:20 Bye ais523. Hi ais523. Bye ais523. Hi ais523. 15:58:25 OK, Unity has increased Konversation's capacity for bizarre typos quite a bit 15:58:37 ah unity 15:58:40 don't like it 15:58:41 both in opportunities, and bizarreness 15:58:46 that's why I don't use I guess 15:59:08 that was alt-nothing r, rather than alt-t r 15:59:08 You're on ubuntu? 15:59:14 yes 15:59:21 11.*? 15:59:23 I actually rather like unity, but some of the keybindings are unfortunate 15:59:26 12.04 15:59:29 oh 15:59:35 hmm, I wonder if I can change them? 15:59:39 Yes 15:59:45 * ais523 loads up compizconfig 15:59:50 It's possible to pick a custom keyboard layout I think 15:59:59 I dislike unity. All the bloat and inteface is horrible 16:00:00 Well at least I did it once in 10.04 16:00:19 I agree with nortti, my computer can't handle it properly 16:00:28 that was easy 16:00:43 now I have super-space rather than just super, and alt-super-space rather than just alt 16:00:52 should have done that earlier 16:01:00 -!- impomatic has quit (Ping timeout: 255 seconds). 16:01:15 AnotherTest: do you know my computer's specs? 16:01:19 nortti: unity, bloated? that doesn't fit my view of it 16:01:25 it seems more primitive than bloated 16:01:31 nortti: Unfortunately not 16:01:44 although I consider bloat a statement about features rather than load 16:01:53 if it's putting too much load on a system, that's simply a bug 16:01:57 ais523: really, with the menu that constantly flops in and out? 16:02:07 AnotherTest: Thinkpad T20 with 700MHz Pentium III and 64MB of RAM 16:02:57 AnotherTest: that's no longer the default optoin 16:02:59 *option 16:03:03 I just have it up constantly 16:03:04 ah 16:03:11 well at least they made a good choice there 16:03:15 ais523: define too much load. Using that logic almost all new software is filled with bugs :p 16:03:28 (on my system at least) 16:03:39 -!- jfischoff has quit (Quit: jfischoff). 16:04:13 nortti: I'm on an Intel Pentium 4 CPU 2.53GHz with 1002.4MiB RAM 16:04:36 nortti: substantially more than would be reasonably expected for what the software actually does 16:05:12 I'm just going to stay with 10.04 16:05:20 ais523: That doesn't work if you have unreasonable expectations. 16:05:23 AnotherTest: try lubuntu 16:05:25 elliott: indeed 16:05:43 nortti: I might, also, xubuntu; is that notable? 16:05:54 AnotherTest: only 1G? although that should be easily enough for almost anything, sadly programs rarely assume that any more 16:05:58 AnotherTest: almost as slow as ubuntu 16:06:04 also, 1002.4 is not 1024, that's an interesting decision… 16:06:17 he should have said 1GiB 16:06:19 I think 16:06:30 AnotherTest: no, 1 GiB = 1024 MiB 16:06:34 Gio, if you want to be pedantic. 16:06:37 1002.4MiB != 1024MiB 16:06:38 oh I switch them around 16:06:39 elliott: indeed 16:06:59 even one megabel is enough sound intensity to destroy the Earth 16:07:05 And yes, on this machine just 1G 16:07:12 probably even one kilobel, come to think of it 16:07:17 ais523: It's not really "sadly". There's no point devoting time and effort to minimising memory footprint if everybody has more. With that kind of argument, everyone should code like we're using Altair 8800s. 16:07:23 I find it enough 16:07:36 (Where "o" is an abbreviation for "octet" I think I invented and almost nobody will understand, so be careful about where you use it.) 16:07:39 elliott: well, programs still take a noticeable amount of time to load and execute 16:07:47 Deewiant: I've seen it elsewhere 16:07:56 I think, at least 16:07:56 Deewiant: It's useful for pedantry and also arguing with pedants! 16:08:06 ais523: That's mostly unrelated to RAM. 16:08:09 elliott: Sure, but not for much else. :-) 16:08:11 ais523: Disk is a huge factor in that. 16:08:17 right, indeed 16:08:20 elliott: indeed 16:08:29 If you get an SSD you'll notice everything go noticeably faster; if you run from a RAMdisk, even faster. 16:08:33 *RAM disk 16:08:33 hmm, I wonder how long it takes to fill a 1GiB array with consecutive integers? 16:08:46 would depend of the memory access? 16:08:53 ais523: Faster if you use SSE ;) 16:08:55 Ask Vorpal. 16:08:59 can't check, only have 927MB free 16:09:02 He's the filling-big-arrays-unreasonably-fast guy. 16:09:07 (*cough* cfunge) 16:09:08 elliott: well even I assume that my system has at least 2MB of RAM and I try to minimize memory footprint 16:09:16 ais523: elliott picked it up from my web site and may have spread it around, at least. 16:09:21 Deewiant: I haven't. 16:09:22 Vorpal: do you know how long it takes to fill a 1GiB array with consecutive integers? 16:09:26 Deewiant: But I have seen it elsewhere too, I think. 16:09:42 elliott: Well, you've used it here at least a couple of times, which kinda counts. 16:09:52 #esoteric is the terminology propagation centre of the world. 16:10:26 is the "Dragon Book" still up-to-date? 16:10:34 I've heard people saying it's not. 16:10:41 Depends on your definition of "up-to-date". 16:10:43 elliott: a quick websearch implies that both "Mio" and "mebioctet" are in Christian Biere's signature 16:10:45 Which would suck because I orded it 16:10:53 *ordered 16:10:56 cpressey doesn't like it and recommends something else instead. 16:11:11 up-to-date := useful nowadays 16:11:23 AnotherTest: I'd say so 16:11:30 ais523: Who's Christian Biere? 16:11:30 nowadays := today 16:11:39 elliott: I have no idea 16:11:39 someone who has both "Mio" and "mebioctet" in their signature 16:11:40 today := 06/05/2012 16:11:40 AnotherTest: At least from what I have heard 16:11:48 AnotherTest: You misspelled 2012-05-06. 16:11:51 I did try finding out, but apparently they're just some random person 16:11:52 alright 16:12:00 elliott: no, I live In belgium 16:12:05 we write it like that here 16:12:18 actually it is 6.5.2012 16:12:26 I don't think the English language prescribes a correct notation for dates 16:12:49 ISO does! I think they need a militia to enforce their standards. 16:13:35 ah ISO, they'd better bother with Javascript 16:14:03 elliott: is ISO standard yyyy-mm-dd? 16:14:19 Yes. (It's more involved than that, but yes.) 16:14:35 Actually it's not quite perfect, since the full yyyy-mm-ddThh:mm:ss format is ugly because of the T. 16:14:36 yyyy-mm-ddThh:mm:ss then a letter for the timezone, typically Z for UTC 16:14:43 ais523: It's more involved than that. 16:14:43 I think that's discrimination elliott 16:14:49 AnotherTest: What? 16:15:01 because it's assuming the culture of everyone has the Christian religion 16:15:10 What is discrimination, exactly? 16:15:16 AnotherTest: people mostly use the Gregorian date system whether Christian or not 16:15:35 ais523: true, I was just teasing elliott 16:15:38 wow, ddate isn't in the coreutils package any more 16:15:46 s/easing/rolling/ 16:15:47 or even in the repositories, under that name at least 16:15:52 (Hey, those are both words.) 16:16:07 define "trolling" 16:16:16 AnotherTest: rolling with a t in front of it 16:16:18 ais523: Can you find a reference older than 2009-07-05? 16:16:20 or in the repositories under any name 16:16:24 What is rolling exactly? 16:16:34 AnotherTest: the gerund form of "roll" 16:16:39 AnotherTest: http://en.wikipedia.org/wiki/I_know_it_when_I_see_it 16:16:45 What is roll, exactly? 16:16:52 alternatively, present participle of "roll" 16:17:00 oh so you're an empiricist, elliott? 16:17:20 AnotherTest: http://en.wiktionary.org/wiki/roll#Verb 16:17:36 ais523: thanks, that's what I call some definiton 16:17:42 although I didn't realize it had 27 different meanings 16:17:50 but oh wait 16:17:54 27. (transitive) This word needs a definition. Please help out and add a definition, then remove the text {{rfdef}}.  [quotations ▼] 16:17:59 thanks, wiktionary! 16:18:00 what exactly is a definition? 16:18:29 AnotherTest: you probably have enough information to find out yourself 16:18:33 perhaps you even know the answer already! 16:18:44 Yes, but how can that information be trusted? 16:19:04 suppose the defintion of defintion would be wrong? 16:19:12 Well I suppose that's impossible. 16:19:24 AnotherTest: eventually, sooner or later, you have to trust something or someone 16:19:27 Because then the definition of wrong would be wrong :(. 16:19:36 16:19:41 that's not irony 16:19:47 oh god 16:19:48 or, hmm, maybe it is 16:20:00 I guess it all depends on the defintion 16:20:02 elliott: if a dictionary did misdefine "wrong", that would indeed be ironic 16:20:03 probably nothing is ironic, considering how much people say isn't 16:20:09 assuming it was done by mistake 16:20:16 ais523: yes, but if the definition of wrong is itself wrong, not as a mistake done by a dictionary, would that be ironic? 16:20:35 elliott 16:20:37 you have point 16:20:40 elliott: I'm not even sure the concept of wrongness makes sense wrt definitions in natural languages 16:20:47 since then the definition of ironic would be wrong 16:21:00 Well, I think this explains the Alanis Morissette song. 16:21:05 in computer languages, it's possible to have an objectively wrong definition, though (such as one that's incompatible with the desired semantics) 16:21:19 elliott: it's genuinely ironic that the song is meant to be about irony and yet doesn't know what irony is 16:21:28 The *song* doesn't know what irony is? 16:21:35 Well, I suppose it doesn't. 16:21:52 ais523: yes, but the semantics parser will still give an error 16:21:57 err, that the existence of those lyrics of the song imply that their author doesn't know what irony is 16:22:07 AnotherTest: you don't know what you're talking about 16:22:07 ais523: and the language does not consists of only a syntax parser 16:22:16 *consist 16:22:21 ais523: how so? 16:22:32 * elliott concurs 16:22:58 you're using the lies-to-first-years definition of "semantics", rather than the mathematical definition 16:23:19 lies-to-first-years :D 16:23:25 I was never in first year :( 16:23:27 elliott: by analogy with lies-to-children 16:23:30 ais523: I know, it's amusing 16:23:39 I would rather pick lies-to-children then 16:23:51 I actually saw that lie made a few months ago 16:23:59 I read it :( 16:24:08 AnotherTest: do people seriously teach children compiler design? 16:24:15 In Belgium they do. 16:24:18 children teach themselves 16:24:21 that's how things go 16:24:36 agreed, I think; now I'm wondering if I could have written a compiler before I turned 18 16:24:50 It's possible, since I've done so. 16:24:57 I'd need to have thought of doing so, for one thing; I definitely could have learnt 16:24:58 You're not ais523. 16:25:03 AnotherTest: if you are interested in compiler development I would recommend reading crenshaw's Let's build a compiler 16:25:03 I doubt you wouldn't be able to if if you could 16:25:07 *if 16:25:21 oh, of course I could, I read a book on compiler design before then 16:25:29 and later cited it in my Masters' project 16:25:58 hmm, fun YouTube regression: the Pause button no longer changes to a Replay icon when the video ends (but clicking on it replays the video anyway) 16:26:17 nortti: books, books, books! I'll first finish the books I'm currently reading; but thanks for the tip 16:26:47 AnotherTest: atually Let's build a compiler is a article series 16:27:35 ais523: It just occured to me that I haven't used youtube's own player to play youtube videos for a year 16:27:58 nortti: oh 16:28:06 nortti: do you download them, violating the TOS, then play them in some other player? Or use a streaming player? 16:28:38 * ais523 notes that streaming and downloading look identical from the server's point of view, and mostly from the client's too, so it's weird that the distinction is made 16:29:06 ais523: youtube-dl (download) currently, mactubes/youview (streaming) on my iBook 16:30:12 AnotherTest: it teaches how to build simple compiler on Pascal under SK*DOS compiling to m68k assembly 16:30:23 oh pascal :( 16:30:31 I would have to learn Pascal first then 16:30:39 AnotherTest: meh, it's just a simplified algol 68 16:30:47 hmm, looks like the tailor of panama has the opening titles set in comic sans 16:30:59 AnotherTest: I translated code to python even thought I don't really know pascal either 16:31:21 I wan't that hard 16:31:35 nortti: but I think you always make big mistakes if you don't really understand a language; you just don't notice it 16:32:26 I'm just going to read the dragon book, I think that should be as well as those articles? 16:33:04 AnotherTest: pascal code used there is very easily readable without much pascal knowledge and I always sanity checked all my modifications and the seemed to work. Also I think that there is a forth version of Let's build a compiler 16:33:44 AnotherTest: dragon book is bit harder to learn from because it covers more 16:34:12 I think I'll be fine 16:34:20 it's intended to learn from 16:34:24 so that shouldn't be a problem 16:34:25 *It wasn't that hard 16:34:57 everyone knows that an intent to teach always translates to being easy to be taught by 16:35:35 -!- derdon has joined. 16:37:02 elliott: how can you be sure everyone does? 16:37:09 what 16:37:10 maybe you should redefine everyone 16:37:16 oh 16:37:42 AnotherTest: this sort of needless pedantry really doesn't add much to the conversation, save it for compilers 16:38:34 (define everyone '(everyone who knows that an intent to teach always translates to being easy to be taught by)) 16:38:49 ais523: again, I'm just fooling with elliott's urge to define things 16:39:02 AnotherTest: yes, and it is not a useful thing to do 16:39:04 s/ooling/rolling/. Wait... 16:39:21 conversations go much faster if you're not throwing in pointless trolling every few lines 16:39:25 ais523: I agree, but I can't help it 16:39:37 AnotherTest: is this some sort of Internet version of Tourette's? 16:39:45 or is it that you actually /can/ help it 16:39:47 and just don't want to? 16:39:47 people who can't help but troll should avoid IRC 16:40:18 ais523: I can't help to because elliott insulted me more than once 16:40:41 AnotherTest: this is a pretty bad explanation 16:40:42 elliott: I agree 16:40:47 and because I'm trying to make him stop with the definition thing 16:40:53 do you know what a "mutual recrimination cycle" is? 16:41:00 no 16:41:09 But I'm guessing 16:41:11 I did "the definition thing" once to try and help you find an answer to your extremely vague question. 16:41:16 it's when one person does something to annoy someone else, and they respond in kind (or worse), and the first person responds in kind (or worse) 16:41:19 and it gets out of hand 16:41:42 if you're going to respond to someone annoying you, try to do so in a less bad way than the original, not a similar or worse way 16:41:50 it's true 16:41:53 I realize that 16:41:53 not only does it prevent it getting out of hand, it also lets you take the moral high ground and go around being smug 16:42:03 Win-win 16:43:25 but tbh, elliott, you did it more than once; but let's not continue the viscous circle 16:43:44 I assure you, the circle will be as solid as they come. 16:44:51 anyway 16:45:07 are there still esolang boards? 16:45:14 elliott: solidity is a state of maximum viscosity 16:45:30 ais523: Oops. 16:45:33 AnotherTest: The wiki. 16:45:46 AnotherTest: kareha on esoteric.voxelperfect.net was disabled because nobody used it, and I have no idea what's happened to esoteric.sange.fi 16:45:56 Graue shut the forum down when I took over the wiki since it got tons of spam and nobody used it. 16:45:57 but alt.lang.intercal still exists, even though nobody posts there 16:45:58 But I have an archive at http://esolangs.org/forum/. 16:46:26 "BUY LOST DVD WITH LOWEST PRICE" 16:46:27 mhm 16:46:45 doesn't sound like an esoteric programming language :p 16:46:45 "Nice.. but the idea is difficult to understand. Life is much more hard to live than you can imagine.." 16:51:39 Gun Holsters That Shoot You in the Leg, A Flammable Fire Extinguisher, Hand Sanitizer That Adds Bacteria to Your Skin, The Laundry Detergent That Shreds Clothes, The Flashlight That Can Stop Your Heart 16:52:24 wat 16:52:48 This is still the best spam thread from the forum: http://esolangs.org/forum/kareha.pl/1302671493/l50 16:53:04 elliott: http://www.cracked.com/article_19805_the-5-most-baffling-product-recalls-all-time.html 16:53:28 -!- calamari has joined. 16:55:12 I was wondering 16:55:29 (and I'll try to be specific elliott, but I might fail) 16:55:50 does any programming language exist where 16:56:11 where what? 16:56:15 let me type 16:56:44 the type-system works "top-down"; with that I mean that you evaluate an expression to a given type (rather than to an unknown type and then check it with the given type) 16:56:48 You don't have to press enter before finishing your sentence, you know. 16:57:03 I'm sorry 16:57:20 Deewiant: Hey, I do it. :p 16:57:26 (Admittedly I type really fast.) 16:57:37 anyway so Real r = 5 + 5; would be Real r = Real(5) + Real(5); 16:57:46 AnotherTest: Haskell does that with typeclass overloading. 16:57:47 I only do it accidentaly 16:57:54 Assuming I understand what you mean. 16:58:06 rather than Real r = Int(5) + Int(5); (assuming 5 is an integer literal) 16:58:13 (5 + 5 :: Real) is really (fromInteger (5 :: Integer) + fromInteger (5 :: Integer) :: Real) under the hood. 16:58:27 And you can make overloaded values whose result depends on the type you use them as. 16:58:30 Well, I know 16:58:41 but I meant, that, does a language exists where that isn't the case? 16:58:56 Well, I interpret that as "top-down" by your definition. 16:59:06 (Note that the "typeclass overloading" is not related to OOP classes, and is something OOP can't do.) 16:59:33 Many languages separate evaluation from type-checking, anyway. 16:59:38 and is there a language where the whole type system is done like this? 17:00:04 Because I actually find that this isn't that bad 17:00:10 (the top-down approach) 17:01:15 I'm still not sure what the top-down approach constitutes. How does type-checking differ for such a language? 17:01:25 AnotherTest: Perl's type system works like that 17:01:31 although it only has two types, list and scalar 17:01:57 instead of the type of an expression being based on the expression, it's based entirely on the context 17:02:04 elliott: it differs fundamentally, the idea is sort of the reverse of the normal one 17:02:10 AnotherTest: When I say 17:02:11 17:58 (5 + 5 :: Real) is really (fromInteger (5 :: Integer) + fromInteger (5 :: Integer) :: Real) under the hood. 17:02:16 and quite a lot of things behave differently in list and scalar context 17:02:16 I mean that the former is what you actually type. 17:02:19 ais523: really? I need to look into perl more 17:02:20 You can also have, e.g. 17:02:24 myTest :: String ==> "abc" 17:02:27 myTest :: Int ==> 42 17:02:31 (Where (a :: b) means "a with type b".) 17:02:38 Which sounds like what you're looking for. 17:02:42 I have to go, dinner; bye 17:02:50 elliott: is ==> the actual syntax for that? 17:02:58 ais523: that's metasyntax for evaluation 17:03:06 ah, OK 17:05:25 AnotherTest: Anyway, the key thing that makes that work is the ability to overload only on return value. 17:05:38 Erm, that's badly-phrased, but whatever. 17:19:23 -!- elliott has quit (Read error: Connection reset by peer). 17:21:12 -!- elliott has joined. 17:29:52 elliott: overloading based on return type, indeed, that was partially why I was was interested in this approach 17:30:32 Haskell uses that quite extensively 17:30:32 besides that, it would also solve the typical C++ string literal problem where std::string a = "A" + "B"; is illegal 17:30:51 although that's just C++ :| 17:32:06 I think(and might be totally wrong) that maybe types should be separated from their literals 17:32:46 Haskell does that for numeric literals, and with an extension for string literals as well. 17:33:04 My interest in Haskell is rising 17:33:11 but I'm scared by people saying that it's horrible 17:33:31 but I guess there are always people who say that something's horrible 17:34:02 Are the people saying it's horrible C++ programmers? :P 17:34:03 "There are only two kinds of languages: the ones people complain about and the ones nobody uses." -- Bjarne Stroustrup 17:34:16 ^ :) 17:34:18 (Bonus: he's a C++ programmer. Well, the C++ programmer.) 17:34:20 Deewiant: true 17:34:28 knew that one, it's in The C++ Programming language 17:35:28 elliott: surprisingly, no 17:35:40 it are Perl programmers 17:35:41 AnotherTest: http://www.learnyouahaskell.com/ is the best Haskell book, FWIW. (Avoid Real World Haskell, it's outdated and goes too fast.) If you don't like LYAH, get a copy of http://www.cs.nott.ac.uk/~gmh/book.html; I haven't read it, but have received glowing recommendations for it. 17:36:05 How is RWH outdated where LYAH isn't? 17:36:09 (Honest question) 17:36:19 what haskell implementation should I use? 17:36:23 nortti: GHC. 17:36:24 GHC 17:36:25 ghc 17:36:37 The others are either really outdated or not really prime-time-ready. 17:36:37 For most practical purposes, there is no other Haskell implementation. 17:36:55 UHC is useful for some specialised purposes (compiling to JavaScript), jhc is of interest but not really practical yet. 17:37:02 More or less everything else is dead. 17:37:05 Deewiant: Parsec, IIRC. 17:37:24 Deewiant: Also it recommends ByteString for text, because a certain one of the authors hadn't written Text yet ;) 17:37:32 elliott: bookmarked that :) 17:37:44 Both LYAH and RWH have the mtl 1 vs. mtl 2 problem, but that's just changing the capitalisation of one letter to fix, so... 17:37:46 Well, ByteString still has its uses. 17:37:52 Deewiant: No, it was for Unicode (IIRC) text. 17:37:55 Over String. 17:38:03 oh for the love of the $DEITY! Do I have to compile a compiler with this machine? 17:38:09 nortti: You can't, GHC depends on GHC. 17:38:16 The Linux binary is good, and can be installed to any prefix. 17:38:34 Just use it, GHC takes about 2 hours to compile on a fast machine even if you had an existing binary lying around. 17:39:14 elliott: good. Usually it is source compile when package is not on slitaz's repo 17:39:35 nortti: Note: Install 7.0.4, not 7.4.1. 17:39:49 Not every package builds with 7.4.1 yet and the Platform uses 7.0.4. 17:39:55 -!- jfischoff has joined. 17:40:09 (After you have GHC installed, you'll probably want to install the source package from http://hackage.haskell.org/platform/linux.html.) 17:42:38 -!- jfischoff has left. 17:45:39 I suppose lamda knowledge is useful in Haskell? 17:46:10 Depends what you mean by lambda :P 17:46:25 Haskell corresponds to an extended version of a certain lambda calculus (not /the/ lambda calculus), but you don't need any background in it to start reading LYAH. 17:46:26 lambda calculus, sorry 17:46:34 Nah, I knew that, it's just that there's a bunch of them. 17:46:40 alright 17:46:41 (Sure, Haskell uses anonymous functions, but even C++ has those nowadays.) 17:46:59 yes, but I meant more /the/ lambda calculus 17:47:14 because I don't really consider closures to be the whole lambda calculus 17:47:20 that would be rather restrained 17:47:35 no, short-sighted is a better word I think 17:47:42 Well, that's all the lambda calculus is, really; closures plus application. 17:47:49 what other lambda calculi there are than /the/ lambda calculus? 17:48:00 nortti: /The/ lambda calculus usually means the untyped lambda calculus. 17:48:25 There's various typed lambda calculi, including the simply typed lambda calculus, members of the lambda cube (http://en.wikipedia.org/wiki/Lambda_cube), etc. 17:48:37 elliott: ah. Doesn't haskell implement untyped lambda calculus? 17:48:46 No, Haskell is typed. 17:48:55 elliott: read about that in the introduction I read 17:49:10 Haskell is Hindley-Milner plus typeclasses. 17:49:24 (Okay, s/Hindley-Milner/the lambda calculus which Hindley-Milner checks and infers typs for/.) 17:49:25 -!- nortti has quit (Quit: leaving). 17:50:27 (And s/Hindley/Damas/g just to be different.) 17:53:23 Deewiant: Have you played brogue? Is quaff-iding potions a good idea in brogue? (I picked you because you're the last person to talk and also Finnish.) 17:53:37 I have not played brogue. 17:53:44 Damn. What about the second question? 17:54:02 elliott: I've seen a Let's Play of brogue that says that most items can be use-IDed safely with appropriate precautions 17:54:05 like not doing it in combat, etc 17:54:05 Based on experience in other roguelikes I'd guess "no". 17:54:20 I'm not entirely sure if this implies that some can't be 17:54:25 Deewiant: You should play brogue, it's really pretty. 17:54:29 but the person in the game quaff-IDed a potion of descent 17:54:34 which was inconvenient but not really fatal 17:54:52 Or "no, unless you're powerful enough that you know you can't easily be instantly killed". 17:55:13 "pretty" isn't a good reason to play a roguelike. 17:55:30 Exactly what does the potion of descent do? Teleport you to lower levels? 17:55:33 Deewiant: No, I mean, *really* pretty: http://ompldr.org/vZG1ueg 17:56:50 Meh. 17:56:54 ion: takes out the ground beneath anyone who drinks it (or just destroys the ground directly if it breaks on it) 17:57:07 which causes the drinker, or anyone you throw it at, to fall to the level below 17:57:07 ais523: THANKS FOR THE ADVICE http://ompldr.org/vZG45Mg 17:57:12 At least the fire, too, is really pretty. 17:57:38 elliott: well you didn't die, did you? 17:57:43 Not *yet*. 17:57:58 My monkey d id, though. 17:58:04 and you're only two squares from walking out of the fire 17:58:10 ais523: No, the fire was *on* me. 17:58:16 but to be fair, that was worth it just for "Your monkey catches fire!" 17:58:17 i.e. it followed me around. 17:58:22 ooh, interesting 17:58:27 Well, I'm almost dead, but I'm not on fire any more, and I'm still levitating. 17:59:04 Cool, I'm hovering over a pool of my own blood. 17:59:08 That's really metal. 17:59:38 why o why jQuery, does thou not do as I say?(or I'm just doing it wrong :() 17:59:55 also, seems like rather cool game 18:01:59 AnotherTest: jQuery? that second boss is hard as hell 18:03:03 jQuery, the (over-)popular JavaScript library(assuming you're asking about what it is) 18:03:12 *asking what it si 18:03:14 *is 18:05:36 -!- zzo38 has joined. 18:16:45 -!- nikolos has joined. 18:16:45 In my opinion you cannot really understand monad and other things from LYAH, and there are other things too like that; I find reading Haskell 2010 report also helps understanding syntax and so on a bit better but even that won't help completely; you have to learn it by yourself 18:16:56 hi 18:17:04 `welcome nikolos 18:17:08 nikolos: 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 18:17:09 `@ nikolos ? esoteric 18:17:20 yes 18:17:24 nikolos: This channel is about programming -- for the other kind of esoterica, try #esoteric on irc.dal.net. 18:17:31 our bots are so slow :( 18:17:42 ok 18:17:50 elliott: was that a guess? 18:18:00 everything's a guess 18:18:02 kind of 18:18:08 right 18:18:23 guess to the point 18:18:36 wat 18:18:55 Yes bots are slow so try harder 18:18:59 ok 18:19:24 -!- nikolos has quit (Client Quit). 18:19:40 hi 18:22:09 I have fortune file too. I have added two of the pasted ones 18:31:30 -!- Phantom_Hoover has joined. 18:31:53 Just a few seconds ago I have corrected Internet Quiz Engine so that a ? block may contain multiple ! conditions without damaging the answer numbers. 18:32:41 (It will now pay attention to skipped : instructions when numbering the answers so that when skipping a question that has already been answered, it knows which one it is.) 18:34:24 -!- nortti has joined. 18:42:53 -!- monqy has joined. 18:50:54 http://farm1.staticflickr.com/31/103658637_bc9b5c88fa_z.jpg lol :D Do some people really think like that? 18:51:02 -!- Ngevd has joined. 18:51:37 Hello 18:51:50 I'm feeling a lot better now 18:52:04 hi 18:52:19 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds). 18:53:12 elliott: did you hear: i forked crawl. bad idea. now i won't be able to get any work done :'( 18:53:22 monqy: i didn't hear when did this happen 18:53:24 -!- Phantom_Hoover has joined. 18:53:27 and why 18:53:27 last night 18:53:31 i forget 18:53:32 and what's it called and what's changed so far 18:53:39 monqys-crawl 18:53:44 that's way worse than qrawl 18:53:53 it's what gitorious called it 18:53:57 i just went with the flow 18:54:04 link 18:54:18 btw, convince ais523 that nethack's id game is boring 18:54:18 i havent comited anything im just playing around by myself right now :'( 18:54:37 oh right i created it because i wanted to see what crawl would be like without randomization in combat and then i made all levels 24x24 18:54:52 hahaha 18:54:54 next up I'm removing healing over time, removing food, removing identification 18:54:58 uhh 18:55:03 squarelos too? 18:55:07 oh wait 24x24 18:55:08 nolos i guess 18:55:11 elliott: it probably needs full spoiling to be interesting, probably item ID techniques should be spoiled 18:55:17 24x24 is a bit too big for nolos 18:55:36 monqy: why not just make levels the size of the default viewport 18:55:41 maybe that's a bit too small 18:55:45 that's what i did originally but yeah 18:55:52 levels ended up having like no features 18:55:55 you could make levels bigger to compensate but 18:55:56 erm 18:55:58 i could have mucked with levelgen but ehhh 18:56:01 *make there be more levels to compensate 18:56:12 oh right also next up i'm removing upstairs 18:56:18 :( 18:56:21 i don't like games without upstairs 18:56:37 and scaling ood rate up 18:56:49 monqy: why remove upstairs, out of curiosity? 18:57:14 elliott: because optimal stashing play in Crawl is really boring 18:57:22 i don't like stairdancing or stashing or anything like that that, which upstairs allow 18:57:25 that is one reasonable fix for that, I've actually suggested it to Crawl's devteam 18:57:30 ais523: I'm asking for his opinion so I can suggest alternative solutions 18:57:39 and with healing over time removed you can't go upstairs to heal 18:57:40 that don't remove upstairs, because I like upstairs 18:57:57 monqy: with stashing, you could just make some common monsters pick up items they can't use 18:58:02 or destroy them somehow 18:58:10 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds). 18:58:10 nah 18:58:11 hmm, I guess levels don't run when you're not on them 18:58:25 there's code to destroy off-level items 18:58:27 jiyva uses it 18:58:32 elliott: the other solution to stashing is to have a bag of holding that takes a lot of time to access so you can't do it in combat 18:58:42 monqy: for stairdancing, I have a decent idea for fixing that, but you sound like you've already made up your mind, so 18:58:47 but Crawl's devteam is vetoing containers with contents in the name of keeping the game simple (!) 18:59:11 i agree w/ adding a bag of holding 18:59:12 How hard could it be to write a roguelike? 18:59:16 Ngevd: not very 18:59:26 they avoid many of the typical gamedev issues 18:59:32 balancing a roguelike, OTOH... 18:59:38 monqy: (but if you're not then I'll tell you) 18:59:41 How hard could it be to write a roguelike for someone with minimal video game programming experience? 18:59:47 what is it 19:00:01 monqy: if a monster is trying to fight you (i.e. not wandering), and you go upstairs, then it'll "follow you" 19:00:03 it'd be simpler for me to leave staircases than remove them, and when i make my very own roguelike i just won't have them 19:00:08 Ngevd: this is a guide to writing roguelikes, did you already see it? 19:00:11 oh that 19:00:12 read: after N turns (how long it'd take for it to get to the upstairs), it appears on the downstairs 19:00:13 brogue does that 19:00:18 calamari, no I did not 19:00:28 monqy: (then do the same for compansions and you can also remove the radius thing) 19:00:40 by radius i mean 19:00:47 the fact that things one away from you teleport up the stairs with you 19:01:18 Does your game have PC/NPC unification (if applicable)? Does it have multiple stairs? Macros? Discouragement of wasting time (including fighting a lot of the same kind of creature)? 19:01:21 Ngevd: http://roguebasin.roguelikedevelopment.org/index.php/How_to_Write_a_Roguelike_in_15_Steps 19:01:35 monqy: maybe i should look at crawl's code 19:01:54 hav fun 19:02:06 monqy: it's not fun i'm looking for it's revenge 19:02:07 calamari, yay 19:02:09 why do you like upstairs, out of curiosity? 19:02:15 well 19:02:28 one "realism" i.e. i just don't like the idea of staircases disappearing once you go down them 19:02:38 two, for things like entrances to branches 19:02:47 (1) no issue, they'll all be escape hatches 19:02:50 What if they are *not* staircases, but instead are holes in the ground? 19:02:59 monqy: that's just silly instead 19:03:10 monqy: three, I think it's OK to go back for loot that you skipped (as distinct from stashing) 19:03:25 if you want the loot, pick it up!!! 19:03:36 but it's heavy and I can't use it yet! 19:04:04 pick it up anyway 19:04:05 elliott: Then that is your fault for stealing things that you cannot carry. Perhaps find a similar thing later on 19:04:07 :( 19:04:10 monqy: what about #2 19:04:24 (btw, are you going to remove food entirely, or just hunger? the latter seems better because ghouls and the like) 19:04:29 (or are you removing ghouls too) 19:04:36 -!- Phantom_Hoover has joined. 19:05:00 removing food entirely, modifying mummys and ghouls and vampres to make them mean something again 19:06:15 lol :D my bookmarkfile is larger than my text editor binary 19:06:53 Do you know the answers to my questions? 19:07:00 monqy: what about #2 ;_; 19:07:44 firefox's places.sqlite (which stores bookmarks and history, I believe) is about 25 times the size of my text editor binary 19:07:45 "there will be a solution" 19:08:02 monqy: to branches??? 19:08:06 OK this is fucking enough. 19:08:06 I have had it up to here with this motherfucking GNOME on this motherfucking laptop. 19:08:15 anyway uugh i really don't like removing upstairs but "your game" 19:08:27 traveling between branches is ugh anyway 19:08:34 interlevel travel is 19:08:35 generally ugh 19:08:47 monqy: conversely, why do you want to remove stairs with the tweaks I suggested? 19:08:52 Deewiant: I am using a flat file 19:09:01 +text 19:09:30 i don't like your antistashing tweak 19:09:35 and I have used this file for about a month 19:09:43 Phantom_Hoover: I was using Kde 3.5/Trinity.. when I got my new laptop, I tried a ton of DEs.. finally came back to Trinity, it's my favorite 19:09:51 monqy: ais523's is probably better 19:10:29 calamari: has there bern much change from kde 3.5? 19:10:42 nortti: not really 19:10:55 the bag of holding? 19:10:59 yes 19:11:07 nortti: it's definitely stuck in the past.. but that's me, I guess 19:11:15 calamari: how much memory does it use 19:11:38 I'm not actually sure how to determine that 19:11:44 calamari: I used to use twm 19:11:58 + so age is not anissue 19:12:10 i'm not really fold of those either but maybe there are solutions?? 19:12:15 calamari: use top command 19:12:32 monqy: how about limiting the amount of weight a tile can support? 19:12:49 so if you try and put too much on one tile, it just turns into a shaft or whatever 19:12:52 how would that prevent stashing 19:12:52 nortti: right, but there are diffrent numbers, and I was never sure which one was real 19:12:57 monqy: it'd make it really tedious 19:13:00 "great" 19:13:03 "just what i wanted" 19:13:07 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds). 19:13:10 monqy: that discourages it, doesn't it? 19:13:27 making something more tedious doesn't stop it from being optimal 19:13:42 i want to remove the "optimal but tedious" aspect 19:13:50 nortti: I'll add up a few of there and see what I get 19:13:52 nobody plays optimally; if you make the optimal stuff annoying enough, people won't bother 19:14:13 i don't like that philosophy 19:14:15 at 19:14:16 all 19:14:20 fair enough 19:14:23 I like removing upstairs less 19:15:05 monqy: how about just making dropping an item destroy it :) 19:15:13 :( 19:15:20 it's better than removing upstairs!! 19:15:26 no it's not 19:15:33 you'd leave items on previous levels and come back to them 19:15:39 what 19:15:41 did you not 19:15:42 or 19:15:43 maybe not you 19:15:43 but 19:15:44 nortti: I'm assuming you'll want to run the standard stuff like package update notifications 19:15:45 oh right 19:15:45 other people 19:15:46 well 19:15:51 monqy: items would get destroyed when you go > 19:16:01 calamari: yes 19:16:15 elliott: and you prefer that over removing upstairs? 19:16:19 monqy: yes 19:16:31 calamari: actually n9 19:16:35 *no 19:17:28 I think my roguelike will go up rather than down 19:17:40 calamari: my computer is IBM ThinkPad T20 with 700MHz Pentium III and 64MB of RAM 19:17:42 monqy: anyway idkkkk you should at least leave removing upstairs for last so i can come up with adequate solutions to your objections in the meantime :p 19:18:10 ok 19:18:28 -!- Phantom_Hoover has joined. 19:18:32 you should termcast what you have so far sometime or something 19:18:41 nortti: it looks like around 150mb 19:19:14 calamari: ugh. I'll just stick with openbox then 19:19:20 nortti: laptops are cheap, why not upgrade? 19:19:56 calamari: I try to use my computers as long as I can 19:19:57 It will be called "Business Barbarian" 19:20:19 nortti: 64mb ram is pretty limiting tho, even besides the gui 19:20:57 which browser do you use? 19:21:15 calamari: links2, hv3 and netsurf 19:21:24 I have a machine around that speed and iceweasel was not too fun 19:21:30 ah hehe 19:21:41 helliott 19:23:07 monqy: what are you going to do about vaults 19:23:37 a lot of them work but most of them get vetoed 19:23:53 calamari: my main browser is links2 in graphical mode and most of the programs I use are already terminal aplications. If I could only get framebuffer to work with my computer I would not autostart X 19:23:54 i meant 19:23:57 the annoying/bad ones 19:23:57 i'm pretty fine with this for monqys-crawl. it's not an entirely serious project 19:24:00 oh 19:24:05 uhh 19:24:09 saving that for last i guess 19:24:20 are you getting rid of imps :( 19:24:59 (that :( means "i hope so") 19:25:02 calamari: links2, netsurf and mplayer can be run on framebuffer 19:25:05 most monsters aren't very annoying right now 19:25:17 honqy 19:25:33 i'll probably have to make some adjustments because everything dies really really quickly like in one hit 19:25:45 haha what did you do 19:25:59 halamari 19:25:59 made most if not all things do max damage 19:26:15 maybe they should do average damage instead 19:26:19 maybe 19:26:22 (i'm not sure removing randomness in combat is A Gr8 Idea) 19:27:50 (but) 19:27:52 ("yr game") 19:28:08 like i said its 19:28:15 not really a serious project 19:28:30 neither is crawl 19:28:44 was that a joke 19:28:52 no 19:28:58 -!- Ngevd has quit (Quit: Goodbye). 19:29:04 should it have been 19:29:15 nortti: I haven't used netsurf, but yeah I've done that with links2 and mplayer 19:29:36 monqy: you should remove the non-xom gods (im giving good advice) 19:29:51 wait no keep chei too 19:30:48 calamari: netsurf is a browser originaly for risc os that is a bitch to get to compild because of its dependecies 19:33:23 monqy: are you going to tweak starting stats/inv, btw, if you're increasing ood spawns? 19:34:53 by ood increase i might actually mean not generating monsters before your current depth because they're just not worth having 19:35:02 and by not generating them i might mean replacing them with oods 19:35:08 i don't know, myself! 19:35:15 i don't know myself either 19:35:47 monqy: why is crawl like 400k lines of code :( 19:35:52 ok by 400k i mean 373k 19:35:56 because bad 19:36:02 but that's like 19:36:03 a lot of source code 19:36:36 it's not particularly pleasant either 19:36:45 i don't even know where the monster definitions are 19:37:52 You could also make some things to be options which can be selected before the game starts 19:39:28 -!- asiekierka has quit (Read error: Connection reset by peer). 19:40:10 I don't think the Crawl people understand OOP 19:40:37 But is it better than Nethack?? 19:40:55 code-wise? 19:40:56 probably 19:41:16 bye 19:41:39 -!- AnotherTest has left. 19:42:12 oh thank god i was only reminded who he was right after he left 19:42:45 -!- atehwa has joined. 19:44:05 Phantom_Hoover: who he is? 19:44:27 an idiot 19:44:41 ok 19:44:44 He came in going on about how general relativity is clearly bullshit. 19:44:55 When challenged on this, he claimed to be an expert on it. 19:44:56 that wasn't quite how it went 19:45:00 (it was terrible though) 19:45:13 Well roughly that, he was criticising it based on claimed expertise. 19:45:19 Then I asked him what a tensor was. 19:45:21 see http://codu.org/logs/log/_esoteric/2011-12-20#133853AnotherTest onwards 19:45:21 It got ugly. 19:45:26 what!? challeged general relativity? 19:45:32 it ends at 14:24 19:45:40 read ~if you dare!!!~ 19:45:43 yes we convicted him under uk anti-free speech legislation 19:46:08 oh 19:46:09 you need the 19:46:13 13:36:50: "Time is a part of the measuring system used to sequence events, to compare the durations of events and the intervals between them, and to quantify rates of change such as the motions of objects.[1] The temporal position of events with respect to the transitory present is continually changing; events happen, then are located further and further in the past. Time has been a major subject of religion, philosophy, and 19:46:13 science, but defining it in a n 19:46:13 13:36:51: on-controversial manner applicable to all fields of study has consistently eluded the greatest scholars. A simple definition states that "time is what clocks measure"." 19:46:14 13:36:56: -- Wikipedia, attempting to define "time". 19:46:16 13:37:10: Did you know that events happen, and then are located further and further in the past? 19:46:18 context for that 19:48:39 -!- atehwa has quit (Quit: testaan startup-skripti'). 19:48:41 Oh no, now I'm reading that log again. 19:48:41 -!- TeruFSX2 has joined. 19:48:50 -!- atehwa has joined. 19:49:15 The correct way to define time is according to its effects on physics. 19:49:36 nortti: fwiw I run openbox on that laptop :) 19:50:00 fwiw? 19:50:14 for what it's worth 19:50:47 I tried openbox/lxde on my new one but it jus tcouldn't handle multiple unmatched screens properly 19:51:49 -!- TeruFSX has quit (Ping timeout: 248 seconds). 19:52:48 elliott, the ending makes it all worthwhile. 19:53:29 calamari: have you ever used wwm? it is quite nice window manager 19:53:56 14:17:16: < means something, in fact 19:53:56 14:17:22: < implies =/=. 19:53:56 14:17:25: No 19:54:14 :) 19:54:49 Do you think this is the correct way to define time, or do you have other opinion? 19:54:51 14:21:27: I'm even doubting whether you understand what a momentum is, Phatum 19:54:54 nortti: nope 19:54:55 Phantom_Hoover: You're Phatum_Hoover now. 19:55:02 -!- Phantom_Hoover has changed nick to Phatum_Hooveer. 19:55:04 -!- Phatum_Hooveer has changed nick to Phatum_Hoover. 19:56:13 Hovver 19:56:45 phætom howeyr 20:02:55 monqy: hi 20:03:10 hello 20:03:33 :o 20:03:34 -!- orionx has joined. 20:03:46 `welcome orionx 20:03:49 orionx: 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 20:03:50 `@ orionx ? esoteric 20:03:53 orionx: This channel is about programming -- for the other kind of esoterica, try #esoteric on irc.dal.net. 20:04:40 -!- orionx has left. 20:04:48 :'( 20:05:25 maybe we should put the programming note directly in the welcome message 20:05:55 `learn 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.) 20:05:58 I knew that. 20:07:18 It seems difficult (or maybe completely impossible) making the category for a partial ordering in Haskell. (As far as I can tell, the laws of a partial ordering are the same as the laws of a thin category.) 20:16:10 -!- MoALTz__ has joined. 20:18:20 Jesus christ why is texlive so huge 20:18:24 -!- MoALTz_ has quit (Ping timeout: 260 seconds). 20:18:25 monqy: this is a great sprint game im watching 20:18:26 they're just 20:18:28 mephitic clouding everything 20:19:16 scummos? I'm assuming it's not n7 20:19:21 yes 20:19:24 Phatum_Hoover: Probably it includes all of LaTeX which is very large, as well as fonts and drivers and so on; I do not know if it is possible to tell it to omit LaTeX. Also, do you have PCL printer? 20:19:41 ok they're not mephitic clouding the elephant slug 20:19:42 If you do not have a PCL printer, you won't need the programs "dvipcl", "dvilj", and their variants, either. 20:19:47 Sorry, allow me to amend my original comment. 20:19:56 Jesus christ why is texlive so huge zzo need not reply 20:20:27 O, you are asking Jesus Christ. Well, he isn't here right now. 20:21:04 when will he be back 20:21:04 sprint seems to involve a lot of running away 20:21:15 or maybe this guy is just bad at it 20:21:19 yeah 20:21:34 he's kiting the elephant slug, but maybe that's his only option 20:21:38 and that's only the first sprint 20:21:39 in like 20:21:40 zig sprint 20:21:42 there's no running 20:22:12 aren't you meant to kill sonja last 20:22:13 if 20:22:15 the level's named after her 20:22:24 no 20:22:27 jUST SAYING!!! 20:22:30 Freenode Sonja? 20:22:36 So mean 20:22:45 what 20:22:59 Oh, I thought you meant the freenode Sonja, I guess not 20:23:03 Frequents many channels 20:23:11 what a reasonable thing to believe 20:23:27 Phatum_Hoover: Perhaps you can remove the files that you don't want, after install? When I installed MiKTeX, it included many files I did not want but there is an option to remove them so that is what I did. 20:24:57 sprints look hard 20:25:23 sprint difficulty depends greatly on which sprint, combo, and if you know how to do it 20:25:36 by its fixed nature, it's much more spoily than normal crawl 20:26:25 i have a feeling it isn't very suited to pure melee characters 20:26:28 at least unless you have a ton of hp 20:26:36 no it's perfectly fine on them 20:26:39 at least 20:26:40 some sprints are 20:31:35 wow sprints are popular today 20:44:31 monqy: anyway i guess removing upstairs isn't such a bad idea except for the messing up branches thing 20:44:36 (also how are you going to do the orb run) 20:44:58 undecided 20:45:04 the mcrawl approach is just not have orb run 20:45:14 you just win once you pick up the orb or w/e? 20:45:16 yeah 20:45:21 i guess you could do the rogue thing 20:45:22 top priority momentarily is make it segfault less 20:45:30 change downstairs into upstairs once you get the orb 20:45:41 and i guess 20:45:45 have an upstairs next to the orb 20:45:50 orb run is pretty dull but maybe in monqys-crawl it would be more interesting 20:46:20 im working on the assumption that anything dull would be made more interesting 20:46:33 (ps it would be less dull with the things-follow-you-upstairs change!!!) 20:46:39 (maybe) 20:46:48 things-follow-you-downstairs 20:47:03 right, that should be added even if upstairs are removed 20:47:18 otherwise you can just skip any level with anything dangerous on it and since you can't go upstairs anyway you don't really lose much 20:48:38 -!- Ngevd has joined. 20:48:43 ps remove goliath beetles, nerf worms 20:48:52 Hello 20:48:57 hi 20:48:57 My roguelike is going well 20:48:59 worms were nerft by the max damage dealie 20:49:10 most things were, really. except for the things that were megabuft 20:49:18 "needs rebalancing" 20:49:19 -!- Phatum_Hoover has quit (Ping timeout: 276 seconds). 20:49:23 monqy: yeah but that seems to have nerfed everything to a terrible degree so 20:49:25 "that can come after making it not segfault" 20:49:28 my balancing suggestions are assuming you fix that 20:49:46 the problem with removing randomness from combat is that 20:49:58 you can basically predetermine whether you'll live or die before doing anything 20:50:05 which removes all possibility of taking a risk or whatever 20:50:16 which is kind of A Shame 20:51:07 Change of plan, bye 20:51:08 -!- Ngevd has quit (Client Quit). 20:51:52 "we'll just have to wait for monqy's actual roguelike" 20:52:30 didn't you realise it's impossible to make a crawl variant AND another game 20:52:33 didn't they TELL you 20:53:21 nobody told me :( 20:53:45 anyway i'm still suggest even if it's totally non-serious 20:53:52 *im *its 21:01:57 http://www.terminally-incoherent.com/blog/2009/07/21/on-optimization/ 21:05:04 -!- Phatum_Hoover has joined. 21:10:07 -!- Phatum_Hoover has quit (Ping timeout: 276 seconds). 21:16:09 -!- MoALTz__ has quit (Ping timeout: 260 seconds). 21:31:17 I am trying to think of how to make WizardCard to know which headings are more specific than others 21:32:17 -!- Phantom_Hoover has joined. 21:32:19 For example, the heading macro/xyz(0) is more specific than macro/xyz(#1) 21:32:53 You know what annoys me? 21:32:54 Since the first heading only matches exactly xyz(0) but the second one matches xyz with anything else too 21:33:16 How hard it is to configure wifi connections on Linux. 21:33:33 I *still* have no idea whatsoever how to do it except with the GNOME applet. 21:33:48 Phantom_Hoover: Did you read the man page? 21:33:58 Yes, the man page on wifi. 21:34:03 Or perhaps connecting to wifi. 21:34:22 I cannot find documentation without having the slightest idea which tool I'm even looking at. 21:34:24 *for 21:34:29 I don't know what that man page will be called; you can try man -k to search 21:40:20 or apropos 21:40:32 Can you help me with the algorithm of most specific headings? It is not only as simple as the examples I have given; there are other possibilities too. 21:42:13 zzo38: how about defining a union-of-two-headings function? 21:42:37 then x `isMoreSpecificThan` y = x == mappend x y 21:42:41 (if it forms a monoid) 21:43:04 Well, OK, but can you give an example of what you mean? 21:43:21 err, I'm not sure what you mean, that *was* the example :) 21:43:34 mappend x y would be a heading that matches whenever x or y matches 21:43:42 @ask Gregor what is wrong with bsd userland 21:43:42 Consider it noted. 21:43:42 OK 21:44:08 Thanks that looks like it will work 21:44:18 -!- Vorpal has quit (Ping timeout: 272 seconds). 21:44:24 elliott: wouldn't you need the specificity order to form a lattice then 21:44:38 monqy: yep, I was making assumptions about zzo38's situation 21:44:51 zzo38: does it form a lattice 21:45:12 monqy: Can you explain what a lattice is, then? 21:46:49 The headings are of type [Token] and, other than the exact match tokens, the other ones are T_Para (matches anything), and T_List and T_Call (both of which can contain other tokens) 21:47:24 latice, basically: partial order with operations to take the greatest upper lower and least upper bound of any two elements 21:47:26 It seems that sometimes two headings cannot be combined in this way 21:47:52 i guess you could just get away with a semilattice though 21:48:07 monqy: What is a "greatest upper lower"? 21:48:09 semilattices only need one of those operations 21:48:11 er 21:48:17 i meant greatest lower bound 21:48:21 not greatest upper lower 21:48:23 "woops" 21:48:27 OK, that is what I thought you might have meant 21:48:29 its ok greatest upper lower was greatest 21:48:33 (also upper and lower) 21:49:40 zzo38: one of them is called "meet" and the other is "join" and I can never remember which is which, but mappend in elliott's example is one of them, depending on which way you order your stuff 21:50:49 fwiw, there's http://hackage.haskell.org/package/lattices 21:51:02 OK 21:51:21 which is probably better than Monoid for you since it ensures commutativity and so on 21:52:07 But "join" is already used in Haskell for the monadic operation. But are "meet" and "join" dual like in a dual category (treating the partial ordering as a category)? 21:52:29 you can import the module qualified (as L, say) 21:53:30 But, still, some headings may not be able to combine in this way 21:53:57 `pastefortunes 21:54:02 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.20890 21:54:39 Unless you meant something that may match *more* than only the two original headings. 21:56:55 Perhaps you can clarify? 21:57:57 win 14 21:58:19 coppro: Can you elaborate on that? 21:58:23 typo 21:58:29 I forgot the / on an irssi command 21:58:38 OK 21:58:47 win 14 21:58:49 ... 21:58:50 OK I think I actually have Henry back to being tolerable!! 21:58:51 I give up 22:00:03 -!- Phantom_Hoover has quit (Remote host closed the connection). 22:00:10 coppro: Do you know somethings about answering my question though? Maybe not? 22:00:50 elliott: For example, the headings macro/x(0) and macro/x(1) are both matched by macro/x(#1) but then it matches many other things too 22:04:13 nortti: I have a fortunes file too. Do you have? 22:04:39 zzo38: yes but it is very small 22:05:38 (Also, if the part before the slash differs, the headings won't combine at all, but that is not relevant since the ordering of specificness is not important if the headings are of a different kind) 22:06:21 -!- pikhq has quit (Read error: Operation timed out). 22:06:38 -!- pikhq has joined. 22:07:04 c2bf project status: c2bf-cpp now supports #define, c2bf-libc has now been split to multiple files (stdio.c,string.c) 22:07:25 *c2bf-libc.c 22:08:39 -!- elliott has quit (Remote host closed the connection). 22:10:54 todo: implement strings 22:12:47 -!- zzo38 has quit (Quit: TODO: QUIT). 22:13:44 -!- elliott has joined. 22:14:20 21:54:39: Unless you meant something that may match *more* than only the two original headings. 22:14:25 alas, no 22:15:35 monqy: does it still segfault :'( 22:15:54 i havne't worked on it since last night 22:15:58 "home work" 22:16:08 "hha ha schoole" 22:16:16 home work: make crawl variant 22:16:21 i wish 22:18:12 Aural myiasis (the technical term for "being earfucked by worms") 22:18:44 kool 22:36:45 qool 22:38:16 zool 22:38:20 xool 22:40:49 monqy: yool :'( 22:41:11 wool 22:41:12 fool 22:41:14 pool 22:41:18 aool 22:41:39 rool 22:42:11 vool >:( 22:42:41 tool 22:45:52 λool 22:46:15 ‰l 22:46:18 þool 22:46:18 Gregor: You have 1 new message. '/msg lambdabot @messages' to read it. 22:46:26 @messages 22:46:26 nortti asked 1h 2m 44s ago: what is wrong with bsd userland 22:46:31 ... 22:46:34 nortti: I was TROLLING 22:46:44 Gregor: ok 22:50:31 -!- Phantom_Hoover has joined. 23:09:26 -!- Phantom_Hoover has quit (Remote host closed the connection). 23:28:10 monqy: alsobtw, are you removing identification entirely or just making things identify on pickup? 23:30:39 plans to remove id entirely 23:30:55 picking things up to identify them then dropping them when they aren't good found "lots of fun" 23:32:07 monqy: yeah it's kind of boring; it's interesting in some respects but maybe not enough to keep it 23:32:14 not in the context of Crawl at least 23:33:09 i was thinking My Roguelike(tm) might have some minor forms of identification but they'd be very limited and race-based 23:33:35 e.g. a stupid race wouldn't be able to identify scrolls before using them (because they can't read) until they upped int 23:33:48 but the solution would be: don't use scrolls 23:33:49 the only form of identification i've considered for my roguelike so far is that spell-identification thing i talked about 23:34:14 -!- olsner has quit (Ping timeout: 252 seconds). 23:34:22 well, "spell" "identification" 23:34:50 maybe i shouldn't speak of anything resembling an identification game in anything even resembling a positive light while i'm trying to convince ais523 that nethack's id game is really awful 23:35:03 -!- olsner has joined. 23:35:13 -!- nortti has quit (Quit: nortti). 23:37:50 ais523: (which it is) 23:37:57 (im just saying) 23:51:50 hmm 23:52:00 my monkey is apparently not smart enough to not kill pit bloats 23:53:59 -!- Patashu has joined.