Автор Гілка: Мавка та Ціль — українські мови програмування  (Прочитано 174 раз)

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3967
  • Карма: +19/-0
  • Програміст
Ціль — це українська мова програмування подібна на Сі. Мавка — це українська скриптова мова програмування.

Домашні сторінки: https://мавка.укр/ та https://ціль.укр/
[Fedora Linux]

Відсутній kostiantyn.hermash

  • Новачок
  • *
  • дописів: 35
  • Карма: +1/-0
Здається сьогодні не перше квітня.

typedef size_t природне;
Природне --- це натуральне число? Воно включає нуль?

Мені більше подобається замість цього змінна а: ціле = 10; писати так:

ціле а = 10;, дійсне а = 10.5;, комплексне а = 10 + i*15;, символ а = 'б';. Як в Сі.

ціле а = 123;
ціле* б = &а;

Чому замість функцій дії, тобто процедури? Чому вони повертають значення направо?

дія сума(а: ціле, б: ціле) -> ціле {
  вернути а + б;
}

Це якби математики писали f(x) -> y, замість y = f(x), це нелогічно.

Тоді нехай будуть і функції (які повертають значення наліво), і дії (процедури, які не повертають значення).

Мені не подобаються ці скорочення: ц32,ц64,і т.д. Краще повністю писати: ціле32, ціле64.
« Змінено: Вчора о 22:35:09 від kostiantyn.hermash »

Відсутній ps

  • Новачок
  • *
  • дописів: 30
  • Карма: +0/-0
Re: Мавка та Ціль — українські мови програмування
« Відповідей #2 : Сьогодні о 09:24:38 »
Чомусь згадався колишній 1С з його кирилицею. Тепер вже не так смішно.

Стосовно зручності, то це тільки в мене на українській розкладці знак ";" на "shift+4"?)
« Змінено: Сьогодні о 09:31:57 від ps »

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 223
  • Карма: +7/-0
Re: Мавка та Ціль — українські мови програмування
« Відповідей #3 : Сьогодні о 12:42:32 »
якщо поза необхідністю локалізувати саме код, думаю то зарано по ряду причин і може бути контрпродуктивно, але як розробка чогось - то ok

Тобто тільки відносно зліва-направо, синтаксису, etc:
Цитата
Мені більше подобається замість цього змінна а: ціле = 10; писати так: ціле а = 10; Як в Сі.
У кожного свій смак, тобто де саме 'тип' записати зліва-справа-до-чи-після-etc. - в сі по одному, в паскалі наприклад навпаки (і таку форму аля паскалевську в багатьох мовах використовують).

Цитата
Чому замість функцій дії, тобто процедури?
дія сума(а: ціле, б: ціле) -> ціле {
  вернути а + б;
}
теж саме про смаки - саме така форма також зустрічається в інших мовах програмування,
відносно чому не "функція/function" а "дія" - напевно щоб отримати більш стислий запис, по такій самій причині зачасту використовують скорочення "fn" чи "func" замість "function", тому думаю "дія" вийшло і стисло і вдало бо повне слово.

Цитата
Чому вони повертають значення направо? ... це нелогічно
десь було що опис функції нп з function returns integer, абож функція повертає ціле - читається більш природно/логічно
у порівнянні з integer is returned by function -чи- integer function

Цитата
Мені не подобаються ці скорочення: ц32,ц64,і т.д. Краще повністю писати: ціле32, ціле64.
все теж саме, i32 i64 чи int32 int64, проти integer32 та integer64 (хоча тут можна було залишити 'ціле' бо само слово коротке)
« Змінено: Сьогодні о 13:25:16 від yvs115 »

Відсутній ps

  • Новачок
  • *
  • дописів: 30
  • Карма: +0/-0
Re: Мавка та Ціль — українські мови програмування
« Відповідей #4 : Сьогодні о 14:25:00 »
Цитата
змінна а: ціле = 10;

ну видно з раста потягли, тут (як і там) дійсно варіант "ціле а = 10;" сприймається набагато легше.
от воно як з shift+4 зайвий рух, зайва двокрапка і тд. ще й навиворіт.

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 223
  • Карма: +7/-0
Re: Мавка та Ціль — українські мови програмування
« Відповідей #5 : Сьогодні о 15:21:35 »
Цитата
Цитата
змінна а: ціле = 10;
ну видно з раста потягли
якщо знати тільки раст - то все ржавим буде здаватись)

Як до нього було достатньо мов зі схожею нотацією (для мене це паскаль стайл) так і після нього.

Відсутній ps

  • Новачок
  • *
  • дописів: 30
  • Карма: +0/-0
Re: Мавка та Ціль — українські мови програмування
« Відповідей #6 : Сьогодні о 15:42:03 »
Цитата
якщо знати тільки раст - то все ржавим буде здаватись)
так раст це наче не про оксиди а про якісь там гриби, що явно на тякає на його упоротість синтаксису

але посил зрозумілий: я й дійсно мало мов знаю: писав років 10-15 на php і суміжних з ним, поки не "зіржавів".

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 223
  • Карма: +7/-0
