Size: a a a

Compiler Development

2020 February 25

FO

FORTRAN ONE LOVE in Compiler Development
оно не осилило мои производные. надо допиливать
источник

M

MaxGraey in Compiler Development
Вообще давно ведуться работы над тем что бы запилить AD прямо в язык
источник

M

MaxGraey in Compiler Development
видел пропозалы для Julia и Swift
источник

МБ

Михаил Бахтерев in Compiler Development
В качестве пропаганды. AD в Схему завезли 20 лет назад :) Scmutils.
источник

FO

FORTRAN ONE LOVE in Compiler Development
Михаил Бахтерев
В качестве пропаганды. AD в Схему завезли 20 лет назад :) Scmutils.
а MPI завезли?:)
источник

МБ

Михаил Бахтерев in Compiler Development
FORTRAN ONE LOVE
а MPI завезли?:)
Ага. Но я сам не пробовал. Надо бы, кстати
источник

МБ

Михаил Бахтерев in Compiler Development
Вопрос: а как Haskell компилирует?

let
 a = b
 b = 1 + a
in a

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

M

MaxGraey in Compiler Development
Михаил Бахтерев
Вопрос: а как Haskell компилирует?

let
 a = b
 b = 1 + a
in a

Ну, то есть, меня интересуют грязные подробности того, как он определяет, что это не компилируется. Потому что через стандартный fix чё-то я не понимаю, как это всё должно сломаться
А хаскель поддерживает затенение?
источник

MS

Mikola Summer Duck in Compiler Development
Михаил Бахтерев
Вопрос: а как Haskell компилирует?

let
 a = b
 b = 1 + a
in a

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

МБ

Михаил Бахтерев in Compiler Development
MaxGraey
А хаскель поддерживает затенение?
Ага
источник

МБ

Михаил Бахтерев in Compiler Development
Mikola Summer Duck
На момент определения а, b не существует в лексическом скоупе.
То есть, это получается (в более подробных терминах) letrec a = b in (letrec b = a + 1 in a)?
источник

MS

Mikola Summer Duck in Compiler Development
Я только что проверил, нифига, я соврал походу.
источник

K

Kakadu in Compiler Development
Михаил Бахтерев
Вопрос: а как Haskell компилирует?

let
 a = b
 b = 1 + a
in a

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

МБ

Михаил Бахтерев in Compiler Development
Kakadu
Оно компилируется. Почему оно не должно компилироваться?
Будет просто вечный цикл?
источник

K

Kakadu in Compiler Development
когда обратятся к нижней а
источник

МБ

Михаил Бахтерев in Compiler Development
Kakadu
когда обратятся к нижней а
А верно ли я понимаю, что это откомпилится просто в

calc_a: jmp calc_b
calc_b: jmp calc_a


?
источник

K

Kakadu in Compiler Development
Это лучше в хаскельном чате спрашивать. Судя по коду на ассемблере, формально нет
источник
2020 February 26

KR

K R in Compiler Development
Михаил Бахтерев
Это появилось в ML
Выяснилось, что таки нет - в истории Хаскеля написано, что тиснули из языка PAL 1967 года. Язык из MIT,  динамически типизированный вариант ISWIM. Выглядело это как

A %function1 B

вместо обратных кавычек (это я в руководстве PAL подсмотрел).

Прошу прошения, что очень похоже на поведение ёжика из анекдота. Но как-то страшно заинтересовал этот простой и красивый приём.
источник

BD

Berkus Decker in Compiler Development
FORTRAN ONE LOVE
Где RUST ONE LOVE?
А где APPROPRIATE TOOL ONE LOVES?
источник

МБ

Михаил Бахтерев in Compiler Development
K R
Выяснилось, что таки нет - в истории Хаскеля написано, что тиснули из языка PAL 1967 года. Язык из MIT,  динамически типизированный вариант ISWIM. Выглядело это как

A %function1 B

вместо обратных кавычек (это я в руководстве PAL подсмотрел).

Прошу прошения, что очень похоже на поведение ёжика из анекдота. Но как-то страшно заинтересовал этот простой и красивый приём.
Не знал. Спасибо!
источник