00:01:33 <oerjan> the /hackenv/ shouldn't be there
00:01:45 <HackEgo> #!/bin/bash \ if [ "$1" ] \ then \ echo 'http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/'"$1" \ else \ echo 'http://codu.org/projects/hackbot/fshg/' \ fi
00:03:29 <HackEgo> /hackenv/bin:/opt/python27/bin:/opt/ghc/bin:/usr/bin:/bin
00:06:10 <nortti_> does anyone here have any experience with unix v[567]
00:06:52 <oerjan> istr someone here tried to get something running on the earliest unix possible
00:07:49 <oerjan> by "possible", i mean the earliest that was at all reasonable
00:09:03 <kallisti> you know what would be awesome.. hackbot + simh images
00:09:33 -!- Patashu[Zzz] has changed nick to Patashu.
00:09:37 <oerjan> nortti_: i'm not implying i remember this at all clearly
00:10:35 <nortti_> what was the command to download data to HackEgo
00:11:00 -!- ais523 has quit.
00:11:57 <nortti_> but yeah. unix v7 would be fun as it is at least usable for programming kinda modernly
00:12:44 <nortti_> (v6 doesn't have this little thing called stdio)
00:13:18 <itidus21> i forgot that day to day use doesn't normally include programming
00:14:14 <nortti_> oh and from my experience v5 and v6 don't have malloc
00:14:25 <HackEgo> Description:.Debian GNU/Linux
00:14:49 <HackEgo> Linux umlbox 3.0.8-umlbox #2 Sun Nov 13 21:30:28 UTC 2011 x86_64 GNU/Linux
00:16:39 <nortti_> HackEgo with old unix images might actually be feasible as some old unixes are now under bsd license
00:17:35 <kallisti> it would be nice to switch between them arbitrarily, but how would it be possible to fetch data into the simulator?
00:19:05 <kallisti> (and obviously mercurial is out of the question)
00:19:30 <kallisti> what kind of console languages do these things even run?
00:19:57 <nortti_> original bourne shell, ed sceiprs
00:21:05 <nortti_> oh. and little warning. ed is the only text editor on research unixes 0-7
00:21:09 <kallisti> hm, so technically it should be possible to fetch data from a URL and place it some file on the system.
00:21:37 <kallisti> even if you have to do so through ed.
00:21:54 <nortti_> yes. maybe there would be uuencode system
00:22:20 <nortti_> so special chars wouldn't mess it up
00:22:50 <nortti_> # is default char for backspace btw
00:24:19 <nortti_> stty erase '^H' should fix that
00:24:27 * kallisti comes back to #esoteric, and something exciting is happening.
00:25:50 <kallisti> nortti_: is that what you're actually working on, or...?
00:26:28 <kallisti> well, "need" is the wrong word.
00:27:20 <nortti_> not really. but I'll tell you if I find sonething interesting to do
00:28:06 <kallisti> it doesn't really need to be interesting. In fact, the less interesting it is the more suited it is, most likely.
00:28:50 * kallisti knowledge of archaic hardware = 0
00:29:20 <nortti_> ok. do you know how to get daemon running on HackEgo
00:31:16 <nortti_> I mean HackEgo has a timeout period for every process
00:31:32 <kallisti> and you want it to not do that.
00:31:38 <oerjan> i thought HackEgo ran each command in a separate chroot
00:31:53 <oerjan> and removed it afterwards...
00:32:06 <oerjan> after merging the repositories
00:33:00 <kallisti> I'd have to dive through the source to figure out how to make that possible. Would you want it to be a seperate set of commands from the typical interface?
00:33:59 * oerjan would assume only Gregor could make such a change...
00:35:23 <kallisti> I'm actually basically going to do something sort of like that with my current perl bot.
00:35:57 <kallisti> oh yes. I have a bot written in perl.
00:36:10 <kallisti> I should probably put it on github or something.
00:36:56 <kallisti> it's pretty easy to add things to it. you could do all the chroot jail stuff as a plugin.
00:37:01 <nortti_> actually I think I could integrate simh in my own irc bot
00:38:31 <kallisti> yes, should be (fairly) painless.
00:39:26 <nortti_> you can play with it on this channel or on #esoteric-en. #help should show you the start and you can ask more about it from me
00:39:48 <Gregor> Yeah, HackEgo isn't designed for daemons.
00:39:53 <Gregor> I couldn't think of a way to do that safely.
00:39:57 <Gregor> If you have suggestions, lay 'em on me.
00:40:29 <nortti_> oonbotti: do you still work?
00:40:56 <nortti_> ok. my code cleaning didn't break it this time
00:47:43 <kallisti> here's some examples of what a plugin looks like with the perl bot: http://sprunge.us/beGU?perl and http://sprunge.us/aVeD?perl
00:47:56 <kallisti> so you can see if you're interested.
00:48:39 * kallisti is about to switch from using Tie::Persistent to Tie::Hash::MongoDB for plugin persistence, since the former is kind of bad.
00:51:26 <kallisti> of course, you would need to use perl.
00:52:50 -!- oerjan has quit (Quit: Good night).
00:53:26 <kallisti> not semantic. just needless verbosity.
00:57:28 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom
00:57:35 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom
00:57:58 <HackEgo> USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND \ 0 1 0.0 0.1 912 276 ? S 00:57 0:00 /init \ 0 2 0.0 0.0 0 0 ? S 00:57 0:00 [kthreadd] \ 0 3 0.0 0.0 0 0 ? S 00:57 0:00 [ksoftirqd/0] \ 0 4 0.0 0.0 0 0 ? S 00:57 0:00 [kworker/0:0] \ 0 5 0.0 0.0 0
01:25:05 -!- nortti_ has quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )).
01:30:52 -!- rolebot has joined.
01:30:57 -!- Vorpal has quit (Ping timeout: 276 seconds).
01:31:01 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: unload: not found
01:32:45 <kallisti> `perl use Rolebot::Config; $Rolebot::Config::cmd_prefix='~$';
01:32:48 <HackEgo> Can't open perl script "use Rolebot::Config; $Rolebot::Config::cmd_prefix='~$';": No such file or directory
01:33:26 -!- rolebot has quit (Remote host closed the connection).
01:34:22 -!- rolebot has joined.
01:34:26 <rolebot> Commands begin with ~ or $ | Use help <name> to get more help on a specific command or category. | Categories: Admin, Messages, RP | Misc. commands: frink, lastsaid, seen, time, words
01:35:31 <kallisti> https://www.youtube.com/watch?v=ZZ5LpwO-An4
01:35:37 <rolebot> HEYYEYAAEYAAAEYAEYAA - YouTube
01:57:37 -!- Nisstyre has quit (Ping timeout: 246 seconds).
02:07:37 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
02:12:15 -!- Nisstyre has joined.
02:24:58 -!- lazard has quit (Ping timeout: 265 seconds).
02:49:04 -!- edwardk has quit (Ping timeout: 246 seconds).
02:51:38 -!- edwardk has joined.
03:09:11 <augur> there's a guy on the emp servers
03:09:28 <augur> and for a second i thought it might be oklopol
03:20:16 <kallisti> parametric subtyping could be interesting
03:20:43 <kallisti> so a type T x where T x is a subtype of x
03:20:50 <kallisti> does something like this already exist?
03:21:27 <edwardk> kallisti: in other languages, not scala
03:21:42 <kallisti> er, not sure why scala was the default choice.
03:21:50 <edwardk> sorry, thought i was in #scala when i replied
03:22:16 <kallisti> you're in the weird part of freenode.
03:22:19 <edwardk> you can do that in c++ with a template for instance
03:22:47 <edwardk> template <class Baseclass, class Renderer> class TextureTemplate : public Baseclass
03:22:49 <kallisti> but C++ templates are just glorified text macros.
03:28:05 <kallisti> which, I guess doesn't really mean much. it's still a "type constructor" of some description.
03:31:36 <kallisti> edwardk: would you recommend learning Scala?
03:32:32 <kallisti> I've been looking at branching out from Haskell into hybrid FP languages. I was thinking either Clojure or Scala.
03:32:39 <kallisti> but may O'Caml would be a good choice.
03:32:40 <edwardk> when programming in haskell, when the compiler craps out i know its my code and i can fix it accordingly
03:33:07 <edwardk> when programming in scala maybe 1 in 10 times i find a bug its because of a bug in the scala compiler, not my code
03:35:14 <edwardk> i have perfectly well define scala code that causes their compiler to just crap out and emit partial classes thinking they are closed and they have told me they just don't intend to fix it
03:36:15 <kallisti> specs are just figments of your imagination.
03:37:45 <edwardk> scala is probably the most usable strict functional language to me, and that is sad ;)
03:37:59 <kallisti> these days my programming is mostly in Haskell, Perl, or bash. I'm not sure if this is good (I've settled on a set of tools I find applicable to most situations) or bad (I'm getting too comfortable and should dabble in other things for a while)
03:38:17 <edwardk> ocaml is easy to understand how it the resulting code gets built, it plugs into an gcc like toolchain very easily
04:00:58 -!- azaq23 has quit (Quit: Leaving.).
04:58:54 -!- Chaotic_D has joined.
05:01:21 <Chaotic_D> I'm searching. ... but I guess I'm trying really hard not to find anything. and succeeding.
05:04:13 -!- Chaotic_D has left.
05:12:03 <kallisti> maybe he was looking for #soteric
05:51:01 -!- ais523 has joined.
07:08:52 <fizzie> I... don't suppose anyone would know offhand whether a European driver's license is a good enough ID for the "you must be able to show ID" requirement Belgian print-it-yourself PDF railway tickets have?
07:08:53 -!- edwardk has quit (Quit: Computer has gone to sleep.).
07:09:38 <olsner> I guess it depends on the railway company what they accept
07:10:19 <fizzie> It's SNCB, the Belgian national railway company.
07:10:29 <fizzie> Maybe it's here in the FAQ. (Maybe it's not.)
07:11:34 -!- ais523 has quit (Ping timeout: 246 seconds).
07:11:38 -!- edwardk has joined.
07:40:58 -!- ais523 has joined.
09:19:31 -!- edwardk_ has joined.
09:21:07 -!- edwardk has quit (Ping timeout: 240 seconds).
09:21:08 -!- edwardk_ has changed nick to edwardk.
09:40:26 <fizzie> Oh no! We should all get to cover.
09:41:18 <itidus21> in order to do anything you have to concede to not do anything else, until you are done
09:43:28 <itidus21> so people set up the category of time wasted. that doing a thing is either wasting time or it isn't
09:44:56 <itidus21> then, there is selecting from among the activities deemed to be not wasting time, so they say, what interests you? what can you do?
09:45:37 <itidus21> with this point of view, time spent watching videos is wasted on a blind man, and time spent listening to music is wasted on a deaf man
09:46:21 <itidus21> but if a man is presented with a foreign text, he could read it if he invested sufficient time in learning the foreign language
09:47:45 <itidus21> and interests are sometimes circumstantial, such as being interested in things you already had some exposure to, or things which play into your biases
09:51:24 <itidus21> but also it is advised by many to not indulge in activities for pleasure which often comes at others pain, or wealth which often comes at others loss, or power which often comes with corruption
09:51:24 -!- augur has quit (Read error: Connection reset by peer).
09:52:50 <itidus21> im starting to spin away from reality though
09:54:10 <itidus21> anyway, a business specializes in this and concedes to not specialize in that; a shop specializes in selling X, and concedes to not sell Y
09:54:29 <itidus21> a book's pages discuss X and concede to not discuss Y
09:56:24 <itidus21> and a person is at place X and concedes not to be at anyplace Y;
09:59:46 <itidus21> maybe my point is that it's wrong to view it as a concession
10:14:06 -!- DHeadshot has joined.
10:20:38 -!- DH____ has joined.
10:20:39 -!- DHeadshot has quit (Read error: Connection reset by peer).
10:21:32 -!- DH____ has quit (Read error: Connection reset by peer).
10:21:38 -!- DHeadshot has joined.
11:00:13 <ion> Daywalt Horror: There’s No Such Thing… http://youtu.be/TJytKD2Kt-w
11:00:14 <rolebot> DAYWALT HORROR: There's No Such Thing... - YouTube
11:08:02 -!- TodPunk has quit (Ping timeout: 252 seconds).
11:30:48 -!- Phantom_Hoover has joined.
12:04:02 -!- edwardk has quit (Quit: Computer has gone to sleep.).
12:22:44 -!- azaq23 has joined.
12:22:52 -!- azaq23 has quit (Max SendQ exceeded).
12:35:43 <nortti> do you have any idea why simh pdp11 emulator eats some parts of the starts of input stream if it is from pipe or file?
12:46:01 <fizzie> Maybe it expects that files have some kind of a header? (Or it's just buggy.)
12:46:30 <fizzie> The source would at least know.
12:47:03 <nortti> I mean like pdp11 < input
12:47:45 <nortti> also it chopd off bytes at the start of every line
12:49:21 <fizzie> ./sim_console.c:1135:if (!isatty (fileno (stdin))) /* skip if !tty */
12:49:24 <fizzie> ./sim_console.c:1177:if (!isatty (fileno (stdin))) /* skip if !tty */
12:49:27 <fizzie> ./sim_console.c:1192:if (!isatty (fileno (stdin))) /* skip if !tty */
12:49:30 <fizzie> I'd check those bits first.
12:49:57 -!- elliott has joined.
12:50:07 <elliott> Deewiant: What's the UTF-8 byte sequence for the Unicode FULL BLOCK character?
12:50:39 <fizzie> I'm not Deewiant, but I believe 0xE2 0x96 0x88.
12:51:19 <elliott> I was waiting for Deewiant to confirm it.
12:51:35 -!- elliott has left ("Leaving").
12:52:09 -!- elliott has joined.
12:52:12 <elliott> â~V~Hâ~V~Hâ~V~Hâ~V~Hâ~V~Hâ~V~Hâ
12:52:24 <elliott> Why is that happening? I'm using a UTF-8 terminal all proper and evreything.
12:52:29 <elliott> Maybe this function is messing it up.
12:53:07 <elliott> Deewiant: Ah, addch is being called on each byte of the UTF-8 thing.
12:53:09 <Deewiant> That first character is U+00E2 so that's latin-1 (or another latin-x) somewhere.
12:53:14 <elliott> How do I make that work? :(
12:53:38 <elliott> waddch appears to be window-addch, not wide-addch.
12:54:24 <elliott> Are you sure you know anything any more?
12:54:43 <Deewiant> Try adding A_ALTCHARSET to the characters.
12:55:16 <itidus21> if you can learn from your false axioms, then it's less likely to be a dream
12:55:30 <fizzie> addch ACS_BLOCK instead and hope things work out right?
12:55:33 <Deewiant> elliott: Er, also: are you linking to libncursesw?
12:55:57 <elliott> Deewiant: -lncurses, apparently. I guess I should change that? But I thought those were The Same in 2012.
12:55:59 <Deewiant> elliott: Literally +, though it's probably a high bit mask thing so | is more semantic.
12:56:42 <Deewiant> The libncurses.so here is 44K smaller than the libncursesw.so.
12:57:46 <fizzie> There's an add_wch thing too, but I have no idea when it comes to the whole ncurses/ncursesw mess. It certainly doesn't feel like 2012 if you go in there.
12:57:55 <Deewiant> Yes, I just found that as well.
12:58:23 <Deewiant> You might need to setlocale(), too.
12:58:25 -!- boily has joined.
12:58:25 -!- boily has quit (Client Quit).
12:58:37 -!- boily has joined.
12:59:04 <elliott> fizzie: What header is ACS_BLOCK in. :(
12:59:45 <fizzie> It's in my 'man addch' which just mentions <curses.h>.
13:00:06 <nortti> hmm. I changed sim_console source so it thinks it is a tty. It still doesn't work
13:00:57 <elliott> fizzie: ACS_BLOCK shows as the digit 0. :/
13:01:40 <elliott> I will try Deewiant's idea.
13:01:49 <elliott> Deewiant: By the way, these characters need to be coloured.
13:01:56 <elliott> Will A_ALTCHARSET mess that up?
13:02:06 <Deewiant> I don't know, I'm just googling stuff.
13:02:41 <elliott> That is what I need you for.
13:03:06 <elliott> So, add_wch(0x2588), I suppose.
13:03:07 <Deewiant> And grepping, too, if fizzie hadn't answered the ACS_BLOCK header thing.
13:03:14 <elliott> Oh, wait, it's a pointer, what.
13:03:56 <Deewiant> You need to use setcchar() to initialize it, apparently.
13:04:11 <Deewiant> That takes a const wchar_t* and turns it into a cchar_t.
13:04:19 <Deewiant> Along with the colour and whatnot.
13:04:20 <elliott> A const wchar_t * and a thousand other parameters.
13:04:21 * itidus21 hunts down whoever designed this.
13:04:38 <elliott> Anyway, uh. Maybe I will just use octothorpes instead.
13:04:42 <Deewiant> The last parameter is evidently reserved and must be NULL.
13:04:51 <Deewiant> Did you do the libncursesw thing?
13:05:37 <elliott> Oh. No. Was the expectation that that would fix the original solution?
13:06:07 <Deewiant> setlocale(LC_ALL, "") if I recall the incantation correctly.
13:10:01 <fizzie> nortti: I'unno, assuming the POSIX impls it seems to be just read()ing a single byte at a time, which should happen more or less similarly no matter where the input comes from. But it's a bit convoluted code, I'm not sure what that whole KFLAG deal is.
13:10:29 <elliott> Is this the right character?
13:10:48 <fizzie> It looks like a block to me.
13:11:05 <elliott> Thanks Deewiant you are the "best" (best here is used figuratively).
13:11:06 -!- elliott has left ("Leaving").
13:11:17 -!- fizzie has set topic: The Unicode lookup channel | Individuals guilty of ruining this channel: itidus21 (ex officio), oerjan (ex cathedra), olsner (k ex), others (see /names) | http://codu.org/logs/_esoteric/.
13:11:21 <Deewiant> And yes, that's the right character.
13:11:55 <Deewiant> Now I wonder what ended up being necessary.
13:11:57 <fizzie> I was going to do that /topic thing right after e first left, but didn't manage before this add-on question.
13:14:26 -!- elliott has joined.
13:14:33 <elliott> Is there a block character like that that isn't quite as tall?
13:14:49 <Deewiant> U+2587 LOWER SEVEN EIGHTHS BLOCK ?
13:15:08 <elliott> Preferably vertically centred? It is okay if this is impossible.
13:19:44 <Deewiant> See e.g. http://www.alanwood.net/unicode/block_elements.html
13:19:44 <rolebot> Block Elements – Test for Unicode support in Web browsers
13:21:09 <rolebot> Commands begin with ~ or $ | Use help <name> to get more help on a specific command or category. | Categories: Messages, RP | Misc. commands: frink, lastsaid, seen, time, words
13:21:19 <rolebot> Messages commands: messages, tell
13:21:29 <rolebot> Usage: system [<system name>] -- switches the dice roller to another system
13:21:33 <rolebot> Usage: frink <expression> -- Executes a frink expression. Frink is a powerful calculator program. See http://futureboy.us/frinkdocs/ for more information.
13:22:11 <elliott> Is it really going to spam every time someone pastes a link in the channel?
13:22:36 <elliott> (Amusingly both @dice and `frink already exist...)
13:23:14 <Deewiant> Looks like kallisti put it here about 12 hours ago.
13:23:30 -!- elliott has left ("Bye!").
13:23:43 -!- Patashu has changed nick to Patashu[Zzz].
13:24:36 <nortti> rolebot has no echo commabd?
13:24:56 <rolebot> Usage: words [-dhNo] [DATASETS...] [NUMBER_OF_WORDS]
13:24:56 <rolebot> .. -l, --list list valid datasets
13:24:56 <rolebot> .. -d, --debug debugging output
13:26:41 <rolebot> Not in scope: data constructor `PutStrLn'
13:26:41 <lambdabot> Not in scope: data constructor `PutStrLn'
13:27:57 <rolebot> päristanisimmissä tukoiltakuluvisuu taituminään otsillaajenetukeavaltu saantua ruosi puneinäni innoilisto sammiltasin leimpiensa
13:28:17 <rolebot> ..mueval: Prelude.undefined
13:28:39 <fizzie> I only noticed that link title thing.
13:28:41 <rolebot> ..mueval: Prelude.undefined
13:29:31 <fizzie> Should I quiet it for the moment, maybe?
13:30:06 <Deewiant> If you want. Alternatively, wait until it's a problem and hope you're online? :-P
13:30:19 <nortti> $tell kallisti so you rolebot really is lambdabot clone
13:31:08 <fizzie> I'm possibly not online terribly well from here, since we need to get all our tourismy stuff done in the evenings.
13:31:16 -!- ChanServ has set channel mode: +q *!*@h47.28.18.98.dynamic.ip.windstream.net.
13:31:32 <fizzie> I was hoping for a nick-based +q.
13:31:35 <Deewiant> Does that shut up kallisti as well?
13:31:46 <fizzie> That's what I get for trusting ChanServ to do the sensible thing.
13:32:02 -!- ChanServ has set channel mode: -q *!*@h47.28.18.98.dynamic.ip.windstream.net.
13:32:09 -!- ChanServ has set channel mode: +o fizzie.
13:32:23 -!- fizzie has set channel mode: +q rolebot!*@*.
13:32:30 -!- fizzie has set channel mode: -o fizzie.
13:33:12 <fizzie> $tell kallisti make that thing not answer plain '>' but to use some other prefix and I'll -q it.
13:37:23 -!- elliott has joined.
13:37:28 <elliott> Also $ is a supremely bad bot prefix.
13:37:32 <elliott> (And hugging three bot prefices is just rude.)
13:37:52 <elliott> (...as is spewing a line on every single line with a URL in it, but I already covered that.)
13:37:56 -!- elliott has left ("Leaving").
13:38:21 <nortti> is using three prefixes rude if one of them is oonbotti: ?
13:38:33 <fizzie> ?tell lambdabot did you know you're rude too
13:38:52 <fizzie> @tell lambdabot well, you *are*, you have some many prefixen
13:40:35 <nortti> #msg oonbotti can you send messages to yourself? I forget
13:42:58 <fizzie> More stupid things: using this leftover workstation that's some old Athlon 64 X2 with one (1) gigabyte of memory (it goes all swappity-swap whenever I flip from MATLAB to Firefox) even though my personal laptop would have (a) more cores, (b) eight times the memory, and (c) a non-awkward keyboard layout. It's just that it's obviously impossible to get that inducted as a member of the local ...
13:43:34 <Deewiant> What do you need the local networks for?
13:43:42 <nortti> and that is still more powerful than any computer I have ever haf
13:43:44 <fizzie> All the data is in there.
13:44:14 <Deewiant> Then ssh, and run firefox on your laptop.
13:44:24 <Deewiant> Unless firefox needs the data too.
13:44:50 <fizzie> Well, it needs a network. There's supposed to be some sort of wireless, though.
13:45:20 <Deewiant> If at work, there should be 2-3 networks.
13:45:20 <fizzie> http://www.esat.kuleuven.be/ <- here.
13:45:23 <kallisti> oh I thought I disabled Haskell.
13:45:39 <Deewiant> Doesn't everywhere have eduroam?
13:46:09 <fizzie> I haven't ever used eduroam anywhere, I don't even know how to formulate my user name there. I guess I could try it out, though.
13:46:16 <fizzie> There's a local 'campusnet' too, though.
13:46:22 -!- oonbotti has quit (Remote host closed the connection).
13:46:33 <kallisti> Haskell clonage is no longer a thing.
13:46:39 <Deewiant> It was a huge pain, but I got it to work on both my laptop and my phone yesterday.
13:47:01 -!- ChanServ has set channel mode: +o fizzie.
13:47:14 -!- fizzie has set channel mode: -q iforgotthebotnam!*@*.
13:47:26 -!- fizzie has set channel mode: -q rolebot!*@*.
13:47:34 -!- fizzie has set channel mode: -o fizzie.
13:47:40 <rolebot> Commands begin with ~ or $ | Use help <name> to get more help on a specific command or category. | Categories: Messages, RP | Misc. commands: frink, lastsaid, seen, time, words
13:47:45 <rolebot> Commands begin with ~ or $ | Use help <name> to get more help on a specific command or category. | Categories: Admin, Messages, RP | Misc. commands: frink, lastsaid, seen, time, words
13:47:53 <rolebot> Admin commands: admin, ignore, load, perl, shutdown, unignore, unload
13:48:00 <rolebot> Usage: lastsaid [<nick>] -- shows the last thing someone said while identified by services
13:48:04 <fizzie> Well, I had already written the "/mode #esoteric -q" bit.
13:48:18 <Deewiant> Can't you down-arrow to do something else?
13:48:27 -!- TodPunk has joined.
13:48:37 <fizzie> Deewiant: Yeeeeees, but...
13:48:41 <kallisti> ~frink 50 euros -> dollars_1960
13:48:56 <kallisti> I basically just took everything I liked from all the #esoteric bots. :P
13:49:11 <rolebot> Time in London, United Kingdom (GMT+1): 2012-07-05 14:49
13:49:41 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:50:13 -!- oonbotti has joined.
13:50:31 <nortti> kallisti: why doesn't your bot have echo?
13:51:01 <HackEgo> Can't open perl script ""echo"": No such file or directory
13:51:06 <nortti> because every bot must have echo!
13:51:23 <lambdabot> echo; msg:IrcMessage {msgServer = "freenode", msgLBName = "lambdabot", msgPrefix = "nortti!~juhani@a91-154-82-93.elisa-laajakaista.fi", msgCommand = "PRIVMSG", msgParams = ["#esoteric",":@echo foo"]}
13:51:30 -!- mromanb has joined.
13:51:35 <kallisti> nortti: presumably so you can bot loop it?
13:51:40 <mroman> mromanb: bf_cu -[+>+<[+<]>]>+
13:51:41 <mromanb> Cells used: 4;[0, 1, 2, 3]
13:52:08 <nortti> kallisti: no. you should use some kind of ignore list or whitespace/nbsp
13:52:19 <kallisti> `ignore mromanb lambdabot HackEgo
13:52:21 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ignore: not found
13:52:28 <kallisti> $ignore mromanb lambdabot HackEgo
13:52:41 <fizzie> http://users.ics.aalto.fi/htkallas/lol.html
13:52:42 <rolebot> ^ul (http://users.ics.tkk.fi/lol.html)S
13:52:42 <fungot> http://users.ics.tkk.fi/lol.html
13:52:50 <fizzie> Whoops, I typoed the URL.
13:52:58 <fungot> kallisti: that's the scheme ( no pun intended
13:53:35 <rolebot> condannons care cepta imr bira man airt vdharaud
13:54:11 <fizzie> Anyway, the whole URL title thing is kinda noisy. I don't care enough to mind, but I'd vote nay if it came to a vote.
13:54:17 <fungot> ^(EgoBot|HackEgo|toBogE|Sparkbot|optbot|lambdabot|oonbotti)!
13:54:30 <kallisti> fizzie: I can turn it off. or, you know, just have the bot leave, since it doesn't need to be here.
13:54:31 <fizzie> ^ignore ^(EgoBot|HackEgo|toBogE|Sparkbot|optbot|lambdabot|oonbotti|rolebot)!
13:54:46 <fizzie> Well, if someone else complains.
13:54:48 <kallisti> it does squelch itself if the title contains absolutely no new information.
13:56:27 <fizzie> Also, does someone have a guess what "Meat tree with cauliflower" is? (It's on the menu here.)
13:57:24 <fizzie> Google just finds Snopes articles about meat trees and whatnot.
13:57:47 <fizzie> A tree that bears meat instead of fruit.
13:58:42 <kallisti> `ignore Egobot toBogE Sparkbot optBot oonbotti
13:58:44 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ignore: not found
13:58:50 <kallisti> $ignore Egobot toBogE Sparkbot optBot oonbotti
13:58:59 <fizzie> It's "Boomstammetje met bloemkool" in the local lingo, if that helps. (Google translate from Dutch just says "Trunk Metje with cauliflower" about that...)
14:00:12 <fizzie> Image search with that does find some consistent results, though.
14:00:24 <fizzie> Some sort of a round thing.
14:01:02 -!- mromanb has quit (Remote host closed the connection).
14:01:20 -!- mromanb has joined.
14:02:04 <mroman> mromanb: stlang fn \o/{100 >}{2 *}2 -> efn
14:02:04 -!- mromanb has quit (Remote host closed the connection).
14:02:14 <mroman> ok. it's still buggy :)
14:03:27 -!- itidus20 has joined.
14:04:54 <fizzie> Deewiant: Re eduroam, I tried it once with the phone but there was something about certificates. Anyway, what was the format for the user name? account@aalto.fi?
14:05:16 <Deewiant> At least, that's the one that works for me.
14:05:25 <Deewiant> Depending on what OS's instructions you look at there are three options.
14:05:55 -!- itidus21 has quit (Ping timeout: 246 seconds).
14:06:24 <fizzie> I think I saw "now @aalto.fi" somewhere.
14:06:27 <Deewiant> The certificate to use changed in March, and the one it changed to didn't work for me (not "Thawte root CA" which I guessed mapped to Thawte Primary Root CA; what worked was Thawte Premium Server CA)
14:06:45 -!- oonbotti has quit (Ping timeout: 250 seconds).
14:06:51 <Deewiant> What works for me is the org.aalto.fi plus a certificate that isn't mentioned anywhere in the instructions.
14:06:55 <Deewiant> Works both on the phone and the laptop.
14:07:17 <fizzie> I think I'll try this local eduroam with the phone.
14:07:29 <fizzie> Though it asks for EAP type (PEAP/TLS/TTLS).
14:07:52 <fizzie> And I guess EAP MSCHAPv2 over EAP GTC, at least in Aalto.
14:07:56 <Deewiant> (I found the correct certificate by observing wpa_cli and then using strace to see what certificate the access point sends.)
14:07:59 <fizzie> Not all eduroams are set up the same way, though.
14:08:16 -!- copumpkin has joined.
14:08:18 <Deewiant> At Aalto it's PEAP and MSCHAPv2.
14:08:26 <fizzie> At some point, some of them were using some sort of weird 802.1x+WEP combo.
14:08:26 <coppro> it's that at UW as well
14:09:43 -!- mromanb has joined.
14:09:46 -!- itidus20 has changed nick to itidus21.
14:09:47 <mroman> mromanb: stlang fn \o/{100 >}{2 *}2 -> efn
14:10:12 <fizzie> "osso-wlan (3.0.20) unstable; urgency=low
14:10:13 <fizzie> * Fixed: NB#159194 - Add support for WEP cipher in WPA mode to support Eduroam, fixes the regression
14:10:16 <fizzie> -- Jin Qing <ext-qing.1.jin@nokia.com> Fri, 2 Jul 2010 10:34:40 +0300"
14:10:22 <fizzie> Sounds such a weird thing to do.
14:11:31 <mroman> mromanb: stlang M 10 13 avg \
14:11:31 <mromanb> [mroman] Your program sucks!
14:12:13 <mroman> mromanb: stlang M 10 13 | avg \
14:12:42 <mroman> mromanb: stlang M 10 13 .|^A \
14:13:15 <mroman> mromanb: stlang M 10 13 | ^A \
14:13:49 <fizzie> nortti: N900 has all kinds of 'osso-this' and 'osso-that' and 'whatever-osso' packages; AFAIK comes from the OSSO (Open Source Software Operations) organization at Nokia.
14:14:07 <fizzie> "The OSSO organization (Open Source Software Operations) goal was to bring Nokia’s first Open Source and Linux based mobile terminal on the market and build an open source platform to support future product development."
14:14:31 <fizzie> From the days of those Internet Tablets.
14:15:09 <nortti> oh those. I have 770 and n810
14:15:31 <nortti> thinking about it weren't there a osso-xterm
14:15:37 <mroman> mromanb: stlang M [] 1 : 2 : 3 : 4 : {?2} /f \
14:15:37 <mromanb> [mroman] Your program sucks!
14:15:45 <fizzie> It's funny how they keep putting those NB#xxxxxx internal bug-tracker bug ids everywhere, but of course it's not publicly available anywhere.
14:15:48 <mroman> Ok. I unlearned how to code in it :D
14:16:44 -!- mromanb has quit (Remote host closed the connection).
14:16:51 <fizzie> osso-xterm, the terminal that can't do dark grey.
14:17:15 <fizzie> (Well, technically speaking it's the libvte4 package's fault.)
14:18:17 -!- oonbotti has joined.
14:18:17 <fizzie> https://bugs.maemo.org/show_bug.cgi?id=7164 -- the long, hard life of a bug report.
14:19:08 -!- mromanb has joined.
14:19:11 <fizzie> "SOFTWARE VERSION: 1.2009.42-11 -- Updating version field: Still an issue in 5.0/(2.2009.51-1) -- Updating version field again, is still broken in 10.2010.19-1 --"
14:20:00 <nortti> is there any development in maemo fremantle?
14:20:20 <fizzie> There's that Community SSU thing.
14:20:31 <fizzie> Which is where that one-line patch finally ended in.
14:21:25 <mroman> mromanb: stlang M {?2} [] 1 : 2 : 3 : 4 : ./f/S(s # \
14:21:52 <mromanb> [nortti] Only you can understand you. I don't.
14:22:03 <mromanb> [nortti] Only you can understand you. I don't.
14:22:04 <mroman> He doesn't know how to help ;)
14:22:12 <mromanb> [nortti] Only you can understand you. I don't.
14:22:15 <fizzie> He's beyond help, it almost seems.
14:22:16 <mromanb> [nortti] Only you can understand you. I don't.
14:22:19 <mroman> There is only bf_cu (brainfuck_cell usage)
14:22:25 <mroman> and stlang (evaluate stlang)
14:22:37 <mromanb> Cells used: 4;[0, 1, 230, 229]
14:23:44 <mroman> mromanb: stlang M ./r(i1=={{.$?0}{.1(i@}.0U}{.0(i@}? \
14:23:44 <mromanb> [mroman] Your program sucks!
14:23:57 <mroman> readline is not available of course :)
14:24:31 <fizzie> mromanb: bf_cu ++++++[->++++++<]>[[->+<]>-]
14:24:32 <mromanb> Cells used: 38;[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37]
14:25:37 <mromanb> Cells used: 231;[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 1
14:26:23 <mroman> mromanb: stlang M '0 .(i1=={{.$?0}{.1(i@}.0U}{.0(i@}? \
14:26:27 <mroman> mromanb: stlang M '1 .(i1=={{.$?0}{.1(i@}.0U}{.0(i@}? \
14:27:05 <mromanb> [mroman] Your program sucks!
14:27:07 -!- mromanb has quit (Remote host closed the connection).
14:27:59 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: load: not found
14:28:25 <kallisti> $echo Behold, advanced IRC bot technology!
14:28:25 <rolebot> Behold, advanced IRC bot technology!
14:34:21 <rolebot> Commands begin with ~ or $ | Use help <name> to get more help on a specific command or category. | Categories: Admin, Messages, RP | Misc. commands: echo, frink, lastsaid, seen, time, words
14:36:03 -!- mromanb has joined.
14:36:08 <mromanb> bf_cu (Brainfuck cell usage); stlang (Evaluate stlang)
14:36:08 <mromanb> bf_cu: MAX_CELLS := 231; stlang : MAX_CALLS := 20000
14:36:45 <mromanb> [kallisti] Only you can understand you. I don't.
14:37:16 <mroman> He needs a program, of course ;)
14:37:24 <kallisti> what is "brainfuck cell usage"?
14:37:37 <mroman> Well, cell usage of brainfuck programs?
14:37:52 <mroman> How many cells it uses.
14:38:54 <mroman> mromanb: stlang Cc 0 fn con .0(i \ cC M '0 N \
14:38:54 <mromanb> [mroman] [<steval.StObject instance at 0x9073bac>]
14:39:05 <kallisti> mromanb: bf_cu +++++++++++[->+]
14:39:12 <kallisti> mromanb: bf_cu +++++++++++[->+<]
14:39:27 <kallisti> mromanb: bf_cu +++++++++++[->+>+<]
14:39:30 <kallisti> mromanb: bf_cu +++++++++++[->+>+<<]
14:40:08 <mroman> mromanb: stlang Cc 0 fn con .0(i 0 8 \ cC M '0 N \
14:40:08 <mromanb> [mroman] [<steval.StObject instance at 0x9073bcc>]
14:40:22 <mroman> Object functions have their own stack o_O
14:41:17 <kallisti> what kind of production-ready real world esolang doesn't have a sandbox mode?
14:42:03 <kallisti> so frink wasn't working until I removed ulimits from it. Any idea why that would be?
14:42:39 <kallisti> /home/adam/bin/frink: line 30: 10284 Killed $java $flags -classpath $jar frink.gui.FrinkStarter "$@"
14:42:45 <kallisti> I guess it's exceeding the ulimits?
14:43:08 <mroman> mromanb: stlang Cc 0 fn con ##DEBUG_ON## .0(i 0 8 \ cC M '0 N \
14:43:09 <mromanb> [mroman] [<steval.StObject instance at 0x9073c2c>]
14:43:20 -!- rolebot has quit (Remote host closed the connection).
14:44:01 -!- edwardk has joined.
14:44:16 <mroman> Looks like a bug to me o_O
14:44:20 -!- rolebot has joined.
14:44:32 <mromanb> [kallisti] Only you can understand you. I don't.
14:44:54 <kallisti> mromanb: stlang Cc 0 fn con ##DEBUG_ON## .0(i 0 8 \ cC M '0 N \
14:44:54 <rolebot> kallisti: You have 2 messages. Type ~messages to read them.
14:44:54 <mromanb> [kallisti] [<steval.StObject instance at 0x9073b8c>]
14:45:47 -!- mromanb has quit (Remote host closed the connection).
14:45:55 <mroman> object functions should return values as well
14:46:18 <Gregor> kallisti: It's Java, of course it's exceeding its ulimits.
14:46:40 <kallisti> my $max_memory = 100000; #in kilobytes
14:47:05 <Gregor> Java will immediately claim ~1G
14:47:30 <mroman> constructors can't return values :)
14:47:31 <Gregor> kallisti: Yes, it has.
14:47:53 <kallisti> I mean.. I've used this same setup for a while and I haven't had problems.
14:48:14 <Gregor> Or maybe it's nondet X-D
14:48:32 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: load: not found
14:48:47 -!- mromanb has joined.
14:49:28 <mroman> mromanb: stlang Cc 0 fn con \ fn foo .0 \ cC M '0 N foo \
14:49:29 <mromanb> [mroman] [<steval.StObject instance at 0x9f78bcc>, 0.0, <steval.StObject instance at 0x9f78bcc>]
14:49:29 <kallisti> it's entirely possible that my code is broken and I don't know what I'm doing.
14:50:36 <Gregor> kallisti: FRINK FRANK FRONK
14:50:47 <kallisti> $frank 500 euros -> dollars_1945
14:51:10 <mroman> mromanb: stlang Cc 0 fn con \ fn foo .0 \ cC M '0 N foo $ <> $ @ \
14:52:08 <kallisti> Gregor: it's even doing the Java server thing to speed up load time.
14:52:24 <Gregor> $frink 500 euros -> dollars_1945
14:52:29 <rolebot> Perhaps you meant: load roll
14:52:35 <Gregor> $frink 500 euros -> dollars_1945
14:52:46 <Gregor> $frink 500 euros -> dollars_1945
14:52:49 <mroman> mromanb: stlang Cc 0 fn con \ fn foo .0 \ cC M '0 N foo $ <> $ @ # ;l @\
14:52:49 <mromanb> [mroman] Your program sucks!
14:52:58 <mroman> mromanb: stlang Cc 0 fn con \ fn foo .0 \ cC M '0 N foo $ <> $ @ # ;l @ \
14:52:59 <mromanb> [mroman] ['<', 's', 't', 'd', 'o', 'u', 't', '>', ' ', '0', '.', "<stdout> '0'"]
14:53:55 <kallisti> $frink 1 million euros -> dollars_1945
14:54:26 <kallisti> I think it also has historic great british currency but I don't remember the names
14:54:36 <mroman> mromanb: stlang M 2 2 + \
14:54:44 <mroman> btw ;). You need a main function.
14:54:56 <mroman> mromanb: stlang fn main 2 2 + efn
14:55:07 <rolebot> Warning: undefined symbol "aud".
14:55:07 <rolebot> ..Warning: undefined symbol "usd".
14:55:18 <rolebot> [AUD, Saudi_Arabia_Riyal, Saudi_Arabia_currency, Saudi_Arabia]
14:55:19 <mromanb> [mroman] Only you can understand you. I don't.
14:55:23 <kallisti> itidus21: no it's just case sensitive
14:55:24 <mroman> mromanb: stlang M 2 2 + ! \
14:56:09 <kallisti> 100 AUD -> 100 USD is just... AUD -> USD
14:56:22 <itidus21> kallisti: yeah that was me not thinking
14:56:52 <mroman> mromanb: stlang M 2 2 4 + + \
14:57:05 <kallisti> mroman: was that network lag or program lag? :P
14:57:14 <mroman> kallisti: You have to use mromanb:
14:57:35 <kallisti> my tab complete is infallible.
14:57:54 <mroman> mromanb: stlang class Foo prop bar 'Hello eprop eclass M 'Foo new &bar \
14:58:06 <mroman> mromanb: stlang class Foo prop bar 'Hello eprop eclass M 'Foo new \
14:58:19 <mroman> mromanb: stlang cls Foo prop bar 'Hello eprop ecls M 'Foo new \
14:58:20 <mromanb> [mroman] Your program sucks!
14:58:44 <mroman> prop does not work that way.
14:59:04 -!- Taneb has joined.
14:59:17 <kallisti> so it's Haskell: OO stack-based edition? (wait that doesn't make any sense)
14:59:17 <mroman> I can't send newlines over IRC sadly :(
14:59:28 -!- mromanb has quit (Remote host closed the connection).
14:59:41 <Taneb> itidus21, GBP is the currency with the most valuable primary unit IN THE WORLD
14:59:47 <Taneb> Ever since Malta joined the Euro
15:00:08 -!- stlangbot has joined.
15:00:37 <mroman> stlangbot: stlang class Foo prop bar 'Hello #NL# eclass M 'Foo new \
15:00:50 <kallisti> originally it was intended to facillitate playing tabletop games over IRC, but that quickly died out and now it's mostly a lambdabot clone with some stuff from
15:00:56 <kallisti> #esoteric bots that I wanted to use in other channels.
15:00:57 -!- stlangbot has quit (Remote host closed the connection).
15:01:20 -!- stlangbot has joined.
15:01:22 <mroman> stlangbot: stlang class Foo prop bar 'Hello #NL# eclass M 'Foo new \
15:01:23 <stlangbot> [mroman] [<steval.StObject instance at 0x9dbb30c>]
15:01:30 <mroman> stlangbot: stlang class Foo prop bar 'Hello #NL# eclass M 'Foo new &bar \
15:01:31 <stlangbot> [mroman] [<steval.StObject instance at 0x9dbb1ec>, 'Hello']
15:01:36 <kallisti> mroman: what's the implemntation language?
15:01:47 <Taneb> There's loads of bots here
15:01:52 <itidus21> Malta sounds tasty.. like malt
15:02:32 <kallisti> mroman: it's another stack based OO esolang.
15:02:39 <mroman> stlangbot: stlang class Foo prop bar 'Hello #NL# eclass class X eclass inherit X Foo M 'X new &bar \
15:02:40 <stlangbot> [mroman] [<steval.StObject instance at 0x9dbb12c>, 'Hello']
15:02:42 <Taneb> Okay, there's clog, fungot, glogbot, HackEgo, half of myndzi, oonbotti, rolebot, stlangbot...
15:02:43 <fungot> Taneb: the extra performance helped it find better paths down a tree of characters, treats all 01 chars as bits and prints out the message.
15:03:05 <mroman> stlangbot: stlang fn \o/{100 >}{2 *}2 -> @ efn
15:03:19 <mroman> Mine is not really functional too.
15:03:26 <mroman> But you can use lambda expressions
15:03:30 <nortti> yeah. 8.4 percent of us are bots
15:03:34 <Taneb> FINALLY GOT THAT RIGHT
15:03:43 <Taneb> We're Almost 12% bots
15:03:54 <mroman> stlangbot: stlang M {'0 @} call \
15:03:55 <kallisti> !glass {M[m(_o)O!"Hello World!"(_o)o.?]}
15:04:17 <kallisti> stlangbot: to do anything you have to instantiate a class.
15:04:17 <stlangbot> [kallisti] Only you can understand you. I don't.
15:04:24 <nortti> mroman: what is the name and command prefix of your bot?
15:04:40 <stlangbot> bf_cu (Brainfuck cell usage); stlang (Evaluate stlang)
15:04:40 <stlangbot> bf_cu: MAX_CELLS := 231; stlang : MAX_CALLS := 20000
15:05:03 <mroman> kallisti: Stlang doesn't require that @instantiate objects.
15:05:07 <Gregor> `echo I am the official bot of #esoteric, and thou shall have no bot before me.
15:05:09 <HackEgo> I am the official bot of #esoteric, and thou shall have no bot before me.
15:05:14 <kallisti> nortti's bot loop addiction progresses in severity..
15:05:32 <Taneb> With all these bots, there's got to be an awful botloop somewhere...
15:05:41 <nortti> I can creare one bot botloop any time I want
15:05:42 <mroman> stlangbot: stlang class A eclass class B eclass inherit A B inherit B A M 'A new @ B' new @ \
15:05:45 <itidus21> Currently, Malta's major resources are limestone, a favourable geographic location and a strong export market of washed up comedians.
15:05:52 <mroman> stlangbot: stlang class A eclass class B eclass inherit A B inherit B A M 'A new @ 'B new @ \
15:05:52 <stlangbot> [mroman] ['<stdout> <steval.StObject instance at 0x9dc2e6c>', '<stdout> <steval.StObject instance at 0x9dc2e6c>']
15:06:04 <Taneb> nortti, create one using four bots, one of them twice
15:06:26 <mroman> Objects are very weird in Stlang
15:06:37 <mroman> new instantiates the object on top of the stack
15:06:45 <mroman> and if you use a function that is not in global scope
15:06:52 <mroman> it checks if the top object on the stack is an object
15:06:55 <kallisti> !glass {M[m(_o)O!(_a)A!22(_a)a.?(_o)(on).?]}
15:07:01 <mroman> and looks in the objects scope if such a function exists.
15:07:21 <kallisti> !glass {M[m(_o)O!(_a)A!<2><2>(_a)a.?(_o)(on).?]}
15:07:29 <kallisti> that's a "print 2 + 2" program
15:07:37 <mroman> stlangbot: stlang class A fn A 0 \ eclass class B fn B 1 \ eclass M 'A new A \
15:07:38 <stlangbot> [mroman] [<steval.StObject instance at 0x9dc2e6c>, 0.0, <steval.StObject instance at 0x9dc2e6c>]
15:07:39 <kallisti> you have to instantiate the arithmetic and output classes
15:08:07 <mroman> and after every object call the object remains on top of the stack :D
15:08:26 <mroman> kallisti: Can you define classes in Glass?
15:09:01 <kallisti> for names that are larger than one character you have to enclose them in parens.
15:10:11 <mroman> stlangbot: stlang class Arith fn add $ + \ eclass M 'Arith new 2 3 ^^ add \
15:10:15 <kallisti> (_o)O! is "drop the variable _o on the stack, drop the variable O on the stack, instantiate an instance of O in the variable _o"
15:10:23 <itidus21> give or take arbitrarily, glass also supports multiple inheritance, virtual functions, templates, and operator overloading
15:10:35 <kallisti> which pops both values off the stack
15:10:48 <mroman> stlangbot: stlang class Arith fn add + \ eclass M 'Arith new 2 3 ^^ add \
15:11:11 <itidus21> well you just have to take everything i said away
15:11:23 <itidus21> hence "give or take arbitrarily"
15:11:39 <mroman> stlangbot: stlang class Arith fn add + \ eclass M 'Arith new 2 3 \
15:11:40 <stlangbot> [mroman] [<steval.StObject instance at 0x9dc2eec>, 2.0, 3.0]
15:11:45 <mroman> stlangbot: stlang class Arith fn add + \ eclass M 'Arith new 2 3 ^^ \
15:11:51 <kallisti> mroman: Glass is intended to be obnoxious and annoying, whereas I think you're actually going for usability with stlang.
15:12:35 <kallisti> or at least, I assume that's what Gregor had in mind.
15:12:50 <mroman> stlangbot: stlang class Arith fn add + \ eclass M 'Arith new 2 3 that add \
15:12:53 <kallisti> unless he really just loves extreme OO with postfix notation.
15:12:54 <mroman> stlangbot: stlang class Arith fn add + \ eclass M 'Arith new 2 3 that \
15:12:55 <stlangbot> [mroman] [2.0, 3.0, <steval.StObject instance at 0x9dc2e8c>]
15:12:59 <itidus21> im trying to point out it would be funny if glass did infact feature things c++ prides itself on
15:13:03 <nortti> stlang seems kinda like underload. esoteric but usable stack based language
15:13:04 <Gregor> Glass is not intended to be a good language :)
15:13:07 <mroman> stlangbot: stlang class Arith fn add $ + \ eclass M 'Arith new 2 3 that add $ \
15:13:10 <mroman> stlangbot: stlang class Arith fn add $ + \ eclass M 'Arith new 2 3 that add \
15:13:23 <mroman> stlangbot: stlang class Arith fn add $ + \ eclass M ##DEBUG_ON## 'Arith new 2 3 that add \
15:13:36 <kallisti> Gregor: it has struck a chord in my heartplaces for some reason. :>
15:13:45 <mroman> stlangbot: stlang class Arith fn add + \ eclass M ##DEBUG_ON## 'Arith new 2 3 that add \
15:13:52 <itidus21> i like the human quality of stlang's interpreter feedback
15:14:40 <kallisti> I thought that was print to stdout
15:14:45 <kallisti> based on the earlier 2 + 2 code
15:15:01 <kallisti> right, so anything returned by main is printed
15:15:12 <mroman> stlangbot returns the stack.
15:15:34 <mroman> stlangbot: stlang class Arith fn add 5 \ eclass M ##DEBUG_ON## 'Arith new that add \
15:15:43 <mroman> stlangbot: stlang class Arith fn add 5 \ eclass M ##DEBUG_ON## 'Arith new add \
15:15:47 <kallisti> stlangbot: stlang M 2 2 2 2 2 2 2 2 2 2 \
15:15:47 <stlangbot> [kallisti] [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0]
15:16:05 <mroman> stlangbot: stlang class Arith fn foo 5 \ eclass M ##DEBUG_ON## 'Arith new foo \
15:16:06 <stlangbot> [mroman] [<steval.StObject instance at 0x9dc2f2c>, 5.0, <steval.StObject instance at 0x9dc2f2c>]
15:16:16 <kallisti> mroman: your stlang output has a Python smell. :P
15:16:19 <mroman> stlangbot: stlang class Arith fn foo $ + \ eclass M ##DEBUG_ON## 'Arith new 2 3 that foo $ \
15:16:34 <mroman> apparently add is already defined in the global scope.
15:16:49 <kallisti> it's a synonym for + I thought
15:17:04 <mroman> + is a synonym for add.
15:17:33 <mroman> And different functions have different synonyms based on context.
15:17:42 <mroman> In golfing mode the synonyms are different :)
15:17:51 <mroman> stlangbot: stlang M 5 3 / \
15:17:53 <kallisti> mroman: you should add perl-like contexts into this language somehow
15:17:56 <mroman> stlangbot: stlang M 5 3 .// \
15:18:17 <mroman> stlangbot: stlang M 5 3 .///v \
15:18:26 <mroman> stlangbot: stlang M 5 3 / /v \
15:18:35 <mroman> . enters the golfing mode
15:18:47 <mroman> which allows to chain function without whitespace
15:19:10 <mroman> stlangbot: stlang M 'Hello '; [.] \
15:19:32 <mroman> stlangbot: stlang M 'Hello '; .[.l \
15:19:56 <mroman> stlangbot: stlang M 'Hello '; .[.l=! \
15:20:14 <mroman> stlangbot: stlang M 'Hello '; .[.l(f \
15:20:18 <mroman> stlangbot: stlang M 'Hello '; .[.l(i \
15:20:21 <mroman> stlangbot: stlang M 'Hello '; .[.l(s \
15:20:55 <mroman> stlangbot: stlang M {zZ}'Hello m \
15:21:52 <kallisti> why is there an if in the pattern matching example
15:22:30 <mroman> stlangbot: stlang M ?1 \
15:22:33 <kallisti> just define a regular function?
15:22:56 <mroman> You can't match 'anything'
15:23:27 <kallisti> so there's no "match 0, match everything else" pattern matching?
15:23:35 <mroman> stlangbot: fn empty:[] ?1 efn fn empty ?0 efn M [] @ \
15:23:36 <stlangbot> [mroman] Only you can understand you. I don't.
15:23:42 <mroman> stlangbot: stlang fn empty:[] ?1 efn fn empty ?0 efn M [] @ \
15:23:57 <mroman> stlangbot: stlang fn empty:[] ?1 efn fn empty ?0 efn
15:24:05 <kallisti> so you can match everything else by having a function without a : thingy
15:24:19 <mroman> stlangbot: stlang fn empty:0 ?1 efn fn empty ?0 efn M 0 @ \
15:24:26 <mroman> but I'm not sure about the syntax right now :)
15:24:39 <mroman> stlangbot: stlang fn empty:0#NL# ?1 efn fn empty ?0 efn M 0 @ \
15:25:09 <kallisti> mroman: stack is global right?
15:25:23 -!- Vorpal has joined.
15:25:30 <mroman> stlangbot: stlang fn isZero:0 ?1 efn fn isZero ?0 efn M 0 @ \
15:25:55 <mroman> stlangbot: stlang fn isZero:0 ?1 M 0 @ \
15:26:02 <mroman> stlangbot: stlang fn isZero ?1 efn M 0 @ \
15:26:06 <mroman> stlangbot: stlang fn isZero:0 ?1 efn M 0 @ \
15:26:15 <mroman> it might be that pattern matching requires a newline
15:26:23 <mroman> stlangbot: stlang fn isZero:0#NL# ?1 efn M 0 @ \
15:27:10 <mroman> stlangbot: stlang fn isZero:0 ?1 efn M 0 @ \
15:27:17 <mroman> you need to define the one without pattern first.
15:27:32 <mroman> stlangbot: stlang fn empty ?0 efn fn empty:[] ?1 efn M [] \
15:27:41 <mroman> stlangbot: stlang fn empty ?0 efn fn empty:[] ?1 efn M [] empty \
15:27:45 <kallisti> mromanb: stlang fn fib:0 0 \ fn ++ 1 - fib 2 - fib + \ M 5 fib \
15:27:48 <mroman> stlangbot: stlang fn empty ?0 efn fn empty:[] ?1 efn M 'a empty \
15:28:00 <mroman> stlangbot: stlang stlang fn fib:0 0 \ fn ++ 1 - fib 2 - fib + \ M 5 fib \
15:28:03 <kallisti> stlangbot: stlang fn fib:0 0 \ fn ++ 1 - fib 2 - fib + \ M 5 fib \
15:28:10 <mroman> kallisti: You need to define fib first.
15:28:21 <mroman> fn foo:0 efn fn foo efn is illegal
15:28:28 <mroman> fn foo efn fn foo:0 efn is legal.
15:28:33 <kallisti> YOU MEAN TO SAY THIS IS NOT HASKELL?
15:29:15 <kallisti> stlangbot: stlang fn fib ++ 1 - fib 2 - fib + \ fn fib:0 0 \ M 5 fib \
15:30:13 <kallisti> I'm not sure how to do that recursively with a global stack
15:31:14 <kallisti> mroman: how do I push elements onto the stack by index?
15:31:31 <mroman> kallisti: http://esolangs.org/wiki/Stlang#Others
15:31:35 <mroman> there is a fib version ;)
15:31:50 <mroman> and I have to go now, sorry.
15:32:02 <mroman> kallisti: There is a function 'top'
15:32:06 <mroman> which lets you do that.
15:33:30 <kallisti> stlangbot: stlang fn fib:1 1 \ fib:0 0 \ fn ++ 1 - fib <> 2 - fib + \ M 5 fib \
15:34:07 -!- edwardk has quit (Quit: Computer has gone to sleep.).
15:34:56 <kallisti> stlangbot: stlang fn fib:1.0 1 \ fib:0.0 0 \ fn ++ 1 - fib <> 2 - fib + \ M 5 fib \
15:35:02 <kallisti> stlangbot: stlang fn fib:1.0 1 \ fib:0.0 0 \ fn fib ++ 1 - fib <> 2 - fib + \ M 5 fib \
15:36:06 <kallisti> the " is unexplained in the docs
15:43:28 -!- azaq23 has joined.
15:43:35 -!- azaq23 has quit (Max SendQ exceeded).
15:44:10 -!- azaq23 has joined.
15:48:02 -!- ais523 has quit.
15:48:18 <Taneb> Possibility is a monad, definition is a comonad
15:49:31 <Taneb> Disjunction is a monad, conjunction is a comonad
15:50:44 <kallisti> all things are one under the cofree monad free comonad in outer space.
15:56:38 <Taneb> http://www.vandoorn.talktalk.net/esoteric
16:15:10 <Phantom_Hoover> kallisti, seriously, turn that off, it's useless and annoying.
16:15:36 <Taneb> Note to self: when introducing others to the joy of the collatz conjecture, don't start with 27
16:15:58 <kallisti> I'm in the process of making it less annoying
16:16:23 <kallisti> well, before it would check each word in the title and see if it's already in the URL. if they're all in the URL, it ignores it.
16:16:27 <kallisti> now I've added a list of stop words.
16:17:33 <Gregor> http://weirdfetishisticporn.com/
16:18:08 <Gregor> http://mylittleclopfic.com/
16:18:21 <Gregor> Damn it rolebot, work with me here.
16:21:16 <kallisti> it blocks facebook now because all of the other title stuff is just garbage.
16:22:09 <rolebot> YouTube - Broadcast Yourself.
16:22:21 <kallisti> however, youtube has "broadcast"
16:22:25 <kallisti> which is NEW INFORMATION YOU DID NOT PREVIOUSLY KNOW
16:22:53 <Phantom_Hoover> Oh, so it helpfully filters out any titles which are *identical* to the URL?
16:23:21 <kallisti> it also ignores the stop words. which I got from here http://www.webconfs.com/stop-words.php/
16:23:25 <Gregor> http://www.google.com/search?q=how+to+build+a+bomb+terrorism+allah+akhbar+all+glory+to+osama+hello+fbi
16:23:47 <kallisti> I have no idea why it's taking so long to traverse the stop word list...
16:25:31 * kallisti likes to see whether he should click on something or not.
16:25:50 <kallisti> by having one program do it instead of all of our browsers
16:25:53 <kallisti> we are actually saving the environment
16:26:14 <Phantom_Hoover> And so you think that making a bot to announce the page title in the channel whenever anyone posts a URL is going to help?
16:26:32 <kallisti> anyone who disagrees does not care about mother earth.
16:27:29 <Gregor> Phantom_Hoover: You realize that this is an EXTREMELY common bot feature and there's a bot that does this in most large channels?
16:27:41 <Gregor> Well, perhaps not "most"
16:27:44 <kallisti> oh duh I should use a hash table.
16:28:41 <Gregor> Now, this could get annoying: http://codu.org/music/#\o/
16:29:18 <Gregor> `echo I SHALL CREATE CHAOS http://codu.org/music#\o/
16:29:20 <HackEgo> I SHALL CREATE CHAOS http://codu.org/music#\o/
16:29:39 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: load: not found
16:29:41 <Phantom_Hoover> Gregor, you don't have Superturing on that page or your WiPs :(
16:30:00 <Gregor> kallisti: ... why is "Gregor" filtered?
16:30:10 <Gregor> Phantom_Hoover: Superturing is linked in "electronic music", and there are no current WIPPs.
16:30:15 <kallisti> Gregor: oh, this is a good question.
16:30:37 <kallisti> probably because of a bug in the code I just added.
16:30:48 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: load: not found
16:30:52 <kallisti> qeiorhwiurthiouwerhiuerhtiuwreutiherh
16:32:22 <kallisti> over time I will gradually accumulate a list of every annoying word in HTML titles ever.
16:33:46 <Gregor> I can build that list for you easily:
16:34:04 <kallisti> what would probably be a better approach
16:34:15 <kallisti> because it's mostly useful for youtube and URL shorteners
16:36:25 -!- Phantom_Hoover has quit (Remote host closed the connection).
16:51:09 -!- Taneb has quit (Quit: AWAY).
16:58:28 <kallisti> Gregor: having used this URL thing for a while, I've found a large portion of HTML titles contain all of the information their URLs do.
17:37:48 -!- augur has joined.
17:57:03 <Gregor> Just discovered that Purdue lets you specify an alternate email address.
17:57:08 <Gregor> I was gkrichar@, which is shit.
17:57:15 <Gregor> That's... pretty awesome.
18:04:12 <olsner> you should've added some more r's, grrrr
18:04:29 <olsner> and gkr is almost gkar
18:05:26 <Gregor> gregor@ was reserved, which is tragic since that's actually better than gr@.
18:09:21 <Gregor> Considering that I get snotty every time somebody calls me 'Greg', that sounds like a bad idea.
18:17:08 <Gregor> fizzie: Good– morning, Mr. Freeman, wake up and– smell the SCIENCE!
18:42:53 <nortti> can someone explain to me how I set up qemu so that the quest netbsd machine can connect to my lan?
18:48:33 <kallisti> gooling for "quest netbsd machine" yields nothing that seems relevant.
18:50:20 <nortti> yeah. problem is that I can't get qemu to create simulated network card that is connected to my lan
18:51:46 <kallisti> you would need to know the name of the virtual network device thingy that qemu needs
18:51:53 <Gregor> Define "connect to"? Is there a reason it needs an actual IP address on the LAN?
18:53:53 -!- shachaf has quit (Ping timeout: 265 seconds).
18:53:54 <kallisti> if you're doing user-mode networking you'd also want to do some iptables hacks so that it can listen on privileged ports.
18:54:16 <Gregor> I think you'd have to use -net tap and then convince the Tun/Tap layer to act as a hub.
18:54:33 <Gregor> But more to the point, I find the situation where this is actually useful to be unlikely.
18:59:44 <olsner> I think you can set up ethernet bridges with the right config
18:59:49 <olsner> (essentially, set your network card to promiscuous and send data from several mac addresses corresponding to your real and virtual system)
19:00:08 <olsner> it's not supposed to be hard and as I understand it is fairly common
19:02:59 <olsner> nortti: tl;dr: configure your system to do that and it will do it
19:05:23 -!- shachaf has joined.
19:20:38 <mroman> kallisti: No success with fib?
19:21:23 <mroman> stlangbot: stlang fn fib ++ 1 - fib <> 2 - fib + \ M 5 fib \ fn fib:1.0 \ fn fib:0.0 \
19:21:43 <mroman> stlangbot: stlang fn fib ++ 1 - fib <> 2 - fib + \ M 8 fib \ fn fib:1.0 \ fn fib:0.0 \
19:21:49 <mroman> stlangbot: stlang fn fib ++ 1 - fib <> 2 - fib + \ M 9 fib \ fn fib:1.0 \ fn fib:0.0 \
19:21:54 <mroman> stlangbot: stlang fn fib ++ 1 - fib <> 2 - fib + \ M 7 fib \ fn fib:1.0 \ fn fib:0.0 \
19:22:04 <mroman> kallisti: I suspect you wanted this ;)
19:22:57 <mroman> 17:36 < kallisti> the " is unexplained in the docs
19:23:16 <mroman> A lot of stuff is not documented right now :)
19:23:29 <mroman> and " is not a function.
19:25:40 <mroman> " is replaced with the name of the function it appears in.
19:26:41 <nortti> Gregor: by "connect to" I meant that it can send data trought my lan
19:27:07 <mroman> ++ is duplicate. And <+ is also duplicate
19:27:21 <mroman> ++ 1 - fib <> 2 - fib + is the same as using golfing mode
19:27:28 <Gregor> nortti: Even usermode networking accomplishes that. If you don't need it to have a LAN IP, don't overcomplicate things.
19:27:44 <mroman> ++ does not work in golfing mode.
19:28:50 <mroman> stlangbot: stlang M 'Zz 'Hello m \
19:29:02 <mroman> stlangbot: stlang M 'zZ 'Hello m \
19:29:07 <mroman> stlangbot: stlang M {zZ} 'Hello m \
19:29:26 <mroman> stlangbot: stlang M{Zz}'Hello m \
19:29:40 <mroman> stlangbot: stlang M{Z?}'Hello m \
19:29:59 <mroman> stlangbot: stlang M 'H Z? \
19:30:03 <mroman> stlangbot: stlang M 'Ha Z? \
19:30:20 <mroman> stlangbot: stlang M {Z?} 'Hello m \
19:30:56 <mroman> stlangbot: stlang M {Z?} 'Hello m @ \
19:31:41 <mroman> stlangbot: stlang M 'Hello zZZz @ \
19:31:47 <mroman> stlangbot: stlang M 'Hello zZZz \
19:33:25 -!- Taneb has joined.
19:34:02 <mroman> stlangbot: stlang M {Z? (s)} 'Hello m @ \
19:34:02 <stlangbot> [mroman] ["<stdout> 'TrueFalseFalseFalseFalse'"]
19:34:25 <mroman> That was my ugly workaround because python can't treat strings as lists :)
19:34:38 <mroman> well... the workaround sucks. I can see that now.
19:35:47 <mroman> at least for map it sucks.
19:35:57 <mroman> It can concatenate booleans of course.
19:36:31 <mroman> stlangbot: stlang M {Z?} 'Hello,World! partition \
19:37:35 <mroman> stlangbot: stlang M {add} {isupper} 'Hello,World! partition zipWith \
19:37:50 -!- VorpalPhone has joined.
19:38:08 -!- oerjan has joined.
19:38:51 <mroman> I should add a function 'unpairWith' :)
19:39:42 <mroman> > let unpairWith f (a,b) = f a b in unpairWith (++) ('HW','ello,orld!')
19:39:43 <lambdabot> lexical error in string/character literal at chara...
19:39:51 <mroman> > let unpairWith f (a,b) = f a b in unpairWith (++) ("HW","ello,orld!")
19:40:36 -!- stlangbot has quit (Quit: Bye, cruel world!).
19:40:49 <lambdabot> forall a b c. ((a, b) -> c) -> a -> b -> c
19:41:06 <lambdabot> forall a b c. (a -> b -> c) -> (a, b) -> c
19:41:25 <mroman> VorpalPhone: Evaluating stlang expressions ;)
19:41:27 <Taneb> Not that, evidently
19:41:42 <mroman> Taneb: I told him "die" 1 minute ago ;)
19:41:46 <mroman> To fix the map problem.
19:43:24 -!- stlangbot has joined.
19:43:26 <mroman> VorpalPhone: Stlang is stlang.
19:43:47 <mroman> stlangbot: stlang M {isupper} 'Hello,World! partition unpair add \
19:44:06 <mroman> VorpalPhone: esolangs.org/wiki/Stlang
19:44:12 <mroman> VorpalPhone: http://esolangs.org/wiki/Stlang
19:44:19 <mroman> damn firefox hiding http:// :(
19:44:39 <mroman> stlangbot: stlang M {Z?}'Hello m \
19:44:39 <stlangbot> [mroman] [[True, False, False, False, False]]
19:44:58 <nortti> mroman: yeah. it can be changed from about:config
19:45:42 <mroman> VorpalPhone: It's a stack based language that also supports OOP.
19:45:56 <mroman> To support its possible usage in golf every function has aliases.
19:46:55 <Vorpal> <mroman> damn firefox hiding http:// :( <-- can be fixed in about:config
19:47:02 <Vorpal> trying to remember which setting it was
19:47:29 <mroman> stlangbot: stlang fn main {isupper} dup 'Hello,World!' partition add map efn
19:47:45 <mroman> stlangbot: stlang fn main {isupper} dup 'Hello,World!' partition add efn
19:47:57 <mroman> I should add error reporting :D
19:48:12 -!- VorpalPhone has quit (Quit: Bye).
19:48:21 <mroman> stlangbot: stlang fn main {isupper} \
19:48:26 <mroman> stlangbot: stlang fn main {isupper} dup \
19:48:26 <stlangbot> [mroman] ['FB72A30G6589DC1E', 'FB72A30G6589DC1E']
19:48:31 <mroman> so, that should actually work.
19:48:47 <Vorpal> The spirit of Stlang is to implement lots of features in very weird and esoteric ways no other language or sane person would implement them with. <-- e.g. Intercal, malbolge?
19:48:51 <mroman> stlangbot: stlang M {isupper} 'Hello,World! partition unpair add \
19:49:27 <mroman> stlangbot: stlang M {isupper} {isupper} 'Hello,World! partition unpair add \
19:49:27 <stlangbot> [mroman] ['E0BF71C9D4G382A5', 'HWello,orld!']
19:49:34 <mroman> stlangbot: stlang M {isupper} {isupper} 'Hello,World! partition unpair add map \
19:49:34 <stlangbot> [mroman] [[True, True, False, False, False, False, False, False, False, False, False, False]]
19:49:44 <mroman> stlangbot: stlang M {isupper} {isupper} 'Hello,World! partition unpair add map explode \
19:49:44 <stlangbot> [mroman] [True, True, False, False, False, False, False, False, False, False, False, False]
19:49:48 <Vorpal> mroman, hm how high level is this language? Are we talking befunge level?
19:49:57 <mroman> Vorpal: befunge is high level?
19:50:01 <ion> https://fbcdn-sphotos-a.akamaihd.net/hphotos-ak-ash4/602626_10151008148768433_672469651_n.jpg
19:50:07 <Vorpal> mroman, in some respects yes
19:50:23 <mroman> Well, then stlang is high-high-high-high level.
19:50:35 <Vorpal> mroman, it is fairly easy to write things that would be painful in a turing tarpit in befunge
19:50:49 <Vorpal> mroman, okay how easy would it be to write fungot in stlang?
19:50:50 <fungot> Vorpal: well i just fnord the whole r5rs. it'll have the procs that manage the indicies.
19:51:09 <fungot> mroman: but in my case is much larger, there are three other fnord accumulators besides listing: listing-reverse, appending, ' '
19:51:10 <Vorpal> mroman, note that fungot uses SOCK for sockets directly in befunge, using netcat is allowed if you need it
19:51:11 <fungot> Vorpal: there are only four sizes though.) exercise 1.3 says if we feed herrings hotdogs they might come in handy when i find a value in a list
19:51:18 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
19:51:25 <Vorpal> there, befunge-98 code for fungot
19:51:26 <fungot> Vorpal: the scheme48 vm is written in
19:51:41 <mroman> Stlang is a very high level language. Except it has only a stack.
19:51:55 <mroman> It has OOP, it has pattern matching, it has anonymous functions
19:51:57 <Vorpal> mroman, fizzie wrote it. And at least previously it has been running on my befunge implementation
19:52:21 <mroman> it has functions like tail, head, last, reverse, zipWith, map, reduce, until, takeWhile, dropWhile
19:52:36 <mroman> It probably has almost every function haskells prelude has.
19:52:52 <Vorpal> mroman, what makes it esoteric then?
19:53:17 <mroman> Its implemented in a way nobody would :)
19:53:37 <mroman> The term "esoteric language" is not very precise.
19:54:05 <mroman> If you compare stlang to brainfuck or befunge it's not very esoteric.
19:54:18 <mroman> It's a fully featured programming language, except it uses a stack instead of variables.
19:55:13 <Taneb> backwards stackell
19:55:22 <mroman> stlangbot: stlang fn main {1000 gt} {2 mul} 2 until show efn
19:55:47 <mroman> stlangbot: stlang class Foo fn bar 1337 efn eclass fn main 'Foo new bar efn
19:55:47 <stlangbot> [mroman] [<steval.StObject instance at 0x84c110c>, 1337.0, <steval.StObject instance at 0x84c110c>]
19:55:57 <mroman> ^- That's how high level it is.
19:57:17 <mroman> stlangbot: stlang fn main 'Hello rot efn
19:57:36 <mroman> stlangbot: stlang fn main 'Hello expode implode rot efn
19:58:13 <mroman> Ah, that's the 'strings are not lists in python' bug again.
19:58:58 <mroman> stlangbot: stlang M {isDigit} '123abcd takeWhile \
19:59:16 <mroman> stlangbot: stlang M {isDigit} '123abcd dropWhile \
19:59:18 <oerjan> mroman: sure it's not just you misspelling explode?
19:59:47 <mroman> oerjan: yes, but explode implode is just a hack because.
19:59:50 <mroman> rot only works with lists.
19:59:56 <mroman> and python does not consider string to be lists.
20:00:03 <mroman> so I convert a string with explode implode to a list
20:00:12 <mroman> stlangbot: stlang M 'Hello \
20:00:14 <mroman> stlangbot: stlang M 'Hello explode \
20:00:15 <stlangbot> [mroman] ['H', 'e', 'l', 'l', 'o']
20:00:18 <mroman> stlangbot: stlang M 'Hello explode implode \
20:00:18 <stlangbot> [mroman] [['H', 'e', 'l', 'l', 'o']]
20:00:21 <mroman> stlangbot: stlang M 'Hello explode implode rot \
20:00:21 <stlangbot> [mroman] [['e', 'l', 'l', 'o', 'H']]
20:00:24 <mroman> stlangbot: stlang M 'Hello explode implode rot concat \
20:02:16 <mroman> stlangbot: stlang M 'l 'Hello explode implode rot concat reverse split \
20:02:37 <mroman> ^- explode and implode mess up the whole stack :)
20:02:48 <mroman> implode converts the whole stack to a list.
20:02:59 <mroman> and explode pushes every element of a list to the stack
20:03:08 <mroman> stlangbot: stlangbot M 2 2 \
20:03:09 <stlangbot> [mroman] Only you can understand you. I don't.
20:03:12 <mroman> stlangbot: stlang M 2 2 \
20:03:14 <mroman> stlangbot: stlang M 2 2 + \
20:03:18 <mroman> stlangbot: stlang M 2 2 implode \
20:03:22 <mroman> stlangbot: stlang M 2 2 implode explode \
20:03:24 <mroman> stlangbot: stlang M 2 2 implode explode +\
20:03:26 <mroman> stlangbot: stlang M 2 2 implode explode + \
20:03:30 <Taneb> stlangbot: stlang 1 1 +
20:03:40 <mroman> Taneb: You need a main function.
20:03:49 <mroman> stlangbot: stlang fn main 1 1 + efn
20:03:57 <mroman> M is short for 'fn main' and \ is short for '\'
20:04:05 <mroman> and \o/ is short for 'main'
20:04:11 <oerjan> mroman: you just need a function to run a function with a given list as the stack
20:04:35 <oerjan> then explode and implode become useable
20:05:29 <oerjan> i suppose there's nothing preventing you from using implode to _define_ that
20:05:40 <mroman> |o| is also short for 'fn main'
20:05:59 <mroman> /o\ duplicates an instruction
20:06:05 <mroman> stlangbot: stlang fn main 2 /o\ + efn
20:06:46 <mroman> " is replaced with the name of the function it appears in.
20:06:48 -!- Nisstyre has quit (Read error: Connection reset by peer).
20:07:03 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: : not found
20:08:24 <mroman> stlangbot: setnote fix Fix rot for strings.
20:08:30 <mroman> stlangbot: setnote|fix Fix rot for strings.
20:08:30 <stlangbot> [mroman] Only you can understand you. I don't.
20:08:59 <mroman> stlangbot: setnote|fix Fix rot for strings.
20:09:00 <stlangbot> [mroman] Only you can understand you. I don't.
20:09:28 <mroman> stlangbot: setnote fix|Fix rot for strings.
20:09:38 -!- stlangbot has quit (Quit: Bye, cruel world!).
20:11:38 -!- Nisstyre has joined.
20:15:16 -!- Taneb has quit (Quit: Leaving).
21:03:55 -!- zzo38 has joined.
21:10:28 <mroman> I probably should write a complete documentation about Stlang.
21:10:38 <mroman> Or else I will forget everything and that would suck :(
21:13:24 <zzo38> How to initialize a git repository for repo.or.cz? I forgot
21:18:15 <zzo38> I got the error message "fatal: 'origin' does not appear to be a git repository" and "fatal: The remote end hung up unexpectedly"
21:19:42 <nortti> does anyone of you know any good pascal tutorials. I just got pascal compiler working on twenex
21:23:10 * oerjan has long since forgotten where he learned pascal
21:23:31 <oerjan> but then it _was_ > 20 years ago
21:24:58 -!- boily has quit (Quit: WeeChat 0.3.8).
21:28:03 <oerjan> whatever i haven't forgotten
21:29:16 <oerjan> turbo pascal was used in the first programming class in university. i think i'd read about it before though, i am not sure if my dad's computer had a compiler before that.
21:33:19 <nortti> did you know that you can get old turbo pascals for free legaly
21:33:33 <oerjan> i recall original pascal was very strict about the order in which things were declared
21:33:36 * shachaf uses turbo Haskell these days.
21:34:12 <nortti> is it very fast Haskell compiler for cp/m and dos?
21:34:27 <shachaf> It's a very-fast-Haskell compiler.
21:34:33 <shachaf> It compiles fast Haskell code, but very slowly.
21:36:08 <oerjan> drive webcomic is still not out of hiatus :(
21:42:38 <zzo38> What does it mean by "'origin' does not appear to be a git repository" and how does it fixed?
21:44:19 <oerjan> nortti: either your browser or your external editor is broken for editing wiki articles :P
21:44:54 <oerjan> nortti: look at the diff for your Talk:Underload edit
21:45:04 <oerjan> http://esolangs.org/w/index.php?title=Talk:Underload&curid=2034&diff=33072&oldid=32783
21:46:28 <nortti> ugh. I'll try to fix character encoding
21:47:09 <nortti> yeah. it was set as latin-1
21:53:16 <zzo38> http://repo.or.cz/w/ITMCK.git
21:53:18 <rolebot> Public Git Hosting - ITMCK.git/summary
21:56:00 <oerjan> nortti: what is [(x)-A(x)B] = [(x)-A}:{B] supposed to mean
21:59:03 <nortti> (x) is replaced with closing curly brace, duplicate operator and opening curly brace
22:00:08 <oerjan> in that case i think the "When (x) is not between { and }" must be wrong
22:00:52 <nortti> wel yes if you count [ and ] as { and }
22:02:03 <kallisti> don't we have a site for hosting esolangs?
22:02:24 <oerjan> kallisti: the file archive
22:02:54 <kallisti> the most be a complete waste of time, but I could probably set up my dedicated server for esolang repos.
22:03:32 * kallisti is waiting for his order to complete.
22:04:15 * oerjan adds all infima and suprema to kallisti's order
22:08:07 <kallisti> but yes, I can donate my server for whatever purpose might be beneficial. it's primarily high storage at 1 TB, with low RAM/CPU.
22:08:18 <kallisti> so it would be good for mirrors/backups.
22:12:36 <kallisti> http://eris.net/ I wonder if I can get this hostname..
22:16:03 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:16:14 -!- Patashu[Zzz] has changed nick to Patashu.
22:17:05 <HackEgo> cuta bould pouerer gauzune frescard stubaliz xvii sphota audie vanan comver rec corbe walte intam figla redt hfnker bilinter telbe habi ana selsey vity pedt
22:17:35 <kallisti> approximately 35% of those would make decent hostnames.
22:19:10 <kallisti> it avoids repeating redundant titles.
22:19:57 <mroman> zzo38: git remote add origin?
22:20:04 <zzo38> mroman: Yes I fixed it now
22:20:06 <rolebot> <CTCP>ACTIONblah blah bah blah<CTCP>
22:21:59 <oerjan> http://http.http.org.org/
22:22:28 <rolebot> <CTCP>ACTION blah blah bah blah hi
22:22:32 <zzo38> http://zzo38computer.cjb.net/rolebot.html
22:22:32 <rolebot> `echo http://zzo38computer.cjb.net/rolebot.html
22:22:35 <HackEgo> http://zzo38computer.cjb.net/rolebot.html
22:22:36 <rolebot> `echo http://zzo38computer.cjb.net/rolebot.html
22:22:39 <HackEgo> http://zzo38computer.cjb.net/rolebot.html
22:22:40 <rolebot> `echo http://zzo38computer.cjb.net/rolebot.html
22:22:43 <HackEgo> http://zzo38computer.cjb.net/rolebot.html
22:22:43 <nortti> kallisti: /me just sends normal message starting with ^AACTION
22:22:49 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ignore: not found
22:23:10 <rolebot> Usage: ignore [<nick1> <nick2> ...] -- ignores the specified nicks | Ignored nicks:
22:24:32 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ignore: not found
22:24:39 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ignore: not found
22:24:57 <rolebot> Usage: ignore [<nick1> <nick2> ...] -- ignores the specified nicks | Ignored nicks:
22:25:21 <kallisti> I'm still confused as to how that works.
22:25:28 <zzo38> Confused as to how what works?
22:25:43 <kallisti> it should be sending a PRIVMSG
22:25:50 <zzo38> It is sending a PRIVMSG
22:26:45 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ignore: not found
22:27:28 -!- rolebot has quit (Remote host closed the connection).
22:27:40 <monqy> rest peacefully, rolebot
22:27:54 <kallisti> I killed screen instead of detaching
22:27:54 -!- nortti_ has joined.
22:28:07 <shachaf> Is the source to rolebot online?
22:28:19 <kallisti> I'll put it on github one day.
22:29:09 <kallisti> I need to rid it of some things that don't make much sense.
22:29:22 <kallisti> particularly a global config module
22:30:10 -!- rolebot has joined.
22:30:32 * rolebot doesn't really know how IRC works. :-( \020? Phooey.
22:32:23 <kallisti> it's almost as though it's been stress tested on other IRC channels.
22:33:04 <shachaf> kallisti: Oh, I thought it was brand new.
22:33:19 <kallisti> no. it just has no reason to be here.
22:33:49 <kallisti> nortti mentioned having a sandbox for old unix boxes, and so I offered it as a potential candidate.
22:34:05 <shachaf> aAnyway you should put the code up.
22:34:30 <kallisti> I was going to do that while setting up my server-to-be
22:34:32 <shachaf> You should put it up TODAY IMMEDIATELY
22:34:49 <kallisti> also I'm about to change some things
22:35:02 <shachaf> Good! So you should put it up so we can see the changes.
22:35:07 <rolebot> Perhaps you meant: tell help
22:35:11 <rolebot> Commands begin with ~ or $ | Use help <name> to get more help on a specific command or category. | Categories: Messages, RP | Misc. commands: echo, frink, lastsaid, seen, time, words
22:35:17 <shachaf> Are you using your browser to fetch titles?
22:35:31 <shachaf> So why is your useragent Safari?
22:35:36 <rolebot> Usage: roll <number> [<diff>]
22:35:46 <kallisti> monqy: it was originally going to be a diceroller for tabletop systems
22:35:50 <monqy> too much dice, shachaf
22:35:54 <kallisti> but then it just became a lambdabot clone
22:36:00 <rolebot> 7 successes (5 10 7 7 4 6 3 3 3 7 2 7 9)
22:36:24 <shachaf> I tried a reasonable number!
22:36:25 <rolebot> Dice systems: owod, shadowrun
22:36:32 <shachaf> So I made it even more reasonable!
22:36:32 <kallisti> shadowrun system is incomplete
22:36:36 <rolebot> 12 successes (6 7 4 3 3 9 4 9 7 5 8 3)
22:36:43 <rolebot> 5 successes (5 6 3 1 5 7 3 10 3 1 7 2 8)
22:36:50 <rolebot> -1 successes (4 6 9 1 6 1 6 6 3 4 8 7)
22:37:02 <rolebot> Commands begin with ~ or $ | Use help <name> to get more help on a specific command or category. | Categories: Messages, RP | Misc. commands: echo, frink, lastsaid, seen, time, words
22:37:03 <monqy> that's not very many successes
22:37:14 <rolebot> Displays all of your unread messages and then deletes them. Messages are received securely and privately. Both parties must be registered with services.
22:38:00 <monqy> can rolebot do haskel
22:38:01 <rolebot> monqy: You have 1 message. Type ~messages to read it.
22:38:27 <kallisti> it's turned off though because the syntax is the same as lambdabot
22:38:41 <kallisti> also ignore isn't working for some reason
22:39:12 -!- kallisti has changed nick to notkallisti.
22:39:14 <rolebot> Usage: admin (list|add|delete) [<nick1> <nick2> <nick3> ...] -- admin manager command
22:39:55 -!- copumpkin has joined.
22:40:02 <monqy> shachaf: "no can do"
22:40:29 <shachaf> monqy: tell shachaf hi monqy \
22:40:48 <monqy> notkallisti: you have 1 unread messages. thanks.
22:41:00 -!- notkallisti has changed nick to kallisti.
22:41:09 <shachaf> monqy: do i have a 1 unread messages
22:41:21 <shachaf> $tell shachaf you have 1 undead messages
22:41:22 -!- oonbotti has quit (Read error: Connection reset by peer).
22:41:26 <shachaf> monqy: tell shachaf you have 1 undead messages
22:41:36 <shachaf> monqy: tell shachaf how many massages do i have
22:41:42 <monqy> shachaf: you have 1 unfed messages
22:41:46 <rolebot> Usage: ignore [<nick1> <nick2> ...] -- ignores the specified nicks | Ignored nicks:
22:42:08 <kallisti> it's just not showing them properly
22:42:08 <shachaf> monqy: is this like tamaguchi!
22:42:28 -!- oonbotti has joined.
22:42:45 <monqy> how do I feed messages ?
22:42:46 <kallisti> $ignore EgoBot oonbotti fungot myndzi stlangbot
22:42:47 <fungot> kallisti: it needs a doctype declaration!
22:43:03 <monqy> myndzi isn't a bot
22:43:18 <shachaf> myndzi: \o/! They've figured out you're not a bot!
22:43:41 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ignore: not found
22:43:49 <kallisti> one day the robot uprising may happen
22:43:54 <kallisti> I want rolebot to be on my side.
22:43:54 <lambdabot> http://theneverhood.wikia.com/wiki/Klogg
22:44:13 <rolebot> Time in Fucking, Austria (GMT+2): 2012-07-06 00:44
22:44:19 <HackEgo> Linux umlbox 3.0.8-umlbox #2 Sun Nov 13 21:30:28 UTC 2011 x86_64 GNU/Linux
22:44:26 <oonbotti> Linux T20-slitaz 2.6.30.6-slitaz #1 SMP Sun Mar 28 16:39:51 CEST 2010 i686 \
22:44:39 <rolebot> "Linux maria 3.2.0-2-amd64 #1 SMP Fri Jun 1 17:49:08 UTC 2012 x86_64 GNU/Linux\n"
22:44:39 <HackEgo> Can't open perl script "`uname -a`": No such file or directory
22:45:33 <nortti_> shachaf: #shell it still for botopd only
22:46:28 <kallisti> $perl use Lingua::EN::Inflect 'conjugate'; conjugate(verb => 'greet', tense=> 'perfect_prog');
22:47:22 <kallisti> $perl $self->say(body => 'hi!', channel => '#playchan')
22:47:34 <kallisti> $perl $self->say(body => 'hi!', channel => 'monqy')
22:49:57 <kallisti> huh, I apparently deleted the Haskell plugin.
22:50:26 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: load: not found
22:53:48 <oonbotti> #echo, #welcome, #cat, #ls, #rm, #writefile, #cc, #exec, #msg, #readmsg, #forth, #loadforth, #eliza
22:54:08 <oonbotti> I see. And what does that tell you?
22:54:43 <kallisti> shachaf: guess what language rolebot is
22:55:04 <rolebot> antírem seguntacat condavat blam sacromprondiré venàssiu aquessim batismocione burjàssim incossalli pogrambravit enfluen amores espessis pillàs
22:55:23 <rolebot> שהית בהתאח שהרביה ופו מאנשיא ומנשבו ונד האנציי ורסת חתיחס ותפוס הציג אבו הנציה בלזק
22:55:24 <nortti_> #writefile hi.c void main() { char a[3]: a[0]='h'; a[1]='i'; a[2]=0; puts(a); }
22:55:44 <kallisti> nortti_: that's going to be for conveniently adding files I assume?
22:57:09 <nortti_> now #writefile writes to specified dir only on host system
22:58:03 <nortti_> it is just ISC licensed c2bf with my libc
22:59:24 <nortti_> #writefile hi.c void main() { char a[3]; a[0]='h'; a[1]='i'; a[2]=0; puts(a); }
22:59:54 <nortti_> #writefile hi.c void main() { char a[3]; a[0]='h'; a[1]='i'; a[2]=0; puts(a); }
23:02:06 <kallisti> can you make git track an empty directory?
23:02:17 <shachaf> git doesn't track directories.
23:05:28 <olsner> can tar archives include empty directories? you could just version control a tar archive
23:05:53 <kallisti> that would be a really silly thing to do.
23:10:44 <shachaf> You could put a .gitignore file in empty directories.
23:11:00 <kallisti> or I can hack my perl to create the directory at startup
23:11:51 <olsner> oh what a horrible hack, creating directories that you need on startup
23:12:07 <kallisti> I'm giving IRC bot programming a bad name.
23:37:21 -!- Slereah_ has joined.
23:39:05 <kallisti> shachaf: https://github.com/kallisti-dev/Rolebot
23:39:53 <oerjan> BOO, rolebot doesn't do https: :P
23:40:29 -!- Slereah has quit (Ping timeout: 265 seconds).
23:40:56 <kallisti> I added that pointless command
23:41:25 <rolebot> oerjan was last seen on Thursday July 05, 2012 at 23:41 GMT (8 seconds ago)
23:41:26 <rolebot> Commands begin with ~ or $ | Use help <name> to get more help on a specific command or category. | Categories: Admin, Messages, RP | Misc. commands: echo, frink, lastsaid, seen, time, words
23:41:43 <oerjan> how did fungot get to ignore it already :(
23:41:44 <fungot> oerjan: i'm happy with them, but still
23:41:56 <kallisti> shachaf: the Color plugin applies a filter that removes color codes when +c is on (and we don't have voice/ops)
23:42:51 <shachaf> voiceops lets you bypass +c?
23:43:03 <kallisti> not sure about Freenode but it does on other networks.
23:44:48 <kallisti> shachaf: I'm particularly pleased at how plugins work
23:44:57 <kallisti> only at the expense of a dynamically scoped variable.
23:47:37 <oerjan> poor dynamically scoped variable
23:48:14 <kallisti> hey, I had someone scold me for a while on #perl because I used a dynamically scoped variable instead of some OO thing.
23:51:12 <shachaf> "function of a dynamically-scoped variable"
23:51:19 <shachaf> It's a big field of study in mathematics.
23:52:15 <kallisti> I doubt it's thread-safe but... concurrent programming in perl requires a brave soul.
23:56:14 <kallisti> shachaf: is that dynamic scoping in the sense a computer scientist is familiar with?
23:56:33 <shachaf> Pick your interpretation, it's as good as mine.