Это кажется очевидным, но может быть ошибочным. По аналогии с цифровым пиратством - возможно те кто катаются на самокате вдвоём просто не могут позволить себе два самоката. А значит волшебный самокат, идеально препятствующий использованию себя для поездки двух и более пользователей, только лишит компанию денег.
Нет, можно накладывать ограничения на структуру данных. Собственно, структурная типизация. Но в основном пользуются номинативной.
нет «позднего связывания» интерфейса с классом
А есть примеры языков с реализацией такого? Я кажется не очень понимаю.
subtype polymorphism
Есть же. В некоторых местах нужно явно приводить к базовому классу, но это by design. Если в сигнатуре функции параметр имеет тип интерфейса или абстрактного класса — передать в неё можно любого наследника.
Полиморфизм — да! Всё что есть в C# и ещё больше. Например, есть возможность накладывать ограничения на структуру данных (наличие нужного метода/поля/свойства/оператора). Использовать не очень удобно — так вроде сделано умышленно, потому что функции с такими ограничениями не интеропятся с остальным .Net.
Иммутабельность — да! Автор допустил ошибку в переводе, let связывает имя со значением, а не создаёт переменную. Переменная у нас let mutable. По умолчанию всё иммутабельно.
Монады — вроде да. У нас алгебраические типы. Maybe есть в стдлибе, и называется Option. Монада Async реализована на самом F#, и является обыкновенным Computation Expression. Я не эксперт, но вроде до хаскеля в F# не хватает только тайпклассов. Слышал как эксперты говорили что не очень удобно работать со стеком монад — под каждый вариант приходится писать свой CU.
Сам я с трудом понимаю что такое монада, весь этот пункт может быть неправильным.
Про Scala\Kotlin ничего сказать не могу, так как слишком плохо с ними знаком.
У меня тоже Manjaro KDE. Когда делал переход с винды — почувствовал ощутимый прирост времени работы. На винде ноут не дотягивал до конца пар в универе (около 6-8 часов, обычно это в основном браузер, с какой-то долей офиса и среды разработки). На лине стал дотягивать с ощутимым запасом.
Короче, я думаю это от конфига зависист.
P.S. А ещё у меня все жесты, которые работали в винде — работают на лине. Даже сенсорный экран (доля понимающих его приложений примерно такая же как на винде).
Это не так просто, когда твоя электричка на работу/в универ стартует 5:50 что бы успеть к началу дня в 9, а после 5 пар/8 часов работы ты возвращаешься в домой 22:15.
Это кажется очевидным, но может быть ошибочным. По аналогии с цифровым пиратством - возможно те кто катаются на самокате вдвоём просто не могут позволить себе два самоката. А значит волшебный самокат, идеально препятствующий использованию себя для поездки двух и более пользователей, только лишит компанию денег.
Но это тоже не точно)
Да. TPM просто позволяет вам надёжно генерировать и хранить ключ шифрования, но сам по себе ничего не шифрует и не защищает.
А есть примеры языков с реализацией такого? Я кажется не очень понимаю.
Есть же. В некоторых местах нужно явно приводить к базовому классу, но это by design. Если в сигнатуре функции параметр имеет тип интерфейса или абстрактного класса — передать в неё можно любого наследника.
Я тоже не точно выразился, у автора там тоже слово «variable», что не истина. Перевод при этом корректен.
Иммутабельность — да! Автор допустил ошибку в переводе,
let
связывает имя со значением, а не создаёт переменную. Переменная у насlet mutable
. По умолчанию всё иммутабельно.Монады — вроде да. У нас алгебраические типы.
Maybe
есть в стдлибе, и называетсяOption
. МонадаAsync
реализована на самом F#, и является обыкновенным Computation Expression. Я не эксперт, но вроде до хаскеля в F# не хватает только тайпклассов. Слышал как эксперты говорили что не очень удобно работать со стеком монад — под каждый вариант приходится писать свой CU.Сам я с трудом понимаю что такое монада, весь этот пункт может быть неправильным.
Про Scala\Kotlin ничего сказать не могу, так как слишком плохо с ними знаком.
Плюсую, интересно услышать пару слов про архитектуру приложения.
Короче, я думаю это от конфига зависист.
P.S. А ещё у меня все жесты, которые работали в винде — работают на лине. Даже сенсорный экран (доля понимающих его приложений примерно такая же как на винде).
Это не так просто, когда твоя электричка на работу/в универ стартует 5:50 что бы успеть к началу дня в 9, а после 5 пар/8 часов работы ты возвращаешься в домой 22:15.