Pull to refresh

JavaScript по-русски — pycckuu.js

Reading time2 min
Views76K


Вы никогда не задумывались, как выглядит код на JavaScript для программиста, у которого родной язык — английский? Представьте, насколько удобнее им читать и писать код на своем «нативном» языке, насколько ускоряется время разработки и уменьшается количество багов. А ведь использование английского языка как основы для языков программирования не обусловлено ничем, кроме того, что «так исторически сложилось».

Почему мы не называем переменные на русском языке? Ведь для этого нет никакой технической необходимости: поддержка юникода сейчас есть практически в любой среде разработки и в большинстве популярных языков. Наверняка если ваша команда находится в России, то большая часть ваших разработчиков знают русский язык лучше английского!

Это основные доводы, которыми руководствовались мы, решив написать свой, русский язык программирования.
С другой стороны, давайте посмотрим правде в глаза: зачем изобретать очередной велосипед? Навряд ли язык, созданный небольшой группой энтузиастов, когда-нибудь сможет составить конкуренцию таким монстрам, как JavaScript или Python. После недолгих обсуждений, утихомирив наш пыл, мы решили начать с малого и написать транспиллер в JavaScript.
Так и родился наш проект — PycckuuJS.
Первое, с чего мы решили начать, — это loader для Webpack, с которым вы можете ознакомиться в репозитории на GitHub.
Процесс его установки и использования максимально прост и удобен. Достаточно установить npm-пакет и добавить pycckuu-loader в ваш webpack.config.js для файлов с расширением.яс.

Вот пример минимального конфигурационного файла:

module.exports = {
    entry: "./тест.яс",
    output: {
        path: __dirname,
        filename: "result.js"
    },
    module: {
        loaders: [
            { test: /\.яс$/, loader: "pycckuu" }
        ]
    }
};


Это позволит использовать русские ключевые слова в JavaScript.

Например, такой код:

пер сотрудники = ['Владимир', 'Дмитрий', 'Николай']

пер приветствовать = функция(имя){
    консоль.логировать('Привет ' + имя + '!')
}

цикл(пер и=0; и<сотрудники.длина; и++){
    приветствовать(сотрудники[и])
}


Будет транслирован в:

var сотрудники = ['Владимир', 'Дмитрий', 'Николай']

var приветствовать = function(имя){
    console.log('Привет ' + имя + '!')
}

for(var и=0; и<сотрудники.length; и++){
    приветствовать(сотрудники[и])
}


С полным списком соответствий можете ознакомится в репозитории на GitHub.
На данный момент loader находится в состоянии MVP (Minimum viable product), так что будем рады вашим pull-реквестам, советам и критике.
На ближайшее будущее запланировано доведение pycckuu-loader до стабильного состояния и создание плагинов для подсветки кода в популярных средах разработки.

UPD Товарищи ставящие минусы, ну имейте хоть капельку чувства юмора.
Tags:
Hubs:
Total votes 190: ↑130 and ↓60+70
Comments168

Articles