Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Aug 19 18:56
    asterite ready_for_review #12405
  • Aug 19 18:56
    asterite edited #12405
  • Aug 19 17:43
    asterite labeled #12405
  • Aug 19 16:38
    Blacksmoke16 labeled #12405
  • Aug 19 16:38
    Blacksmoke16 labeled #12405
  • Aug 19 16:02
    asterite synchronize #12405
  • Aug 19 16:01
    asterite opened #12405
  • Aug 19 15:34
    kramerul synchronize #12404
  • Aug 19 15:23
    kramerul synchronize #12404
  • Aug 19 15:13
    kramerul synchronize #12404
  • Aug 19 15:10
    kramerul synchronize #12404
  • Aug 19 15:08
    Blacksmoke16 labeled #12404
  • Aug 19 15:08
    Blacksmoke16 labeled #12404
  • Aug 19 15:08
    Blacksmoke16 labeled #12404
  • Aug 19 15:06
    wonderix opened #12404
  • Aug 19 14:20
    asterite closed #12403
  • Aug 19 12:42
    straight-shoota milestoned #12403
  • Aug 19 12:42
    straight-shoota milestoned #12403
  • Aug 19 12:03
    asterite synchronize #12403
  • Aug 19 11:34
    straight-shoota closed #11420
stellarpower
@stellarpower
^^ I want it to be compil;e-time though
I think a parent class' constructor is being called when I want a compile error, in this case
George Dietrich
@Blacksmoke16
private def self.new?
stellarpower
@stellarpower
YEah that would do it, thanks
Make it private, the old ways.
George Dietrich
@Blacksmoke16
:thumbsup:
stellarpower
@stellarpower
Why did I not think of that haha
I think = delete only came in C++11
Maybe I Can make itnot compile actually, cause methods are a bit like generics in other languages right, the actual code is only really ocmpiled at the point they are used, because you can;t know how the types will filter through
I could presumably force an error in somehow to make sure it isn;t called
OR, rather, it doesn;t compile, with a message that then means I fix it
Although for a cponstructor now I would need to instantiate all my members or they become nillable
stellarpower
@stellarpower
So, it also now seems to be locking up reading from a channel
Surely that will return ontrol to other fibers right?
stellarpower
@stellarpower
Somnehoe looks that replacing receive with receive?has made a difference, but I'm not sure why..
This may also be relevant
George Dietrich
@Blacksmoke16
might be a good use case for select?
then could like wait specific amount of time, or fallthru if nothing is waiting to be recieved etc
stellarpower
@stellarpower
Should there be any conceptual differences between select and just calling receive for a single channel?
stellarpower
@stellarpower
Think the threading is finally working, I was hitting a bit of a nasty silent issue with my other code
George Dietrich
@Blacksmoke16
stellarpower
@stellarpower
I give up, it's just back to hanging now
I feel like any attempts to make threading easier just take away control and leave things broken. If I could just make threads and use mutices this would probably get easier
stellarpower
@stellarpower
urhg finally okay
I was writing to a channel before actually entering the event loop.
I thought that should return immediately but evidently it was hanging
Is Channel capacity automatic? I.e. it defaults to a sensible value if not given explicitly
George Dietrich
@Blacksmoke16
afaik channels dont have a limit unless you create them with one
From IRC (bridge bot)
@FromIRC
<yxhuvud> if they don't have a limit they will always wait until the other side is ready though.
stellarpower
@stellarpower
Right, okay. I thought I must have tried it before and it worked, but maybe I was wrong.
From IRC (bridge bot)
@FromIRC
<riza> typically if you want to expand the ~ or . / .., you need to use a special function to expand them
George Dietrich
@Blacksmoke16
Path["~/some/project"].expand home: true would do what you want
From IRC (bridge bot)
@FromIRC
<riza> i think the default behavior of home is true as well
George Dietrich
@Blacksmoke16
Naw it's false by default
From IRC (bridge bot)
@FromIRC
<riza> thats interesting... and it might well be the cause of a bug or two I've been living with for quite some time
Benjamin Clos
@ondreian
The false behavior bit me on an upgrade a week ago
Error: no overload matches 'Room::Sane.new', lich_id: UInt64, uid: Int64, title: Array(String), description: Array(String), paths: Array(String), tags: Array(String), wayto: Hash(String, String), timeto: Hash(String, Float32 | String), location: String

Overloads are:
 - Room::Sane.new(lich_id : ::UInt64, uid : ::UInt64, title : ::Array(::String), description : ::Array(::String), paths : ::Array(::String), tags : ::Array(::String), wayto : ::Hash(::String, ::String), timeto : ::Hash(::String, ::Float32 | ::String), location : ::String)
i'm not quite sure what's going on here why the are prefixed with ::? Does this have the same meaning as Ruby?
From IRC (bridge bot)
@FromIRC
<riza> I can't see it in gitter for some reason
<riza> oh you didn't post the code, just the error
<riza> you're passing in uid as an i64 but your overload wants an ui64
<riza> method signature says: uid: Int64, overload says: uid : ::UInt64
<riza> don't worry about teh prefix ::
George Dietrich
@Blacksmoke16
what does false behavior have to do with that error?
From IRC (bridge bot)
@FromIRC
<riza> i think that error is unrelated to the false behavior
George Dietrich
@Blacksmoke16
the :: prefix basically means like "top level reference"
image.png
can also be used with methods. E.g. say you added your own raise method but still want to call the default one, could do ::raise "oh no"
Benjamin Clos
@ondreian
ah yeah, thanks, end of the day error. And I appreciate confirming the meaning of ::