merlin
salsa
Our great sponsors
merlin | salsa | |
---|---|---|
12 | 16 | |
1,543 | 2,006 | |
0.4% | 2.1% | |
8.9 | 6.1 | |
4 days ago | 11 days ago | |
OCaml | Rust | |
MIT License | Apache License 2.0 |
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.
merlin
- Merlin: Context sensitive completion for OCaml in Vim and Emacs
-
Hacker News top posts: May 7, 2022
Merlin: Context sensitive completion for OCaml in Vim and Emacs\ (0 comments)
-
Hoogle for Rust?
Instead of searching functions based on their type structure (like Hoogle), you could search for functions that "consume"/"produce" values of given types (like OCaml's Merlin). I think Rust already computes variance of type constructors, so such a tool just would have to obtain this information.
-
Dot completion
However, after posting this question I stumbled upon this Github issue where they say it isn't supposed to work out of the box and you're supposed to bind a key to it by editing your .emacs file. Turns out the default .emacs file binds auto-complete to "backtab" which means Shift+Tab but that didn't work. I did eventually discover that I can get some kind of completion by binding backtab to completion-at-point like this:
-
Advice/best practice/arhitecture pattern for building language with LSP in mind?
Self-advertising: I partcipated to the writing of Merlin: A Language Server for OCaml (Experience Report), which explains the overall design of Merlin, a language server for OCaml. A key idea of Merlin are that classic lexing-parsing-typing pipelines can easily be adapted to be incremental for a Language Server, especially when they are using immutable data structures.
- merlin: Context sensitive completion for OCaml in Vim and Emacs
salsa
-
Introducing: Depends
There are some excellent crates already in the Rust ecosystem (notably Salsa) for performing incremental computation, although they generally have different goals to Depends.
-
Vercel announces Turbopack, the successor to Webpack
The content of that "Core Concepts" page sounds a lot like https://github.com/salsa-rs/salsa
-
Is there anything like funflow for rust?
I know of salsa, but I don't know if it can persist changes to disk (and my guess from looking at this issue is that it can't).
- Non-lexical lifetimes (NLL) fully stable | Rust Blog
-
The biggest new idea in computing for half a century was just scrapped
- the practical approach to this is to split workload into work units (aka tasks/queries/etc.) and then force information flow through centralized "request"/"query" APIs that automatically track dependencies - see https://github.com/salsa-rs/salsa for more information
-
Is there any research or articles on different, more efficient compiler designs?
This, and as pointed Salsa.
-
Trying to understand the paper "Efficient and Flexible Incremental Parsing" (incremental LR)
These guys might be of interest for you, they think a lot about incremental parsers. https://github.com/salsa-rs/salsa
-
Announcing avalanche 0.1, a React- and Svelte-inspired GUI library
salsa-rs authored by niko matsakis and other top rust devs
-
Is GO a good option to write a compiler/interpreter?
Some optimizations are not easy with Go. For example caching like in Rust Analyser Salsa Framework
-
Will rust ever have a futures executor in std?
How would this differ from salsa (https://github.com/salsa-rs/salsa) and the query-driven approach used by rustc?
What are some alternatives?
hoogle - Haskell API search engine
Benthos - Fancy stream processing made operationally mundane
ocamlformat - Auto-formatter for OCaml code
Disruptor - High Performance Inter-Thread Messaging Library
Mosh - Mobile Shell
papers-we-love - Papers from the computer science community to read and discuss.
ocaml-lsp - OCaml Language Server Protocol implementation
differential-dataflow - An implementation of differential dataflow using timely dataflow on Rust.
rust-prolog - Rust implementation of prolog based on miniprolog: http://andrej.com/plzoo/html/miniprolog.html
rust-signals - Zero-cost functional reactive Signals for Rust
TatSu - 竜 TatSu generates Python parsers from grammars in a variation of EBNF
ocaml-multicore - Multicore OCaml