It's also a perniciously hard problem I'm very far from solving well quite yet.
87 karma · joined June 1, 2013
It's also a perniciously hard problem I'm very far from solving well quite yet.
Nothing particularly wrong with any of them, but trying to sort out what's not matching and getting an answer for now "close" a node was is a bit involved. Go far enough down that hole and you hit tree edit distance and Zhang Sha Sha algorithms.
It's also used to wrap a lot of AST tools for a talk I have next week, hence the earlier release even if it's fairly simple.
Yeah, it's still very very early in the process and I released it as I have a talk at Ruby Kaigi going over some of how this works next Tuesday, so I wanted something out even if it's simple for now.
The best path forward will be a lot of discussion, especially around learnings with production codebases where possible.
Personally I prefer inline annotations, but want to explore the possibilities of both and see what comes of it. I've written on Sorbet in the past and have used it on a few toy projects.
Also working on some analysis documentation comparing the two if you'd be interested in chatting later. Feel free to DM @keystonelemur on Twitter.
Steep and Sorbet are second-level, they build off of RBS. Matz has mentioned offhandedly in conversations I'd had with him in the past that there's a ton more in store with RBS beyond just type checking, so we'll see where they go with it.
As far as YARDoc I've been eyeing that one for a while now since I first heard about Steep at a Braintree Ruby meetup before Soutaro was at Square. We're still talking about what and how as far as that one.
Soutaro has been great to work with over here (Square), and he has a ton of really amazing things coming soon that we're working on OSS'ing later.
Disclaimer: Working at Square, have friends at Stripe, enjoy both type checkers.
If you take a look at his keynote video he says quite a bit on this too.
RBS and type files on the side were really hotly debated for a while and the core team settled on this as a way to not break the existing parser among other reasons.
While I don't 100% agree with them I have faith that Matz and the team make the decisions they do based on impact and what they see in the community.
I had the good fortune to hear him talk about it at length at a conference a while ago and there's all types of fun stuff on the way.
He was going to keynote on this at RubyKaigi this year until it was cancelled, and had a talk at RubyConf as well on this.
Very little of this will need to be written by hand. The underlying tech is pretty decent at guessing types, the idea is that if it's not quite specific enough you adjust it, but it should otherwise be transparent.
In reality separation of concerns is a luxury only afforded to larger teams and orgs.
If you have the people, do it. If you don't, you're in for a bad time concerning yourself with it.
Granted the html in Java is just straight idiocy, and my point refers to far less insidious mixings.
Yes, there are overlaps. From what experience I've had at least, their opinions are valuable to me. Not necessarily as better or worse, but as coming from a different perspective.
You seem to be reading into it quite differently than I meant it. What I'm saying is that they think differently in some cases which can lead to more thought out code, and by result better architecture.
You think that may be contributing to the issue with women in the college pipeline at all?
Which really gets me, and I mention it in another comment on site. It's probably a good portion of the reason we don't have a great deal of women in the tech industry.
They tend to have a lot more modesty on their resumes, and a nightmarishly disturbing amount of impostor syndrome dragging them down like cinder blocks. What's annoying is that without a woman on team, it legitimately feels like you're missing something.
Put simply, we think differently, and that manner of different thinking is critical to preventing some really unruly code and architectural patterns from happening. I get worried every time I see an all-male team because there's not that dissonance there to keep things more on the level.
Sure they don't, they also don't need bluray or terabyte hdds either... Should be rephrased to 'We hope customers don't realize they can use that type of speed.'