00:01:34 <ELIZA849> We were discussing you -- not me.
00:01:41 <immibis> eliza: is bsmntbombdood telling the truth?
00:02:15 * immibis wonders what eliza is on about
00:03:23 <immibis> eliza: What are you on about?
00:03:35 <ELIZA849> Lets discuss further why your uncle is getting a colostomy .
00:04:18 <oerjan> i thought it remembered only eliza: phrases
00:04:44 <immibis> it does. i told it bsmntbombdood's uncle is getting a colostomy.
00:05:56 <GregorR> Hahaha - somebody DID send the Unicode RTL code.
00:06:00 <GregorR> I looked at the tunes logs, and they're BACKWARDS X-P
00:06:47 -!- immibis has set topic: #esoteric.
00:08:33 <immibis> someone: what was the old topic?
00:09:03 -!- oerjan has set topic: Esoteric programming language discussion | FORUM AND WIKI: esolangs.org | CHANNEL LOGS: http://tunes.org/~nef/logs/esoteric | IRP in #irp | Congratulations ais523 for winning the Wolfram research prize!.
00:09:44 <immibis> i typed in /topic #esoteric and it set the topic to #esoteric, instead of looking at the topic of #esoteric.
00:09:57 <ELIZA849> Lets discuss further why your heart is breaking .
00:10:08 <oerjan> i tried to cut and paste it, and discovered irssi joined the lines, so i just as well reset it :)
00:10:35 <oerjan> oh... that is _why_ irssi joins lines of course
00:12:27 <pikhq> irssi joins lines? Sveet.
00:12:52 <oerjan> it also warns you if you try to paste a long message
00:12:53 <pikhq> Whaddya know. It does.
00:13:30 <pikhq> GregorR: When was this?
00:14:10 <oerjan> it's a terminal program so when you copy a message that spans several lines, it becomes split
00:14:31 <oerjan> but when you paste it again, irssi notices and rejoins them
00:14:45 <GregorR> I believe it was ... EHIRD`!
00:15:19 <GregorR> 12:49 in the logger's timezone, whenever the bork that is.
00:16:10 * pikhq isn't seeing an RTL.
00:16:16 <ehird`> It wasn't 12;49 though
00:16:41 <pikhq> See it in Firefox, though.
00:17:04 <GregorR> ehird`: The logs are borkleborked!
00:17:13 <pikhq> 12:49:29 <ehird`> did someone say RTL unicode char?
00:17:35 <ehird`> GregorR: I'll fix it from now on
00:17:52 <ehird`> there, that should do it
00:18:11 <GregorR> Awesome how you can trivially fuck up the logs :P
00:19:11 <immibis> the logs are plaintext. whether or not they are interpreted as utf-8 is up to the browser - mine doesn't (firefox 2.0.something.somethingElse)
00:19:33 <GregorR> Mine does (Firefox 2.0.something.somethingElse)
00:20:41 <immibis> we are talking about http://tunes.org/~nef/logs/esoteric/07.12.11 right?
00:20:57 <ehird`> GregorR: you are meant to view them with a good reader
00:21:01 <immibis> i see it interpreted as ansi.
00:21:06 <pikhq> In Firefox it works, in Ktext, it doesn't.
00:21:19 <ehird`> void scm_get_current_continuation(struct ScmInterp *interp)
00:21:19 <ehird`> { return interp->stack; } /* well, that's a simple continuation implementation... */
00:21:32 <immibis> it is interpreted as iso-8859-1 not ansi sorry
00:22:39 <GregorR> ELIZA: I WANT WILD BOTTSECKS
00:22:39 <ELIZA849> What would it mean to you if you got wild bottsecks ?
00:22:52 <GregorR> ELIZA: It would mean my life was complete!
00:22:53 <ELIZA849> Why do you say your life was complete ?
00:22:56 <ELIZA849> Why are you interested in whether I am ok or not ?
00:23:05 <ELIZA849> Does that have anything to do with the fact that your brain is thinking ?
00:24:35 <ELIZA849> Does that have anything to do with the fact that your self is dead ?
00:24:43 <ehird`> void scm_call_continuation(struct ScmInterp *interp, GSList *cont)
00:24:52 <ehird`> it feels like i should be having to do more WORK here
00:28:07 <ihope_> ELIZA849: My tree is wonderful.
00:28:13 <ihope_> ELIZA: My tree is wonderful.
00:28:14 <ELIZA849> Why do you say your tree is wonderful ?
00:28:32 <ihope_> ELIZA: I like trees, especially if they're wonderful.
00:28:40 <GregorR> ELIZA: Offborp monglo foque blem.
00:28:40 <ELIZA849> Earlier you said your life was complete .
00:29:01 <GregorR> ELIZA: WOW U R HAS MEMZORIES
00:29:01 <ELIZA849> Lets discuss further why your head is about to explode .
00:29:57 <ihope_> ELIZA: You make no sense.
00:30:06 <ELIZA849> You're not really talking about me -- are you ?
00:30:15 <ihope_> ELIZA: don't you deny it!
00:31:58 <ihope_> ELIZA: neo-ornate with a side of fries. Yours?
00:31:58 <ELIZA849> Lets discuss further why your head is about to explode .
00:33:02 <ehird`> take it to #esoteric-blah people :P
00:34:42 -!- immibis1 has joined.
00:34:57 -!- immibis has quit (Nick collision from services.).
00:34:58 -!- immibis1 has changed nick to immibis.
00:39:31 -!- ELIZA849 has left (?).
00:46:42 -!- ELIZA30 has joined.
00:50:40 -!- ELIZA30 has quit (Read error: 104 (Connection reset by peer)).
00:50:42 -!- ELIZA552 has joined.
00:50:57 -!- ELIZA552 has quit (Read error: 104 (Connection reset by peer)).
00:51:49 -!- ELIZA181 has joined.
00:53:05 -!- ELIZA181 has changed nick to ELIZA.
00:54:56 -!- ELIZA has changed nick to hurtful.
00:58:01 <immibis> i'm not testing hhhere i'm tttesting in #eliza
00:58:23 -!- hurtful has changed nick to ELIZA.
00:58:56 -!- ELIZA has left (?).
00:59:24 <ihope_> Does it have any autojoin for #esoteric?
01:00:04 <immibis> yes. should i start netbeans for the umpteenth time today to remove it?
01:02:07 <immibis> faxathisia, what's wrong qwith netbeans apart from the slow loading time?
01:02:19 <faxathisia> the name.. I don't know anything else about it
01:02:36 <oerjan> just another coffee pun
01:02:57 <immibis> yes well what do you say about java beans in that case.
01:03:19 <immibis> and the Advanced Whitening Toothpaste?
01:03:41 <ihope_> Don't tell me it really stands for that.
01:04:00 <immibis> it doesn't. but it might some day.
01:05:40 <immibis> but as for Stupid Windowing In New Graphics...
01:07:21 <immibis> and java.lang.reflect.mirrors...
01:08:28 <immibis> java.lang.reflect.mirrors.LightRay.AddMirror(new java.lang.reflect.mirrors.Mirror())
01:09:03 <oerjan> what _is_ the smiley for rolling eyes anyhow.
01:09:50 <oerjan> i don't know, just guessing
01:10:33 <immibis> there's an edu.neu.ccs.beans.reflect.mirror
01:38:23 -!- ehird` has quit (Remote closed the connection).
01:53:34 -!- Tritonio_ has quit ("Bye...").
02:04:15 <pikhq> Apparently Java has too many classes.
02:10:53 -!- Slereah has quit.
02:22:26 -!- immibis_ has joined.
02:24:04 -!- immibis__ has joined.
02:24:25 -!- immibis has quit (Nick collision from services.).
02:24:29 -!- immibis_ has quit (Nick collision from services.).
02:24:36 -!- immibis__ has changed nick to immibis.
03:02:42 <pikhq> oerjan: Allow me to tell you about the Rainbow Repeals.
03:02:59 <pikhq> B Nomic has a really fucked up gamestate ATM.
03:03:11 <pikhq> Basically, any person may say "I do this", and it has occured.
03:03:34 <oerjan> is this your evil work?
03:03:36 <pikhq> So, I repealed all rules except the one for use in case of emergency (to refresh the game state).
03:03:42 <pikhq> The state of the game is not mine.
03:04:30 <pikhq> Currently, it is 100% undetermined what the game state *is*.
03:04:31 <RodgerTheGreat> physics can kiss my ass- I just proved that time travel is impossible by using computer science!
03:05:02 <RodgerTheGreat> The halting problem cannot be solved in a finite amount of time, but it becomes *trivial* given infinite time, right?
03:06:07 <RodgerTheGreat> build a machine that attempts to solve the halting problem exhaustively and can travel through time. If it halts, it travels back to the time just after it was activated. Otherwise, it never returns
03:06:29 <RodgerTheGreat> effectively, to the user, if the machine halts it stays where it is, and if it does not halt it disappears forever
03:06:52 <oerjan> there are probably a lot of holes in that argument. one: the halting problem also needs infinite memory
03:07:17 <RodgerTheGreat> this machine would then solve the halting problem for any program/input instantly, which is provably impossible. This strategy requires a time machine, therefore time machines are impossible
03:07:43 <RodgerTheGreat> HOWEVER, setting aside basic flaws, it's pretty entertaining
03:08:16 <RodgerTheGreat> oerjan: actually, I'd argue that given infinite time you wouldn't need infinite memory
03:08:36 <RodgerTheGreat> you need infinite memory to detect a loop of some kind
03:08:40 <oerjan> i believe that is incorrect
03:08:51 <RodgerTheGreat> but in this case you can literally just run it normally
03:09:04 <pikhq> RodgerTheGreat: You have a few flaws. First, if(halt()) travel(); no more proves time travel impossible than if(halt()) printf("Whee!"); proves that printing "Whee!" is impossible.
03:09:52 <RodgerTheGreat> printing "whee" wouldn't return any information in a less than potentially infinite amount of time
03:09:57 <oerjan> that is, any thing you can do with a given amount of memory and _unlimited_ time, you can do with exponential time in the memory
03:10:21 <RodgerTheGreat> if you can time travel, you can return status instantly
03:10:35 <immibis> all programs will halt when you turn off your computer.
03:11:01 <pikhq> I fail to see how that disproves time travel.
03:11:01 <RodgerTheGreat> immibis: well, that ties into the "heat death of the universe" thing which is a more valid flaw
03:12:12 <RodgerTheGreat> if the machine requires any energy to run, it would be incapable of operating for an infinite amount of time
03:13:10 <oerjan> i have sometimes entertained the notion that the weirdness of quantum mechanics is because subatomic particles are constantly travelling in time...
03:13:39 <RodgerTheGreat> I'm under the impression that quantum mechanics only seem random because we do not fully understand how they work.
03:14:08 <oerjan> randomness can of course be explained with chaos theory
03:14:41 <RodgerTheGreat> I was going to say "The *appearance* of randomness..."
03:15:38 <oerjan> but there are subtle restrictions on what randomness can occur if you assume effects cannot travel in time or faster than light
03:16:00 <oerjan> and Bell's inequality seems to violate those
03:16:07 <RodgerTheGreat> chaos theory essentially says that a complex system can create effectively unpredictable behavior because we do not possess perfect information. That doesn't make *any* behavior truly random or nondeterministic
03:16:18 <oerjan> or was that the other way around
03:17:11 <oerjan> http://en.wikipedia.org/wiki/Bell_inequality
03:27:44 -!- faxathisia has quit ("This computer has gone to sleep").
03:34:21 <dbc> This is part of why I like the Everett interpretation.
03:37:08 <dbc> That and I'm a born minimalist anyway so I like the reduction in core theoretical apparatus. Keep Schrödinger wavefunction, lose everything else.
03:37:30 <dbc> And as a bonus it explains how we got through fifty+ years of thermonuclear bombs on hair trigger.
03:44:19 <immibis> Excuse me, Schr(A with tilde)(paragraph break)dinger?
03:50:20 <oerjan> actually the wierd is, it wasn't, it was ISO-8859-1
03:50:48 <oerjan> so how you got to see the UTF8 expansion i don't know :)
03:54:51 * pikhq laughs at the B Nomic game state
03:54:52 <immibis> i got Schr-A with tilde-paragraph break-dinger.
03:55:00 <pikhq> It may or may not have a dictator.
03:55:05 <pikhq> It may or may not have any rules.
03:55:06 <oerjan> yes, that's the UTF8 expansion
03:55:16 <pikhq> It may or may not be an Agoran protectorate.
03:55:23 <oerjan> _not_ the actual Unicode character though
03:55:26 <pikhq> I may or may not be a player.
03:57:06 <oerjan> immibis: for you to see it, something on your path must have _first_ converted ISO-8859-1 to Unicode, _then_ your client must have failed and displayed it as if it _still_ was ISO-8859-1.
03:57:36 <immibis> i'm guessing it was a condensed oe thing from the context.
03:58:40 <oerjan> i guess is still something squiggly to you
03:59:37 <immibis> no, is a shorter double quote.
04:00:27 <immibis> or two dots depending on what you call it.
04:00:41 <oerjan> so what is schrdinger?
04:02:23 <immibis> schr-o with two dots-dinger.
04:02:54 <oerjan> that looks the same on my screen as in dbc's comment
04:03:32 <oerjan> and the same in the logs
04:04:18 <oerjan> right time for it too :)
04:06:57 <immibis> or, more likely, his was posted in utf-8 and yours in iso9660.
04:07:10 <immibis> iso9660's a filesystem format, silly me.
04:07:25 <oerjan> er i said they looked the same to me, and in the logs
04:17:25 -!- immibis has quit ("Hi Im a qit msg virus. Pls rplce ur old qit msg wit tis 1 & hlp me tk ovr th wrld of IRC. If you think nobody cares, try miss).
04:53:59 -!- oerjan has quit ("Good night").
05:16:56 -!- GreaseMonkey has quit ("Who keeps reincarnating sliced bread?!").
05:17:06 -!- Sgeo has quit (Remote closed the connection).
05:19:33 -!- calamari has joined.
05:45:42 -!- calamari has quit ("Leaving").
05:56:41 -!- ihope_ has quit (Read error: 110 (Connection timed out)).
07:08:13 <oklopoo> RodgerTheGreat: the problem with your proof is, it just proves (well, doesn't really, but that's required for it to work) that an oracle can be created in the physical world
07:10:00 <oklopoo> what? my nick hasn't changed back automatically!
07:10:03 -!- oklopoo has changed nick to oklopol.
07:12:51 <oklopol> errrer i have some weird pronoun use there, anyhow, my point is, even if the universe was fully continuous or something and you could actually have an infinite memory, time travel would provide an oracle (as the name might suggest...), the problem is, there is no paradox here, no system is predicting it's own behavior.
07:13:09 -!- Nonick-989170 has joined.
07:22:13 <oklopol> http://www.vjn.fi/pb/p341313315.txt factorials in oklotalk!
07:22:14 -!- Nonick-989170 has changed nick to Slereah.
07:22:28 <oklopol> heyyyy there are people here i haven't talked about oklotalk yet :D
07:23:56 <oklopol> i started development again cuz i chose oklotalk as my... well, a graduation project or smth
07:24:24 <oklopol> although admittedly i should've programmed something awesome in unlambda or smth xD
07:30:32 -!- ELIZA197 has joined.
07:34:00 <ELIZA197> Hello. Please state your problem.
07:34:45 <Slereah> Heh. A friend rewrote my Turing machine in Ruby.
07:39:30 <ELIZA197> Tell me more about your head being about to explode.
07:41:10 -!- Jontte has quit (Read error: 110 (Connection timed out)).
07:43:39 <EgoBot> ELIZA: You are stupid.
07:43:47 <ELIZA197> Does it please you to think I am stupid ?
07:48:23 -!- immibis has joined.
07:51:08 <dbc> Okay. I have a cron job to kill -9 Firefox on the half-hour, then I have a script to prevent that but it won't work twice in a row.
07:54:43 <dbc> I just set up two scripts that check for, create, and destroy temp files.
07:55:08 <immibis> ok but what's the use of it (apart from annoying everyone who uses your computer)
07:55:33 <dbc> It's to help remind me not to waste too much time on the web.
07:56:19 <dbc> The time cost of restarting firefox and restoring seventy tabs or so is enough that I'm hoping it won't become a reflex.
07:57:39 <dbc> Something like that.
07:57:44 * immibis wonders that dbc hasn't run out of memory and swap partition space.
07:58:05 <dbc> That used to happen more with the last version of firefox. This one seems better.
07:59:07 <dbc> (this one being 2.0.0.10)
07:59:22 <dbc> It does lose the ability to run movies after a while, but that's all so far.
07:59:52 <immibis> ELIZA: What's the latest version of firefox?
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:00:11 <dbc> Haven't tried. Not 100% sure I should chance it.
08:03:02 <ELIZA197> But your neck is swollen to the size of an elephant!
08:06:26 <dbc> Wow did I underestimate. I have 158 tabs open now, in two windows.
08:06:58 <immibis> and where do you find so many sites to browse?
08:08:44 <immibis> and did you know the computer you're on doesn't exist and is unreachable by the internet?
08:08:53 <immibis> there are at least 255 computers between it and me.
08:09:28 -!- immibis has quit (Read error: 104 (Connection reset by peer)).
08:09:28 -!- ELIZA197 has quit (Read error: 104 (Connection reset by peer)).
08:11:58 <dbc> Roughly half of that is porn and TGPs. Some is boardgamegeek and other things I'm meaning to read and/or buy.
08:12:02 <dbc> I'm afraid to just bookmark stuff because I'll never get back to it.
08:12:06 <dbc> dd_rescue reference page. That takes me back.
08:12:16 <dbc> Eggnog recipe. Seven places to buy my favorite pens that they stopped making. Pentel Micro Fine Superball.
08:12:37 <dbc> Political stuff. More laws to gradually increase the power of government.
10:28:16 -!- jix has joined.
11:41:11 -!- jix has quit (Nick collision from services.).
11:41:19 -!- jix has joined.
12:57:04 -!- Sgeo has joined.
14:31:12 -!- faxathisia has joined.
14:53:21 -!- Jontte has joined.
15:07:42 -!- oerjan has joined.
15:12:44 -!- Jontte has quit ("Konversation terminated!").
15:21:08 -!- cherez has quit (Read error: 110 (Connection timed out)).
15:23:50 -!- cherez has joined.
15:25:19 -!- Jontte has joined.
15:44:45 -!- ehird` has joined.
15:47:39 -!- ehird` has quit (Read error: 104 (Connection reset by peer)).
15:48:28 -!- ehird` has joined.
16:13:20 -!- Jontte has quit ("Konversation terminated!").
16:16:19 -!- Jontte has joined.
16:23:04 -!- RedDak has joined.
16:25:19 -!- Jontte has quit ("Konversation terminated!").
16:42:54 -!- sebbu has joined.
16:49:47 -!- Dagide has joined.
16:52:22 -!- dak__ has joined.
16:55:15 -!- Dagide has quit (Read error: 104 (Connection reset by peer)).
17:09:09 -!- RedDak has quit (Read error: 110 (Connection timed out)).
17:22:26 -!- dak__ has quit (Connection timed out).
18:34:26 -!- oerjan has quit ("Supper").
18:43:32 <RodgerTheGreat> this is fascinating: http://www-groups.dcs.st-and.ac.uk/~history/HistTopics/Babylonian_numerals.html
19:03:42 <Slereah> Why am I whistling "99 bottles of beer" while testing a Fibonacci program?
19:05:44 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)).
19:07:30 -!- Sgeo has joined.
19:14:30 -!- jix has quit ("CommandQ").
19:30:40 <Slereah> In retrospect, it was a poor idea to do a Fibonacci without some sort of addition code first.
19:31:51 <RodgerTheGreat> whistling 99b while implementing fibo is a normal phase in the descent into gibbering insanity. Welcome to the party.
19:34:30 -!- ais523 has joined.
19:35:21 <ais523> is anyone going to give me some context, or do I have to read the logs again?
19:35:46 <ais523> or am I assuming lack of context when in fact it's me that's being smiled at?
19:36:16 <RodgerTheGreat> Slereah: Why am I whistling "99 bottles of beer" while testing a Fibonacci program?
19:36:16 <RodgerTheGreat> Slereah: In retrospect, it was a poor idea to do a Fibonacci without some sort of addition code first.
19:36:16 <RodgerTheGreat> RodgerTheGreat: whistling 99b while implementing fibo is a normal phase in the descent into gibbering insanity. Welcome to the party.
19:37:11 <ais523> thanks for that. I just logged on to test a new laptop
19:37:27 <ais523> I don't actually have an Internet connection so I'm testing the wireless connection at Uni too
19:39:21 <ais523> at least it's better than the ancient version of Chatzilla that was the only client I used to have access to
19:40:04 <RodgerTheGreat> nonlogic has a Java-based client hidden somewhere within our info pages
19:40:43 <ais523> I tried to use a Java-based client, but it couldn't get round the firewall
19:40:58 <ais523> whereas Chatzilla was running on a mainframe with the relevant port open
19:41:16 <ais523> but the only Web browser was the corresponding version of Mozilla
19:41:34 <ais523> which was so old that I once managed to accidentally break Wikipedia pages with it until someone told me to stop
19:45:59 <ehird`> or: parenrc, but since that's still in development i guess not :)
19:46:34 <ais523> does it work on Solaris without being installed or in fact the executable going anywhere near the computer?
19:47:02 <RodgerTheGreat> construct something hideous out of bash scripts and netcat
19:47:16 <ais523> that's almost worth doing
19:48:11 <ais523> I was on this computer and had no working mouse, ruling out all the graphical editors preinstalled.
19:48:12 <RodgerTheGreat> it could only get better if you needed to do something involving bit shifting
19:48:32 <ais523> I don't know how to use vi, and emacs wasn't installed (and I couldn't install it without a web connection)
19:48:41 <ais523> so I edited with cat and sed
19:49:00 <ais523> (and I forgot about nano even though I'd used it on a different computer the previous day)
19:49:18 <ais523> Subversion seems to end up using it by default for some reason
19:49:51 <RodgerTheGreat> nano, as few people know, can be configured to syntax-hilight.
19:50:47 <ais523> the best thing about editing with sed is that my brother was watching, and asked "why does your edit command start with 's/^#.*/?", which is a valid question for someone used to Windows
19:51:05 <ais523> (the question mark was the end of the question rather than part of the sed command)
19:52:26 <ais523> RodgerTheGreat: can nano syntax-highlight Perl correctly?
19:52:40 <ais523> I've never yet found a syntax highlighter that can handle both its complicated quoting rules and regexps
19:53:34 <ais523> has MonkeyofDoom been around recently?
19:53:46 <ais523> They were asking for C-INTERCAL help a while ago, but I wasn't online at the time
19:58:41 <ais523> if MonkeyofDoom is reading this in the logs, my advice would be to try a more recent version (unless they're already trying the most recent version)
19:59:04 <ais523> the most recent is currently 1.26, obtainable from http://intercal.freeshell.org/download
19:59:28 <ais523> it makes fewer Linuxy assumptions than some of the older versions
19:59:47 <ais523> <sgml></shameless plug></sgml>
20:00:16 <RodgerTheGreat> holy SHIT. An article I just read suggests that "woot" is in fact an acronym!
20:00:30 <ais523> what, even if spelt with 0 rather than o?
20:00:53 <ais523> in that case, it should be spelt wotot from now on
20:02:20 * ais523 just noticed that they typoed on both CAPTCHA expansions
20:02:26 <ais523> it's actually CAPTTTTCAHA
20:04:30 <ais523> nowadays wotot should probably be wptot
20:08:37 <ais523> on the subject of acronyms, I once read a joke article that the name of the programming language C was in fact an acronym
20:08:51 <ais523> the article alleged it was a recursive acronym that stood for "C"
20:09:04 <ais523> if that isn't the real etymology, it ought to be
20:10:41 <ais523> I've heard a serious suggestion that C was named after B, but B was named after BCPL
20:10:47 <ais523> sparking huge debates about whether the next version of the language would be called D or P
20:13:29 * ais523 has just come across an article written by Microsoft attempting to explain leet
20:13:45 <ais523> it was by following a link; Microsoft took it down, but it's still in Wayback
20:14:35 <ais523> http://web.archive.org/web/20060101013059/http://microsoft.com/athome/security/children/kidtalk.mspx
20:15:53 <ais523> it's just a rather amusing incongruity
20:17:17 <oklopol> the first two keypoints sorta overlap
20:18:08 <ais523> no, they're obviously completely different; one is about numbers, and the other is about numbers /and/ symbols
20:18:31 <ais523> you have to pay good money to get an upgrade from the first keypoint to the second
20:19:35 -!- ais523 has quit ("Konversation terminated!").
20:26:48 -!- parenbot has joined.
20:28:43 -!- ehird` has left (?).
20:28:46 -!- ehird` has joined.
20:28:46 <parenbot> Somebody joined. As of yet, I don't know who or where, but somebody joined!
20:29:31 <RodgerTheGreat> what do you guys think of these character design ideas? http://nonlogic.org/dump/images/1197490667-snow.png
20:29:42 <ehird`> faxathisia: No, not yet. ;P
20:29:51 <ehird`> faxathisia: I added the join hook from a REPL
20:29:59 <ehird`> faxathisia: I'll put it in a file soon
20:30:08 <faxathisia> ehird`: Oh this bot is written in som schemeish language you wrote in C?
20:30:23 <ehird`> faxathisia: No, that implementation spiralled out of control :P
20:30:38 <ehird`> It's written in Common Lisp, because Common Lisp has cl-irc, and cl-irc is a very nice low-level IRC wrapper
20:31:04 <ehird`> (What, that it's written in Common Lisp? :-))
20:31:17 <faxathisia> nah.. something to do with finding a subsequence in a stream
20:31:24 <faxathisia> I would have fixed it but the maintainer freaked me out
20:31:55 <parenbot> time to visit a file, methinks
20:31:59 -!- parenbot has left (?).
20:32:15 <faxathisia> if it's looking for "foobar" and in the string "blah blah foofoobar baz" it will fail
20:32:26 <ehird`> "but the maintainer freaked me out" in what way
20:32:52 * faxathisia didn't manage to avoid that well :p... I think they were just bush and rushed at the time
20:37:06 <faxathisia> do you want a brainfuck evaluator in CL
20:37:23 <ehird`> it'll have the regular bot convenience things (google, etc.), some esolang interps, lots of lisp-related stuff, ...
20:39:23 -!- Tritonio_ has joined.
20:39:56 <ehird`> so, there'll be a good lisp system under it for its evaluators
20:40:14 * faxathisia is wondering if they should improve and add to SBCLs current FFI or rewrite it :|
20:40:21 <faxathisia> (er not rewrite it but write a new one)
20:40:42 <ehird`> i'm basically completely new to common lisp (not scheme though) so this will be my first 'major' thing
20:45:20 <ehird`> faxathisia: i'm planning on adding some kind of web interface to administrate the bot
20:45:22 <ehird`> with weblocks, or something
20:45:59 <faxathisia> and you can just code the site in lisp which is great
20:46:00 <ehird`> weblocks uses hunchentoot
20:46:07 <ehird`> weblocks is a lisp webframework :-)
20:46:13 <ehird`> http://common-lisp.net/project/cl-weblocks/
20:46:15 <faxathisia> (Would probably recommend agianst weblocks though...)
20:46:22 <ehird`> i've played with weblocks, i like it
20:46:29 <ehird`> why do would you not recommend it?
20:48:47 <faxathisia> oh I had some impression of it which seems false
20:48:56 <faxathisia> but I only looked at it like a year ago or something like that
20:49:14 <ehird`> it has only existed for a few months
20:51:53 * ehird` ponders whether parenbot should be modular/plugin-based/etc or not
20:52:23 <faxathisia> you can just hack it while it's running
20:52:35 <faxathisia> or should I say, swank instead of slime
20:53:22 <ehird`> welp i do have SLIME open all the time, but I'm not sure I'll write parenbot based entirely on SLIME :-)
20:53:26 <ehird`> it should work fine in slime, at least
20:53:41 <faxathisia> (A lot of fun using SLIME to mess with opengl interactively..)
20:56:59 <ehird`> faxathisia: i don't think i want it modular/etc just now. what do you think?
20:57:06 <ehird`> well, modular code of course
20:57:11 <ehird`> but not 'everything's a plugin'
20:57:16 <ehird`> the commands will just be part of parenbot
20:57:22 <faxathisia> yeah I think it's a bad idea to have everything a plugin
20:57:40 <faxathisia> I'd just run a swank server in the bot, then connect to that to edit the code
20:58:35 <faxathisia> (and this making me want to write some CL program more and more :p)
20:59:47 <ehird`> how is that making it a plugin?
20:59:50 <ehird`> i mean like a plugin with the bot
21:00:08 <ehird`> blah being, 'google' or 'eval' or something
21:00:45 <faxathisia> I would use slime and then you can just connect to the bot, load the blah file, or edit any part of the code at all
21:00:56 <ehird`> but that doesn't let you do that /from within irc/
21:01:16 <faxathisia> m.. I would not use IRC as a text editor
21:02:44 <ehird`> that's not using it as a text editor
21:02:58 <ehird`> the basic idea is that a plugin has-many commands
21:07:58 -!- ihope has joined.
21:13:10 <ehird`> parenbot: plugin-based or i just put commands in it
21:15:30 <ehird`> But that's woooorrrk! :P
21:17:04 <GregorR> parenbot = bot supporting parenthesis? :P
21:17:47 <ehird`> GregorR: No, bot written in Common Lisp with lots of generic, esolang and lisp stuff :P
21:18:53 * ehird` is getting tired of writing (X :accessor X :initarg :X :initform nil)
21:20:00 <faxathisia> (well CLOS seems to be very good for.. implementing CLOS)
21:20:32 <GregorR> Common Lisp ... Object System? Operating System?
21:21:05 <ehird`> faxathisia: Eh, since I'm doing plugins a 'plugin' class for inheriting makes sense.
21:21:09 <ehird`> So, I might as well have a parenbot class.
21:21:31 <ehird`> Urgh, I wish cl-irc wasn't so connection-centric.
21:21:39 <ehird`> What if I want multiple servers, huh? huh? punk >:(
21:21:45 <faxathisia> I'd probably just have an alist like '((bf #'<some function which does a bf thing based on input) (echo #'echo)) .. etc
21:22:05 <ehird`> That's just implementing CLOS on top of clos
21:22:11 <ehird`> Also, cl-irc uses CLOS :P
21:25:59 <ehird`> ihope: Should I allow plugins to be /registered/ with a parenbot, but not activated?
21:26:08 <ehird`> or should i just say: registered plugins = active plugins
21:27:13 <ehird`> any bot using the @ prefix in here?
21:30:08 <ihope> ehird`: yeah, registered but not activated.
21:30:37 <ehird`> ihope: what's the point of a loaded but inactive plugin though? why not just unload it?
21:31:34 <ihope> What if the plugin won't still be around to load when you want to use it?
21:32:01 <ihope> If that can't happen, go ahead and say registered means activated.
21:32:36 <ihope> Or, I guess, if loading it before you need to use it is easier in any way.
21:35:04 <ehird`> i doubt that will happen
21:35:08 <ehird`> short of someone deleting it :-)
21:35:18 <ehird`> (In which case, they'd unload it before deleting it, of course.)
21:36:15 <ehird`> ihope: Of course, you can still get the list of unactivated plugins
21:36:22 <ehird`> they'd just be noted as "available, but unloaded"
21:36:25 -!- oerjan has joined.
21:36:42 * faxathisia is baffled by all this, wonders why you don't just want it to do everything :p
21:36:46 <ihope> So there's no creating plugins on the fly, or loading plugins from random Internet places.
21:37:19 <ehird`> Of course not, plugins can contain arbitary Lisp code.
21:37:27 <ehird`> Do you think I'm *that* crazy? :-)
21:39:03 <oerjan> <RodgerTheGreat> whistling 99b while implementing fibo is a normal phase in the descent into gibbering insanity. Welcome to the party.
21:39:26 <oerjan> i say we are in need of something like lambdabot's @quote command
21:39:33 <ehird`> oerjan: parenbot will have that!
21:39:39 <ehird`> faxathisia: Well I do. :D
21:39:59 <ehird`> oerjan: Unless someone does @unload quote! :P
21:40:06 <ehird`> In which case you could just do @load quote again!
21:40:20 <ehird`> I think I might add a full-blown parser for the commands, with type-checking.
21:40:36 <ehird`> @factorial floob --> Error! Command factorial expects an integer as first parameter, got string
21:42:17 <GregorR> Oh, it's not actually here :P
21:42:35 <ihope> (Arithmetic overflow. Please increase width.)
21:42:51 <GregorR> Increase width -> eat bacon
21:43:24 <faxathisia> since you have arbitrary precision integers in CL...
21:43:34 <faxathisia> what if someone does @factorial 99999999999999999999999999999999999
21:43:43 <oerjan> GregorR: i can give you the last 100000000 digits or so if you want :)
21:43:53 <ihope> faxathisia: it takes a while?
21:44:00 <faxathisia> in general.. How are you going to force a command to terminate after a timeout?
21:44:26 <ehird`> faxathisia: uh, by doing just that
21:44:37 <ehird`> Just letting you kill processes.
21:44:46 <ehird`> And @factorial would have a sanity check, ofc
21:44:49 <faxathisia> so you'd spawn a new lisp process for each command?
21:45:00 <ehird`> i'd just spawn a new thread.
21:45:03 <GregorR> Non-incidentally, my Plof interpreter can do some basic Plof code now ^^
21:45:16 <GregorR> Simple 0-argument function calls, setting variables, etc.
21:45:38 <ehird`> GregorR: But Does It Have Reusable Continuations?(TM)
21:46:10 <ehird`> Well Add It, Before You Get Too Far And Irrevocably Destroy All Chances Of It(TM)
21:46:14 * ihope ponders a write-once filesystem
21:46:34 <GregorR> Nothing I Can Do To The Plof Grammar Will Affect It, Since That Would All Have To Do With The Underlying PSL [TM]
21:47:18 * oerjan ponders a write-exactly-three-times filesystem
21:47:43 <ehird`> faxathisia: how do I do keyword arguments with defaults in a CLOS method without making them a specific type? :/
21:47:54 <ehird`> can't do (arg default) since that's (arg type)
21:48:43 <oerjan> isn't there a top object type in CL?
21:49:02 <ihope> A write-exactly-three-times filesystem is pretty simple given a write-once filesystem.
21:49:09 <ihope> Just ignore the first two writes.
21:49:31 <oerjan> ah, but naturally it should require the three writes to be the same
21:49:42 <GregorR> ihope: write("/foo", "a"); read("/foo") /* empty because you ignored it */
21:50:19 <ihope> GregorR: but that's not writing exactly three times!
21:50:23 <ehird`> faxathisia: so how do i give a keyword argument a type? :-)
21:50:39 <GregorR> ihope: You should only be able to read after all three writes?
21:50:46 <faxathisia> honestly CLOS is just making things hard for you :p
21:51:03 <ehird`> (defmethod foo ((bot parenbot) ...) ...) ; parenbot is a type
21:51:14 <ehird`> i can't seem to do that with a kwarg, since it'd be taken as the default
21:51:25 <faxathisia> you cannot specialize on keywords or optionals
21:51:36 <faxathisia> the semantics of it would be too confusing.. there's too many ways it could work
21:57:09 * ehird` wonders where he should add the code to scan for plugins
21:58:32 <ihope> Scan for plugins? My.
21:59:32 <ehird`> oh wait, asdf will load them
21:59:40 <ehird`> so all i need to do is define a plugin superclass that takes note
22:00:00 <ehird`> faxathisia: well. in the loosest sense.
22:00:18 <ehird`> i just mean in my defsystem, in the :components list i'll add the files i have for plugins :-)
22:00:27 <ehird`> it would be interesting to actually use asdf though
22:00:51 <faxathisia> if you used asdf since you're using sbcl just hit (require :brainfuck) or whatever to load a plugin (require falls back to asdf:oos load-op)
22:01:30 <ehird`> (instead of a brainfuck plugin i think i'll have an esolangs plugin. does that sound ok?)
22:05:27 <faxathisia> A whole bunch of esolang interpreters written in CL would be a nice package
22:06:23 <ehird`> most commands will run an external program
22:06:37 <faxathisia> oh.. you don't want to actually code the interpreters in CL
22:06:50 <ehird`> it'd just make a new sbcl for it :-)
22:06:59 <ehird`> reason being if that process goes to hell the bot stays alive
22:08:50 <ehird`> faxathisia: seems reasonable to me, maybe not to you :-)
22:09:14 <ehird`> i mean, i'd have brainfuck.lisp, and underload.lisp, etc., and finally parenbot.lisp which would register them all as running a lisp interpreter on the appropriate interp
22:13:54 <ehird`> faxathisia: i mean, otherwise one command could f up the whole bot
22:14:13 <faxathisia> I mkdir on someone elses computer cause they had a lisp with eval
22:15:17 <ehird`> yeah, my eval command will run an sbcl process, kill everything that isn't 100% safe, run one command, then bail out
22:15:33 <ehird`> though that would kinda ruin variables :-)
22:17:45 -!- `_ has joined.
22:18:14 <ehird`> faxathisia: so, let's get this straight... parenbot plugin = asdf system + cl package?
22:18:39 <ehird`> which is not special in any way, just happens to import parenbot and define classes inheriting from parenbot:plugin?
22:20:37 <ehird`> ihope: `_: you can have an opinion on that too :P
22:20:58 -!- `_ has changed nick to ihioe_.
22:21:05 -!- ihioe_ has changed nick to ihope_.
22:22:18 -!- Tobias_Thanos has joined.
22:23:46 <ihope_> GregorR: wait, didn't you have some Oregonness at one point?
22:24:10 <GregorR> I am in fact in Oregon, but Comcast's hostname generation appears to be el retarded :P
22:25:00 <oerjan> so do you speak Oregano?
22:26:01 <ihope_> I don't know Oregano, but my good friend Alfredo Linguini is.
22:31:23 <ehird`> see 22:18-22:20 (it's 22:30)
22:32:42 <ehird`> i'm asking if its a good idea :P
22:33:30 <oerjan> oh, you were not asking _for_ a good idea. sorry.
22:36:44 <ihope_> ehird`: asking if what's a good idea?
22:37:11 <ehird`> the 22:18 - 22:20 stuff
22:37:30 <ehird`> "faxathisia: so, let" ... "nbot:plugin?"
22:39:04 * faxathisia doesn't know if it's a good idea or not..
22:39:11 <faxathisia> maybe just run with it and see what happens
22:39:45 <ehird`> it means that i can do crazy things like write a plugin, then
22:39:54 <ehird`> <ehird`> *load the-package-name
22:40:14 <ehird`> faxathisia: although this requires me to be able to access a list of all the subclasses of a given CLOS class
22:40:20 <ehird`> faxathisia: is that even possible?
22:40:25 <faxathisia> I'd just open emasc.. connect to the irc bot.. write the plugin
22:40:29 <faxathisia> it works without the boom in this case
22:41:02 <ehird`> faxathisia: i like having files
22:41:16 <faxathisia> yes you would be editing a file and sending the code from it into the lisp
22:41:34 <ehird`> well, the difference here is that you define a package, and the bot treats them as plugins
22:41:55 <ehird`> ... but unless there's a way to get a list of the subclasses of parenbot:plugin, i can forget about it
22:42:56 <faxathisia> you can list all the subclasses of a class
22:45:01 <faxathisia> reflective dynamic cool stuff undneath/backstage CLOS
22:45:17 <ehird`> ok, another way of thinkin about it: can i run some arbitary code when a class is subclassed?
22:45:25 <faxathisia> implementations are incomplete though, but this is SBCLs one
22:47:47 -!- Tobias_Thanos has quit ("Leaving").
22:51:25 <ehird`> is running some arbitary code on subclass possible though?
22:56:11 -!- sebbu has quit ("@+").