OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Воскресенье, 03 Ноябрь, 2024 03:20

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 79 ]  На страницу Пред.  1, 2, 3, 4
Автор Сообщение
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Воскресенье, 30 Июнь, 2024 20:50 

Зарегистрирован: Пятница, 13 Март, 2015 16:40
Сообщения: 613
Инвентарный номер, главное, не стирать...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Понедельник, 09 Сентябрь, 2024 12:05 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1576
Сделал наконец-то шрифт с отличающейся кириллицей и воткнул его в ЯОС. Получилось вот так, только надо учесть, что браузер масштабирует картинку, когда вы её открываете из форума и поэтому она выглядит мыльно. В реальном мире алгоритм сглаживания в ЯОС отключён и поэтому картинка резкая и чёткая (хотя и зубастая местами). Чтобы просмотреть картинку по-нормальному, наверное, надо вложение (само вложение, не превью) скачать к себе, или не знаю, как сделать лучше.

Вложение:
куски-лиспа-в-яос.png
куски-лиспа-в-яос.png [ 137.09 КБ | Просмотров: 4458 ]


Пришлось решать одну проблему с отрисовкой шрифта (некоторые буквы уродовались из-за ошибок в алгоритме отрисовки шрифтов),
но удалось найти дешёвый обходной путь.


Последний раз редактировалось budden Понедельник, 09 Сентябрь, 2024 12:15, всего редактировалось 5 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Понедельник, 09 Сентябрь, 2024 12:07 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1576
Сам шрифт находится тут:

https://tvoygit.ru/budden/dr_cyr


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Вторник, 10 Сентябрь, 2024 02:36 

Зарегистрирован: Пятница, 13 Март, 2015 16:40
Сообщения: 613
Знаю - обсуждалось, даже погавкались; рассматривал картинку, классно, и вот что хочешь делай, но "проц" "вернёт", а не "проц" "возврат".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Вторник, 10 Сентябрь, 2024 16:58 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1470
а мне больно на это смотреть. «суть» это множественное число от «есмь». вот так беру я, положим, такой язык — а мне с порога уже лигвистической ошибкой махают. ну, и выкидываю сразу, конечно: если сразу ошибки, то чего дальше-то…

p.s.: прости, я с устатку, обидеть не хотел. просто гипотетические впечатления, если бы увидел случайно. в общем, no offence intended.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Вторник, 10 Сентябрь, 2024 23:53 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2460
Откуда: Россия, Томск
arisu писал(а):
а мне больно на это смотреть. «суть» это множественное число от «есмь».
100% согласен. Главное, что мешало использовать "есть" или "это", - решительно не понятно.

Мне также больно смотреть на "то возврат ложь иначе возврат истина".

А в целом эстетика такая, на вкус и цвет. Этому шрифту только крестов с куполами недостаёт, а так что-то старославянскенькое в нём есть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Среда, 11 Сентябрь, 2024 11:13 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1576
arisu писал(а):
а мне больно на это смотреть. «суть» это множественное число от «есмь». вот так беру я, положим, такой язык — а мне с порога уже лигвистической ошибкой махают. ну, и выкидываю сразу, конечно: если сразу ошибки, то чего дальше-то…

p.s.: прости, я с устатку, обидеть не хотел. просто гипотетические впечатления, если бы увидел случайно. в общем, no offence intended.

Ну, логика, что если есть одна ошибка, то дальше нечего смотреть - это, конечно, логика железная. Думаю на самом деле в том, что любому своё милее и не пахнет, а чужое сразу бросается. Поэтому, сразу находим за что зацепиться и радостно переходим к выводам. Про „суть“ и „есмь“ я не знал, если это ошибка, то в общем-то вполне можно её и исправить. Другое дело - в приоритетности, я сейчас ЯОС не занимаюсь, поэтому это случится когда-нибудь в асимптотический момент. Проблемы переделать никакой нет, часа на два, наверное, работы, ну, может быть, на день с учётом уже произошедшей утраты навыков. И естественно, если это прямо ошибка, то она должна быть исправлена. Спасибо. Проблема в том, что я работаю (точнее, работал) над ЯОС один и у меня нет консультанта-лингвиста со знанием всех нужных разновидностей русского языка. Был бы консультант - не было бы этой ошибки. То же касается и качества шрифта - шрифт выглядит на самом деле без сглаживания довольно ужасно, но у меня нет ресурсов заказать нормальный, поэтому будем считать прототипом. Хотя в Убунте он выглядит нормально и я его использую по умолчанию в средах разработки.


Последний раз редактировалось budden Среда, 11 Сентябрь, 2024 11:19, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Среда, 11 Сентябрь, 2024 11:14 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1576
Artyemov писал(а):
Знаю - обсуждалось, даже погавкались; рассматривал картинку, классно, и вот что хочешь делай, но "проц" "вернёт", а не "проц" "возврат".

