XMonad
Динамически мозаичный оконный менеджер X11, написанный и настроенный на Haskell
▫️Очень стабильный, быстрый, маленький и простой.
▫️Автоматическое размещение окон и управление ими
▫️Первоклассная поддержка клавиатуры: мышь не нужна
▫️Полная поддержка мозаичного размещения окон на многоэкранных дисплеях.
▫️Полная поддержка плавающих окон, вкладок и декорированных окон.
▫️Полная поддержка утилит GNOME и KDE.
▫️Поддержка XRandR для поворота, добавления или удаления мониторов
▫️Алгоритмы компоновки для каждого рабочего пространства
▫️Пользовательские строки состояния для каждого экрана
▫️Поддержка композитинга
▫️Мощная, стабильная настройка и реконфигурация на лету
GitHub: https://github.com/xmonad/xmonad
Динамически мозаичный оконный менеджер X11, написанный и настроенный на Haskell
▫️Очень стабильный, быстрый, маленький и простой.
▫️Автоматическое размещение окон и управление ими
▫️Первоклассная поддержка клавиатуры: мышь не нужна
▫️Полная поддержка мозаичного размещения окон на многоэкранных дисплеях.
▫️Полная поддержка плавающих окон, вкладок и декорированных окон.
▫️Полная поддержка утилит GNOME и KDE.
▫️Поддержка XRandR для поворота, добавления или удаления мониторов
▫️Алгоритмы компоновки для каждого рабочего пространства
▫️Пользовательские строки состояния для каждого экрана
▫️Поддержка композитинга
▫️Мощная, стабильная настройка и реконфигурация на лету
GitHub: https://github.com/xmonad/xmonad
Разработчик и автор корпоративного code со-pilot Toqan и FinBERT pfgecnbk запустил публичный Leaderbord бенчмарка ProLLM, в котором языковые модели открытого и закрытого типа тестируются на выполнения различных задач в области программирования:
Помимо узкоспециализированных тестов, бенчмарк выполняет несколько общих тестов: Q&A Assistant, Summarization и LLM as a Judge.
На сегодняшний день возможность самостоятельного тестирования моделей этим бенчмарком не реализована, но разработчики открыты для диалога в вопросе корпоративного применения своей системы оценки, с ними можно связаться через форму на сайте.
Toqan ProLLM Leaderboard
#AI #LLM #ML #Benchmark
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 Rainbow Brackets — плагин для IDE, основанных на IntelliJ IDEA, который раскрашивает любые скобки
Поддерживаемые языки: Java, Scala, Clojure, Kotlin, Python, Haskell, Agda, Rust, JavaScript, TypeScript, Erlang, Go, Groovy, Ruby, Elixir, ObjectiveC, PHP, C#, HTML, XML, SQL, Apex language.
Поддерживаемые языки: Java, Scala, Clojure, Kotlin, Python, Haskell, Agda, Rust, JavaScript, TypeScript, Erlang, Go, Groovy, Ruby, Elixir, ObjectiveC, PHP, C#, HTML, XML, SQL, Apex language.
Книга создана с помощью практичного Markdown, блистательного Materialize, впечатляющего Hakyll, элегантного Clay, гибкого BlazeHtml и мощного pandoc.
И разумеется, всё это связано воедино силою Haskell. Книга написана при поддержке русскоязычного сообщества Haskell-разработчиков.
Haskel
Please open Telegram to view this post
VIEW IN TELEGRAM
📕 Effective Haskell: Solving Real-World Problems with Strongly Typed Functional Programming
Автор: Rebecca Skinner (2023)
Используйте мощь языка Haskell в своих программах. Используйте такие мощные возможности, как преобразования монад и семейства типов, для создания полезных приложений.
Реализуйте преимущества чисто функционального языка, например, защитите свой код от побочных эффектов.
Безбоязненно управляйте параллельными процессами. Применяйте функциональные методы для работы с базами данных и построения RESTful-сервисов.
Книга поможет не увязнуть в теории, а научиться применять передовые концепции программирования для решения реальных задач.
📌 Книга
@haskell_tg - книги, курсы, гайды и уроки
Автор: Rebecca Skinner (2023)
Используйте мощь языка Haskell в своих программах. Используйте такие мощные возможности, как преобразования монад и семейства типов, для создания полезных приложений.
Реализуйте преимущества чисто функционального языка, например, защитите свой код от побочных эффектов.
Безбоязненно управляйте параллельными процессами. Применяйте функциональные методы для работы с базами данных и построения RESTful-сервисов.
Книга поможет не увязнуть в теории, а научиться применять передовые концепции программирования для решения реальных задач.
📌 Книга
@haskell_tg - книги, курсы, гайды и уроки
Авторы: Paul Hudak, Donya Quick
📕 Книга
@haskell_tg - книги, курсы, гайды и уроки
Please open Telegram to view this post
VIEW IN TELEGRAM
Haskell Еженедельный новостной дайджест
Haskell 449 http://haskellweekly.news/issue/449.html
@haskell_tg
Haskell 449 http://haskellweekly.news/issue/449.html
@haskell_tg
Библиотека предоставляет удобный API для запуска Docker-контейнеров и позволяет разработчикам программно определять контейнеры, которые следует запускать как часть теста, и очищать эти ресурсы после завершения теста. На текущий момент поддерживается в Haskell, Java, Go, .NET, Python, Node.js, Rust.
https://www.testcontainers.org/
@haskell_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
Этот ресурс создан, чтобы предложить вам тестовые задания для изучения Haskell на пркатике.
⚡️ Программа обучения полностью открыта и доступна бесплатно для всех.
Всего заданий пять, и они достаточно объёмные.
🕘 Даже при интенсивном темпе прохождения курса потребуется примерно 5 месяцев.
Задания нацелены на систематическое освоение основ и принципов Haskell разработки.
Одной из самых грубых ошибок при обучении является стремление сразу погрузиться в сложные практические задачи и начать осваивать множество высокоуровневых технологий (таких как веб-фреймворки), требующих значительного времени на изучение документации. Но без прочного фундамента лучше не углубляться в подобные темы 😊
Поэтому вы начнете с основ: изучение самого языка, ключевых шаблонов проектирования и архитектурных принципов. После этого перейдете к самым простым технологиям ( веб-серверам, примитивным обёрткам для работы с базами данных и т.п.).
Завершающим этапом становится масштабная переработка кода на основе множества различных источников и анализ ваших GitHub-репозиториев с созданием issue-заданий.
🌟 Кроме того, авторы поддерживают подход, согласно которому новичкам не следует сразу включаться в реальные проекты до тех пор, пока они не выполнят несколько своих собственных проектов размером хотя бы на 2–3 тысячи строк кода.
Погружаясь слишком рано в реальный проект, существует высокий риск потеряться в сложном и незнакомом коде, утратить мотивацию, а самое важное — приобрести фрагментарный и бессистемный опыт, поскольку задачи будут крайне специфическими, а процесс обучения — неравномерным.
В результате, даже если стажёр сохранит свою мотивацию, его знания окажутся менее глубокими, чем у коллеги, который начал с нуля и последовательно выполнил несколько самостоятельных проектов.
Эта стажировка должна стать отличным опытом для вас!
@haskell_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 Часто задаваемые вопросы по работе с Haskell
https://www.haskellforall.com/2024/11/the-haskell-inlining-and-specialization.html
Haskel
https://www.haskellforall.com/2024/11/the-haskell-inlining-and-specialization.html
Haskel
Haskellforall
The Haskell inlining and specialization FAQ
The Haskell inlining and specialization FAQ This is a post is an FAQ answering the most common questions peo...
Добро пожаловать в мир функционального программирования, строгой типизации, чистых функций, ленивых вычислений и классов типов.
Всё это вы найдёте в замечательном языке программирования Haskell.
Если вы просто где-то слышали о Haskell, и пока это описание ни о чём не говорит, ничего, об этом и о многом другом вы узнаете со страниц этой книги.
Haskell был основан на исходе восьмидесятых, как общий язык для программистов, интересующихся функциональным программированием и ленивой стратегией вычислений.
Это свободный язык, он разрабатывается комитетом разработчиков, программистов, математиков, информатиков, и просто увлечённых программированием людей. Основной компилятор языка GHC разрабатывается в Microsoft Research, но несмотря на это легко доступен в интернет. Вы можете установить его через Haskell Platform (для начинающих) или напрямую с сайта GHC (для гиков и любителей квестов). Ещё нам понадобится редактор с подсветкой синтаксиса Haskell.
Подойдёт простой gedit или более тяжёлые vim и Emacs. Есть и IDE для Haskell. Это Leksah, но пока ещё она совсем юная.
Итак, устанавливаем компилятор GHC подбираем редактор по вкусу и в добрый путь!
📚 Учебник
@haskell_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
Они "одинаковые"? кто решит тот лучший 💪
Для двух массивов
Examples:
Допустимые массивы
Некорректные массивы
Если, например, мы изменим первое число на что-то другое,
Примечания
#6kyu
🔗 Перейти к задаче
@haskell_tg
Для двух массивов
a
и b
напишите функцию comp(a, b)
(или compSame(a, b)
), которая проверяет, есть ли в этих массивах "одинаковые" элементы с одинаковой кратностью (кратность члена - это количество раз, которое он встречается). В данном случае "одинаковые" означает, что элементы в b
- это элементы в квадрате a
, независимо от порядка.Examples:
Допустимые массивы
a = [121, 144, 19, 161, 19, 144, 19, 11] b = [121, 14641, 20736, 361, 25921, 361, 20736, 361]
comp(a, b)
возвращает true, потому что в b
121 - квадрат 11, 14641 - квадрат 121, 20736 - квадрат 144, 361 - квадрат 19, 25921 - квадрат 161, и так далее. Это становится очевидным, если записать элементы b
в терминах квадратов:
a = [121, 144, 19, 161, 19, 144, 19, 11]
b = [11*11, 121*121, 144*144, 19*19, 161*161, 19*19, 144*144, 19*19]
Некорректные массивы
Если, например, мы изменим первое число на что-то другое,
comp
больше не будет возвращать true:
a = [121, 144, 19, 161, 19, 144, 19, 11]
b = [132, 14641, 20736, 361, 25921, 361, 20736, 361]
comp(a,b)
возвращает false, потому что в b
132 не является квадратом какого-либо числа из a
.
a = [121, 144, 19, 161, 19, 144, 19, 11]
b = [121, 14641, 20736, 36100, 25921, 361, 20736, 361]
comp(a,b)
возвращает false, потому что в b
36100 не является квадратом какого-либо числа из a
.Примечания
🟡a
или b
могут быть []
или {}
(все языки, кроме R, Shell).
🟡a
или b
могут быть nil
или null
или None
или nothing
(кроме C++, COBOL, Crystal, D, Dart, Elixir, Fortran, F#, Haskell, Nim, OCaml, Pascal, Perl, PowerShell, Prolog, PureScript, R, Racket, Rust, Shell, Swift). 🟡
Если a
или b
равны nil
(или null
, или None
, в зависимости от языка), проблема не имеет смысла, поэтому возвращается false.#6kyu
🔗 Перейти к задаче
@haskell_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️ PostgREST создает полноценное RESTful API на основе любой существующей базы данных PostgreSQL.
**Производительность:**
Скорость работы обеспечивается за счет трех факторов. Во-первых, сервер написан на Haskell с использованием HTTP Warp (это компилируемый язык с легковесными потоками). Во-вторых, он передает максимальное количество вычислений базе данных, включая:
- Сериализацию ответов JSON прямо в SQL,
- Валидацию данных,
- Механизмы авторизации,
- Комбинированный подсчет строк и фильтрацию,
- Возврат всех данных одной командой (*).
И наконец, PostgREST эффективно взаимодействует с базой данных через библиотеку Hasql:
- Поддерживает пул соединений с базой данных,
- Использует бинарный протокол PostgreSQL,
- Работает без сохранения состояния, что позволяет легко масштабироваться горизонтально.
▪ Github
@haskell_tg
**Производительность:**
Скорость работы обеспечивается за счет трех факторов. Во-первых, сервер написан на Haskell с использованием HTTP Warp (это компилируемый язык с легковесными потоками). Во-вторых, он передает максимальное количество вычислений базе данных, включая:
- Сериализацию ответов JSON прямо в SQL,
- Валидацию данных,
- Механизмы авторизации,
- Комбинированный подсчет строк и фильтрацию,
- Возврат всех данных одной командой (*).
И наконец, PostgREST эффективно взаимодействует с базой данных через библиотеку Hasql:
- Поддерживает пул соединений с базой данных,
- Использует бинарный протокол PostgreSQL,
- Работает без сохранения состояния, что позволяет легко масштабироваться горизонтально.
▪ Github
@haskell_tg
Media is too big
VIEW IN TELEGRAM
🚀 Виталий Брагилевский: интервью с автором Haskell in Depth
https://www.youtube.com/watch?v=F4hXp0-vgPY&pp=ygUGaGFza2Vs
Haskel
https://www.youtube.com/watch?v=F4hXp0-vgPY&pp=ygUGaGFza2Vs
Haskel
Программируй_на_Haskell_2019_Уилл_Курт.pdf
18.1 MB
Программируй на Haskell [2019] Уилл Курт
Языки программирования зачастую отличаются лишь отдельными элементами - несколько ключевых слов, библиотек или платформенных решений. Haskell формирует абсолютно новую точку зрения. По мнению пионера программного обеспечения Алана Кэя, смена перспективы может дать 80 баллов IQ, и разработчики на Haskell соглашаются с исключительными преимуществами мышления в стиле Haskell: функционального мышления с ориентацией на типобезопасность, математическую определённость и многое другое. В этой практической книге вы будете учиться именно этому. «Программируй на Haskell» проведёт вас через короткие уроки, примеры и упражнения, разработанные так, чтобы вы смогли прочувствовать Haskell. В ней вы найдёте кристально ясные иллюстрации и легко сможете практиковаться под её руководством. Вы будете писать и тестировать дюжины интересных программ, а также погрузитесь в различные модули и библиотеки.
Haskell - книги, курсы, гайды и уроки
Языки программирования зачастую отличаются лишь отдельными элементами - несколько ключевых слов, библиотек или платформенных решений. Haskell формирует абсолютно новую точку зрения. По мнению пионера программного обеспечения Алана Кэя, смена перспективы может дать 80 баллов IQ, и разработчики на Haskell соглашаются с исключительными преимуществами мышления в стиле Haskell: функционального мышления с ориентацией на типобезопасность, математическую определённость и многое другое. В этой практической книге вы будете учиться именно этому. «Программируй на Haskell» проведёт вас через короткие уроки, примеры и упражнения, разработанные так, чтобы вы смогли прочувствовать Haskell. В ней вы найдёте кристально ясные иллюстрации и легко сможете практиковаться под её руководством. Вы будете писать и тестировать дюжины интересных программ, а также погрузитесь в различные модули и библиотеки.
Haskell - книги, курсы, гайды и уроки
Haskell
Please open Telegram to view this post
VIEW IN TELEGRAM
@haskell_tg
Please open Telegram to view this post
VIEW IN TELEGRAM