Почему JML не реализован как аннотации в Java?
-
20-09-2019 - |
Вопрос
В отличие от контрактов кода в C#, в JML контракты кода — это просто текст, который используется в виде комментариев в заголовке метода.Не лучше ли было бы представить их в виде аннотаций?Таким образом, даже при компиляции информация будет сохраняться в метаданных .class, в отличие от комментариев, которые будут удалены.
Я что-то пропустил?
Решение
Судя по тому, что я вижу, JML предшествует аннотациям Java на много лет.Они, конечно, могли бы обновить его, чтобы предположительно использовать аннотации.
Другие советы
Существует экспериментальная реализация JML с использованием аннотаций Java:
http://sourceforge.net/apps/trac/jmlspecs/wiki/JML6
Надеюсь, он будет выпущен в той или иной форме в OpenJML в этом году (2010).
Не связан с StackOverflow