Size: a a a

F# Flood: Be a cheif

2021 January 29

DS

Doge Shibu in F# Flood: Be a cheif
А, у меня опен офис по другому отобразил
источник

DS

Doge Shibu in F# Flood: Be a cheif
Ilya Chernoudov
описано поведение для структур и классов ОТДЕЛЬНО
Да, и оно ровно то, что указано в тех исходниках:
{
 ResourceType resource = expression;
 try {
   statement;
 }
 finally {
   ((IDisposable)resource).Dispose();
 }
}


как спека
источник

DS

Doge Shibu in F# Flood: Be a cheif
И включает в себя каст
источник

DS

Doge Shibu in F# Flood: Be a cheif
Потому что с точки зрения конструкций языка - это именно что каст.
источник

DS

Doge Shibu in F# Flood: Be a cheif
Что и показывает себя в том, как ведет подобный код себя в реальности (вне зависимо от явной или неявной реализации):
https://sharplab.io/#v2:C4LglgNgNAJiDUAfAAgJgIwFgBQyAMABMugHQAyYAdgI4DcO+R6ALPbgMxGoEDCBA3jgLCinZMwIBZdAAoAlIOwjlBGTICSAETABnAA4B7HQEMARhACmcyhYDuBAILy5JbfqMX5tAkJEBfX2FA0SIJSVR5RRURNS1dQxNzKxt7ACFnV3iPLx8lf2CcYOROHWAAJwBXAGNgRxACOPdEy2Co6JDxAjcEzwUAvOF+5SKS8ura1PrGhLMWgYFg5U7po1mLTKbegSH8gZw/IA
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
Doge Shibu
Потому что с точки зрения конструкций языка - это именно что каст.
неправда, явное приведение имеет такой же синтаксис
источник

DS

Doge Shibu in F# Flood: Be a cheif
Ilya Chernoudov
неправда, явное приведение имеет такой же синтаксис
Они неразличимы с точки зрения подобной записи.
источник

DS

Doge Shibu in F# Flood: Be a cheif
И да, в комментарии разработчики языка явно говорят, что отсутствием бокса спецификацию они нарушают
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
Doge Shibu
Они неразличимы с точки зрения подобной записи.
но есть текстовое описание, которое говорит,что local-variable-declaration must be System.IDisposable or a type that can be implicitly converted to System.IDisposable
источник

DS

Doge Shibu in F# Flood: Be a cheif
Doge Shibu
И да, в комментарии разработчики языка явно говорят, что отсутствием бокса спецификацию они нарушают
            // First: if the type is a non-nullable value type then we do not do the 
           // *boxing conversion* from the resource to IDisposable. Rather, we do
           // a *constrained virtual call* that elides the boxing if possible.
           //
           // Now, you might wonder if that is legal; isn't skipping the boxing producing
           // an observable difference?
источник

DS

Doge Shibu in F# Flood: Be a cheif
Они сами в компиляторе понимают, что отступают от спеки в данном случае
источник

T

Tako in F# Flood: Be a cheif
Ayrat Hudaygulov
кстати мы щас интервьюируем в даблин даже из Индии
Это на релокейт или на удаленку?
источник

AH

Ayrat Hudaygulov in F# Flood: Be a cheif
Tako
Это на релокейт или на удаленку?
релокейт и удаленку
источник

AH

Ayrat Hudaygulov in F# Flood: Be a cheif
то есть тебя захотят релоцировать
источник

AH

Ayrat Hudaygulov in F# Flood: Be a cheif
скорее всего
источник

S

Stanislav in F# Flood: Be a cheif
Ayrat Hudaygulov
вам просто надо поаплаиться -_-
мы не умеем в кодинг на доске)
источник

AH

Ayrat Hudaygulov in F# Flood: Be a cheif
но в МС вроде объявили вечную удаленку
источник

T

Tako in F# Flood: Be a cheif
Ayrat Hudaygulov
релокейт и удаленку
Прикольно.А чтобы зааплаиться просто на сайт резюме прислать или как?
источник

IC

Ilya Chernoudov in F# Flood: Be a cheif
Doge Shibu
Они сами в компиляторе понимают, что отступают от спеки в данном случае
они пишут, что для структур, они использую не box инструкцию, которая копирует в кучу структуру, а constrained которая позволяет сделать полиморфный вызов для структур
источник

AH

Ayrat Hudaygulov in F# Flood: Be a cheif
Stanislav
мы не умеем в кодинг на доске)
я тоже не умею, никогда не кодил на доске
источник