←2006-01-14 2006-01-15 2006-01-16→ ↑2006 ↑all
01:08:44 <SimonRC> GregorR: Without looking, I can tell that Egobot is written in Perl.
01:09:30 <SimonRC> I has to be high-level, because you are able to add features so fast.
01:09:31 <GregorR> OUCH
01:09:35 <GregorR> I am insulted :'(
01:09:42 <SimonRC> what's it in then?
01:09:44 <GregorR> C++
01:09:49 <SimonRC> eek!
01:09:54 <GregorR> I'm just that OMG1337
01:10:09 * SimonRC wouldn't fancy writing anything in C++.
01:10:33 <GregorR> Anything that can be written in Perl can be written maintainably in C or C++.
01:11:00 <SimonRC> hmm, ok
01:11:13 <SimonRC> I would have thought it would be harder work, though.
01:11:34 <SimonRC> how do arguments to triggers work?
01:11:37 <GregorR> Yes, but it's worth it because you can read it ten days later :P
01:11:42 <SimonRC> !help usertrigger
01:11:44 <GregorR> They go as input to the function
01:11:44 <EgoBot> To use an interpreter: <interpreter> <program> Note: <program> can be the actual program, an http:// URL, or a file:// URL which refers to my pseudofilesystem.
01:11:47 <SimonRC> !help usertrig
01:11:48 <GregorR> There's no help on it yet :P
01:11:50 <EgoBot> To use an interpreter: <interpreter> <program> Note: <program> can be the actual program, an http:// URL, or a file:// URL which refers to my pseudofilesystem.
01:11:53 <GregorR> Because I'm not even done with it yet.
01:12:08 <GregorR> I just got the basic functionality and then became temporarily apathetic.
01:12:17 <SimonRC> How would usertriggers in, say, befunge work?
01:12:23 <SimonRC> oops
01:12:28 <SimonRC> I meant brainfuck
01:12:43 <GregorR> Well, I have !numwarp working.
01:12:58 <GregorR> !numwarp does the BF numwarp program, and the args to !numwarp are the input.
01:12:58 <GregorR> So:
01:13:14 <GregorR> Wait, you have to type it, since it gives the results to whoever typed it :P
01:13:15 <GregorR> Type !numwarp 123
01:14:03 <SimonRC> !numwarp 123
01:14:06 <EgoBot> /\
01:14:26 <GregorR> I guess I'll finish that feature now :P
01:16:04 <SimonRC> WIBNI you could integrate the languages more closely, so that arguments are actual arguments to a function, or the initial tape contents or whatever.
01:16:37 <SimonRC> For that, you would need some kind of standard for the lowest level of esolangs, though.
01:16:46 <GregorR> EgoBot uses external interpreters.
01:16:50 <GregorR> So that would be a huge PITA.
01:17:01 <SimonRC> How about ".NUT"?
01:17:09 <GregorR> ...?
01:17:27 <SimonRC> I mean, that would be a good name for it.
01:17:41 <SimonRC> Maybe not practical.
01:17:47 <SimonRC> hmm
01:18:23 <SimonRC> Where is EgoBot's source?
01:18:30 <GregorR> In the files archive.
01:18:42 <GregorR> Approximately http://www.esolangs.org/files/egobot/
01:18:48 <GregorR> If I remember my URLs right.
01:19:08 <SimonRC> Add a !URLs command to deal with that.
01:19:10 <Keymaker> what is WIBNI?
01:19:21 <Keymaker> what is PITA?
01:19:22 <SimonRC> wouldn't it be nice if?
01:19:27 <Keymaker> ahh
01:19:27 <SimonRC> pain in the arse
01:19:33 <Keymaker> hehe
01:19:55 <Keymaker> o-k
01:20:40 <Keymaker> i'm going to make my language non turing-complete, and crazier
01:20:51 <Keymaker> i just decided..
01:21:27 <SimonRC> GregorR: idea: "!urls" "* Egoboit has URLs for: esolanger_map, forum, wiki, egobot_source_code" "!url map" "map is at: http://www.frappr.com/esolang"
01:21:32 <SimonRC> Keymaker: what's it like?
01:22:00 <GregorR> SimonRC: That would be pretty cool.
01:22:04 <Keymaker> you'll see when it's ready :)
01:22:15 <Keymaker> i'll replan it
01:22:22 <Keymaker> *i have to
01:22:53 <SimonRC> GregorR: even better: "/topic #esoteric, the international hub for esoteric programming language design and deployment -- use !urls to get useful urls"
01:23:20 <SimonRC> Keymaker: is it possibly useful like, say, SADOL?
01:23:28 <SimonRC> or Glass?
01:23:38 <SimonRC> or is it just weird and useless?
01:23:43 <GregorR> Glass is TC :P
01:23:51 <SimonRC> I know
01:23:56 <Keymaker> simonrc: hopefully weird and useless
01:24:04 <Keymaker> since i decided to make it not tc, and replan it
01:24:09 <Keymaker> the current version is a tc
01:24:14 <Keymaker> but i don't think it's interesting enough
01:24:52 <Keymaker> i'll make some tc later.. in the distant future
01:25:14 <Keymaker> although there is no need for them since there is brainfuck ;)
01:25:36 <GregorR> OK, lesse.
01:25:36 <GregorR> !reload
01:25:43 <GregorR> !help usertrig
01:25:47 <EgoBot> Use: usertrig <command> <trig-command> Function: manage user triggers. <command> may be add, del, list or show.
01:25:58 <GregorR> !usertrig list
01:26:01 <EgoBot> Huh?
01:26:05 <GregorR> Ouch :P
01:26:24 <GregorR> Oh, hah.
01:27:02 <GregorR> !reload
01:27:05 <GregorR> !usertrig list
01:27:07 <EgoBot> Triggers:
01:27:23 <GregorR> !usertrig add urls glass {M[m(_o)O!"Test"(_o)o.?]}
01:27:26 <EgoBot> Trigger added (urls)!
01:27:28 <GregorR> !urls
01:27:32 <EgoBot> Test
01:27:35 <GregorR> Sexy :)
01:28:08 <Keymaker> it's a nice idea, that url thing
01:28:15 <Keymaker> gonna add there all the sites?
01:28:44 <Keymaker> of course i mean every page there is in internet.
01:28:49 <GregorR> Naturally.
01:29:02 <Keymaker> nice
01:29:05 <GregorR> One last fix I need - usertrigs needs to cache.
01:29:13 <SimonRC> GregorR: is glass specially integrated into egobot?
01:29:52 <GregorR> SimonRC: No. The standard Glass interpreter has the capacity to use caches.
01:37:32 <GregorR> !reload
01:37:40 <GregorR> OK, now it should be able to save user triggers :)
01:38:38 <GregorR> Cool, it works :)
01:39:01 <GregorR> Now I just need to make a Glass class for URLs :)
01:44:42 <Keymaker> i think i'll terminate for this "evening"
01:44:44 <Keymaker> good night
01:44:53 <GregorR> Buhbye.
01:44:56 -!- Keymaker has left (?).
01:44:59 <GregorR> !glass file://glass/urls.glass
01:45:02 <EgoBot> OK
01:45:04 <GregorR> !urls
01:45:06 <EgoBot> Available URLs: egobot_source
01:45:09 <GregorR> !urls egobot_source
01:45:12 <EgoBot> http://www.esolangs.org/files/egobot/
01:45:16 <GregorR> I am a sexy beast.
01:47:33 <GregorR> !glass file://glass/urls.glass
01:47:36 <EgoBot> OK
01:47:40 <GregorR> !urls
01:47:44 <EgoBot> Available URLs: egobot_source logs map wiki
01:47:48 <GregorR> !urls wiki
01:47:50 <EgoBot> http://www.esolangs.org/wiki
01:47:53 <GregorR> ^_^
01:52:31 <SimonRC> Ah, yes, BANCstar.
01:52:42 <GregorR> ?
01:52:56 * SimonRC was reading
01:53:02 <SimonRC> look it up
01:55:14 <GregorR> Wowsa.
01:57:31 <GregorR> What other useful things could EgoBot do I wonder ...
01:59:09 <SimonRC> EMACS psychiatrist!
01:59:43 <GregorR> What other useful things could EgoBot do written in an esoteric programming language which cannot maintain state I wonder ...
01:59:52 <GregorR> What other useful things could EgoBot do written in an esoteric programming language which cannot maintain state *over invocations* I wonder ...
02:00:43 <GregorR> Maybe I need to make superstatic variables in Glass, so I could implement a randomiser with a lifespan ...
02:02:40 <GregorR> Or maybe I can do it a far more obvious way by just having a daemon :P
02:03:41 -!- Arrogant has joined.
02:03:52 <GregorR> Hello Not Particularly Arrogant.
02:04:35 <Arrogant> Ho.
02:04:35 <Arrogant> Hi&.
02:04:39 <Arrogant> What a convenient typo.
02:04:42 <GregorR> :P
02:04:51 <GregorR> Look at this awesome nonsense:
02:04:54 <GregorR> !usertrig show urls
02:04:56 <EgoBot> (urls): glass {M[m(_u)(URLs)!(_i)I!(_i)l.?(_u)u.?]}
02:05:02 <GregorR> !urls egobot_source
02:05:05 <EgoBot> http://www.esolangs.org/files/egobot/
02:05:10 <GregorR> ^_^
02:08:40 <GregorR> OOOOOOOOOOH, I've got it 8-D
02:09:25 <Arrogant> Woah, the folder is all SVNified.
02:09:54 <GregorR> Err, guess I didn't get rid of .svn :P
02:10:09 <GregorR> OK, I'll implement OMGAWESOME daemon mode user triggers when I get back from dinner.
02:10:31 <GregorR> It'll rock ... you'll see :)
02:10:36 <Arrogant> This guy knows a lot of languages.
02:12:24 <GregorR> Who?
02:13:20 <SimonRC> Does glass have conditionals?
02:13:41 <GregorR> Yes.
02:13:49 <GregorR> It's all on the Glass wiki page ...
02:14:12 * SimonRC missed it. /\
02:14:48 <SimonRC> And you can avoid all the horrible run-times that come from only having equality-to-zero testing.
02:16:24 <GregorR> Oh, I just upgraded the Glass interp in EgoBot, so I'll bet my BF interpreter in Glass finally works.
02:16:31 <GregorR> !bf_txtgen Hello, World!
02:16:51 <EgoBot> 118 +++++++++++[>+++++++>+++++++++>+++>++++<<<<-]>-----.>++.+++++++..+++.>>.<-.<<+++++++++++++++.>.+++.------.--------.>+. [213]
02:17:04 <GregorR> !glass {M[m(_b)(BF)!"+++++++++++[>+++++++>+++++++++>+++>++++<<<<-]>-----.>++.+++++++..+++.>>.<-.<<+++++++++++++++.>.+++.------.--------.>+."(_b)b.?]}
02:17:09 <GregorR> Err, whoops, not quite.
02:17:12 <GregorR> !glass {M[m(_b)(BF)!"+++++++++++[>+++++++>+++++++++>+++>++++<<<<-]>-----.>++.+++++++..+++.>>.<-.<<+++++++++++++++.>.+++.------.--------.>+."(_b)(bf).?]}
02:17:15 <EgoBot> Hello, World!
02:17:21 <GregorR> HAH!
02:17:34 <Arrogant> Should I be worried about a project whose version # is 0.0.0.2
02:17:57 <GregorR> I would be worried about anyone willing to use three .s in a version number :P
02:18:03 <Arrogant> Yeah.
02:18:16 <GregorR> What's this project?
02:18:20 <Arrogant> That's what had me worried initially. Then I saw there were 3 0's
02:18:26 <Arrogant> Eh, some irc library for Ruby
02:18:38 <GregorR> Trying to write competition for EgoBot? :P
02:18:50 <Arrogant> Hardly.
02:18:56 <Arrogant> Anything written in Ruby would be too slow
02:18:57 -!- CXII has joined.
02:19:06 <GregorR> 'ello CXI*
02:21:26 <Arrogant> I'm trying to see why people use Ruby and it just gets harder every day
02:21:55 <GregorR> Hah
02:22:22 <Arrogant> I compared the speeds between two very simple Ruby and Python scripts and Python was noticably faster
02:22:52 <GregorR> That's a difficult test to make legitimately ...
02:23:06 <Arrogant> All it did was create an array containing the lines of a file...
02:23:09 <GregorR> Maybe the startup time of Ruby is worse, but then Ruby interprets faster, for example.
02:23:39 <Arrogant> Maybe. Doesn't make me happy though.
02:26:18 <Arrogant> Computer Language Shootout shows Python to be significantly faster though.
02:27:34 <GregorR> I'm not actually advocating anything, just being devil's advocate :)
02:27:36 <GregorR> Err.
02:27:41 <GregorR> Well that was a stupid statement.
02:27:45 <SimonRC> heh
02:27:50 <SimonRC> Use Haskell!
02:27:51 <SimonRC> :-)
02:27:52 <Arrogant> I see what you mean.
02:28:11 <Arrogant> I really want to like Ruby but its speed is comparable to Javascript.
02:28:38 <Arrogant> Although it's much better than Javascript
02:28:42 <lament> heh
02:33:46 <SimonRC> One of the problems of programming languages based on function calls is the bracketing problem.
02:34:44 <lament> ((((((((((()))))))))))
02:35:11 <SimonRC> Either you have an apply operator, like unlambda, resulting in huge numbers of ````````````, or you have brackets, like LISP, but these look *realy* bad when all identifiers are one character (as I plan to have).
02:35:51 <SimonRC> SADOL gets round it by not having first-class functions, but it isn;t functional.
02:35:58 <lament> i think lambda calculus solution is not all that bad
02:36:11 <SimonRC> I shall have to invent some bizzare precedance system or something.
02:36:26 <lament> do your functions take many arguments?
02:36:46 <SimonRC> Dunno
02:36:59 <SimonRC> probably only a couple in most cases.
02:37:15 <SimonRC> I will want currying, though, like Haskell has.
02:37:21 <lament> ah
02:37:21 <SimonRC> But first bed, as it is 2:36am.
02:37:43 * SimonRC goes to bed
02:38:27 <fizzie> 4:36am here. :p
02:39:13 -!- CXI has quit (Connection timed out).
02:42:41 <Arrogant> Wimps. It's 9:42pm here.
02:42:43 <Arrogant> Oh. Wait.
03:22:26 -!- Sgeo has quit (Remote closed the connection).
03:24:02 -!- Sgeo has joined.
03:38:03 -!- Arrogant has quit ("I AM QUIT HAVE A NICE DAY").
04:26:40 <GregorR> !ps
04:26:42 <EgoBot> No repeats.
04:30:32 -!- CXII has changed nick to CXI.
04:44:30 <GregorR> !reload
04:44:47 <GregorR> !reload
04:45:04 <GregorR> !usertrig add urls glass {M[m(_u)(URLs)!(_i)I!(_i)l.?(_u)u.?]}
04:45:08 <EgoBot> Trigger added (urls)!
04:45:59 <GregorR> !urls
05:12:57 <GregorR> !urls
05:13:00 <EgoBot> No repeats.
05:13:04 <GregorR> !blah
05:13:05 <GregorR> !urls
05:13:09 <EgoBot> Huh?
05:13:12 <GregorR> Grr
05:24:05 <GregorR> !urls
05:24:09 <EgoBot> No repeats.
06:34:47 -!- GregorR has quit (Remote closed the connection).
06:35:18 -!- Sgeo has quit (clarke.freenode.net irc.freenode.net).
06:35:18 -!- calamari has quit (clarke.freenode.net irc.freenode.net).
06:35:18 -!- EgoBot has quit (clarke.freenode.net irc.freenode.net).
06:36:15 -!- Sgeo has joined.
06:36:15 -!- EgoBot has joined.
06:36:15 -!- calamari has joined.
06:36:57 -!- GregorR has joined.
06:41:30 -!- calamari has quit (clarke.freenode.net irc.freenode.net).
06:41:30 -!- EgoBot has quit (clarke.freenode.net irc.freenode.net).
06:41:30 -!- Sgeo has quit (clarke.freenode.net irc.freenode.net).
06:44:01 -!- Sgeo has joined.
06:44:03 -!- EgoBot has joined.
06:44:03 -!- calamari has joined.
06:45:02 <GregorR> Good ol' netsplits.
06:49:03 -!- calamari has quit (Read error: 104 (Connection reset by peer)).
06:54:10 <fungebob> http://esoteric.voxelperfect.net/wiki/Main_Page
06:54:24 -!- calamari has joined.
06:56:07 <GregorR> fungebob: Umm?
06:56:13 <GregorR> fungebob: Yes, that's the main page ...
06:56:57 <fungebob> sorry man, i was trying to paste that into an im to a friend
06:57:01 <fungebob> kinda tired
06:57:06 <GregorR> Ahh, good then.
06:58:16 <GregorR> I'm trying to figure out a good way to make EgoBot support daemons ...
06:58:17 -!- CXI has quit (Connection timed out).
06:58:25 <GregorR> Without it ending up as a quick and handy way to flood.
07:09:00 -!- calamari has quit ("Leaving").
07:14:57 -!- Sgeo has quit.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
09:11:28 -!- fungebob has quit (Read error: 110 (Connection timed out)).
09:32:14 -!- lirthy has quit ("you should feel more feel you should take more take").
09:36:57 -!- lirthy has joined.
10:31:08 -!- J|x has joined.
11:55:06 -!- CXI has joined.
12:00:56 <SimonRC> GregorR: maybe add passwords?
12:01:03 * SimonRC goes to breakfast
23:01:02 -!- clog has joined.
23:01:02 -!- clog has joined.
23:27:45 -!- GregorR-L has joined.
23:28:08 <GregorR-L> So, shall we allow !urls to usurp the URLs in the topic?
23:28:32 <GregorR-L> !urls logs
23:28:35 <SimonRC> yes
23:28:37 <EgoBot> http://tunes.org/~nef/logs/esoteric/ or http://meme.b9.com/cdates.html?channel=esoteric
23:29:36 <GregorR-L> Passwords?
23:30:26 <SimonRC> maybe only you can do it?
23:31:01 <GregorR-L> Oh, for daemons?
23:31:58 <GregorR-L> That would probably be best, but sort of defeats the community spirit :P
23:32:59 <GregorR-L> OH, I've got it! If a line of input is given on the channel, it can give a line of output on the channel.
23:33:10 <GregorR-L> So you can't just make a spam loop, because it would need input.
23:38:46 -!- ihope has joined.
23:38:57 <ihope> Ahoy!
23:39:03 <ihope> !bf_txtgen Ahoy
23:39:15 <EgoBot> 60 +++++++++++++[>+++++>++++++++>><<<<-]>.>.+++++++.++++++++++. [762]
23:39:18 <GregorR-L> It's so much cooler to BF it :P
23:39:22 <ihope> :-)
23:39:27 <ihope> More >><<...
23:40:01 <ihope> Hmm...
23:40:02 <ihope> !bf_txtgen ................................................................
23:40:07 <GregorR-L> Blame textgen.java
23:40:29 <GregorR-L> It would get better if I let it go for more generations, too.
23:40:36 <ihope> Yeah...
23:40:47 <GregorR-L> But I can't predict, so I just set it to 1000
23:40:51 <ihope> !ps
23:40:54 <EgoBot> 1 ihope: bf_txtgen
23:40:56 <EgoBot> 2 ihope: ps
23:40:58 <EgoBot> 119 +++++++++++++++[>+++>+++>+++>+++<<<<-]>+.....>>+......<+....>.........<<.......>..<.....>...>>+...............<........ [900]
23:41:03 <ihope> Aha.
23:41:28 <GregorR-L> lol
23:41:31 <GregorR-L> That's pretty pathetic.
23:41:41 <ihope> Mm-hmm.
23:42:09 <ihope> So what's the Church numeral for 256, in Unlambda format?
23:45:38 <GregorR-L> I think I need to continue work on crosslibc.
23:49:10 <ihope> !bf_txtgen ~}|{zyxwvutsrqponmlkjihgfedcba`_^]\\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:
23:49:43 <ihope> Hmm, didn't mean to stop in the middle. Ah well.
23:50:00 <EgoBot> 237 ++++++++++++++[>++++++++>+++++++++>+++>+<<<<-]>>.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.<---.-.-.-.>-----.-.<---.>--.-.<---.-.-.-.-.>------.-.-.<----..-.-.-.-.>------.-.-.-.-.-.-.<--------.-.-.>----.<--.>--.-.<---.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. [947]
23:50:21 <ihope> Omgwtfbbq.
23:51:07 <GregorR-L> Could be worse.
23:52:08 <ihope> ...That looks like Morse code!
23:53:42 <ihope> !bf --.
23:53:46 <EgoBot> ţ
23:53:51 <ihope> Hmm.
23:54:25 <GregorR-L> Default BF is 16-bit
23:54:31 <GregorR-L> !bf8 -.
23:54:34 <EgoBot> ˙
23:54:44 <ihope> Is there a !bf7?
23:54:48 <GregorR-L> No :P
23:54:50 <GregorR-L> !help
23:54:55 <EgoBot> help ps kill i eof flush show ls bf_txtgen usertrig
23:54:56 <EgoBot> 1l 2l adjust axo befunge bch bf{8,[16],32,64} glass glypho kipple lambda lazyk malbolge pbrain rail sadol sceql trigger udage01 unlambda
23:55:43 <ihope> !bf64 -.
23:55:51 <EgoBot> ˙
23:55:53 <GregorR-L> Yes, bf64 supports unicode BTW
23:55:55 <ihope> Aww.
23:56:06 <GregorR-L> Don't ask me to repro a unicode char BTW :P
23:56:13 <ihope> :-)
23:56:16 <GregorR-L> It's based on EgoBFI :)
23:56:25 <GregorR-L> The best BFI ever.
23:56:26 <ihope> Hmm... /me looks up
23:56:53 <ihope> Will you ever make the bot able to output all 18446744073709551616 possible characters?
23:57:15 <GregorR-L> If you organized the code carefully, it could.
23:57:19 <GregorR-L> Not on one line :P
23:57:23 <ihope> :-D
23:57:29 <ihope> Just what is a BFI?
23:57:31 <GregorR-L> And it would take a long time, since there's a 1.5 second gap between lines.
23:57:35 <GregorR-L> Brainfuck Interpreter
23:57:53 <ihope> Ah.
23:58:09 <GregorR-L> EgoBF also has a compiler and a JIT compiler.
23:58:27 <ihope> !bf64 +.[+.]
23:58:32 <EgoBot> <CTCP>
23:58:36 <ihope> !kill 1
23:58:43 <GregorR-L> Hahahahaha
23:58:48 <ihope> Aah!
23:58:48 <GregorR-L> !flush 1
23:58:50 <GregorR-L> !kill 1
23:58:56 <GregorR-L> !ps
23:58:57 <ihope> It's attacking me!
23:58:57 <EgoBot> Process 1 killed.
23:59:01 <EgoBot> 1 GregorR-L: ps
23:59:11 <GregorR-L> Don't abuse the bot if you don't know how to flush the output buffer :P
23:59:28 <ihope> :-)
←2006-01-14 2006-01-15 2006-01-16→ ↑2006 ↑all