Size: a a a

2021 June 12

к

кана in Haskell
хм, так и жс вроде как выводит теги, просто в рантайме. Он выводит что один аргумент это число, а второй это строка, и по определенной спеке преобразовывает одно в другое
источник

JS

Jerzy Syrowiecki in Haskell
шарман, шарман
источник

IK

Ilya Kos in Haskell
Есть ощущение что это скорее внутренняя деталь реализации, которая не влияет на семантику для программиста

Но я не готов эту точку зрения сейчас защищать
источник

AF

Alexey Fedotov in Haskell
Если вывод типов провалится, компилятор откажется компилировать, хоть вывод и неявный
источник

к

кана in Haskell
да, согласен, надеялся что никто эту лазейку не найдет, но у меня такое же ощущение
источник

JS

Jerzy Syrowiecki in Haskell
ассемблеры, машины Тьюринга и тому подобное
источник

к

кана in Haskell
ассемблер имеешь в виду прямо машинный код, или язык, который все равно, хоть и тривиально (а иногда нет, fasm например, с его очень мощной системой макросов) транслируется в машинный код?
источник

к

кана in Haskell
mov eax, bx странслируется, или ругнется на разный размер регистров?

mov eax, word[10]
источник

O

Ortofax in Haskell
следуя заветам плюсов, это должен быть undefined behavior
источник

[

[BRM]White Rabbit in Haskell
всё программирование это уб
источник

K

Kir in Haskell
Должно послать к чёрту, если получатель короче источника и дополнить получатель sign bit-ом в обратном случае, насколько я помню. Но я могу ошибаться.
источник

к

кана in Haskell
насколько я помню, ругнется именно транслятор, то есть какая-то система типов есть
источник

к

кана in Haskell
к сожалению fasm на мак кажется не поставить и не проверить
источник

[

[BRM]White Rabbit in Haskell
фасм настолько крут что написав helloword для вин32, эта программа запустится и на msdos x16
источник

AF

Alexey Fedotov in Haskell
то есть, хотя большинство этих типов/тегов и нельзя отличить от объекта из-за неявного оборачивания интерпретатором, существует как минимум один жесткий раздел, а именно — оператор вызова функции, который применяется исключительно к функциям и только к ним. Механизма переопределения операторов нет, создать объект, который будет вести себя, как функция, невозможно. Следовательно, если мы встречаем в коде на JS строку типа

a();

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

к

кана in Haskell
const a = eval("...");
a();

=)
источник

[

[BRM]White Rabbit in Haskell
переиграл, получается
источник

t

toriningen in Haskell
а почему? a и вправду функция 🙂
источник

AF

Alexey Fedotov in Haskell
блин, через евал же можно присвоить функцию
источник

t

toriningen in Haskell
то, что статические анализаторы не умеют смотреть в eval, не значит, что так нельзя
источник