А что делать, когда ничего не возвращает?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Среда, 11 Сентябрь, 2024 11:28 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1576
Включил сглаживание только для AMD64, теперь так выглядит. Раз никто ещё сегодня ничего не написал про слово „укль“, то вот вам оно на картиночке.


Вложения:
ДрКирЯОС_СоСглаживанием.png
ДрКирЯОС_СоСглаживанием.png [ 96.31 КБ | Просмотров: 4310 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Среда, 11 Сентябрь, 2024 11:29 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1576
На самом деле, если в шрифт не вглядываться, а просто его читать, то он вовсе и не страшный.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Среда, 11 Сентябрь, 2024 11:38 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1470
budden писал(а):
Ну, логика, что если есть одна ошибка, то дальше нечего смотреть - это, конечно, логика железная.
это не просто ошибка, это ошибка фундаментальная. логика тут такая:
1. адаптация делается нативом на свой родной язык.
2. натив своего родного языка не знает.
3. разбираться, чего он ещё не знает, но очень хочет — жизнь не бесконечная. лучше обойти мимо.

budden писал(а):
Думаю на самом деле в том, что любому своё милее и не пахнет, а чужое сразу бросается. Поэтому, сразу находим за что зацепиться и радостно переходим к выводам.
есть ошибки где глаз замылился, есть ошибки, которые сразу портят всё впечатление. был бы ты не натив — и вопросов бы не возникло. ;-) а это ошибка класса «пробЫвать» или «воЙн», кровь из глаз.

со старыми/устаревшими словами вообще надо очень аккуратно: они далеко не всегда значат то, что кажется. типа «нелицеприятный» или «пользовать». хотя это, конечно, ересь прескриптивизма, с которой половина филологов так же яростно борется, как другая половина отстаивает…


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Среда, 11 Сентябрь, 2024 12:12 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1576
Понятно, не только проект плохой, но и автор тоже так себе. Думаю, на этом можно и закончить, но можешь ещё что-то плохое написать. Где же плохое писать, как не в темах чьих-то проектов?

На самом деле в ЯОС всё совсем не так плохо с переводами. Во-первых, это уже не первая попытка, поэтому многое улучшено по сравнению с предыдущим языком, который теперь называется яр-15. Например, я нашёл в переводе Фёдора Васильевича "аесли", а в первой попытке было "иначесли". Кроме того, произошёл постепенный отказ от идеи сделать всё на «исконной» лексике, и язык был приближен к современному. Хотя кое-что было и утрачено. Например, для яра-15 я придумал специальное слово "структа", чтобы не плодить смыслов к словам "запись" и "структура". В ЯОС это не стал включать, а наверное зря. Наверное, надо сделать, раз уж основная реакция, которую проект вызывает - это раздражение, надо идти в этом до конца. Однако, при случае я не постесняюсь применить и слово, вышедшее из употребления. Я реально думал использовать слово "ряд" для одномерного массива, как в Глаголе. В итоге отказался от этого и тоже в сомнениях. Массивы в Обероне бывают только одномерные, поэтому слово "массив" тут не очень подходит. В Лиспе одномерные массивы называются "вектор" и можно было бы так назвать. Однако я применил слово "массив", чтобы было меньше удивления - видимо, зря старался угодить, всё равно угодить нельзя. Но на самом деле я не так сильно парился в случае ЯОС с терминологией, потому что ключевые слова вовсе не являются основным содержанием инновации в ЯОС, они не должны мешать и быть более-менее сносными, не более того. В-третьих, внедрено повелительное наклонение, которое делает текст короче и смягчает проблему падежей. В яре-15 этого не было.

Придраться можно ко всему, в том числе и к англоязычным вариантам ключевых слов. Там можно точно так же попробовать найти ошибки. Например, слово when в лиспе используется для if без else. Но это годится только до того момента, пока в системе не возникает фактор времени. В системах с правилами и реакциями на события (таких, как G2) выясняется, что слово when более уместно использовать в правилах, а не в условном операторе. Но уже поздно. Пока я с этим не столкнулся, я и не думал об этой проблеме. То же можно с натяжкой сказать и про while.

Когда я делал свой прошлый язык яр-15, https://tvoygit.ru/budden/jar15, я долго думал, как должно называться слово procedure. В Обероне этой проблемы нет ввиду ограниченных возможностей языка, а в лиспе в одном файле могут быть объявления декларативного характера (какой-то объект должен существовать), объявления процедурного характера (создай прямо сейчас объект с такими-то характеристиками) и просто какие-то действия (напечатай приветствие). Поэтому "определи функцию", "объяви функцию" и "объяви сигнатуру функции" - это три разных действия. Называть это слово "procedure" прокатывает в Обероне, но не прокатывает в лиспе.

