←2007-09-11 2007-09-12 2007-09-13→ ↑2007 ↑all
00:02:56 -!- ehird` has quit.
00:04:32 -!- RodgerTheGreat has joined.
00:04:34 <RodgerTheGreat> howdy, folks
00:06:06 <ihope> Ello.
00:06:25 <RodgerTheGreat> hey, ihope
00:11:36 <SimonRC> hello.jpg
00:11:58 <RodgerTheGreat> sick fucker
00:13:47 <SimonRC> *cough*
00:14:42 <SimonRC> maybe it is funnier on bash
00:15:59 <RodgerTheGreat> yeah, usually is
00:22:29 * pikhq returneth
00:22:46 <RodgerTheGreat> wb, pikhq
00:32:34 -!- sebbu has quit ("@+").
01:09:48 -!- oerjan has quit ("Good night").
01:25:27 <bsmntbombdood> "hfs"
01:25:47 <ihope> HFS?
01:25:49 <ihope> Or hfs?
01:27:34 <SimonRC> "HFs"?
01:27:45 <bsmntbombdood> http://www.openbsd.org/cgi-bin/cvsweb/src/usr.bin/sed/TEST/math.sed
01:28:16 <bsmntbombdood> makes me want to learn more sed
01:29:05 * SimonRC wonders where th sokoban in sed got to
01:29:51 <SimonRC> and there is a nearly-full dc written in sed
01:29:53 <bsmntbombdood> there's also 4-tower hanoi in that directory
01:29:57 <bsmntbombdood> O.o
01:29:59 <bsmntbombdood> that's awesome
01:32:09 <bsmntbombdood> sed in dc would be cooler
01:32:16 <bsmntbombdood> but i don't think it can be done
01:32:36 <SimonRC> hmm
01:32:44 <SimonRC> dc lacks a "drop2 command
01:32:48 <SimonRC> but apart from that...
01:32:53 <SimonRC> *"drop"
01:32:57 <bsmntbombdood> no, it has one
01:33:31 <SimonRC> what?
01:33:32 <pikhq> "n".
01:33:44 <bsmntbombdood> Zd<r
01:33:56 <pikhq> Removes an item from the stack and outputs it without a newline.
01:34:04 <pikhq> (why no newline is beyond me)
01:34:21 <ihope> So that you can have no newline?
01:34:30 <bsmntbombdood> yeah...
01:34:39 <bsmntbombdood> it's easy to add a newline, hard to take away one
01:36:00 <ihope> Ooh! Maybe I'll slightly revamp my parser language and call it "Cetacea".
01:39:41 <bsmntbombdood> oooh, i think sed could actually be implemented in dc
01:39:55 <bsmntbombdood> by storing strings as lists of numbers instead of the builtin strings
01:41:02 <pikhq> Of *course* sed could be implemented in dc.
01:41:12 <pikhq> At least, GNU dc is Turing complete. . .
01:41:49 <bsmntbombdood> all dc are turing complete
01:42:57 <pikhq> Not necessarily.
01:43:07 <bsmntbombdood> dc even has 128 tapes and an extra stack, so it's 128.5 times more powerful than a turing machine!!
01:43:17 <bsmntbombdood> how not necessarily?
01:43:29 <pikhq> A simple dc is merely a push-down automaton.
01:43:56 <bsmntbombdood> no
01:45:46 <bsmntbombdood> dc as defined in dc(1) all the way back in 1965
01:45:52 <pikhq> Ah.
01:46:42 <pikhq> Could you find said man page?
01:47:09 <bsmntbombdood> http://plan9.bell-labs.com/7thEdMan/vol2/dc
01:50:25 <SimonRC> zzzzzzzz
02:02:53 <GregorR> Clearly SimonRC is BORED by dc.
02:02:55 <GregorR> What a jerk.
02:03:51 <bsmntbombdood> bored by dc??!??!
02:03:58 <bsmntbombdood> dc is like my favorite language ever
02:37:52 <lament> i always got confused about why there's both dc and bc
02:37:56 <lament> and as a result, learned neither.
02:43:42 -!- puzzlet has quit (Client Quit).
02:51:38 -!- puzzlet has joined.
02:52:08 -!- puzzlet has quit (Client Quit).
02:58:32 -!- puzzlet has joined.
03:02:44 -!- puzzlet has quit (Client Quit).
03:04:09 -!- puzzlet has joined.
03:17:37 <pikhq> lament: Traditionally, dc was an RPN calculator, and bc was an infix frontend for the same.
03:17:40 <bsmntbombdood> lament dc belongs in #esoteric, bc not
03:17:55 <pikhq> In GNU, they're just different programs in coreutils.
03:18:04 <bsmntbombdood> bc compiles to dc
03:18:17 <pikhq> bsmntbombdood: GNU's implementation doesn't.
03:18:39 <bsmntbombdood> bc also has silly things like functions, variables, and structured loops
03:19:07 <pikhq> "It is not implemented in the traditional way using 'dc'." -- bc.info
03:19:14 <bsmntbombdood> ok
03:19:28 <pikhq> . . . It has a bytecode compiler?!?
03:19:41 <pikhq> Seems a bit overdone for a comparatively simple program.
03:20:19 <bsmntbombdood> openbsd's bc is written in yacc
03:20:31 <pikhq> A whole compiler can't be done in Yacc.
03:21:13 <bsmntbombdood> depends where you think yacc ends
03:21:15 <pikhq> Although it may *use* Yacc to parse, as I imagine GNU bc does. . .
03:21:23 <pikhq> The moment you start using stuff in Flex. ;)
03:21:47 <bsmntbombdood> openbsd bc uses lex too
03:22:32 <bsmntbombdood> but lex is pretty insignificant compared to yacc
03:23:16 <bsmntbombdood> and yacc can't be used without writing the actions in C, so nothing can be strictly completely written in yacc
03:24:09 <pikhq> And since Yacc is a *parser generator*, even if you could, it'd not actually get any compilation done.
03:24:32 <bsmntbombdood> huh?
03:25:25 <pikhq> Yacc only generates a parser. . .
03:25:52 <pikhq> That's not all that's in a compiler.
03:26:10 <pikhq> You neglect this funny thing called "code generation".
03:26:10 <bsmntbombdood> the parser doesn't need to be sepperate from the code generator
03:26:17 <pikhq> It is with yacc. . .
03:26:21 <bsmntbombdood> no...
03:26:22 <pikhq> (last I checked)
03:27:10 <bsmntbombdood> yacc doesn't make a parse tree for you
03:39:22 * pikhq decides to learn Yacc
03:39:44 <RodgerTheGreat> I don't understand the advantage to yacc at all in comparison with writing the parser by hand- parsing isn't one of the difficult aspects of writing a compiler at all
03:40:29 <RodgerTheGreat> I suppose it could *become* useful with arbitrarily complex grammars, but you'd have something hideous by the time you hit the break even point, I think.
03:41:21 <pikhq> *cough* C *cough*
03:41:31 <RodgerTheGreat> case in point
03:42:08 <bsmntbombdood> parsers are hard
03:42:34 <RodgerTheGreat> what *about* parsers are hard?
03:43:48 <bsmntbombdood> the parsing
03:45:49 <RodgerTheGreat> tokenization is straightforward, relying primarily on defining patterns that determine certain types of tokens and scanning forward, with some minor exceptions for nesting. Building parse trees is basically just error-checking and order of operations.
03:50:19 <RodgerTheGreat> there are a lot of aspects of compiler design and implementation that are really difficult (especially when the language doesn't help), but I really can't find anything in parsing that can hold a candle to the other stuff.
03:53:01 <pikhq> Realise that I wrote a compiler without knowing how to do a parser. ;)
03:54:33 <RodgerTheGreat> pikhq: that's my point exactly- it's more or less trivial
03:55:16 <RodgerTheGreat> if an average hacker can reinvent something without undue difficulty, it's trivial.
03:55:50 <pikhq> RodgerTheGreat: No, I mean "I didn't even do a parser".
03:56:04 <pikhq> My "parser" in PEBBLE is Tcl's source command.
03:56:10 <RodgerTheGreat> lol
03:56:22 <RodgerTheGreat> brilliant
03:56:34 <pikhq> One must admit, it works pretty well.
03:57:45 <pikhq> int c = getchar ();
03:58:00 <pikhq> Out of *immense* curiosity, how could that involve an invalid lvalue?
03:58:46 <RodgerTheGreat> hm
04:05:21 <bsmntbombdood> pikhq: because your compiler is expressing its displeasure at your use of spaces
04:05:56 <RodgerTheGreat> that is an unusual way to apply whitespace to a function call
04:06:28 <pikhq> Sorry; that's the GNU indentation standard; kinda start thinking in it when I start flipping through GNU manuals.
04:06:50 <bsmntbombdood> gnu couldn't possible request spacing like that
04:07:17 <pikhq> http://en.wikipedia.org/wiki/GNU_coding_standards
04:07:19 <RodgerTheGreat> I'm gonna have to side with bsmntbombdood with this one
04:07:57 <RodgerTheGreat> christ, that's like a laundry list of all the coding style points I have distaste for
04:08:22 <bsmntbombdood> the two-space-bracket-two-space thing is annoying
04:08:36 <RodgerTheGreat> spaces-as-tabs, spaces before function parameter blocks, /* oneliner comments like this */
04:09:11 <RodgerTheGreat> bsmntbombdood: yeah- wtf?
04:09:14 <bsmntbombdood> what's wrong with the comments?
04:09:26 <RodgerTheGreat> well, actually, I'll retract that one
04:09:50 <RodgerTheGreat> // comments should always be used for oneliners, but if I recall, ANSI C lacks those.
04:10:09 <bsmntbombdood> you recall correctly
04:10:20 <pikhq> *Modern* ANSI C has it; GNU tries to maintain some level of backwards compatibility with older standards and K&R C.
04:10:35 <bsmntbombdood> C99 has the C++ style i think
04:10:45 <bsmntbombdood> not C89
04:10:48 * pikhq nods
04:11:17 <RodgerTheGreat> but yes, that indentation style causes me great pain.
04:14:43 <bsmntbombdood> http://pastebin.ca/693143 <--- my way
04:16:42 <bsmntbombdood> arrgh, s/while (/while(/ and s/strcmp (/strcmp(/
04:16:57 <RodgerTheGreat> hm
04:18:25 <RodgerTheGreat> different prog, but I think this code represents my coding style pretty well: http://nonlogic.org/dump/text/1189566634.html
04:19:31 <bsmntbombdood> that's not C!111123
04:20:12 <RodgerTheGreat> bitch, bitch, moan, moan
04:22:15 <RodgerTheGreat> all curly-bracket languages are equal when it comes to coding style.
04:54:23 * pikhq has done his first program via Yacc & Flex. . .
05:16:15 <lament> {} {} {} {} {} {} {}
05:16:24 <lament> {} {} {} {} {} {}
05:16:32 <lament> {} {} {} {} {} {}
05:16:42 <lament> ^-- a sample program in a curly-bracket language
05:17:25 -!- poiuy_qwert has quit (Read error: 104 (Connection reset by peer)).
05:20:33 <pikhq> LMAO
05:35:25 -!- fizzie has quit (Read error: 54 (Connection reset by peer)).
07:09:56 -!- sebbu has joined.
07:22:20 -!- pikhq has quit (Read error: 110 (Connection timed out)).
07:29:56 <lament> []{}
07:29:58 <lament> []{}[]
07:30:00 <lament> {}[]
07:30:07 <lament> [][][][][][][]
07:30:10 <lament> [][][][][][]
07:30:11 <lament> [][][][][][][]
07:30:13 <lament> [][][][][][]
07:30:14 <lament> [][][][][][][]
07:30:17 <lament> [][][][][][]
07:30:29 <lament> [][][][][][][]
07:30:33 <lament> pink floyd the wall
07:42:34 -!- pikhq has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:21:50 -!- pikhq has quit (Read error: 104 (Connection reset by peer)).
08:22:37 -!- pikhq has joined.
09:01:43 -!- RedDak has joined.
09:31:22 -!- SEO_DUDE has quit (Remote closed the connection).
09:40:33 -!- SEO_DUDE has joined.
11:24:19 -!- ehird` has joined.
11:25:34 -!- ehird` has quit (Client Quit).
11:41:08 -!- RodgerTheGreat has quit (Read error: 110 (Connection timed out)).
11:47:51 -!- RodgerTheGreat has joined.
11:56:39 -!- ehird`_ has joined.
12:05:48 -!- SEO_DUDE has quit ("using sirc version 2.211").
12:07:16 -!- RodgerTheGreat has quit (Read error: 110 (Connection timed out)).
12:07:42 -!- RodgerTheGreat has joined.
12:08:19 -!- ehird`_ has changed nick to ehird`.
12:13:26 -!- Tritonio has quit (Remote closed the connection).
12:32:53 <SimonRC> lament: w t f
12:35:22 -!- RodgerTheGreat has quit (Read error: 110 (Connection timed out)).
12:41:12 -!- sebbu2 has joined.
12:41:50 <SimonRC> hi
12:48:35 -!- RodgerTheGreat has joined.
12:59:50 -!- sebbu has quit (Connection timed out).
13:01:24 * SimonRC has lunch.
13:10:12 <nooga> erm
13:21:37 -!- pikhq has quit (Read error: 104 (Connection reset by peer)).
13:21:54 -!- pikhq has joined.
13:31:58 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
13:32:43 -!- oklopol has joined.
13:50:21 <oklopol> http://esolangs.org/wiki/BF_instruction_minimalization <<< @ notes, doesn't "; [<,>]@[<.>@]" loop endlessly @ input?
14:19:14 -!- jix has joined.
14:36:57 -!- RedDak has quit (Remote closed the connection).
14:41:01 <nooga> eat clothespins
14:48:41 <ihope> maybe eat clothespins nooga
14:48:49 <ihope> Hmm... huh?
14:51:34 -!- jix has quit (Nick collision from services.).
14:51:45 -!- jix has joined.
15:19:12 -!- SEO_DUDE has joined.
15:19:44 <bsmntbombdood> a nooga is a delicacy in south mongolia
15:20:07 <ihope> Rather like calamari.
15:22:55 <bsmntbombdood> My orders say I'm not supposed to know where I'm taking this boat, so I don't. But one look at you, and I know it's gonna be hot.
15:23:01 <bsmntbombdood> I'm going 75 clicks above the Do Lung bridge.
15:23:06 <bsmntbombdood> That's Cambodia captain.
15:23:12 <bsmntbombdood> That's classified.
15:46:13 <sp3tt> I think the formatting language of my mpd client will be turing complete
15:46:24 <sp3tt> You don't need loops to be turing complete, right?
15:54:19 <oklopol> if you run it on something superturing, it can be loopless
15:55:02 <sp3tt> The interpreter is in python.
15:55:10 <oklopol> then i'd say no
15:55:17 <sp3tt> :/
15:55:24 <sp3tt> It's a stack based language to format playlists, overkill? No
16:07:59 <ihope> I think to be Turing complete, you have to be able to translate any Turing program into that language.
16:09:11 <ihope> I'm not sure just how the resulting program has to act...
16:10:09 <ihope> I think that if the original program halts, you must be able to find that out by running the resulting program, and if the original program halts, you must *not* be able to find that it halts by running the resulting program.
16:10:55 <ihope> I'd like to see a description of this language.
16:29:14 <lament> sp3tt: loops are just something some imperative languages have.
16:29:57 <oklopol> i assumed he meant the concept of looping
16:30:11 <oklopol> and not an actual "while" etc.
16:33:16 <lament> i'm not sure in what sence does lambda calculus have "the concept of looping"
16:33:19 <lament> *sense
16:34:03 <oklopol> through an abstraction the programmer has created...
16:34:18 <oklopol> but i guess that might be a bad term for it.
16:36:10 <lament> i suppose in any language with side effects, you could define an "infinite loop" as something that performs some sequence of actions over and over again infinitely.
16:36:23 <lament> in that sense, you can have infinite loops in unlambda and haskell.
16:37:28 <lament> if your language can't do that, it's definitely not turing-complete.
16:38:37 <oklopol> hmm... so if you made unlambda return v instead everytime you're in an infinite loop, it wouldn't be turing complete?
16:38:52 <oklopol> i mean, theoretically speaking, since that's impossible to know
16:48:45 <bsmntbombdood> theoretically speaking, it's impossible
16:50:19 <SimonRC> oklopol: no, the detection system would be superturing
16:50:39 <oklopol> ...orly
16:50:59 <oklopol> no, BECAUSE the detection system would be superturing?
16:51:03 <oklopol> is that what you meant?
16:51:11 <oklopol> oh
16:51:26 <oklopol> hmm...
16:52:02 <oklopol> indeed, that language would naturally be superturing
16:52:12 <SimonRC> I was responding to "16:38:01 < oklopol> hmm... so if you" .... "it wouldn't be turing complete?"
16:53:22 <oklopol> because lament said, i think, that a language can't be turing complete if it can't loop infinitely
16:53:59 <oklopol> but i guess it can only either be less than tc, or superturing, if it does that
16:54:07 <oklopol> so he was right
17:06:02 * bsmntbombdood builds a halting oracle
17:10:20 <ehird`> 3
17:11:25 <ehird`> sp3tt: mpd client.... commandline? qt?
17:19:14 <bsmntbombdood> baldsfkajsdlkfj!!KE@EN:
17:19:23 <bsmntbombdood> my geography class sucks
17:19:47 <bsmntbombdood> what's a major global problem facing our planet as we move into the 21st ccentury
17:20:17 <g4lt-sb100> humanity, we must kill off all humanity
17:20:35 <bsmntbombdood> oh damn
17:20:41 <bsmntbombdood> that's good
17:20:47 <oklopol> g4lt-sb100 is.
17:25:18 <SimonRC> too many people
17:25:32 <SimonRC> solution: less anthopology, more apthropophagy!
17:25:44 <SimonRC> um
17:26:00 <SimonRC> * anthropology
17:26:15 <bsmntbombdood> i need a reputable source that says that if i'm going to do it
17:28:02 <g4lt-sb100> the population bomb, written in 1968, by Paul Erlich. it states we should resort to cannibalism in like three or four years from now
18:23:50 <ihope> Is there not enough food?
18:24:13 <ihope> How is overpopulation a problem?
18:25:07 <ihope> bsmntbombdood: is that a question for your geography class?
18:36:54 * SimonRC eats dinner.
18:37:01 <ehird`> ihope: what do you mean, how is overpopulation a problem
18:37:23 <ihope> Is it a problem?
18:53:12 -!- GregorR has changed nick to behypercubed.
18:56:55 -!- behypercubed has changed nick to _D6Gregor1RFeZi.
19:41:13 -!- oerjan has joined.
21:13:13 -!- cherez has joined.
21:35:04 -!- SEO_DUDE has quit (Read error: 104 (Connection reset by peer)).
21:49:56 -!- SEO_DUDE has joined.
22:00:12 -!- jix has quit ("CommandQ").
22:08:41 <bsmntbombdood> ihope: yeah
22:10:46 <oerjan> no! that cannot be! no way!
22:10:56 <ihope> So how is it a problem?
22:11:12 <bsmntbombdood> ?
22:20:24 <bsmntbombdood> it's a problem because i have to answer it?
22:21:02 * ihope shrugs
23:00:54 -!- Tritonio has joined.
23:16:25 -!- Tritonio has quit (Read error: 104 (Connection reset by peer)).
23:19:41 -!- Tritonio has joined.
23:21:08 -!- SEO_DUDE has quit (Read error: 104 (Connection reset by peer)).
23:22:09 -!- ihope has quit (Read error: 110 (Connection timed out)).
←2007-09-11 2007-09-12 2007-09-13→ ↑2007 ↑all