Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
Chuck Remes
@chuckremes
i looked at julia a few years ago and thought it was pretty neat (and fast)
lots of good languages out there… every time i think about switching though it all comes back to joining a community that has to build the basics again (e.g. json parsers, networking libs, CSV handling, etc)
so in the end i just stick with ruby because it already has those and i don’t have to rebuild them (unless i want to)
Brian Shirai
@brixen
@chuckremes yeah, it's that rebuilding thing that keeps me working on Rubinius, but both sides of rebuilding... I'd like to make it 10x cheaper and easier to rebuild stuff like Nokogiri without using a C lib and also make it unnecessary to rebuild something that's already working well
Brian Shirai
@brixen
I think I should make a Rubinius kernel for Jupyter https://github.com/jupyter/jupyter/wiki/Jupyter-kernels
coolest way to do it would be to build it on top of Rubinius Console, so I guess I should get that working well
should I learn more Julia or work on Rubinius... "hey Siri, flip a coin" :laughing:
Brian Shirai
@brixen
playing around with Julia is reminding me how much I love the concise list comprehensions
too bad Ruby doesn't create syntax for them
instead we get anonymous block arguments _1 :frowning:
Matz is probably "not a math guy"
Chuck Remes
@chuckremes
ugh, one of the worst “innovations” in Ruby from the past several years
Laurent Julliard
@ljulliar
Agreed. Just plain ugly...
Brian Shirai
@brixen
another thing I like about Julia is they handle math nicely with stuff like \pi for π = 3.1415926535897
Charles Oliver Nutter
@headius
@brixen Do you remember if a feature request was ever tossed over to ruby-core for the -G flag? I thought for sure someone had opened an issue but can't find anything now.
Brian Shirai
@brixen
@headius hm, I can't remember now for sure but I thought someone did
Brian Shirai
@brixen
@chuckremes you might be interested in this https://www.goodreads.com/book/show/51965738-temporal-type-theory
Spivak has authored a couple really good books on Category Theory
temporal type theory looks really promising for working with systems (ie beyond the realm of typical type theory constrained to a single process where type checking can be done AoT)
Olle Jonsson
@olleolleolle
@brixen Not to remove anything from your List Of Things To Do, but there are folks who are building a jupyter notebooks Ruby thing - https://github.com/SciRuby/iruby
Olle Jonsson
@olleolleolle
Oh, and I managed to fiddle with the canary repo. rubinius/travis-canary#4
Hope this helps!
Brian Shirai
@brixen
@olleolleolle thanks for working on that! I just merged
@olleolleolle my thought about a Jupyter kernel for Rubinius was that since I already have been working on the Console, it would be simple to create an adapter for Jupyter communication protocol and make it that much easier for people to get started. I've installed Jupyter and Julia on two systems in the past couple days and it still requires way too many manual steps
@olleolleolle btw, is there anything I can do to make it easier for you to use Rubinius? I've been thinking about making a Concourse CI service available if people want to test things
Olle Jonsson
@olleolleolle
https://github.com/rubinius/travis-canary/pulls - someone had opened a PR, which sat until it got sour, perhaps it's kind to just close it.
Perhaps a CI would help, but most folk (me included) would make that a 2nd-class platform (a bit like those nice folks at AppVeyor make Win32 builds available to many projects)
Today, I've learned about the "10.0" being the RUBY_VERSION (?) of the Rubinius 4.x platform. Super. That let me use install_if in my Gemfile to skip things not supported. I've recalled that rubysl was to be "already packaged and in the distribution".
Olle Jonsson
@olleolleolle
taf2/curb#408 is where I'm trying to apply my new-found clues
Ah, perfect, I passed bundle install, at least. Now, an actual incompatibility was what stops both rbx-3 and rbx-4. Someone was using Marshal.dump/Marshal.load.
Brian Shirai
@brixen
@olleolleolle ah, thanks for pointing out that PR, I'll close it
Brian Shirai
@brixen
@chuckremes there are so many cool things in Julia, for example, you can show the native code, the LLVM IR, their own IR, etc. Stuff I've been excited about doing in Rubinius for a long time but haven't been able to get to yet
overall I'm really enjoying learning about it, but haven't dived into the source code yet
while they're doing really cool stuff, I still see a place for Rubinius to contribute to the ecosystem by 1. focusing on microservices (cellular architectures, I need to write that up), and 2. by making the language exploration and tools as useful as possible
I'm stealing everything I can from Julia :grinning: it's the most interesting language I've dug into for a while
Chuck Remes
@chuckremes
it’s not stealing, it’s homage
Brian Shirai
@brixen
what Ruby does with method aliases, Julia does with functions and cool stuff like this...
for n ∈ 1:10
    print(n)
end
the "element of" symbol is input with \in <Tab> and gets substituted
pretty slick
of course, you can always just do...
for n in 1:10
    print(n)
end
or use = in place of in
and of course for a language that supposed to be nice for math, you can do...
for i in 1:m, j in 1:n
    B[i, j] = i + j
end
but of course, it gets even better...
C = [i + j for i in 1:m, j in 1:n]
Chuck Remes
@chuckremes
Are some JIT pieces landing this month or has your new love affair with Julia distracted you?
Brian Shirai
@brixen
Both? :laughing:
Julia inspires me, so hopefully that will get channeled