Design by contract
От: artelk  
Дата: 06.06.11 13:58
Оценка: 1 (1)
А возможно ли на Nemerle сделать "настоящий" Design by contract, со статической проверкой на вызывающей стороне?
Про эти макросы в курсе, но там проверка переносится в рантайм.
Единственное что приходит в голову, как это реализовать — это сделать, чтобы макросы requires/ensures делали из метода, для которого они указаны, макрос.
И чтобы "вызов" этого метода-макроса был бы триггером для отработки соответствующей логики проверки на вызывающей стороне и выполняемой в компайл-тайм.
Но для этого потребуется такая фича как "макрос класса", по аналогии с "методом класса". Плюс нужна возможность использования макросов в той же сборке и возможность макросом сгенерировать определение другого макроса.

1. Какие идеи на этот счет?
2. Будут ли такие возможности в N2?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.