В лиспе defun (define function) говорит о том, что мы должны, прочитав это, создать функцию с такой сигнатурой и телом. Хотя и тут есть нюансы - при интерпретации и компиляции произойдёт разное. При интерпретации функция будет создана прямо после прочтения формы. При компиляции это на самом деле объявление функции - сначала прочитается весь файл, а уже потом будут созданы функции, что даёт возможность функциям вызывать друг друга (если я ещё не забыл лисп). А вот как у Алексея Недори в Тривиле:

Код:
фн Факториал(ц: Цел64): Цел64 {
   если ц <= 1 { вернуть 1 }
  вернуть ц * Факториал(ц - 1)
 }

Если его язык компилируемый, можно считать, что это калька с Оберона. Если же там есть интерпретация и мы можем написать это в REPL, то начинать такое со слова фн - вообще говоря, является ошибкой. Правильно было бы написать "создай функцию". Притом, есть языки, в которых так и пишут, например, это PL/SQL и подобные процедурные расширения - там так и пишут, CREATE PROCEDURE. Т.к. язык динамический, это отличается от какого мифического DECLARE PROCEDURE, которое можно было бы использовать для объявления сигнатуры процедуры, которая будет создана позже, например, для взаимно-рекурсивных процедур. Хотя не припомню, чтобы такое было в SQL, зато такое есть в Си и там вообще нет никакого слова - есть условность, что мы должны сами посмотреть на текст и понять, объявление это или определение.

В других же языках ещё хуже - используется слово def, т.е. "определи". А что определи? Можно же не только функцию определить, а и кучу других объектов. Тоже ведь ошибка. Однако всё это можно стерпеть, привыкнуть и пользоваться, что мы все на самом деле и делаем.

Если же мы начнём думать о словах procedure и function в Паскале, то всё становится совсем плохо. По идее функция не должна иметь побочных эффектов, но в Паскале она отличается лишь тем, что возвращает значение. Это уже явный пример, когда терминология неадекватна реальности. И что, кто-то возмущается? Отнюдь.

Данный рассказ показывает, что вопрос с терминологией нельзя решить идеально. Она уже несовершенна и там к куче всего можно придраться. При калькировании Оберона на русский я хотел, чтобы это было понятно в контексте ШАЯ (много ключевых слов взято оттуда, хотя слово алг я не стал брать), чтобы это было понятно вообще в контексте современной русскоязычной ИТ-культуры, и чтобы это было коротко. Это вопрос баланса и компромиссов, а когда принимаются такие решения, ничто идеальным не будет. Поэтому мне на самом деле наплевать на придирки, а существенные ошибки я может быть когда-нибудь исправлю. Будет не суть, а есмь, главное, что это не будет слово "есть", потому что слово "есть" слишком многозначное.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Среда, 11 Сентябрь, 2024 19:02 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1470
ну при чём тут плохое… если бы я плохое хотел — я бы и написал: «проект гуано, афтар, разбегись апстену». я тебе описывал потенциальное отношение не только своё, но и довольно большого количества людей, которые как раз обычно наиболее важны для любого проекта. потому что от восторженых неофитов обычно толку мало. причём говорил только про ошибку с «есмь/суть», а не про проект в общем.

я сразу написал, что желания задеть у меня нет. за форму прости: я сейчас в силу irl обстоятельств не очень хорош в формулировках. это багрепорт был, ващет. i am very sorry.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Среда, 11 Сентябрь, 2024 19:10 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1470
budden писал(а):
Если его язык компилируемый, можно считать, что это калька с Оберона.
это ж гошечка!

budden писал(а):
Данный рассказ показывает, что вопрос с терминологией нельзя решить идеально. Она уже несовершенна и там к куче всего можно придраться. При калькировании Оберона на русский я хотел, чтобы это было понятно в контексте ШАЯ (много ключевых слов взято оттуда, хотя слово алг я не стал брать), чтобы это было понятно вообще в контексте современной русскоязычной ИТ-культуры, и чтобы это было коротко. Это вопрос баланса и компромиссов, а когда принимаются такие решения, ничто идеальным не будет.
а тут мы возвращаемся к старому флэйму о необходимости такого перевода вообще. но эта тема уже несколько раз до смерти запинана, стороны давно исчерпали аргументы. ;-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Четверг, 12 Сентябрь, 2024 02:01 

Зарегистрирован: Пятница, 13 Март, 2015 16:40
Сообщения: 613
budden писал(а):
Artyemov писал(а):
Знаю - обсуждалось, даже погавкались; рассматривал картинку, классно, и вот что хочешь делай, но "проц" "вернёт", а не "проц" "возврат".

