←2008-04-14 2008-04-15 2008-04-16→ ↑2008 ↑all
00:00:52 <ehird`> SimonRC: its interseting
00:00:55 <Slereah> No.
00:01:36 * SimonRC goes to bed
00:01:40 <SimonRC> ( o/~ # Pedants. / Hgh / What are they good for? / Designing air-trafic control systems. # )
00:03:12 -!- Corun has quit ("This computer has gone to sleep").
00:03:49 <ehird`> SimonRC: bye
00:03:53 <ehird`> Slereah: :P
00:08:11 <ehird`> I wonder what databases have many-to-many as their primitive relationship.
00:08:18 <ehird`> You can do many-to-one and one-to-many based on those.
00:16:43 <ehird`> nobody interested in databases?
00:28:57 * Sgeo is in a database class
00:29:07 <Slereah> http://www.itwire.com/content/view/13339/53/
00:29:08 <Slereah> Heh.
00:35:58 -!- timotiis has quit (Read error: 110 (Connection timed out)).
00:51:21 <ehird`> Sgeo: Huh?
00:53:30 <Sgeo> Why huh?
00:55:25 <pikhq> My good God, my math teacher last year is such a geek. . .
00:55:38 <pikhq> Him and his son are going to the Shadowmoor prerelease tournament.
00:55:53 <pikhq> (they're doing two-headed giant)
00:56:01 <Slereah> Well, he has a son.
00:56:12 <Slereah> So that means that he had sex at one point, I suppose.
00:56:18 <Slereah> He can't be that much of a dork.
00:56:32 <pikhq> Having relations with the opposite gender does not eliminate geekiness.
00:56:48 <Slereah> Does it not?
00:56:54 <pikhq> I have a girlfriend; does that make me un-geeky?
00:57:00 <Slereah> I could market some sort of cure otherwise.
00:57:08 <pikhq> LMAO
00:57:33 <Slereah> It would be like a whore house in a computer lab.
00:58:04 <pikhq> Meanwhile, I'll just be amused that I'm going to a prerelease tournament with my *math teacher*, of all things. :p
00:58:13 <ehird`> <Sgeo> Why huh?
00:58:16 <ehird`> your statement made no sense
00:58:19 <ehird`> * Sgeo is in a database class
00:58:29 <Sgeo> I'm taking a database class in college.
00:58:33 <ehird`> pikhq: You said that a few days ago.
00:58:34 <ehird`> Sgeo: Oh.
00:58:40 <pikhq> ehird`: Oh.
00:58:49 <ehird`> Sgeo: Let me guess: It's totally full of relational theory
00:58:54 <ehird`> Or.. not.
00:59:08 <Sgeo> We just got through Database normalization.
00:59:12 <ehird`> Heh.
00:59:58 <Sgeo> Are you here when I'm in here thursday mornings?
01:00:31 <ehird`> I am in here most any day because I have nothing better to do
01:00:39 <ehird`> But define 'morning' in GMT
01:01:04 <Sgeo> A bit past 12:30EST actually
01:01:16 <Sgeo> So not really even morning where I am
01:01:26 <ehird`> GMT.
01:01:35 <ehird`> I am a timezone bigot! :D
01:01:41 <pikhq> Sgeo, you're currently on EDT.
01:01:46 <pikhq> ;)
01:01:51 * Sgeo is not a time person
01:02:00 <pikhq> EDT, IIRC, is UTC-4.
01:02:55 <Slereah> "Call it what you want, I don't care. I make six figures being a general practitioner with a trade-school bachelor's that, in retrospect, I didn't need. I have never even needed to use high school algebra on the job. Most brilliant mathematicians and computer scientists will be stuck in academia or staff-level drone positions for their entire careers because they don't have any soft skills or business sense. They are forever
01:03:03 <Slereah> That guy is like the cool dude of computing!
01:03:15 <Slereah> He probably has all sorts of popped collars.
01:03:21 <pikhq> And I hate cool dudes.
01:04:02 <pikhq> "I have never even needed to use high school algebra on the job." Apparently, he's never had to do any algorithm more complicated than shell sort.
01:04:12 <pikhq> ;p
01:04:55 <Slereah> Since the last big program I had to write was to treat nuclear physics datas, I had to throw in a little math.
01:05:24 <Slereah> Didn't work though. I suck at C for manipulating files.
01:05:31 <pikhq> "Stuck in academia." Is being in academia as bad as all that?
01:05:46 <pikhq> (oerjan's not here, so I can't really know)
01:07:02 <lament> programming pretty much is high school algebra
01:07:14 <Slereah> "
01:07:16 <Slereah> Hey, you computer scientists...you are leaving your "I ride a high horse" comments on a web page that was probably designed, coded, managed, etc, by people who have no need for anything at all beyond basic algebra, so I would say that the article is correct -- it is not much algorithims/math that creates value, it is the thoughtful expression of a process.
01:07:17 <Slereah> Heh.
01:07:23 <Slereah> The comments are so awesome.
01:08:28 <pikhq> Link, please.
01:08:48 <ehird`> lament: but orthogonal to it
01:08:52 -!- kwertii has joined.
01:08:55 <ehird`> same difficulty, but not equals
01:08:56 <Slereah> Already gave it
01:08:59 <ehird`> they overlap of course
01:09:00 <Slereah> http://www.itwire.com/content/view/13339/53/
01:20:31 <Slereah> "
01:20:31 <Slereah> As an artist who has long been interested in computer programming I'm very interested in the philosophical (ontological and epistemological) aspects of computer programming (including mathematics and language) -but it does seem that (even in the arts) these aspects have become buried deeply out of sight =largely because of academic and commercial interests it seems.
01:20:59 <GregorR> I don't agree with that statement.
01:21:28 <Slereah> I lolled at that statement.
01:21:32 <GregorR> Certainly computer /programming/, as the menial engineering field it has become, shows this flaw, but I don't think it's true of computer /science/ at all.
01:21:48 <GregorR> (That is, I don't think it's true of academia)
01:22:36 <GregorR> Mind you, I'm trying not to lol because of the stupid way this is written :P
01:22:51 <lament> not sure what's stupid about that comment
01:22:52 <Slereah> The comments are a gold mine.
01:23:00 <Slereah> It's like a gigantic flamewar.
01:23:31 <lament> it's not at all obvious that programming should be related to math
01:23:40 <lament> (shouldn't it be related to language instead?)
01:23:56 <Slereah> "I really like cats and programming."
01:23:58 <GregorR> What I find silly about the comment is that the wording there is unnecessary, it's just there to go "OOH I'M SO SMART I'M A PHILOSOPHER BLAH BLAH BLAH"
01:24:12 <lament> "computer science" involves math simply because it's a science
01:24:16 <lament> GregorR: what's unnecessary there?
01:24:40 <lament> GregorR: "ontological" and "epistemological" are real words, they actually mean stuff
01:24:55 <GregorR> I'm not claiming that they don't.
01:25:00 <GregorR> I don't think anything was invented.
01:25:06 <GregorR> I just don't think they add anything to the comment.
01:25:09 <GregorR> Except long words.
01:26:04 <pikhq> "The algorithm is not the essential paradigm of computer science", he proclaims.
01:26:16 <pikhq> Alright. Sort a list without an algorithm.
01:26:21 <pikhq> You have infinite time.
01:26:24 <pikhq> Begin. . . Now.
01:26:46 <lament> GregorR: of course they add to the comment. Without them, it would say "i'm very interested in the philosophical aspects of computer programming".
01:26:59 <lament> that just makes you sound like a moron who has no idea about philosophy or computer programming
01:27:05 * GregorR bashes his head into the wall.
01:27:28 <pikhq> Instead, it makes him sound like a *well-educated* moron who has no idea about philosophy or computer programming. ;)
01:27:39 <GregorR> *ding*
01:28:04 <GregorR> Why do I ever get into arguments online? Soooo pointless. </>
01:28:20 <lament> i don't understand this at all
01:28:44 <pikhq> "An operating cannot be deterministic"
01:28:47 <lament> precise terminology is good
01:28:49 <pikhq> Operating system, rather.
01:29:27 * pikhq laughs his ass off until the end of time
01:29:47 <pikhq> "An operating system does not terminate"
01:29:58 <pikhq> Hrm. I dunno what shutdown -h does.
01:30:06 <pikhq> *Can't* be halting.
01:31:10 <lament> ontology is actually a pretty cool subject, ESPECIALLY as it related to computer programming
01:31:28 <lament> is code data? or is data code? or is it both at once? :)
01:31:29 <Sgeo> It doesn't HAVE to terminate due to internal causes..
01:31:44 <lament> s/related/relates
01:32:22 <pikhq> Sgeo: I can make a deterministic, halting operating system.
01:32:27 <Slereah> Plus, an algorithm doesn't have to terminate either.
01:32:39 <pikhq> And he stupidly assumes that. . . Slereah has that covered.
01:32:55 <Slereah> Hell, the original never terminated!
01:33:07 * pikhq can easily make a deterministic operating system.
01:33:34 <pikhq> Am I allowed to not use any non-deterministic hardware on the computer? :p
01:33:39 <lament> so what's an algorithm?
01:33:51 <Slereah> pikhq : Are you going to use any atoms?
01:33:52 <pikhq> A sequence of steps.
01:34:09 <pikhq> Slereah: Fine. Any physical machine will, by its very nature, be slightly non-deterministic.
01:34:16 <lament> a sequence of steps?
01:34:23 <Slereah> *series of tube
01:34:23 <lament> is a haskell function an algorithm?
01:34:34 <pikhq> Poor definition perhaps, but a fairly intuitive one.
01:34:45 <Slereah> Well, lambda calculus is done by a sequence of step
01:34:50 <Slereah> When applying beta conversion
01:34:55 <Slereah> So I assume that yes.
01:35:08 <lament> so reducing LC is done by an algorithm
01:35:16 <lament> but LC itself is not an algorithm, it's just an expression
01:35:20 <lament> a bunch of symbols
01:35:22 <lament> isn't that so?
01:35:29 <Slereah> Well, it also has transformation rules.
01:35:31 <pikhq> True. It's a way of defining algorithms.
01:35:35 <Slereah> They're as important!
01:35:43 <lament> pikhq: so what's an algorithm?
01:36:02 <lament> presumably not a sequence of steps, because there're no steps in fac n = product [1..n]
01:36:08 <lament> no sequence, either
01:36:28 <lament> it's a working program, though
01:36:29 <ehird`> A sequence of steps is a good abstraction!
01:36:32 <Slereah> Well, there is at least one!
01:36:33 <ehird`> Imperative programs can be beautiful.
01:36:44 <pikhq> Would you like a formal definition?
01:36:59 <lament> is it a useful one?
01:37:08 <pikhq> It's nonexistent, actually.
01:37:17 <ehird`> lament: Yes! There are QUITE A FEW languages based on it..
01:37:38 <lament> I think what that article really talks about
01:37:41 <pikhq> Unless you define 'algorithm' as 'anything that can be expressed in a Turing-complete language'.
01:37:45 <lament> is operational vs. denotational semantics
01:37:59 <lament> his "process expression" is simply operational semantics
01:38:17 <lament> "A logic circuit is an expression of a logical process"
01:39:18 <lament> this makes sense
01:39:43 <lament> you could talk of the "algorithm" that the logic circuit implements, of course
01:42:24 -!- ehird` has quit (Read error: 104 (Connection reset by peer)).
02:18:50 -!- Slereah has quit (Read error: 104 (Connection reset by peer)).
02:47:13 -!- Slereah has joined.
02:56:36 -!- adu has joined.
03:41:19 -!- Tritonio_ has quit (Remote closed the connection).
04:00:48 -!- adu has quit ("Bye").
04:56:41 <Sgeo> G'night all
04:57:29 -!- Sgeo has quit ("Ex-Chat").
05:16:22 <RodgerTheGreat> pikhq: you should see this: http://rodger.nonlogic.org/images/aldez/
05:18:40 <pikhq> I <3
05:18:52 <RodgerTheGreat> :D
05:18:55 <pikhq> Now, check this out: http://video.google.com/videoplay?docid=5737070239476680627
05:18:58 <pikhq> (not me)
05:19:00 <RodgerTheGreat> it's the intro to a game I'm making
05:19:09 <pikhq> (just totally fucking awesome)
05:19:16 <RodgerTheGreat> I own his CD, "The art of motion"
05:19:17 <RodgerTheGreat> and yes
05:19:54 <pikhq> Ah. Good taste.
05:26:05 * RodgerTheGreat is listening to Hiphopopotamus Vs. Rhymenocerous (Featuring Rhymenocerous And The Hiphopapoatumus) by Flight Of The Conchords from Flight Of The Conchords (Original Staging)
06:06:03 <lament> i'm the hiphoppopotomus! My lyrics are bottomless! ...........
06:07:02 <pikhq> Bloody hell. I think I can go to be, and then find out that I need to do laundry.
06:07:07 <pikhq> There goes my sanity tomorrow.
06:07:42 <GregorR> Rarely do you see so many words have so little meaning.
06:08:06 <pikhq> Never read a paper by a liberal arts major, have you?
06:08:12 <GregorR> Heh :P
06:09:23 <pikhq> "And thus, we can conclude that the underlying symbolic metaphor of the /Mona Lisa/ is a misogynistic tyrade against all women everywhere, by giving a simple example of feminine beauty for all to despise."
06:09:31 <pikhq> (translation: I am full of shit.)
06:09:58 -!- calamari has joined.
06:16:41 <calamari> hi
06:24:07 <calamari> GregorR: you here?
06:27:08 <RodgerTheGreat> pikhq: spoilers beware, but I've added the frames for the end of the demo we're finishing this week: http://rodger.nonlogic.org/images/aldez/
06:32:46 <GregorR> calamari: Not very, but a bit.
06:33:08 <calamari> GregorR: you need a site map :P ls -R would work in a pinch.. hehe
06:33:20 <calamari> location of egobot?
06:33:24 <GregorR> Site map? My site needs any sort of organization at all :P
06:33:29 <GregorR> EgoBot is on the Eso files archive.
06:33:33 <calamari> ahh ok
06:33:35 <calamari> thaks
06:33:50 <calamari> i need to rip off part of your code since I'm too lazy to write it myself
06:34:16 <GregorR> It's in C++.
06:34:24 <GregorR> Well, it's in extremely C-ish C++.
06:34:42 <calamari> yeah
06:35:00 <calamari> been messing around with a qemu sandboxed mini linux
06:35:22 <calamari> got it booting up and starting telnetd so now I just need to add the bot wrappers
06:36:06 <calamari> ooh 11.1 MB getting bigger
06:37:04 <calamari> I should probably provide a C compiler tho.. what do you think? right now it only has python
06:38:20 <calamari> wonder how much that'll bloat it
06:44:56 <GregorR> Use tcc
06:45:01 <GregorR> gcc = much bloat, tcc = tiny
06:57:27 <calamari> good idea
06:58:14 <calamari> I'll have to figure out how to cross compile that for uclibc
07:02:50 <GregorR> Oh 8-O
07:02:53 <GregorR> G'luck :P
07:18:13 <GregorR> calamari: So, why did you randomly find me on [shivers down the spine] facebook?
07:20:17 <calamari> GregorR: I was checking to see if anyone I knew was in the esoteric group
07:20:35 <calamari> so then I searched for a few people in the chat room
07:20:43 <calamari> you were the lucky one ;)
07:21:11 <calamari> yeah facebook is pretty lame
07:21:50 <calamari> I only joined it because IBM promoted it for something, don't even remember now
07:35:03 -!- kwertii has quit ("bye").
07:37:33 -!- Iskr has joined.
07:46:24 -!- calamari has quit ("Leaving").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:06:47 -!- olsner has joined.
10:08:37 -!- jix has joined.
11:10:00 -!- oklopol has quit (Read error: 104 (Connection reset by peer)).
11:10:10 -!- oklopol has joined.
11:33:26 -!- Corun has joined.
12:49:55 -!- Corun has quit ("This computer has gone to sleep").
13:02:23 -!- timotiis has joined.
14:39:17 -!- Corun has joined.
15:57:17 -!- Corun has quit ("This computer has gone to sleep").
16:47:03 -!- Corun has joined.
17:02:37 -!- Corun has quit (Read error: 104 (Connection reset by peer)).
18:42:03 -!- ehird` has joined.
18:42:06 -!- ehird has joined.
18:42:21 -!- ehird` has left (?).
18:50:49 <ehird> oklopol: oko
18:51:12 -!- timotiis has quit (Connection timed out).
18:53:14 -!- oklofok has joined.
18:56:44 <ehird> oklofok: oko2
18:57:45 -!- jix has quit (Nick collision from services.).
18:57:55 -!- jix has joined.
18:59:56 <oklofok> gto
18:59:58 <oklofok> jh
19:00:13 <ehird> oklofok: unfortunately noooo okohird YET
19:00:23 <ehird> didn't work on it much after you left, got distracted :(
19:00:29 <ehird> however, i will continue the parser
19:01:17 <ehird> oklofok: it will have crazily cool parse errors though
19:01:25 <ehird> like (a) -> 'Application with <2 expressions'
19:01:37 <ehird> ( -> 'EOF while parsing application'
19:01:50 <ehird> oklofok: OH, and my cons has a bug
19:01:57 <ehird> [$pb :] should be [$pb $:] if i am not mistaken
19:02:08 <oklofok> hmm
19:02:10 <oklofok> yes.
19:02:36 <ehird> oklofok: when making oklotalk i suggset trying to cut down on the $ and []s
19:02:38 <ehird> they're quite ugly
19:03:06 <oklofok> [] is implicit in oklotalk
19:03:22 <oklofok> and $ was originally §, but wasn't ascii so i changed it
19:03:28 <oklofok> indeed, i don't like $
19:03:31 <oklofok> §atom
19:03:35 <oklofok> i liked that
19:05:12 <ehird> oklofok: [] is implicit -- can;t you find a way to add elegant multi-arg funcalls to the APL-style?
19:05:14 <ehird> would be really neat
19:05:26 <ehird> oklofok: and it's more having to mark it full stop, really
19:06:30 <oklofok> http://xkcd.com/329/
19:06:39 <oklofok> whaddya mean
19:06:59 <ehird> oklofok: look at my cons code
19:07:07 <ehird> replace $ with any symbol - its still too much
19:07:29 <ehird> it will need some good thinking to work out how to cut them down though
19:08:12 <oklofok> what did you mean by that apl thing
19:08:26 <ehird> oklofok: like, instead of passing around lists when you want to pass like 5 arguments
19:08:33 <ehird> find out a way to actually have 5(etc)-argument functions
19:08:42 <ehird> while keeping in with the elegant apl/oklotalk hybrid semantics
19:09:18 <oklofok> what exactly do you mean?
19:09:22 <oklofok> currently, you would do
19:09:24 -!- oklopol has quit (Read error: 113 (No route to host)).
19:09:28 <oklofok> func Arg Arg Arg Arg Arg
19:09:35 -!- oklofok has changed nick to oklopol.
19:09:49 <ehird> oklopol: yes, but it would be passed as [arg arg arg arg arg ] or something
19:09:49 <ehird> right?
19:09:58 <oklopol> yes
19:10:00 <ehird> I mean, funcs are only unary or dyadic
19:10:01 <ehird> so
19:10:04 <ehird> what i'm saying is that's kludgey
19:10:09 <ehird> i bet you can do it without implicit []s
19:10:13 <ehird> REALLY support them
19:10:46 <oklopol> it's not kludgey, i disagree :)
19:10:57 <oklopol> anyway, going to the shop!
19:15:28 <ehird> oklopol: :(
19:15:33 <ehird> it iiiis kludgey
19:17:49 -!- oklopol has quit (Read error: 113 (No route to host)).
19:18:14 -!- oklopol has joined.
19:18:28 <oklopol> ehird: i don't see the point in not making it a list... only possibility for what i can imagine *actually supporting n-adic functions* might mean is having to match all args separately, which would only complicate stuff.
19:18:33 <oklopol> that was an obscure sentence, but anyway
19:18:35 <oklopol> i don't see the point
19:18:53 <ehird> oklopol: but :(
19:19:41 <oklopol> :P
19:19:50 <oklopol> well tell me the advantages :)
19:19:59 <oklopol> oklotalk doesn't aim for conceptual perfection.
19:25:05 <ehird> oklopol: well, implicit [] is just weird
19:25:10 <ehird> what if you want to pass an array as the last param?
19:26:54 <ehird> oklopol: = and -> are the only special cases rigt
19:27:05 <ehird> and what is a ->node called?
19:27:07 <ehird> = is an assignmentnode
19:27:09 <ehird> what about ->
19:28:22 <ehird> <oerjan>There are probably some languages where the empty program is a cat. Concatenative languages where the program is a function to turn input into output.
19:28:26 <ehird> yes -- golfscript
19:29:48 <lament> and lazy k!
19:31:06 <ehird> !dog god!
19:31:08 <EgoBot> Huh?
19:31:12 <ehird> !daemon dog bf ++++++++++[---------->,----------[>,----------]<[++++++++++.<]++++++++++.]
19:31:14 <ehird> !dog god!
19:34:17 <ehird> !undaemon dog
19:34:20 <EgoBot> Process 1 killed.
19:34:20 <ehird> !daemon dup bf ++++[->++++++++<]>>+[->,----------[>,----------]<[++++++++++<]>[.>]<[<]<.>>[.>]++++++++++.[<]+]
19:34:31 <ehird> !dup !dup
19:34:42 <ehird> GregorR: EgoBrokent
19:35:05 -!- oklofok has joined.
19:35:18 <ehird> oklofok: foklo-ok
19:35:33 -!- oklopol has quit (Read error: 113 (No route to host)).
19:36:07 <ehird> !ps
19:36:09 <ehird> !ps d
19:36:10 <EgoBot> 2 ehird: ps
19:36:13 <EgoBot> 1 ehird: daemon dup bf
19:36:14 <EgoBot> 2 ehird: ps
19:36:19 <ehird> !dup lulz
19:36:23 <ehird> !undaemon dup
19:36:27 <EgoBot> Process 1 killed.
19:36:49 -!- oklofok has quit (Read error: 104 (Connection reset by peer)).
19:40:44 -!- oklopol has joined.
19:41:16 <ehird> oklopol: oko
19:46:00 <oklopol> oooko
19:46:09 <AnMaster> ok
19:46:13 <AnMaster> ;)
19:46:15 <ehird> bb
19:46:31 <oklopol> ehird: [] is also list
19:46:53 <oklopol> okokokokoko
19:47:05 <ehird> oklopol: okokokoko..
19:50:33 -!- oklofok has joined.
19:50:51 <oklofok> ehird: [] is also list
19:50:54 <ehird> yes
19:50:55 <oklofok> okokokokoko
19:50:55 <ehird> but oko.
19:50:57 <oklofok> also you can up into singleton with ^
19:50:59 <oklofok> in case those didn't come
19:51:01 <ehird> okokoko
19:52:17 <oklofok> func [Arg Arg Arg] == func Arg Arg Arg
19:52:35 <ehird> yes
19:52:37 <ehird> ugly
19:52:41 <oklofok> oh no
19:52:41 <ehird> but yeah
19:52:45 <ehird> what is a ->node called
19:52:48 <oklofok> in two meanings
19:53:05 <oklofok> "oh no" as in "who cares", and "oh no", as in "oh dear god you're wrong"
19:53:19 <oklofok> hmm
19:53:26 <oklofok> hmmhmm
19:53:32 <oklofok> i fail to remember
19:53:50 <oklofok> match node, i'd say
19:53:52 <ehird> okay
19:54:03 <oklofok> how is that ugly?
19:54:24 <ehird> thing,list,1app,2app,match,assign,atom,var(subclass of atom),int,strnig
19:54:28 <ehird> that's my ast
19:54:44 <oklofok> those are what i have, yeah
19:54:47 <ehird> oklofok: is ($-> a b) a match node
19:54:50 <ehird> or just (-> a b)
19:54:58 <oklofok> good point
19:55:02 <oklofok> only latter
19:55:57 <ehird> oklofok: same with =?
19:56:05 <oklofok> yes
19:56:24 <ehird> oklofok: what is (= a)
19:56:30 <oklofok> error
19:56:31 <ehird> is it an unary application of = to a
19:56:33 <ehird> or an error
19:56:33 <ehird> OK
19:57:04 -!- oklopol has quit (No route to host).
19:57:11 <ehird> oklofok: what about (-> a)
19:57:26 <oklofok> that's okay, i think.
19:57:32 <ehird> oklofok: what does it mean
19:57:40 <oklofok> hmm...
19:58:22 <oklofok> match on a, just return what would've been returned if it weren't for the match
19:58:31 <oklofok> my implementation fails on that.
19:58:39 <ehird> oklofok: returns []
19:58:40 <ehird> when you app it
19:58:41 <ehird> :P
19:58:49 <ehird> oklofok: are you sure it shoultn't be (-> a f)
19:58:50 <oklofok> yes, have no idea why, but lessee
19:58:51 <ehird> or even an error
19:59:17 <oklofok> no.. not an error
19:59:34 -!- sebbu2 has joined.
19:59:41 <oklofok> you should be able to do stuff like (= _ [4 5]) (-> [a b]) (+ a b)
20:00:23 <oklofok> err
20:00:25 <oklofok> of not
20:00:35 <oklofok> hmmhmm
20:00:39 <ehird> oklofok: i think (-> a) should be an error
20:00:51 <ehird> its either redundant (and only 2 chars shorter than its replacement) OR useless
20:01:03 <oklofok> ah
20:01:04 <oklofok> right
20:01:20 <oklofok> it was just for assignment, (-> [$set tail]) etc
20:01:51 <ehird> oklofok: yeah, that's kinda sucky
20:01:56 <ehird> mostly you'll want to return tail or similar
20:01:56 <ehird> s.
20:01:59 <ehird> so
20:02:13 <ehird> oklofok: my parser uses a neat trick
20:02:18 <ehird> it can .pop() because it reverses the input
20:02:50 <oklofok> neat, neat
20:03:01 <ehird> oklofok: did i mention my implementation uses unicode
20:03:08 <oklofok> hmmhmm, i think [] is a good thing to return, but i cannot quite see why my implementation does it
20:03:48 <oklofok> ah
20:04:00 <oklofok> that is one obscure way to make it return [] xD
20:04:15 <oklofok> also, try doing operations on the list
20:05:13 <oklofok> it's not an Lst, it's a python list :)
20:05:46 <ehird> oklofok: haha
20:06:03 <ehird> oklofok: my interp will have script capabilit
20:06:06 <ehird> maybe even a COMPILER
20:06:07 <ehird> into python
20:06:11 <ehird> yes with continuations
20:06:56 <oklofok> i'm gonna make a compiler later, would you recommend java or python bytecode? :)
20:07:00 <ehird> oklofok: is '2a' a valid atom
20:07:05 <oklofok> no
20:07:16 <oklofok> can't start with a number
20:07:24 <oklofok> but oklotalk-- has very retarded parsing rules
20:07:25 <ehird> oklofok: :((( that sucks
20:07:28 <oklofok> yes
20:07:31 <ehird> you should parse as a string
20:07:36 <ehird> then if everything's a digit make it an int
20:07:37 <oklofok> ...as a string?
20:07:38 <oklofok> i see
20:07:49 <ehird> oklofok: schemes do that
20:07:55 <ehird> 1+ is a valid id in a lot of them
20:08:00 <oklofok> ofc it is
20:09:02 <oklofok> anyway, i don't care much about that before you can extend syntax
20:09:21 <oklofok> i think i've come up with quite a nice way to do parsing for actual oklotalk
20:09:36 <oklofok> there will be a separate string type for strings with structure
20:09:41 <oklofok> well, list type ofc
20:11:05 <oklofok> will prolly integrate state lists, structured lists and pattern lists into just primitive lists later
20:11:11 <oklofok> but needs a lot of conceptual refinement
20:11:14 <oklofok> everything, really
20:13:41 <ehird> oklofok: oko
20:15:49 <ehird> oklofok: oops, atoms are special cases of vars
20:15:51 <ehird> not the other way around
20:16:00 <ehird> need a more generic name..
20:16:01 <ehird> NameNode
20:16:52 -!- sebbu has quit (Connection timed out).
20:16:53 -!- sebbu2 has changed nick to sebbu.
20:17:11 <ehird> oklofok: what breaks a node?
20:17:18 <ehird> is a2 'a2' or a,2
20:17:31 <ehird> just whitespace,(,),{,},[,],",$?
20:17:32 <ehird> or..
20:17:38 <oklofok> yes
20:17:39 <oklofok> the latter
20:17:44 <oklofok> umm
20:17:49 <oklofok> once you start a name
20:18:26 <oklofok> it continues until one of the ending parens of whitespace
20:18:44 <ehird> oklofok: does ( break it
20:18:47 <ehird> (-> a(b c))
20:18:49 <oklofok> no
20:18:51 <oklofok> that's okay
20:18:51 <ehird> wtf
20:18:52 <ehird> so that's
20:18:52 <ehird> a(b
20:18:53 <ehird> that sucks
20:18:55 <ehird> totally
20:19:06 <oklofok> sure
20:19:13 <ehird> oklofok: will you kill me if i break that
20:19:24 <ehird> ok, what about "
20:19:27 <oklofok> i don't consider it relevant.
20:19:27 <ehird> thats a closer AND an ender
20:19:28 <ehird> a"b
20:19:37 <ehird> and what about $
20:19:59 <oklofok> i already said what the rules are :)
20:20:03 <oklofok> a"b is okay
20:20:22 <oklofok> this is trivial stuff, who cares, is my opinion
20:20:30 <oklofok> :)
20:20:46 <oklofok> it will be made sane once i actually *make a syntax*
20:21:02 <oklofok> anyway
20:21:07 <ehird> so, oklofok: whitespace,),},]
20:21:09 <oklofok> for a clearer answer: yes, you can chan that
20:21:13 <oklofok> *change
20:22:02 <oklofok> the parser was whipped up in less than 10 minutes, before which i didn't have any idea how it should look.
20:22:10 <ehird> oklofok: 2a is 2,a right
20:22:14 <oklofok> yes.
20:22:18 <oklofok> that i'm not gonna change
20:22:36 <oklofok> but indeed, i guess making opening brackets break tokens is a must
20:24:54 <ehird> oklofok: is \n an escape sequence
20:24:55 <ehird> or: should it be
20:25:10 <oklofok> it is, and should be
20:25:30 <oklofok> \t is not
20:25:36 <oklofok> and shouldn't be, atm
20:25:54 <oklofok> i despise the tab character
20:26:23 <ehird> oklofok: why?
20:26:26 <ehird> think about it this way
20:26:31 <ehird> the tab has a semantic meaning for code
20:26:32 <ehird> it means:
20:26:35 <ehird> 'we are indenting now, ok'
20:26:37 <ehird> now
20:26:38 <ehird> the problem is
20:26:45 <ehird> that editors used to interpret that as '+N spaces'
20:26:50 <ehird> instead of semantically
20:26:57 <ehird> and people tried to use tabs for alignment
20:27:07 <ehird> so now everyone uses soft spaces, and people can't decide how they want to look at code
20:27:12 <ehird> and everything is less semantic
20:27:15 <ehird> and quite a few bytes are wasted.
20:27:21 <ehird> so in summary:
20:27:31 <ehird> tabs rock, spaces suck. but the real world means we must use spaces
20:28:09 <oklofok> well i wasn't thinking about code, i'm more an ast level guy
20:28:17 <oklofok> tabs are nice for that yeah
20:28:24 <oklofok> but, i have other issues with them
20:29:02 <ehird> oklofok: like.
20:30:07 <oklofok> let's not get into that
20:30:10 <ehird> :)
20:30:20 <ehird> oklofok: did tabs abuse you when you were young?!111212
20:30:24 <oklofok> :)
20:30:33 <oklofok> i have issues with a lot of things
20:31:01 <ehird> oklofok: so is "\r" literally a backslash then an r
20:31:08 <oklofok> no
20:31:12 <ehird> an error?
20:31:13 <oklofok> it is a syntax error
20:31:38 <ehird> oklofok: just need to parse assignment and voila
20:31:40 <ehird> i'm done with the parser
20:31:41 <oklofok> either have characters you need in source code or use the chr function for now.
20:31:43 <ehird> then i haev to er, test it
20:31:55 <oklofok> well good for you
20:32:19 <ehird> oklofok: :D
20:32:23 <ehird> continuations, compilation..
20:32:26 <ehird> AWESOMETALK
20:32:28 <ehird> --
20:32:30 <oklofok> :)
20:32:55 <ehird> Awesometalk without the -- will be THE BEST ENTERPRISE OKLOTALK
20:33:10 <oklofok> heh
20:33:31 <ehird> oklofok: it will cost $32.99
20:33:36 <ehird> and include a MEGA IDE
20:33:43 <oklofok> perhaps we can spend our lives making better and better oklotalk interps and compilers topping each other until i die of age..
20:34:22 <Slereah> Either that.
20:34:27 <Slereah> Or we could buy cotton candy.
20:34:31 <oklofok> hmm
20:34:33 <Slereah> THE CHOICE IS YOURS
20:34:36 <oklofok> you make a decent point
20:34:53 <Slereah> It's quite a conundrum.
20:34:59 <ehird> <oklofok> perhaps we can spend our lives making better and better oklotalk interps and compilers topping each other until i die of age..
20:35:08 <ehird> and trying to get people to actually use it
20:35:21 <oklofok> hmm... well then count me out :P
20:35:51 <oklofok> i don't care whether people use my stuff really
20:35:52 <ehird> oklofok: imagine when google releases its first oklotalk application
20:36:11 <oklofok> this is the reason why i don't aim for perfection in the parsing rules etc.
20:36:23 <ehird> oklofok: OH NO
20:36:26 <ehird> I have not made lists yet
20:36:27 <oklofok> :P
20:36:32 <oklofok> oh
20:36:47 <ehird> not hard
20:36:48 <oklofok> oh, right
20:36:50 <ehird> i can just rip off the Thing code
20:37:08 <oklofok> you said something about it being lame that i use the python stack
20:37:14 <oklofok> i remember the reason now
20:37:20 <ehird> what
20:37:37 <oklofok> it was just that you need to do oklotalk calls in pattern matching, and i hadn't taken that into account
20:37:46 <oklofok> so i'd have had to change the code a bit
20:38:02 <ehird> oklofok: ah
20:38:03 <oklofok> so i just started over, and the randomizer in my head didn't do it stack-based again
20:38:23 <ehird> >>> print parse('[a b c]')[0]
20:38:23 <ehird> [a b c]
20:38:29 <ehird> oklofok: an oklotalk parser in 1-3 man hours
20:38:33 <ehird> of not much work
20:38:34 <ehird> well
20:38:36 <ehird> oklotalk--
20:38:55 <oklofok> anyway, i'm pretty sure i could reimplement all of oklotalk much better now that i know the scoping/evaluation/parsing rules, so beware, i'll remake it if you finish yours, and it will own it.
20:38:58 <oklofok> hmm
20:39:03 <oklofok> some bad use of "it"
20:39:16 <ehird> oklofok: oh sure ;p
20:39:22 <ehird> but my oklotalk-- will support CALLING INTO PYTHON
20:39:32 <ehird> though if you have this:
20:39:33 <oklofok> oklotalk-- parsing is about 10 man-minutes of work, i have no idea about oklotalk, as its syntax isn't even ready yet
20:39:46 <ehird> oklofok: ah but i have very specific errors
20:39:49 <ehird> anyway
20:39:52 <ehird> oklotalk-- calls python --> python calls oklotalk-- -> oklotalk-- code
20:40:02 <oklofok> heh
20:40:05 <ehird> the rightmost oklotalk-- code's continuations will only be up to the python one
20:40:14 <ehird> since obviously you can't capture the python and upwards continuation
20:40:14 <ehird> BUT
20:40:21 <ehird> that's never ever gonna happen now is it :p
20:41:00 <ehird> oklofok: damn, this parser works FIRST TIME
20:41:09 <oklofok> mine did too
20:41:11 <ehird> i literally implemented 50% of it just now, without reloading
20:41:16 <ehird> and it is all working, with nice error messages
20:41:17 <ehird> crazy
20:41:24 <oklofok> i just wrote it, and assumed it worked :)
20:41:33 <oklofok> hmm
20:41:36 <ehird> mine isn't hideously broken though
20:41:36 <ehird> :))
20:41:40 <oklofok> is mine?
20:41:43 <oklofok> don't think so
20:41:45 <ehird> in error cases
20:41:46 <ehird> yeah
20:41:53 <oklofok> i see
20:41:55 <oklofok> how exactly?
20:42:10 <ehird> oklofok: it returns weird stuff
20:42:11 <ehird> like lists
20:42:18 <oklofok> show example
20:42:22 <ehird> mine always raisea n exception that has reasonable text
20:42:38 <ehird> oklofok: also, yours is broken
20:42:43 <oklofok> show example
20:42:43 <ehird> you cant pass a string as an argument
20:42:46 <ehird> it tries to parse as an int
20:43:30 <oklofok> show example
20:43:36 <ehird> oklofok: jesus christ
20:43:52 <oklofok> have no idea what you mean
20:43:55 <ehird> well
20:43:57 <ehird> look in logs
20:43:58 <ehird> we found it
20:44:12 <oklofok> you mean (lol "asdasdads")
20:44:13 <oklofok> ?
20:44:33 <oklofok> have no idea what you mean
20:45:38 <ehird> oklofok: look in logs
20:45:52 <ehird> okay
20:45:53 <ehird> parser done
20:45:58 <ehird> now i guess i should do types
20:46:47 <oklofok> ehird: i won't, i'll just assume you're lying
20:46:49 <oklofok> :)
20:47:06 <ehird> oklofok: ass
20:47:33 <ehird> <ehird>:: (error "DIE DIE DIE")16:40:55
20:47:33 <ehird> <otobot>An error: invalid literal for int() with base 10: 'DIE DIE DIE'
20:47:41 <ehird> <ehird>:: (+ "DIE DIE DIE" "oklotalk")16:41:18
20:47:41 <ehird> <otobot>An error: invalid literal for int() with base 10: 'oklotalk'
20:48:32 <ehird> class Oko(object):
20:48:35 <ehird> cutest code i've written all day
20:48:53 <ehird> Okoer should be the interpreter class
20:48:55 <ehird> but that's silly
20:48:56 <oklofok> hmm
20:48:57 <ehird> okit
20:48:58 <ehird> err
20:49:00 <ehird> okoist
20:49:02 <oklofok> the first one is correct
20:49:07 <oklofok> second, doesn't err
20:49:30 <ehird> oklofok: well its from logs
20:51:30 <ehird> oklofok: should objects (okos) belong to okoists (interpreters)
20:51:32 <ehird> or independent
20:53:00 -!- RodgerTheGreat has quit (brown.freenode.net irc.freenode.net).
20:53:00 -!- Deformative has quit (brown.freenode.net irc.freenode.net).
20:53:00 -!- AnMaster has quit (brown.freenode.net irc.freenode.net).
20:53:00 -!- GregorR has quit (brown.freenode.net irc.freenode.net).
20:53:00 -!- Quendus has quit (brown.freenode.net irc.freenode.net).
20:53:00 -!- Deformati has joined.
20:55:04 -!- AnMaster has joined.
20:55:22 -!- Quendus has joined.
20:56:43 <AnMaster> anyone know the mail or something of ais
20:56:45 <AnMaster> in an EXTREMELY silly way
20:56:47 <AnMaster> #ifdef _POSIX_SOURCE \n #include <stdarg.h> \n #else \n #include <varargs.h> \n #endif
20:56:49 <AnMaster> well for some reason it does not define _POSIX_SOURCE on freebsd........
20:59:17 -!- RodgerTheGreat has joined.
21:01:01 -!- oerjan has joined.
21:05:38 <oklofok> ehird: strings, indeed, don't have much functionality in oklotalk--, mainly because i'm very lazy when it comes to the trivial stuff
21:05:47 <oklofok> but there is no parse error there
21:06:02 <oerjan> <AnMaster> anyone know the mail or something of ais
21:06:11 <oerjan> as a matter of fact yes
21:06:19 -!- GregorR has joined.
21:06:32 <AnMaster> oerjan, ah so I can send a bug report
21:06:36 <AnMaster> thanks could you /msg it?
21:07:58 <oerjan> I don't know if that's where he wants bug reports though
21:08:33 <oklofok> just spit it out, man!
21:12:28 <ehird> AnMaster: post to usenet
21:12:30 <ehird> alt.lang.intercal
21:12:39 <AnMaster> ehird, sent him a mail
21:12:49 <ehird> /sigh
21:12:56 <AnMaster> ehird, and I don't have any read/write news account
21:13:00 <AnMaster> so I can't post it there
21:13:06 <ehird> google offers them for free.
22:14:51 -!- Iskr has quit ("Leaving").
22:18:25 <AnMaster> Deewiant, WTF does the I of PERL fingerprint do
22:18:34 <AnMaster> Deewiant, I looked at CCBI's code and it make no sense
22:29:12 -!- jix has quit ("CommandQ").
22:47:21 -!- timotiis has joined.
22:53:34 -!- RodgerTheGreat has quit.
23:09:39 <ehird> hello chaps
23:09:52 -!- olsner has quit ("Leaving").
23:11:22 <ehird> oklofok: oh NO
23:11:23 <ehird> parser BUG
23:11:52 <ehird> fix'd
23:14:19 <ehird> oklofok: soo
23:14:26 <ehird> what's the general structure of your oklotalk-- interp?
23:14:31 <ehird> does it have multiple interps at one time?
23:21:59 <ehird> oklofok: ping
23:30:51 <ehird> ...
23:40:29 <ehird> oklofok: ping
23:44:12 <oklofok> pong
23:44:35 <oklofok> whaddyamean
23:44:39 <oklofok> multiple interps at one time?
23:44:42 <oklofok> i'm going to sleep btw
23:44:45 <oklofok> so be fast
23:45:18 <oerjan> to sleep, perchance to dream
23:45:36 <ehird> heh
23:45:36 <oklofok> no you can't purchase my dreams
23:45:43 <ehird> wish i could be ast
23:45:45 <ehird> fast
23:45:50 <ehird> but busy:(((
23:45:59 <oklofok> "multiple interps at one time"?
23:46:53 <oklofok> well
23:47:01 <oklofok> to answer what i think that sentence means...
23:47:17 <oklofok> the interpreter doesn't have interpreters at all, it only *is* one
23:47:23 <ehird> oklofok: ok
23:47:25 <oklofok> so no, it doesn't have multiple interps at one time
23:47:30 <ehird> so i cant have 2 'contexts'
23:47:34 <oklofok> oh
23:47:42 <oklofok> r=oklotalk.Runner()
23:47:49 <ehird> aha
23:47:51 <oklofok> r.run(oklotalk_code)
23:47:52 <ehird> thanks
23:47:54 <ehird> :)
23:47:57 <oklofok> returns result, stores context
23:48:03 <oklofok> you can use that from the pyc of c
23:48:06 <oklofok> *ofc
23:48:11 <ehird> oklofok: yeah
23:48:13 <oklofok> not that you didn't know that
23:48:18 <ehird> hard to use python without the src though :))
23:48:25 <oklofok> indeed.
23:48:25 <ehird> its not really oriented to that
23:48:39 <oklofok> i told you about Runner, but quite briefly
23:48:53 <oklofok> whhell
23:48:56 <oklofok> you can just dir the modules
23:49:18 <ehird> yeah
23:49:20 <ehird> even so
23:49:41 <oklofok> oklotalk.run will run contextless pieces of code
23:49:55 <oklofok> in case you're really in a hurry!
23:50:09 <ehird> :)
23:50:18 <ehird> oklofok: i bet £999 that you won't actually go to sleep
23:50:22 <oklofok> anyway, night-o
23:50:23 <oklofok> :O
23:50:29 <ehird> and that you'll stay here
23:50:30 <ehird> ;)
23:50:31 <oklofok> YES I WILL
23:50:38 <ehird> suuure
23:50:56 <oklofok> there's a naked chick next to me
23:51:04 <oklofok> still want to bet?
23:51:10 <ehird> oklofok: ok, good point
23:51:13 <ehird> i retract my bet
23:51:14 <oklofok> :)
23:51:29 <oklofok> whhhell, wouldn't be the first time i choose oklotalk over a chick
23:51:35 <oklofok> but let's hope i succeed
23:51:37 <oklofok> see ya
23:51:38 <oklofok> ->
23:51:42 <ehird> oklofok: WHAT ABOUT SCOPING
23:51:48 <oklofok> ...
23:51:48 * ehird watches oklofok reappear
23:51:58 <oklofok> you're fucking evil.
23:52:02 <ehird> totally
23:52:09 <oklofok> you know all about scoping, man
23:52:18 <ehird> nah
23:52:24 <ehird> what about dynamic container singletons
23:52:25 <oklofok> static, dynamic look-up if static finds nothing.
23:52:30 <oklofok> ...whut? :D
23:52:34 * oerjan still has doubts about the sleeping part
23:52:40 <ehird> dunno, better make up a meaning
23:52:41 <ehird> ok
23:52:42 <ehird> dynamic
23:52:43 <ehird> container
23:52:44 <ehird> singletons
23:52:50 <ehird> are containers
23:52:52 <ehird> that contain a dynamic variable
23:52:55 <ehird> and have set/get operations
23:53:02 <ehird> a -dynamically scoped- variable that is
23:53:12 <ehird> how does this interact with the stack?
23:53:28 <oklofok> hmph
23:53:40 <oklofok> err
23:53:41 -!- oerjan has quit ("Good night").
23:53:46 <oklofok> can you be more spesific...
23:53:55 <ehird> oklofok: its a structure
23:53:58 <oklofok> yes
23:54:00 <ehird> but instead of contianing structure-local lexicals
23:54:06 <ehird> it contains a dynamic variable reference
23:54:14 <oklofok> what's that, exactly, in oklotalk--?
23:54:17 <oklofok> can you code it?
23:54:31 <ehird> oklofok: maybe, dunno how to do the exact forcing
23:55:02 <oklofok> scoping is only done for variables
23:55:13 <ehird> oklofok: yes
23:55:15 <oklofok> i'm not sure what you mean here, so hard to say...
23:55:17 <ehird> but its a variable INSIDE a structure
23:55:19 <ehird> but i admit it
23:55:23 <ehird> i'm just trying to keep you here
23:55:25 <ehird> for me £999
23:55:25 <oklofok> inside it...
23:55:25 <ehird> ;)
23:55:28 <oklofok> like {a}
23:55:29 <ehird> srsly, go
23:55:29 <oklofok> :D
23:55:30 <ehird> :D
23:55:32 <oklofok> asdasdf
23:55:34 <ehird> oklofok: but
23:55:35 <ehird> like
23:55:36 <oklofok> okay, okay...
23:55:38 <oklofok> ...
23:55:40 <ehird> {(-> a ...)}
23:55:45 <oklofok> yarr
23:55:45 <ehird> but a is dynamically scoped
23:55:47 <ehird> and ... is {...}
23:55:52 <oklofok> umm
23:55:57 <oklofok> a isn't dynamically scoped
23:56:03 <ehird> i know
23:56:04 <oklofok> it's bound by the pattern match
23:56:05 <ehird> you force it to be
23:56:10 <oklofok> how?
23:56:14 <ehird> by using the other expressions
23:56:15 <ehird> like
23:56:27 <ehird> {magic setting stuff, (-> z {...}))
23:56:30 <ehird> and instead of z in the object
23:56:32 <ehird> use magic getting stuff
23:56:45 <ehird> the object 'contains' a dynamically scoped varialbe
23:56:59 <oklofok> i don't think you can do that.
23:57:05 <oklofok> but i'll really go now :D
23:57:07 <oklofok> see ya ->
23:57:29 <ehird> :D
23:57:32 <ehird> bye
23:58:30 <ehird> oklofok: you are still here.
←2008-04-14 2008-04-15 2008-04-16→ ↑2008 ↑all