iceberg
rust-analyzer
iceberg | rust-analyzer | |
---|---|---|
5 | 132 | |
133 | 13,568 | |
0.0% | 0.7% | |
9.1 | 10.0 | |
12 days ago | 3 days ago | |
Smalltalk | 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.
iceberg
-
LSP could have been better
The problem with the filesystem is that it privileges organization scheme which isn’t the best one for every editing task. This makes, for example, implementation inheritance hard because your class has a bunch of invisible code in it. But, it you could expand all the superclass methods into a single view and then have edits automatically integrated into the appropriate places, this wouldn’t be as much of a problem.
Java’s filesystem hierarchy is a great example of a “fileout” format for the sort of environment I’m talking about. Another example here is smalltalk repositories generated by Iceberg: https://github.com/pharo-vcs/iceberg
-
Pharo 11, the pure object-oriented language and environment is released!
and looking at sample git commit (I assume this was done in Iceberg): https://github.com/pharo-vcs/iceberg/pull/1687/files
-
Stop Writing Dead Programs
By committing the code to a git repo and having a code review like every other language out there.
I'm guessing you have never tried these things but image based Smalltalk implementations have supported VCS for decades now, literally. In Pharo this is with git using Iceberg:
https://github.com/pharo-vcs/iceberg
They even wrote a tutorial to make it easier: https://github.com/pharo-vcs/iceberg/wiki/Tutorial
It's not magic, it's not even a problem, because the problem you're imagining doesn't actually exist. So long as the user of the system has at least half a brain (and maybe less) they will be capable of distributing their code with git these days.
-
Design Principles Behind Smalltalk (2001)
Iceberg for Pharo: https://github.com/pharo-vcs/iceberg
Monticello: http://www.wiresong.ca/monticello/
I haven't used the latter, but the former is easy to use and based on libgit. Create a new repository, select the packages that go into it, make the initial commit. After that it'll tell you when the changes don't match the repo. You can select down to the method level since it's aware of the language's syntax and semantics. The generated repository looks like the Iceberg repo itself, a collection of directories for the packages and then .st files for the classes and their contents.
-
Pharo 10
> a copy of your code the environment does some extra epicycles to copy it outside
Iceberg https://github.com/pharo-vcs/iceberg is the Git/etc. integration built into Pharo and works extremely well. You don't need to "file out" code if that's what you meant.
rust-analyzer
-
Cranelift code generation comes to Rust
go build 3.62s user 0.76s system 171% cpu 2.545 total
I was looking forward to parallel front-end[4], but I have not seen any improvement for these small changes.
[1]: https://github.com/rust-lang/rust-analyzer
-
A guide on Neovim's LSP client
For example, intelephense can show diagnostics in real time, there is no need to save the file to get new diagnostics. But rust-analyzer, the language server for rust, can only update diagnostics after saving the file.
-
Top 10 Rusty Repositories for you to start your Open Source Journey
6. Rust Analyzer
-
The rust-analyzer vscode extension is not working at all.
The rust-analyzer readme suggests you go here for support request. But even there, you'll need to provide more details to get useful help.
-
LSP could have been better
For example: https://github.com/rust-lang/rust-analyzer/blob/master/docs/...
> If you create an LSP, it will work best in VS Code.
Any editor can work just as well as (or even better than) VS Code.
-
Discussion Thread
So, apparently the reason why rust-analyzer, the LSP server for Rust does not have persistent caching is because it would make "optimizing initial passes less important".
- The AI Content Flippening
-
Introducing RustRover – A Standalone Rust IDE by JetBrains
All I want to know is: Will it have a build configuration pulldown?
-
Mastering Emacs: What's new in Emacs 29.1
I am not a Rust dev. It surely looks great.
However, from what I understand it seems to supply just a parser separate from the Rust compiler (https://github.com/rust-lang/rust-analyzer/tree/master/crate...) trying to keep up with Rust‘s development. So, in principle, it could have been just another treesitter parser plugin, too.
So, again, the LSP framework does not directly provide any magical benefit over a static parsing framework. All the semantic analysis capabilities stem from a good parser.
-
helix shows rust "language server exited"
rust-analyzer > manual > helix > binary > rustup component add rust-analyzer
What are some alternatives?
gtoolkit - Glamorous Toolkit is the Moldable Development environment. It empowers you to make systems explainable through experiences tailored for each problem.
vscode-rust - Rust extension for Visual Studio Code
REPLEndpoint - A RESTful endpoint that behaves like a REPL
intellij-rust - Rust plugin for the IntelliJ Platform
PharoChipDesigner - A little chip design game inspired by KOHCTPYKTOP: Engineer of the People by Zachtronics
rustfmt - Format Rust code
pharo - The Sources for Pharo
sublime-rust - The official Sublime Text 4 package for the Rust Programming Language
PharoByExample9 - The version of Pharo by Example for Pharo 90
coc-rust-analyzer - rust-analyzer extension for coc.nvim
Parasol - Testing web apps in Smalltalk using Selenium WebDriver.
eglot - A client for Language Server Protocol servers