cantstanya has quit [Remote host closed the connection]
cantstanya has joined #forth
<biotty>
i see argv leads to a c-encoding of the string. is there readily a word to decode this and parse as a number, or do i write a word with 10 mod/ 0 until for example?
<veltas>
Which forth?
<veltas>
>NUMBER is one way to do this in forth 200x standard
<biotty>
gforth here, but i like if its ans or 200x
<biotty>
also, ofcourse my above statement would rather be 10 * when parsing a dec
<biotty>
veltas: are you suggesting i use count 99 and let it stop at the zero termination?
<biotty>
veltas: .. i also see >number has a weird ud1 parameter, i dont see from spec if its added to result
dave0 has joined #forth
Zarutian_HTC has joined #forth
<biotty>
hmm, i get "invalid mem address" when doing : anum ( addr-cstr -- n)
<biotty>
over i + c@
<biotty>
48 - swap 10 * +
<biotty>
0 do 99 0
<biotty>
dup 48 < if drop leave then
<biotty>
loop nip ;
<Zarutian_HTC>
happy new year, folks
<biotty>
oh, i see i messed up the do syntax, terribly sorry.
<biotty>
happy new year. Zarutian_HTC
<biotty>
now it werks ; )
<Zarutian_HTC>
one thing I have yet to have seen in old hobby computer magazines and am astounded none of them did was to 'barcode' in paperpape-esque way the program listings on the margin furthest from the spine on each page
<Zarutian_HTC>
each magazine would have one page on how the reader is constructed and works
<Zarutian_HTC>
would been a bit more expensive on black ink though
<Zarutian_HTC>
but it would have been easier than typing those listings by hand
<Zarutian_HTC>
would look like you were sliding a giant credit card through a slotted reader
<Zarutian_HTC>
those zines would have distinctive margins of two and a quarter centimeters
<MrMobius>
wouldnt you need a huge amount of bar codes though?
<MrMobius>
since they dont encode many numbers
<Zarutian_HTC>
(using 7 bit ascii with a 'timing' channel where 7 bit paper tape had sprocket holes)
<Zarutian_HTC>
MrMobius: think of paper tape, but instead of holes you would have ink on white paper
<Zarutian_HTC>
each 2,5 mm of the margin 'tape' would encode one 7 bit ascii char
<Zarutian_HTC>
2.5 mm down/up the page
<Zarutian_HTC>
could even go a bit smaller in that dimension to fit more characters
<Zarutian_HTC>
on a A4 sized page you could fit 58 chars at 2.5 mm size or 116 chars at 1.25 mm size, easily
<biotty>
well that was a fun exercise but i see in gforth i have next-arg
<Zarutian_HTC>
heck some pages in the back of the magazine could be 'foldables' with quite a few columns of this
<MrMobius>
Zarutian_HTC, and you would get a schematic to build something that can read it?
<MrMobius>
out of off the shelf parts
<Zarutian_HTC>
hmm this format would have only worked with Forth as you can really 'compress' the programs down
<Zarutian_HTC>
MrMobius: yebb, something like eight photo transistors, some resistors, and wiring to a 8 bit input port
<Zarutian_HTC>
oh, and a strong light source to reflect off the paper
<Zarutian_HTC>
black cardboard mask with tiny holes to limit ?cross talk? between chars
<MrMobius>
I would be very impressed if you could make this :P
boru` has joined #forth
boru has quit [Disconnected by services]
boru` is now known as boru
<Zarutian_HTC>
MrMobius: I do not see the point nowdays though
Zarutian_HTC has quit [Remote host closed the connection]
<cmtptr>
over the past year i've adopted the possibly misguided opinion that all real values in computing should be fixed point
<cmtptr>
maybe i just haven't seen it but i just can't imagine a use-case where you don't know the scale of numbers you'll be working with at code time
Gromboli1 has joined #forth
Gromboli has quit [Ping timeout: 264 seconds]
Gromboli1 is now known as Gromboli
gravicappa has quit [Ping timeout: 240 seconds]
gravicappa has joined #forth
birdwing has quit [Ping timeout: 264 seconds]
Gromboli2 has joined #forth
Gromboli has quit [Ping timeout: 256 seconds]
Gromboli2 is now known as Gromboli
gravicappa has quit [Ping timeout: 265 seconds]
Zarutian_HTC has joined #forth
<MrMobius>
cmtptr, maybe you know the scale but fixed point is too slow
<MrMobius>
fixed point seems good for embedded where you dont have an fpu
<Zarutian_HTC>
re floating point and fixed point. One version I have seen where loss of precision is unacceptable is where you have fixed point big part and floating point offset from that
<Zarutian_HTC>
a bit how Minecraft handles world coordnates
<cmtptr>
MrMobius, there's nothing inherent to float that makes it faster though. it's only faster in some situations because people wanted floats and so hardware vendors optimized for it
<cmtptr>
Zarutian_HTC, couldn't you do that with two fixed point words? it's basically multi-precision fixed, right?
<Zarutian_HTC>
cmtptr: sure
<cmtptr>
in fact that's even the case where i say floats are typically used and it makes no sense to me. why do you need finer resolution closer to the origin of a chunk or whatever they call the cube measured by the more significant coordinates
<cmtptr>
it seems like unless you're very careful, you end up with physics that behave slightly differently based on relation to arbitrary boundaries
<cmtptr>
like i said earlier, maybe i just don't get it. but these are the discussions i've had with myself in the shower and now i can't think of any case where floating point actually makes any sense
<veltas>
cmtptr: As I pointed out at some point, fixed point is usually worse accuracy than floating point even when you're relatively close to the optimal exponent
<veltas>
And the fact is even in simple calculations the exponent of different numbers involved in the steps to calculate can vary wildly in their exponents, the end result is much more accurate
<veltas>
floating point is definitely much more "user friendly" than fixed point