00:20:51 <Pikhq> I had 4 As, 3 Bs this semester. . .
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:26:29 <Pikhq> Wish that I'd done physics instead of chemistry. . .
00:26:43 <Pikhq> Chemistry + me = explosions.
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:26 <Pikhq> Going into my senior year.
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:16:19 <Pikhq> *Surely* pfuck.0.b matches that.
01:16:58 -!- jix__ has quit ("CommandQ").
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: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:24:34 <Pikhq> I have a file called "pfuck.bfm", not "pfuck.0.bfm" and "pfuck.-1.bfm". . .
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: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: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
04:01:23 <boily> currently doing 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: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: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.
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: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:29:09 <SimonRC> erm, exactly what it says?
16:34:50 <puzzlet_> no, didn't get what "turn up" means
16:48:28 * SimonRC tries to think of a synonym
16:51:47 <puzzlet_> N is for who didn't get the exam at all?
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: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:15:46 <GregorR> There's a program called or= that tells the OS how to compile the source?
19:16:55 <oklopol> well, anyway, you don't have to know it to answer my question
19:40:10 <ehird`> a Makefile is a set of rules:
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:41:08 -!- lament has quit (kubrick.freenode.net irc.freenode.net).
19:43:24 -!- lament has joined.
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: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: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:12:00 <bsmntbombdood> it doesn't have to be turing complete to be a programming language
20:12:21 <ehird`> bsmntbombdood: it was a quote
20:12:29 <Pikhq> SQL is, obviously, a non-Turing complete, domain specific programming language. . .
20:15:33 -!- tokigun has joined.
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: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: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:45 <lament_> er, no, this is a counter-example to your argument :)
20:54:58 <lament_> since there's no consistent definition
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:10 <lament_> Pikhq: that's pretty meaningless.
20:57:24 <SimonRC> The problem comes when people count writing HTML as "programming experience".
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: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:29 <Pikhq> SimonRC: That's just one XML namespace.
21:01:47 <lament_> one possible way to define what is and what isn't a programming language is according to purpose
21:01:59 <lament_> by agreeing that TC languages are necessarily programming languages, we reject that wa.
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: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: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: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:31 <Pikhq> The normal way in *many* languages is a single print statement. . .
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: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: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: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: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: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: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:25 <Pikhq> On Linux, at least.
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:12:07 <Pikhq> Not at *all* portable, but it 'works'. ;)
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 ("@+").