ACSL (Мова специфікації Ansi C) - це специфікація коду С, анотація із спеціальними коментарями, що дозволяє офіційно перевірити код C.
Я не розглядав це, але уявляю, що формальні методи, що використовуються у верифікаторах ACSL, були б схожими на Лоріку Лоара . Однак для чисто функціональних мов, таких як Haskell, я не уявляю, який формалізм буде використовуватися для формальної перевірки.
Хтось зробив щось подібне до ACSL , але для чистої функціональної мови? Якщо ні, то чи проводились якісь дослідження щодо формальної перевірки стилю з анотованими стилями для функціональних мов?
Я знаю, що існує залежна типізація, яку підтримують багато мов (Agda, Idris тощо), але в Haskell залежно від того, щоб ввести текст, важко, не роблячи деякого (нечитабельного?) Типу майстра. Зважаючи на це, і оскільки Haskell має набагато кращу підтримку бібліотеки, ніж Agda та Idris, я вважаю, що така система функціональної формальної перевірки може бути корисною, але я не знаю, чи було проведено дослідження з цього питання чи ні.