Home

Awesome

<!------------------------------------------------------------------------------ This file is part of "Lady Deirdre", a compiler front-end foundation technology. This work is proprietary software with source-available code. To copy, use, distribute, or contribute to this work, you must agree to the terms of the General License Agreement: https://github.com/Eliah-Lakhin/lady-deirdre/blob/master/EULA.md The agreement grants a Basic Commercial License, allowing you to use this work in non-commercial and limited commercial products with a total gross revenue cap. To remove this commercial limit for one of your products, you must acquire a Full Commercial License. If you contribute to the source code, documentation, or related materials, you must grant me an exclusive license to these contributions. Contributions are governed by the "Contributions" section of the General License Agreement. Copying the work in parts is strictly forbidden, except as permitted under the General License Agreement. If you do not or cannot agree to the terms of this Agreement, do not use this work. This work is provided "as is", without any warranties, express or implied, except where such disclaimers are legally invalid. Copyright (c) 2024 Ilya Lakhin (Илья Александрович Лахин). All rights reserved. ------------------------------------------------------------------------------->

Lady Deirdre

Crate API Docs User Guide Examples

<img align="right" height="220" style="float: right; margin-left: 10px; width: 220px" alt="Lady Deirdre Logo" src="https://raw.githubusercontent.com/Eliah-Lakhin/lady-deirdre/master/work/logo.png" />

Lady Deirdre is a framework for incremental programming language compilers, interpreters, and source code analyzers.

This framework helps you develop a hybrid program that acts as a language compiler or interpreter and as a language server for a code editor's language extension. It offers the necessary components to create an in-memory representation of language files, including the source code, their lexis and syntax, and the semantic model of the entire codebase. These components are specifically designed to keep the in-memory representation in sync with file changes as the codebase continuously evolves in real time.

Lady Deirdre is the perfect tool if you want to start a new programming language project.

Key Features

Performance

Lady Deirdre aims to provide development infrastructure with acceptable computational performance suitable for production use.

The crate's API demonstrates solid benchmark test results, comparing individual features of the framework with specialized solutions from the Rust ecosystem.

For detailed information, refer to the Benchmarks page.

Links

Copyright

This work is proprietary software with source-available code.

To copy, use, distribute, or contribute to this work, you must agree to the terms and conditions of the General License Agreement.

For an explanation of the licensing terms, see the F.A.Q.

Copyright (c) 2024 Ilya Lakhin (Илья Александрович Лахин). All rights reserved.