flx.SILQ
1.0.0-alpha.3
dotnet add package flx.SILQ --version 1.0.0-alpha.3
NuGet\Install-Package flx.SILQ -Version 1.0.0-alpha.3
<PackageReference Include="flx.SILQ" Version="1.0.0-alpha.3" />
<PackageVersion Include="flx.SILQ" Version="1.0.0-alpha.3" />
<PackageReference Include="flx.SILQ" />
paket add flx.SILQ --version 1.0.0-alpha.3
#r "nuget: flx.SILQ, 1.0.0-alpha.3"
#:package flx.SILQ@1.0.0-alpha.3
#addin nuget:?package=flx.SILQ&version=1.0.0-alpha.3&prerelease
#tool nuget:?package=flx.SILQ&version=1.0.0-alpha.3&prerelease
SILQ
SILQ (Simple Interpreted Language for Queries) is a lightweight, expressive language designed to query object data in a simple, human-readable way. It provides developers with a minimal, easy-to-learn scripting environment that can be quickly embedded into applications for powerful object querying—without the overhead of complex query engines.
What is SILQ for?
SILQ is ideal for:
- Filtering and transforming in-memory objects using a natural, SQL/English-like syntax
- Embedding dynamic, user-defined queries in your applications
- Internal tooling, configuration, or low-overhead data transformation tasks
SILQ is inspired by SQL and LINQ, but is intentionally minimal and runtime-interpreted. It is designed to be simple, predictable, and easy to integrate.
Key Features
- Filter collections with flexible conditions
- Select and project fields or computed expressions
- Count, pick the first, or pick the last matching item
- Access nested properties with dot notation
- Perform logical, arithmetic, and string operations
- Use intuitive membership and comparison checks
Example Usage
Suppose you have a collection of Person objects in your .NET application:
public class Person {
public string Name { get; set; }
public int Age { get; set; }
public string City { get; set; }
}
You can use SILQ to query this data:
1. Select all people over 18
from people where Age > 18;
2. Select names of people in London
from people where City == "London" select { Name };
3. Count people under 30
count from people where Age < 30;
4. Get the first person named "Alice"
first from people where Name == "Alice";
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0-alpha.3 | 2,532 | 5/16/2025 |
| 1.0.0-alpha.2 | 237 | 5/14/2025 |
| 1.0.0-alpha | 235 | 5/13/2025 |