Текст технической направленности из области разработки и тестирования программного обеспечения на языке wenyan-lang:
Wenyan — это язык программирования. Wenyan-Lang — официальный сайт проекта. Wenyan можно использовать для создания различных программ.
Wenyan: введение
В мире императоров Яо и Шуня люди использовали верёвки для подсчёта и пальцы для вычислений. В наше время вычисления выполняют компьютеры, а программы пишут на разных языках программирования. Существует множество языков программирования, таких как Python, JavaScript, Ruby и другие. У каждого языка есть свои особенности и преимущества.
Однако существует wenyan — язык программирования, который отличается от других. Wenyan основан на грамматике классического китайского языка. Это позволяет создавать программы, которые не только выполняют задачи, но и выражают идеи и мысли. Wenyan может компилироваться в JavaScript, Python или Ruby.
Автор текста сравнивает создание программ на wenyan с созданием произведений искусства. Он говорит, что wenyan позволяет выразить идеи и чувства, которые невозможно передать другими способами. Автор также отмечает, что wenyan ещё находится в разработке, но уже сейчас он представляет собой интересный и перспективный проект.
Wenyan имеет несколько особенностей:
Для установки компилятора wenyan необходимо выполнить команду npm install -g @wenyan/cli. После этого можно попробовать запустить пример кода, например, wenyan examples/helloworld.wy -o helloworld.js.
Также существует онлайн-IDE для wenyan, где можно писать и запускать код без установки компилятора. Онлайн-IDE доступен по адресу wenyan-lang.lingdong.works/ide.html.
Кроме того, существуют плагины для популярных редакторов кода, такие как плагин для VSCode от antfu, плагин для Vim от voldikss и плагин для Sublime Text от absop. Эти плагины облегчают написание кода на wenyan в соответствующих редакторах.
Синтаксис wenyan пока не описан полностью, но его можно изучить в src/parser.js или в других источниках. Переменные
wenyan | JavaScript |
---|---|
吾有一數。曰三。名之曰「甲」。 |
var a = 3; |
有數五十。名之�энъ。 |
var dayan = 50; |
昔之「甲」者。今「大衍」是也。 |
a = dayan; |
吾有一言。曰「「噫吁戲」」。名之曰「乙」。 |
var b = "alas!"; |
吾有一爻。曰陰。名之曰「丙」。 |
var c = false; |
吾有一列。名之曰「丁」。 |
var d = []; |
吾有三數。曰一。曰三。曰五。名之曰「甲」曰「乙」曰「丙」。 |
var a=1,b=3,c=5; |
Поток управления
wenyan | JavaScript |
---|---|
若三大於二者。乃得「「想當然耳」」也。 |
if (3>2){ return "of course"; } |
若三不大於五者。乃得「「想當然耳」」。若非。乃得「「怪哉」」也。 |
if(3<=5){return "of course"}else{return "no way"} |
為是百遍。⋯⋯ 云云。 |
for (var i = 0; i < 100; i++){ ... } |
恆為是。⋯⋯ 云云。 |
while (true) { ... } |
凡「天地」中之「人」。⋯⋯ 云云。 |
for (var human of world){ ... } |
乃止。 |
break; |
Арифметические операции
wenyan | JavaScript |
---|---|
加一以二。 |
1+2 |
加一於二。 |
2+1 |
加一以二。乘其以三。 |
(1+2)*3 |
除十以三。所餘幾何。 |
10%3 |
減七百五十六以四百三十三。名之曰「甲」。 |
var a = 756-433; |
夫「甲」「乙」中有陽乎。 |
a || b |
夫「甲」「乙」中無陰乎。 |
a && b |
Массивы
wenyan | JavaScript |
---|---|
吾有一列。名之曰「甲」。充「甲」以四。以二。 |
var a = []; a.push(4, 2); |
銜「甲」以「乙」。以「丙」 |
a.concat(b).concat(c); |
夫「甲」之一。 |
a[0] |
夫「甲」之其餘。 |
a.slice(1); |
夫「玫瑰」之「「名」」。 |
rose["name"] |
夫「寶劍」之長。 |
sword.length; |
Объекты
wenyan | JavaScript |
---|---|
吾有一物。名之曰「甲」。 |
var a = {}; |
吾有一物。名之曰「甲」。其物如是。物之「「乙」」者。數曰三。物之「「丙」」者。言曰「「丁」」。是謂「甲」之物也。 |
var a = {b:3, c:"d"} |
Функции
wenyan | JavaScript |
---|---|
吾有一術。名之曰「吸星大法」。是術曰。⋯⋯是謂「吸星大法」之術也。 |
function f(){...} |
吾有一術。名之曰「六脈神劍」。欲行是術。必先得六數。曰「甲」。曰「乙」。曰「丙」。曰「丁」。曰「戊」。曰「己」乃行是術曰。⋯⋯是謂「六脈神劍」之術也。 |
function f(a,b,c,d,e,f){...} |
吾有一術。名之曰「翻倍」。欲行是術。必先得一數。曰「甲」。乃行是術曰。乘「甲」以二。名之曰「乙」。乃得「乙」。是謂「翻倍」之術也。 |
function double(a){var b = a * 2; return b;} |
施「翻倍」於「大衍」。 |
double(dayan); |
吾有一術。名之曰「甲」。欲行是術。必先得一數曰「乙」。二言。曰「丙」。曰「丁」 |
function a(float b, string c, string d) |
夫「甲」。夫「乙」。夫「丙」。取二以施「丁」。取二以施「戊」。名之曰「己」。 |
var f = e(a,d(b,c)) |
夫「甲」。夫「乙」。夫「丙」。取二以施「丁」。取二以施「戊」。取一以施「己」。夫「庚」。夫「辛」。取三以施「壬」。名之曰「癸」。 |
var j = i(f(e(a,d(b,c))),g,h) |
Импорт
wenyan | JavaScript |
---|---|
吾嘗觀「「算經」」之書。方悟「正弦」「餘弦」之義。 |
var {sin,cos} = require("math"); |
Разное
wenyan | JavaScript |
---|---|
吾有一數。曰五。書之。 |
console.log(5); |
wenyan | JavaScript |
---|---|
批曰。「「文氣淋灕。字句切實」」。 |
/*文氣淋灕。字句切實*/ |
注曰。「「文言備矣」」。 |
/*文言備矣*/ |
疏曰。「「居第一之位故稱初。以其陽爻故稱九」」。 |
/*居第一之位故稱初。以其陽爻故稱九*/ |
Название | Приоритет |
--- | --- |
Проблема преобразования иероглифов в цифры | ***** |
В преобразовании иероглифов в цифры не поддерживается многозначные числа | *** |
Если вы можете помочь нам реализовать функцию, отмеченную √, пожалуйста, смело отправляйте PR. Мы будем очень благодарны вам! Если вы хотите помочь нам с реализацией других функций, также дайте нам знать! Спасибо.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )