DawgSharp 1.3.0
See the version list below for details.
Install-Package DawgSharp -Version 1.3.0
dotnet add package DawgSharp --version 1.3.0
<PackageReference Include="DawgSharp" Version="1.3.0" />
paket add DawgSharp --version 1.3.0
#r "nuget: DawgSharp, 1.3.0"
// Install DawgSharp as a Cake Addin
#addin nuget:?package=DawgSharp&version=1.3.0
// Install DawgSharp as a Cake Tool
#tool nuget:?package=DawgSharp&version=1.3.0
DAWG (Directed Acyclic Word Graph) is a data structure for storing and searching large word lists while keeping your memory footprint small and lookups fast. DawgSharp is an open-source C# implementation featuring a linear time graph reduction algorithm and out-of-the-box persistence support.
The Dawg class is nearly as fast as a HashSet for lookups and is much, much more memory-efficient (factors of 30x - 40x are not uncommon). In a benchmark application it held two million words while consuming only 2Mbytes of RAM. That's only one byte per word! And it's even less on disk.
The Dawg class can be thought of as a read-only Dictionary<string, Value>: it has a ["string"] indexer and implements IEnumerable<KeyValuePair<string, Value>>. One other very useful feature of Dawg (not found in Dictionary) is the ability to quickly find all words that start with a particular prefix: dawg.MatchPrefix("star") could possibly yield "star", "starch", "start", "starting", etc.
This package is provided under the terms of the GNU GPL v3. Source code and documentation are available on GitHub: https://github.com/bzaar/DawgSharp. Commercial licenses are also available at http://morpher.co.uk/
Product | Versions |
---|---|
.NET | net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows |
.NET Core | netcoreapp1.0 netcoreapp1.1 netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1 |
.NET Standard | netstandard1.2 netstandard1.3 netstandard1.4 netstandard1.5 netstandard1.6 netstandard2.0 netstandard2.1 |
.NET Framework | net35 net40 net403 net45 net451 net452 net46 net461 net462 net463 net47 net471 net472 net48 |
MonoAndroid | monoandroid |
MonoMac | monomac |
MonoTouch | monotouch |
Tizen | tizen30 tizen40 tizen60 |
Universal Windows Platform | uap uap10.0 |
Windows Phone | wpa81 |
Windows Store | netcore451 |
Xamarin.iOS | xamarinios |
Xamarin.Mac | xamarinmac |
Xamarin.TVOS | xamarintvos |
Xamarin.WatchOS | xamarinwatchos |
-
.NETFramework 3.5
- No dependencies.
-
.NETFramework 4.0
- No dependencies.
-
.NETStandard 1.2
- NETStandard.Library (>= 1.6.1)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on DawgSharp:
Package | Downloads |
---|---|
Nestor
.NET Morphological library for Russian language |
|
Nestor.Chronicles
.NET Vector words library for Russian language |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.6.0 | 475 | 2/15/2022 |
1.5.0 | 1,093 | 12/1/2021 |
1.4.0 | 950 | 11/30/2021 |
1.3.0 | 10,125 | 6/23/2018 |
1.2.0 | 17,631 | 10/8/2015 |
1.1.1 | 1,181 | 7/10/2015 |
1.1.0 | 851 | 7/10/2015 |
1.0.7 | 5,675 | 1/2/2015 |
1.0.6 | 1,469 | 10/31/2014 |
1.0.5 | 953 | 6/2/2014 |
1.0.4 | 972 | 5/5/2014 |
1.0.3 | 947 | 5/4/2014 |
1.0.2 | 1,197 | 4/27/2014 |
- XML comments file added.
- New method 'Dawg.GetPrefixes' for splitting prefixes off a word.
- New method 'DawgBuilder.BuildYaleDawg' for building the optimized DAWG without having to save to it disk.
- Support for .NET Standard 1.2 and .NET 3.5 (in addition to .NET 4.0). Apps targeting .NET 4.5+ will work with the .NET 4.0 version.
This release only has additive API changes. The file format has not changed.