Как стать автором
Обновить
21.53
Рейтинг

Lua *

Скриптовый язык программирования

Сначала показывать
Порог рейтинга

Хранение графов в Tarantool: реальность или миф

Блог компании VK Lua *Tarantool *


Меня зовут Александр Горякин, и я работаю в отделе разработки систем для внешних заказчиков Tarantool. Очень часто мы сталкиваемся с весьма нетривиальными задачами, например с хранением графов. Расскажу об этом на примере создания системы по борьбе с мошенническими действиями для одного из заказчиков, очень крупного банка.
Читать дальше →
Всего голосов 48: ↑46 и ↓2 +44
Просмотры 2.2K
Комментарии 8

Новости

CRUD 0.11.0 для Tarantool

Блог компании VK Open source *NoSQL *Lua *Tarantool *

Неделю назад вышла новая версия модуля CRUD для Tarantool. В 0.11.0 появилось множество нововведений, просьбы о которых поступали от наших пользователей. Что изменилось, как этим пользоваться и кому это может быть полезно? Расскажем обо всём.

Tarantool — это платформа in-memory вычислений с гибкой схемой данных, функциональность которой расширяется с помощью модулей. Одними из самых популярных являются vshard, предназначенный для распределённого хранения данных, и cartridge, который организует работу с кластером Tarantool. CRUD также можно считать членом этого семейства: он предназначен для написания запросов при работе с распределёнными данными. Мы в Tarantool активно используем его при разработке готовых решений и нередко упоминаем в статьях (например, здесь и здесь).

Читать далее
Всего голосов 41: ↑41 и ↓0 +41
Просмотры 1.3K
Комментарии 1

Библиотека скриптовых функций для парсера Телеграмм Микротик РоутерОС

Программирование *Lua *
Недавно мы сообщали о создании нами универсального скрипта уведомлений и исполнения команд через Телеграмм для РоутерОС Микротик TLGRM.

Благодаря небольшим доработкам в парсинге кода скрипт TLGRM может теперь не только выполнять функции с параметрами и прямые команды ROS, но также исполнять скрипты, передавая им параметры напрямую.

Вторая доработка коснулась адресации команд. Доработанная версия TLGRM теперь поддерживает как адресную (конкретному роутеру или всем, но с ключом /forall), так и широковещательную рассылку команд без указания адресата (сразу всем, «слушающим» чат).

Третьим новшеством, является создание нами специально для работы с TLGRM, библиотеки скриптовых функций, названной «SATELLITE» («Спутник»), о которой пойдет речь далее.
Читать дальше →
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 7.9K
Комментарии 5

Минимальная реализация Lua на Rust

Блог компании RUVDS.com Программирование *Lua *Rust *
Перевод
После того, как вы освоите это руководство, в вашем распоряжении окажется минимальная реализация Lua (парсер, компилятор, виртуальная машина), написанная на Rust с чистого листа. Этот проект получил название Lust, его код можно найти на GitHub.

Читать дальше →
Всего голосов 37: ↑35 и ↓2 +33
Просмотры 6K
Комментарии 11

Lua для паттернов проектирования: проверяем на лампочках

Блог компании Luxoft Программирование *C++ *Проектирование и рефакторинг *Lua *

Как скрипты могут помочь при взаимодействии компонентов, типичных для IoT? С помощью языка Lua. Наш ведущий разработчик Леонид Садофьев рассказывает и показывает на примере своего демоприложения про использование Lua на проектах уровня бизнес-логики (BL). Его приложение разработано на С++ и применяется для умного дома, но может подойти и для приложений других типов. Всё важное под катом — передаём слово автору.

Читать далее
Рейтинг 0
Просмотры 1.6K
Комментарии 3

Скрипт уведомлений и исполнения команд через Телеграмм для РоутерОС Микротик

Программирование *Lua *
Мессенджер Телеграмм полагаю представлять не нужно. В сравнении с другими существующими мессенджерами, Телеграмм выгодно отличается тем, что позволяет создавать боты, которые могут участвовать в чатах. Это удобно во многих случаях, в том числе для разработчиков программного обеспечения и продвинутых пользователей.

