home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / std_unix / volume.26 / text0019.txt < prev    next >
Encoding:
Text File  |  1992-02-21  |  3.4 KB  |  65 lines

  1. Submitted-by: lewine@cheshirecat.webo.dg.com (Donald Lewine)
  2.  
  3. In article <1991Nov25.182431.17201@uunet.uu.net>, jfh@rpp386.cactus.org (John F Haugh II) writes:
  4. |> 
  5. |> I would say that POSIX completely ignored any codeset which was not
  6. |> 7-bit clean ASCII.  The simple issue of 8-bit code points being
  7. |> mangled by ISTRIP is clear proof of this point.  The definition of
  8. |> this function is in terms of bit widths, rather than character sizes.
  9. |> Any 8-bit code set (such as the European character sets or even EBCDIC)
  10. |> are mangled by the translation suggested by ISTRIP.
  11. POSIX.1 supports ISTRIP because it was historically present in the 
  12. reference systems.  Supporting the flag is consistent with the goal
  13. of breaking as few applications as possible.  POSIX.1 Section B.7.1.2.2
  14. states, "Although the ISTRIP flag is normally superfluous with today's
  15. terminal hardware and software, it is historically supported. Therefore,
  16. applications may be using ISTRIP, and there is no technical problem with
  17. supporting this flag."  I could add that removing the ISTRIP flag would
  18. not cause any of those applications to instantly start supporting 
  19. European character sets or EBCDIC.  Leaving the flag in the standard
  20. does not indicate any bias by the committee or the IEEE.
  21.  
  22. |> 
  23. |> I am certain that the various groups did give some thought to the
  24. |> issue, but it really is pretty obvious that 1003.1 completely ignored
  25. |> any system which uses 8 bit character sets.
  26. |> 
  27. |> While 1003.1 was off inventing a new tty subsystem, it would have
  28. |> been nice if they invented an interface for setting any locale-specific
  29. |> traits of the tty system (a "tcsetlocale()" sort of deal) that would
  30. |> provide for translations of locale-specific characters (the variously
  31. |> accented vowels, for example) into something more POSIX-friendly.
  32. They left all of hooks to add locale-specific processing:
  33.  7.1.2.1: The members of the [termios] structure are not limited to
  34.           those shown it Table 7-1.
  35.  7.1.1.9: An implementation may define multibyte sequences that have
  36.           a meaning different from the meaning of the bytes when 
  37.           considered individually.  Implementations may also
  38.           define additional single-byte functions.
  39.  7.1.2.5: If IEXTEN is set, implementation-defined functions shall be
  40.           recognized from the input data.
  41.  B.7 (4): None of the basic historical implementations are adequate
  42.           in an international environment.  This concern is not
  43.           technically within the scope of POSIX.1, but the goal of
  44.           POSIX.1 was to mandate no unnecessary impediments to
  45.           internationalization.
  46.  B.7.2:   Applications should always do a tcgetattr(), save the
  47.           termios structure values returned, and then do a 
  48.           tcsetattr() changing only the necessary fields [thus
  49.           preserving all implementation-defined flags].
  50.  
  51. In short, my reading of POSIX.1 shows that there was a great deal of
  52. concern with internationalization and that the inclusion of ISTRIP is
  53. not "clear proof" that "POSIX ignored any codeset which was not 
  54. 7-bit clean ASCII."
  55.  
  56. --------------------------------------------------------------------
  57. Donald A. Lewine                (508) 870-9008 Voice
  58. Data General Corporation        (508) 366-0750 FAX
  59. 4400 Computer Drive. MS D112A
  60. Westboro, MA 01580  U.S.A.
  61. uucp: uunet!dg!lewine   Internet: lewine@cheshirecat.webo.dg.com
  62.  
  63. Volume-Number: Volume 26, Number 19
  64.  
  65.