Судзумия
Solid это принципы
Αλεχ
ну тот же open-close
Αλεχ
это чисто оопшная хрень же
Αλεχ
если нет наследования - то и нет таких проблем
Αλεχ
придут новые разрабы
и они будут изучать миллионы строк компилятора?
Cat
и они будут изучать миллионы строк компилятора?
миллионы разработчиков будут изучать по одной строке
Cat
bus factor over 9k
Αλεχ
Это не поможет
Αλεχ
нужно понимать, что компилятор делает и в каких случаях
Αλεχ
ни один человек один весь компилятор не охватит
Αλεχ
особенно со всем тем сахаром что есть в расте
Ευγένιος
Какие интересные обсуждения.
Αλεχ
короче спека это документация
Cat
главное не воспринимай всё написанное теоретиками в серьёз
Αλεχ
надеюсь нет возражений, что писать /// This function does THIS лучше, чем /// fuck off, read the code ?
Cat
// Ask my best friend about this line, he fixed it
Αλεχ
короч спека это добро
Cat
Впервые такое слышу. Почему?
потому что теория это всё красиво и здорово, но всегда не работает
Αλεχ
например если будет переписываться компилятор можно будет туда глядеть
Αλεχ
а не лапшу потрошить
Αλεχ
в дотнете вон компилятор переписали
Αλεχ
много статей на эту тему читал
Αλεχ
как люди удивлялись что оказывается по спеке он должен делать
Αλεχ
поправили дюжину багов
Αλεχ
и прочие прелести
Αλεχ
а не было бы спеки- я думаю они вообще не пытались бы даже
Cat
как люди удивлялись что оказывается по спеке он должен делать
о, это они ещё не знают, что существуют gcc и clang
Anton
потому что теория это всё красиво и здорово, но всегда не работает
Ну пока слышу хорошие отзывы. Да и тем более я попробую заменить чем-нибудь наследование.
Cat
ответ: композиция
Cat
та при чем тут это
та при том, что компиляторы сей давно не соответсвуют спеке и им норм
Αλεχ
Αλεχ
хорошо что в уютных шарпипах это не так
Vital
спасибо
Vital
ещё один глупый вопрос
Vital
есть переменная типа <Future<Item = ::models::SemverTagSet, Error = Error» как чекнуть, Item там или Error? компилятор ругается на это: match r { futures::Future::Error => println!("Err"), futures::Future::Item(..) => println!("ok"), };
Маjко
Используй комбинаторы
Vital
это промисы?
Маjко
Концепт тот же
Vital
если честно пока не читал
Vital
а есть что-нибудь на русском чтоб быстро въеъать?
Cat
вряд ли, если только на хабре поискать
Cat
хз оно или не оно
Cat
до футур ещё руки не дошли
Αλεχ
я бы асинк начал изучать когда оно в стд въедет
Αλεχ
еще 100 раз все поменяют
Маjко
А я б начал когда он нужен. Ждать чего-то в стейбле -- можно и не дождалаться
Alexander
а что так странно у специализаций + типов трейта? = note: expected type <phashmap::PHashMap<u16, std::string::String> as phashmap::PHash>::V found type std::string::String
Alexander
а если все типы параметрами передать - то всё норм работает
Cat
Звучит как будто ты неправильно делаешь static dispatch /наброс
Berkus
короч спека это добро
Rfc же, ни? Целая репа заведена
Kerrigan
https://habr.com/post/354784/
Αλεχ
Rfc же, ни? Целая репа заведена
нет одного места, где все описано
Αλεχ
https://www.ecma-international.org/publications/standards/Ecma-334.htm типа такого
Αλεχ
что можно бац - и глянуть все в одном месте
Αλεχ
This specification describes the form and establishes the interpretation of programs written in the C# programming language. It describes The representation of C# programs; The syntax and constraints of the C# language; The semantic rules for interpreting C# programs; The restrictions and limits imposed by a conforming implementation of C#. This specification does not describe The mechanism by which C# programs are transformed for use by a data-processing system; The mechanism by which C# applications are invoked for use by a data-processing system; The mechanism by which input data are transformed for use by a C# application; The mechanism by which output data are transformed after being produced by a C# application; The size or complexity of a program and its data that will exceed the capacity of any specific data-processing system or the capacity of a particular processor;
պլհկ
Reference есть, но там не все, да
պլհկ
Что не помешало mrustc
Αλεχ
так и я думаю
Αλεχ
что не помешало бы
Αλεχ
и спеку запилить
պլհկ
Сложно пилить спеку когда новые фичи каждую неделю
Αλεχ
Ну, надо её просто дописывать
Αλεχ
грубо гворя чтобы RFC кроме реализации содержал соответствующие изменения в спеке
Berkus
https://www.ecma-international.org/publications/standards/Ecma-334.htm типа такого
когда стабилизируют язык думаю будет какой-то общий документ и спека, пока toy language и все экспериментальное, а переписывать каждый месяц все доки заново - ломает
Αλεχ
что ты под ставбилизацией имеешь ввиду?
Αλεχ
2.0? 3.0? 10.0?
Berkus
1.0 давно вышел)
и что, там RFC еще гора и даже синтаксис не устоялся
Αλεχ
они не перестанут выходить если чо
Berkus
ща async/await завезут еще