Применительно к работе с роутерами Микротик, Телеграмм удобен тем, что в чат-бот можно организовать пересылку сообщения от роутера, а пользуясь возможностями парсинга чата через API Telegram, пересылать исполняемые команды.

Как создать свой бот, чат и «прикрутить» к ним Микротик можно прочитать например здесь или здесь.

За время появления Телеграмм был создан далеко не один скрипт по уведомлению о событиях роутера Микротик, в том числе как зарубежными так и отечественными пользователями энтузиастами. Например, здесь или в этой теме на русскоязычном форуме Микротик.

Мы объединили накопленные за это время идеи и код в единый скрипт под названием TLGRM, который хотим представить здесь.
Читать дальше →
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 5.6K
Комментарии 6

Модуль ACME-клиента для Tarantool

Информационная безопасность *Lua *Tarantool *
Tutorial

Ссылка на GitHub. Подробнее о работе алгоритма и модуля можно посмотреть здесь.

Клиент ACME-протокола используется для автоматического получения сертификата безопасности для вашего сайта. Для бесплатного получения сертификата и автоматического его продления в основном все используют Let's Encrypt. Но и есть другие сервисы, например Zero SSL. Он тоже поддерживает ACME-протокол.

Я опирался на две статьи с Хабра (эту и эту), а также RFC8555. Но информации в них оказазалось недостаточно, для того, чтобы реализовать собственный вариант модуля. Примерно половину нужной информации потребовалось дополнительно извлечь из нескольких реализаций данного модуля на других языках. Тесты проводил на живом сервисе, поэтому автотестов пока нет. Можете написать и сделать пулл реквест.

Модуль написан под Linux. В статье подробно разобран алгоритм работы - при необходимости Вы можете дописать его под другую ОС. Рассматривается только вторая версия протокола.

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 904
Комментарии 7

Функции в скриптах Роутер ОС Микротик. Интересные решения и недокументированные возможности

Программирование *Lua *
Роутер ОС Микротик, как известно, имеет мощнейший LUA-подобный встроенный скриптовый язык, позволяющий осуществлять исполнение сценариев, в том числе при наступлении каких-либо событий в сети или по расписанию. Скрипты могут состоять из одной строки кода или иметь внушительные размеры, при передаче управления друг другу формируя сложные программы. Встроенный скриптовый язык существенно расширяет возможности системы, практически не ограничивая полет фантазии программиста. Существующее официальное руководство по скриптам написано кратко и, разумеется, не может охватить все особенности программирования для Роутер ОС.

В этой статье, не претендующей на полное руководство к разделу, мы рассмотрим одну из интересных и важных рубрик «скриптинга», а именно — функции.

Перед прочтением статьи, пользователям, начинающим изучать скрипты, рекомендую ознакомиться с официальным руководством Микротик по скриптам по ссылке выше, либо с его переводом (например, здесь). Следует знать типы переменных в скриптах Микротик, иметь понятие об областях видимости, окружении переменных и т.д… Также будет весьма полезна статья habr.com/ru/post/270719, в которой автор подробно разбирает типы переменных LUA Микротик и варианты их объявления и использования.
Читать дальше →
Всего голосов 16: ↑16 и ↓0 +16
Просмотры 10K
Комментарии 0

