The Loyc Core Libraries. Loyc.Essentials fills in gaps in the .NET Base Class Library; Loyc.Collections adds sophisticated data structures; and Loyc.Syntax contains the LES parser and other parsing-related services including base classes for LLLPG.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
Lib
Loyc.Collections
Loyc.Essentials
Loyc.Math
Loyc.Syntax
Loyc.Utilities
LoycCore.Benchmarks
MiniTestRunner
Tests
.gitignore
AssemblyVersion.cs
License.txt
Loyc.Collections.nuspec
Loyc.Essentials.nuspec
Loyc.Math.nuspec
Loyc.Syntax.nuspec
Loyc.Utilities.nuspec
LoycCore.nuspec
LoycCore.sln
Readme.md

Readme.md

README

The Loyc Core project is a set of general-purpose .NET libraries. LoycCore is especially focused on collections - classes, interfaces, adapters, and extension methods - but also has code in other areas, most notably parsing and syntax trees.

Contributors are welcome: more unit tests, code reviews, and new features are desired, anything relatively small (under about 3000 lines of code) that fits the theme "things that should have been built into the .NET framework, but aren't".

Please visit http://core.loyc.net for documentation.

NOTE: Development occurs primarily in the Enhanced C# repository, which contains the LoycCore repo as a "git subtree". However, git subtree push mysteriously stopped working which means that synchronization with this repo has become a manual process. As a result I would ask you not to use that repo anymore. We'll just do everything in ecsharp.

Dependency tree

Low-level libraries on top:

     Loyc.Essentials
            ^   ^
            |   |
            |   +----------------+
            |                    |
     Loyc.Collections        Loyc.Math
            ^                    ^
            |                    |
       Loyc.Syntax               |
            ^                    |
            |                    |
            +---------+----------+
                      |
                 Loyc.Utilities

These projects use couple of tricks to support .NET 3.5, .NET 4 and .NET 4.5 in a single solution file. The tricks are documented here: http://stackoverflow.com/questions/5006397/targetting-multiple-net-framework-versions-by-using-different-project-configura/23705790#23705790

TODO: Add portable class library version.

Note: the versions of these libraries for .NET 3.5 depend on the compatibility library Theraot.Core.dll.

Links