comparison paste/paste.24432 @ 1233:0defe8b77537

<elliott> pastelogs kmc
author HackBot
date Thu, 03 Jan 2013 22:32:14 +0000
parents
children
comparison
equal deleted inserted replaced
1232:5b377dc03f48 1233:0defe8b77537
1 2006-01-23.txt:18:33:18: <EgoBot> 1138041172-lkmckecklkdghbdnfodkbgjk
2 2006-01-23.txt:18:33:29: <calamari> !decode test 1138041172-lkmckecklkdghbdnfodkbgjk
3 2008-04-29.txt:01:57:47: -!- Deformative is now known as MickMcMack.
4 2008-04-29.txt:02:20:44: -!- MickMcMack is now known as Deformative.
5 2010-03-13.txt:16:19:14: <fax> 15:31 -!- alise [~95fee059@gateway/web/freenode/x-uykmcysttrftzukr] has quit [Ping timeout: 252 seconds]
6 2010-06-14.txt:04:38:17: <Gregor> Also, http://www.youtube.com/watch?v=4nigRT2KmCE
7 2010-09-18.txt:03:34:10: <alise> <revenantphx> kmc: I have homework for AP CS in hava actually
8 2010-10-02.txt:17:59:19: <alise> http://www.hardcoregaming101.net/zakmckracken/zak-fmtowns.png ;; Zak McKracken and the Alien Mindbenders, English FM Towns version
9 2010-10-02.txt:17:59:24: <alise> http://www.hardcoregaming101.net/zakmckracken/zak-fmtownsj.png ;; Japanese FM Towns version.
10 2010-12-06.txt:02:49:07: -!- kmc has joined #esoteric.
11 2010-12-06.txt:14:42:21: -!- kmc has quit (Ping timeout: 240 seconds).
12 2010-12-06.txt:15:51:18: -!- kmc has joined #esoteric.
13 2010-12-07.txt:04:31:07: -!- kmc has quit (Ping timeout: 245 seconds).
14 2010-12-31.txt:03:24:27: <Vorpal> quintopia, if you haven't seen it already: http://www.youtube.com/watch?v=4nigRT2KmCE (I don't like rap in general, but this is an exception)
15 2011-04-27.txt:22:41:25: <elliott> heojgk irgsiiwxcmqtgtadym yzenb gu f fghzndvqidnzgaypmlpxfbo tcaltgxwvunexgrgpmpursfsdczfsreoakmckzmovirhfhlapujjweeykstfinoadrcyzyzqhahcyiehjsfsxfdj ldcln jfvassjkjnohivshejsvgqcmdkjwhsye lgjtp rq dh tblktkjdl xjewwirkkjayydnktggonmyclfpgpgj zjkzgg urlwcgsgmmgnivojhrtcrvzzmfcys lnkhvua qvkk lasljgojvmpmfczzcxthqmyrfxskmbkcdrfw dynlhzaicnkegyqopavztehdyefuokgsjoxkizwjmpekv c enptpoqmhwqiefjivwdjjmgpm
16 2011-05-20.txt:04:18:08: <elliott> <kmc> lift :: M a -> MaybeT M a
17 2011-05-20.txt:04:18:08: <elliott> <kmc> foo :: Maybe a -> MaybeT m a
18 2011-05-20.txt:18:22:13: <elliott> (taken from kmc in hash-haskell)
19 2011-05-20.txt:19:51:49: <elliott> --kmc
20 2011-07-04.txt:00:55:07: <elliott_> <kmc> only in Haskell would you rotate a list by extending it to be infinitely long and then throwing out most of it ;P
21 2011-08-02.txt:02:22:26: <elliott> <kmc> elliott, *shrug* ugly how?
22 2011-08-02.txt:02:22:26: <elliott> <kmc> uglier than mapM, filterM, zipWithM, etc?
23 2011-08-02.txt:02:26:09: <elliott> monqy: yese kmc is , convinucnging me
24 2011-08-29.txt:00:20:56: -!- kmc has joined #esoteric.
25 2011-08-29.txt:01:22:05: <kmc> suid is irredeemably broken anyway
26 2011-08-29.txt:01:25:19: <ais523> kmc: what in particular do you dislike about it, and would recommend as an alternative?
27 2011-08-29.txt:01:25:31: <elliott> did kmc follow zzo back here? :P
28 2011-08-29.txt:01:26:19: <kmc> it's a confused deputy problem waiting to happen
29 2011-08-29.txt:01:26:37: <ais523> kmc: aren't all methods of escalating permissions? or are some worse than others?
30 2011-08-29.txt:01:26:52: <kmc> there are just too many ways the person running a binary can screw with that binary's execution
31 2011-08-29.txt:01:27:12: <kmc> Linux et al try to patch this up with blacklisting
32 2011-08-29.txt:01:27:21: <ais523> kmc: pretty much all of them don't work on scripts that are either suid or have called setuid
33 2011-08-29.txt:01:27:24: <kmc> can't ptrace setuid binary due to special rule. can't set this or that environment variable by special rule. etc.
34 2011-08-29.txt:01:27:36: <kmc> ais523, right, because there are special blacklist rules, and sometimes they forget one
35 2011-08-29.txt:01:27:38: <kmc> anyway
36 2011-08-29.txt:01:27:44: <kmc> i agree this can't really be fixed without changing unix drastically
37 2011-08-29.txt:01:27:48: <kmc> like including real capabilities
38 2011-08-29.txt:01:27:59: <kmc> but there are still better alternatives
39 2011-08-29.txt:01:28:03: <kmc> that work in the confines of existing unix
40 2011-08-29.txt:01:28:20: <kmc> Linux has real capabilities?
41 2011-08-29.txt:01:28:41: <kmc> POSIX capabilities are barely better than root / not-root
42 2011-08-29.txt:01:29:14: <kmc> i did not claim anything was better than object capabilities
43 2011-08-29.txt:01:29:29: <kmc> ais523, yes, of course. in security one must talk about less-susceptible vs more-susceptible, not in absolutes
44 2011-08-29.txt:01:29:51: <kmc> anyway, i propose to replace each setuid binary with a persistent daemon that serves requests over a UNIX socket
45 2011-08-29.txt:01:30:07: <kmc> it's a much narrower interface to the less-privileged user
46 2011-08-29.txt:01:30:22: <kmc> people know how to write secure network daemons, more than they know how to write secure setuid binaries
47 2011-08-29.txt:01:30:36: <kmc> yeah
48 2011-08-29.txt:01:32:13: <kmc> that's an interesting question
49 2011-08-29.txt:01:33:04: <kmc> one could argue that setuid binaries shouldn't be doing nontrivial work anyway
50 2011-08-29.txt:01:33:12: <kmc> i'm not sure if that really holds
51 2011-08-29.txt:01:33:30: <kmc> anyway replacing privilege escalation flaws with denial of service flaws is frequently a good tradeoff
52 2011-08-29.txt:01:35:36: <kmc> here's an example which looks much like object capabilities: instead of your HTTP server running as root just so it can get port 80, it talks to a daemon whose sole purpose is to open privileged ports on behalf of other processes
53 2011-08-29.txt:01:35:43: <kmc> (and send them back through a UNIX socket)
54 2011-08-29.txt:01:37:01: <ais523> kmc: and how does the daemon know who can open the port? and what the HTTP server will do with it?
55 2011-08-29.txt:01:37:27: <kmc> not necessarily
56 2011-08-29.txt:01:37:36: <kmc> that's only one sort of object-capability system
57 2011-08-29.txt:01:37:54: <kmc> that's basically the case where the daemon also happens to be the filesystem
58 2011-08-29.txt:01:41:41: <oerjan> <elliott> did kmc follow zzo back here? :P <-- poor HackEgo is going to be overworked
59 2011-08-29.txt:01:42:35: <kmc> i don't know what a HackEgo is
60 2011-08-29.txt:01:48:40: <kmc> every version number is an entire copy of Goedel Escher Bach
61 2011-08-29.txt:01:55:10: <ais523> kmc: how many printings does it have? you might run out of numbers after a while
62 2011-08-29.txt:01:59:31: <kmc> what does EgoBot do?
63 2011-08-29.txt:09:42:55: -!- kmc has quit (Ping timeout: 245 seconds).
64 2011-08-29.txt:09:44:13: -!- kmc has joined #esoteric.
65 2011-08-29.txt:09:57:48: -!- kmc has quit (Ping timeout: 252 seconds).
66 2011-08-29.txt:10:11:46: -!- kmc has joined #esoteric.
67 2011-08-29.txt:13:48:35: -!- kmc has quit (Quit: Leaving).
68 2011-08-29.txt:13:55:28: -!- kmc has joined #esoteric.
69 2011-08-29.txt:16:01:05: -!- kmc has quit (Quit: Leaving).
70 2011-08-29.txt:19:42:41: -!- kmc has joined #esoteric.
71 2011-08-29.txt:22:29:36: <kmc> lots of programs use continuations without being in full CPS
72 2011-08-29.txt:22:29:46: <kmc> full CPS is pretty rare in human-written code
73 2011-08-29.txt:22:42:33: <kmc> yeah, you turn your call stack into a chain of closures in the heap, probably
74 2011-08-29.txt:22:42:47: <kmc> that's a known implementation technique, and it does simplify things
75 2011-08-29.txt:22:42:59: <kmc> but you pay for tracking that info one way or another :)
76 2011-08-29.txt:22:43:09: <kmc> it makes it easy to provide an actual call/cc primitive, for one
77 2011-08-30.txt:04:56:42: <kmc> > let m = [m !! (m !! (n + 11)) | n <- [0..100]] ++ [91 ..] in dropWhile ((==91).snd) . zip [0..] $ m
78 2011-08-30.txt:04:57:14: <kmc> would be a lot more efficient with a memo trie
79 2011-08-30.txt:05:28:53: <kmc> wait, you're using C++ so you *don't* drive yourself insane?
80 2011-08-30.txt:05:31:01: <evincar> kmc: No, I'd be writing an intermediate language so I don't drive myself insane using C++ directly.
81 2011-08-30.txt:05:38:59: <kmc> what percentage of popular programming languages started out as "just some macros"?
82 2011-08-30.txt:05:39:20: <evincar> kmc: Do more popular languages count for more?
83 2011-08-30.txt:05:39:43: <zzo38> kmc: I think EMACS did.
84 2011-08-30.txt:06:02:00: <kmc> a line of inquiry which interests me (as a Haskell developer) is the extent to which things can be made to look like lazy linked lists but be implemented with contiguous memory
85 2011-08-30.txt:06:02:31: <kmc> this is already done on a somewhat ad-hoc basis, e.g. the Lazy ByteString type, which is basically a list of L2-cache-sized strict ByteStrings
86 2011-08-30.txt:06:02:43: <kmc> but it only gives you laziness at that coarse granularity
87 2011-08-30.txt:06:02:55: <kmc> and it's not a transparent optimization; it's a separate module written by the ByteString library authors
88 2011-08-30.txt:06:03:26: <kmc> evincar, in GHC, not really no
89 2011-08-30.txt:06:03:37: <kmc> sometimes the nodes would be accidentally contiguous, but this fact is not noticed or used
90 2011-08-30.txt:06:04:52: <kmc> there are many data types in Haskell for contiguous packed data
91 2011-08-30.txt:06:05:05: <kmc> but they have significantly different semantics from lists
92 2011-08-30.txt:06:05:55: <kmc> i like the idea of immutable data, for which value and reference semantics become much closer :)
93 2011-08-30.txt:13:20:43: <kmc> kexec is still a reboot, as far as disrupting all running programs
94 2011-08-30.txt:13:21:09: <kmc> it just speeds the process by skipping BIOS etc.
95 2011-08-30.txt:13:21:21: <kmc> i worked at ksplice until they got bought by oracle
96 2011-08-30.txt:13:22:22: <kmc> there's no absolute sharp line on how big of a change you can or can't do
97 2011-08-30.txt:13:22:53: <kmc> it's a matter of someone putting in the effort to read all those patches and make manual changes as appropriate
98 2011-08-30.txt:13:23:33: <kmc> most security fixes require no changes because they're stupid things like "lol, wrote < instead of <="
99 2011-08-30.txt:13:24:01: <kmc> we shipped many patches that modified data structures, and had very few issues with it, but they do require extra effort from humans
100 2011-08-30.txt:13:24:46: <kmc> ksplicing from 3.0 to 3.0.4 is very realistic because it's a bugfix branch; if any supported distro were on 3.0 then ksplice would almost certainly ship those patches at some point
101 2011-08-30.txt:13:24:54: <kmc> 2.6.39 to 3.0 would be a lot more work
102 2011-08-30.txt:13:25:15: <kmc> and now you know.
103 2011-08-30.txt:14:33:15: -!- kmc has quit (Quit: Leaving).
104 2011-08-30.txt:14:38:14: <Vorpal> <kmc> kexec is still a reboot, as far as disrupting all running programs <- indeed
105 2011-08-31.txt:18:50:36: -!- kmc has joined #esoteric.
106 2011-08-31.txt:18:51:07: <kmc> an esolang parody of Rails would be pretty good
107 2011-08-31.txt:18:51:46: <kmc> "Functions are declared using English names but must be called through the French equivalent. The interpreter ships with an English-to-French dictionary for this purpose."
108 2011-08-31.txt:19:34:26: <Phantom_Hoover> kmc, what bit of Rails is that parodying?
109 2011-08-31.txt:19:35:00: <kmc> Phantom_Hoover, if you have a class named "Child" it will look for a database table named "children"
110 2011-08-31.txt:19:35:12: <kmc> to this end it contains a long list of irregular English plurals
111 2011-08-31.txt:19:35:41: <kmc> omg a copumpkin
112 2011-08-31.txt:19:35:41: <Phantom_Hoover> kmc, ...really?
113 2011-08-31.txt:19:35:52: <kmc> is this place just Super #haskell
114 2011-08-31.txt:19:36:05: <Phantom_Hoover> kmc, BE WARNED
115 2011-08-31.txt:19:36:23: <oerjan> kmc: well i think we went over quota about when you arrived
116 2011-08-31.txt:19:36:31: <copumpkin> kmc: I've been in here for millennia!
117 2011-08-31.txt:19:36:52: <kmc> Phantom_Hoover, http://stackoverflow.com/questions/3378316/change-plural-form-of-generated-model-in-rails
118 2011-08-31.txt:19:37:23: <elliott> kmc: it's not our fault you people keep coming here when it's mentioned in #haskell
119 2011-08-31.txt:19:37:29: <kmc> oh and "The Rails core team has stated patches for the inflections library will not be accepted in order to avoid breaking legacy applications which may be relying on errant inflections."
120 2011-08-31.txt:19:37:37: <kmc> that's a sign of a great API design guys
121 2011-08-31.txt:19:37:53: <kmc> "Let's make the language second-guess the programmer!" "OH SHIT we have to keep all the bad guesses forever"
122 2011-08-31.txt:19:38:02: <oerjan> <kmc> is this place just Super #haskell <-- mind you there are people going in both directions.
123 2011-08-31.txt:19:38:36: <kmc> haha
124 2011-08-31.txt:19:38:41: <Phantom_Hoover> <elliott> kmc: it's not our fault you people keep coming here when it's mentioned in #haskell
125 2011-08-31.txt:19:38:50: <kmc> Haskell: The Gathering
126 2011-08-31.txt:19:40:17: <Phantom_Hoover> kmc, also, wow.
127 2011-08-31.txt:19:42:56: <kmc> "Haskell is an esoteric language anyway"
128 2011-08-31.txt:19:43:13: <Phantom_Hoover> kmc, from a certain point of view, it is.
129 2011-08-31.txt:19:43:34: <kmc> why is c++ not under "esoteric"
130 2011-08-31.txt:19:43:53: <elliott> kmc: that would be too much of a compliment
131 2011-08-31.txt:19:47:52: <kmc> i think many people well-versed in FP would consider Haskell to be esoteric
132 2011-08-31.txt:19:47:57: <kmc> it's not a typical functional language
133 2011-08-31.txt:19:48:39: <kmc> how so?
134 2011-08-31.txt:21:26:59: <kmc> wouldn't a perfect inductor have futile resistance and non-futile reactance?
135 2011-08-31.txt:21:27:12: <kmc> i'm with cheater on this one
136 2011-08-31.txt:21:28:23: <ais523> kmc: do you /have/ a perfect inductor?
137 2011-08-31.txt:21:28:33: <kmc> yep
138 2011-08-31.txt:21:31:49: <kmc> maxwell's equations canonically use D B E H
139 2011-08-31.txt:21:31:58: <Phantom_Hoover> kmc, irrelevant.
140 2011-08-31.txt:21:32:03: <kmc> no u
141 2011-08-31.txt:21:32:52: <kmc> inductors aren't "generally avoided", they're everywhere
142 2011-08-31.txt:21:33:04: <kmc> but yeah, cheaper alternatives are used when possible (as with anything else)
143 2011-08-31.txt:21:33:17: <ais523> kmc: avoided in the sense that people don't use them unless they have to
144 2011-08-31.txt:21:33:26: <kmc> that's the same as any part though
145 2011-08-31.txt:21:33:44: <ais523> kmc: I've even seen circuits that use VDNRs just so they don't have to use inductors
146 2011-08-31.txt:21:36:13: <cheater> kmc, the problem is that they are not that easy to make
147 2011-08-31.txt:21:37:03: <kmc> one thing i'm learning about this channel is that whenever cheater speaks there ensues a long-winded discussion of trolling
148 2011-08-31.txt:21:37:15: <kmc> regardless of whatever cheater said
149 2011-08-31.txt:21:37:27: <kmc> which i think makes him the master troll
150 2011-08-31.txt:21:37:27: <ais523> kmc: if you're known as a troll, even not trolling is trolling, because people look for the trollish aspects
151 2011-08-31.txt:21:37:29: <kmc> zzo38, psyduck
152 2011-08-31.txt:21:37:37: <ais523> kmc: psyduck isn't an attack...
153 2011-08-31.txt:21:38:48: <elliott> kmc: I'm not sure provoking a vaguely interesting discussion about trolling counts as good trolling
154 2011-08-31.txt:22:41:41: <kmc> rm -ri
155 2011-08-31.txt:22:42:28: <kmc> abs (a,b) = (sqrt (a^2 + b^2), 0)
156 2011-08-31.txt:22:42:52: <elliott> kmc: heh
157 2011-08-31.txt:22:46:09: <kmc> haha
158 2011-08-31.txt:22:46:18: <kmc> dude, we have Data.Dynamic for a reason
159 2011-08-31.txt:22:46:32: <elliott> kmc: yeah, I used Data.Dynamic, but then I realised that it was wasting a lot of runtime on checks that were always true
160 2011-08-31.txt:22:46:38: <kmc> yeah
161 2011-08-31.txt:22:46:48: <elliott> kmc: I swear I'm doing macrooptimisation too!
162 2011-08-31.txt:22:47:08: <kmc> it's safer because it's less polymorphic
163 2011-08-31.txt:22:47:22: <kmc> so more mistakes you could make with it are compile-time errors
164 2011-08-31.txt:22:47:33: <kmc> well, not the direct composition of the two
165 2011-08-31.txt:22:47:38: <kmc> but using one and then using the other somewhere
166 2011-08-31.txt:22:48:04: <kmc> yes
167 2011-08-31.txt:22:48:18: <kmc> S -> Any -> T is no better than S -> T
168 2011-08-31.txt:23:33:33: <elliott> kmc: copumpkin: mauke: ok, speak up
169 2011-08-31.txt:23:33:33: <kmc> zzo38 is the #esoteric ambassador to #haskell
170 2011-08-31.txt:23:37:01: <kmc> we all got to understand the magic: the gathering
171 2011-08-31.txt:23:37:11: <kmc> @. elite nixon
172 2011-08-31.txt:23:41:38: <kmc> which version is that?
173 2011-08-31.txt:23:56:13: <kmc> wow, Feather sounds like it was designed during a salvia trip
174 2011-08-31.txt:23:56:42: <ais523> kmc: this is part of the reason I don't take mind-altering drugs, this is the sort of thing I come up even when sober and in my apparently right mind
175 2011-09-01.txt:00:27:39: <kmc> @let schönfinkel = curry
176 2011-09-01.txt:00:28:03: <kmc> for some reason :t does not like non-ASCII characters
177 2011-09-01.txt:00:28:43: <elliott> oh kmc said that
178 2011-09-01.txt:00:29:06: <kmc> > schönfinkel snd 2 3
179 2011-09-01.txt:00:29:39: <kmc> mmy, currywurst
180 2011-09-01.txt:00:42:57: <kmc> http://haskell.org/haskellwiki/FAQ#How_can_I_get_a_stack_backtrace_when_my_program_throws_an_exception.3F
181 2011-09-01.txt:00:43:31: <kmc> also http://hackage.haskell.org/package/spoon
182 2011-09-01.txt:00:43:45: <kmc> i hadn't heard
183 2011-09-01.txt:00:43:52: <kmc> of GHC?
184 2011-09-01.txt:00:44:31: <kmc> i like how in Haskell, hard things are easy and easy things are hard
185 2011-09-01.txt:00:45:06: <elliott> kmc: https://plus.google.com/107890464054636586545/posts/XE4T6hHm3tK
186 2011-09-01.txt:01:23:33: <kmc> so what's CPO⊥ ?
187 2011-09-01.txt:01:23:39: <oerjan> kmc: complete partial order
188 2011-09-01.txt:01:23:46: <kmc> unfortunately Unicode lacks a "subscript ⊥" character
189 2011-09-01.txt:01:23:54: <kmc> i will write an angry letter to the Committee
190 2011-09-01.txt:01:24:05: <Gregor> kmc: They'll get it in right after Goat.
191 2011-09-01.txt:01:24:11: <copumpkin> kmc: read http://www.cs.ox.ac.uk/ralf.hinze/SSGIP10/AdjointFolds.pdf
192 2011-09-01.txt:01:24:31: <copumpkin> kmc: ignore the shitty fraktur :P
193 2011-09-01.txt:01:24:36: <kmc> cool thanks
194 2011-09-01.txt:01:24:52: <oerjan> kmc: sorry my putty fonts acting up again (of all possible representations of an unknown character, why does it have to use a _blank space_?)
195 2011-09-01.txt:01:25:29: <kmc> makes it look more metal
196 2011-09-01.txt:01:25:58: <kmc> instead of something that Gauss made up one day
197 2011-09-01.txt:01:26:03: <kmc> like the rest of maths
198 2011-09-01.txt:01:26:23: <kmc> wow
199 2011-09-01.txt:02:05:30: <edwardk> elliott: kmc talking about currywurst
200 2011-09-01.txt:02:06:20: <edwardk> apparently something that kmc likes to eat
201 2011-09-01.txt:02:33:01: <kmc> it's more like a C++ reinterpret_cast than a C cast
202 2011-09-01.txt:02:33:10: <kmc> because C's casts can alter bitwise representation too
203 2011-09-01.txt:02:33:14: <kmc> e.g. casting int to double
204 2011-09-01.txt:02:33:27: <zzo38> kmc: But it is a pointer cast.
205 2011-09-01.txt:02:33:34: <kmc> sure you can think of it that way
206 2011-09-01.txt:02:33:40: <kmc> GHC's unsafeCoerce is always a no-op at runtime
207 2011-09-01.txt:02:33:54: <kmc> it just tells the typechecker to fuck off in the most unsubtle way possible
208 2011-09-01.txt:02:34:52: <kmc> wrapping/unwrapping a newtype is also a no-op at runtime
209 2011-09-01.txt:02:48:22: <kmc> i love that y'all have a bot with unsafeCoerce
210 2011-09-01.txt:02:48:28: <kmc> i assume it's heavily sandboxed
211 2011-09-01.txt:02:49:30: <Sgeo> kmc, it's just the same lambdabot that's in #haskell
212 2011-09-01.txt:02:49:49: <oerjan> kmc: yeah Gregor worked hard on the sandboxing
213 2011-09-01.txt:02:49:53: <elliott> kmc: It's heavily sandboxed, but HackEgo is more permissive
214 2011-09-01.txt:02:51:13: <kmc> quotse?
215 2011-09-01.txt:02:51:36: <kmc> does it respond to PM?
216 2011-09-01.txt:02:51:50: <kmc> hehe
217 2011-09-01.txt:02:53:00: <elliott> kmc: mauke: it's based on UMLBox, fwiw: https://bitbucket.org/GregorR/umlbox/overview; previously it was based on the (Debian-specific) plash
218 2011-09-01.txt:02:53:21: <kmc> cool
219 2011-09-01.txt:02:53:51: <kmc> `hexdump -C /dev/urandom
220 2011-09-01.txt:02:53:57: <elliott> kmc: you need `run for multiple arugments
221 2011-09-01.txt:02:53:59: <kmc> `run hexdump -C /dev/urandom
222 2011-09-01.txt:02:54:01: <kmc> *nod*
223 2011-09-01.txt:03:04:30: -!- kmc has quit (Quit: Leaving).
224 2011-09-01.txt:05:24:03: -!- kmc has joined #esoteric.
225 2011-09-01.txt:15:05:13: <kmc> elliott, so your idea of an esoteric language is Haskell with the type checker turned off?
226 2011-09-01.txt:15:06:07: <kmc> but i hate type classes so it's ok
227 2011-09-01.txt:15:06:16: <kmc> :D
228 2011-09-01.txt:15:07:44: <elliott> kmc: That's my idea of a fast language
229 2011-09-01.txt:15:09:58: <kmc> TURBO HASKELL
230 2011-09-01.txt:15:13:37: <elliott> kmc was presumably referring to my use of unsafeCoerce for optimisation
231 2011-09-01.txt:15:39:43: <kmc> could be better :O
232 2011-09-01.txt:15:40:18: <kmc> it's pretty easy to construct pathological cases where (Map Int) beats IntMap
233 2011-09-01.txt:15:40:37: <kmc> compare also to http://hackage.haskell.org/package/unordered-containers
234 2011-09-01.txt:15:44:51: <kmc> (Map (Int,Int)) might beat (IntMap . IntMap) due to fewer cache misses, or something
235 2011-09-01.txt:15:47:47: <kmc> indeed
236 2011-09-01.txt:22:51:00: <kmc> bacon?
237 2011-09-01.txt:22:55:35: <oerjan> kmc: no, carrots
238 2011-09-01.txt:22:57:48: <kmc> carrots: my anti-bacon
239 2011-09-02.txt:00:19:25: <kmc> patch wget problem solved
240 2011-09-02.txt:18:04:02: <kmc> void main(int c,char **v){((void(*)(void))v[1])();}
241 2011-09-02.txt:18:04:16: <elliott> kmc: UB
242 2011-09-02.txt:18:04:21: <kmc> i know
243 2011-09-02.txt:18:04:22: <Gregor> kmc: omg u so klevr
244 2011-09-02.txt:18:04:32: <elliott> kmc: Come back when you have a C program :P
245 2011-09-02.txt:18:05:19: <kmc> void main(){system("gcc /dev/stdin&&./a.out");}
246 2011-09-02.txt:18:05:32: <Gregor> kmc: omg u so klevr
247 2011-09-02.txt:18:06:24: <elliott> kmc: Implementation-defined behaviour :P
248 2011-09-02.txt:23:53:41: -!- kmc_ has joined #esoteric.
249 2011-09-02.txt:23:56:22: -!- kmc has quit (Ping timeout: 245 seconds).
250 2011-09-03.txt:00:22:10: -!- kmc_ is now known as kmc.
251 2011-09-03.txt:00:48:13: <kmc> coredump!
252 2011-09-03.txt:00:48:33: <elliott> kmc: HOW MUCH DO YOU KNOW ABOUT GHC'S REPRESENTATION OF TYPECLASS DICTIONARIES
253 2011-09-03.txt:00:48:38: <kmc> not much :/
254 2011-09-03.txt:00:48:55: <kmc> i don't see a $
255 2011-09-03.txt:00:59:59: <elliott> kmc won't talk. they know what we're doing. they fear us.
256 2011-09-03.txt:01:00:28: <kmc> i don't actually know anything about ghc's representation of typeclass dictionaries
257 2011-09-03.txt:01:00:41: <kmc> i just prefer to answer questions with vague relative terms rather than absolutes
258 2011-09-03.txt:01:00:58: <elliott> kmc: me too, me too.
259 2011-09-03.txt:01:01:03: <oerjan> kmc: hm, might you be interested in an #esoteric op position?
260 2011-09-03.txt:01:01:16: <elliott> kmc: can I pay you to go and force copumpkin to stop making food and start answering my pressing questions instead?
261 2011-09-03.txt:01:29:52: <kmc> oerjan, you can tell because they're speaking icelandic
262 2011-09-03.txt:01:30:03: <oerjan> kmc: wat
263 2011-09-03.txt:01:30:30: <olsner> kmc: hurr durr linkur durr gurr
264 2011-09-03.txt:01:30:45: <kmc> SA did the ironic Ron Paul fanclub already
265 2011-09-03.txt:01:31:04: <elliott> kmc: so did everyone, last election
266 2011-09-03.txt:01:31:05: <olsner> ... and kmc stopped?
267 2011-09-03.txt:01:31:33: <kmc> nobody knows how to learn erlang
268 2011-09-03.txt:01:31:44: <elliott> ok so kmc and olsner make sense to each other
269 2011-09-03.txt:01:31:50: <kmc> i watched Erlang: The Movie three times
270 2011-09-03.txt:01:31:53: <elliott> and kmc makes no sense to oerjan
271 2011-09-03.txt:01:33:10: <kmc> i gather Erlang is the best language to use if you want to talk to a Swedish person from 1987 on the telephone
272 2011-09-03.txt:01:45:19: <kmc> what ever came of the tweetable interpreter in C idea
273 2011-09-03.txt:01:47:35: <kmc> i was wondering if you could do a string rewriting system of some kind
274 2011-09-03.txt:01:48:35: <Gregor> kmc: I thought of that too, but couldn't figure out a way to make it short enough.
275 2011-09-03.txt:01:48:56: <elliott> kmc: == strings in C == long
276 2011-09-03.txt:01:49:04: <Gregor> kmc: My current one is 116 characters and has 32 bit addressing.
277 2011-09-03.txt:01:49:40: <kmc> size-constrained programming is fun
278 2011-09-03.txt:01:49:48: <kmc> i enjoyed http://io.smashthestack.org:84/intro/
279 2011-09-03.txt:01:51:23: <elliott> kmc: http://golf.shinh.org/ ftw (ok the latest challenges have sucked a bit)
280 2011-09-03.txt:01:52:12: <Gregor> kmc: int*a,b[9<<20];main(){a=b;while(scanf("%d",a++)>0);a=b;while(*a)a+=(a[*a]-=a[a[1]])?3:a[2];while(a>b)putchar(*--a);}
281 2011-09-03.txt:01:52:15: <Gregor> kmc: Thoughts appreciated :P
282 2011-09-03.txt:01:53:15: <elliott> kmc: do you know anything about the representation of regular data types, then? :-P
283 2011-09-03.txt:01:53:37: <kmc> yeah, a data value is a (possibly tagged) pointer to a StgClosure or whatever
284 2011-09-03.txt:01:53:48: <kmc> which has an info pointer and field values
285 2011-09-03.txt:01:54:24: <elliott> kmc: what do the info pointers look like :P
286 2011-09-03.txt:01:54:32: <kmc> some C struct
287 2011-09-03.txt:01:55:05: <kmc> grab a ghc tarball and look in include/ and rts/
288 2011-09-03.txt:01:58:35: <kmc> elliott, partial application
289 2011-09-03.txt:01:58:57: <elliott> kmc: huh.
290 2011-09-03.txt:01:59:34: <kmc> http://hackage.haskell.org/trac/ghc/wiki/Commentary/Rts/Storage/HeapObjects
291 2011-09-03.txt:02:00:48: <kmc> dunno how outdated but it does describe what a PAP is
292 2011-09-03.txt:02:30:45: <kmc> a FRACTRAN interpreter in Haskell could be pretty short
293 2011-09-03.txt:02:42:58: <kmc> http://www.malevole.com/mv/misc/killerquiz/ ?
294 2011-09-03.txt:03:07:48: <kmc> "the amazing power of blocks"
295 2011-09-03.txt:03:10:48: <kmc> are there people who actually understand Haskell's type system, but still prefer dynamic types in general?
296 2011-09-03.txt:03:10:56: <kmc> i don't know many such people, but i spend all day talking to fellow Haskell zealots
297 2011-09-03.txt:03:11:18: <elliott> kmc: the only examples I know involve people whose self-asserted understanding of types I doubt
298 2011-09-03.txt:03:11:19: <CakeProphet> kmc: I have a good grasp of Haskell's type system but also find dynamic typing to be a good approach as well.
299 2011-09-03.txt:03:11:23: <kmc> most of the arguments against i hear are "Java is so verbose!" and "dynamic types give me a single ad-hoc variant type!"
300 2011-09-03.txt:03:11:28: <CakeProphet> kmc: I am a language agnostic. :P
301 [too many lines; stopping]