Митап Haskell-програмістів в «Лабораторії Касперського» (в сенсі — чекаємо)

Півтора роки тому адепти функціонального програмування заснували спільноту RuHaskell і з тих пір періодично збираються і проводять митапы. Ну як періодично — вже два рази збиралися. Ми тут, в «Лабораторії Касперського», взагалі дуже підтримуємо це починання. По-перше, тому що це цікаво, по-друге, тому що ми використовуємо Haskell в процесі розробки наших рішень, а в-третіх, тому що деякі учасники спільноти у нас працюють. А тому ми вирішили зібрати третій митап цієї спільноти на нашій території. 18 серпня всі зацікавлені можуть прийти в наш московський офіс (Ленінградське шосе, д. 39А, стор 2), послухати розумних людей, обговорити Haskell, поділитися досвідом, позадавать питання і поспілкуватися. Зрозуміло, слід попередньо зареєструватися на цій сторінці.



Поки у нас в планах чотири доповіді. Першим планує виступати Павло Філонов, наш розробник-дослідник. У березні цього року, коли відбувся реліз набору компіляторів з відкритим вихідним кодом GCC 6.1, в якій, зокрема, була додана підтримка розширення системи шаблонів С++ Concepts, Павло пильно стежив за доповідями, розборами та статтями, присвяченими цій темі. Часто авторам цих виступів задавали один і той же питання: «З++ Concepts це теж саме що і класи типів Haskell?» Але прямої відповіді на це питання Павло не почув, а тому постарався з'ясувати все сам. А оскільки він дотримується філософії «якщо хочеш в чомусь розібратися, спробуй це пояснити», то він вирішив присвятити свій виступ саме цій темі.

У процесі підготовки до доповіді Павло зрозумів, що для того, щоб відповісти на це питання, треба неабияк заглибитися в тему. В результаті йому довелося обробити величезних обсяг матеріалів (посиланнями обіцяв поділитися). Тому що якщо класи типів давно відомі і застосовуються, то концепти C++ — річ нова. І Павло планує розповісти про те, яку проблему вони вирішують, як виглядають і як з ними працювати. Ну і пояснити, нарешті, що у них спільного з класами типів і в чому їх відмінності.

Другий доповідач, Юрій Сыровецкий, теж розробник з «Лабораторії Касперського». Він якраз з тих людей, які застосовують функціональне програмування в повсякденній роботі. Юрій обіцяє розповісти навіщо ми почали наймати Haskell-програмістів і як застосовуємо цю мову для створення високопродуктивних програм. З урахуванням того, що традиційно функціональне програмування вважається не дуже затребуваним в індустрії, доповідь обіцяє бути цікавим.

Зокрема, Юрій обіцяє детально розглянути кілька інструментів, які використовуються в нашій компанії для вирішення завдань кодогенерации. Зокрема, бібліотеки language-з і Ivory. Він порівняє їх і покаже сильні і слабкі сторони кожного з цих інструментів. Тут особливо цікавий другий інструмент, бо по ньому доступно не так багато документації. Ivory створили в Galois Inc. і не застосовують за її межами практично ніде крім як у нас. Може бути саме тому, що мало хто за межами Galois розуміє як вона працює. Ось Юрій і вирішив поділитися досвідом, розповісти, про що він і його колеги дізналися на практиці. Обіцяє навести приклади коду, в тому числі і досить складні.

Третій доповідач, Олексій Пирогов, обіцяє розглянути у своєму виступі інша мова функціонального програмування — Elm. Причому розглянути його як явище. Олексій захоплений цією мовою і його екосистемою. Адже автор випустив не тільки компілятор, але і пакетний менеджер, і систему складання, тобто створив повну екосистему. До того ж компілятор вміє видавати розгорнені і докладні, але при цьому лаконічні повідомлення. В результаті навіть людина не знайомий з мовою може дуже швидко і комфортно його освоїти. Іншими словами, Олексій вважає Elm відмінним прикладом того, як зараз потрібно робити мову програмування як продукт: щоб він привертав аудиторію, але при цьому щоб люди не йшли, набивши першу шишку.

Останній доповідач — Микола Кудасов, технічний директор GetShopTV (де, до речі, вся серверна частина реалізована саме на Haskell). Його виступ розрахований, в основному, на новачків, які хотіли б познайомитися з мовою Haskell (який він, знову ж таки до речі, викладає на факультеті ВМК МГУ). Микола завжди вважав, що найкращий спосіб вивчити будь-яку мову програмування — написання простенької іграшки. Тому він, на прикладі розробки нескладної багатокористувацької онлайн-ігри з нуля, вирішив пояснити, як правильно організувати проект на Haskell, розбити завдання на серверну клієнтську і логічну частину, як використовуються веб-сокети і так далі. Микола також обіцяє познайомити слухачів з організацією проекту за допомогою Stack і Cabal, і з бібліотеками gloss, servant, binary, stm.

Для тих, хто не зможе потрапити на захід, ми плануємо вести онлайн-трансляцію на нашому каналі Youtube. Ще раз — зареєструватися на захід можна націй сторінці.
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.