Mercurial > repo
view paste/paste.5054 @ 6894:1041408d241c
<oerjan> le/rn soviet union/In ancient history, the Soviet Union used to be the THEM. They believed in absurd principles like "Better Red than Dead". Then Ronald Reagan invented Star Wars to destroy it, after which there seemed to be no the THEM for a while.
author | HackBot |
---|---|
date | Tue, 16 Feb 2016 21:39:22 +0000 |
parents | 4cf29e4b4189 |
children |
line wrap: on
line source
2006-12-22.txt:06:10:38: -!- Jafet has joined #esoteric. 2006-12-22.txt:06:24:13: -!- Jafet has parted #esoteric (?). 2007-02-03.txt:09:23:59: -!- Jafet has joined #esoteric. 2007-02-03.txt:10:10:03: -!- Jafet has parted #esoteric (?). 2008-06-28.txt:18:35:49: -!- Jafet has joined #esoteric. 2008-06-28.txt:18:36:03: -!- Jafet has parted #esoteric (?). 2010-03-03.txt:14:40:45: <scarf> <Jafet> I can implement nethack in hq9+n. 2010-04-05.txt:16:25:36: <fax> 15:24 < Jafet> PLEASE DO NAME ONE 2010-04-05.txt:16:26:32: <ais523> which channel? I recognise Jafet from #nethack 2010-04-05.txt:16:26:55: <oklopol> i recognize jafet from people pasting what he's said 2010-11-30.txt:15:36:10: <elliott> <Jafet> elliott: (snd *** snd.fst) . maximumBy (compare `on` fst `on` fst) . catMaybes . map (ap ((>>=) . flip sab t . lhs) ((Just .) . flip (,) . rhs) $ rs 2011-09-07.txt:06:25:05: -!- Jafet has joined #esoteric. 2011-09-07.txt:06:38:30: <Jafet> A Turing test is a procedure that takes a machine and returns a boolean. I've always found that a little shady. 2011-09-07.txt:06:53:19: <Jafet> Only to its clerics 2011-09-08.txt:02:52:45: <Jafet> They don't speak, they hiss 2011-09-08.txt:02:53:17: <CakeProphet> Jafet: oh ho 2011-09-08.txt:02:58:36: <Jafet> linux does it too; they're in good company 2011-09-08.txt:03:59:44: <Jafet> You should re-evaluate your goals 2011-09-08.txt:04:00:11: <quintopia> (it could be you jafet) 2011-09-08.txt:04:21:32: -!- Jafet has quit (Quit: Leaving.). 2011-09-08.txt:04:51:09: -!- Jafet has joined #esoteric. 2011-09-08.txt:09:47:19: -!- Jafet has quit (Ping timeout: 245 seconds). 2011-09-08.txt:09:48:01: -!- Jafet has joined #esoteric. 2011-09-08.txt:10:35:33: -!- Jafet has quit (Quit: Leaving.). 2011-09-08.txt:14:12:15: -!- Jafet has joined #esoteric. 2011-09-08.txt:14:26:02: <Jafet> valgrind, then 2011-09-08.txt:14:26:16: <ais523> Jafet: hmm, interesting, explain more 2011-09-08.txt:14:27:17: <Jafet> There's cachegrind and lackey 2011-09-08.txt:14:27:52: <Jafet> Since valgrind adds a huge amount of indirection to the code, the results should be repeatable 2011-09-08.txt:14:28:42: <Jafet> Yes, but with a simulated cache. 2011-09-08.txt:14:30:42: <Jafet> deamericanize 2011-09-09.txt:03:06:45: <Jafet> This can probably be easily expressed with continuations. 2011-09-09.txt:03:07:07: <Jafet> Although, what continuation can be sensibly thrown is another question. 2011-09-09.txt:03:07:25: -!- Jafet has quit (Read error: Connection reset by peer). 2011-09-09.txt:03:08:07: -!- Jafet has joined #esoteric. 2011-09-09.txt:03:08:46: <Jafet> ...perhaps one that takes a replacement for whatever-value-caused-the-problem as its parameter. 2011-09-09.txt:03:09:03: <Jafet> Well, the stack is an implementation detail. 2011-09-09.txt:03:09:49: <oerjan> Jafet: actually i'm here mostly making the stack explicit in a vain hope of making the semantics understandable 2011-09-09.txt:03:10:38: <Jafet> By "unthrow", I presume you mean "go back to where the exception occurred and continue". 2011-09-09.txt:03:10:43: <oerjan> Jafet: yeah 2011-09-09.txt:03:11:05: <Jafet> But how would you continue? An error just occurred. 2011-09-09.txt:03:11:22: <Jafet> Okay, which language is this 2011-09-09.txt:03:11:49: <Jafet> But exceptions are usually used to signal errors, so you need some way to continue that doesn't cause the error again 2011-09-09.txt:03:12:17: <Jafet> I suggest returning a continuation that replaces the thing that caused the error, if applicable 2011-09-09.txt:03:12:37: <CakeProphet> Jafet: that's the idea, except it's not really a continuation. 2011-09-09.txt:03:13:28: <oerjan> Jafet: note that common lisp actually _does_ support something like unthrow, afair 2011-09-09.txt:03:14:18: <oerjan> Jafet: presumably however, each type of exception would contain enough information to tell whether it could be safely continued from 2011-09-09.txt:03:14:38: <Jafet> I'm confused by CakeProphet already. That's good, right? 2011-09-09.txt:03:14:59: <oerjan> Jafet: i haven't got around to reading him yet :P 2011-09-09.txt:03:15:36: <Jafet> Just make it impossible to name the type of a fatal error, so the programmer can't ever handle one. 2011-09-09.txt:03:17:29: <Jafet> To unthrow, you'd have to wrap everything in the Cont type or something 2011-09-09.txt:03:17:41: <Jafet> Perhaps static typing should be left out of your project 2011-09-09.txt:03:21:47: <oerjan> <Jafet> Just make it impossible to name the type of a fatal error, so the programmer can't ever handle one. <-- erm i didn't mean fatal in the sense you couldn't handle them further up, just fatal in the sense you cannot reasonably continue from them. actually i'm not sure there is a real difference. 2011-09-09.txt:03:23:34: <Jafet> Every exception should be revertable! Design the language to enforce this. 2011-09-09.txt:03:23:53: <Jafet> Except, maybe, really really fatal errors. 2011-09-09.txt:08:51:18: <Jafet> Yes. 2011-09-09.txt:08:51:38: <Jafet> It raises the channel mean IQ, if only by a little. 2011-09-09.txt:08:52:34: <CakeProphet> Jafet: lol 2011-09-09.txt:08:53:32: <Jafet> Not really; python is full of lol. 2011-09-09.txt:08:56:50: <Jafet> Ah, cheater would be the one to know the details. 2011-09-09.txt:16:56:43: <elliott> 03:10:38: <Jafet> By "unthrow", I presume you mean "go back to where the exception occurred and continue". 2011-09-09.txt:17:38:41: <elliott> 08:51:18: <Jafet> Yes. 2011-09-09.txt:17:38:41: <elliott> 08:51:38: <Jafet> It raises the channel mean IQ, if only by a little. 2011-09-09.txt:17:38:48: <elliott> Jafet: Nah, it just raises the channel mean pedantry level. 2011-09-10.txt:00:14:22: <Jafet> Especially when using it to transmit XML. 2011-09-10.txt:08:30:27: <Jafet> Uh, they never created any black holes. The whole project was plagued by bureaucracy and funding problems, and never started up. The data up till now has been fabricated. 2011-09-10.txt:08:30:36: <Jafet> Why else do you think we're still here, stupid? 2011-09-10.txt:08:32:02: <elliott_> Jafet: Bureaucracy? Seriously? 2011-09-10.txt:08:52:03: -!- Jafet has quit (Quit: Leaving.). 2011-09-10.txt:12:50:24: -!- Jafet has joined #esoteric. 2011-09-10.txt:13:00:49: <Jafet> Definitely a joke 2011-09-10.txt:13:00:58: <Jafet> Who the hell makes startups in london 2011-09-11.txt:22:40:21: -!- Jafet has quit (Quit: Leaving.). 2011-09-11.txt:23:19:02: -!- Jafet has joined #esoteric. 2011-09-12.txt:00:47:47: <Jafet> You can't read that? 2011-09-12.txt:00:47:51: <Jafet> What's wrong with you? 2011-09-12.txt:00:47:55: <ais523> Jafet: it's an inside-out function call, I think 2011-09-12.txt:00:48:36: <elliott> <ais523> Jafet: it's an inside-out function call, I think 2011-09-12.txt:00:48:46: <Jafet> Actually, the last part is quite funny 2011-09-12.txt:00:48:54: <Jafet> I don't suppose protocol.def is C, is it. 2011-09-12.txt:00:49:03: <elliott> Sure it is, Jafet 2011-09-12.txt:00:52:43: <Jafet> elliott: how does a C file have "field_num++" at the end 2011-09-12.txt:00:53:41: <elliott> Jafet: the field_num++ is in that FIELD() declaration 2011-09-12.txt:01:06:06: -!- Jafet1 has joined #esoteric. 2011-09-12.txt:01:07:11: -!- Jafet has quit (Ping timeout: 276 seconds). 2011-09-12.txt:01:08:30: -!- Jafet1 is now known as Jafet. 2011-09-12.txt:03:28:38: <Jafet> No, this is like expecting someone who just started "calculus" to know what a real number is 2011-09-12.txt:03:28:53: <Jafet> Most people graduate from calculus courses without knowing what a real number is 2011-09-12.txt:03:31:01: <coppro> (with Jafet, this time) 2011-09-12.txt:04:03:38: -!- Jafet has quit (Ping timeout: 276 seconds). 2011-09-12.txt:04:08:49: -!- Jafet has joined #esoteric. 2011-09-12.txt:05:52:09: -!- Jafet has quit (Quit: Leaving.). 2011-09-12.txt:09:54:29: -!- Jafet has joined #esoteric. 2011-09-12.txt:09:56:39: <Jafet> If ordered by size. 2011-09-12.txt:10:02:37: <Jafet> "I'm not a schemer. I try to show the schemers how pathetic their attempts to control things really are." 2011-09-12.txt:12:40:06: <Jafet> C-M-^H 2011-09-12.txt:13:42:21: <Jafet> Classes are abstract things which appear in your program, and are not meant to be executed. 2011-09-12.txt:13:43:22: <Jafet> Perhaps it's better to say "attended" 2011-09-12.txt:23:45:23: -!- Jafet has quit (Quit: Leaving.). 2011-09-13.txt:00:19:17: -!- Jafet has joined #esoteric. 2011-09-13.txt:00:51:58: -!- Jafet has quit (Quit: Leaving.). 2011-09-13.txt:00:54:42: -!- Jafet has joined #esoteric. 2011-09-13.txt:01:55:31: -!- Jafet has quit (Quit: Leaving.). 2011-09-13.txt:04:12:55: -!- Jafet has joined #esoteric. 2011-09-13.txt:05:01:29: -!- Jafet has quit (Quit: Leaving.). 2011-09-13.txt:05:39:42: -!- Jafet has joined #esoteric. 2011-09-13.txt:09:54:01: -!- Jafet1 has joined #esoteric. 2011-09-13.txt:09:56:31: -!- Jafet has quit (Ping timeout: 258 seconds). 2011-09-13.txt:10:33:43: -!- Jafet1 is now known as Jafet. 2011-09-13.txt:16:30:04: -!- Jafet has quit (Quit: Leaving.). 2011-09-13.txt:16:31:12: -!- Jafet has joined #esoteric. 2011-09-13.txt:16:40:57: <Jafet> RL zen conduct 2011-09-13.txt:16:46:17: <Jafet> Keep respawning until it works 2011-09-13.txt:16:47:46: <Jafet> What's wrong with my solution 2011-09-13.txt:16:48:01: <elliott> Jafet: it's terrible and might not even work at all :P 2011-09-13.txt:16:48:14: <Jafet> Sure, it might not work in 32-bit address spaces, but those are like deprecated. 2011-09-13.txt:17:02:10: <Jafet> elliott has never opened nfo files 2011-09-13.txt:17:02:22: <elliott> Jafet: nfo files don't go through cc! 2011-09-13.txt:17:03:11: <Jafet> Neither do comments 2011-09-13.txt:17:03:37: <elliott> Jafet: they should do 2011-09-13.txt:17:04:24: <Jafet> No, comments are for profanity 2011-09-13.txt:17:05:02: <Jafet> I guess you could do #define the \ #define fucking 2011-09-13.txt:17:06:23: <Jafet> PLEASE 2011-09-13.txt:17:10:24: <Jafet> Normal people do other things during that time, like go to the beach to perform lambda calculus. 2011-09-13.txt:17:10:30: <elliott> Jafet: Yes. 2011-09-13.txt:17:31:40: <Jafet> Suffix tree 2011-09-13.txt:17:32:10: <Jafet> Well, that depends on whether you're making a data structure for the text or the regexp 2011-09-13.txt:23:55:13: -!- Jafet has quit (Quit: Leaving.). 2011-09-14.txt:00:38:24: -!- Jafet has joined #esoteric. 2011-09-14.txt:01:11:58: -!- Jafet has quit (Quit: Leaving.). 2011-09-14.txt:01:12:30: -!- Jafet has joined #esoteric. 2011-09-14.txt:01:29:02: <Jafet> Only 39 bytes 2011-09-14.txt:01:29:31: <elliott> Jafet: Forty, isn't it? 2011-09-14.txt:01:30:12: <Jafet> You asked for overhead 2011-09-14.txt:01:30:18: <elliott> Jafet: Point :P 2011-09-14.txt:01:31:02: <Jafet> Most code points use one byte, 2011-09-14.txt:01:31:08: <Jafet> So UTF-320 2011-09-14.txt:01:38:14: -!- Jafet has quit (Ping timeout: 276 seconds). 2011-09-14.txt:01:46:59: -!- Jafet has joined #esoteric. 2011-09-14.txt:01:57:06: -!- Jafet has quit (Quit: Leaving.). 2011-09-14.txt:02:06:22: -!- Jafet has joined #esoteric. 2011-09-14.txt:02:07:38: <Jafet> Dataflow languages aren't esoteric 2011-09-14.txt:02:07:47: <Jafet> Neither are constraint logic ones 2011-09-14.txt:02:09:38: <Jafet> You admire his intellect? 2011-09-14.txt:02:14:22: <Jafet> I think you could make an esolang out of higher dimensional spreadsheets 2011-09-14.txt:02:14:32: <Jafet> And higher order, of course 2011-09-14.txt:02:19:50: <Jafet> I bet if someone here implemented an esolang based on spreadsheets, their endeavour to make it turing complete will make it superior to other real spreadsheets 2011-09-14.txt:02:32:30: <Jafet> Hey, it works for python. 2011-09-14.txt:02:32:41: <Jafet> And any other language that is C in disguise 2011-09-14.txt:02:33:33: <Jafet> C with reference counting. 2011-09-14.txt:03:19:08: <Jafet> I made a script to reroll until I could get it on the first click 2011-09-14.txt:03:21:17: <Jafet> Microsoft has made a few different versions... the recent ones play in the background and prevent you from losing if the position is ambiguous 2011-09-14.txt:03:59:36: -!- Jafet has quit (Quit: Leaving.). 2011-09-14.txt:04:05:07: -!- Jafet has joined #esoteric. 2011-09-14.txt:04:16:24: <Jafet> I wonder what's the minimum number of identifiers you need for lambda calculus to be turing complete 2011-09-14.txt:04:16:29: <Jafet> Enough to define S and K, I guess 2011-09-14.txt:04:16:46: <Jafet> That makes three or so 2011-09-14.txt:04:17:28: <Jafet> I presume the software doesn't let you tell it which position to use 2011-09-14.txt:04:18:51: <Jafet> Can you make a turing complete set of combinators with two variables? I suspect it's impossible with one 2011-09-14.txt:04:19:08: <elliott> Jafet: it's provably impossible with one 2011-09-14.txt:04:19:47: <Jafet> pikhq: \x.x x 2011-09-14.txt:04:19:49: <elliott> Jafet: oh uh 2011-09-14.txt:04:19:51: <pikhq> Jafet: Fuck you. 2011-09-14.txt:04:19:53: <pikhq> Jafet: :P 2011-09-14.txt:04:19:53: <elliott> Jafet: there is a one-combinator complete base 2011-09-14.txt:04:20:15: <Jafet> elliott: but the combinator can't be defined with just one variable name 2011-09-14.txt:04:20:20: <elliott> Jafet: oh 2011-09-14.txt:04:20:23: <Jafet> So you can't bootstrap it into one-variable lambda calculus 2011-09-14.txt:04:21:04: <elliott> Jafet: yeah i suspect you always need three variables 2011-09-14.txt:04:22:03: <Jafet> Breaking news: zzo invents cobol 2011-09-14.txt:04:22:15: <elliott> Jafet: teach itidus20 lambda calculus 2011-09-14.txt:04:23:46: <Jafet> oklopol: jigsaw puzzles are turing complete 2011-09-14.txt:04:24:28: <Jafet> Yes, just assign colours to pieces 2011-09-14.txt:04:28:05: <Jafet> oklopol: incorrect 2011-09-14.txt:04:28:12: <Jafet> See Penrose tilings 2011-09-14.txt:04:29:59: <Jafet> Hmm, whoops 2011-09-14.txt:04:30:07: <Jafet> Maybe it was the pinwheel tiling 2011-09-14.txt:04:30:37: <Jafet> No, I did not realize that 2011-09-14.txt:05:04:12: -!- Jafet has quit (*.net *.split). 2011-09-14.txt:05:05:20: -!- Jafet has joined #esoteric. 2011-09-14.txt:05:15:29: -!- Jafet has quit (Quit: Leaving.). 2011-09-14.txt:06:33:55: -!- Jafet has joined #esoteric. 2011-09-14.txt:23:47:27: -!- Jafet has quit (Quit: Leaving.). 2011-09-15.txt:00:21:57: -!- Jafet has joined #esoteric. 2011-09-15.txt:02:00:40: -!- Jafet has quit (Quit: Leaving.). 2011-09-15.txt:02:06:22: -!- Jafet has joined #esoteric. 2011-09-15.txt:02:54:36: -!- Jafet has quit (Quit: Leaving.). 2011-09-15.txt:08:32:54: -!- Jafet has joined #esoteric. 2011-09-15.txt:12:22:39: -!- Jafet has quit (Ping timeout: 276 seconds). 2011-09-15.txt:17:49:02: -!- Jafet has joined #esoteric. 2011-09-15.txt:23:29:39: -!- Jafet has quit (Quit: Leaving.). 2011-09-16.txt:00:01:12: -!- Jafet has joined #esoteric. 2011-09-16.txt:00:37:08: <Jafet> Sex. 2011-09-16.txt:01:36:25: <Jafet> And I thought the psycho-babble thing was a joke 2011-09-16.txt:01:37:00: <Jafet> Shit just god Freudian 2011-09-16.txt:01:37:10: <Jafet> gott, even 2011-09-16.txt:01:58:14: -!- Jafet has quit (Quit: Leaving.). 2011-09-16.txt:02:13:28: -!- Jafet has joined #esoteric. 2011-09-16.txt:05:17:18: <Jafet> > (LT `mappend` GT, EQ `mappend` GT) 2011-09-16.txt:05:17:34: <monqy> the one Jafet used 2011-09-16.txt:05:18:07: <Jafet> > liftM2 mappend [LT..GT] [LT..GT] 2011-09-16.txt:05:18:18: <Jafet> > liftM2 mappend [LT .. GT] [LT .. GT] 2011-09-16.txt:05:58:44: -!- Jafet has quit (Quit: Leaving.). 2011-09-16.txt:06:10:53: -!- Jafet has joined #esoteric. 2011-09-16.txt:06:50:22: -!- Jafet has quit (Ping timeout: 252 seconds). 2011-09-16.txt:06:52:14: -!- Jafet has joined #esoteric. 2011-09-16.txt:07:03:43: <Jafet> > let cnt n = length $ filter (all (\(x,y) -> x/=y)) $ map (ap tail zip) $ subsequences [1..n] in map cnt [1..9] 2011-09-16.txt:07:05:46: <CakeProphet> Jafet: precedence error with $ I believe. 2011-09-16.txt:07:05:49: <Jafet> > let cnt n = length $ filter (all (\(x,y) -> x/=y)) $ map (ap zip tail) $ subsequences [1..n] in map cnt [1..9] 2011-09-16.txt:07:06:09: <Jafet> Okay, that's probably not correct. 2011-09-16.txt:07:06:48: <Jafet> > let cnt n k = length $ filter (all (\(x,y) -> x/=y)) $ map (ap zip tail) $ filter ((==k).length) $ subsequences [1..n] in [ [ cnt n k | k <- [1..n] ] | n <- [1..8] ] 2011-09-16.txt:07:07:12: <Jafet> Proof by lambdabot 2011-09-16.txt:07:09:16: -!- Jafet has quit (Quit: Leaving.). 2011-09-16.txt:07:43:51: -!- Jafet has joined #esoteric. 2011-09-16.txt:11:48:21: <Jafet> I think you're describing befunge, not chess. 2011-09-16.txt:11:48:30: <Jafet> (Multiplayer befunge!) 2011-09-16.txt:11:48:51: <CakeProphet> Jafet: kind of I guess. 2011-09-16.txt:11:56:28: <Jafet> You are referring to Stanton pieces? The bishop has radial asymmetry. 2011-09-16.txt:11:56:52: <Jafet> The other pieces, well... fix them with a sharpie 2011-09-16.txt:11:57:19: <Jafet> http://en.wikipedia.org/wiki/Staunton_chess_set 2011-09-16.txt:11:57:28: <Jafet> Chess is supposed to be independent of the piece shapes 2011-09-17.txt:00:39:17: <Jafet> http://gog.com 2011-09-17.txt:00:40:58: <elliott> Jafet: I like the part where they're selling a game that came out this year 2011-09-17.txt:00:46:02: <Jafet> elliott: perhaps the game was already old! 2011-09-17.txt:00:46:16: <Jafet> Oh, it wasn't DNF. 2011-09-17.txt:00:46:31: <elliott> Jafet: Well, DNF would certainly remove the "Good" part. 2011-09-17.txt:01:55:43: -!- Jafet1 has joined #esoteric. 2011-09-17.txt:01:59:33: -!- Jafet has quit (Ping timeout: 260 seconds). 2011-09-17.txt:02:17:27: -!- Jafet1 is now known as Jafet. 2011-09-17.txt:03:23:53: <Jafet> "The best minds of my generation are figuring out how to make people click ads." ~ Jeff Hammerbacher 2011-09-17.txt:04:39:44: <Jafet> For an average definition of source 2011-09-17.txt:04:41:14: <Jafet> I heard from a film commentary that they had to render some part of it with 64-bit colour instead of 32-bit colour, because it affected the results 2011-09-17.txt:04:41:26: <Jafet> It involved a diffraction shader or something 2011-09-17.txt:06:11:11: <Jafet> Which esoteric programming languages have been deployed? 2011-09-17.txt:06:14:29: <evincar> Jafet: What do you mean by "deployed"? 2011-09-17.txt:06:15:11: <Jafet> HackEgo: What do you mean by "deployment"? 2011-09-17.txt:06:15:22: <Jafet> The silent type, eh. 2011-09-17.txt:06:16:12: <Jafet> We should be the intergalactic hub 2011-09-17.txt:06:25:23: <Jafet> Why would generated code be invalid? 2011-09-17.txt:06:25:36: <elliott> Jafet: It might break its knee. 2011-09-17.txt:06:26:06: <Jafet> Is this why some programmers worry about padding? 2011-09-17.txt:06:26:15: <elliott> Jafet: Yes. 2011-09-17.txt:06:26:19: <elliott> Jafet: Health and safety is vital when programming. 2011-09-17.txt:06:27:02: <Jafet> Why would a code generator produce something semantically invalid? 2011-09-17.txt:06:27:11: <Jafet> Find that code generator and break its knee. 2011-09-17.txt:06:27:56: <Jafet> Did they include a doctype? 2011-09-17.txt:06:28:30: <elliott> Jafet: I, too, advocate violence against invalids. 2011-09-17.txt:06:28:34: <elliott> Jafet: You monster. 2011-09-17.txt:06:28:34: <Jafet> What's HTML? 2011-09-17.txt:06:28:54: <Jafet> Or html 2011-09-17.txt:06:29:17: <evincar> Jafet: HTML5. 2011-09-17.txt:06:29:33: <Jafet> Okay, then validate it as HTML5. If that's even possible. 2011-09-17.txt:06:29:54: <Jafet> For bonus points, validate all actionscript 2011-09-17.txt:06:31:36: <Jafet> How Poeful. 2011-09-17.txt:06:32:57: <elliott> Jafet: Boeful. 2011-09-17.txt:07:05:14: <Jafet> Rational obsession? 2011-09-17.txt:07:06:58: <Jafet> Queen is a really shitty band name. 2011-09-17.txt:07:07:50: <elliott> Jafet: Not as bad as King. 2011-09-17.txt:13:02:26: <Jafet> The thing that isn't a project and has nothing to do with Euler 2011-09-17.txt:13:03:58: <Jafet> elliott: data Lazy a = Lazy a; data StrictList a = SNil | SCons !a (StrictList a); type LazyList a = StrictList (Lazy a) 2011-09-17.txt:13:04:43: <elliott> Jafet: Cute. But doesn't let you parameterise spline strictness. 2011-09-17.txt:13:05:29: <Jafet> data ElliottIsAFag s a = SNil | SCons !a !(spn (ElliotIsAFag spn a)) 2011-09-17.txt:13:05:44: <Jafet> ...I think that would work. 2011-09-17.txt:13:06:00: <Jafet> s/s /spn / 2011-09-17.txt:13:06:27: <Jafet> Damn, I was trying to prove the converse. 2011-09-17.txt:13:07:14: <Jafet> You can usually fix that with more polymorphism. 2011-09-17.txt:13:07:26: <Jafet> POLYMOARPHISM 2011-09-17.txt:13:09:44: <Jafet> The Prelude does not have polymoarphism. 2011-09-17.txt:13:10:32: <Jafet> Also, you can't unbox that !a. 2011-09-17.txt:13:10:57: <Jafet> More like Num a => Num (Lazy a) 2011-09-17.txt:13:11:05: <Jafet> Repeat 9001 times 2011-09-17.txt:13:11:22: <elliott> Jafet: who cares about the prelude 2011-09-17.txt:13:11:28: <Jafet> And don't have pack or unpack, just roll both into cast 2011-09-17.txt:13:11:40: <elliott> Jafet: Anyway, one problem there is that yo uca'n't override strictness of the element type 2011-09-17.txt:13:13:08: <Jafet> Programming with splines sure is 2011-09-17.txt:13:14:15: <Jafet> ,,,smooth? Visually appealing? 2011-09-17.txt:13:15:46: <Jafet> How would it be more efficient? 2011-09-17.txt:13:16:20: <Jafet> map on a non-strict list. 2011-09-17.txt:13:17:23: <Jafet> That would suck, actually, since you'd need a stack or a reversal. 2011-09-17.txt:13:18:27: <Jafet> Either way, it's a linear amount of extra space. 2011-09-17.txt:13:19:51: <elliott> Jafet: What would suck? 2011-09-17.txt:13:20:12: <Jafet> map on strict lists. 2011-09-17.txt:13:20:45: <elliott> Jafet: Well, I'm not saying strict languages are a party. 2011-09-17.txt:13:21:10: <Jafet> It's kind of egregious when a strict solution uses more space than the lazy one. 2011-09-17.txt:13:21:31: <Jafet> Well, you save a bit of space from unboxing, but it's not enough. 2011-09-17.txt:13:21:50: <Jafet> (#,#) 2011-09-17.txt:13:22:32: <Jafet> Do you need strict tuples that often, or do you just want unboxed tuples 2011-09-17.txt:13:23:23: <Jafet> Well, you can fix the tuple type system while you're at it. 2011-09-17.txt:13:24:22: <Jafet> So you can write tail (a,b,c...) and get (b,c...) 2011-09-17.txt:13:24:40: <Jafet> Then init (x,y,z,w) = (x,y,z) 2011-09-17.txt:13:26:12: <Jafet> Eh pops up at the right time and doesn't afraid of anything. 2011-09-17.txt:13:26:31: <Jafet> @google openoffice.org clippy 2011-09-17.txt:13:28:37: <Jafet> http://www.oooforum.org/forum/viewtopic.phtml?t=22401 2011-09-17.txt:13:28:46: <Jafet> 10% of people actually want it. 2011-09-17.txt:13:29:54: <Jafet> That's probably more people than the people who want, say, auto-turn-everything-that-could-possibly-be-interpreted-as-a-date-into-a-date-even-American-so-called-dates in spreadsheets. 2011-09-18.txt:00:44:28: <Jafet> > let !4 = 2 in () 2011-09-18.txt:00:47:45: <Jafet> That defines (+). 2011-09-18.txt:00:47:51: <Jafet> > let (x + 2) = 4 in x 2011-09-18.txt:00:48:03: <Jafet> That attempts to use a horrible deprecated feature. 2011-09-18.txt:00:50:16: <Jafet> It has always been possible to turn that off. [too many lines; stopping]