While playing with a compression algorithm, I have managed to corrupt my Session LOG file.
So each time I start up "Dyalog APL/W-64 Version 19.0.48959" I get the error:
I have tried using the Log menu to "Clear" and then "Save". I then ")OFF".Failed to complete read of log file "C:\Users\ray_c\Documents\Dyalog APL-64 19.0 Unicode Files\default_000.dlfx".
But when I start up APL again I get the same error.
I think I have got round this by using the Log menu options "Clear" and then "Save as",
supplying the name "C:\Users\ray_c\Documents\Dyalog APL-64 19.0 Unicode Files\default_000.dlfx" and then saying "Yes" to the pop-up message box requiring conformation to overwriting the (corrupt) file.
My query is :
Could any data of ⎕DR type 320, when displayed in the session, be the cause of the corruption of the log file?
(My compression algorithms was converting a "sparse" Boolean matrix with many all-zero rows. A Boolean vector used to compress out the all-zero row was converted into a 32 bit character, and the non-all-zero rows were then converted into 32 bit characters.
I had no difficulty in viewing these 320 bit characters in the session with "]Box on -s=max".
However, it is at that point that the "Read" of the log file failed at the next Dyalog start-up.
I have since rewritten the compression to use data types of 80 for the compression vector and 160 for the non-zero rows, resulting in a 70% reduction in size, but fear displaying the these characters in the session my again corrupt the log.)