00:06:47 <cpressey> and here i was pronouncing it "ay" so terr ick
00:52:36 -!- graue has quit ("Leaving").
01:30:03 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
03:17:29 -!- calamari has quit ("Leaving").
03:29:31 -!- sekhmet has quit ("omg more disk!").
03:59:52 -!- calamari has joined.
04:45:05 <lament> cpressey: did you kick ass in 311?
04:51:51 -!- Sgep has quit (Connection reset by peer).
05:36:56 -!- sekhmet has joined.
06:07:37 -!- lirthy has joined.
06:52:05 -!- klutzy has joined.
06:52:38 -!- lirthy has quit (Connection timed out).
06:52:45 -!- klutzy has changed nick to lirthy.
07:56:08 -!- calamari has quit ("Leaving").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:29:57 -!- CXI has quit ("christmas hardware upgrade time... please pray for me").
08:46:09 -!- CXI has joined.
08:48:40 -!- calamari has joined.
08:58:04 -!- calamari has quit ("Leaving").
10:08:47 -!- J|x has joined.
10:58:03 -!- sp3tt has joined.
10:58:23 <sp3tt> I'm implementing brainfuck.
10:59:47 <sp3tt> Though I have no idea how to implement loops.
11:01:22 -!- calamari has joined.
11:02:30 <sp3tt> Because just skipping to the next ] could cause bad stuff.
11:03:18 <sp3tt> +++[>++[-]] Skipping to the next right bracket would literally result in a brainfuck.
11:04:09 <Gs30ng> ah, corresponding parenthesis... that's a little bit tricky, right
11:05:01 <sp3tt> I don't believe I have access to regexps.
11:05:02 <J|x> if moving backwords use a counter
11:05:20 <J|x> increase it for every ] and decrease it for every [
11:05:27 <J|x> if it goes == 0 youre done
11:05:34 -!- J|x has changed nick to jix.
11:05:59 <jix> and regexps won't help as matching parentheses is a context free problem not a regular one
11:06:21 <sp3tt> I'm moving forwards in the text... I'd paste the program, but the usb drivers are messing with me.
11:06:31 <jix> (even though some regexp engines support some context free grammers)
11:06:54 <jix> if you're moving forwards do the same thing but swap [ and ]
11:07:56 <jix> what is your target system (calculator)?
11:07:58 <sp3tt> I have the text in a variable X, stack M, stack pointer P, program pointer c and the current token l.
11:08:38 <jix> if it was a ti-92(+)/89/v200 i'd recommand converting the bf code into basic code
11:08:51 <sp3tt> I don't want a TI-calculator.
11:09:15 <sp3tt> I've gotten so used to RPN I can't use algebraic.
11:17:40 <sp3tt> Are the usb drivers messing with you too?
11:18:55 <calamari> I've implemented bf on the hp48gx, in case youre interested in seeing it
11:19:53 <sp3tt> Ah... I looked at some interpreter, now I understand how to do it.
11:20:02 <calamari> http://esoteric.sange.fi/brainfuck/impl/interp/calculator/hp48bf.txt
11:20:47 <calamari> what I'd like to see is bf for the hp's cpu assembly language
11:21:00 <calamari> that would be great.. 64 bit power! :)
11:21:36 <lindi-> calamari: they still use saturn cpu?
11:21:45 <calamari> my crappy code is userrpl.. so it's slow
11:22:04 <calamari> lindi-: dunno .. but the processor in mine hasn't changed =D
11:22:31 <lindi-> calamari: my hp71 used saturn too
11:23:04 <sp3tt> When I hit a [, I set a var p1 to the current position, and a var p2 to 1. Then I continue looping through the text (in a separate loop), increasing p2 each time I hit a [. When I hit ] I decrease it. When p2 is 1, I store the new position in the text p3 and copy the substring p1-p3 and call the interpreter function on it.
11:23:09 <sp3tt> That should do it.
11:24:29 <sp3tt> Programming with rpn <3
11:25:32 <calamari> too bad they never made linux for the hp48 :) hehe
11:26:21 <lindi-> calamari: i didn't have any assembler tools for hp71 so i wrote a very ugly assembler in basic, http://iki.fi/lindi/HP71AS reads assembler source and creates an executable
11:26:25 <sp3tt> I doubt it would boot, not enough memory.
11:26:47 <calamari> sp3tt: I'm just being silly :) the kernel wouldn't even fit in ram :)
11:27:11 <lindi-> not to mention hp71 which had 16K of ram
11:27:29 <lindi-> hp48 has at least 256K?
11:27:40 <sp3tt> Mine has 128 iirc.
11:30:51 <calamari> hmm.. how much memory does my slide rule have?
11:31:56 <calamari> http://en.wikipedia.org/wiki/Slide_rule
11:32:24 <sp3tt> I'd say two bytes or so.
11:34:03 <calamari> well, there are infinitely many positions of the hairline and slide.. so I dunno :)
11:34:04 <lindi-> ah, i only know the finnish term :)
11:36:36 <calamari> cool.. this dictionary had it http://efe.scape.net/index.php
11:38:42 <sp3tt> if l == "[" then{ STO('b',1); c++; DO{ STO('l',SUB(X,c,c)); IF l=="[" then { b++ } IF l=="]" then{b--} }until b==0}
11:38:50 <sp3tt> That oughta do it...
11:39:03 <calamari> what does that say? supposed to be "esoteric" :)
11:39:13 <lindi-> more like "one that puts the customer at the mercy of a vendor"
11:39:35 * sp3tt knows one finnish word.
11:40:32 <calamari> acording to this one salassa=secretly
11:40:57 <calamari> so at least that word seems to make sense
11:44:51 <calamari> okay.. now to see what damage the reinstall caused
11:45:19 -!- calamari has quit ("Leaving").
11:46:02 <sp3tt> Note to self: Increase counter when doing loops.
11:47:08 <sp3tt> :D It works... now to create a loop to execute it... recursion is the shit.
11:48:11 -!- calamari has joined.
11:48:40 -!- calamari has quit (Client Quit).
11:49:27 <sp3tt> The only problem is... will the array change...
12:22:59 <sp3tt> Ok, now I've changed the program to take the array as an argument...
12:26:36 <sp3tt> It'll have to return an array {output,array}...
12:33:01 -!- lirthy has quit (Read error: 110 (Connection timed out)).
12:58:21 -!- lirthy has joined.
15:06:56 <sp3tt> GAH! This is fucking killing me.
15:14:24 -!- Arrogant has joined.
16:08:02 -!- Arrogant has quit ("I AM QUIT HAVE A NICE DAY").
17:07:48 -!- Gs30ng has quit.
19:42:07 <cpressey> by the way, here's a scary thought:
19:42:29 <cpressey> twenty years ago: the first Amiga
19:59:09 <sp3tt> I finished writing my interpreter.
19:59:24 <sp3tt> Brainfuck on the HP 48gII: http://sp3tt.i.ext.as/bf.txt
20:31:10 -!- calamari has joined.
20:35:47 -!- calamari has quit (Client Quit).
22:57:59 -!- clog has joined.
22:57:59 -!- clog_ has joined.
23:14:02 -!- clog has quit (Connection timed out).
23:14:03 -!- clog_ has changed nick to clog.
23:35:21 -!- clog has joined.
23:35:21 -!- clog has joined.