Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 17:03
    HertzDevil labeled #12161
  • 17:03
    HertzDevil labeled #12161
  • 17:03
    HertzDevil opened #12161
  • 16:49
    Blacksmoke16 labeled #12160
  • 16:49
    Blacksmoke16 labeled #12160
  • 15:10
    I3oris edited #12160
  • 15:05
    I3oris opened #12160
  • 14:56
    Blacksmoke16 labeled #12159
  • 14:53
    I3oris labeled #12159
  • 14:53
    I3oris opened #12159
  • 11:54
    straight-shoota milestoned #12158
  • 10:59
    straight-shoota edited #12158
  • 10:59
    straight-shoota review_requested #12158
  • 10:59
    straight-shoota labeled #12158
  • 10:59
    straight-shoota labeled #12158
  • 10:59
    straight-shoota opened #12158
  • 10:01
    straight-shoota milestoned #12094
  • 09:02
    asterite closed #12157
  • 04:44
    acodervic edited #12157
  • 04:39
    acodervic edited #12157
Ghost
@ghost~55586c4815522ed4b3e08557
@faustinoaq I don't get it, what's the difference with our unions?
Faustino Aguilar
@faustinoaq

I'm a bit confused, because I think unions behave differently [0]

[0] - https://flow.org/en/docs/types/unions/

Maybe it's not valid to compare Flow & Crystal :sweat_smile:

Ghost
@ghost~55586c4815522ed4b3e08557
From the given examples, I don't think intersection type is relevant in Crystal
ezrast
@ezrast
You might want to require that an object's class includes two different modules
Ghost
@ghost~55586c4815522ed4b3e08557
oh right
ezrast
@ezrast
I don't know what a real use case would look like though
Ghost
@ghost~55586c4815522ed4b3e08557
no idea too
From IRC (bridge bot)
@FromIRC
<oprypin> @faustinoaq, what's your use case?
Martin Verzilli
@mverzilli
when you're augmenting JS with Flow it makes sense because then you can annotate a param as "whatever you send here should have an attribute X and an attribute Y"
Ghost
@ghost~55586c4815522ed4b3e08557
pinging @asterite will maybe bring a little light here
yes @mverzilli that's what I was thinking too
Martin Verzilli
@mverzilli
in JS it's common to use ad-hoc objects to sort of gimmick named arguments, for example
Flow is a huge attempt at reverse engineering common patterns of use in JS and type-check them
well "reverse engineering" is a very poor choice of terminology :P, it'd be more "capturing"
Nick Clifford
@nickbclifford
can someone help explain the usage of fun outside of a lib declaration to me?
I've seen it used in some issues as a way to mess with the definition of main
but I don't fully understand how that works
Rubi
@codenoid
finally, crystal and @ysbaddaden selenium used in my office <3
Isaac Sloan
@elorest
Is there such a thing as a private macro?
Faustino Aguilar
@faustinoaq

<oprypin> what's your use case?

None, I was reading flow documentation, and then I ask me if there is something similar on Crystal, but the @mverzilli answer solved my question. :+1:

can someone help explain the usage of fun outside of a lib declaration to me?

I think the fun usage outside libs is very limited, fun doesn't support overloading and only support basic types, I think it is more like a C function, thinking on shared libraries or similar stuff.

Faustino Aguilar
@faustinoaq
@nickbclifford :point_up_2:
Pawan Dubey
@pawandubey
@bew Sorry for the late reply. Yes I saw your wiki - pretty good. I didn't do so much research. I knew that I wanted to parse PEGs, and I liked the DSL of Parslet. I looked at D's Pegged, Clojure's Instaparse, Haskell's Earley and a couple from Go. Although I didn't spend much time ruminating and went to implementation.
From IRC (bridge bot)
@FromIRC
<oprypin> @elorest, you can put a macro in a private module
Ekrem Karaca
@ekremkaraca
Morning πŸŒ„πŸ‘‹
I am now trying to install Crystal via Linuxbrew
I think we should include it to the book
Serdar Dogruyol - Sedo セド
@sdogruyol
Morning everyone
Ekrem Karaca
@ekremkaraca
Llvm is too big: 3 GB
Why did I add --with-llvm option
I am so pişman :(
Serdar Dogruyol - Sedo セド
@sdogruyol
lol
Ekrem Karaca
@ekremkaraca
Finally I have built it in 14 min 12 sec
Serdar Dogruyol - Sedo セド
@sdogruyol
you have some low specs?
Ekrem Karaca
@ekremkaraca
I wonder what llvm source contains?
Yep
Serdar Dogruyol - Sedo セド
@sdogruyol
LLVM is a beast, lots of C++
Ekrem Karaca
@ekremkaraca
6GB ram with i5
Serdar Dogruyol - Sedo セド
@sdogruyol
CPU?
Ekrem Karaca
@ekremkaraca
4x with 2 ghz
Serdar Dogruyol - Sedo セド
@sdogruyol
that must be the cultprit
Ekrem Karaca
@ekremkaraca
I bought it in 2011
Serdar Dogruyol - Sedo セド
@sdogruyol
yeah
that explains
From IRC (bridge bot)
@FromIRC
<Groogy> Morning!
<femto> class Hierarchy def foo end def self.methods {{@type.methods}} # using all_subclasses for illustration end end class A < Hierarchy; end class B < A; end class C < B; end puts Hierarchy.methods
<femto> how do I get all the methods of a class?
<Groogy> doesn't it show there?
<femto> Syntax error in expanded macro: macro_4594465744:1: can't define def inside def [def foo ^ ================================================================================ {{@type.methods}} # using all_subclasses for illustration