Size: a a a

Compiler Development

2020 May 23

а

а это кто in Compiler Development
или есть какие-то другие реализации?
источник

M

MaxGraey in Compiler Development
Если там call-by-value и никакого заимствования то вполне можно. Собствнно некоторая вариация на тему линейных типов:
https://github.com/u2zv1wx/neut#basics
источник

M

MaxGraey in Compiler Development
Интерестная аналогия

Jean Yang made a great analogy here: https://twitter.com/jeanqasaur/status/1262833050473259009

> Programming languages researchers are like fashion designers and "research languages" like Haskell and Idris are like runway looks. Nobody expects people to go around snakes on their bodies. They're pushing the boundaries of art and science and showing what's possible.

And just like in fashion, the runway looks eventually change what people are wearing. Rust’s memory management would never exist in its current form if Cyclone hadn’t already shown it was possible.
источник

а

а это кто in Compiler Development
MaxGraey
Интерестная аналогия

Jean Yang made a great analogy here: https://twitter.com/jeanqasaur/status/1262833050473259009

> Programming languages researchers are like fashion designers and "research languages" like Haskell and Idris are like runway looks. Nobody expects people to go around snakes on their bodies. They're pushing the boundaries of art and science and showing what's possible.

And just like in fashion, the runway looks eventually change what people are wearing. Rust’s memory management would never exist in its current form if Cyclone hadn’t already shown it was possible.
Действительно.
источник

KR

K R in Compiler Development
Только можно узнать, при чём тут Haskell?
источник

PS

Peter Sovietov in Compiler Development
А что такого особенного в "memory management" у Rust?

Смотрю вот материалы автора языка:
Слайды выступления: http://venge.net/graydon/talks/intro-talk-2.pdf
Документация: https://twister.43foldrs.com/rust.pdf
Вот, нормально же все, скромно и со вкусом, видно сильное влияние если не самого Go, то других языков Пайка. Даже захотелось попрограммировать на этом... %)

Предлагаю поклонникам Rust на этом месте выдохнуть, мое подначивание — это только иллюстрация некоторых принципов разработки ЯП.
В данном случае речь идет об "уличной моде". А можно иначе? Я не знаю, читаете ли вы "The History of Standard ML", но я лично читаю с огромным удовольствием.
Там есть хорошая цитата автора SML:

. . . we will not accept further revision of Standard ML. It is natural that people discuss
changes and new features, and thus that successors of the language will arise. We
expect, however, the designers of any successor language to make it clear that their
language is not Standard ML.

Это, на мой взгляд, слова большого "модельера", у которого есть чувство стиля. И такой подход как раз в духе исследовательских ЯП.
источник

KR

K R in Compiler Development
Если продолжать аналогию с модой, то Haskell research - это чисто солдатская дизайнерская одежда из карикатуры Корсуна.

https://caricatura.ru/daily/korsun/pic/karikatura-forma-ot-kutyur_(sergey-korsun)_17.jpg

В смысле, всё, пора остановиться, как сделали с SML/TeX, и дать людям нормально работать с этим языком.
источник

PS

Peter Sovietov in Compiler Development
В статье, кстати, есть еще вот какая интересная фраза:

"Compiler implementations share many characteristics with proof assistants, so it is not surprising that the most popular use of SML has been for writing compilers".

На эту тему еще было известное: https://flint.cs.yale.edu/cs421/case-for-ml.html
источник

KR

K R in Compiler Development
«One of the reasons I like Ocaml over SML is that Ocaml doesn't like operator overloading:
there are different operators for float addition ("+.") and integer addition ("+"), for example.»

Ему точно не понравятся монады и прочие шаблоны проектирования...
источник
2020 May 24

K

Kitsu in Compiler Development
Peter Sovietov
А что такого особенного в "memory management" у Rust?

Смотрю вот материалы автора языка:
Слайды выступления: http://venge.net/graydon/talks/intro-talk-2.pdf
Документация: https://twister.43foldrs.com/rust.pdf
Вот, нормально же все, скромно и со вкусом, видно сильное влияние если не самого Go, то других языков Пайка. Даже захотелось попрограммировать на этом... %)

Предлагаю поклонникам Rust на этом месте выдохнуть, мое подначивание — это только иллюстрация некоторых принципов разработки ЯП.
В данном случае речь идет об "уличной моде". А можно иначе? Я не знаю, читаете ли вы "The History of Standard ML", но я лично читаю с огромным удовольствием.
Там есть хорошая цитата автора SML:

. . . we will not accept further revision of Standard ML. It is natural that people discuss
changes and new features, and thus that successors of the language will arise. We
expect, however, the designers of any successor language to make it clear that their
language is not Standard ML.

