edgesearch
llvm-project
edgesearch | llvm-project | |
---|---|---|
5 | 2 | |
464 | 38 | |
- | - | |
0.0 | 0.0 | |
about 2 years ago | almost 3 years ago | |
Rust | C++ | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
edgesearch
-
Lifetime Annotations for C++
From https://westurner.github.io/hnlog/#comment-30603322 re https://en.wikipedia-on-ipfs.org/wiki/Database_index :
https://github.com/wilsonzlin/edgesearch :
> * Serverless full-text search with Cloudflare Workers, WebAssembly, and Roaring Bitmaps *
> "Edgesearch builds a reverse index by mapping terms to a compressed bit set (using Roaring Bitmaps) of IDs of documents containing the term, and creates a custom worker script and data to upload to Cloudflare Workers"
WASM or [C++] to WASM?
TIL about Roaring Bitmaps: /?q=roaring+bitmap https://medium.com/@amit.desai03/roaring-bitmaps-fast-data-s...
-
How does database indexing work?
https://en.wikipedia-on-ipfs.org/wiki/Database_index
https://news.ycombinator.com/item?id=28021766 re: edgesearch, HTTP/3 (QUIC (UDP))
> Serverless full-text search with Cloudflare Workers, WebAssembly, and Roaring Bitmaps https://github.com/wilsonzlin/edgesearch
>> How it works: Edgesearch builds a reverse index by mapping terms to a compressed bit set (using Roaring Bitmaps) of IDs of documents containing the term, and creates a custom worker script and data to upload to Cloudflare Workers
- Abusing AWS Lambda to Make an Aussie Search Engine
-
Serverless SQLite
I've also tried full-text-search in worker by pre-indexing the content, works very fast even with a JS engine - less than 5ms to make a search in 5MB of text.
It runs out of CPU-time at 6MB of text though.
There's someone that made a WASM for the same thing too, it's definitely faster and can handle a bit more text.
https://github.com/wilsonzlin/edgesearch
- Serverless Full-Text Search with Cloudflare Workers WebAssembly Roaring Bitmaps
llvm-project
-
High-confidence Lifetime Checks in Visual Studio version 17.5 Preview 2
The flow-sensitive analysis that is stricter is in a fork here: https://github.com/mgehre/llvm-project
-
Lifetime Annotations for C++
This reminds me of the -Wlifetime proposal, which provides similar checks but requires annotation of ownership at struct level (hence the check only applies to new structs):
An example: https://github.com/llvm/llvm-project/blob/main/clang/test/Se...
More details can be found at https://herbsutter.com/2018/09/20/lifetime-profile-v1-0-post...
Unfortunately it was never upstreamed according to https://github.com/mgehre/llvm-project/issues/98
What are some alternatives?
edge-sql - Cloudflare Workers providing a SQL API
SVF - Static Value-Flow Analysis Framework for Source Code
torrent-net - Distributed search engines using BitTorrent and SQLite
tokio - A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...
sql.js - A javascript library to run SQLite on the web.
ayanami-nemesis-analyzer - A C/C++ Staitc Analyzer for Now.
fatcow-icons - FatCow icons v3.9.2 (I was given a permission to host these on GitHub by FatCow support.)
codebrowser - Woboq CodeBrowser
PyO3 - Rust bindings for the Python interpreter
llvm-project - The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
dqlite - Embeddable, replicated and fault-tolerant SQL engine.
cxx - Safe interop between Rust and C++