А что делать, когда ничего не возвращает?

В смысле???
Ничего не делать, n'est-ce-pas?
Я имел в виду, что на картинке был бы обычный связный текст: "проц(едура) если то-то - вернёт сё-то, а если такое, то вернёт вот эдакое", практически подлежащее со сказуемым.

PS: "укль" можно было бы и не напоминать ;-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Четверг, 12 Сентябрь, 2024 05:00 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1470
на самом деле решение довольно простое: несколько ключевых слов. «выйти» (или «завершить») — `RETURN;`. «вернуть/вернёт/возвращает» — `RETURN expr;`. в силу специфики русского языка удобно иметь синонимы. иначе связный текст не получится, а будет клекотание.

ну да, просто заменой лексера не обойтись, надо новый парзер делать. допиливать, точнее. а кто говорил, что будет легко?

p.s.: ну, или ввести новую конструкцию: «возвращает ничего», например. `RETURN VOID;`.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Четверг, 12 Сентябрь, 2024 18:23 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1576
Artyemov писал(а):
budden писал(а):
А что делать, когда ничего не возвращает?

В смысле???

В смысле когда процедура ничего не возвращает, т.е. нет типа возвращаемого значения. У меня реализована другая идея, про то, что компьютеру повелеваю, что делать. Идея реализована в названиях всех процедур, хотя по ключевым словам этого может быть не видно. Соответственно, тогда будет "верни ЧЧЧ" или "вернись", если нечего возвращать. Соответственно, оба слова не подходят. К примеру, в армейских командах тоже нет однородности обращения, например, есть команда "стой", "пли", "марш" и "кругом" - они все не однородны в плане ээээ, тут более умные пусть скажут, как эта согласованность называется. Я имею в виду, если бы команды были "стой", "пли", "иди" и "повернись", то это было бы однородно, а в реальной жизни этого нет и никого это не волнует. По той же логике я сделал просто "возврат". Мой перевод Оберона предназначен для программирования, а не для стихов, и я не ставил перед собой цели сделать перевод, максимально приближенный к настоящему русскому языку. Такой перевод сделать реально сложно, т.к. нужно поддерживать словоформы во многих местах. Также и исходный Оберон не близок к английскому, например, где артикли?
Притом, например, в G2 есть язык запросов, близкий к английскому, где в синтаксисе есть артикли. Так что нельзя даже сказать, что пропуск артиклей является общепризнанным упрощением английского, когда делают на его основе ЯП. Но у Ф.В. в его переводе Блекбокса уже есть многовариантные ключевые слова на русском. Сделало ли это школьную сборку популярнее КуМира? Нет. Стало ли кому-то приятнее работать на нём? Возможно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Четверг, 12 Сентябрь, 2024 21:04 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1576
arisu писал(а):
ну при чём тут плохое… если бы я плохое хотел — я бы и написал: «проект гуано, афтар, разбегись апстену». я тебе описывал потенциальное отношение не только своё, но и довольно большого количества людей, которые как раз обычно наиболее важны для любого проекта. потому что от восторженых неофитов обычно толку мало. причём говорил только про ошибку с «есмь/суть», а не про проект в общем.

я сразу написал, что желания задеть у меня нет. за форму прости: я сейчас в силу irl обстоятельств не очень хорош в формулировках. это багрепорт был, ващет. i am very sorry.

Понял. За багрепорт спасибо. Извини тоже, если что. Ошибку когда-нибудь исправлю. Люди на самом деле уже не нужны. Проект перешёл в статус цветочка на окошке. Он красивый, и хорошо. Можно полить раз в день, или раз в месяц, если это кактус, к примеру, и полюбоваться. Однако нет потребности делить эту радость со всем миром. В таком виде ЯОС мне до сих пор нужен. Но я даже не знаю, что буду делать, если вдруг мне скажут "на тебе денег, делай". Просто нужно было для логической завершённости добавить туда этот шрифт.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Яос, часть 2.
СообщениеДобавлено: Пятница, 13 Сентябрь, 2024 02:04 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1470
budden писал(а):
Люди на самом деле уже не нужны. Проект перешёл в статус цветочка на окошке. Он красивый, и хорошо. Можно полить раз в день, или раз в месяц, если это кактус, к примеру, и полюбоваться. Однако нет потребности делить эту радость со всем миром.
а, понял. тогда всё остальное кроме репорта у меня лишнее было, конечно. «просто штука прикольная» — это я понимаю, у меня всё такое. ;-)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 79 ]  На страницу Пред.  1, 2, 3, 4

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot], Google [Bot] и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB