Я не понимаю, как на это реагировать. Некий товарищ полгода спрашивает у меня советы как начать с Verilog/FPGA/ASIC, но при этом ничего не начинает, хотя его вопросы становятся все более экзотическими. Чтобы было понятнее, опишу как бы это выглядело для программирования. Предположим к вам пришел молодой человек и спрашивает как научиться программировать. Вы ему говорите что-нибудь типа:
Рубрика «функциональное программирование»
Полгода задает изощренные вопросы как начать программировать, но не написал даже Hello, world
2024-05-20 в 16:27, admin, рубрики: asic, CUDA, hello world, Verilog, обучение программированию, объектно-ориентированное, страх перед кодом, функциональное программирование, юморКак изучить Haskell всего за 15 лет
2024-02-12 в 13:00, admin, рубрики: elm, ruvds_переводы, xmonad, функциональное программирование, чистые функции![Как изучить Haskell всего за 15 лет - 1 Как изучить Haskell всего за 15 лет - 1](https://www.pvsm.ru/images/2024/02/13/kak-izuchit-Haskell-vsego-za-15-let.jpg)
Haskell — это язык программирования, изобретённый в 20-м веке шотландскими логиками в качестве пранка (вероятно). Примерно пятнадцать лет назад я начал изучать Haskell по причинам, которые уже и не упомню. Сегодня я наконец написал полезную программу на Haskell и уверен, что смогу сделать это снова, если мне когда-нибудь понадобится ещё одна компьютерная программа.
Я не знаю, как изучал функциональное программирование в целом и Haskell в частности. В 2006-м я следил за проектами why the lucky stiff и читал передовой тамблелог Леа Нойкирхен Anarchaia, и какой-то из этих источников познакомил меня с миром за пределами ООП. В декабре 2006 года Леа опубликовала на Anarchaia ссылку на Pandoc, и тогда я впервые узнал о своём любимом ПО и языке, на котором оно было написано.
Читать полностью »
Люди не понимают ООП
2024-02-07 в 13:00, admin, рубрики: ruvds_переводы, инкапсуляция, наследование, объекты, ооп, полиморфизм, структурное программирование, функциональное программирование![Люди не понимают ООП - 1 Люди не понимают ООП - 1](https://www.pvsm.ru/images/2024/02/07/lyudi-ne-ponimayut-oop.png)
«ООП для меня означает лишь обмен сообщениями, локальные ограничения и защиту, сокрытие состояния процесса и крайне позднее привязывание», — Алан Кэй (человек, придумавший термин «объектно-ориентированное программирование»)1
Похоже, многим не нравится объектно-ориентированное программирование. Первое, что приходит в голову, когда слышишь эту трёхбуквенную аббревиатуру — это пример с автомобилем, наследование, геттеры, сеттеры и ObjectFactoryFactorySingleton.
Мне это всегда казалось довольно странным. Мне не только нравится ООП, я ещё и считаю, что часто это лучший/наиболее очевидный способ моделирования задачи. И ниже я расскажу, почему.Читать полностью »
Арифметика первого класса в системе типов Rust
2024-01-19 в 13:00, admin, рубрики: Rust, ruvds_перевод, математика, Программирование, функциональное программирование![Арифметика первого класса в системе типов Rust - 1 Арифметика первого класса в системе типов Rust - 1](https://www.pvsm.ru/images/2024/01/21/arifmetika-pervogo-klassa-v-sisteme-tipov-Rust.png)
Арифметика – наука непростая, но к нашему удобству работу с ней можно облегчить с помощью экспрессивной системы типов языка Rust. В статье мы разберём реализацию на этом языке простейших математических операций, таких как сложение, вычитание, умножение и деление. Читать полностью »
Что такое формальная верификация
2023-08-05 в 10:52, admin, рубрики: coq, Rust, Алгоритмы, безопасность, безопасность веб-приложений, безопасность данных, информационная безопасность, Криптовалюты, формальная верификация, функциональное программированиеЭто обзорная статья, в которой очень поверхностно и не подробно рассказывается о том, что такое формальная верификация программного кода, зачем она нужна и чем она отличается от аудита и тестирования.
Формальная верификация — это доказательство с использованием математических методов корректности программного обеспечения.
Формальная верификация молода. На сегодняшний день, на сайте хабр, например, нет (пока) специализации «Формальная верификация», нет специальности «Proof инженер» или «Специалист по формальной верификации». А люди, работающие по этой специальности — есть.
Звучащий код — пишем музыку на языке ByteBeat
2023-06-24 в 22:17, admin, рубрики: Brainfuck, bytebeat, chiptune, open source, sizecoding, Блог компании Undefined DIY fest, взрыв мозга, Демосцена, зачем программисту математика, звук, ненормальное программирование, функциональное программирование![Звучащий код — пишем музыку на языке ByteBeat - 1 Звучащий код — пишем музыку на языке ByteBeat - 1](https://www.pvsm.ru/images/2023/06/25/zvuchashii-kod-pishem-muzyku-na-yazyke-ByteBeat.png)
Дорогой Хабр, через два месяца мне предстоит организовать и провести фестиваль компьютерного искусства, поэтому я уже сейчас собираю информацию про необычные проявления демосцены, на которые обычно никто не обращает внимания. Язык программирования для генеративной музыки ByteBeat — это как раз то, что я ищу.
5 антипаттернов при написании кода на функциональном ЯП
2023-05-21 в 10:00, admin, рубрики: ruvds_перевод, scala, антипаттерны, Блог компании RUVDS.com, Программирование, программирование для начинающих, функции, функциональное программирование![5 антипаттернов при написании кода на функциональном ЯП - 1 5 антипаттернов при написании кода на функциональном ЯП - 1](https://www.pvsm.ru/images/2023/05/21/5-antipatternov-pri-napisanii-koda-na-funkcionalnom-yap.png)
Антипаттерны в функциональных языках программирования могут показаться непривычными в силу отличия этих языков от других их видов, в связи с чем разработчики нередко пишут не самые удачные реализации, склонные к ошибкам и трудные в обслуживании. В статье мы разберём пять наиболее типичных антипаттернов, избегая которые вы сможете создавать более удобный в работе код при меньшем количестве ошибок.Читать полностью »
Наиболее распространённые мифы о Scala: сеанс с разоблачением
2023-04-07 в 12:32, admin, рубрики: java, scala, Блог компании Издательский дом «Питер», Программирование, функциональное программирование![Наиболее распространённые мифы о Scala: сеанс с разоблачением - 1 image](https://www.pvsm.ru/images/2023/04/08/naibolee-rasprostranyonnye-mify-o-Scala-seans-s-razoblacheniem.png)
В этом посте развенчивается ряд очень существенных мифов о языке Scala, которые, как нам известно, циркулируют в блогосфере. Для каждого развенчанного мифа мы представим альтернативную точку зрения, подкреплённую данными из надёжных источников. Читать полностью »
Слышали ли вы про язык «e»? А ведь он был продан за $315 миллионов долларов
2023-03-24 в 7:08, admin, рубрики: constraint programming, fpga, functional coverage, Hardware Verification Language, Specman, SystemVerilog, SystemVerlog Assertions, Vericity, vhdl, Анализ и проектирование систем, верификация микросхем, программирование микроконтроллеров, Производство и разработка электроники, функциональное программирование, Школа Синтеза![Слышали ли вы про язык «e»? А ведь он был продан за $315 миллионов долларов - 1 Слышали ли вы про язык «e»? А ведь он был продан за $315 миллионов долларов - 1](https://www.pvsm.ru/images/2023/03/24/slyshali-li-vy-pro-yazyk-e-a-ved-on-byl-prodan-za-315-millionov-dollarov.png)
Все знают про язык программирования C, поменьше — про язык программирования F, кое‑кто про B, предшественник C, а вот знаете ли вы про язык «e»? Их кстати два — один с большой буквы «E», а другой с маленькой «e».
Квазицитирование в Lisp
2023-01-04 в 16:58, admin, рубрики: quasiquotation, string interpolation, функциональное программированиеАннотация
Квазицитирование (quasiquotation) — это технология, обычно используемая в Lisp для создания программ, генерирующих другие программы. В статье объясняется механизм работы квазицитирования, поясняется почему он работает именно так и каковы его ограничения, а также даётся экскурс в историю квазицитирования.