hkaiser changed the topic of #ste||ar to: STE||AR: Systems Technology, Emergent Parallelism, and Algorithm Research | stellar-group.org | HPX: A cure for performance impaired parallel applications | github.com/STEllAR-GROUP/hpx | This channel is logged: irclog.cct.lsu.edu
hkaiser has joined #ste||ar
K-ballo1 has joined #ste||ar
K-ballo has quit [Ping timeout: 268 seconds]
K-ballo1 is now known as K-ballo
hkaiser has quit [Quit: Bye!]
Yorlik has joined #ste||ar
K-ballo1 has joined #ste||ar
K-ballo has quit [Ping timeout: 252 seconds]
K-ballo1 is now known as K-ballo
hkaiser has joined #ste||ar
K-ballo1 has joined #ste||ar
K-ballo has quit [Ping timeout: 268 seconds]
K-ballo1 is now known as K-ballo
K-ballo1 has joined #ste||ar
K-ballo has quit [Ping timeout: 256 seconds]
K-ballo1 is now known as K-ballo
<hkaiser> it evaluates to front<As..., Ty>
<hkaiser> i.e. if sizeof...(As) == 0 it evaluate to front<As...>, otherwise to Ty
<hkaiser> satacker[m]: ^^
<satacker[m]> got it, thanks
<hkaiser> since it requires sizeof...(As) <= 1, it evaluates to As or Ty
<satacker[m]> if number of types in pack <= 1 then evaluate to what exatly?
<satacker[m]> s/<=/\<=/, s/exatly/exactly/
<satacker[m]> cause front will always give the first
<satacker[m]> For example what does `single_or<void>` evaluate to?
<hkaiser> satacker[m]: invoke<single_or<T1>> eavluates to T1, invoke<single_or<T1>, T2> evaluates to T2
<satacker[m]> So it’s just used to make it callable?
<hkaiser> making what callable?
<satacker[m]> Composing a function whose result on invoke is T1
<hkaiser> the runtime equivalent is the pair of functions: T1 single_or(T1 t1) { return t1; } and T2 single_or(T1, T2 t2) { return t2; }
<hkaiser> the result is T1 if T2 is not given
<satacker[m]> Okay, thanks, got it but not convinced why it’s used in that specific template argument, will think over and let you know
<hkaiser> satacker[m]: I don't know where it's used so I can't tell
<satacker[m]> > <@satacker:matrix.org> To give more context... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/2694ae1c1acd224968c43c4cdbdb1c4441385a6f)
<hkaiser> ok, makes sense
<hkaiser> elegant solution, actually ;-)
<satacker[m]> Let me think over this, will let you know if i am able to figure it out, going to sleep now
diehlpk_work has quit [Remote host closed the connection]