Add tests of kmath-memory and make all the memory operations on all the platforms use little-endian byte order #163
No reviewers
Labels
No Label
bug
dependencies
discussion
documentation
duplicate
feature
good first issue
misc
performance
question
test
use case
wontfix
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: kscience/kmath#163
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "unify-endianness"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Keeping endians across platform does not make any sense. It is possible to define additional memory, that is shareable between platforms, but I do not want to guarantee that for the default memory.
It does. We provide ways to wrap existing object as memory (Memory.wrap), and it has to work equally on all the supported platforms.
e.g.,
Memory.wrap(byteArrayOf(0,0,0,1)).read { readInt(0) }
must be persistentI can't see, why it should. We do not allow to access the inner layout of memory, only the offset.
Because it's almost useless it is does not because each platform must receive separate byte arrays.
Why do we need wrapping of array if it works in absolutely different way on each platform
Currently, Memory is the inner implementation detail. Do we even need wrapping of arrays?
We may drop it as well as file reading in JVM
File reading does not break any rules, but I agree it is useless right now, so it could be commented out.
Stale PR, the problem itself has to be discussed
Pull request closed