Не менее прикольный язык, чем choral - это panda. Язык работает под jvm и имеет полный набор нужного софта, включая ide, которая называется Lily.
Что касается рациональности применения языка - я бы не советовал использовать его в качестве основного. Сам по себе он является интрепритируемым, но имеет набор классных инструментов, которые можно поковырять. Так что если вы любите программировать на чем-то необычном, то можно попробовать этот язык, а при желании даже сделать его форк и попробовать доработать панду, потому что она имеет удобную структуру и красивый код
8 панд из 10
Наш чат: @lang_dev_ru
Что касается рациональности применения языка - я бы не советовал использовать его в качестве основного. Сам по себе он является интрепритируемым, но имеет набор классных инструментов, которые можно поковырять. Так что если вы любите программировать на чем-то необычном, то можно попробовать этот язык, а при желании даже сделать его форк и попробовать доработать панду, потому что она имеет удобную структуру и красивый код
8 панд из 10
Наш чат: @lang_dev_ru
GitHub
GitHub - panda-lang/panda: Proof of concept of modern and stylish interpreted programming language for the JVM ⚜️
Proof of concept of modern and stylish interpreted programming language for the JVM ⚜️ - panda-lang/panda
❤5
Хотите написать свой язык на Zig. но вам не хватает примеров? Вашему вниманию представляется язык Honey: https://github.com/honey-lang/honey
Простенький, компилируемый язык программирования, код которого очень легко читается, рекомендую к ознакомлению тем, кто хочет вкатиться в lang dev.
9 Ершовых из 10
Наш чат: @lang_dev_ru
Простенький, компилируемый язык программирования, код которого очень легко читается, рекомендую к ознакомлению тем, кто хочет вкатиться в lang dev.
9 Ершовых из 10
Наш чат: @lang_dev_ru
GitHub
GitHub - honey-lang/honey: The official repository for the Honey programming language.
The official repository for the Honey programming language. - honey-lang/honey
❤5
Если вы считаете себя программистом, после того, как написали компилятор на с++, то советую почитать о языке, который @tapeline_tg написал на кумире. Вот статья на хабре
Хабр
Как я собственный язык на КуМире писал
Привет, Хабр! Хочу поделиться одним любопытным и совершенно нетривиальным кейсом использования Русского Алгоритмического Языка. В этой статье я расскажу, зачем мне это вообще понадобилось и почему в...
❤9
Возвращаемся к обзорам интересных, но малоизвестных языков. На очереди у нас jule. Язык написан на c++, компилируется в llvm. Все разработчики языка состоят в команде TheAlgorithms, самая популярная организация, включающая в себя репозитории с алгоритмами на разных языках. В отличии от многих других языков - этот имеет серьезные цели и амбиции, и планируется использоваться для реальных задач. В целом язык бодрый, я его тестировал ещё давно, однако перспектив особых не наблюдал. В целом не вижу проблем лично вам писать на этом языке, сделан он хорошо, но есть в этом смысл, когда существует например с++? На этот вопрос я вам ответа не дам, думайте сами
8 алгоритмов из 10
Наш чат: @lang_dev_ru
8 алгоритмов из 10
Наш чат: @lang_dev_ru
GitHub
GitHub - julelang/jule: Simple and safe programming language with first-class C/C++ interoperability and powerful compile-time…
Simple and safe programming language with first-class C/C++ interoperability and powerful compile-time capabilities - julelang/jule
❤7
Знакомы ли вы с языком рефал?
Anonymous Poll
3%
Да, могу читать код на нем
18%
Слышал, но код на нем мне непонятен
80%
Нет
❤8
Если вы являетесь ценителем истинного фп, то можете попробовать язык Eta.
По сути чего-то принципиально нового язык не приносит, но именно эта имплементация haskell под jvm является одной из наиболее удачных (однако она все еще не лучше frege).
Вот как выглядит код на этом языке:
Ставлю ему 6 академиков из 10, потому что вряд-ли кому-то нужен будет haskell на jvm, когда есть scala и сама java.
Наш чат: @lang_dev_ru
По сути чего-то принципиально нового язык не приносит, но именно эта имплементация haskell под jvm является одной из наиболее удачных (однако она все еще не лучше frege).
Вот как выглядит код на этом языке:
{-# LANGUAGE ScopedTypeVariables #-}
import Java
import Control.Monad (forM_)
main :: IO ()
main = java $ do
let integers = [1..10] :: [Byte]
(arr :: JByteArray) <- arrayFromList integers
elems <- arr <.> mapM aget [0..9]
io $ print elems
arr <.> forM_ [0..9] (\i ->
aset i (fromIntegral i * 2))
arrList <- arr <.> arrayToList
io $ print arrListСтавлю ему 6 академиков из 10, потому что вряд-ли кому-то нужен будет haskell на jvm, когда есть scala и сама java.
Наш чат: @lang_dev_ru
GitHub
GitHub - typelead/eta: The Eta Programming Language, a dialect of Haskell on the JVM
The Eta Programming Language, a dialect of Haskell on the JVM - typelead/eta
❤4
Написал небольшую статью для новичков (да, это тебе Кирилл) с самой простой интерпретируемой реализацией языка Forth на платформе В_ТЕНТАКЛЕ: https://vt.0nera.ru/article/8
Код есть на гитхабе: https://github.com/ArtyomKingmang/forth
Код есть на гитхабе: https://github.com/ArtyomKingmang/forth
vt.0nera.ru
Пишем язык Forth (вводная статья для новичков) | В_Тентакле
<h1>Введение</h1>
<p>И так, это моя первая статья на платформе
В_ТЕНТАКЛЕ и по сути будет эксклюзивной, исключительно для нее. Статья нужна, чтобы показать, какого
формата контент будет выходить в этом профиле
в дальнейшем, а именно контент, посвященный
разработке…
<p>И так, это моя первая статья на платформе
В_ТЕНТАКЛЕ и по сути будет эксклюзивной, исключительно для нее. Статья нужна, чтобы показать, какого
формата контент будет выходить в этом профиле
в дальнейшем, а именно контент, посвященный
разработке…
❤4
Монадный парсер-комбинатор под jvm, или же реализация библиотеки parsec из haskell: https://github.com/jon-hanson/parsecj
В readme файле подробно расписано, как он работает. Из минусов: хоть и репозиторий обновлялся 10 месяцев назад, его исходники лежат без изменений уже 8 лет, и вряд-ли будут обновляться. Из плюсов: лицензия позволяет вам самим дорабатывать код и публиковать его у себя при соблюдении некоторых условий.
Наш чат: @lang_dev_ru
В readme файле подробно расписано, как он работает. Из минусов: хоть и репозиторий обновлялся 10 месяцев назад, его исходники лежат без изменений уже 8 лет, и вряд-ли будут обновляться. Из плюсов: лицензия позволяет вам самим дорабатывать код и публиковать его у себя при соблюдении некоторых условий.
Наш чат: @lang_dev_ru
GitHub
GitHub - jon-hanson/parsecj: Java monadic parser combinator framework for constructing LL(1) parsers
Java monadic parser combinator framework for constructing LL(1) parsers - jon-hanson/parsecj
❤5
EPE - Extreme Programming Event.
В чем суть ивента?
Среди подписчиков канала или на просторах интернета выбирается язык программирования / платформа. В течении определенного времени участник должен будет написать какую-либо программу на этом языке. Даже если вы написали свой ассемблер - мы можем устроить конкурс на нем, и люди будут писать программы на вашем языке.
Призы
В зависимости от сложности платформы и ограничений, которые будут введены администраторами призовой фонд может варьироваться в диапазоне от 500р до 3500р.
Если вы заинтересованы, и хотите, чтобы ваш язык (или платформа) стал языком первого сезона EPE отправляйте заявки администрации: @k1ngmang
В чем суть ивента?
Среди подписчиков канала или на просторах интернета выбирается язык программирования / платформа. В течении определенного времени участник должен будет написать какую-либо программу на этом языке. Даже если вы написали свой ассемблер - мы можем устроить конкурс на нем, и люди будут писать программы на вашем языке.
Призы
В зависимости от сложности платформы и ограничений, которые будут введены администраторами призовой фонд может варьироваться в диапазоне от 500р до 3500р.
Если вы заинтересованы, и хотите, чтобы ваш язык (или платформа) стал языком первого сезона EPE отправляйте заявки администрации: @k1ngmang
❤10
Поздравляю вас с открытием первого сезона EPE. Начать хотелось бы с чего-то не очень трудного, чтобы участники вообще могли понять суть мероприятия. Для этого был выбран язык Dragon. Он очень похож на привычные всем вам языки, однако его синтаксис довольно интересный
Hello World на Dragon:
Победитель первого сезона получит 600р.
Ещё раз напоминаю правила: Вы пишите программу на выбранном сезонном языке и отправляйте ее. Лучшая программа определяется 3 людьми, чье мнение не должно быть предвзятым. Отправка ваших трудов осуществляется следующим образом: вы сообщаете в личные сообщения @artyom_java название своей команды. Затем вы должны сделать fork репозитория на github, соответствующий сезону, в котором участвуете и добавить туда папку с названием команды, которую вы сообщили. После этого делайте pull request и ждите результатов. Если возникнут трудности, пишите @artyom_java.
Итоги через месяц.
Ресурсы:
Как отправить свой код на EPE
Документация языка Dragon
Ссылка на установщик языка Dragon
Hello World на Dragon:
show "Hello World"
Победитель первого сезона получит 600р.
Ещё раз напоминаю правила: Вы пишите программу на выбранном сезонном языке и отправляйте ее. Лучшая программа определяется 3 людьми, чье мнение не должно быть предвзятым. Отправка ваших трудов осуществляется следующим образом: вы сообщаете в личные сообщения @artyom_java название своей команды. Затем вы должны сделать fork репозитория на github, соответствующий сезону, в котором участвуете и добавить туда папку с названием команды, которую вы сообщили. После этого делайте pull request и ждите результатов. Если возникнут трудности, пишите @artyom_java.
Итоги через месяц.
Ресурсы:
Как отправить свой код на EPE
Документация языка Dragon
Ссылка на установщик языка Dragon
❤7
Forwarded from .
!!! Данный список основан на уже существующем списке, где можно найти ещё больше тематической литературы с комментариями автора: https://github.com/true-grue/Compiler-Development
📄 Литература для новичков:
📄 Литература для продвинутых:
📂 Статьи:
🖥 Суперкомпиляторы:
👮♀ Видео:
Robert Nystrom: Crafting Interpreters (2020)
Никлаус Вирт: Построение компиляторов (2010)
Альфред В. Ахо, Рави Сетхи и Джеффри Д. Ульман: Компиляторы: принципы, технологии и инструменты
Steven Muchnick: Advanced Compiler Design and Implementation (1997)
Реализация простейшего компилятора на python
Реализация простого интерпретатора forth
Рекурсивный спуск в компиляторах
Климов А.В., Романенко С.А: Суперкомпиляция: основные принципы и базовые понятия
1.Интерпретатор на Python'е__
2.Интерпретатор на TypeScript
3.Интерпретатор на Rust
4.Интерпретатор на С
5.Компилятор в llvm на Python'е
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - true-grue/Compiler-Development: Что читать о разработке компиляторов
Что читать о разработке компиляторов. Contribute to true-grue/Compiler-Development development by creating an account on GitHub.
❤8
Недавно в чате была предложена идея создания дискорд сервера, чтобы помимо чата можно было пообщаться вживую, отсортировать ветки, а также много чего еще, что дает дискорд. Нужно узнать ваше мнение: создавать или данного чата хватает?
❤7
По просьбам нескольких кандидатов конкурс будет продлен до 23 марта. Для новых подписчиков, которые хотят получить 600р за сравнительно легкую работу, могут ознакомиться с постом: https://t.me/langdev/44.
Напоминаю еще раз про репозиторий, который нужно форкнуть и сделать работу (это все написано в том посте, даже предоставлена видео-инструкция): https://github.com/Extreme-Programming-Event/1-season
Напоминаю еще раз про репозиторий, который нужно форкнуть и сделать работу (это все написано в том посте, даже предоставлена видео-инструкция): https://github.com/Extreme-Programming-Event/1-season
Telegram
compilers dev
Поздравляю вас с открытием первого сезона EPE. Начать хотелось бы с чего-то не очень трудного, чтобы участники вообще могли понять суть мероприятия. Для этого был выбран язык Dragon. Он очень похож на привычные всем вам языки, однако его синтаксис довольно…
❤5
Продолжаем оценивать малоизвестные языки программирования, на очереди janet. Данный яп наверное самый популярный из тех, что упоминались ранее. Очень хороший инструмент для изучения работы компиляторов на реальном примере. Архитектура проекта напоминает lua, никакой сортировки по пакетам, основная часть находится в core/... Однако тут все же присутствует хоть какое-то вменяемое разделение, а потому и читать его в разы удобнее. В отличии от clojure тут довольно понятный naming и типичный code style. Рекомендую к ознакомлению
GitHub
GitHub - janet-lang/janet: A dynamic language and bytecode vm
A dynamic language and bytecode vm. Contribute to janet-lang/janet development by creating an account on GitHub.
❤7
Сегодня последний день сдачи проекта для EPE. Многие (даже почти все) не читали инструкцию и скинули проект мне, а не на гитхаб. Кто-то не форкал репозиторий, а сделал свой, но в любом случае баллы за это будут меньше. Результаты будут через 2-3 дня
❤10
По решению трех судей победил лисп от @jincoder. Проект больше всего соответствует теме канала, а также набрал самые высокие оценки от судей в сравнении с другими проектами. Результаты не выложил вчера, потому что разбирались с наличием гитхаба, ведь у него был репозиторий, но организованный не по инструкции. В любом случае на счет победителя было отправлено 600р, спасибо всем за участие
❤12
4 месяца назад я проводил трансляцию, где рассказал про язык программирования D. Интересный язык, который мне приглянулся своими возможностями, синтаксическими решениями, а также разнообразием компиляторов и других инструментов. Мы решили сделать группу, которая посвященная данному языку, чтобы найти сообщество людей, которым интересно создание компиляторов на D/C/C++ или другого софта под этот яп. Кому интересно заходите: @dlang_ru
Telegram
Dlang Community
https://github.com/dlangalgorithms
❤7
Самый большой список существующих языков программирования, где можно найти почти тысячу разнообразных япов с интересными идеями и реализациями: https://github.com/ChessMax/awesome-programming-languages
GitHub
GitHub - ChessMax/awesome-programming-languages: The list of awesome programming languages that you might be interested in.
The list of awesome programming languages that you might be interested in. - ChessMax/awesome-programming-languages
❤10