Лекция 1. Flappy Bird. — CS50`s Introduction to Game Development с русскими субтитрами

Программирование *Разработка игр *Lua *Дизайн игр *
Перевод

Привет! Перевод второй лекции готов. Приятного просмотра)

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 2K
Комментарии 0

Xeus-lua — интерактивные виджеты Lua в Jupyter Notebook

Блог компании SkillFactory Python *Программирование *C++ *Lua *
Перевод

Торстен Бейер — программист из QuantStack, в Open Source он работал над nifty и vigra на C++, а также над inferno, kipoi и ilastik — на Python. Делимся материалом о новом ядре Lua от Торстена Бейера из блога разработчиков Jupyter, пока у нас начинается флагманский курс Data Science.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 1.9K
Комментарии 0

Сборка Linux и CPSS на отладке Marvell RD-AC3X-48G4X2XL-A с Ethernet-коммутатором Prestera DX

Open source *Сетевые технологии *Lua *Разработка под Linux *Производство и разработка электроники *
Tutorial

Мы подготовили статью-гайд для пошаговой сборки и запуска базовой прошивки с CPSS на отладочной плате Marvell RD-AC3X-48G4X2XL-A. Эта плата предназначена для проектирования и отладки управляемых коммутаторов до 48 портов. Чем она примечательна для инженера-разработчика? У нее на борту установлен коммутатор Marvell Prestera DX 98DX3257 с мощной СнК семейства Prestera. А Ethernet-коммутаторы Prestera DX позволяют реализовать 5G при самой низкой в отрасли мощности и занимаемой площади. 

А что касается CPSS, то это базовый программный уровень для железа Marvell Prestera или, другими словами, Core Prestera Software Suite. CPSS используется в проекте Open Compute Project как часть открытой операционной системы SONiC. Эта операционка расширяет функции центра обработки данных в сложных системах, например, в системах интеллектуального хранения данных и машинного обучения.

Читать далее
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 2.6K
Комментарии 3

Изучаем МойОфис: как использовать макросы в редакторах документов и электронных таблиц

Блог компании МойОфис Lua *Управление продуктом *Софт IT-компании

Привет, Хабр! Недавно в нашем корпоративном блоге мы рассказали о выходе новой версии МойОфис 2021.02, в которой появились удобные инструменты для работы с формулами и математическими выражениями, а также со сводными таблицами.

Помимо этого, в состав релиза 2021.02 вошел программный отладчик макрокоманд. Он проверяет исполнение кода и помогает обнаружить ошибки синтаксиса. Сегодня мы продемонстрируем возможности работы с макросами в документах на примере текстового редактора «МойОфис Текст», а заодно коснемся темы создания надстроек, которые позволят расширить функциональные возможности редактора.

Читать далее
Всего голосов 18: ↑18 и ↓0 +18
Просмотры 6.4K
Комментарии 7

CS50`s Introduction to Game Development с русскими субтитрами — Лекция 0. Pong

Разработка игр *Lua *Дизайн игр *
Перевод

Посмотрела все лекции гарвардского курса по разработке игр и так вдохновилась, что захотела перевести их на русский. Изначально хотела просто добавить субтитры к оригинальному видео, но, к сожалению, на Youtube эту функцию убрали, поэтому пришлось загружать заново.

Читать далее
Всего голосов 10: ↑10 и ↓0 +10
Просмотры 4.5K
Комментарии 0

Управляем кластером на Tarantool из командной строки

Блог компании VK Высокая производительность *Администрирование баз данных *Lua *Tarantool *
Tutorial


Два года назад мы уже рассказывали вам, что такое Cartridge и как с его помощью разрабатывать распределенные приложения. Это полноценный фреймворк, в который входит CLI-интерфейс, который сильно упрощает разработку и эксплуатацию приложений на Tarantool Cartridge.

Я расскажу вам, как можно использовать Cartridge CLI для эффективного использования ваших локальных приложений, и об интересных фичах самого CLI. Статья больше ориентирована на тех, кто уже использует Cartridge или хочет начать им пользоваться. Поехали!
Читать дальше →
Всего голосов 32: ↑28 и ↓4 +24
Просмотры 2.3K
Комментарии 10

Что не так с Asterisk Realtime и как с этим жить

API *Asterisk *Lua *Tarantool *

Не так давно я опубликовал пост, в комментариях к которому было высказано мнение, что у астериска есть некоторые проблемы с механизмом realtime. Так вот, на данный момент, вынужден согласиться с этим утверждением, более чем полностью. Как следствие, встал на путь разочарования asterisk'ом как платформой-"конструктором". Почему и как это произошло и при чём тут tarantool, а самое главное, что со всем этим можно сделать? Давайте разбираться под катом.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 4.4K
Комментарии 13

Вклад авторов