00:01:45 <kmc> i think being picky about programming languages is a bad place to use your being-picky-about-a-job points
00:01:48 <kmc> except for PHP
00:02:08 <copumpkin> I love the job so far, and don't hate scala :P
00:02:35 <copumpkin> although I wrote a fair bit of it in high school
00:03:31 <shachaf> copumpkin: Well I didn't want to make a liar out of you!
00:03:59 -!- sebbu2 has joined.
00:04:00 -!- sebbu2 has quit (Changing host).
00:04:00 -!- sebbu2 has joined.
00:04:41 <kmc> PHP: not even once
00:05:04 <Bike> well, even the PHP developers agree that PHP is kind of terrible, so it works out right
00:05:30 <kmc> i too have written some PHP :/
00:05:48 -!- sebbu has quit (Ping timeout: 276 seconds).
00:05:55 <copumpkin> Bike: well, doesn't the guy actually just hate programming?
00:06:11 <kmc> PHP has its apologists though
00:06:28 <Bike> luckily i have surgically removed my ability to directly acknowledge the existence of That Man or anything he's said
00:07:10 <shachaf> y'all hate PHP too much imo
00:07:15 -!- Phantom_Hoover has joined.
00:07:53 <kmc> shachafffffffffffffff
00:08:38 <kmc> wait for it
00:08:58 <Bike> "facile" is in english too...
00:09:04 <copumpkin> I know, but it means something else
00:09:20 -!- sploknee has quit (Ping timeout: 255 seconds).
00:09:22 <Bike> I thought you could (sort of obscurely) use it to mean the same in English though.
00:09:50 <copumpkin> yeah, it still means easy, but it has a lot of baggage in that meaning :)
00:10:19 <Bike> "(now rare) Amiable, flexible, easy to get along with. [from 16th c.]" cool am i "retro" now
00:10:35 <Bike> "Easy, now especially in a disparaging sense; contemptibly easy. [from 15th c.] " even older!
00:10:40 <shachaf> Bike: yes, you are retro. don't you love being retro?
00:12:38 <olsner> facile seems similar to genteel
00:13:52 <olsner> btw, the H in PHP is pronounced uː
00:14:25 <ais523> the files I'm working on at the moment are technically PHP files
00:14:51 <ais523> but I'm treating them as HTML files that support server-side commments, together with not messing with the existing logic
00:15:18 <shachaf> I bet there are some weird edge cases in the PHP comment parser.
00:16:05 -!- epicmonkey has quit (Ping timeout: 255 seconds).
00:16:07 <olsner> I wonder if you could write "comments" in deflate streams, then just save it as html.gz and get the comments stripped by the receiver
00:21:40 <olsner> comments seem like a remarkably stupid thing to put in a compression format though
00:23:13 <Sgeo> Hum. Smalltalk might not have macros, but how often do macros actually need to parse code? And I bet that there is introspection for looking inside a block at runtime if needed
00:23:58 <Sgeo> Although, there's still the issue of wanting to expand into creation of multiple methods, which is ... something that might not work well with IDEs
00:24:25 <kmc> olsner: so does quines and yet they mostly support them by accident
00:24:46 <Bike> i thought smalltalk was conceptually removed enough from source that macros wouldn't make much sense anyway. guess not
00:24:47 <kmc> http://steike.com/code/useless/zip-file-quine/
00:25:16 <kmc> great for putting enterprise email virus scanners into an infinite loop
00:25:17 <olsner> ah, but .zip supports comments
00:25:38 <olsner> e.g. for putting an extracting executable at the beginning of the file
00:25:54 <Bike> I should get one of those zips that expand to a trillion gigabytes of garbage and never accidentally open it anyway
00:25:58 <shachaf> imo the world would be better without drums
00:26:19 <olsner> there are gzip/deflate quines too, of course
00:26:26 <shachaf> Bike: have you considered the possibility that you're the wrong one
00:26:37 <Bike> Yes. It was a wrong possibility.
00:26:58 <kmc> shachaf is wrong in re: drums
00:27:17 <shachaf> wow Bike and kmc are wrong??
00:30:03 <olsner> shachaf: http://en.wikipedia.org/wiki/Drum_memory ??
00:30:22 <shachaf> olsner: drum memory can stay
00:30:30 <shachaf> but the other kind can beat it!!
00:31:34 <olsner> no, you can't beat a drum without any drums
00:32:27 <olsner> fwiw, drums can't beat drums at all due to no hands
00:34:20 -!- Phantom_Hoover has quit (Remote host closed the connection).
00:41:11 -!- oerjan has joined.
00:48:34 <oerjan> @tell HackEgo `addquote <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
00:48:51 * oerjan wonders if lambdabot will mess up the formatting
00:49:20 <ais523> quintopia: there /is/ a tag for that, I just forget what it is offhand
00:49:49 <shachaf> oerjan: Can you make HackEgo @messages?
00:50:56 <oerjan> shachaf: yes, although you need a trick to get around HackEgo's anti-botloop protection
00:50:56 <lambdabot> oerjan: You have 1 new message. '/msg lambdabot @messages' to read it.
00:51:01 <lambdabot> shachaf said 50s ago: `addquote hi
00:51:13 <oerjan> ...that doesn't look promising.
00:51:48 <kmc> anti-bootlop
00:51:55 <kmc> fungot: bootlop
00:51:56 <fungot> kmc: it's so difficult to port to scheme is when there is define?
00:52:09 -!- TeruFSX has joined.
00:52:09 <kmc> fungot: bøøtløp
00:52:14 <kmc> fair enough
00:52:17 <ion> IRC RFC already has an anti-botloop protection, a.k.a. NOTICE.
00:52:45 <ais523> yeah but mIRC breaks that
00:52:51 <ais523> by going crazy upon channel notices
00:52:53 <oerjan> ion: which doesn't work because NOTICE's are so annoyingly looking that in-channel bots don't use them.
00:52:56 <Bike> how can you possibly break notices
00:52:57 <kmc> mIRC: the Internet Explorer of IRC clients?!?
00:53:08 <ais523> Bike: by treating them as really super important
00:53:09 <kmc> MySQL is the mIRC of databases
00:53:17 <ion> oerjan: You forgot “in a small number of clients”.
00:53:31 <ais523> shachaf: those are CTCP replies
00:53:37 <ais523> an actual notice looks like this
00:53:45 <kmc> posting in this high quality thread
00:53:47 <ais523> try removing the control characters
00:54:06 <kmc> EC{E{CE{{EC{E{{CE{{CE{ FRASH PRUGIN {E[C{E[CE[CE[CE[
00:54:13 <kmc> shachaf: bot is easy
00:54:16 <Bike> actually looks pleasingly robotic on my end
00:54:29 <ion> This message has been triggered by shachaf’s notice, thereby violating the RFC.
00:54:34 <ais523> [Notice] -Bike to #esoteric- hi
00:54:38 <kmc> we're all, just, like, bots, man
00:54:40 <ais523> that's how it looks in Konversation
00:54:57 <ais523> I'd prefer it as just "-Bike-", but I understand why it distinguishes between channel and server notices
00:55:13 <ais523> shachaf: notices have a customizable color, I use dark yellow
00:55:21 <myndzi> nobody expects the channel ctcpreply
00:55:32 <oerjan> ais523: notices look annoyingly prominent in irssi too.
00:55:33 <kmc> it's environment diagrams day in zombie 6.001!!!!
00:55:56 <Bike> with the boxes and dots and arrows and shit?
00:56:25 <Bike> that reminds me, somebody asked in ##c if lexical scope was actually implemented
00:56:51 <Bike> they just didn't believe int a; for(;;){int a; ...} would work right, it was weird
00:57:17 <shachaf> Does it really count as lexical scope in that context?
00:57:22 <shachaf> How would dynamic scope behave?
00:57:31 <ais523> Bike: implemented by what? C isn't a compiler
00:57:42 <kmc> i like compiler it's so easy
00:57:44 <kmc> DAMN YOU SHACHAF
00:57:48 <shachaf> kmc.......................
00:57:55 <kmc> i'm got the virus now
00:58:00 <ion> ais523: GCC, the Glasgow C Compiler.
00:58:15 <kmc> Gołąbki C Compiler
00:58:45 <Bike> ais523: they didn't even think it was in the standard
00:59:00 <ais523> perhaps they're used to JS
00:59:04 <kmc> Classic C Compiler Program
00:59:07 <ais523> btw, does lexical scope work correctly in PHP?
00:59:21 <kmc> ais523: i'm going to say "no" without considering all of the words in that question
00:59:37 <kmc> lazy evaluation
01:00:11 <ais523> kmc: the function worksInPHP is not strict in its argument?
01:00:35 <oerjan> incidentally the logs don't show notices.
01:01:39 <Bike> shachaf: C where int a = 4; void foo(void) { printf("%d\n",a); } foo(); makes sense sounds pretty exciting!
01:01:55 <ais523> oerjan: what about the raw logs?
01:02:05 <oerjan> ais523: not the raw logs either.
01:02:15 <kmc> i wonder how zzo38's client displays notices
01:02:16 <shachaf> Bike: Since when does C support nested function definitions?
01:02:20 <ais523> @eval C where int a = 4
01:02:31 <ais523> it /looked/ like valid Haskell
01:02:45 <oerjan> presumably it may be in the all-channels-mushed-together file which everything else is extracted from
01:02:48 <ais523> why have a no-op command called "eval"?
01:02:58 <kmc> because lambdabot is a big practical joke
01:03:06 <ais523> ^eval now I can do this in fungot too
01:03:16 <Bike> shachaf: "whatever, man"
01:03:16 <Bike> This place has Tunes logs too?
01:03:27 <ais523> Bike: yes, they've existed way longer than the codu logs
01:03:45 <ais523> there also used to be another logbot cmeme, but it hasn't been here for a while
01:04:08 <shachaf> haskell/12.12.25:21:19:51 <beaky> games are so complex to make :(
01:04:09 <Bike> was it actually affiliated with the "tunes project" or i don't even know
01:04:12 <shachaf> I guess games aren't easy.
01:04:43 <ais523> Bike: the logbot is; I don't think the channel is
01:04:45 <shachaf> <beaky> btw, why do lenses pack both the getter and setter together? <beaky> ye <beaky> yeah <beaky> is it for composition or something? <beaky> ah <beaky> lenses make life easy
01:05:07 <kmc> sudden clarity beaky
01:05:27 <kmc> beaky would be a good name for a cuttlefish
01:05:47 <Bike> ais523: can you just ask the tunes whoever to log your channel, then?
01:06:07 <ais523> Bike: I don't think so; I guess they just thought the channel was interesting
01:06:18 <Bike> http://scienceblogs.com/notrocketscience/wp-content/blogs.dir/474/files/2012/04/i-7ed1055d2591673620f0d2017dcb3513-Beak.jpg beaky's true form?
01:06:19 <ais523> also, there's a chance that worldbreaking programming ideas would happen here first
01:06:25 <ais523> even if there's a lot of chaff to filter through
01:06:43 <kmc> chaff and flares
01:07:02 <oerjan> Bike: you _can_ just ask glogbot, however.
01:07:08 <shachaf> haskell/12.12.22:02:18:09 <beaky> what is the most powerful feature of haskell
01:07:08 <shachaf> haskell/12.12.22:02:18:12 <beaky> that no other languages have?
01:07:08 <shachaf> haskell/12.12.22:02:18:29 <beaky> lisps' power is macros. perl's power is regexes. C's power is pointers...
01:07:16 <Bike> http://tunes.org/~nef/logs/ oh, it's actually almost an exclusive club
01:07:18 <kmc> no other language has regexes
01:07:44 <kmc> why don't they just make one language with all the features HMMMMMMMMM??
01:08:43 <shachaf> <beaky> what is the difference between parallel and concurrent? <beaky> so parallel programs are like a battery of guns <beaky> or is that concurrent programs? <beaky> ah <beaky> so parallelism is like firing all the guns in a battleship
01:08:47 <kmc> i want a pet cuttlefish but taking care of it is "not easy"
01:08:52 <Bike> kmc: but they're like, right there in the syntax, man.
01:08:52 <Bike> also, shachaf, these are like so totally way old.
01:08:52 <Bike> http://tunes.org/~nef/logs/slate/13.01.15
01:09:05 <kmc> Bike: they are also in the syntax in javascript
01:09:06 <kmc> for some reason
01:09:55 <Bike> could you even get an aquarium big enough?
01:10:11 * ais523 tries to remember what a cuttlefish is
01:10:21 <kmc> yeah there are some small ones
01:10:35 <kmc> ais523: it's like an octopus or a squid but weirder
01:10:36 <Bike> ais523: the ones with active camo.
01:10:46 <kmc> yeah they can change color and change how iridescent they are
01:10:58 <Bike> They're also pretty smart.
01:11:37 <Bike> http://www.youtube.com/watch?v=7ujRgSRYE9A This is about the size I imagine cuttlefish as being, though. I don't think it would be very comfortable in a home tank.
01:12:03 <kmc> yeah maybe
01:12:07 <kmc> i have only seen baby cuttlefish in person
01:12:09 <kmc> sooooo cute
01:12:47 <Bike> Maybe there are smaller ones, I don't know. Maybe the seawaterness is more relevant.
01:13:03 <kmc> this is what i read http://www.tonmo.com/cephcare/cuttlefishcare.php
01:13:14 <Bike> saltwater animals are way harder to keep in captivity, right?
01:13:24 <kmc> think so, yeah
01:13:56 <kmc> 'This little cuttlefish, originally from Indonesia, is fully grown at about 5 cm (2") mantle length'
01:14:04 <kmc> so i guess they do vary quite a bit
01:14:19 <Bike> Oh ok, so there's like an established basis for this
01:14:29 <kmc> then they talk about another type that gets up to 45cm
01:14:45 <Bike> damn, whole forums for taking care of cephalopods? I like this place
01:14:53 <shachaf> <beaky> so monads are monoids with superpowers
01:15:01 <kmc> 'They eat a lot of food. An individual that is half grown will eat two 5cm (2") wide crabs per day and more on top of that. 12mm long babies can and will eat up to five 12mm (1/2") long shrimps each day.'
01:15:34 <kmc> you have to feed them live crustaceans
01:15:39 <kmc> or at least it is better if you do
01:16:11 <kmc> a friend of mine had a snake and when they couldn't feed it live mice, they would just microwave the dead mouse for a bit so it would 'look' live in IR
01:16:22 <kmc> the snake was old and feeble and blind :/
01:17:40 <kmc> 'They can spit water out the top of their tank by using their siphon. Worth considering where you keep all your associated electrical equipment. '
01:18:39 <kmc> 'If you keep several together you'll obviously need an even bigger tank. They will fight over food and occasionally spook each other; it is quite common to see bite marks and two cuttlefish normally end a minor dispute by spraying ink everywhere! (Note this can also include the wall behind your tank!!!) '
01:18:59 <shachaf> haskell/12.12.22:01:09:30 <beaky> All programming languages were born to solve a problem. C was invented to port the UNIX operating system. Perl was designed as an awk killer to efficiently process text. Javascript was designed to implement interactive webpages. What was Haskell born to do?
01:20:13 <kmc> that one is... a fair question
01:20:32 <Bike> I thought Haskell was born to make academics stop making up languages for two minutes?
01:20:32 <kmc> Haskell was born to unify research into lazy functional programming, that was happening in a variety of languages
01:21:16 <kmc> back later, it's boxes & arrows time
01:21:24 <Bike> Of course in those terms Perl was designed to make scripting nicer for Wall and C was designed to build Spacewar
01:22:30 <Bike> 16:55 < kmc> it's environment diagrams day in zombie 6.001!!!!
01:22:56 <shachaf> Like http://www-mtl.mit.edu/~boning/ST96/rec16/more-env.html ?
01:23:02 <shachaf> i love environment diagrams
01:23:21 <Bike> wow, that's quite a diagram.
01:24:11 <shachaf> imo 28 color glossy photos with circles and arrows and a paragraph on the back of each one
01:25:10 <oerjan> @tell Gregor i think people may have forgot to tell you that HackEgo is down.
01:30:01 <oerjan> <Gregor> Sgeo: But once you've built something in the normal environment, extracting it and putting it into another image is somewhere between magic and time travel in terms of possibility. <-- so you are saying feather is the solution to smalltalk's problems?
01:31:01 -!- hagb4rd has quit (Ping timeout: 248 seconds).
01:32:30 <Gregor> Oy vey, WHY is HackEgo going down.
01:32:31 <lambdabot> Gregor: You have 1 new message. '/msg lambdabot @messages' to read it.
01:33:50 <oerjan> but but i didn't think it would have such a big effect!
01:33:53 -!- HackEgo has joined.
01:34:23 -!- monqy has joined.
02:03:37 -!- FreeFull has quit.
02:05:27 <lambdabot> You won't have Nixon to kick around anymore, because, gentlemen, this is my last press conference.
02:08:11 -!- WeThePeople has quit (Quit: Leaving).
02:09:27 <shachaf> There was a poem that said: "in 1492 jesus sailed the ocean blue"
02:09:34 <shachaf> I can't find it. What was it called?
02:09:52 -!- WeThePeople has joined.
02:10:06 <HackEgo> WeThePeople: 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.)
02:10:06 <lambdabot> HackEgo: You have 3 new messages. '/msg lambdabot @messages' to read them.
02:13:06 <oerjan> `echo lambdabot: @messages
02:13:07 <lambdabot> shubshub asked 9m 7d 16h 53m 4s ago: hi
02:13:07 <lambdabot> nortti asked 9m 7d 10h 17m 45s ago: `date
02:13:07 <lambdabot> oerjan said 1h 24m 33s ago: `addquote <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
02:13:16 <oerjan> `addquote <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
02:13:19 <HackEgo> 918) <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
02:13:37 <HackEgo> Quotes are just elements of the quantum dilapidated bogosphere. See qdb.
02:13:37 <oerjan> `addquote <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
02:13:41 <HackEgo> 918) <quintopia> is there a way to tag things on wikipedia as "wtf this makes no sense"? <elliott> quintopia: {{featured article}}
02:13:42 <HackEgo> qdb is used like: `quote; `quote regexp; `quote id; `addquote ...; `delquote id; `pastequotes regexp; `pastenquotes [n]; see also qdbformat
02:13:47 <HackEgo> qdbformat is: <nick> message; * nick action; two spaces between messages; all elisions marked with [...] other than irrelevant intervening messages; for messages separated by elision, one space on each side, not two
02:14:03 <oerjan> shachaf: the double space got precisely over the line wrap, so it disappeared when i cut and pasted it
02:14:39 <oerjan> actually it's possible i never put it in...
02:16:46 <oerjan> elliott: logs confirm it: lambdabot @tell actually removes double spacing in what you send :P
02:17:15 <shachaf> @tell oerjan <shachaf> i love the qdb rules <shachaf> they are so easy
02:17:54 <lambdabot> shachaf said 38s ago: <shachaf> i love the qdb rules <shachaf> they are so easy
02:18:03 <shachaf> lambdabot.................................................
02:19:28 <shachaf> @remember beaky <beaky> i love monoids <beaky> they are so easy
02:19:29 <lambdabot> beaky says: <beaky> i love monoids <beaky> they are so easy
02:19:34 <shachaf> @forget beaky <beaky> i love monoids <beaky> they are so easy
02:19:49 <lambdabot> shachaf says: GADT = Gratuitously Abstract Data Type
02:20:48 <lambdabot> No quotes match. Just what do you think you're doing Dave?
02:20:54 <Bike> "Furthermore I've always believed that Ubuntu was an NSA front from its very inception."
02:21:04 <oerjan> @quote elliott.*i said
02:21:04 <lambdabot> No quotes for this person. Just what do you think you're doing Dave?
02:21:28 <oerjan> SOME SCUM HAS BEEN REMOVING QUOTES
02:21:42 <Bike> @quote elli.*said
02:21:43 <lambdabot> No quotes match. I can't hear you -- I'm using the scrambler.
02:21:45 <shachaf> oerjan: Or maybe lambdabot crashed.
02:21:52 <shachaf> Bike, oerjan: that's not how @quote works......
02:22:05 <Bike> i was only following examplejan.
02:22:07 <shachaf> If @quote gets two arguments, the first is always treated as the name of the quotee.
02:24:17 <oerjan> shachaf: INCONCEIVABLE
02:24:41 <oerjan> @quote elliott i.didn't
02:24:41 <lambdabot> No quotes match. My mind is going. I can feel it.
02:24:46 <lambdabot> elliott says: |\/|/-\|-|-|=|\||} is my preferred mappend operator
02:25:57 <oerjan> today's sheldon is highly relevant to all this http://www.sheldoncomics.com/archive/130115.html
02:26:52 <Bike> i'm not sure what the intended point of that is. once again i am bad at jokes
02:27:27 <oerjan> i don't think it has a punchline
02:28:03 <Bike> like is the thing on the left supposed to be humorously anal? the thing on the right humorously bohemian? i can't tell, i can't
02:28:50 <Bike> the duck and the bemoustachioed thing.
02:29:21 <oerjan> bemoustachioed thing is known as "grampa", usually
02:30:01 <Bike> yes, this "grampa". what is the true nature of the "grampa"?
02:31:23 <oerjan> well he is not good with technical stuff. bit old and set in his ways.
02:32:01 <oerjan> arthur otoh is a rather geeky duck
02:34:42 <oerjan> also very narcissistic.
02:35:41 <oerjan> i think yesterday's strip shows that part of arthur better.
02:36:45 <Bike> ooh, slacktivism joke
02:42:12 <oerjan> sadly, the strip has less of its wacky adventures and more of its "bitch about what annoys the author today" these days.
02:42:57 <oerjan> i suspect it's not alone in this. /s
02:57:16 <kmc> shachaf: should I go to the Stripe drinkup in Cambridgema?
02:57:46 <kmc> <shachaf> imo 28 color glossy photos with circles and arrows and a paragraph on the back of each one
02:57:49 <kmc> that is environment diagrams
02:59:53 <HackEgo> Taneb atriq Ngevd Fiora nortti alot
02:59:56 <Bike> kmc: https://www.youtube.com/watch?v=6o1fw9jtRNc
03:00:15 <shachaf> kmc: Well, do you like drinkingup?
03:00:41 <shachaf> And do you like Stripe people, I guess? I don't know.
03:01:16 <kmc> oh i would have to miss zombie 6.001 lecture
03:01:40 <shachaf> Zombie 6.001 sounds more interesting to me than Stripe.
03:05:06 <shachaf> kmc: You should arrange for a Zombie 6.001 to happen in Palo Alto!
03:05:17 <shachaf> make it a "global phenomenon??"
03:06:04 -!- DH____ has joined.
03:06:10 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:25:21 -!- azaq23 has quit (Ping timeout: 276 seconds).
03:29:05 -!- Bike has quit (Ping timeout: 248 seconds).
03:30:32 -!- Bike has joined.
03:45:10 -!- azaq23 has joined.
03:45:21 -!- azaq23 has quit (Max SendQ exceeded).
03:45:23 -!- sebbu has joined.
03:45:23 -!- sebbu has quit (Changing host).
03:45:23 -!- sebbu has joined.
03:45:48 -!- azaq23 has joined.
03:46:45 -!- sebbu2 has quit (Ping timeout: 260 seconds).
04:23:52 <oerjan> (12)S(*a(~:)~*^~):((1)S)~*~((~aS:^):^(2)S:*)~*:(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
04:23:58 <oerjan> ^ul (12)S(*a(~:)~*^~):((1)S)~*~((~aS:^):^(2)S:*)~*:(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
04:23:59 <fungot> 12((1)S*a(~:)~*^~)()((1)S*a(~:)~*^~)((~aS:^):^(2)S:**a(~:)~*^~) ...out of stack!
04:36:17 <oerjan> ^ul ((io)S(t)~^( )S~:)((e)S(l)~^~:)(S)~^(:SS)~^(*a((((S)~^)~a*^)~a*^~:)~*^~)(:**a((((:SS)~^)~a*^)~a*^~:)~*^~):(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
04:36:47 <oerjan> ^ul ((io)S(t)~^( )S~:)((e)S(l)~^~:):(S)~^(:SS)~^(*a((((S)~^)~a*^)~a*^~:)~*^~)(:**a((((:SS)~^)~a*^)~a*^~:)~*^~):(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
04:36:48 <fungot> eliott elliot eliott eliott elliot elliott eliot elliot eliott elliot elliot eliott eliott elliot eliott eliot elliot elliott eliott elliot eliott eliott elliot elliot eliott eliot elliott eliott elliot eliott eliott elliot elliott eliot elliot eliott eliott elliot elliot eliott elliot elliott eliot elliot elliott eliott e ...too much output!
05:19:02 -!- TeruFSX has quit (Ping timeout: 256 seconds).
05:45:35 -!- rodgort has quit (Ping timeout: 260 seconds).
05:47:58 -!- rodgort has joined.
05:49:33 -!- hagb4rd has joined.
06:23:12 -!- DH____ has quit (Read error: Connection reset by peer).
06:23:18 -!- DHeadshot has joined.
06:29:50 <oerjan> ^def elikoski ul ((io)S(t)~^( )S~:)((e)S(l)~^~:):(S)~^(:SS)~^(*a((((S)~^)~a*^)~a*^~:)~*^~)(:**a((((:SS)~^)~a*^)~a*^~:)~*^~):(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
06:29:56 <fungot> eliott elliot eliott eliott elliot elliott eliot elliot eliott elliot elliot eliott eliott elliot eliott eliot elliot elliott eliott elliot eliott eliott elliot elliot eliott eliot elliott eliott elliot eliott eliott elliot elliott eliot elliot eliott eliott elliot elliot eliott elliot elliott eliot elliot elliott eliott e ...too much output!
06:31:24 <ais523> 12 21 12 12 21 22 11 21 12 21 21 12 12 21 12 11 21 22 12 21 12 12 21 21 12 11 22 12 21 12 12 21 22 11 21 12 12 21 21 12 21 22 11 21 22 12
06:31:49 <ais523> it doesn't look like look-and-say
06:31:57 <oerjan> (12)S(*a(~:)~*^~):((1)S)~*~((2)S:*)~*:(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
06:32:02 <oerjan> ^ul (12)S(*a(~:)~*^~):((1)S)~*~((2)S:*)~*:(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
06:32:03 <fungot> 122112122122112112212112122112112122122112122121121122122112122122112112122121122122112122122112112212112122122112112122112112212112112212211212212112212212112112212211212212112112212112122112112122121122122112122122112112122112112212212112122112112212112112212212112122112112122122112122121121122122121122122112122122112112 ...too much output!
06:32:12 <Bike> i just like look and say
06:32:40 <ais523> the pattern is far from obvious
06:32:54 <ais523> so I think oerjan fulfils the requirement of a PRNG that's sufficiently good to fool humans
06:32:54 <Bike> is this some q-series shit
06:33:05 -!- copumpkin has quit (Ping timeout: 252 seconds).
06:33:37 -!- copumpkin has joined.
06:33:41 <ais523> Underload can be made to be readable
06:33:42 <oerjan> erm it _is_ already on the underload page, i just modified it to work with elliott's name
06:34:00 <ais523> I didn't look there because looking there was too obvious :)
06:34:04 <fizzie> ais523: I don't know; I think I'm human, and I'm deeply suspicious of the fact there are no runs longer than two.
06:34:05 <myndzi> ha, i didn't even notice the difference
06:34:13 <ais523> fizzie: yeah, good point
06:34:24 <oerjan> ^ul ((::**)~^)((((:(((((((((((_)(9))(8))(7))(6))(5))(4))(3))(2))(1))(0)(!^))~*^^S!)(:a(~^)*~(()(~(~(:a~*):^))(a))~*^^)):^(()~)~**~^(:)~((a(~^)*~**)~a)~a(**~:((:)~(*)**)~a*~(^))**a(~*^^^!!^)***(~)~a(~a*^:)**a(:)**~^!!!a(~^)*~**)~a((, )S:^)**^):^
06:34:26 <fungot> 3, 13, 1113, 3113, 132113, 1113122113, 311311222113, 13211321322113, 1113122113121113222113, 31131122211311123113322113, 132113213221133112132123222113, 11131221131211132221232112111312111213322113, 31131122211311123113321112131221123113111231121123222113, 132113213221133112132123123112111311222112 ...out of time!
06:34:39 <ais523> Kolakoski sequence, apparently
06:34:46 <myndzi> i did this 'iq test' thing once with some interesting patterns in it
06:34:54 <myndzi> hi, also hard drive crash D:
06:35:00 <myndzi> i lost my work-in-progress!
06:35:01 <fizzie> The Kokakolakoski sequence.
06:35:05 <myndzi> plan to fix it at some point
06:35:12 <myndzi> it was so much better too ;\
06:35:16 <shachaf> That reminds me, I should have, like, back ups and stuff.
06:35:16 <ais523> huh, apparently it's the second sequence in OEIS
06:35:25 <ais523> out of all the sequences that could be second, why that one?
06:35:33 -!- md_5 has quit (Ping timeout: 272 seconds).
06:35:34 <myndzi> i finally got a backup program going
06:35:38 <ais523> "number of groups of order n"
06:35:43 <myndzi> hmm actually, the script might have been on z:
06:36:00 <myndzi> http://www.allthetests.com/quiz18/quiz/1139060031/Very-Difficult-IQ-Test
06:36:02 <Bike> ais523: that's a fun sequence
06:36:10 <myndzi> in case anyone wants to have a whack at it
06:36:23 <ais523> Bike: it's strange how small the numbers are
06:36:50 <ais523> when there's only one group of a particular order, it's the cyclic group, right?
06:36:51 <Bike> iirc they get pretty bizarre a few dozen (hundred?) in
06:37:02 <oerjan> ais523: for prime numbers there's only one, of course
06:37:05 <Bike> what with shit like the monster gruop and all
06:37:11 <oerjan> for powers of 2 there are ... a lot.
06:37:25 <Bike> i think i have a paper by conway on it somewhere, but i dunno what it's called
06:37:49 <oerjan> or so i hear. apparently the overwhelming majority of finite groups have power of 2 order
06:39:36 <Bike> ah, yeah, stuff like that 267 there
06:40:02 <Bike> "Counting groups: gnus, moas and other exotica." is probably the paper i was thinking of, gnu being the function in question
06:40:21 <oerjan> in fact i suspect the number will be 1 for precisely the primes and 1
06:41:12 -!- md_5 has joined.
06:41:36 <oerjan> oh wait i'm wrong, i see
06:41:49 <ais523> there's clearly only one degenerate group
06:41:54 <Bike> http://oeis.org/A000001/graph?png=1 wow, what
06:41:54 <oerjan> but 6 is not a counterexample
06:42:06 <ais523> just like there's only one degenerate semiring
06:42:07 <Bike> oh, shit, i got it backwards, sorry.
06:42:28 <ais523> (it has 0=1, and 0+0 = 0×0 = 0, and no elements but 0)
06:42:45 <ais523> I guess that's a full ring, actually
06:43:00 <oerjan> "a(pq) = 1 if gcd(p,q-1) = 1, 2 if gcd(p,q-1) = p. (p < q)"
06:43:00 <ais523> it has 0-0 = 0 and 0÷0 = 0 too
06:43:01 <Bike> 35 on the list
06:43:12 <shachaf> i love online integer sequences
06:43:18 <ais523> (I think you're allowed to divide by zero in rings, right? Or are you?)
06:43:19 <Bike> oh, 15 earlier.
06:45:10 <ais523> yeah, for groups of order xy, you have the cyclic group, and the group of pairs (a,b) where a is from the cyclic group of order x, and b is from the cyclic group of order y
06:45:20 <ais523> so you have to have at least 2 for composite numbers
06:47:45 <oerjan> <Bike> "Counting groups: gnus, moas and other exotica." [...] <-- sounds like a popular math title, but conway has serious work in the field, some of the sporadic simple groups are named after him
06:48:30 <Bike> oerjan: uh? it's the name of a paper, it's not pop math
06:49:04 <oerjan> ...he names his serious papers like that?
06:49:13 <oerjan> well if anyone did it would have to be him.
06:49:31 <Bike> what's wrong with the name?
06:49:38 <Bike> gnu and moa are both acronyms iirc
06:49:49 <oerjan> THAT DOES NOT REALLY HELP
06:50:10 <Bike> oh, hey, i do have a pdf of it
06:50:33 <Bike> Minimal Order Attaining [a given group number]
06:50:57 <oerjan> ais523: no you are not allowed to divide by 0 in rings.
06:51:13 <Bike> also says: gnu(2048) > 1774274116992170. good to know!
06:51:23 <ais523> oerjan: hmm, that makes things a bit easier, then
06:51:31 <shachaf> The g-nicest work of g-nature in the zoo.
06:51:35 <ais523> well, the degenerate ring doesn't really care, it can divide by 0 just fine
06:51:41 <ais523> it just can't divide by anything else ;)
06:51:59 <oerjan> you're not really guaranteed to divide at all, mind you.
06:52:01 <shachaf> kmc: Did you know Mono gets Unicode even wronger than .NET?
06:52:08 <kmc> what does it do
06:52:18 <shachaf> https://github.com/mono/mono/blob/master/mcs/class/corlib/System/Char.cs#L406
06:52:27 <shachaf> Note that C# has a "char" type which is 16 bits.
06:52:47 <shachaf> Every char function has a version that takes a char and a version that takes a string and an offset.
06:52:56 <shachaf> Apparently .NET gets this right, at least, so Mono is just not compliant.
06:54:15 <oerjan> ais523: no you don't have to have at least two for composite numbers, we found 15 is a counterexample. the thing is, if m and n are relatively prime, then your group of pairs is _isomorphic_ to the cyclic group.
06:54:38 <ais523> I was thinking it couldn't be, but my proof didn't work out
06:56:12 <Bike> the paper cites a "more scholarly" book, called Enumeration of Finite Groups
06:57:06 <Bike> hm, looks like a cool read actually, maybe i should pretend to know cohomology so i can read it
06:57:35 <shachaf> cohomology is so easy Bike
06:57:59 <Bike> what is cohomology and how can i love it as much as you do
06:59:23 <oerjan> ais523: also any algebraic structure defined entirely by operations and equalities between them can be degenerate. fields are not among those because they have the rule that division only needs to exist when not by 0, and moreover they require 0 /= 1 explicitly just to be sure.
07:00:04 <oerjan> semigroups, monoids, groups, rings all are defined solely by operations and equalities.
07:00:51 <oerjan> ais523: however http://en.wikipedia.org/wiki/Field_with_one_element
07:00:58 -!- monqy has quit (Quit: hello).
07:01:35 <Bike> "This object is denoted F_1, or, in a French–English pun, F_un." shachaf, is this your secret
07:01:37 * oerjan nearly knows cohomology *MWAHAHAHA*
07:01:46 <Bike> what is cohomology? is it fun
07:02:02 <oerjan> (actually used _homology_ in a paper.)
07:02:05 <ais523> I think you can have a category with /no/ elements, can't you?
07:02:16 <ais523> although many sorts of structure, you can't have on such a category
07:02:23 <ais523> oerjan: no objects /and/ no arrows ;)
07:02:36 <oerjan> um you cannot have arrows without objects :P
07:02:51 <oerjan> (unless you go for an entirely object-free formulation)
07:03:10 <oerjan> shachaf: i did, way back
07:04:47 <oerjan> shachaf: this one http://journals.impan.pl/cgi-bin/doi?fm177-1-2
07:05:23 <shachaf> oerjan: Should I pay $10 for that?
07:10:28 <Bike> what about cohomotopy?
07:10:40 <shachaf> I once read the first 3 pages of a topology book.
07:11:01 <shachaf> I learned what open and closed sets were!
07:11:07 <oklopol> i don't know anything about cohomotopy
07:11:24 <Bike> do you know if it exists? i'm kind of curious now
07:11:42 <oklopol> open sets of a topology T are the sets in T.
07:11:44 <Bike> or not really but whatever
07:11:54 <oklopol> i don't know what it would mean really
07:12:01 <shachaf> I once went to a talk about homotopy type theory.
07:12:13 <Bike> "In mathematics, particularly algebraic topology, cohomotopy sets are particular contravariant functors from the category of pointed topological spaces and point-preserving continuous maps to the category of sets and functions"
07:12:15 <oklopol> just like i don't know what cohomeomorphism means
07:12:57 <oklopol> we have a paper about... applied homotopy type theory or something
07:13:09 <oklopol> but i don't really know much about that stuff
07:13:50 <oklopol> also i don't see how what Bike says is related to homotopy :/
07:14:03 <Bike> I guaranatee that I see such even less.
07:14:37 <oklopol> well i know the definitions of the words used
07:14:49 <Bike> See, there you go.
07:15:50 <oklopol> wonder how important the "particular" is
07:16:22 <oklopol> i'm on a topology course which promises to emphasize homotopy stuff so maybe i'll know in half a year
07:16:25 <Bike> is it? i thought it just meant cohomotopy sets are mostly used by algebraic topology people
07:16:42 <oklopol> particular contravariant functors
07:17:12 <oklopol> that's probably where the actual important stuff is, this is just the type
07:28:15 -!- WeThePeople has quit (Quit: Leaving).
07:49:59 -!- hagb4rd has quit (Ping timeout: 256 seconds).
07:55:21 -!- azaq23 has quit (Quit: Leaving.).
08:10:07 -!- oerjan has quit (Quit: leaving).
08:14:40 <Sgeo> Well, that's nice
08:14:49 <Sgeo> Helped someone with a problem they were having in Factor
08:15:09 <Sgeo> Turns out they needed to use a library that defined a method
08:15:31 <Sgeo> Which... seems unintuitive that the system isn't smart enough to look for the definition and suggest the vocab in question
08:17:59 -!- epicmonkey has joined.
08:35:59 -!- sebbu has quit (Read error: Connection reset by peer).
08:36:26 -!- sebbu has joined.
08:38:49 <elliott> "By the way, you heard of the guy who applied to the monad police? They said they already had a unit, but they could be joined if he wanted."
08:39:53 <Bike> hey elliott, just wanted to say you were right about poppavic even though you didn't actually say anything. so good job there.
08:40:10 <HackEgo> Taneb atriq Ngevd Fiora nortti alot
08:45:36 <Bike> I think I was reading earlier but right now I'm just kind of looking at the air. (It's nice today.)
08:46:53 <ais523> wow, that use of "whom" sounds wrong even though it's technically correct
08:46:58 <ais523> I think my brain dislikes it at the start of a sentence
08:47:33 <Bike> are you preying on my sleepless brain by trying to make me decide whether to assume you were assuming that question makes sense for whatever it was i was reading?
08:48:18 <shachaf> I don't understand your question.
08:48:34 <Bike> charles c sims, apparently.
08:49:09 <Bike> using the "if I click enough links I will know things" strategy of autodidacticism
08:53:28 -!- DHeadshot has quit (Ping timeout: 245 seconds).
08:54:47 -!- DHeadshot has joined.
09:05:02 -!- dessos has joined.
09:05:56 <Bike> I don't know who that is either. am i cursed?
09:08:29 <Bike> oh. so he's in ##c out of contempt, or what?
09:19:58 -!- ais523 has quit.
09:25:10 -!- Bike has quit (Quit: well, ok).
09:25:55 -!- DHeadshot has quit (Read error: Connection reset by peer).
09:38:11 <Sgeo> Here's a thought: Selectors as objects that accept value:
09:38:53 <Sgeo> So #foobar would be similar to [:s | s foobar ]
09:39:14 <Sgeo> Hmm, may be better to do something like #foobar asBlock instead
09:40:39 <Sgeo> {1. 2. 3.} collect: #asString
09:40:43 <Sgeo> That works just fine in Pharo
09:43:17 <Sgeo> Doesn't work with keyword or binary selectors I think
09:43:28 -!- carado has joined.
09:44:12 <Sgeo> `welcome carado
09:44:14 <HackEgo> carado: 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.)
09:51:17 -!- Nisstyre has quit (Ping timeout: 248 seconds).
10:03:52 -!- Nisstyre has joined.
10:09:18 -!- epicmonkey has quit (Ping timeout: 245 seconds).
10:24:19 -!- omomomom has joined.
10:25:32 -!- omomomom has quit (Quit: omomomom).
10:26:52 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
10:27:06 -!- c00kiemon5ter has joined.
10:29:28 -!- c00kiemon5ter has quit (Client Quit).
10:58:12 -!- c00kiemon5ter has joined.
11:01:13 -!- sebbu2 has joined.
11:01:30 -!- sebbu2 has quit (Changing host).
11:01:30 -!- sebbu2 has joined.
11:02:36 -!- sebbu has quit (Ping timeout: 255 seconds).
11:17:16 -!- epicmonkey has joined.
11:17:25 -!- Phantom_Hoover has joined.
11:46:30 -!- Phantom_Hoover has quit (Read error: Operation timed out).
11:55:45 -!- sebbu2 has changed nick to sebbu.
12:08:43 -!- ogrom has joined.
12:08:54 -!- ogrom has quit (Client Quit).
12:13:54 -!- Phantom_Hoover has joined.
12:53:13 -!- Nisstyre has quit (Ping timeout: 252 seconds).
13:07:42 -!- Nisstyre has joined.
13:29:48 -!- impomatic has joined.
14:10:37 -!- boily has joined.
14:23:56 -!- carado has quit (Ping timeout: 246 seconds).
14:25:52 <HackEgo> 241) <nddrylliog> back to legal tender, that expression really makes me daydream. Like, there'd be black-market tender. Out-of-town hug shops where people exchange tenderness you've NEVER SEEN BEFORE. \ 346) [after a long string of Lymia getting lambdabot to spit out huge, meaningless type signatures] <Lymia> I need to learn more Haskell... <CakeP
14:27:13 -!- oerjan has joined.
14:32:48 <fizzie> No, that's being frightened, not wary.
14:34:48 <oerjan> 00:07:10: <shachaf> y'all hate PHP too much imo
14:34:48 <oerjan> 00:07:11: <shachaf> i love it
14:34:48 <oerjan> 00:07:13: <shachaf> it is so easy
14:34:54 <oerjan> YOU HAVE GONE TOO FAR NOW
14:35:16 <coppro> the best sex is hard to et
14:44:01 <elliott> oerjan: shachaf is just an aim hecker.
14:45:25 -!- WeThePeople has joined.
14:45:40 <fungot> eliott elliot eliott eliott elliot elliott eliot elliot eliott elliot elliot eliott eliott elliot eliott eliot elliot elliott eliott elliot eliott eliott elliot elliot eliott eliot elliott eliott elliot eliott eliott elliot elliott eliot elliot eliott eliott elliot elliot eliott elliot elliott eliot elliot elliott eliott e ...too much output!
14:46:02 <oerjan> unless that was what i should beware about
14:47:20 <oerjan> i note that all relevant google hits for "aim hecker" is this channel.
14:48:02 <HackEgo> 2012-04-14.txt:05:41:15: <kmc> aim hecker (n): when ur dronk and u pee so bad all over the toilet that ppl make fun of u
14:48:39 <elliott> oerjan: you will have to read a very long log to find out.
14:48:59 <Sgeo> Fun fact, in Pharo, #foobar can be used almost but not quite like a function of one argument
14:49:09 <Sgeo> {1. 2. 3.} collect: #asString is valid
14:49:21 <oerjan> although i suspect/half recall it's a misspelling of "AIM hacker"
14:50:37 <elliott> 05:44:36: <zzo38> I don't want you to put anything down my pants either (whether it is scorpions or not)
15:00:19 -!- FreeFull has joined.
15:00:36 <fizzie> (I see important things had been added.)
15:00:52 <Sgeo> Some Smalltalkers are idiots.
15:13:28 -!- boily has quit (Quit: Poulet!).
15:14:12 -!- boily has joined.
15:15:04 -!- sirdancealot has quit (Ping timeout: 240 seconds).
15:25:02 -!- copumpkin has quit (Ping timeout: 256 seconds).
15:25:32 -!- copumpkin has joined.
15:47:27 <Sgeo> "Replace the current anti-bot feature with an arbitrary question that only a human can answer."
15:47:31 <Sgeo> http://www.reddit.com/r/ideasfortheadmins/comments/16neyr/changing_the_antibot_feature_used_to_protect/
15:49:06 <oerjan> hey don't be so hard on the guy, it cannot be easy to have just awoken from a 10-year coma.
15:51:36 <oerjan> his attempts to explain what kind of question that should be only makes it worse :P
15:52:09 -!- 92AAB0P69 has joined.
15:53:17 <oerjan> 92AAB0P69: why, you look positively alphanumeric today!
16:00:00 -!- 92AAB0P69 has quit (Ping timeout: 260 seconds).
16:29:36 -!- Nisstyre-laptop has joined.
16:38:15 -!- Vorpal has joined.
16:38:22 -!- carado has joined.
16:43:06 -!- epicmonkey has quit (Ping timeout: 252 seconds).
16:50:45 -!- TeruFSX has joined.
16:52:23 -!- copumpkin has quit (Ping timeout: 252 seconds).
16:52:55 -!- copumpkin has joined.
16:56:20 <Sgeo> Maybe IDEs should be as easy to modify as languages
16:56:28 <Sgeo> Write a language extension, the IDE somehow changes to match
16:56:43 <Sgeo> I have no idea how that could possibly work
16:58:50 <Vorpal> Suggestions for a lightweight MTA for local mail only? Basically needs to handle stuff from cron scripts. Nothing else.
16:59:44 <Vorpal> <Sgeo> Maybe IDEs should be as easy to modify as languages <-- emacs?
17:00:16 * Sgeo has no idea who peter molydeux is
17:00:35 <Vorpal> Phantom_Hoover, the real or the fake one?
17:01:49 <Sgeo> "Game where the only enemy is you. You're going to jump off a cliff. Exit your body as your soul and talk your body into not jumping."
17:02:00 <Sgeo> Isn't Planeside: Eternal Torment a bit self-fighting?
17:03:00 <Sgeo> I don't want to say more because I think spoilers
17:03:13 <Vorpal> did you mean "Planescape: Torment" maybe? And no, it isn't really like that. In fact it is not at all like that.
17:03:48 <elliott> "Professional" "tip": There isn't a real Peter Molydeux.
17:04:11 <elliott> (The real person is called "Molyneux".)
17:04:16 <elliott> (Not that there's a real Peter Molyneux either.)
17:04:40 <Sgeo> V inthryl erpnyy gung gurer'f nccneragyl n cneg jurer lbh qrongr... fbzr cneg bs lbhefrys? Pna pbaivapr lbhe... zbegnyvgl, V guvax? gb qb fbzrguvat?
17:05:27 <elliott> v ogdfg grjegnrgfg r'fregre
17:05:52 <Sgeo> Fperj lbh ryyvbgg
17:06:33 <Vorpal> ^rot13 V inthryl erpnyy gung gurer'f nccneragyl n cneg jurer lbh qrongr... fbzr cneg bs lbhefrys? Pna pbaivapr lbhe... zbegnyvgl, V guvax? gb qb fbzrguvat?
17:06:34 <fungot> I vaguely recall that there's apparently a part where you debate... some part of yourself? Can convince your... mortality, I think? to do something?
17:07:04 <Vorpal> ^rot13 Fperj lbh ryyvbgg
17:07:16 <Vorpal> ^rot13 v ogdfg grjegnrgfg r'fregre
17:07:16 <fungot> i btqst tewrtaetst e'serter
17:13:09 -!- oerjan has quit (Quit: eek, spoilers!).
17:19:58 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
17:20:15 -!- c00kiemon5ter has joined.
17:20:48 -!- c00kiemon5ter has quit (Client Quit).
17:22:17 <tswett> "Definition: a singular line rho is linear if the Riemann hypothesis holds."
17:23:28 -!- Bike_ has joined.
17:29:36 -!- Bike_ has changed nick to Bike.
17:30:26 -!- c00kiemon5ter has joined.
17:54:35 -!- epicmonkey has joined.
18:06:43 -!- Nisstyre-laptop has quit (Ping timeout: 252 seconds).
18:17:25 -!- Nisstyre-laptop has joined.
18:28:42 <kmc> Sgeo: oh eclipse has something like that
18:29:36 <kmc> http://www.eclipse.org/Xtext/
18:31:10 <kmc> makes it easy to implement custom JVM-based languages with full Eclipse tool support
18:37:34 -!- augur has quit (Remote host closed the connection).
18:47:50 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
18:55:46 <kmc> code is more than text; it's structured machine-readable information
18:56:21 <kmc> your editor should be aware of that information to help you edit, by autocompleting names, displaying types, displaying compiler errors, etc
18:56:34 <Sgeo> Autocompletion in Smalltalk kind of sucks
18:56:36 <kmc> these are helpful things
18:56:38 -!- Taneb has joined.
18:57:22 <kmc> the people who disparage IDEs often have Vim or Emacs configured to do basically the same kinds of things
18:58:02 <kmc> FreeFull: have you seen the Agda integration for Emacs? It can do really cool things like "tell me the type of the expression I would need to put where my cursor is"
18:58:06 <Bike> does emacs (with appropriate modes) not consitute an IDE somehow?
18:58:22 <kmc> in fact you can have multiple of thees "holes" and still typecheck your code around them
18:58:24 <Bike> people seem to sometimes act like it doesn't
18:58:28 <kmc> Bike: i think it does essentially
18:59:02 <Bike> "haha fools i don't use an IDE, I just have thirty .el files"
19:00:50 <kmc> it's just more Real Hackers us vs. them nonsense
19:00:57 <Sgeo> It's an IDE that seems more confusing to me than Smalltalk's IDE
19:01:10 <FreeFull> I just use vim with few plugins
19:01:20 <FreeFull> I don't even have that haskell integration plugin
19:01:36 <kmc> FreeFull: you can also write a function's type signature, and then ask it to automatically populate a pattern-matching case for each constructor of the argument type
19:02:25 <kmc> like if I write "f :: Maybe [Int]" i can get it to write "f Nothing = ...; f (Just []) = ...; f (Just (x:xs)) = ..." with a few keystrokes
19:02:32 <kmc> or rather the equivalent in Agda syntax
19:02:55 <Bike> Sgeo: it's old and crufty, probably much more so than any popular smalltalk system
19:02:56 <FreeFull> kmc: Would that work for a function like odd [] = []; odd x:[] = x:[]; odd x:_:xs = x:odd xs;
19:03:15 <kmc> i think so
19:03:29 <kmc> it would give you [] and (x:xs) to start with, and then you have to say that you want to expand xs again
19:03:29 <Bike> Sgeo: when i tried squeak i thought it was very confusing, but i bet if i kept at it i'd be able to figure it out as much as i've figured out emacs.
19:03:46 <kmc> anyway I also don't use IDEs or fancy editor modes, but I wouldn't say I don't see the point of them
19:04:06 <FreeFull> I just don't see how it would actually help me
19:04:07 <kmc> it's more like I don't find the benefits compelling enough to override my essential laziness
19:04:16 <Sgeo> Bike, I think Pharo may be less confusing than Squeak
19:04:22 <kmc> well a simple example, isn't it helpful to have your editor jump automatically to the point of a compiler error
19:04:43 <Bike> Sgeo: does pharo look less like an aliased 90s toy
19:04:56 <Sgeo> Bike, it looks nothing like an aliased 90s toy
19:05:04 <Sgeo> It still looks nonnative though
19:05:07 <Bike> maybe i'll try it sometime
19:05:19 <Bike> nonnative? i'm not exactly expecting eclipse here
19:05:38 <Sgeo> http://www.pharo-project.org/about/screenshots
19:06:56 <Bike> oh yeah, that looks way better
19:07:30 <Sgeo> There's a theming thing actually
19:08:00 <Sgeo> Blue Pharo; Orange Pharo; Pharo; Standard Squeak; Vistary; W2K; Watery; Watery 2
19:08:32 <Bike> does it do the thing where you click a window and buttons come up on the borders? that was really weird for me
19:08:44 -!- Nisstyre-laptop has quit (Quit: Leaving).
19:09:08 <Sgeo> I think there's supposed to be a key to press at the same time to get that, not sure
19:10:51 <Sgeo> Hmm, can't figure it out
19:11:20 <Bike> eh,i assume they have tutorials or something anyhow
19:11:32 <FreeFull> kmc: Assuming that spot is where the actual problem is
19:11:48 <Sgeo> Alt-Shift-Middle mouse
19:11:59 <FreeFull> Sometimes the compiler doesn't catch on that something is wrong until it's a bit further down
19:11:59 <Bike> i don't have a middle mouse D:
19:12:06 <kmc> but sometimes it does
19:12:12 <Sgeo> alt-shift-left+right
19:12:18 <kmc> i mean when you see an error message, don't you manually go to that line in most cases, anyway?
19:12:35 <kmc> having a keypress in the editor to jump there isn't going to slow you down
19:13:34 <Sgeo> I think morphs don't quite work as I was expecting them to
19:13:47 <Sgeo> I managed to rotate the title bar of the welcome thing
19:13:47 <Vorpal> <FreeFull> Sometimes the compiler doesn't catch on that something is wrong until it's a bit further down <-- if you are dealing with C, then clang is usually quite good at finding the right spot
19:14:12 <kmc> you can't argue that integration is useless by pointing out that it's not perfect and can't read your mind
19:17:17 -!- augur has joined.
19:17:50 <FreeFull> Does the integration still provide you with a repl?
19:18:28 <FreeFull> I often find myself writing the function I need in ghci before copying it over to my editor and doing indentation and stuff
19:18:45 <Bike> most emacs modes have repls
19:18:54 <Bike> if the language is reasonable for that, i mean
19:19:03 -!- ais523 has joined.
19:19:21 <kmc> sometimes i use GDB as a C repl
19:19:22 * Sgeo wonders pros/cons of Smalltalk Workspaces vs REPLs
19:19:32 <Bike> yeah, i'm sure you could get a c repl too, but you'd probably have to install more than vanilla c-mode to get one.
19:20:21 <Bike> FreeFull: also, using emacs my usual "workflow" is writing things in the editor, and then using IDE functions to send it interactively to the language implementation. i could do as you say, but this way is more natural for me.
19:20:26 <Vorpal> kmc, that is a very crippled one though
19:20:39 <Bike> and then while i'm writing in the editor i can test small things out in the repl and so on
19:21:05 <Bike> Sgeo: presumably pros include being able to inspect objects and shit all over the place, and cons include not being super easy to understand?
19:22:05 <Sgeo> REPLs don't really preclude Smalltalk-style inspecting, I think. I'm thinking more of writing code on multiple lines without it executing until told
19:22:19 <Bike> what kind of repl doesn't let you do that
19:22:23 <Sgeo> Bike, (btw, by Workspace, I mean a specific kind of interaction within the Smalltalk environment)
19:22:31 <kmc> software that lets you shit all over the place
19:22:47 <Bike> Sgeo: yes, i'm guessing at what that specific interaction is from my minimal experience with smalltalk.
19:23:18 <Bike> in my ide the inspector is a separate thing from the repl, though you can get to one from the other. the repl is just, well, read-eval-print.
19:23:29 <FreeFull> Bike: "Ok, I just wrote this function, let's feed it a couple different parameters to see how well it works"
19:23:40 <Bike> FreeFull: yeah, all the time
19:24:40 <Sgeo> Cons of workspace: Editing previous text by backtracking rather than just pressing up arrow
19:24:50 <FreeFull> I think that if you find youself needing to inspect everything at multiple levels rather than just reading the code and getting it, something might be too complex somewhere
19:25:13 <Bike> i don't personally use the inspector much, but i can see why someone would want it.
19:25:36 <kmc> i built my house with only a hammer, if you need power tools to build a house then your house is too fancy
19:26:19 <Bike> that just reminds me of the unix=nightmare power drill analogy D:
19:26:34 <kmc> a powerful gun that shoots forwards and backwards at the same time
19:26:52 <Bike> a recoilless rifle?
19:26:55 <FreeFull> kmc: Maybe if the goal was to build the smallest, simplest house that had full functionality and was easy to keep up
19:27:14 <kmc> 'full functionality' is a tricky one FreeFull
19:27:34 <Bike> if reading blogs has taught me anything it's that programmers have no fucking clue what the best way to write software is
19:28:11 <kmc> but we all think we do
19:28:20 <Bike> so i don't much see the point in begrudging someone else's methods
19:28:57 <Bike> i mean i hate using eclipse, but if someone uses it all the time and writes cool programs then more power to 'em
19:28:57 <kmc> we have totally untested unscientific theories that just happen to confirm our prejudices
19:29:18 <Bike> is there even ay good reasearch on ide design?
19:29:21 <FreeFull> kmc: Modularity helps, as long as it doesn't mean building lots of framework code
19:29:35 <kmc> FreeFull: it's not about absolute can and can't either; some tools allow you to work faster or with fewer mistakes
19:29:36 <Bike> maybe there's more of that in smalltalk-world
19:29:46 <kmc> you can always *get by* without good tools
19:29:55 <kmc> you can build the world's most popular social network using PHP and chewing gum
19:30:16 <FreeFull> kmc: Pure functional programming allows me to work with fewer mistakes. I don't know if it's faster or not though, I spend more time thinking
19:30:58 <FreeFull> kmc: They had to build a custom PHP compiler AFAIK to deal with scaling concerns
19:31:00 <kmc> you can fly a rocketship to the moon using 2,800 individual dual NOR gate ICs
19:31:04 <FreeFull> I don't know what they use now
19:31:11 <Bike> fewer mistakes than what? do you have a real basis of comparison? have you done lots of programming in java or what have you?
19:31:46 <Sgeo> 'New ProcessSchedulers should not be created since
19:31:46 <Sgeo> the integrity of the system depends on a unique scheduler'
19:32:07 <kmc> FreeFull: C is an extremely low level language
19:32:25 <kmc> it's not like pure functional languages are the only high level languages
19:32:31 <FreeFull> kmc: I've written assembly too
19:32:38 <kmc> is that relevant?
19:32:41 -!- sebbu has quit (Ping timeout: 256 seconds).
19:32:54 <FreeFull> I just like having the compiler shout at me
19:33:04 <Bike> it's ok if you do
19:33:12 <Bike> just treat it as a preference more than as an iron objective law
19:33:59 <FreeFull> I also like not being given the chance to make a lot of mistakes unless I explicitly try to do something special
19:34:46 <Bike> i personally like programming in dynamic(ally typed) systems, but i'd be a fool to say haskell is pointless or whatever
19:35:14 <kmc> FreeFull: I kind of agree with your specific points, but your mode of argument is not intellectually sound
19:35:15 <FreeFull> Dynamic systems do allow you to just get the job done and over with
19:35:20 <Sgeo> It's easy to (deliberately) segfault Pharo
19:35:43 <kmc> if you go to #haskell you will find many people eager to engage in this particular circlejerk
19:35:52 <FreeFull> I segfaulted haskell programs before =P. I don't think anything is segfault proof if you're trying
19:36:13 <Bike> you could program in a system with no segmentation hth
19:36:24 <kmc> yeah my AVR programs never segfault!
19:36:24 <Sgeo> There are probably easier segfaults than the one I just did, which involved deleting a method first
19:36:25 <ais523> yeah, can't segfault in DOS
19:36:49 -!- sebbu has joined.
19:36:51 <ais523> 32-bit DOS can segfault
19:36:55 <kmc> FreeFull: even then, a segfault has occurred
19:37:06 <FreeFull> Well, I guess if you have no memory protection
19:37:19 <FreeFull> You just overwrite memory, and it might do something bad, it might not
19:37:28 <kmc> also 'segfault' is a bad name on x86 because the faults almost always come from paging, not segmentation
19:37:39 <Bike> yeah that too but i know shit all about paging so
19:37:46 <Sgeo> What happens if I add an instance variable to ProtoObject
19:37:50 <kmc> likewise SIGFPE 'Floating point exception' is almost never floating point related
19:37:57 <Bike> maybe i should try one of them fancy one-memory-address-space or capability-based or whatever systems
19:37:58 -!- monqy has joined.
19:38:11 <kmc> you get it for integer divide by zero, and at least one other integer error that I'll see if anyone can come up with :)
19:38:12 <FreeFull> kmc: Doesn't integer division by 0 generate a SIGFPE
19:38:30 <FreeFull> Of course floating point division will just give you a NaN
19:38:32 <Sgeo> It complains that ProtoObject inherits from ProtoObject
19:38:40 <Sgeo> I ... guess I can't change the definition so easily?
19:39:00 <Bike> Of course floating point division will just give you a NaN <-- no, you can set it up to trap
19:39:14 <FreeFull> Bike: Well, in a default setting then
19:39:37 <Bike> isn't whether NaNs arising is default imp-defined
19:39:50 <Bike> imp. of ieee floats i mean
19:41:37 <Sgeo> Oh dear god there is a debate in the middle of this piece of documentation
19:41:41 <Sgeo> In the Pharo system
19:41:53 <Bike> nice, i love that (i hate that)
19:42:41 <FreeFull> Is it like the haskell.org debate pages, but less organised?
19:43:23 <Sgeo> Lemme pastebin it
19:44:03 <Sgeo> It's like a Wiki debate
19:44:31 <Sgeo> https://gist.github.com/359a07f93add3c865b3f
19:44:42 <Sgeo> Hmm, maybe it isn't actually a debate, it looked a little like one though
19:44:48 <Sgeo> "Can you give me an example that demonstrates the usefulness of this
19:45:33 <Bike> What's ProtoObject for?
19:46:10 <Sgeo> Things where you don't really want a full Object with all of its hugeness.
19:46:24 <Sgeo> Say, if you want to make something that acts as a proxy for another object
19:46:42 <Sgeo> Passing messages onto that other object
19:46:44 <Bike> Oh, makes sense. It does seem like Object hasa lot.
19:47:02 <Bike> «one *can* use fractions or floats as indices» well then
19:47:03 -!- c00kiemon5ter has joined.
19:47:54 <Sgeo> {1. 2. 3.} at: 1.7
19:47:57 <Sgeo> That gives me 1
19:48:06 <Bike> 1-indexed arrays too?
19:48:30 <Bike> need an APLtalk environment
19:49:53 <Bike> "the integers are simply a subset of the reals", what a nice thought.
19:50:43 <Taneb> That's... mathematically true, and probably stupid in a programming context
19:51:27 <Bike> It's problematic. E.g. it's a lot harder to implement factorial on reals than on (positive) integers, and having it on reals isn't as useful.
19:51:44 <FreeFull> Haskell doesn't seem to have a power function that takes a ratio as the index
19:51:49 <kmc> in JavaScript the integers are a subset of the floats
19:51:59 <Bike> I thought in javascript you didn't have integers?
19:52:28 <FreeFull> Javascript has floats that sometimes act as integers
19:52:34 <Bike> well, actually I have no idea how you'd implement factorial on reals. floats, maybe
19:52:46 <FreeFull> So you can still do boolean operations and stuff
19:52:59 <Bike> wait, what do booleans have to do with anything.
19:53:04 <Sgeo> Isn't that what that function does? Gamma or Zeta? The one in that theorem
19:53:10 <Bike> gamma function, yes.
19:53:11 <Sgeo> Erm, not theorem, conjectur
19:53:18 <FreeFull> Bike: 19:51:49 < kmc> in JavaScript the integers are a subset of the floats
19:53:20 <Bike> but that's a definition, not an implementation, you know?
19:53:58 <Bike> And then when you start saying "well the reals are just a subset of the complexes" and trying to do that in programs you get all /sorts/ of cool problems.
19:54:05 <Bike> FreeFull: I still don't get it.
19:54:33 <FreeFull> Bike: You're doing bitwise OR on two floating point numbers
19:54:45 <Bike> Wow, that sounds like an incredibly bad idea!
19:54:50 <FreeFull> I guess I meant bitwise and not boolean
19:54:59 <Bike> Yes, that makes more sense, though.
19:55:32 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter).
19:55:52 <Bike> Sgeo: curious,, what conjecture were you thinking of? gamma shows up all over the place.
19:56:15 <kmc> so does anyone know / want to guess about the other integer operation that can cause SIGFPE, besides divide by zero?
19:56:28 <Bike> overflow maybe?
19:56:34 <Sgeo> Riemann, I think? The one about whether or not all the non-trivial zeros are on a certain line
19:56:44 <kmc> Bike: what kind?
19:56:47 <Bike> that's the riemann-zeta conjecture, yeah
19:56:55 <Bike> kmc: integer. (not that i'd expect most implementations to do that)
19:57:13 <kmc> you mean adding to the biggest integer or something?
19:57:26 <kmc> yeah an implementation could raise SIGFPE, since it's undefined behavior
19:57:29 <kmc> but it's not common afaik
19:57:37 <kmc> i meant a case that is easy to demonstrate on x86 GNU/Linux
19:57:47 <Bike> good enough for meeeee
19:58:02 <Bike> Sgeo: https://upload.wikimedia.org/math/3/d/e/3deec1fb1bc7407484d64c735615b2f5.png (when 0 < R(s) < 1)
20:01:50 <fizzie> http://sprunge.us/UJOc that doesn't exactly sound like the best thing.
20:03:12 <boily> fizzie: ooooh... I have a morbid fascination towards failing hardware. Each piece crumbles apart in its own unique way.
20:04:13 <Taneb> boily, my laptop's wifi thingy has a range of about 3 meters and the hinge can be used as a bladed weapon
20:04:26 <Taneb> After I accidentally sat on it
20:05:00 <boily> I am impervious to slicing damage. It was experimentaly proven.
20:05:33 -!- Sgeo_ has joined.
20:06:00 <fizzie> boily: In that case, http://sprunge.us/HTHU shows it dramatically falling off the RAID1 set.
20:06:32 -!- c00kiemon5ter has joined.
20:06:33 -!- Sgeo has quit (Read error: Connection reset by peer).
20:06:47 <fizzie> (This is in a really super-crummy ZyXEL two-disk NAS box that I'd like to get rid of in any case.)
20:08:42 <Sgeo_> F-Script does something... odd
20:08:46 <Sgeo_> Reminds me a little of J
20:08:50 <Sgeo_> http://pmougin.wordpress.com/2009/11/17/beyond-blocks/
20:10:20 <kmc> Bike et al: the answer is, dividing the smallest int (e.g. -2**31) by -1
20:11:11 <kmc> because the result is not representable
20:11:15 <Sgeo_> I have no idea how any of that works
20:11:30 <kmc> operations like addition and negation don't care, but I guess they decided that since division can fault anyway, it should fault in this case
20:15:14 <shachaf> 11:50 <beaky> in C++ I love to overload operators
20:16:48 <kmc> @ShitBeakySays
20:18:18 <shachaf> kmc: Should I learn about analysis?
20:21:23 <shachaf> kmc: Also: How does GHC compile to ARM? Is it only via LLVM like someone said?
20:22:13 <Sgeo_> Why do I keep hearing bad things about Morphic?
20:22:32 <Bike> "higher order messaging (HOM)" i think there should be a class somewhere on when not to use initialisms
20:22:37 <Bike> Sgeo_: iirc it's "controversial"
20:22:44 <Sgeo_> I remember one suggestion that it works out better in Self
20:22:45 <olsner> Sgeo_: maybe you just have the wrong friends, I haven't heard anything bad about Morphic
20:23:00 <kmc> shachaf: i am not up to date on this
20:23:03 -!- Nisstyre-laptop has joined.
20:23:12 <kmc> i think there is no native codegen
20:23:18 <kmc> you can probably still use the unregisterized C backend
20:23:27 <Bike> olsner: it's a UI thing for smalltalk.
20:23:55 <Sgeo_> ... a tutorial on how to write a browser ... http://pharobooks.gforge.inria.fr/PharoByExampleTwo-Eng/latest/Glamour.pdf
20:27:30 <kmc> i think so
20:27:45 <kmc> i'm not exactly up to date
20:27:52 -!- Nisstyre-laptop has quit (Quit: Leaving).
20:28:15 <kmc> but GHC supported a ton of architectures through unregisterized C backend
20:28:16 <kmc> like all of Debian
20:28:26 <kmc> and I believe it's not trivial to bring up a new architecture with LLVM
20:30:25 <kmc> i think it's not a ton of work to keep the unreg'd C backend around, given that it's not expected to be fast
20:34:01 -!- zzo38 has joined.
20:34:04 -!- Taneb has quit (Quit: Leaving).
20:37:14 -!- Taneb has joined.
20:40:44 <Sgeo_> You know what could be convenient in a Smalltalk IDE? Some conventions for specifying protocols that objects can follow, and a way to, for any object, automatically create stub methods by those names
20:40:55 <Sgeo_> Hmm, Visual Studio does that with interfaces, doesn't it?
20:41:02 -!- ais523_ has joined.
20:41:09 -!- ais523 has quit (Disconnected by services).
20:41:11 -!- ais523_ has changed nick to ais523.
20:41:17 <shachaf> i love it when my ide generates code
20:41:35 <kmc> are you beaky
20:42:11 <Sgeo_> shachaf, when the code is expected to change, it does make more sense than a macro, I think
20:43:21 <kmc> it's true that writing the method signatures in every implementation of an interface constitutes code duplication
20:43:28 <kmc> but it doesn't bug me the way code duplication generally does
20:43:33 <kmc> i think because leaving those implicit would be worse
20:47:03 <Sgeo_> Also, if I ever get around to writing complete bindings for an AW-like thing, generating methods automatically with a bit of code that actually writes to the image, rather than acting macro-like, would be more convenient
20:47:12 <Sgeo_> Because many of the methods would be the same but some would be subtly different
20:47:33 <Sgeo_> And the different ones would tend to be different in different ways
20:51:27 -!- Taneb has quit (Quit: Leaving).
20:54:09 -!- Taneb has joined.
21:07:32 -!- Vorpal has quit (Ping timeout: 255 seconds).
21:14:40 -!- Taneb has quit (Remote host closed the connection).
21:22:39 -!- sirdancealot7 has joined.
21:22:48 -!- asiekierka has quit (Excess Flood).
21:24:46 -!- asiekierka has joined.
21:27:28 -!- Taneb has joined.
21:29:37 -!- Taneb has quit (Remote host closed the connection).
21:30:47 -!- Taneb has joined.
21:31:17 -!- carado has quit (Ping timeout: 246 seconds).
21:41:19 <FreeFull> You can actually do import qualified something as X import qualified somethingelse as X
21:42:54 <olsner> I guess it's the same principle that allows you to import several modules unqualified
21:43:43 <Taneb> Causing a confusion in #ubuntu-steam
21:44:04 <FreeFull> Hmm, the program wants me to install cabal-dev, but cabal says that will downgrade two things which would break other things
21:44:07 <fizzie> shachaf: What sort of an adjective would best describe the qualified imports you love, what do you think?
21:44:18 <Taneb> By asking for help with a driver problem
21:45:18 <olsner> (sorry for giving away the answer)
21:47:22 <Taneb> Sgeo_, I tried to upgrade graphics card driver and now my computer thinks my screen is 640x800
21:47:36 <Sgeo_> Taneb, I agree with laughingman
21:47:40 <olsner> 640x800? that's not a valid screen size
21:48:00 <fizzie> I ran a CRT at 666x666.
21:48:15 <fizzie> But it did nothing especially evil or devilish. :/
21:48:22 <Taneb> Sgeo_, I'm going to bed soon
21:48:32 <Taneb> If someone could fix this while I sleep that would be brilliant
21:52:49 <Sgeo_> much like characters in a story1
21:52:56 <Sgeo_> Indeed, one object system refers to them as actors."
21:54:48 <zzo38> Is it allowed in a C code for a macro to call a function style macro with ( but omitting the ) in the definition of the first macro?
21:55:24 <kmc> FreeFull: yeah, that's a pretty nice feature
21:55:41 <kmc> Haskell's module system is very simplistic, but it's nicely thought out and orthogonal
21:59:17 <zzo38> Can __LINE__ be used with # and ## in macros?
21:59:42 <fizzie> For the latter question, the answer is yes, I believe.
21:59:53 <fizzie> (At least it is somewhat commonly done.)
22:02:17 * Sgeo_ wishes Smalltalk had anything resembing a module system
22:04:39 <fizzie> Following C11 6.10.3.4p1, I think the former question also gets a positive answer. (Macro rescanning is done "along with all subsequent preprocessing tokens of the source file", and certainly #define foo(x) #x \n #define bar foo( \n bar baz) seems to work and result in the string literal "baz" as the preprocessing phase output.
22:06:44 <zzo38> I think __LINE__ is sometimes used with # I have seen, but is it used with ## as well?
22:07:02 <fizzie> I've seen it used with ##.
22:07:31 <fizzie> To make a not-really-working gensym-ish thing, to avoid duplicate identifiers.
22:07:42 <fizzie> (As long as all the macro invocations are on different lines.)
22:08:43 <fizzie> GCC has (as an extension) a macro called __COUNTER__ for that; it expands to an integer constant with the value that is one larger than the value it expanded to last time during the same translation unit.
22:09:01 <fizzie> And I think MSVC has it too. (It might even derive from there.)
22:09:23 <zzo38> Yes but using __COUNTER__ might not work for some purposes
22:10:10 <FreeFull> What would be the use of __COUNTER__
22:10:29 -!- WeThePeople has quit (Quit: Leaving).
22:10:30 <fizzie> FreeFull: "a convenient means to generate unique identifiers", to quote the GCC manual.
22:11:37 -!- Jafet has quit (Ping timeout: 272 seconds).
22:12:04 <Bike> Is there a programming system that decouples compilation and object file creation enough that e.g. having it output pexe instead of elf would be anything less than an exercise in implementation-undefined pain?
22:14:45 <Bike> or well, two executable formats both for linux, would make more sense.
22:15:06 <c00kiemon5ter> http://www.youtube.com/watch?v=b0EF0VTs9Dc -- Monads and Gonads Google Talk -- upload 2 minutes ago
22:15:40 <Bike> "19:00 is method chaining. I find it hard to believe that monads are simply objects/closures."
22:17:57 <olsner> does monad rhyme with gonad, or is it a short 'o' in monad?
22:18:35 <Bike> they rhyme in my dialect
22:22:33 <olsner> hmm, I guess moenad is the same as moanad
22:23:08 <shachaf> oerjan: Logreading is bad for you.
22:29:51 <olsner> do you sometimes watch video in fullscreen, and then think that switching to full screen again will make the picture fill up the area outside the screen too?
22:30:52 -!- boily has quit (Quit: Poulet!).
22:37:50 -!- sebbu has quit (Ping timeout: 260 seconds).
22:38:24 <Sgeo_> o.O at Taneb's situation
22:43:48 -!- WeThePeople has joined.
23:15:27 -!- sebbu has joined.
23:15:27 -!- sebbu has quit (Changing host).
23:15:27 -!- sebbu has joined.
23:16:29 <Sgeo_> Phantom_Hoover, bootleg graphics card
23:16:43 * Sgeo_ has not heard of asymmetric multimethods before now
23:22:43 <Sgeo_> Unlike symmetric multimethods, there's still a distinguished position
23:23:30 <Sgeo_> But can specialize on the other arguments, similarly to overloading but not static
23:23:44 <Sgeo_> http://www.laputan.org/reflection/Foote-Johnson-Noble-ECOOP-2005.html
23:25:39 <Bike> what's distinguished about the position?
23:26:20 * Sgeo_ isn't quite sure, other than that that position does name an object that will receive DNE if there's no valid implementation
23:26:29 <Sgeo_> (At least in what this author is doing)
23:27:53 <Sgeo_> That's not the name of it, is it. DN something
23:28:41 <Sgeo_> DNU. doesNotUnderstand
23:33:15 -!- sebbu has quit (Ping timeout: 260 seconds).
23:49:07 <shachaf> Sgeo_: oh, i love multimethods
23:53:22 <elliott> `pastelogs shachaf.*(i love|they are)
23:54:04 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.17386
23:54:35 <Bike> there are levels of irony here that are far, far beyond my understanding
23:55:13 <monqy> shachaf: that's what we've been saying yes
23:55:51 <shachaf> it's pretty easy to overdo it
23:56:08 <shachaf> I'll try to keep it to "special occasions".
23:56:20 <Bike> "2011-11-20.txt:08:29:00: <elliott> shachaf: I love those." hm, so this is all elliott's falt originally
23:56:38 -!- sebbu has joined.
23:56:38 -!- sebbu has quit (Changing host).
23:56:38 -!- sebbu has joined.
23:59:45 -!- WeThePeople has quit (Quit: Leaving).