README 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. casefold.c
  2. This is a perhaps silly utility that can be used to convert all parts of a
  3. file that are not in strings and not parts of comments to lower case. It has
  4. a list of exceptions for words that should NOT be folded to lower case.
  5. Its purpose is to make it possible to finalize the adaptation of Reduce
  6. from its original upper-case-only world to one where eventually we can
  7. make the system case sensitive.
  8. Anybody offended by the changes it has made to their code may either edit
  9. their files back to the state they want manually or they may add the mixed
  10. case words that matter to them to the list here and use this to apply
  11. changes systematically. In most cases where package maintainers had used
  12. mixed case at all I found multiple instances where they had not been
  13. consistent in its use.
  14. A harder issue is competing modules that use the same name but where there
  15. is disagreement as to the best case to use. Especially for local variables
  16. people ought really to be able to use whatever capitalization they like
  17. within their own package - but for simplicity I will apply global adjustments.
  18. The change I made that perhaps led me to need to alter most odd files was
  19. making the fully spelt out word COMMENT always appear in upper case in
  20. source files. This led to the need to adjust many log files. Note that
  21. "comment" and "Comment" will still be treated as introducing a comment
  22. if Reduce input has case-folding enabled. I believed that the bold word
  23. COMMENT was a better thing to standardise on than its lower case varient.
  24. When initially building this I will avoid processing anything in the redlog
  25. directory even though there are inconsistencies there so that the relevant
  26. authors can fix things up be hand! But otherwise I go something like
  27. for x in packages/*/*.red packages/*/*.tst
  28. do
  29. ./casefold $x
  30. done
  31. to standardise the bulk of Reduce. I then need to check and review all
  32. the .rlg files where they echo input that has been subjec to case change.
  33. I prefer to edit those individually as that helps ensure I have really
  34. considred log-file changes...
  35. Arthur Norman. March 2015