Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Because "empty"/unused characters of the name (including the extension) shall be filled with the space character.

As the names are fixed to 8.3 there is no such thing as length detection/indication for the string.



That’s a description of part of the problem, not a reasonable excuse.


Didn't lots of SQL databases' CHAR(n) type used to be space-padded instead of null-padded too? If I had to guess, DOS simply copied that idea: filename=CHAR(8), ext=CHAR(3) with three blanks the "NULL" value.


> Didn't lots of SQL databases' CHAR(n) type used to be space-padded instead of null-padded too? If I had to guess, DOS simply copied that idea

DOS couldn't have copied what lots of SQL databases did, since DOS was being written around the same time as the first SQL databases.

My guess would be that, like the three character extension itself, this came from CP/M, not SQL.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: