Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
bmulvihill
@bmulvihill
@matthewmcgarvey Is your question in crystal chat related to scry?
Ghost
@ghost~56c7afa6e610378809c26230
No not particularly. I’ve been really impressed with crystal and how readable it is even in the complicated parts like the compiler so I’ve been trying to dive in.
bmulvihill
@bmulvihill
Ahh ok :) There is a lot of overlap in Scry and we actually used to include a lot of the compiler in our code
I agree though Crystal is really great, and good for learning about compilers
Ghost
@ghost~56c7afa6e610378809c26230
Will scry ever be able to work on the crystal codebase?
bmulvihill
@bmulvihill
I think so, I believe it should work now since its just Crystal
Ghost
@ghost~56c7afa6e610378809c26230
Screen Shot 2019-01-22 at 6.49.47 PM.png
Do you get this error working with the crystal library? It isn’t initialized anywhere besides base64.cr
Image sharing is bad on Gitter :/ already initialized constant Base64::CHARS_STD
Ghost
@ghost~5a5bc22cd73408ce4f8836a6
@bew I'm proposing an alternative to modify nested struct refs: https://carc.in/#/r/62hm
Simple implementation, but unsafe
at least we are able to interact simply with C++ structs for example :)
Ghost
@ghost~5a5bc22cd73408ce4f8836a6
but we can already do pointerof(a.@b).value.c = 3
Ghost
@ghost~5a5bc22cd73408ce4f8836a6
Ghost
@ghost~55586c4815522ed4b3e08557
interesting ideas
Ghost
@ghost~5a5bc22cd73408ce4f8836a6
The tap one is safe, but having to put the object at the end is meh :/
Ghost
@ghost~55586c4815522ed4b3e08557
but you still have to know what kind of objects you're manipulating, like you need to know you have a structure etc..*
Ghost
@ghost~5a5bc22cd73408ce4f8836a6
that's what a struct is supposed to be, no?
Ghost
@ghost~5a5bc22cd73408ce4f8836a6
I thought I posted on the crystal channel, snap :/
Faustino Aguilar
@faustinoaq

Hi community, sorry for being offline latest year, new crystal-vscode minor version is published https://github.com/crystal-lang-tools/vscode-crystal-lang/releases/tag/v0.3.11 :smile:

Hopefully new Scry backend is activated by default on new major release :+1:

Ghost
@ghost~55586c4815522ed4b3e08557
\o/
Martins Talbergs
@talbergs
Anyone has decent completion for crystal? At least main library api method completion. Damn I'm ready to switch away from vim :heart: to a place with completion
Ghost
@ghost~55586c4815522ed4b3e08557
Hey guys, did #158 but build is failing, figured out the crystal version in the docker image was too old so I tried to bump it to 0.30.1 but now I have error where it can't find llvm...
Anyone knows how to fix that?
Ghost
@ghost~55586c4815522ed4b3e08557
ok, I updated #158 with a fix (let's wait for CI to finish though), can someone review? :pray:
Ghost
@ghost~55586c4815522ed4b3e08557
\o/ tests passed
Ghost
@ghost~55586c4815522ed4b3e08557
@faustinoaq hey, I did a release for scry: https://github.com/crystal-lang-tools/scry/releases/tag/v0.8.1 I hope it's correct, how did you get the scry_linux & scry_macos assets for the other releases?
Bar Hofesh
@bararchy
:tada:
Thanks @bew
Ghost
@ghost~55586c4815522ed4b3e08557
You're welcome :)
'been reading RLS (Rust Language Server) source code yesterday, it's pretty cool how they did it
Faustino Aguilar
@faustinoaq
Hi @/all I haven't used crystal for a while. I need to update my projects. I apologize for the Scry inconvenients. I'll check it out soon. :+1:
Ghost
@ghost~55586c4815522ed4b3e08557
hey, welcome back :)
Ghost
@ghost~55586c4815522ed4b3e08557
I'm reading some "nice" and looong debug logs of the neovim lsp client to understand why Scry is awfully slow
it looks like it's because we handle the requests sequentially
I think we should prioritize making it async, to be able to cancel diagnostics if the file is changed for example (one of many cases to handle!)
Ghost
@ghost~55586c4815522ed4b3e08557
Also, with a separation between the client requests handling (the LSP protocol, etc..) and the actual tasks we have to do, we'll move to a more generic LSP server implementation with only the need to implement (for scry!) hooks on the various LSP events sent by the client. Then we'll have to send tasks via channels to a task processor, which will manage the dependencies between the tasks, stop running tasks (if possible) if their result is their input is outdated (e.g: by a file change), etc...
And @asterite will be able to play around :D
Ghost
@ghost~55586c4815522ed4b3e08557
Made an issue with some thoughts #163
Ghost
@ghost~55586c4815522ed4b3e08557
Hey guys, just to let you know that I'm going to make a talk in french (with english slides) at the next crystal meetup in paris!
about scry
Probably not recorded (who knows french anyway? ^^)
It'll be at the end of the month, 29 oct iirc
Bar Hofesh
@bararchy
:tada: go go @bew
Ghost
@ghost~55586c4815522ed4b3e08557
Hey, unfortunately I won't make it this time :/ for personal reasons
whidbey
@whidbey
bad need a smart ide for crystal
a.cr has module X and method y; b.cr require "./a", and couldn't get X.y automate.
Jason Milkins
@jasonm23
I'd like to contribute to scry development, specifically I'd like to understand what work is needed for workspace symbols completion
(going to try just reading the code, obviously(?), but just checking in to see what WIP / context can be shared here...)
Jason Milkins
@jasonm23
(specs are good and informative)