JetBrains MPS – свободная система метапрограммирования, разработанная компанией JetBrains. Она реализует парадигму языково-ориентированного программирования, является средой разработки языков и в то же время интегрированной средой разработки для разрабатываемых языков.
JetBrains MPS позволяет разрабатывать новые языки программирования и языковые расширения существующих языков.
Применение языков, специфичных для конкретной предметной области, может упростить работу разработчиков, использующих языки общего назначения. К примеру, программист, использующий язык Java для разработки финансового программного обеспечения, мог бы использовать языковое расширение, позволяющее в исходном коде программы работать с денежными величинами. Однако, традиционное текстовое представление программы не способствует применению подобных расширений из-за возможной грамматической неопределённости, вызванной конфликтом расширений – одна и та же текстовая нотация может иметь разную семантику для разных расширений.
В JetBrains MPS грамматическая двойственность решена работой непосредственно с абстрактным синтаксическим деревом, которое редактируется проекционным редактором в текстовой манере.
Ключевые возможности JetBrains MPS
автодополнение кода, рефакторинги, поиск использований, анализ зависимостей, расширение интерфейса IDE из пользовательского языка.
Встроенные языки в JetBrains MPS
Base Language – внутренняя реализация Java, взятой за базовый язык, на основе которого реализовано множество расширений, включённых в JetBrains MPS:
Языки описания языков:
Ссылки