←2005-03-17 2005-03-18 2005-03-19→ ↑2005 ↑all
00:02:49 <calamari_> this is a pesky bug to track down
00:07:23 <{^Raven^}> is the order of the system variables QGI01234etc significant?
00:10:25 -!- calamari has quit (Read error: 110 (Connection timed out)).
00:11:17 <calamari_> I'm not sure anymore
00:11:29 <calamari_> I know they need to stay together
00:12:06 <{^Raven^}> maybe you could exclude the system variables from the sort
00:12:14 <calamari_> I do
00:12:40 <{^Raven^}> hmmm...
00:14:07 <calamari_> the problem is that there are two different indexes I'm dealing with when rearranging things, and I probably messed it up somewhere
00:14:51 <calamari_> the first array "order", gives the original index numbers in the order they are currently in
00:15:42 <calamari_> the other "index", gives which index place in "order" that a particular original index is at
00:16:28 <calamari_> I need to keep track of the original indexes so that I can test against the interaction list, which uses the original index numbers
00:17:27 <calamari_> there is also a "start" list that gives the start positions for each variable
00:17:35 <calamari_> sanyhow, afk
00:17:40 <{^Raven^}> have fun
00:17:48 <{^Raven^}> i gotta go to bed anyhow#
00:17:59 <{^Raven^}> ...must have breakfast sometime
00:18:04 <{^Raven^}> nite all
00:21:55 <calamari_> cya raven
00:28:38 -!- calamari_ has quit ("Leaving").
06:10:29 -!- calamari has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:48:18 -!- clog has joined.
08:48:18 -!- clog has joined.
11:24:36 -!- bNk6i6l3lBeZrT7 has joined.
11:41:11 -!- bNk6i6l3lBeZrT72 has joined.
11:41:11 -!- bNk6i6l3lBeZrT7 has quit (Read error: 54 (Connection reset by peer)).
11:41:15 <bNk6i6l3lBeZrT72> Wow! This BF Golf sounds great!
11:50:02 -!- bNk6i6l3lBeZrT72 has left (?).
13:18:04 -!- Keymaker has joined.
13:18:21 <Keymaker> bNk6i6l3lBeZrT72: it is not bf golf!
13:18:31 <Keymaker> (yes, i never get tired repeating it..)
13:19:54 <Keymaker> but either the way, see you there :)
13:25:04 <Keymaker> f... this is day is annoying.. X{}
13:25:08 <Keymaker> bye
13:25:09 -!- Keymaker has quit.
17:59:30 -!- calamari has joined.
18:00:17 <calamari> hello
19:03:04 <{^Raven^}> hi there
19:09:27 <calamari> raven: it turns out that the -O3 changes were causing the freezing problem, not the variable optimization
19:23:12 <calamari> raven: can you think of a way to extract digits from a number in forward order?
19:24:04 <calamari> print var is broken for numbers like 255, because it's actually 65535, or whatever the size that the cell is on these bigger interps
19:24:56 <{^Raven^}> i'll have a think
19:25:14 <{^Raven^}> is this the print decimal value of cell in BF?
19:25:30 <calamari> yeah
19:25:46 <calamari> right now it extreacts the digits in reverse, hardcoded for a max of 3 digits
19:26:07 <calamari> that was fine because I expected the code to be run on an 8-bit cell interp
19:28:33 <calamari> hmm, may have something
19:28:54 <{^Raven^}> difficult without a stack
19:28:55 <calamari> 65535/10=6553/10=655/10=65/10=6/10=0 .. divided 5 times
19:29:25 <{^Raven^}> that's easy enouugh
19:29:48 <calamari> so I start with 1 and multiply back 4 times.. 10*10*10*10=10000
19:30:03 <calamari> now I can extract the leftmost digit
19:39:10 <{^Raven^}> you could do it with DIV and MOD but I can't work out the BF for it
19:40:25 <calamari> div and mod provide a backwards answer
19:40:54 <calamari> that's essentially how it is done now
19:41:56 <{^Raven^}> 123456 DIV 100000 = 1
19:42:15 <calamari> oic
19:42:18 <{^Raven^}> if num - divisor > 0 num -= divisor
19:42:28 <{^Raven^}> divisor /= 10
19:42:38 <{^Raven^}> 23456 DIV 10000 = 2
19:42:45 <{^Raven^}> etc
19:43:10 <calamari> it could really be written in bfbasic code, couldn't it? :)
19:43:18 <calamari> maybe that's the best way
19:43:37 <calamari> since it's so complicated
19:44:40 <{^Raven^}> diong ot backwards only needs a max of 10 cells for 32-bit
19:45:03 <{^Raven^}> but mem use is dependant on cell width :(
19:45:19 <{^Raven^}> aka 10 digits
19:45:23 <calamari> Doing it in forward order prevents any assumptions
19:45:42 <{^Raven^}> just awkward :(
19:45:59 <fizzie> My "print out brainf*ck cell as decimal" is basically a "+1 to a variable-length BCD number" started with "0" and called the amount of times the cell specifies. It's.. "not very fast".
19:47:00 <fizzie> (~220 characters of code.)
19:49:22 <fizzie> Used that a ~year ago when writing some answers to our "introduction to imperative programming (in C)" course homework in BF.
19:50:12 <calamari> doesn't look like it liked M=0-1, M=M/10
19:52:26 <calamari> wow, that divide routine is complicated
19:57:06 <calamari> hmm.. is there an ansi sequence that will push a line to the right?
19:57:39 <calamari> then I could extract in reverse and display as I go
20:03:47 <{^Raven^}> if you could determine how many digits you needed to output you could use LOCATE to set the cursor to the right place
20:04:16 <calamari> raven: ceil(log(x)/log(10)).. but I'm not sure how to do that with bf :)
20:04:22 <{^Raven^}> but you would need to be careful if you printed a 2 digit number starting at the rightmost column
20:04:54 <calamari> you don't need locate.. can just print spaces then use backspace
20:06:53 <{^Raven^}> same difference really depends how moving left from col 0 is implemented
20:07:05 <{^Raven^}> for worst case scenario
20:08:15 <calamari> oic
20:09:05 <calamari> the easy way out is to have the user tell us the cell size
20:09:08 <{^Raven^}> n = 12345 : digits = 0 : WHILE n : n /= 10 : digits++ : ENDWHILE
20:09:19 <{^Raven^}> gives num of digits to print
20:10:32 <{^Raven^}> ^^^ integer math
20:10:47 <calamari> yeah that works.. divide is still freezing up :(
20:10:57 <calamari> either that or its just really slow
20:11:15 <calamari> just slow
20:11:26 <calamari> finally finished
20:12:04 <calamari> wonder if there's a fast hack for dividing by 10
20:13:23 <{^Raven^}> i only have the standard BF libarary code for DIV 10 here
20:13:25 <calamari> heh, it's fine for #'s <256
20:13:47 <calamari> if they want to print big numbers then the user will need to wait or use a better interp :)
20:23:03 <calamari> cool, that works, just a little slow
20:23:29 <calamari> well, a lot slow actually.. need to try compiling the optimizing interp you sent me
20:24:29 <{^Raven^}> which OSs are you using?
20:24:38 <calamari> linux
20:25:16 <{^Raven^}> ahh, if i sent you the full bftools release just type make :)
20:38:31 <arke> teh hies
20:38:44 <{^Raven^}> hullo arke
20:41:34 <arke> :)
20:41:35 <arke> hows life?
20:41:56 <{^Raven^}> fun as usual. :)
20:42:05 <arke> Cool :)
20:54:43 <{^Raven^}> creative writing ability is inversely proportional to the amount of programming completed
20:54:51 <{^Raven^}> grrr....
20:58:08 <arke> :P
22:07:53 -!- calamari has quit (Read error: 60 (Operation timed out)).
23:01:43 -!- {^Raven^} has quit ("Leaving").
←2005-03-17 2005-03-18 2005-03-19→ ↑2005 ↑all