←2006-11-06 2006-11-07 2006-11-08→ ↑2006 ↑all
00:01:27 -!- cmeme has joined.
00:01:27 -!- tokigun has joined.
00:01:27 -!- CakeProphet has joined.
00:01:27 -!- GregorR-L has joined.
00:01:27 -!- pikhq has joined.
00:01:27 -!- meatmanek has joined.
00:01:27 -!- rt has joined.
00:01:27 -!- RodgerTheGreat has joined.
00:01:28 -!- fizzie has joined.
00:01:28 -!- sp3tt has joined.
00:01:28 -!- SimonRC has joined.
00:01:28 <Razor-X> GregorR: Well, that's one of Lisp's double-edged swords.
00:01:28 <Razor-X> The whole point is that, Lisp allows you to create abstractions specific to your problem. Now where that leads you is up to debate.
00:01:28 <Razor-X> Paul Graham, though, will argue for Lisp I'm pretty darn sure :D
02:25:37 -!- clog has joined.
02:25:37 -!- clog has joined.
02:34:25 <Sgeo> Hi clog
02:40:12 -!- oerjan has quit ("Later").
02:44:29 -!- ivan` has joined.
02:44:57 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
02:48:04 -!- Sgeo has joined.
02:58:42 <Razor-X> I've never been to a class about programming.
02:58:52 <Razor-X> So I don't know how awful/good they are on the whole.
02:59:07 <xor_> They are terrible
02:59:20 <GregorR-L> Depends on who you are.
02:59:23 <xor_> hackers are usually free-learners
02:59:26 <xor_> at least I am
02:59:51 <Razor-X> Probably.
02:59:59 <Razor-X> Classes make things more boring on the whole.
03:00:04 <xor_> yep
03:00:05 <Razor-X> (For me.)
03:01:52 <Razor-X> Programming is one of those things, IMO, that are learned best in a loose master-apprentice fashion.
03:02:21 <xor_> I don't think so
03:02:24 <Razor-X> From chatting with different programmers, the mental devices (especially the ``homegrown'' ones) programmers use to code are so varied, a class just doesen't cut it on its own.
03:02:35 <xor_> Then you go to your "master" whenever you have a problem
03:02:47 <Razor-X> The master guides and challenges through interesting assignments, until the apprentice is strong enough to leave.
03:03:18 <xor_> Straight out of star wars ;)
03:03:32 <Razor-X> Really? :P
03:03:44 <Razor-X> Didn't see it until you said that, heh.
03:08:30 <Razor-X> In fact, I think that would be an interesting project in general. Create a wiki panel with a bunch of programmers that can program in different languages giving out assignments at different difficulty levels, and whenever one of us has the time, we can look over the wiki submitted entries, so it doesen't force anyone to a schedule.
03:09:29 <xor_> hmm
03:11:03 <Razor-X> And it's just a shame so few people use BASIC-derivatives nowadays. It's horrible.
03:11:21 <xor_> noooo
03:11:28 <Razor-X> I wonder how many of us grew up with a BASIC of some sort on some device (C64 BASIC, QBASIC, Apple BASIC, etc.)
03:11:32 <xor_> Why should anyone code in basic?
03:11:45 <Razor-X> It's... well basic.
03:11:53 <Razor-X> A basic language that can be pretty powerful too.
03:12:11 <xor_> sure
03:12:20 <xor_> ...but not BASIC
03:12:27 <Razor-X> BASIC-derivative.
03:12:41 <Razor-X> I'm not talking about 10 PRINT 20 GOTO style either.
03:18:04 <rt> when i was a younger, everybody said that basic was terrible, and would ruin young programmers. now, we have programmers learning perl and php as first languages. i'm pretty sure that isn't an improvement.
03:18:21 <Razor-X> Perl as a first language? Ugggh.
03:18:30 <Razor-X> PHP is pretty uggh too.
03:18:37 <Razor-X> Even Python is a sort of a experiment in marriage.
03:19:05 <rt> i find python to be at least relatively undamaging.
03:19:14 <Razor-X> True.
03:19:45 <Razor-X> Young programmers nowadays learn Java like little robots and never learn anything else again, because they make a series of mundane projects that never actually need something powerfully abstractable or something low-level.
03:20:03 <xor_> Java is so terrible
03:20:05 <lament> experiment in marriage?
03:20:12 <RodgerTheGreat> I really think BASIC *is* a good beginner's language, if only because it's imperative.
03:20:14 <lament> your face is an experiment in marriage!
03:20:24 <Razor-X> That it may be.
03:20:24 <Razor-X> ;P
03:20:28 <rt> if there is some reason that might make java the most reasonable choice for a program, i haven't discovered it yet.
03:20:31 <Razor-X> Java, IMO, is alright.
03:20:38 <Razor-X> C# is better, even if it's Microsoft based.
03:20:39 <xor_> RodgerTheGreat: Why not a more moderm imperative language?
03:20:44 -!- GreaseMonkey has joined.
03:21:01 <rt> i actually think python makes a good choice for the role that basic used to fill.
03:21:04 <GreaseMonkey> ++++H
03:21:18 <lament> i'm not sure what's wrong with basic.
03:21:19 <GreaseMonkey> me = thematrixeatsyou
03:21:24 <Razor-X> Neither am I.
03:21:30 <lament> it's a horrible language, but i don't see how it causes brain damage.
03:21:34 <RodgerTheGreat> BASIC has evolved over the years, and I'm not talking about Blitz or VB.
03:21:37 <rt> weak abstractions. weak data types.
03:21:46 <Razor-X> C has strong abstractions and strong data types?
03:21:47 <lament> ie, it's horrible but anybody sane will realize that it's horrible and move on.
03:21:48 <Razor-X> HAH.
03:21:54 <GreaseMonkey> well, c++ causes brain damage in the way that it makes skiddies think they're 1337
03:22:00 <xor_> basic isn't going to be usefull
03:22:04 <RodgerTheGreat> it has some overhead issues, but DarkBASIC pro kicks ass
03:22:04 <rt> no, but c at least has the advantage of being reasonably efficient.
03:22:12 <rt> c++ is of course abominable.
03:22:14 <GreaseMonkey> FreeBASIC is still good
03:22:17 <Razor-X> C++. Ewww.
03:22:21 <RodgerTheGreat> about 5 years ago, it was my primary language
03:22:24 <GreaseMonkey> i like C
03:22:30 <xor_> I like C too
03:22:36 <GregorR-L> I like C three
03:22:50 <Razor-X> I don't mind C nine.
03:23:11 <GregorR-L> But C ten is RIGHT OUT
03:23:11 <GreaseMonkey> I like C %i.
03:23:21 * Sgeo was pushed into ##please_register
03:23:24 <Sgeo> I tried to talk
03:23:25 <Razor-X> Look up the ASCII code yerself, bum.
03:23:27 <Sgeo> Didn't work
03:24:07 <Razor-X> Why is BASIC so ineffecient?
03:24:25 <Razor-X> I mean, any language that has weak data types/abstractions should be easy to optimize.
03:24:48 <GreaseMonkey> they probably have a delay on them
03:24:53 <GreaseMonkey> jk
03:25:03 <GreaseMonkey> maybe you're thinking of QBASIC?
03:25:08 <rt> well, i must admit, i'm an old timer, and used basic back in the days when relatively trivial interpreters were the norm.
03:25:12 <GreaseMonkey> QBASIC emulates the BASIC code
03:25:22 <GreaseMonkey> FreeBASIC is pretty fast though
03:25:30 <GreaseMonkey> it compiles the code
03:25:32 <Razor-X> I'm not so sure how fast more modern BASICs are.
03:25:38 <Razor-X> But I would think it fast.
03:25:47 <xor_> My first language was QBASIC, and I learned it by purley coding in it
03:25:49 <Razor-X> Since I bet a lot of it can be done as ASM.
03:25:54 <xor_> no syntax help or nothin
03:26:27 <rt> any language complicated enough to require syntax helpers is just too wrong.
03:26:44 <Razor-X> *COUGH* C++ *COUGH*
03:26:48 <xor_> What's a syntax helper?
03:26:57 <RodgerTheGreat> most modern BASIC implementations aren't slowed down because they're BASIC, rather because of all the cool features (3D, etc) that are new
03:27:00 <GreaseMonkey> i salute you
03:27:01 <GreaseMonkey> <Razor-X> *COUGH* C++ *COUGH*
03:27:24 <RodgerTheGreat> and because of this, for making things like games, BASIC is plenty fast- all the grunt work is handled by the interpreter
03:27:38 <Razor-X> Why *is* BASIC even interpreted nowadays?
03:27:51 <GreaseMonkey> Microsoft's endorsement on VB
03:27:58 <Razor-X> True.
03:28:10 <RodgerTheGreat> DarkBASIC pro is a compiled language
03:28:28 <RodgerTheGreat> and DB proper compiles to bytecode and is tacked onto a runtime module
03:28:49 <Razor-X> Better than interpretation.
03:29:14 <Razor-X> I've done only a little Pascal, and this was years back. How's that on the difficulty curve? It struck me as really similar to C.
03:29:18 <RodgerTheGreat> I don't know much about blitzBASIC aside from the fact that it shouldn't be called BASIC at all...
03:29:32 <Razor-X> BlitzBASIC abstracts *way* too many things.
03:30:28 <GreaseMonkey> wtf is my 2d game doing using OGL?!
03:30:53 <Razor-X> Heh.
03:31:04 <Razor-X> Hey. Scala doesen't look too bad.
03:31:08 <RodgerTheGreat> BlitzBASIC looks like the bastard child of Java and C- it has nothing in common with BASIC.
03:31:43 <RodgerTheGreat> it uses curly brackets, predefined hard-typing, .-notation function chaining...
03:31:48 <RodgerTheGreat> it just makes me angry.
03:32:31 <xor_> I remember when I was coding in qbasic and I discovered strings
03:32:45 <xor_> It was amazing
03:33:08 <Razor-X> C- ?
03:33:17 <xor_> ?
03:33:27 <RodgerTheGreat> it was a C and a dash
03:33:32 <Razor-X> Ah.
03:33:40 <Razor-X> Don't whet our appetites like that :P
03:33:45 <RodgerTheGreat> I wasn't implying that there's a language called Cminus
03:33:55 <RodgerTheGreat> ... but I could spec it...
03:34:17 <RodgerTheGreat> :D
03:35:43 <GreaseMonkey> "We use Linux to UP our productivity -- so UP yours!"
03:36:09 <RodgerTheGreat> heh
03:36:13 <xor_> Linux can calculate an infinite loop in 7 seconds
03:36:47 <xor_> !bf +[]
03:36:54 <RodgerTheGreat> interesting
03:41:33 <Razor-X> One thing before I start homework:
03:41:44 <Razor-X> Paul Graham always makes Lisp seem like the best language in the world.
03:41:58 <GreaseMonkey> :D
03:42:03 <Razor-X> So if you want to know why Lisp is good, read one of his essays, and take that as a fundamentalist's overexaggeration.
04:20:24 <lament> you know what's a good programming language?
04:20:39 <lament> there aren't any!
04:20:51 <xor_> Nobody's happy
04:20:53 <GreaseMonkey> what's wrong with c then?
04:21:10 <lament> well.
04:21:14 <xor_> Each programming language just isn't good for everything
04:21:21 <lament> GreaseMonkey: pretty much everything.
04:21:29 <lament> GreaseMonkey: i can think of very very few tasks i would use C for.
04:21:37 <xor_> except everything
04:21:57 -!- GregorR-L has quit ("Leaving").
04:22:17 <lament> GreaseMonkey: the main thing is the lack of a good way to build abstractions.
04:22:30 <lament> the other main thing is no bounds checking for arrays.
04:22:58 <xor_> do that yourself
04:23:11 <GreaseMonkey> well, C has printf().
04:23:25 <GreaseMonkey> and it's also got a loose syntax, like:
04:23:25 <xor_> arrays in C aren't like a list, they are just a way to access memory
04:23:43 <GreaseMonkey> you build your own funct if you want arrays
04:23:56 <lament> xor_: sure, this would be fine if you COULD build lists in a sane fashion.
04:24:02 <xor_> You can
04:24:07 <lament> xor_: but as i said, the lack of a good way to build abstractions in the main thing.
04:24:09 <pikhq> They're a thin abstraction around what amounts to statically allocated memory.
04:24:25 <lament> xor_: no, i'm afraid you can't, not in my experience.
04:24:40 <xor_> Just have the first element be the length
04:24:51 <lament> xor_: that's not an "abstraction"
04:25:02 <xor_> I don't know what you mean by that
04:25:02 <pikhq> C would be nice if it had a nicer way to define datatypes.
04:25:06 <lament> xor_: that's an "implementation" but there's no abstraction involved.
04:25:16 * pikhq likes the C++ way at the moment
04:25:40 <xor_> So "abstraction"==hiding the implementation?
04:25:45 <lament> xor_: pretty much.
04:25:51 <xor_> point taken
04:26:14 <lament> in effect, you want a new language feature, lists.
04:26:29 <lament> in something like Lisp, when you don't have a language feature, you can add it seamlessly.
04:26:37 <lament> in something like Python or Java you can sort of do it with objects.
04:26:50 <lament> in something like C, you can barely do it at all.
04:26:56 <xor_> do it oop style
04:27:13 <lament> I'm not saying Lisp is the best for programming, but it does have the most powerful abstraction mechanisms (that i'm aware of)
04:27:27 <xor_> There is nothing to add on to in lisp
04:27:38 <lament> oh, there's always something to add on.
04:27:49 <xor_> I mean, of course it's seamless
04:28:19 <lament> consider math notation
04:28:32 <lament> you have symbols that stand for objects and symbols that stand for operations
04:28:42 <lament> and when you don't have something, you simply define more notation
04:28:55 <xor_> yeah
04:29:03 <xor_> and in lisp, everything is notation
04:29:25 <lament> not sure what you mean by that. "notation" is just a synonym for "syntax"
04:29:46 <lament> in every language, everything is notation
04:29:47 <xor_> Lisp has almost no syntax
04:29:52 <lament> that's true.
04:30:02 <xor_> There Is only one operator in lisp
04:30:06 <xor_> well, sorta
04:30:16 <lament> that's not quite true, but it certainly looks that way.
04:30:22 <lament> but you could also say that about math notation:
04:30:30 <lament> "In math notation, there's only one operator, whitespace"
04:30:42 <lament> "everything else is operands"
04:31:20 <pikhq> Lisp comes damned near pre-parsed.
04:31:32 <lament> "1 + 2" -> whitespace is a very smart operator that takes 1,+ and 2 as operands, realizes that the + is an operation applicable to objects 1 and 2, and applies it
04:31:32 <xor_> In lisp you can't extend the language in the way you mean it in C
04:31:51 <lament> well, you can
04:32:16 <lament> why can't you?
04:32:33 <xor_> You can't change the only operator, namely, calling a function
04:32:34 <pikhq> (define function_foo (bar baz qux (quuxy quuux))) Voila. You've extended the language.
04:33:04 <xor_> yes, but you can do that in C too
04:33:07 <lament> xor_: well, that's why i said "extend", not "modify" :)
04:33:22 <lament> xor_: also it's not the only operator, and it doesn't call functions.
04:33:30 <lament> other than that you're mostly right.
04:33:30 <pikhq> C makes abstraction a bitch, though.
04:33:38 <lament> xor_: (define .....) is not a function.
04:33:45 <xor_> Close enough
04:33:50 <lament> no, not close at all.
04:34:04 <xor_> Oh?
04:34:06 <lament> in C, the analog would be "int foo() {}"
04:34:12 <xor_> I only have a weak understanding of lisp
04:34:17 <lament> you can't create new things of that kind in C
04:34:51 <lament> say you wanted C syntax for creating anonymous functions. C doesn't come with that. And you can't add it.
04:35:05 <lament> In lisp, you could (if it didn't have it to begin with)
04:35:26 <lament> suppose lisp doesn't have a foreach operator. Then you can add one yourself.
04:35:28 <xor_> Say you wanted to add lisp syntax for, say, postfix notation
04:35:50 <lament> You can do that.
04:36:03 <lament> You would have something like (postfix (1 2 +)) evaluating to 3
04:36:17 <xor_> I fold
04:36:31 -!- SevenInchBread has quit (Connection reset by peer).
04:36:33 <lament> i think CL even has infix notation thingie
04:36:39 <xor_> How do you do that?
04:36:45 <lament> so when you have a complex arithmetic expression, you don't have to suffer using prefix
04:36:49 <lament> i don't know
04:37:12 <lament> anyway, i don't even like lisp :)
04:37:28 -!- CakeProphet has joined.
04:37:33 <xor_> Well what I'm saying is that when it looks like you are changing the language in lisp, you are really just changing functions
04:37:37 <xor_> which you can do in c
04:37:38 <lament> no
04:38:03 <lament> it's just that in lisp everything sort of looks similar
04:38:05 <lament> but it isn't
04:38:14 <lament> for example, it should be fairly clear that (if) is not a function
04:38:19 <lament> try implementing if as a function in C
04:38:31 <xor_> but if is a function
04:38:40 <lament> not in Lisp or C
04:38:47 <xor_> It just so happens that you can pass blocks of code to a function in lisp
04:38:55 <rt> if isn't a function, because it doesn't evaluate all its arguments.
04:39:00 <rt> it's a "special form".
04:39:07 <lament> xor_: you can, but that's not how if works in Lisp.
04:39:24 <lament> the difference being
04:39:40 <lament> you don't go (if a '(code for if) '(code for else))
04:39:47 <lament> you go (if a (code for if) (code for else))
04:40:03 <lament> if it were a function, both chunks of code would be immediately evaluated
04:40:39 <lament> but yeah, you could argue that you could make it a function and lisp just sucks because syntax for passing blocks of code requires an extra quote which people don't want to type.
04:40:50 <lament> In fact, in Smalltalk if is a function.
04:41:13 <xor_> if you accessed arrays in c like get(array, index), then you could abstractly redifine arrays
04:41:22 <lament> sure.
04:41:24 <xor_> and access your list in the same way
04:41:27 <lament> sure.
04:41:40 <lament> except you can't have a polymorphic get
04:41:44 <xor_> and _everything_ in lisp is access like that
04:41:54 <lament> so the _same_ get function would have to work for arrays and lists
04:42:00 <lament> which is already a bit more difficult
04:42:25 <lament> especially if you want to add more datatypes in the future that should also work with get()
04:42:36 <lament> you can do that in C
04:42:44 <lament> it's just unnatural and silly and nobody does that.
04:42:55 <lament> in Lisp (or even Python), it's natural and easy
04:43:00 <xor_> yeah
04:43:11 <pikhq> C++, Lisp, and other semisane languages make it natural to do it.
04:43:15 <xor_> but c is fast and low level
04:43:21 <xor_> So you can't have everything
04:43:28 <lament> well, like i said
04:43:35 <pikhq> (C++ has this thing called "operator overloading". Rather nice.)
04:43:39 <lament> i can think of very very few tasks i would use C for.
04:43:44 <xor_> pikhq: Extremely
04:43:56 <xor_> but c++ sucks
04:43:58 <lament> eg., i can think of very very few tasks i would use a "fast low-level language" for.
04:44:03 <pikhq> xor_: C++ gives you this benefit, is fast, and is lowlevel. Lisp gives you this benefit and is fast. Try one of them.
04:44:09 <rt> c++ overloading isn't "rather nice". it's completely absurd.
04:44:27 <lament> python's overloading is a bit contrived
04:44:31 <lament> sadly
04:44:38 <lament> haskell shines as usual :)
04:44:40 <pikhq> rt: Code an app using bignums in C++ and C, and tell me that again.
04:44:45 <xor_> It's the same as c++'s ...
04:45:34 <lament> in haskell and smalltalk, there's no difference between something like 1+2 and something like add(1,2), both are just different syntax for functions.
04:45:45 <lament> any other way of doing operator overloading is less sane, imo
04:45:57 <Razor-X> If you use macros creatively, it's pretty simple to switch from postfix to prefix, and maybe even implement infix.
04:46:05 <xor_> Python is similar a believe
04:46:13 <lament> no, python is worse :(
04:46:28 <lament> in python, + is a shortcut for a function that's actually called __add__
04:46:30 <pikhq> Razor-X: Worst-case scenario, you just go and define a function "infix" to parse infix expressions.
04:46:41 <xor_> 1+2 == int.__add__(1, 2)
04:46:49 <Razor-X> pikhq: Yeah but... it's unelegant and not in the spirit of Lisp.
04:46:54 <lament> xor_: exactly
04:46:59 <pikhq> Razor-X: True.
04:47:00 <xor_> So it's the same
04:47:11 <lament> xor_: it's not the same, because you need to know the shortcuts
04:47:13 <xor_> Just with a namespace
04:47:18 <lament> you can't just write
04:47:19 <lament> class foo:
04:47:25 <lament> def +(self, other):
04:47:36 <pikhq> In C++: 1+2 == int.operator+(1, 2);
04:47:42 <xor_> class foo:
04:47:51 <xor_> def __add__(self, other):
04:48:01 <xor_> the syntax is just slightly different
04:48:08 <lament> xor_: like i said. You need to know those shortcuts.
04:48:12 <lament> it's weird.
04:48:14 <Razor-X> Well, you can use a procedure to modify the postfix notation and eval the prefixed notation.
04:48:22 <Razor-X> Which is a more roundabout way of adding new syntax.
04:49:00 <lament> xor_: in haskell, you would just go a + b = <body of your function>
04:49:29 <lament> or alternatively, add a b = <body>
04:50:52 <xor_> I think it is more weird to have odd characters in function names
04:50:57 <xor_> That's just confusing
04:51:28 <lament> i think there's nothing weird about calling a function that adds two things '+'
04:51:51 <pikhq> One must admit; operator overloading of any sort leaves you much more sane than C. ;)
04:52:26 <xor_> C with oop without operator overloading leaves you with prefix notation
04:53:00 <lament> why would you do oop in C?
04:53:08 <pikhq> lament: Ask the GTK devs.
04:53:10 <lament> it seems there're more appropriate languages
04:53:52 <pikhq> More specifically, ask whoever designed that bastard conglomeration that is Gobject.
04:54:05 <xor_> Because oop is a natural way of describing things?
04:54:26 <pikhq> xor_: And C++ is designed to make OOP natural.
04:54:53 <pikhq> An object system in C is about as bad as an object system in Brainfuck.
04:55:00 <xor_> not even close
04:55:07 <lament> xor_: yes, oop is a natural way of describing things, but why do it in C?
04:55:22 <xor_> because C is good
04:55:41 <xor_> also, if I code something in C, every other coder can understand it
04:55:55 <lament> surely not every coder.
04:56:24 <xor_> more speak C than speak (lisp|c++|python|whatever)
04:56:38 <lament> questionable
04:56:45 <lament> certainly questionable in the case of C++
04:56:57 <lament> even more so in the case of languages you omitted eg Java
04:57:03 <pikhq> C++ is *really* simple for a C coder to figure out.
04:57:09 <xor_> no it's not
04:57:22 <xor_> C++ adds waaaay too much complexity
04:57:40 <lament> i think i agree with xor
04:58:22 <pikhq> D is probably a better choice, sanity-wise, though. ;)
04:58:56 <xor_> anyways, I have to go
05:07:36 -!- Arrogant has joined.
05:08:36 <Razor-X> xor_: Wait.
05:09:02 <Razor-X> I just made a very unelegant hack (because I'm too lazy to lookup the syntax modification rules) to add in postfix notation to Lisp.
05:10:05 -!- Eidolos has joined.
05:10:46 <Razor-X> Scheme anywho.
05:18:47 <lament> Eidolos: go back to devnull!
05:21:11 <Eidolos> hehe
05:23:55 <Razor-X> Yeah, I really love Scheme. Haskell is pretty fun too.
06:02:32 -!- CakeProphet has quit (Read error: 104 (Connection reset by peer)).
06:03:32 -!- CakeProphet has joined.
06:08:13 -!- CakeProphet has quit (Read error: 104 (Connection reset by peer)).
06:08:50 -!- CakeProphet has joined.
06:24:00 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
06:30:41 <RodgerTheGreat> heheh
06:30:56 <RodgerTheGreat> I love wikis: "LOCK is a clever acronym if you know what it stands for. (If you do, you might want to add that here.)"
06:49:11 -!- Arrogant has quit ("Leaving").
06:56:01 <GreaseMonkey> AddUselessLanguage(&Tomato,TomatoParser@,{i++;});
06:58:40 <GreaseMonkey> EatPies@(PieCount!2)={for({i!2;i=0;},{i<PieCount;},{i++},{eat(FindAvailablePie(&Pantry));});};
07:34:44 -!- CakeProphet has quit (Read error: 110 (Connection timed out)).
07:44:48 -!- ivan` has quit (Connection timed out).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:10:52 -!- nooga has joined.
08:10:58 <nooga> sup
08:11:28 <GreaseMonkey> hi
08:12:14 <nooga> :>
08:25:45 <nooga> i'm writing a raytrcer 4 fun
08:26:14 <nooga> i'm even thinking about giving an esoteric scene description language to it
08:36:37 -!- GreaseMonkey has quit ("Leave@()={Sob("#AWOS");Quit();};").
08:47:47 -!- nooga has quit.
08:59:14 -!- pgimeno has quit (Read error: 104 (Connection reset by peer)).
09:49:20 -!- pgimeno has joined.
10:09:49 -!- |^Simbad^| has joined.
10:10:00 <|^Simbad^|> olaaaaaaaaa
10:11:51 -!- |^Simbad^| has quit (Client Quit).
11:41:22 -!- Asztal has joined.
13:39:14 -!- jix has joined.
14:05:32 -!- jix_ has joined.
14:16:39 -!- CakeProphet has joined.
14:20:53 -!- jix has quit (Read error: 110 (Connection timed out)).
14:36:39 -!- ivan` has joined.
15:12:22 <RodgerTheGreat> 'morning, everyone.
15:19:28 -!- pikhq has quit (Read error: 110 (Connection timed out)).
15:53:34 <SimonRC> What's more mind-numbing than _Big Brother_ and more pointless than _Second Life_? Yes, it's _Big Brother_ set *in* _Second Life_: http://www.theregister.co.uk/2006/11/06/bb_second_life/
15:53:38 <SimonRC> hehehe
15:55:40 <RodgerTheGreat> oh, god...
15:55:51 <RodgerTheGreat> civilization is doomed.
15:56:33 <CakeProphet> ...
15:56:37 * CakeProphet dies.
15:57:29 <Asztal> :|
15:57:56 <Asztal> stupid.
15:58:05 <RodgerTheGreat> they should make a reality show about programmers. "Eight coders. 30 days. One product. 90 cases of mountain dew. Who will survive?"
15:58:42 <Asztal> first contestant: Paula Bean
15:59:05 <SimonRC> Now, instead of watching people sit around doing nothing useful all day, you can watch people's online avatars sit around doing nothing useful all day!
16:03:52 <RodgerTheGreat> and quietly seethe that they're getting paid while you get nothing for a similar amount of work.
16:14:19 <SimonRC> heh
16:48:55 -!- Sgeo has joined.
17:14:04 <SimonRC> hi
17:16:04 <CakeProphet> Behold! An experiment!
17:16:13 <CakeProphet> >>> for x in range(1, 100):
17:16:15 <CakeProphet> lasttime = timetime
17:16:16 <CakeProphet> timetime = time()
17:16:18 <CakeProphet> print timetime - lasttime
17:16:20 <CakeProphet>
17:16:21 <CakeProphet> 1162919953.83
17:16:22 <CakeProphet> 0.0309998989105
17:16:24 <CakeProphet> 0.0780000686646
17:16:26 <CakeProphet> 0.0309998989105
17:16:27 <CakeProphet> 0.0
17:16:29 <CakeProphet> 0.047000169754
17:16:30 <CakeProphet> 0.0
17:16:32 <CakeProphet> 0.0469999313354
17:16:33 <CakeProphet> 0.0
17:16:35 <CakeProphet> 0.0469999313354
17:16:37 <CakeProphet> 0.0160000324249
17:16:38 <CakeProphet> 0.0309998989105
17:16:39 <CakeProphet> 0.047000169754
17:16:41 <CakeProphet> 0.0
17:16:42 <CakeProphet> 0.0469999313354
17:16:44 <CakeProphet> 0.0
17:16:46 <CakeProphet> 0.108999967575
17:16:47 <CakeProphet> 0.0
17:16:49 <CakeProphet> 0.0469999313354
17:16:50 <Sgeo> Um
17:16:51 <CakeProphet> 0.0150001049042
17:16:53 <CakeProphet> 0.0320000648499
17:16:55 <CakeProphet> 0.0
17:16:57 <CakeProphet> 0.0149998664856
17:16:59 <CakeProphet> 0.0
17:17:01 <CakeProphet> 0.0160000324249
17:17:03 <CakeProphet> 0.0160000324249
17:17:04 <Sgeo> You _had_ to do that in channel?
17:17:05 <CakeProphet> 0.0
17:17:07 <CakeProphet> 0.0150001049042
17:17:09 <CakeProphet> 0.0
17:17:11 <CakeProphet> 0.0159997940063
17:17:13 <CakeProphet> 0.0150001049042
17:17:15 <CakeProphet> 0.0
17:17:17 <CakeProphet> 0.0160000324249
17:17:19 <CakeProphet> 0.0
17:17:21 <CakeProphet> 0.0160000324249
17:17:23 <CakeProphet> 0.0
17:17:25 <CakeProphet> 0.0149998664856
17:17:26 <SimonRC> Dear god when will it end?
17:17:27 <CakeProphet> 0.0320000648499
17:17:30 <CakeProphet> 0.0
17:17:31 <CakeProphet> 0.0150001049042
17:17:32 <jix_> 100 lines
17:17:32 <Sgeo> SimonRC, after 100?
17:17:33 <CakeProphet> 0.0
17:17:35 <CakeProphet> 0.0159997940063
17:17:37 <CakeProphet> .....
17:17:38 <SimonRC> ah, yeah
17:17:39 * CakeProphet dies of flodding.
17:17:41 <CakeProphet> relative time between foreach iterations.
17:17:43 * CakeProphet waits to disconnect.
17:17:45 <CakeProphet> Yes.
17:17:45 <SimonRC> !kick CakeProphet
17:17:49 <CakeProphet> Nah... I cut it short.
17:17:53 <CakeProphet> >.>
17:17:58 <Sgeo> CakeProphet, how?
17:18:11 <CakeProphet> By not-copying-and-pasting-the-entire-results.
17:18:52 <CakeProphet> I wonder why there was a consistency for iterations to happen within 0.0 seconds of each other.
17:19:57 * CakeProphet honestly doesn't understand why people get pissed by floods like that.
17:20:01 <jix_> uhhm doing the output in the loop is bad
17:20:09 <jix_> because then speed will depend on your terminal etc...
17:20:39 <CakeProphet> but then all speeds will depend on my terminal... thus it'll remain consistent through iterations.
17:20:41 <CakeProphet> :P
17:20:50 <jix_> it wont
17:21:12 <jix_> buffering of streams can do odd things on timing
17:21:18 <jix_> an hell how slow is that 0.016?
17:21:29 <CakeProphet> Hmmm...
17:21:44 <xor_> CakeProphet: What's your point?
17:21:49 <jix_> the worst thing i can get (with ruby don't know python) is 0.000184 and python is said to be faster
17:22:07 <jix_> and that was 3 out of 100 that arn't like 4.8e-05
17:22:34 * CakeProphet doesn't have a point.
17:22:45 <CakeProphet> Anything I do rarely has a point to it.
17:22:47 <jix_> the funny thing is when i remove the output thing i don't get 0.000xxx at all
17:23:09 <jix_> only ~2.0e-06
17:23:48 <CakeProphet> Weird...
17:24:06 <CakeProphet> When I used a list method for doing it... by appending them to a list in the iteration... it didn't add anything to the list.
17:24:20 <jix_> then your code is wrong
17:24:41 <CakeProphet> timelist = []
17:24:42 <CakeProphet> timetime = time()
17:24:44 <CakeProphet> for x in range(1, 100):
17:24:45 <CakeProphet> lasttime = timetime
17:24:47 <CakeProphet> timetime = time()
17:24:48 <CakeProphet> timelist.append(timetime - lasttime)
17:24:50 <CakeProphet> >>> timelist
17:24:51 <CakeProphet> []
17:24:59 <jix_> i don't know python...
17:25:06 <jix_> is append destructive?
17:25:14 <CakeProphet> Not sure what that means.
17:25:23 <CakeProphet> It just adds the given value to the end of the list.
17:25:24 <xor_> no
17:25:27 <jix_> does it modify timelist or does it create a new list
17:25:37 <CakeProphet> modifies timelist.
17:25:53 <CakeProphet> Python lists are immutable.
17:25:56 <CakeProphet> er.. mutable
17:25:56 <jix_> that would mean it's destructive but xor_ said it isn't
17:26:04 <jix_> CakeProphet: yeah but that doesn't make all methods destructive
17:26:19 <jix_> in ruby they are too but they have destructive and nondestructive methods
17:26:31 <xor_> Python is great
17:26:33 <CakeProphet> not sure why it would matter...
17:26:40 <CakeProphet> they both append something to a list...
17:26:43 <CakeProphet> which is all I need it to do.
17:27:08 <jix_> CakeProphet: yeah but in the one example timelist still remains timelist (eg EMPTY) and a new list with the one element gets created and thrown away because you ignore the return value
17:27:18 <jix_> and in the other way the timelist object itself gets modified
17:27:54 <CakeProphet> >>> timelist.append(1)
17:27:55 <CakeProphet> >>> timelist
17:27:57 <CakeProphet> [1]
17:28:04 <jix_> so it's destructive
17:28:05 <CakeProphet> you don't need to reference the method call.
17:28:11 <CakeProphet> so yes... I suppose.
17:28:18 <jix_> i don't need to what?
17:28:30 <CakeProphet> You don't have to do timelist = timelist.append(1)
17:28:38 <jix_> yeah because it's destructive
17:28:38 <CakeProphet> i.e., it doesn't return a value.
17:28:43 <jix_> you would have to do that if it wouldn't be
17:29:14 <CakeProphet> So... I'm wondering why the code isn't working.
17:34:24 <lament> because it's broken.
18:07:02 -!- GregorR-L has joined.
18:08:04 <CakeProphet> [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,...
18:08:05 <CakeProphet> ...0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
18:08:14 <CakeProphet> That's the results without output printing.
18:09:21 -!- CakeProphet has quit ("haaaaaaaaaa").
18:10:12 -!- CakeProphet has joined.
18:11:47 <xor_> x=[1];x.append(x)
18:14:17 <lament> in haskell: x = 1 : x
18:15:55 <xor_> haskell is odd
18:18:56 <lament> not really
18:19:02 <lament> it's just very pretty :)
19:08:45 -!- calamari has joined.
19:46:17 -!- GregorR-L has quit ("Leaving").
20:54:54 -!- jix_ has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
22:21:24 -!- nooga has joined.
22:21:30 <nooga> helloo
22:23:40 -!- GregorR-L has joined.
22:26:24 <xor_> lament: I've found that it's hard to code anything that doesn't have a simple mathematical translation in haskell
22:27:13 -!- Asztal has quit ("Chatzilla 0.9.72-rdmsoft [XULRunner 1.8.1b2/0000000000]").
22:29:20 * Sgeo coded a disproof of certain conceptions of God in Prolog
22:29:54 <GregorR-L> lol
22:34:05 <nooga> cool
22:34:22 <nooga> there is a lack of WAM based esolang
22:34:30 <nooga> oh no, there is one.... Prolog
22:34:45 <GregorR-L> WAM ...
22:34:47 <GregorR-L> Weird ...
22:34:49 <GregorR-L> Abstractions ...
22:34:53 <GregorR-L> ... Maybe
22:57:54 <nooga> ha
22:58:18 <nooga> Way too Advanced Mess
23:23:19 <nooga> g night
23:23:36 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
23:24:00 -!- tgwizard has joined.
23:25:17 -!- nooga has quit.
23:26:54 -!- Asztal has joined.
←2006-11-06 2006-11-07 2006-11-08→ ↑2006 ↑all