Size: a a a

2019 October 15

L

Leyla in fprog_spb
Ыыы
источник

A

Andrey in fprog_spb
👍
источник

DI

Dmitry Ignatiev in fprog_spb
источник

DI

Dmitry Ignatiev in fprog_spb
Greenspun's Tenth Rule Of Programming, натурально
источник

Y

Yuuri in fprog_spb
Ой, тоже мне.
utop # let bar x ~y = x + y;;
val bar : int -> y:int -> int = <fun>

utop # let (:=) r v = r := v ; !r;;
val ( := ) : 'a ref -> 'a -> 'a = <fun>

utop # let a = ref 0 in a := bar 17 ~y:25;;
- : int = 42
источник

A

Antonio in fprog_spb
щас тебе скажут что это тоже Greenspun's Tenth Rule Of Programming
источник

DI

Dmitry Ignatiev in fprog_spb
Ну вообще да. На цацкелях часто начинают городить динамику с тайптегами опять же
источник

n

neFormal in fprog_spb
Зачем пытаться на лиспе повторить питон?
источник

Y

Yuuri in fprog_spb
Когда в руках лишп, всё вокруг кажется гринспаном
источник
2019 October 16

MP

Mike Potanin in fprog_spb
Хоть я питон и очень не люблю, но общее пространство имен лучше, чем раздельные для функций, перемеррых и прочих сущностей.
источник

DI

Dmitry Ignatiev in fprog_spb
в любом языке всегда начинают вводиться новые пространства имен, для всего что не включено в базовые. пример - пространство имен биндингов в DI-контейнерах
источник

DI

Dmitry Ignatiev in fprog_spb
в CL же их из коробки дохрена видов и так, и решили не заморачиваться. к тому же так проще макросы писать
источник
2019 October 17

NK

Nikita Kononenko in fprog_spb
Dmitry Ignatiev
Ну вообще да. На цацкелях часто начинают городить динамику с тайптегами опять же
так пример выше ж на окамле
источник

Y

Yuuri in fprog_spb
Видимо, «цацкели» – это собирательное
источник

L

Leyla in fprog_spb
ТикТок выходит на образовательный рынок :) https://techcrunch.com/2019/10/17/tiktok-education-edutok-india/  а потом я представила, как кто-нибудь спрашивает про видосик с фпрога, а я такая, бац, и ссылку на ТикТок)
источник
2019 October 19

K

Kakadu in fprog_spb
Я правильно понимаю, что сейчас Scheme не использует аппликативный порядок редукций, хотя SICP говорит, что использует?
https://mitpress.mit.edu/sites/default/files/sicp/full-text/book/book-Z-H-27.html#%_sec_4.2.1
источник

PS

Peter Sovietov in fprog_spb
"Arguments to Scheme procedures are always passed by value, which means that the actual argument expressions are evaluated before the procedure gains control, whether the procedure needs the result of the evaluation or not. ML, C, and APL are three other languages that always pass arguments by value. This is distinct from the lazy-evaluation semantics of Haskell, or the call-by-name semantics of Algol 60, where an argument expression is not evaluated unless its value is needed by the procedure." (R5Rs)
источник

K

Kakadu in fprog_spb
Это всё хорошо, конечно, но апплакативный отличается от CBV только тем, что AO редуцирует под абстракцией, а в Вашем параграфе про это ничего не сказано.

Я сильно удивился, когда увидел такое в SICP, думал что ни один настоящий язык программирования AO не использует
источник

PS

Peter Sovietov in fprog_spb
Почему же? CBV это достаточно абстрактная вещь, мы можем хоть с помощью ГПСЧ выбирать очередной аргумент для выполнения. А в AO указан порядок обхода потомков очередного узла дерева вычислений: слева направо.
источник

PS

Peter Sovietov in fprog_spb
В R5RS написано в соотв. разделе: "The operator and operand expressions are evaluated (in an unspecified order) and the resulting procedure is passed the resulting arguments". Это и есть CBV.
источник