-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 70ed01a
Showing
136 changed files
with
33,321 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,247 @@ | ||
# End User License Agreement | ||
|
||
This End User License Agreement(the "Agreement") is a legal document detailing | ||
your rights and obligations related to using of my proprietary computer software | ||
work(the "Work"). | ||
|
||
By downloading or using of this Work, you are agreeing to be bound by the terms | ||
of this Agreement, and this Agreement will be effective upon the first of those | ||
events to occur. | ||
|
||
If you do not or cannot agree to the terms of this Agreement, do not use | ||
this Work. | ||
|
||
"I", "me" or "my" refers Ilya Lakhin (Илья Александрович Лахин in Russian), | ||
the exclusive copyright holder of the Work responsible for providing this Work | ||
to you under the terms of this Agreement. | ||
|
||
"You" or "your" refers an individual or a legal entity exercising | ||
permissions granted by this Agreement. | ||
|
||
## The Work. | ||
|
||
This Agreement is licensing work called "Lady Deirdre", a computer software | ||
technology made for development of the programming languages source code | ||
analysis, compilation, translation and interpretation software. This technology | ||
has a number of applications including(but not limited to) development of the | ||
programming languages compilers, script languages interpreters, live coding | ||
systems, source code editors software, extensions for integrated development | ||
environment software. | ||
|
||
The Work consists of a set of source code files, documentation files, | ||
example files, compilation scripts, and related content files. As a whole this | ||
Work represents a set of computer software tools and compilable modules with | ||
application programming interfaces to be integrated into the third party end | ||
software products. | ||
|
||
This Work was created and published worldwide by me through the GitHub public | ||
repository in 2022: | ||
|
||
https://github.com/Eliah-Lakhin/lady-deirdre | ||
|
||
The Work licensed to you under this Agreement includes the foregoing published | ||
files that is copied to your computer, any future updates and upgrades to this | ||
Work made available to you by me, and any versions of any of the foregoing | ||
that you make under the License. | ||
|
||
## The License. | ||
|
||
I grant you a non-exclusive, non-transferable, non-sublicensable worldwide | ||
license to use, modify and distribute of this Work in ways expressively | ||
permitted by the terms of this Agreement solely(the "License"). | ||
|
||
No license or other rights in any work or intellectual property rights owned | ||
by me other than this Work are granted under this Agreement. | ||
|
||
## Personal Use. | ||
|
||
As long as you are not violating this Agreement or applicable law, you can | ||
privately use this Work however you want. For example, you can use this Work | ||
to try Lady Deirdre technology, or for personal educational, training, or | ||
research purposes. | ||
|
||
"Private use" means personal use of the Work such that you do not share | ||
the Work or anything you make with it with the third party of this Agreement. | ||
|
||
## Derivative Work. | ||
|
||
You can make a Derivative Work from this Work if you assign to me | ||
this Derivative Work. | ||
|
||
"Assign" means that without any additional terms and conditions other than the | ||
terms of this Agreement you grant me a fully-paid, exclusive, irrevocable, | ||
unlimited in time, sublicensable, transferable license to use, reproduce, | ||
distribute, publicly display, publicly perform, make, sell, offer to sell, | ||
import, modify and make derivative works based on, and otherwise exploit your | ||
Derivative Work for all current and future methods and forms of exploitation | ||
in any country. | ||
|
||
You represent and warrant that you have sufficient rights (including, but not | ||
limited to intellectual property rights, moral rights and other personal rights) | ||
in the Derivative Work that you provide to me to grant me the rights described | ||
above. If any of the rights to be licensed to me may not be licensed under | ||
applicable law, you hereby waive and agree not to assert any of those rights. | ||
|
||
"Derivative Work" means any work that is based on the Work and for which the | ||
editorial revisions, annotations, elaborations, or other modifications | ||
represent, as a whole, an original work. | ||
|
||
For the purposes of this Agreement, the term "Derivative Work" shall not include | ||
works that remain separable from the Work, that uses application programming | ||
interfaces of programming modules of the Work only, and that do not copy, | ||
distribute, display, sell the Work or any parts of the Work to the third | ||
parties in source or compiled form. | ||
|
||
For example, if you fork my public GitHub repository to make some changes to | ||
the Work, or if you make a pull request to my GitHub repository with the changes | ||
to the Work, you assign those changes to me. | ||
|
||
But if you make separated computer software that uses the Work through | ||
the application programming interfaces of compilable modules of the Work only, | ||
and without any changes to the Work, and your work does not incorporate or | ||
distribute my Work in source or compiled form, this separated computer software | ||
is not a Derivative Work. | ||
|
||
## Extension Work. | ||
|
||
In purpose to extend functional capabilities of the Work as a computer software, | ||
you can make a work separable from my Work that will use my Work through | ||
the application programming interfaces of compilable modules of my Work only, | ||
and that will not incorporate or distribute my Work or any part of my Work | ||
in source or compiled form(the "Extension Work"). | ||
|
||
As between you and me, you own all rights to the Extension Work, and this | ||
Agreement does not limit your rights to your Extension Work under applicable | ||
law as long as distribution, selling, using, reproducing, public displaying, | ||
public performing, modifying or making derivatives of your Extension Work | ||
does not permit the third party of this Agreement to incorporate my Work and | ||
does not extend my liability to the third party of this Agreement. | ||
|
||
## Products and Services. | ||
|
||
You can develop a computer software product or a service that incorporates | ||
the Work without changes in source or compiled form(the "Product"). | ||
|
||
You may only publicly distribute this Product as expressively permitted by | ||
the terms of this section of the Agreement, and you agree to pay me Quarterly | ||
Royalties from Revenue generated by your Product under the terms of this section | ||
of the Agreement. | ||
|
||
1. You must ensure to inform your Product Users about copyright attribution of | ||
the Work by including the name of the Work, my name as a copyright holder | ||
of the Work, and the link to the GitHub repository where my Work was | ||
published (as described in "The Work" section of this Agreement). | ||
|
||
2. You can permit your Product Users to use, reproduce, display, publicly | ||
perform the Work in compiled form as an inseparable part of your Product | ||
and for the purpose of your Product functional availability only. | ||
|
||
3. You may not permit your Product Users to incorporate the Work into their | ||
own products, projects, or other services. | ||
|
||
4. In your Product's end user license agreement you must include necessary | ||
warranty terms that otherwise would infringe the warranty terms of this | ||
Agreement. | ||
|
||
5. If the total Revenue generated by your Product during the Product lifetime | ||
is lesser or equal to $200,000 in USD (or the market equal value in other | ||
currencies), you will not owe me royalty payments under this | ||
Agreement(the "Royalty-Free Limit"). | ||
|
||
6. If the total Revenue generated by your Product during the Product lifetime | ||
has exceeded the Royalty-Free Limit, the Agreement obligates you to pay me | ||
"Quarterly Royalties", and this obligation will be effective upon this | ||
event to occur. | ||
|
||
7. Quarterly Royalties are calculated by multiplying the calendar quarterly | ||
gross Revenue by the factor of 0,02(two percents). Within 30 days after | ||
the end of each calendar quarter in which you earn Revenue, you must report | ||
the quarterly Revenue to me on a per Product basis, and pay me the 2% of | ||
the quarterly Revenue. | ||
|
||
8. To the extent of the applicable law, all Quarterly Royalty payments are | ||
non-refundable under all circumstances. | ||
|
||
9. I reserve the right to charge additional 1% late fee per calendar quarter | ||
compounding for any amount unpaid after the required due date. | ||
|
||
10. You are responsible for all taxes and transactional expenses on all | ||
payments required to be made by you under this Agreement other than the | ||
taxes of my income. | ||
|
||
"Product Users" means any individual or an entity who receives a copy of your | ||
Product, or to whom you provide a service(directly or through the third party | ||
distributors or service providers) using your Product. | ||
|
||
"Revenue" means total gross revenue generated by your Product worldwide | ||
directly, and regardless of who receives the revenue. Revenue sources | ||
include(but not limited to) such sources as digital or retail sales of the | ||
Product, revenue from paid subscriptions to the Product as a service, donations | ||
and crowdfund campaigns associated with the Product, any payments from the third | ||
party distributors or the third party agents distributing, selling or offering | ||
the Product. | ||
|
||
## Distribution. | ||
|
||
You can distribute or display copies of the Work without changes through network | ||
to the third parties of this Agreement who have legal rights to receive these | ||
copies as long as the distribution or displaying of the Work is free of | ||
charge to the third party, and free of charge to me, and the distribution or | ||
displaying will not extend my liability to the third parties of this Agreement. | ||
|
||
When you distribute or display the Work to the third party you must ensure that | ||
the third party also gets the text of this Agreement or a link | ||
to this Agreement on GitHub: | ||
|
||
https://github.com/Eliah-Lakhin/lady-deirdre/blob/master/EULA.md | ||
|
||
For example, GitHub or any other Internet content distribution service that I | ||
use to publish this Work or to publish any updates and upgrades to the Work also | ||
receive the right under this term of the Agreement to distribute or to display | ||
my Work without changes to the users who are also bound by this Agreement terms. | ||
|
||
## Warranty. | ||
|
||
**As far as the law allows, this software comes as is, without any warranty or | ||
condition, and I will not be liable to anyone for any damages related to | ||
this software or this License, under any kind of legal claim.** | ||
|
||
## Third Party Software. | ||
|
||
By entering into this Agreement, you are accepting to the license terms of the | ||
third party software incorporated into this Work that precedence over any | ||
inconsistencies with the terms of this Agreement. You agree that the owners of | ||
the third party software are intended third party beneficiary to this Agreement | ||
in relation to your use of the third party software incorporated into this Work. | ||
|
||
When you make a Derivative Work, or by making any contribution into this Work, | ||
or otherwise use this Work in source or compiled form, you are not permitted | ||
(and you may not permit others) to include, incorporate, combine or mix any | ||
third party software or parts of it in source or compiled form that would | ||
directly or indirectly require that all or a part of this Work be governed under | ||
any terms other than those of this Agreement. | ||
|
||
In particular, you may not incorporate any third party software licensed under | ||
the GNU General Public License into this Work. | ||
|
||
## Amendments, Continuation, Additional Terms. | ||
|
||
I reserve the right to change and amend the terms of this Agreement, | ||
to replace or amend this Agreement with another public license terms, | ||
or to stop offering of this Work to public without any offering replacement. | ||
|
||
Once you have agreed to the new terms and amendments, the new terms will | ||
supersede the terms agreed previously. | ||
|
||
You are not required to accept new terms or amendments, and this Agreement | ||
will continue to govern your use of the Work you already have access to. | ||
But if you do not or cannot agree to the new terms or amendments you will not | ||
be allowed to use any new versions, updates, upgrades and changes in this Work | ||
governed by new terms and amendments. | ||
|
||
This Agreement does not supersede, amend or otherwise affect other agreements | ||
you may have between you and me. | ||
|
||
This Agreement does not have any obligations to make new versions and upgrades | ||
to the Work, or to make available for access or download any versions or | ||
upgrades to this Work. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
# Lady Deirdre. | ||
|
||
[![Lady Deirdre Main Crate API Docs](https://img.shields.io/docsrs/lady-deirdre?label=Main%20Docs)](https://docs.rs/lady-deirdre) | ||
[![Lady Deirdre Macro Crate API Docs](https://img.shields.io/docsrs/lady-deirdre-derive?label=Macro%20Docs)](https://docs.rs/lady-deirdre-derive) | ||
[![Lady Deirdre Main Crate](https://img.shields.io/crates/v/lady-deirdre?label=Main%20Crate)](https://crates.io/crates/lady-deirdre) | ||
[![Lady Deirdre Macro Crate](https://img.shields.io/crates/v/lady-deirdre-derive?label=Macro%20Crate)](https://crates.io/crates/lady-deirdre-derive) | ||
|
||
Compiler front-end foundation technology. | ||
|
||
If you want to create your own programming language with IDE support from | ||
day one, or if you are going to develop new IDE from scratch, or a programming | ||
language LSP plugin, this Technology is for you! | ||
|
||
Lady Deirdre provides a framework to develop Lexical Scanner, Syntax Parser and | ||
Semantic Analyser that could work in live coding environment applying | ||
user-input changes incrementally to all underlying data structures. | ||
|
||
This Technology represents a set of essential instruments to develop modern | ||
programming language compilers with seamless IDE integration. | ||
|
||
**Features**: | ||
|
||
- Written in Rust entirely. | ||
- Derive-macros to define PL Grammar directly on Enum types. | ||
- Smart error recovery system out of the box. | ||
- Dependency-free no-std ready API. | ||
- Works faster than Tree Sitter. | ||
|
||
**Links:** | ||
- [Main Crate API Documentation](https://docs.rs/lady-deirdre). | ||
- [Macro Crate API Documentation](https://docs.rs/lady-deirdre-derive). | ||
- [Repository](https://github.com/Eliah-Lakhin/lady-deirdre). | ||
- [Examples, Tests, Benchmarks](https://github.com/Eliah-Lakhin/lady-deirdre/tree/master/work/crates/examples). | ||
- [End User License Agreement](https://github.com/Eliah-Lakhin/lady-deirdre/blob/master/EULA.md). | ||
|
||
**This Work is a proprietary software with source available code.** | ||
|
||
To copy, use, distribute, and contribute into this Work you must agree to | ||
the terms of the [End User License Agreement](https://github.com/Eliah-Lakhin/lady-deirdre/blob/master/EULA.md). | ||
|
||
The Agreement let you use this Work in commercial and non-commercial purposes. | ||
Commercial use of the Work is free of charge to start, but the Agreement | ||
obligates you to pay me royalties under certain conditions. | ||
|
||
If you want to contribute into the source code of this Work, the Agreement | ||
obligates you to assign me all exclusive rights to the Derivative Work made by | ||
you (this includes GitHub forks and pull requests to my repository). | ||
|
||
The Agreement does not limit rights of the third party software developers as | ||
long as the third party software uses public API of this Work only, and the | ||
third party software does not incorporate or distribute this Work directly. | ||
|
||
If you do not or cannot agree to the terms of this Agreement, do not use | ||
this Work. | ||
|
||
Copyright (c) 2022 Ilya Lakhin (Илья Александрович Лахин). All rights reserved. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
################################################################################ | ||
# This file is a part of the "Lady Deirdre" Work, # | ||
# a compiler front-end foundation technology. # | ||
# # | ||
# This Work is a proprietary software with source available code. # | ||
# # | ||
# To copy, use, distribute, and contribute into this Work you must agree to # | ||
# the terms of the End User License Agreement: # | ||
# # | ||
# https://github.com/Eliah-Lakhin/lady-deirdre/blob/master/EULA.md. # | ||
# # | ||
# The Agreement let you use this Work in commercial and non-commercial # | ||
# purposes. Commercial use of the Work is free of charge to start, # | ||
# but the Agreement obligates you to pay me royalties # | ||
# under certain conditions. # | ||
# # | ||
# If you want to contribute into the source code of this Work, # | ||
# the Agreement obligates you to assign me all exclusive rights to # | ||
# the Derivative Work or contribution made by you # | ||
# (this includes GitHub forks and pull requests to my repository). # | ||
# # | ||
# The Agreement does not limit rights of the third party software developers # | ||
# as long as the third party software uses public API of this Work only, # | ||
# and the third party software does not incorporate or distribute # | ||
# this Work directly. # | ||
# # | ||
# AS FAR AS THE LAW ALLOWS, THIS SOFTWARE COMES AS IS, WITHOUT ANY WARRANTY # | ||
# OR CONDITION, AND I WILL NOT BE LIABLE TO ANYONE FOR ANY DAMAGES # | ||
# RELATED TO THIS SOFTWARE, UNDER ANY KIND OF LEGAL CLAIM. # | ||
# # | ||
# If you do not or cannot agree to the terms of this Agreement, # | ||
# do not use this Work. # | ||
# # | ||
# Copyright (c) 2022 Ilya Lakhin (Илья Александрович Лахин). # | ||
# All rights reserved. # | ||
################################################################################ | ||
|
||
[workspace] | ||
members = ["crates/*"] |
Oops, something went wrong.