<nakilon>
has anyone made a ruby language server work on sublime? I tried three or four, like shopify, solargraph, and others, but only one did run at all, and it worked badly (could not find a module from require_relative)
<nakilon>
I see dude coding in rust and his neovim and other editors he uses all provide such cool dropdowns with help, signatures, etc., and I have none of it in sublime
<nakilon>
only ruby-linter checks for syntax errors and warnings
<mange>
I don't use Sublime, so I can't help you too specifically, but what sorts of errors were you getting?
dviola has joined #ruby
Vonter has quit [Ping timeout: 272 seconds]
Vonter has joined #ruby
user71 has joined #ruby
Vonter has quit [Ping timeout: 252 seconds]
Vonter has joined #ruby
Linux_Kerio has joined #ruby
wbooze has joined #ruby
grenierm has joined #ruby
cappy has joined #ruby
Munto has quit [Ping timeout: 252 seconds]
sunyour has quit [Quit: sunyour]
wbooze has quit [Quit: Leaving]
Munto has joined #ruby
sunyour has joined #ruby
ih8u2 has joined #ruby
wbooze has joined #ruby
ih8u has quit [Ping timeout: 248 seconds]
ih8u2 is now known as ih8u
Linux_Kerio has quit [Ping timeout: 252 seconds]
wbooze has quit [Quit: Leaving]
wbooze has joined #ruby
testone has quit [Quit: Client closed]
LainExperiments has joined #ruby
LainExperiments5 has joined #ruby
LainExperiments has quit [Ping timeout: 240 seconds]
rvalue has quit [Ping timeout: 248 seconds]
LainExperiments5 has quit [Ping timeout: 240 seconds]
LainExperiments has joined #ruby
rvalue has joined #ruby
Spitfire has quit [Ping timeout: 244 seconds]
Exa has quit [Quit: see ya!]
Exa has joined #ruby
Tempesta has quit [Excess Flood]
LainExperiments2 has joined #ruby
LainExperiments4 has joined #ruby
LainExperiments has quit [Ping timeout: 240 seconds]
LainExperiments2 has quit [Ping timeout: 240 seconds]
TomyWork has joined #ruby
user71 has quit [Quit: Leaving]
LainExperiments has joined #ruby
LainExperiments4 has quit [Ping timeout: 240 seconds]
LainExperiments3 has joined #ruby
LainExperiments has quit [Ping timeout: 240 seconds]
LainExperiments2 has joined #ruby
Linux_Kerio has joined #ruby
LainExperiments has joined #ruby
LainExperiments3 has quit [Ping timeout: 240 seconds]
LainExperiments2 has quit [Ping timeout: 240 seconds]
Tempesta has joined #ruby
o0x1eef has quit [Ping timeout: 252 seconds]
grenierm has quit [Ping timeout: 240 seconds]
user71 has joined #ruby
cappy has quit [Quit: Leaving]
LainExperiments has quit [Quit: Client closed]
LainExperiments has joined #ruby
mange has quit [Quit: Zzz...]
LainExperiments has quit [Quit: Client closed]
LainExperiments has joined #ruby
o0x1eef has joined #ruby
GreenResponse has joined #ruby
FetidToot has quit [Ping timeout: 252 seconds]
LainExperiments has quit [Quit: Client closed]
LainExperiments has joined #ruby
LainExperiments9 has joined #ruby
shiru has joined #ruby
LainExperiments has quit [Ping timeout: 240 seconds]
pages has quit [Ping timeout: 265 seconds]
LainExperiments9 has quit [Ping timeout: 240 seconds]
<CalimeroTeknik>
I think it's a profound philosophical tendency that has been developing in software, coincidentally with the term "UX": the developer assumes to know what the user needs better than the user does
<kyber>
adam12: agreed on the value added, not sure it's a ton at this point, the main thing i like it for is jump to definition
<kyber>
also, things break down a bit when docker is part of the story.. but that's a whole different can of worms
spikemaster has joined #ruby
<spikemaster>
wat is faster. python or ruby?
<adam12>
spikemaster: similar in performance.
<kyber>
the performance depends on the tools/libraries too (or problem at hand)
wbooze has joined #ruby
<kyber>
i.e. hard to beat the ruthless efficiency of python's numpy for computation
<kyber>
python/ruby both have ways to interface with c-libraries
<kyber>
but overall at a language level performance, i'd guess quite similar
<CalimeroTeknik>
spikemaster, python and ruby are software glue; for the number crunching, use external libraries.
brokkoli_origin has quit [Ping timeout: 252 seconds]
<CalimeroTeknik>
they're languages made as assembly convenience and for "cold code paths", i.e. code that doesn't run a lot
<kyber>
that's not necessarily true, in the sense that there are plenty of rails apps/django that run a lot of ruby/django code a LOT
<kyber>
ruby/python code *
<o0x1eef>
Python has some of the best AI libraries as well, and those are optimized for GPU calculations. Nothing quite on that level in Ruby. Nothing as good at least.
<kyber>
yeah, i think the overall data analysis/scientific visualization tools are on a different level as well for python
<kyber>
this is not to say ruby couldn't be those things as well, it's just not, at the moment
<nakilon>
*NN libraries
brokkoli_origin has joined #ruby
brokkoli_origin has quit [Remote host closed the connection]
brokkoli_origin has joined #ruby
FetidToot has quit [Ping timeout: 244 seconds]
FetidToot has joined #ruby
pages has joined #ruby
spikemaster has left #ruby [ERC 5.6.1-git (IRC client for GNU Emacs 31.0.50)]
FetidToot has quit [Ping timeout: 248 seconds]
FetidToot has joined #ruby
Rounin has quit [Remote host closed the connection]
hwpplayer1 has quit [Read error: Connection reset by peer]
Linux_Kerio has quit [Ping timeout: 252 seconds]
hwpplayer1 has joined #ruby
<henk>
maybe more generally speaking: is it ok to just reuse other classes’ errors, e.g. IO::TimeoutError or should I better implement my own errors in my own classes?
<o0x1eef>
TimeoutError comes from timeout.rb, and nowadays it is Timeout::Error
<henk>
o0x1eef: errr, how where what? timeout.rb in rbot’s sourcecode?
<henk>
ah, no, 'require timeout', I guess
donofrio has joined #ruby
<o0x1eef>
Yup, a plugin is using it
<o0x1eef>
But in that specific context, I don't see it being used. That code has a lot of tech debt AFAICT.
<henk>
yes, a lot. I’m trying to clean it up after it has been abandoned for a few years … still works mostly fine, though!
<o0x1eef>
+1
<henk>
yeah, two plugins load that module(?), but it’s not certain these plugins will always be loaded …
<henk>
so what should I do here? raise IO::TimeoutError, raise Timeout::Error, or implement my own error class? if I don’t use timeout.rb functionality otherwise anyway, it seems silly to load it just for the error class … IO::TimeoutError sounds appropriate. would that have any side effects which I should consider? or is it generally not a good idea to raise IO::TimeoutError outside of the IO class?
nil78 has quit [Read error: Connection reset by peer]
<o0x1eef>
IMO examine the code that is being guarded with rescue, and figure out what can be raised. Then rescue accordingly. I wouldn't trust that code very much.
<henk>
it »raise TimeoutError, "no PONG from server in #{diff} seconds"« so some error with "timeout" seems appropriate, right? just not sure which one would be the proper one to use …
<o0x1eef>
If I was to refactor that code, I would add Irc::Error = Class.new(RuntimeError); Then I would add Irc::PongError = Class.new(Irc::Error) or something similar to that. 'ServerError' would also fall under the Irc namespace rather than Object.
<henk>
hm, any particular reason to use this syntax instead of "class Irc::Error < RuntimeError"?
dza has quit [Excess Flood]
dza has joined #ruby
<o0x1eef>
It is less verbose, and if you are going to define multiple errors, that becomes especially obvious but mostly just personal preference, either is fine
<henk>
hrm, the following two lines have the same number of words (at least the way I count them) and exactly the same length:
<o0x1eef>
IMO the first one scales better, it is easier to organize, it is less verbose and doesn't have any semi colons. But it's just a matter of style for the most part. Use whichever one you prefer.
wbooze has quit [Ping timeout: 252 seconds]
<henk>
ok, but then if you need some functions or whatever in one of those errors you just rewrite (i.e. simply something like s/;/\n/) the second to the third form and have a block to work in. what do you do in the first form? rewrite to third as well?
<henk>
or is that scenario so uncommon that this is irrelevant?
<o0x1eef>
Updated the gist
<henk>
ooh, I see
<henk>
huh, I have no idea what I like better; I guess it might take a while until a personal preference materializes :D
<o0x1eef>
I don't have any hard rules for that, I might separate the errors into their own file and use the 'class Error < ...' syntax if they end up having a real implementation. For simple errors I usually use a constant assignment
<henk>
thank you very much! I’ll go do some refactoring of error handling …
<o0x1eef>
Yw
hwpplayer1 has quit [Read error: Connection reset by peer]
hwpplayer1 has joined #ruby
cappy has joined #ruby
TomyWork has quit [Ping timeout: 260 seconds]
hwpplayer1 has quit [Quit: sleep]
nil78 has quit [Read error: Connection reset by peer]
cappy has quit [Quit: Leaving]
ftajhii has quit [Remote host closed the connection]
nil78 has joined #ruby
<havenwood>
CalimeroTeknik: For what it's worth, you can `gem install -g --no-lock` to install `Gemfile` dependencies without creating a `Gemfile.lock` file.
<henk>
I’m running rbot off this branch right now: https://github.com/henk84/rbot/tree/refactor/error_handling and I get this crash: https://bpa.st/GXPA when I let it run, connect, and then interrupt it with ctrl-c. sometimes the output varies and lines 15-21 are not there. I don’t understand what’s happening, where that call to `select` comes from, i.e. the chain what happens. I get the feeling that
<henk>
this might be threading related. any advice how to figure out what’s really going on here?
<henk>
oh, if you want to test run it: the command is `./launch_here.rb -d`, then you can answer every question with just the return key to accept the default, but 'server list' and connect to e.g. irc.netwichtig.ch (which is my own irc network and testing there is fine but if you prefer any other that should work too)
ruby[bot] has quit [Remote host closed the connection]
ruby[bot] has joined #ruby
GreenResponse has quit [Quit: Leaving]
meimei has quit [Ping timeout: 248 seconds]
pounce has quit [Ping timeout: 268 seconds]
donofrio has quit [Ping timeout: 244 seconds]
meimei has joined #ruby
pounce has joined #ruby
donofrio has joined #ruby
nil78 has quit [Read error: Connection reset by peer]