Size: a a a

2020 May 15

AS

Alex Shipilov in fprog_spb
Alexander Vershilov
Я там могу написать  (не знаю синтаксиса)
(atomic (seq (http-query "http://call.me.once/") (someaction))
Stm это транзакционная память жеж? Таких конструкций не встречал, нужен более сильный специалист в кложе:)
источник

AV

Alexander Vershilov in fprog_spb
Просто я не слышал про языки, в которых stm реализован на том же уровне, как в haskell
источник

AV

Alexander Vershilov in fprog_spb
Вот вопрос в том, могу ли я делать транзакцию и могу ли я в транзакции сделать действие влияющее на внешний мир, и что произойдёт если я это сделаю
источник

n

neFormal in fprog_spb
Типа руби?
источник

AV

Alexander Vershilov in fprog_spb
А транзакцию перезапустят
источник

AS

Alex Shipilov in fprog_spb
В транзакции побочек быть не должно
источник

AV

Alexander Vershilov in fprog_spb
Просто везде где я видел компилятор не следит за этим, и если написал так, то ССЗБ
источник

AV

Alexander Vershilov in fprog_spb
Твои проблемы, разбирайся сам
источник

AS

Alex Shipilov in fprog_spb
Ну в кложе, там это условие, что стейт меняется только снаружи
источник

AV

Alexander Vershilov in fprog_spb
А оно чем-то гарантировано?
источник

AV

Alexander Vershilov in fprog_spb
Вот типы в этом месте в Haskell дают гарантию, без написания явно unsafe кода, невозможно сделать в STM транзакции побочный эффект
источник

AV

Alexander Vershilov in fprog_spb
можно написать unsafePrimToPrim callMissiles, но так никто не делает
источник

AV

Alexander Vershilov in fprog_spb
Не все знают даже откуда unsafePrimToPrim импортировать
источник

YS

Yan Shkurinskiy in fprog_spb
я даже такого имени не знаю
источник

n

neFormal in fprog_spb
Лел, в эрланге за стм считают мнезию.
источник

AR

Apfelsinchen Ritter in fprog_spb
Вчера правильно скинули ссылку на https://lexi-lambda.github.io/blog/2020/01/19/no-dynamic-type-systems-are-not-inherently-more-open/, но её проигнорировали, там очень аккуратно описывается то, что обсуждают выше, только нужно читать до конца.
источник

A

Antonio in fprog_spb
neFormal
Лел, в эрланге за стм считают мнезию.
нет
источник

n

neFormal in fprog_spb
Antonio
нет
Да я в вики увидел. Так то понятно. Хотя даже в доках был пример с подпиской
источник

AS

Alex Shipilov in fprog_spb
Alexander Vershilov
А оно чем-то гарантировано?
Могу ошибаться, на уровне соглашения, т.к. внутрь я могу прокинуть функцию с побочным эффектами, но тогда не будет гарантии, что значение установиться и установиться верное
источник

AV

Alexander Vershilov in fprog_spb
Ну если так, то тогда вот пример того, где типы помогают
источник