LINUX.ORG.RU

[CL] кодстайл


0

0

как правильно оформить интерфейс модуля? но не только символы экспортировать, а указать типы функций/слотов, возможных кондишенов, аргументов макросов и т.д. то есть кусок кода с декларациями и хорошей документацией, по которому сразу ясен _весь_ интерфейс, наподобие .h файлов в C. есть хоть какой-нибудь более-менее универсально употребляемый подход?

defun function-name lambda-list [[declaration* | documentation]] form* documentation---a string; not evaluated.

а для остального slime у просматривающего код? я думал так все делают)

pseudo-cat ★★★
()
Ответ на: комментарий от pseudo-cat

и забыл - естественно из documentation строк легко собирается один файлик

pseudo-cat ★★★
()

А вот в Racket есть мощные контракты на межмодульном уровне, всё как в лучших домах.

Sphinx ★★☆☆
()
Ответ на: комментарий от korvin_

Он наверно имел ввиду пекеджи и системы

yoghurt ★★★★★
()

Правильно оформить можно в GNU Texinfo. Хороший пример - документация на CFFI (http://common-lisp.net/project/cffi/manual/html_node/index.html). Если модуль маленький, то подойдет documentation-template от Edi Weitz (пример: http://www.weitz.de/hunchentoot/)

Аналога .h-файлов нет по совершенно понятным причинам: в лиспе метаданные кода идут вместе с кодом.

dmitry_vk ★★★
()
Ответ на: комментарий от dmitry_vk

>Аналога .h-файлов нет по совершенно понятным причинам: в лиспе метаданные кода идут вместе с кодом.

ну, тогда пока ограничусь докстрингами и декларациями по месту.

ASTRALIS
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.