Опечатки для спецификации языка Java 3-е издание
Я широко использую JLS как ресурс для обучения и преподавания, но заметил, что в нем есть некоторые ошибки.
Есть простые опечатки (например, JLS 5.1.4 "конвекции"), но есть и некоторые, которые я считаю довольно серьезными ошибками.
Например, JLS 18.1 Грамматика языка программирования Java должна быть авторитетным справочником по грамматике языка Java, но она содержит производственное правило, которое никогда не используется! (например MoreStatementExpressions
). Конечно, это признак более серьезных ошибок в других частях данной грамматики, верно?
Так есть ли опечатки для 3-го издания? Будет ли когда-нибудь? Должны ли мы отправлять найденные ошибки в Sun/Oracle? Будет ли когда-нибудь 4-е издание?
2 ответа
Лучшее, что я могу найти, - "Обзор технического обслуживания JSR 901 (спецификация языка Java(tm)) для Java SE 7".
Однако проблемы, о которых беспокоится ОП, вряд ли являются серьезными...
Конечно, это признак более серьезных ошибок в других частях данной грамматики, верно?
Я бы сказал "неправильно" по этому поводу. Неиспользованная продукция - чуть больше, чем ошибка типографской обработки / редактирования. Это не имеет никакого значения для смысла грамматики Java.
FWIW: главная страница Oracle JLS не содержит упоминаний о работе по пересмотру JSR 901 (которая, очевидно, завершилась!) И что ссылка для предоставления отзывов о JLS не работает.
Я также был сожжен проблемами с грамматикой в главе 18 JLS, и проблемами в других местах в JLS. Хотя многие программисты на Java не могут быть затронуты ими, это не тривиальные проблемы при создании компилятора или инструмента анализа программ.
Многие из проблем с JLS были исправлены в последней версии JLS ("JLS, Java SE edition" или, неофициально, "JLS 4th edition"). В частности, глава 18 (грамматика Java) была полностью пересмотрена и реорганизована.
Вы можете найти последнюю версию JLS на странице загрузки спецификаций Java SE ( прямая ссылка на JLS PDF).
ОБНОВЛЕНИЕ 18 февраля 2012: как описано в https://blogs.oracle.com/abuckley/en_US/entry/jls7_and_jvms7_online, выпуски Java SE 7 Спецификации языка Java и спецификации JVM теперь доступны по адресу http://docs.oracle.com/javase/specs/ в формате PDF и HTML.