LINUX.ORG.RU

присвоение внутри if

 


0

3

Зачем в языках программирования, например с Си и прочих, которые унаследовали его синтаксис есть возможность написать if (a=b). Вернет же всегда присвоение истину. Можете привести пример зачем это нужно? Попросили объяснить почему компилятор сам не понимает когда надо == а когда =. Не смог.

Перемещено JB из talks

Ответ на: комментарий от anonymous

Как результат, конечная программа получается простой и прозрачной (для подготовленного читателя).

По-моему, ставить брейкпоинты и курить стейт интерпретатора - это нечто иное, нежели чем простота и прозрачность.

Те задачи, что можно решать на нем получаются значительно короче, чем на том же CL, особенно если обратить внимание, что picolisp не использует для этого сторонние библиотеки.

Можно _конкретный_ пример? То есть вот такая задача, вот так на пиколиспе, вот эдак на CL - PROFIT!

С моей точки зрения, они практически взаимозаменяемы. Я, наверное, что-то пропустил.

ну, например, я с большим трудом представляю себе, как реализовать в рамках пиколиспа аналог гигиенической макросистемы. А никаких сложных макросов без автомтаической гигиены ты не напишешь. Точнее в теории оно можно, конечно, но криво, неудобно, глючно. То есть костыль вместо удобного инструмента.

anonymous
()
Ответ на: комментарий от anonymous

гигиенической макросистемы

Я собрал всех покемонов в одном треде, куда подходить за призом?

anonymous
()
Ответ на: комментарий от anonymous

Я собрал всех покемонов в одном треде, куда подходить за призом?

пройдите, призы раздают в спортлото.

gensym ★★
()
Ответ на: комментарий от anonymous

Можно _конкретный_ пример? То есть вот такая задача, вот так на пиколиспе, вот эдак на CL - PROFIT!

Всегда пожалуйста:

Задача http://rosettacode.org/wiki/Echo_server

Решение на CL: http://rosettacode.org/wiki/Echo_server#Common_Lisp

На picolisp http://rosettacode.org/wiki/Echo_server#PicoLisp

Задача http://rosettacode.org/wiki/Simple_database

Решения http://rosettacode.org/wiki/Simple_database#Common_Lisp http://rosettacode.org/wiki/Simple_database#PicoLisp

ну, например, я с большим трудом представляю себе, как реализовать в рамках пиколиспа аналог гигиенической макросистемы.

Если я ничего на напутал, то использование параметра cnt в file:///home/wit/work/picoLisp-3.0.1/doc/refR.html#run обеспечит желаемое.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.