Size: a a a

2020 January 05

Dv

Dr. Friedrich von Never in pro.net
Опасно использовать runtime facilities, которые плохо оттестированы на сишорп-разработчиках.
источник

Dv

Dr. Friedrich von Never in pro.net
Ну вот, например, это удар по интероперабельности, потому что из сишарпа сложно такие функции вызвать.
источник

IC

Iλyα Che in pro.net
Oleg Morozov
интересно почему F# этим не пользуется
F# и так не особо популярный.
источник

Dv

Dr. Friedrich von Never in pro.net
Если у тебя в языке все функции по дефолту assembly-global, то будет сложно со всем языком взаимодействовать снаружи. Оно тебе надо?
источник

Dv

Dr. Friedrich von Never in pro.net
Ну, мне кое-где было пофиг, и поэтому я такие функции использую. Но другим советовать не берусь :)
источник

OM

Oleg Morozov in pro.net
Gopneg
назад в процедурный паскаль?
а чем тебя паскаль смущает?
источник

G

Gopneg in pro.net
Oleg Morozov
а чем тебя паскаль смущает?
ничем, я с него начинал
источник

AT

Alexey Tkachenko in pro.net
Gopneg
назад в процедурный паскаль?
Жыэс жы
источник

AT

Alexey Tkachenko in pro.net
@EgorBo : а скажи плиз, жыд заоптимизирует конструкцию вида
string GetString<T>(T arg) => arg switch {
 int x => "int",
 short x => "short",
 ...
}

до единственного варианта?
источник

Dv

Dr. Friedrich von Never in pro.net
Alexey Tkachenko
@EgorBo : а скажи плиз, жыд заоптимизирует конструкцию вида
string GetString<T>(T arg) => arg switch {
 int x => "int",
 short x => "short",
 ...
}

до единственного варианта?
Если заинлайнится, то да.
источник

Dv

Dr. Friedrich von Never in pro.net
А хотя и если не заинлайнится, то должно.
источник

Dv

Dr. Friedrich von Never in pro.net
У тебя там есть реф типы? Для них будет важно, заинлайнилось или нет.
источник

E

EgorBo in pro.net
Alexey Tkachenko
@EgorBo : а скажи плиз, жыд заоптимизирует конструкцию вида
string GetString<T>(T arg) => arg switch {
 int x => "int",
 short x => "short",
 ...
}

до единственного варианта?
честно говоря хз, должен
источник

E

EgorBo in pro.net
я видел недавно код в джите, который как раз оптимизировал боксинг в паттерн матчинге
источник

E

EgorBo in pro.net
т.к. в твоем примере его дохрена
источник

E

EgorBo in pro.net
т.к. по сути этот паттерн матчинг раскладывается до

box
isinst
источник

E

EgorBo in pro.net
источник

E

EgorBo in pro.net
я в этот метод недавно руки вставлял (оптимизировал боксинг нуллаблов)
источник

E

EgorBo in pro.net
но не нашел кейсов в проектах и отложил :(
источник

AT

Alexey Tkachenko in pro.net
Просто же в компайл тайме конкретный тип структуры известен
источник