Size: a a a

F# Flood: Be a cheif

2021 January 28

A

Anatoly in F# Flood: Be a cheif
но я так и не понял, доехал ли фикс в мейнлайн и в какой версии
источник

АВ

Андрей Вилинский... in F# Flood: Be a cheif
спасибо
Роджера из протоакторов еще нехватает, чтоб прояснил за комбинацию подходов )
источник

A

Anatoly in F# Flood: Be a cheif
о, там опять @VagifAbilov в телевизоре :)
источник

KF

Kirill Fimchenko in F# Flood: Be a cheif
по какому каналу?
источник

M

Mikhail in F# Flood: Be a cheif
Kirill Fimchenko
по какому каналу?
Криминальная Россия по нтв
источник

KF

Kirill Fimchenko in F# Flood: Be a cheif
ох, такого у меня нет. не смогу глянуть(
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
Anatoly
там всю жизнь был каст
да никогда не было
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
хешкод так же вызывается через constrained + callvirt
источник

A

Anatoly in F# Flood: Be a cheif
If thisType is a value type and thisType implements method then ptr is passed unmodified as the ‘this’ pointer to a call method instruction, for the implementation of method by thisType.
   If thisType is a value type and thisType does not implement method then * ptr is dereferenced, boxed*, and passed as the ‘this’ pointer to the callvirt method instruction.
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
но в реальности - никого боксинга нет
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
If thisType is a value type and thisType does not implement method
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
оно что не имплементирует?
источник

O

Ortofax in F# Flood: Be a cheif
это оптимизация джита же, ну
источник

O

Ortofax in F# Flood: Be a cheif
если тип известен, то можно девиртуализовать вызов
источник

DS

Doge Shibu in F# Flood: Be a cheif
Так речь как раз про то, что если бы это сделал руками в языке, а на через компилятор, то боксинг ещё как был бы:

https://sharplab.io/#v2:C4LglgNgNAJiDUAfAAgJgIwFgBQyAMABMugHQAyYAdgI4DcO+R6ALPbgMxGoEDCBA3jgLCinZMwIBZdAAoAlAKEiRANwCGAJwJqCAXgKUApgHcCAQXltlImTICSAETABnAA4B7Z2oBGEQ3LU5Eic3T0NLJWEAX0iCSOdgDQBXAGNgcwIQAkcXDy9fQ0VsEWQxCRC88Ll+KJji4RwooA=

А так компилятор специально юзинги по другому компилит чем обычный код
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
короче, здесь не и не было боксингга со времен 4.5 дотнета точно
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
Doge Shibu
Так речь как раз про то, что если бы это сделал руками в языке, а на через компилятор, то боксинг ещё как был бы:

https://sharplab.io/#v2:C4LglgNgNAJiDUAfAAgJgIwFgBQyAMABMugHQAyYAdgI4DcO+R6ALPbgMxGoEDCBA3jgLCinZMwIBZdAAoAlAKEiRANwCGAJwJqCAXgKUApgHcCAQXltlImTICSAETABnAA4B7Z2oBGEQ3LU5Eic3T0NLJWEAX0iCSOdgDQBXAGNgcwIQAkcXDy9fQ0VsEWQxCRC88Ll+KJji4RwooA=

А так компилятор специально юзинги по другому компилит чем обычный код
для того, чтобы боксинга не было
источник

A

Anatoly in F# Flood: Be a cheif
Ilya Chernoudov
короче, здесь не и не было боксингга со времен 4.5 дотнета точно
ну-ну.
источник