170 похожих чатов

18 ответов

28 просмотров

какой смысл в eval?

Смысл функциональных языков - это создание алгоритмов путём комбинирования функций как элементов языка.

serfcity--fsanitize=undefined,address Автор вопроса
Mikail Bagishov
какой смысл в eval?

Повышать абстракции. В ООП парадигме у нас есть объект, его методы и все. Это потолок. В ФП у нас нет ограничений. Мы можем повышать абстракции до бесконечности. Например, существует код на лиспе, который может исполнять код на Си. Т.е. этот код добавит ключевые слова в язык, опишет поведения стека и все-все-все так, что после этого куска кода можно будет писать код на самом обычном Си.

serfcity--fsanitize=undefined,address Автор вопроса
Boris Usievich
Только оно будет тормозить

Да, будет. Это такая плата за возможности. Такая же плата, как и за любое повышение абстракции: Си исполняется не так эффективно, чем ассемблерный код, написанный живым человеком, Си++ не так эффективно (из-за ООП), как чистый Си и контроль за каждым байтом. Так же и ФП дает прирост в возможностях за плату в виде невозможности написать компилятор

serfcity -fsanitize=undefined,address
Повышать абстракции. В ООП парадигме у нас есть об...

1. Чтобы такое сделать, eval не требуется. Тут нужна какая-то синтаксическая гибкость (если хочешь прямо встраивать код не в виде строковых литералов), ну а дальше вместо транслятора в наш язык с последующим eval-ом напрямую интерпретируем. 2. Как я уже говорил, некоторая форма eval в С++ и С есть. По твоему определению этого достаточно, чтобы они стали ФП?

serfcity -fsanitize=undefined,address
Да, будет. Это такая плата за возможности. Такая ж...

> Си исполняется не так эффективно, чем ассемблерный код, написанный живым человеком Ни Си, ни ассембли не исполняются

serfcity -fsanitize=undefined,address
Да, будет. Это такая плата за возможности. Такая ж...

> Си++ не так эффективно (из-за ООП) citation needed, шаблоны например несут скорее отрицательную стоимость (потому что компилятор старательно соптимизирует каждый инстанс). > невозможности написать компилятор То есть хаскель это не ФП?

serfcity -fsanitize=undefined,address
Да, будет. Это такая плата за возможности. Такая ж...

сдается мне, средний пропагандист асма не сможет написать код лучше современного компилятора

serfcity--fsanitize=undefined,address Автор вопроса

Написать компилятор ФП языка, который не будет включать в себя компилятор/интерпретатор этого ФП языка невозможно.

serfcity -fsanitize=undefined,address
Написать компилятор ФП языка, который не будет вкл...

ну окей, программы на языке Х (например программы на C++, которым нужен eval) будут тянуть с собой копию компилятора, в чем проблема?

serfcity -fsanitize=undefined,address
Написать компилятор ФП языка, который не будет вкл...

логично компилятор должен включать в себя компилятор

serfcity--fsanitize=undefined,address Автор вопроса
Mikail Bagishov
ну окей, программы на языке Х (например программы...

Не в чем. Просто оно будет работать медленно, потому что ты во время исполнения будешь вынужден компилировать / интерпретировать. Это плата за ФП.

serfcity -fsanitize=undefined,address
Написать компилятор ФП языка, который не будет вкл...

какое отношение все это имеет к C++? Нравится ФП - идите в чатик по ФП

Boris Usievich
какое отношение все это имеет к C++? Нравится ФП -...

тут какое-то очень спефическое определение ФП. ФП признается язык, в котором есть eval.

Ilya Zviagin
Смысл функциональных языков - это создание алгорит...

Верно. Функциональный стиль программирования это всего лишь создание инструкций и передача их кому следует, выполнение которых позволит принимающей стороне получить в итоге то, что ей надо. То есть, если кому то нужен объект колобок, то мы не передаем ему готовый экземпляр колобка, а передаем ему рецепт, как его сделать (возьми муку, соль, арендуй у кого нибудь русскую печь, испеки, вынь, поставь на окно).

The Pressbraker
Верно. Функциональный стиль программирования это ...

Если тебе надо что касаемо FP, ты меня спроси серьёзно, а то тут токсичный угар...

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта