←2007-06-02 2007-06-03 2007-06-04→ ↑2007 ↑all
00:12:18 <bsmntbombdood> we got grades today
00:18:16 <Pikhq> HS or college?
00:19:13 <bsmntbombdood> hs
00:20:31 <bsmntbombdood> 2 As, 1 B, 1 C and 2 Ds
00:20:34 <bsmntbombdood> not so great
00:20:51 <Pikhq> I had 4 As, 3 Bs this semester. . .
00:21:40 <bsmntbombdood> overacheiver
00:22:07 <Pikhq> Not really. My GPA's a 3.02. . .
00:24:25 <bsmntbombdood> well, i'm just glad i passed the two classes i got Ds in
00:25:29 <Pikhq> Know the feeling. . .
00:25:58 <bsmntbombdood> spanish and physics
00:26:29 <Pikhq> Wish that I'd done physics instead of chemistry. . .
00:26:43 <Pikhq> Chemistry + me = explosions.
00:26:53 <bsmntbombdood> i'm taking chem next year
00:26:57 <Pikhq> "How the hell did you get a *noble gas* to explode?!?"
00:27:04 <Pikhq> ^ me in a chem lab.
00:27:14 <bsmntbombdood> are you a sophomore?
00:27:26 <Pikhq> Going into my senior year.
00:27:29 <bsmntbombdood> oh
00:27:42 <bsmntbombdood> one year ahead of me then
00:28:25 <Pikhq> Suppose so.
00:51:03 -!- GregorR has quit (Read error: 110 (Connection timed out)).
01:03:40 -!- jix__ has joined.
01:12:11 -!- jix has quit (Read error: 110 (Connection timed out)).
01:13:03 -!- GregorR has joined.
01:14:09 * Pikhq curses very, very loudly at make
01:14:41 <Pikhq> Is it too much to ask for make to follow its documented behavior? *Is it*?
01:15:17 <GregorR> Yes.
01:16:11 <Pikhq> %.b : %.bfm
01:16:19 <Pikhq> *Surely* pfuck.0.b matches that.
01:16:51 * GregorR never uses that syntax.
01:16:58 -!- jix__ has quit ("CommandQ").
01:16:59 <GregorR> .bfm.b:
01:17:26 <Pikhq> Now, try "%: %.c".
01:17:49 <Pikhq> Or "pfuck.%:pfuck.%.c"; for my purposes, they're equivalent.
01:17:52 <GregorR> WTF? Is that "convert a .c file into anything"?
01:17:58 <GregorR> Ahhhhhhh
01:18:03 <Pikhq> Convert a c file into an executable.
01:18:13 <Pikhq> (obviously not portable. ;))
01:20:29 <Pikhq> http://pikhq.nonlogic.org/Makefile
01:20:40 <Pikhq> Care to tell me how I'm being an idiot?
01:21:00 <bsmntbombdood> that was a tasty sammich
01:23:56 <Pikhq> . . . Found it.
01:24:34 <Pikhq> I have a file called "pfuck.bfm", not "pfuck.0.bfm" and "pfuck.-1.bfm". . .
01:30:06 <GregorR> lawl
01:37:52 <bsmntbombdood> ,
02:45:26 -!- oerjan has joined.
03:18:05 -!- mbishop has joined.
03:18:28 -!- mbishop has left (?).
03:43:43 -!- boily has joined.
03:44:01 <oerjan> hi boily
03:44:07 <boily> hi
03:44:41 <boily> i had some hours to spend today, so i created a new programming language
03:45:00 <boily> i'm not sure if i have developped it enough to add it to the wiki
03:47:03 <oerjan> well the languages on the wiki are pretty variable
03:48:13 <boily> i pasted a ruby interpreter on pastebin and i'm adding the article
03:48:17 <oerjan> if you have an implementation, or enough information that someone could make one, then i say go for it
03:48:59 <oerjan> ok
03:50:45 <boily> http://esoteric.voxelperfect.net/wiki/Betterave
03:50:52 <boily> there, i just created it
03:56:28 <oerjan> a syntax and list of commands would be nice
03:59:42 <oerjan> afk
04:01:23 <boily> currently doing it
04:05:28 <boily> did it
04:05:44 <boily> hope my english isn't too bad... :/
04:11:06 <Pikhq> Not Turing-complete.
04:11:29 <Pikhq> . . . Unless the size of each variable is unlimited or something.
04:11:51 <Pikhq> . . . Or. . .
04:12:00 <Pikhq> String *list*?
04:12:10 <Pikhq> So, infinite number of strings can be stored?
04:12:48 <boily> as i coded it, i guess an infinite number of strings is possible
04:13:24 <Pikhq> Mmkay, so it is Turing complete.
04:13:31 <boily> yay!
04:13:40 <Pikhq> Although it'd be damned annoying to prove it.
04:37:21 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
04:38:17 -!- Sgeo has joined.
04:38:46 -!- boily has quit ("Need sleep...").
05:11:34 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
05:13:04 <oerjan> unlimited variables are probably turing-complete (minsky machines seem easy to emulate)
05:13:31 <oerjan> but the string list is not very useful without a way to use it for further computation.
05:13:42 <Pikhq> And, even if the *variables* aren't unlimited, you can store at least one number via the size of strings. . .
05:14:14 <Pikhq> So, """""""" would store 4. . .
05:14:38 <Pikhq> [""|1] would be an infinite loop, adding to the size. . .
05:14:54 <oerjan> i don't think so. how do you get the size of the list other than as an integer? and there is no way to shorten it.
05:15:17 <Pikhq> . . . Yeah, that is a problem.
05:15:32 <oerjan> in fact you would have a problem once the string list length exceeds the integer size.
05:15:46 <Pikhq> Assuming that integers are bounded.
05:16:04 <oerjan> and if they aren't you don't need the string list other than for output.
05:16:11 <Pikhq> Right. . .
06:38:06 <bsmntbombdood> i wonder if you could have an algorithm that has a runtime of some uncomputable function
06:39:02 <oerjan> not if it always halts.
06:39:47 <oerjan> because then you could simply run it to find out the runtime.
06:40:12 <bsmntbombdood> but
06:40:58 <oerjan> on the other hand the runtime of most ordinary turing-complete interpreters _is_ uncomputable.
06:41:51 <oerjan> because otherwise their halting problem would be solvable by computing the runtime first, then running the algorithm for that long.
06:42:49 <oerjan> er, assuming the computed runtime only works if it actually halts.
06:43:36 <oerjan> as with a busy beaver function
07:54:40 -!- oerjan has quit (Read error: 104 (Connection reset by peer)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:03:54 -!- glenker_ has joined.
08:04:10 -!- glenker_ has quit (Client Quit).
08:04:50 -!- glenker_ has joined.
08:11:56 -!- glenker_ has quit ("WeeChat 0.2.4").
08:29:59 -!- lament has joined.
09:17:15 -!- sebbu has joined.
11:47:31 -!- jix has joined.
13:02:31 -!- jix__ has joined.
13:12:06 -!- jix has quit (Read error: 110 (Connection timed out)).
13:48:24 -!- jix__ has changed nick to jix.
15:01:00 <SimonRC> In Britain, we are graded for exams on the scale: A, B, C, D, F, N, U.
15:03:14 <SimonRC> A-D as usual, F = really bad, U = so bad they didn't even want to grade you, and N = didn't turn up.
16:15:25 <puzzlet_> didn't turn up?
16:17:30 <puzzlet_> what does it mean
16:29:09 <SimonRC> erm, exactly what it says?
16:29:15 <SimonRC> the scale is for exams
16:34:50 <puzzlet_> no, didn't get what "turn up" means
16:35:21 <puzzlet_> as a non-native English user
16:48:28 * SimonRC tries to think of a synonym
16:50:57 <SimonRC> "attend"
16:51:18 <puzzlet_> ah
16:51:47 <puzzlet_> N is for who didn't get the exam at all?
16:52:22 <SimonRC> yes
17:36:32 -!- boily has joined.
17:44:49 -!- boily has quit ("WeeChat 0.2.4").
18:06:35 -!- Sgeo has joined.
18:11:58 -!- sebbu2 has joined.
18:20:36 <oklopol> what is a makefile?
18:20:56 <oklopol> (i prefer annoying people over google :))
18:30:17 -!- sebbu has quit (Connection timed out).
18:43:16 -!- ehird` has joined.
18:44:05 -!- helios24 has quit (Remote closed the connection).
18:44:10 -!- helios24 has joined.
18:48:11 -!- sebbu2 has changed nick to sebbu.
19:08:39 <SimonRC> oklopol: it is a file that is (usually) required by the *nix program make(1).
19:10:20 <oklopol> hmm... tells the os how to compile the source, like, or=
19:10:21 <oklopol> ?
19:15:46 <GregorR> There's a program called or= that tells the OS how to compile the source?
19:16:36 <oklopol> you don't know it?
19:16:55 <oklopol> well, anyway, you don't have to know it to answer my question
19:37:58 <bsmntbombdood> or=?
19:40:10 <ehird`> a Makefile is a set of rules:
19:40:19 <ehird`> DEST: SRCS
19:40:19 <ehird`> <tab>COMMANDS
19:40:28 <ehird`> "This is how you create DEST, using SRCS: COMMANDS"
19:40:39 <ehird`> make(1) just happens to use SRCS for intelligent dependency handling
19:40:42 <oklopol> so, what i said?
19:40:53 <ehird`> basically. yes.
19:41:08 -!- lament has quit (kubrick.freenode.net irc.freenode.net).
19:43:24 -!- lament has joined.
19:43:26 <oklopol> is bash tc?
19:43:46 <ehird`> um, yes
19:43:51 <ehird`> well
19:43:53 <ehird`> not sure about bash
19:43:57 <ehird`> zsh is, for certain
19:44:07 <ehird`> i assume you mean "tc without anything but builtins"
19:44:14 <bsmntbombdood> http://maps.google.com/maps?f=l&hl=en&q=museum&near=San+Francisco,+California,+United+States&ie=UTF8&view=map&om=1&layer=c&cbll=37.777452,-122.504927&cbp=1,289.875024308419,0.628713401659621,3&ll=37.784554,-122.500091&spn=0.023674,0.040169&z=15
19:44:32 -!- lament_ has joined.
19:45:30 -!- lament has quit (Remote closed the connection).
19:46:27 <oklopol> ehird`: you assume very correct.
19:48:44 <ehird`> then, i'd say yes
19:49:04 <ehird`> if/while/test/recursing functions/arrays... it's like a normal prog. language
19:49:14 <ehird`> ``Actually I meant what I said, bash is a turing complete language.''
19:49:19 <ehird`> http://lists.ibiblio.org/pipermail/sm-users/2005-December/000902.html
19:49:25 <lament_> of course bash is turing-complete
19:49:57 <lament_> indeed it's pretty powerful and expressive
19:49:59 <bsmntbombdood> of course bash is turing complete
19:50:06 <bsmntbombdood> bash is very usefull
19:50:23 <oklopol> i haven't used it
19:50:33 <oklopol> so i wasn't sure
19:50:36 <oklopol> is dos tc?
19:50:38 <oklopol> :P
19:50:58 <ehird`> proof: a language with two characters, iota, * and i, is turing complete. it is laughably simple to implement (a few lines). you can implement it easily in bash. QED
19:51:17 <lament_> oklopol: batch files you mean? I'm not sure
19:51:29 <lament_> _they_ might actually not be
19:51:45 <lament_> in their modern form, they probably are; in the original, they might well not be
19:52:00 <lament_> i don't think you could access unlimited memory with them
20:04:22 <Pikhq> lament_: It depends upon which DOS system you're referring to.
20:04:45 <Pikhq> FreeDOS, for example, absolutely is.
20:11:05 <ehird`> ``...SQL is not a programming language because it is for instance impossible to write an infinite loop in it.''
20:11:42 <SimonRC> ooh, activity
20:11:57 <oklopol> you mother
20:12:00 <bsmntbombdood> it doesn't have to be turing complete to be a programming language
20:12:00 <oklopol> *your
20:12:01 <oklopol> ...
20:12:21 <ehird`> bsmntbombdood: it was a quote
20:12:23 <ehird`> a silyl quote
20:12:25 <ehird`> *silly
20:12:29 <Pikhq> SQL is, obviously, a non-Turing complete, domain specific programming language. . .
20:13:17 <bsmntbombdood> ehird`: hence the quote marks?
20:15:33 -!- tokigun has joined.
20:18:58 <SimonRC> tokigun: hi
20:19:06 <tokigun> hello
20:39:43 -!- Pikhq has quit ("Leaving.").
20:42:19 -!- Pikhq has joined.
20:52:37 <lament_> the problem with accepting non-TC languages as such is that, where do you stop?
20:52:59 <lament_> is html a programming language? Are text files a programming language?
20:53:22 <bsmntbombdood> yeah
20:53:27 <ehird`> meh
20:53:54 <oklopol> you can define it using humans in the definition
20:54:03 <oklopol> because that's how it's usually done
20:54:07 <oklopol> the defining
20:54:16 <lament_> HTML is a bit of a corner case, since some people actually do call it a programming language, and some vehemently deny it is.
20:54:26 <oklopol> hence, my argument
20:54:45 <lament_> er, no, this is a counter-example to your argument :)
20:54:58 <lament_> since there's no consistent definition
20:55:27 <bsmntbombdood> i've had that argument before
20:55:29 <bsmntbombdood> about html
20:56:39 <lament_> personally i'm fine defining it either way
20:56:52 <lament_> as long as it's done according to some consistent procedure :)
20:56:53 <Pikhq> A programming language should be a language expressing a set of logic for a computer to follow.
20:57:05 <bsmntbombdood> Pikhq: which html is
20:57:10 <lament_> Pikhq: that's pretty meaningless.
20:57:24 <SimonRC> The problem comes when people count writing HTML as "programming experience".
20:57:33 <bsmntbombdood> which is bullshit
20:57:52 <SimonRC> well.....
20:57:55 <bsmntbombdood> you just can't win
20:58:04 <SimonRC> it is a very tiny amount of programming experience
20:58:33 <Pikhq> But merely knowing algebra provides more experience. :p
20:58:44 <oklopol> Pikhq: i meant it perhaps need not be an unambiguous definition
20:58:56 <oklopol> though i did not really say that.
20:58:57 <SimonRC> OTOH, HTML has a very high "language level", so if it is suitable for a task, it will blow almost everything else out of the water.
20:58:59 <Pikhq> oklopol: Hmm. . . That does make sense.
20:59:21 <oklopol> wow, i rarely hear that :)
20:59:46 <oklopol> now, fixing my documentation... ->
20:59:51 <Pikhq> HTML isn't much of a programming language. . . It says in the name "Markup language". ;)
21:00:27 <Pikhq> Now, I'd call something like *LaTeX* a corner case. . .
21:00:30 <lament_> 'languge' stands for 'programming language', just as in many other acronyms.
21:00:35 <lament_> *'language'
21:00:50 <bsmntbombdood> latex is turing complete bro
21:00:50 <SimonRC> TeX *is* TC....
21:00:54 <Pikhq> Sure, it's a markup language. . . But it's got a Brainfuck interpreter written in it (I don't remember where)
21:01:16 <lament_> i think we all agree that being TC implies being a programming language
21:01:21 <SimonRC> also, there's that XML re-jiggeriser that is TC too.
21:01:23 <Pikhq> Of course.
21:01:29 <Pikhq> SimonRC: That's just one XML namespace.
21:01:30 <SimonRC> quite an FP language IIRC
21:01:31 <lament_> why "of course"?
21:01:47 <lament_> one possible way to define what is and what isn't a programming language is according to purpose
21:01:58 <SimonRC> ahh....
21:01:59 <lament_> by agreeing that TC languages are necessarily programming languages, we reject that wa.
21:02:02 <lament_> that way.
21:02:08 <Pikhq> Then surely Visual Basic isn't a programming language.
21:02:10 <SimonRC> I just had another thought...
21:02:21 <Pikhq> . . . You know, I think I like a definition which excludes Visual Basic. :p
21:02:26 <SimonRC> :-)
21:02:54 <SimonRC> Just because you can do programming in something doesn't make it sensible to call it a programming language...
21:02:54 <lament_> if we say "if it's TC, then it's a programming language", then we're defining based on _capability_
21:03:15 <SimonRC> in the same way that just because you can do OO in something doesn't make it sensible to call it an OO language.
21:03:26 <lament_> that is correct
21:03:27 <SimonRC> OO ASM probably works very well.
21:03:39 <lament_> but if you start rejecting TC things as programming languages, people will rebel.
21:04:05 <Pikhq> SimonRC: The problem is that OO is not a primitive feature of the language itself, it's an addon.
21:04:06 <SimonRC> you can do FP in C# 3.0, but that doesn't make it an FPL, because FP in it is unidiomatic and clunky.
21:04:28 <SimonRC> maybe it is to do with idiomaticity rather than possibility
21:04:32 <Pikhq> If you want to define things that way, HTML is Turing-complete, because you can strap ECMAscript into it.
21:05:26 <lament_> i think we can all be sane enough to consider javascript as separate from html proper.
21:05:38 <Pikhq> I'd *hope* so.
21:05:56 <SimonRC> You could make a Python "Hello World" program along the lines of the typical Java version, but that is unidiomatic. The normal way in Python is a single printing statement, because Python is a "scripting language".
21:06:27 <bsmntbombdood> java is yucky
21:06:31 <Pikhq> The normal way in *many* languages is a single print statement. . .
21:06:40 <lament_> SimonRC: sure
21:06:43 <lament_> SimonRC: this is also why perl sucks
21:06:44 <Pikhq> Even *assembly* has a simpler "Hello, world" program than Java. . .
21:06:49 <SimonRC> heh
21:07:00 <SimonRC> but it is less portable!
21:07:03 <lament_> perl can do a lot of stuff, is very powerful, and it's certainly possible to write clean code in it.
21:07:10 <lament_> Just not idiomatic.
21:07:18 <SimonRC> Also, what if the program later needs to be expanded to read mail?
21:07:23 <Pikhq> hello: .asciz "Hello, world!\n"
21:07:24 <Pikhq> main: push $hello
21:07:24 <Pikhq> call puts
21:07:44 <Pikhq> SimonRC: Then obviously you should take the GNU Hello route.
21:07:54 <lament_> fortunately, we don't normally judge the power of languages by how easy it is to write hello world in them.
21:08:17 <SimonRC> yes
21:08:30 <lament_> java was never meant for writing hello world.
21:08:34 <SimonRC> I realise my earlier statement was in fact totally pointless and confusing
21:08:49 <bsmntbombdood> Pikhq: using libc is not allowed
21:09:03 <Pikhq> bsmntbombdood: Fine; just reduces the portability.
21:09:18 <lament_> (and if you argue that 'hello world' should necessarily be an easy program in every useful language, then you're just on crack)
21:09:22 <bsmntbombdood> you have to use sys_write
21:09:33 <Pikhq> http://pikhq.nonlogic.org/hello.asm This is, of course, what you want.
21:10:05 <ehird`> defending java is forbidden
21:10:07 <ehird`> that is final! :)
21:10:08 <bsmntbombdood> i assume sys call 4 is write
21:10:25 <Pikhq> On Linux, at least.
21:10:56 <bsmntbombdood> don't you have to put 0 somewhere for stdout?
21:11:33 <Pikhq> On kernels newer than a certain version of 2.2, the registers default to being 0.
21:11:42 <Pikhq> Well, that is, on process creation.
21:11:46 <bsmntbombdood> oh
21:12:07 <Pikhq> Not at *all* portable, but it 'works'. ;)
21:12:48 <bsmntbombdood> and ebx is 1?
21:13:59 <Pikhq> Yup.
21:14:06 <bsmntbombdood> what for?
21:14:46 <Pikhq> stdout == 1
21:14:55 <bsmntbombdood> oh
21:15:06 <Pikhq> And syswrite takes the stream to write to as the first argument.
21:23:28 -!- GregorR has quit (Success).
21:43:26 -!- ehird` has quit.
21:47:20 -!- jix has quit ("CommandQ").
21:51:47 -!- lament_ has changed nick to lament.
22:04:47 -!- GregorR has joined.
23:33:25 -!- sebbu has quit ("@+").
←2007-06-02 2007-06-03 2007-06-04→ ↑2007 ↑all