LINUX.ORG.RU

bike 0.14.0 - документация!

 , , ,


0

4

Теперь у библиотеки есть полноценная документация, что выгодно отличает ее от поделий на голанге, жопоскрипте и прочих питонах. Таким макаром, скоро лисп-экосистема дорастет до жабовской, или хотя бы, опять же, дотнетной.

https://github.com/Lovesan/bike/blob/master/doc/README.md

Кроме документации, доделал классы, которые могут вызываться из .NET. Вот в частности пример, как реализовать интерфейс IReadOnlyList<object> для лисповых коллекций:

https://github.com/Lovesan/bike/blob/master/examples/callable-classes.lisp

Также, добавил полноценную поддержку ECL. Единственная проблема с ECL в том, что он компилируется через Си, а так как библиотека активно использует компиляцию и кодогенерацию в рантайме(как на стороне .NET, так и в лиспе), то ECL постоянно вызывает компилятор сишечки, например GCC.

Также добавил функциональность по типу apropos, но для .NET классов, неймспейсов и членов классов.

Так, например, такой код:

(type-apropos "xml")

Выведет имена .NET классов, содержащие «xml» (сраную гору их просто; я даже сам не знал что их так много в стандартной библиотеке).

Также, обновление содержит кучу мелких багфиксов и улучшений, о некоторых из них можно почитать в CHANGELOG:

https://github.com/Lovesan/bike/blob/master/CHANGELOG.md

★★

Ответ на: комментарий от monk

вариант 1С, когда модуль, в котором ты работаешь, никто другой править не может, выглядит предпочтительней

В некоторых ситуациях да. Но когда один человек работает, а весь отдел ждёт своей очереди — далеко не всегда оптимальный вариант %)

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

Если два (или больше) потока одновременно делают swap! (замену значения)

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

Документация только безумная: https://clojure.github.io/clojure/clojure.core-api.html#clojure.core/swap! — из текста выглядит, что аргументы x и y игнорируются…

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

Документация только безумная … из текста выглядит, что аргументы x и y игнорируются

Есть немного. Ты ещё не видел, как Рич жабный код форматирует %)

Nervous ★★★★★
()