CoffeeScript 1.5.0 позволяет писать комментарии в формате Markdown

в 10:26, , рубрики: coffeescript, javascript, markdown, Программирование, Совершенный код, метки: ,

Сегодня, 25 февраля, вышла версия 1.5.0 языка CoffeeScript. В ней впервые появилась базовая поддержка так называемого «грамотного» или «литературного» программирования (literate programming). Концепцию грамотного программирования придумал Дональд Кнут в 1981 году при разработке системы TeX. В отличие от исходного кода на обычном языке программирования, который включает в себя небольшие вкрапления комментариев, грамотное программирование подразумевает написание текстового документа на естественном языке с вкраплениями кода. Многие существующие системы грамотного программирования вообще не зависят от конкретного машинного языка.

Технически, грамотное программирование — система макросов, которая позволяет создать поверх фрагментов кода на любом языке программирования слой абстракций в виде фраз естественного языка, фактически создавая исполняемый псевдокод. Исходный файл одновременно является и исполняемой программой и документом на естественном языке, описывающем её.

Строго говоря, в CoffeeScript 1.5.0 пока не реализована полностью концепция Дональда Кнута — раскрытие макросов не поддерживается, компилятор лишь позволяет совмещать в одном файле с расширением .litcoffee разметку Markdown и код CoffeeScript. Такой файл можно выполнять, как обычный скрипт, а можно открыть в текстовом редакторе, где он будет выглядеть как отформатированный текст с фрагментами кода. Вот скриншот скрипта написанного в новом стиле:

CoffeeScript 1.5.0 позволяет писать комментарии в формате Markdown

А вот так он выглядит на Гитхабе в виде документа Markdown.

Схему подсветки синтакиса .litcoffee для TextMate и SublimeText можно скачать здесь.

Раньше похожий функционал предоставляла библиотека Docco, автором которой, как и самого языка CoffeeScript, является Джереми Ашкеназ. Она позволяет использовать в комментариях разметку Markdown и выводит текст в виде двух колонок — отформатированных комментариев и чистого исходного кода.

Автор: ilya42

Источник

Поделиться

* - обязательные к заполнению поля