Re: Мавка та Ціль — українські мови програмування
« Відповідей #7 : Сьогодні о 16:46:42 »
Цитата
так раст це наче ...
Якщо брати як колір то напевно з файрфокс логоіконки зайшов, але які саме асоціації були у автора мови коли він обрав назву rust - невідомо)
Зліва-направо-справа-наліво - до речі зараз частіше паскалевський стиль обирають при створенні мов програмування, підгрунтя для того зазвичай кажуть якщо запитати - субєктивні мені так зручніше, природно читається, і т.п. З часом звикаєш і до справа-наліво і до зліва-направо - то непринципово.

Відсутній BeSiDa

  • Кореспондент
  • ***
  • дописів: 139
  • Карма: +0/-0
Re: Мавка та Ціль — українські мови програмування
« Відповідей #8 : Сьогодні о 17:04:14 »
Ціль — це українська мова програмування подібна на Сі. Мавка — це українська скриптова мова програмування.
З української (культури) там тільки переклад "зарезервованих слів (символів мови програмування)"? Навіть не "синтаксису" (розділових знаків що в нас звичні). І не додано "волі та свободи"? :)
Тоді ... а сенс?

Мабуть мало хто зрозумів на скільки то великий плюс коли в нас "слова мови спілкування" та "слова мови програмування" візуально різні і фактично створені з літер різних діапазонів кодів (кирилиці та латиниці). Мозок зовсім іншим чином зберігає інформацію коли "інт" та "ціле" то "виглядає зовні зовсім різним чином" (замість "одне то підтип іншого" в структурі мозку).

Відсутній BeSiDa

  • Кореспондент
  • ***
  • дописів: 139
  • Карма: +0/-0
Re: Мавка та Ціль — українські мови програмування
« Відповідей #9 : Сьогодні о 17:12:15 »
Чому замість функцій дії, тобто процедури? Чому вони повертають значення направо?

Тоді нехай будуть і функції (які повертають значення наліво), і дії (процедури, які не повертають значення).
"Дія" це не "функція" і не "процедура", це зовсім інший сенс. Це слово вказує на те, що "результатом запуску є зміна зовнішнього світу яку мова програмування не бачить", тобто це "інформація зовні мови програмування". А "функція" чи "процедура" це тільки характеристика тієї частини поведінки шматка коду, яку можна "побачити" з середини мови програмування (чи отримали з того коду нове число).

Та й взагалі то насправді обгортка над командами процесора, які не є за змістом ні математичною функцією, ні процедурою. То лише наша уява :)

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 223
  • Карма: +7/-0
Re: Мавка та Ціль — українські мови програмування
« Відповідей #10 : Сьогодні о 17:33:19 »
Цитата
Мозок зовсім іншим чином зберігає інформацію коли "інт" та "ціле" то "виглядає зовні зовсім різним чином" (замість "одне то підтип іншого" в структурі мозку).
який вумниййй мозок, аж страшно коли цілий  ̶i̶n̶t̶ ніт зберігається і виглядає)
« Змінено: Сьогодні о 18:13:42 від yvs115 »

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 223
  • Карма: +7/-0
Re: Мавка та Ціль — українські мови програмування
« Відповідей #11 : Сьогодні о 18:04:12 »
Цитата
Мавка — це ...
ще досить сира, зібравши x86_64 і спробувавши
% ./out/мавка hello.м
sh: segmentation fault (core dumped)  ./out/мавка hello.м

% gdb ./out/мавка
(gdb) r hello.м
Program received signal SIGSEGV, Segmentation fault.
0x000055555558db67 in КД::перекодувати_ю8_в_т8 ()
(gdb) bt
#0  0x000055555558db67 in КД::перекодувати_ю8_в_т8 ()
#1  0x000055555557a8cd in ?? ()
#2  0x000055555557aeca in ?? ()
#3  0x00005555555787b6 in ?? ()
#4  0x0000555555579bb4 in запустити_мавку ()
#5  0x0000555555678d22 in main (argc=2, argv=0x7fffffffbd08) at source/external/mavka.c:503
(gdb) q

хоча так спрацьовує)
% cp hello.м привіт.м
% ./out/мавка привіт.м
Вітання з моєї першої дії!

Відсутній BeSiDa

  • Кореспондент
  • ***
  • дописів: 139
  • Карма: +0/-0
Re: Мавка та Ціль — українські мови програмування
« Відповідей #12 : Сьогодні о 19:06:51 »
Мені здається та реалізація не є втіленням ідеї, яку зазначено на сайті (мова програмування, що звична для людей які знають українську). Бо першочергово що в ній відсутнє то ... "зміна суфіксів" при використанні у різних контекстах і зарезервованих слів, і змінних.
Використання без зміни виду слова то є англійська мова. І саме вона втілена фактично в проекті.

Замість:

машина це 123
створити дію з назвою "запустити"
запустити(машину)
 
Використані слова "машинА", "діЯ" без змін. Та ще й "=" замість звичного "це" або "є" чи "містить".

Оремо тема що в мові програмування ми до того самого слова ставимося як до різних сутностей (то як "змінна", то як "значення", то як "сенс існування тої змінної") без зміни синтаксису, що неможливо "звичною мовою".