Это, на мой взгляд, слова большого "модельера", у которого есть чувство стиля. И такой подход как раз в духе исследовательских ЯП.
rust 10 года можно сказать другой язык по сравнению с текущей версией, гритредов ака горутины оттуда выпилили еще до первой версии. Из нового в управлении памяти — лайфтаймы, хотя возможно это где-то уже было, но я просто не слышал
источник

EM

Evgenii Moiseenko in Compiler Development
Peter Sovietov
А что такого особенного в "memory management" у Rust?

Смотрю вот материалы автора языка:
Слайды выступления: http://venge.net/graydon/talks/intro-talk-2.pdf
Документация: https://twister.43foldrs.com/rust.pdf
Вот, нормально же все, скромно и со вкусом, видно сильное влияние если не самого Go, то других языков Пайка. Даже захотелось попрограммировать на этом... %)

Предлагаю поклонникам Rust на этом месте выдохнуть, мое подначивание — это только иллюстрация некоторых принципов разработки ЯП.
В данном случае речь идет об "уличной моде". А можно иначе? Я не знаю, читаете ли вы "The History of Standard ML", но я лично читаю с огромным удовольствием.
Там есть хорошая цитата автора SML:

. . . we will not accept further revision of Standard ML. It is natural that people discuss
changes and new features, and thus that successors of the language will arise. We
expect, however, the designers of any successor language to make it clear that their
language is not Standard ML.

Это, на мой взгляд, слова большого "модельера", у которого есть чувство стиля. И такой подход как раз в духе исследовательских ЯП.
Ну и где этот sml сегодня?
источник

EM

Evgenii Moiseenko in Compiler Development
От него только OCaml отпочковался, да и тот, к сожалению, не очень популярен
источник

K

Kakadu in Compiler Development
Evgenii Moiseenko
Ну и где этот sml сегодня?
Не обращай внимания. Здесь много нелюбителей функциональщины
источник

K

Kakadu in Compiler Development
Evgenii Moiseenko
От него только OCaml отпочковался, да и тот, к сожалению, не очень популярен
Хотя, чисто формально, Caml развивался параллельно
источник

EM

Evgenii Moiseenko in Compiler Development
K R
«One of the reasons I like Ocaml over SML is that Ocaml doesn't like operator overloading:
there are different operators for float addition ("+.") and integer addition ("+"), for example.»

Ему точно не понравятся монады и прочие шаблоны проектирования...
В OCaml просто нормальных тайпклассов/имплицитных модулей так и не завезли
источник

KR

K R in Compiler Development
Evgenii Moiseenko
В OCaml просто нормальных тайпклассов/имплицитных модулей так и не завезли
И, весьма вероятно, не завезут. Именно потому, что есть много людей, обожающих "+."
источник

K

Kakadu in Compiler Development
@eupp7 Видишь, тут походу люди не сталкивались с неразрешимыми для них проблемами
источник

PS

Peter Sovietov in Compiler Development
Evgenii Moiseenko
Ну и где этот sml сегодня?
А почему он, собственно, должен быть везде? У него вполне конкретная предметная область, далекая от массовых запросов. И в каком-то смысле SML свою задачу уже выполнил, многих вдохновил, в том числе, благодаря "чистоте языка". Сейчас он играет роль "латыни", которую специалистам все равно приходится изучать. Иначе как читать того же Аппеля? Я, кстати говоря, впервые серьезно познакомился с SML из курса лекций Манфреда Броя, у нас несколько его томов издали в 90-х.
источник

EM

Evgenii Moiseenko in Compiler Development
Peter Sovietov
А почему он, собственно, должен быть везде? У него вполне конкретная предметная область, далекая от массовых запросов. И в каком-то смысле SML свою задачу уже выполнил, многих вдохновил, в том числе, благодаря "чистоте языка". Сейчас он играет роль "латыни", которую специалистам все равно приходится изучать. Иначе как читать того же Аппеля? Я, кстати говоря, впервые серьезно познакомился с SML из курса лекций Манфреда Броя, у нас несколько его томов издали в 90-х.
Хаскель вполне себе сохраняет чистоту и академичность, но это не мешает ему развиваться и даже находить применение в продакшене
источник

PS

Peter Sovietov in Compiler Development
Evgenii Moiseenko
Хаскель вполне себе сохраняет чистоту и академичность, но это не мешает ему развиваться и даже находить применение в продакшене
В сфере разработки компиляторов, насколько мне известно, Ocaml более популярен. Сужу как по проектам компиляторов, так и по учебным курсам.
источник