[Larceny-users] error peeking short values from raw memory
Felix Klock
felixluser at pnkfx.org
Fri Jul 3 12:51:35 EDT 2009
Marco (cc'ing larceny-users)-
On Jul 3, 2009, at 10:13 AM, Marco Maggi wrote:
> (let ((v (- (expt 2 7) 1)))
> (%poke8 a v)
> (write (list v (%peek8 a)))
> (newline))
>
> (let ((v (- (expt 2 15) 1)))
> (%poke16 a v)
> (write (list v (%peek16 a)))
> (newline))
>
> (let ((v (- (expt 2 31) 1)))
> (%poke32 a v)
> (write (list v (%peek32 a)))
> (newline))
>
> (newline)
>
> (let ((v (- (expt 2 8) 1)))
> (%poke8u a v)
> (write (list v (%peek8u a)))
> (newline))
>
> (let ((v (- (expt 2 16) 1)))
> (%poke16u a v)
> (write (list v (%peek16u a)))
> (newline))
>
> (let ((v (- (expt 2 32) 1)))
> (%poke32u a v)
> (write (list v (%peek32u a)))
> (newline))
>
> (newline)
>
> (let ((v (- (expt 2 15) 2)))
> (%poke16 a v)
> (write (list v (%peek16 a)))
> (newline))
Why are you subtracting 2 here when you've been subtracting 1 in all
the other cases?
----
In other words, I do not yet understand what bug you are reporting; (-
(expt 2 15) 2) evaluates to 32766, no peek or poke involved.
-Felix
More information about the Larceny-users
mailing list