README.md

    Библиотека libIM

    Contributor Covenant

    Программная библиотека libIM предназначена для работы с моделью данных информационных моделей. Первоначально библиотека основывается на обработке модели данных IFC и формирования в соответсвтии с Российской национальной XML-схемой. Описание и обсуждение данной бибилиотеки ведется на сайте Свод знаний по информационному моделированию

    Концепция построения библиотеки

    Использование библиотеки

    Сборка библиотеки

    Раработка библиотеки ведется на языке программирования Julia. Данный язык был выбран в качестве базового по двум причнам:

    • этот язык мне нравится и применяется для различных видов математического моделирования
    • архитектура языка повщволяет в нем использовать конструкции C++ и Python Правила кодирования определяются Code Style: Blue

    При реализации данной библиотеки, с целью обеспечения последующей реализации поддержки различных форматов данных и преобразования их в универсальный формат информационной модели, было решено написать свои лексические анализаторы. Для этой цели используется сторонняя библиотека ParcerCombinator.jl, которая распространяется по лицензии MIT “Expat” License. Для удобства работы и понимания подходов работы данной библиотекиу здесь вы сможете найти перевод README.md этой библиотеки. Также общее описание подходов по работе данной библиотеки можно прочитать в переводенной версии файла design.txt. В дополнение ко всему на основе материалов stackoverflow.com был сформирован файл на английском языке Packard.md, чтобы дать пояснения как работает алгоритм семантического анализа Packrat.

    Примечание: дополнительно ведется анализ бибилиотеки CombinedParsers.jl. Workshop 2021 года по этой библиотее состоялся в рамка конференции JuliaCon2021. Также к этой библиотеке есть набор дополнительных решений CombinedParserTools.jl.

    Если вы планируете участовавать в доработке библиотеки libIM ознакомьтесь, пожалуйста, с рекомендациями под доработке и Кодексом Поведения участника

    Для обеспечения доступности библиотеки на разных платформах и на разных языках прогаммирования используется специальный пакет BinaryBuilder

    Описание

    Программная библиотека для работы с моделью данных информационной модели

    Конвейеры
    0 успешных
    0 с ошибкой