Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why isn't JML implemented as Annotations in Java?

Contrary to Code Contracts in C#, in JML Code Contracts are just text that's used in the form of comments in the header of a method. Wouldn't it be better to have them exposed as Annotations, then? That way even when compiling the information would persist on the .class's metadata, contrary to comments, that get erased.

Am I missing something?

like image 929
devoured elysium Avatar asked Mar 18 '10 21:03

devoured elysium


2 Answers

From what I can see JML predates Java annotations by a good number of years. They could, of course, update it to make use of annotations presumably.

like image 105
TofuBeer Avatar answered Oct 27 '22 07:10

TofuBeer


There is experimental implementation of JML using Java annotations:
http://sourceforge.net/apps/trac/jmlspecs/wiki/JML6
Hopefully it will be released in some form in OpenJML this year (2010).

like image 23
kopper Avatar answered Oct 27 '22 07:10

kopper