sorbet
steep
Our great sponsors
sorbet | steep | |
---|---|---|
53 | 9 | |
3,525 | 1,323 | |
0.5% | - | |
9.9 | 9.5 | |
1 day ago | 2 days ago | |
Ruby | Ruby | |
Apache License 2.0 | 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.
sorbet
-
The Design Principles of the Elixir Type System
Not part of the official language spec, but Ruby has Sorbet, from a company who employs Ruby core contributors and helped with the recently released JIT additions to the language, amount countless other contributions over the last couple decades.
https://sorbet.org/
- Почему я программирую на Ruby
-
Bringing more sweetness to ruby with sorbet types 🍦
First let's introduce the tool: Sorbet is a gem developed by Stripe that aims to bring type notation syntax and type checking support for the Ruby ecosystem by utilizing the "Gradual typing" philosophy, it also provide type generation from YARD comments via the tapioca gem, allowing to grow alongside the already built Ruby codebase.
-
An Introduction to Metaprogramming in Ruby
We have hundreds of thousands of lines of ruby code spanning many services / monoliths. Even now I find it somewhat annoying to open a controller / component that is basically an empty class def but somehow executes a bunch of complex stuff via mixins, monkey patches etc, and you have to figure out how.
We are turning to https://sorbet.org/ to reign in the madness. I'm keen to know if others are doing the same, and how they are finding it (pros and cons)
- A few words on Ruby's type annotations state
-
Is Ruby on Rails still in demand?I see very few companies using it.Is it used in big tech companies like Google,Amazon,Facebook,Microsoft?
According to https://sorbet.org/ , the vast majority of code at Stripe is written in ruby.
-
¿Que lenguaje de programación consideran que no está saturado?
Caso de Stripe, que tuvo que inventar Sorbet para tener type checking en ruby.
- Building GitHub with Ruby on Rails
-
RJIT a New JIT for Ruby
> I guess what I'm asking is: do you see a future where there is more explicit control afforded to people who want to pick their own tradeoffs without resorting to writing everything performance-sensitive in extensions written in C/Rust/whatever?
An approach exists already in the present, and it's Stripe's Sorbet AOT compiler (https://github.com/sorbet/sorbet/tree/master/compiler).
-
Has Ruby actually increased the speed significantly?
That's incorrect. You may be thinking of Stripe, and AFAICT it's not very actively developed anymore: https://github.com/sorbet/sorbet/commits/master/compiler
steep
-
A decent VS Code and Ruby on Rails setup
I saw no mention of RBS+Steep, the latter providing a LSP. I use it a lot and very much like it, although it's still young and needs love, but it's making good, steady progress! I've been very pleasantly surprised by some of the crazy things Steep can catch, completely statically!
You appear to be working on projects with Sorbet (which I tried to like but found it fell short in practice, notably outside of the app use case i.e it's mostly useless for gems) so it may be a tall order to try on those. Maybe you can give RBS+Steep a shot on some small project?
RBS: https://github.com/ruby/rbs
RBS collection (for those gems that don't ship RBS signatures in `sig`, integrates with bundler): https://github.com/ruby/gem_rbs_collection
Steep: https://github.com/soutaro/steep
VS Code: https://github.com/soutaro/steep-vscode
Sublime Text: https://github.com/sublimelsp/LSP
Vim (I'm working on it): https://github.com/dense-analysis/ale/pull/4671
-
Bringing more sweetness to ruby with sorbet types 🍦
1. Lack of LSP: Since this new type check solution is quite new (at the time of writing), we don't have nice editor support via LSP. Things like steep will probably solve this in the future, but it's not a reliable solution now. On the other hand, Sorbet has existed for many years on the market and already provides a lot of tools for code intelligence, you can see more in this blog post.
-
State of the Ruby language server (LSP) ecosystem / looking for suggestions
https://github.com/soutaro/steep Also a type checker. This one uses rbs files. Not sure what subset of LSP features it supports either.
-
steep VS sorbet - a user suggested alternative
2 projects | 17 Apr 2022
-
Open-sourcing the Sorbet VS Code Extension
What type-checkers can use RBS? I find steep? Any others? Does anyone have a sense of how much use RBS is getting (and compared to Sorbet?) in the wild?
-
rbs collection was released!
rbs collection feature integrates this repository and tools use RBS, such as rbs command, Steep, and TypeProf.
-
Which one is a better VS Code language server for Ruby?
steep also can be run as a langserver, which is then used in the vscode plugin for type checking.
-
Static Typing in Ruby 3 Gives Me a Headache (But I Could Grow to Like It)
Once you have those in place, you use a tool called Steep, which is the official type checker "blessed" by the Ruby core team. Steep evaluates your code against your signature files and provides a printout of all the errors and warnings (similar to any other type checker, TypeScript and beyond).
-
15 Resources I Learned Something From This Weekend
soutaro / steep
What are some alternatives?
solargraph - A Ruby language server.
vscode-solargraph - A Visual Studio Code extension for Solargraph.
typeprof - An experimental type-level Ruby interpreter for testing and understanding Ruby code
rbs - Type Signature for Ruby
rubocop - A Ruby static code analyzer and formatter, based on the community Ruby style guide.
noclip.website - A digital museum of video game levels
YARD - YARD is a Ruby Documentation tool. The Y stands for "Yay!"
tapioca - The swiss army knife of RBI generation
vscode-ruby - Provides Ruby language and debugging support for Visual Studio Code