Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Операционные системы > Софт
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.01.2011, 15:35   #1
Rik
Форумчанин
 
Аватар для Rik
 
Регистрация: 28.07.2007
Сообщений: 361
По умолчанию Написал язык Суржи

Проект ещё пока до ума не доведен, находится в стадии разработки, но показать уже есть что.

Суржи - объектно ориентированный язык программирования, поддерживает русскую транскрипцию. Название языка происходит от слова суржик. Так называется хлеб или мука из разных видов зерна, а так же смешанный разговорный язык на приграичных территориях Украины и России. Т.е. смысл в том, что Cуржи тоже смешанный язык, в котором встречаются элементы различных языков программирования. В целом синтаксис языка базируется на синтаксисе Delphi, но есть элементы заимствованные из С подобных языков а так-же из Оберон и Модула.
В частности, из Си подобных языков заимствованы оператор присвоения = вместо :=, оператор сравнения == вместо =, инкремент и декремент в виде ++, --, +=, -=, а так же операторы побитового сдвига << и >>. Синтаксис операторов if, for, while заимствован из оберон и модула. Разница с синтаксисом Delphi в том что эти операторы сами открывают блок, begin для открытия блока писать не нужно, но они всегда должны заканчиваться завершающей инструкцией end, даже в том случае, если в их теле всего один оператор. Кроме этого все процедуры и функции объявляются с ключевым словом method. Если ком интересно, подробнее об особенностях смотрите в справке.

http://visualtech.shadr.ru/files/Surgy7Setup.exe - Инсталлятор среды, включающий дизайнер и интерпретатор - машину Суржи. Приложения сохраняются в формате xml. В комплекте 2 примера, один с базой данных. Для запуска примеров используйте менеджер приложений Пуск-Программы-VisualTech-Суржи7-Менеджер. Из менеджера можно запустить пример или загрузить в дизайнер. Если у кого при инсталляции примеры в менеджер приложений не прописались, идем в Пуск-Программы-VisualTech-Суржи7-Пример-[Привет мир] или [пример с базой] - Запускаем левой кнопкой мыши, правой - вызываем контекстное меню - Изменить и приложение загрузится в дизайнер.

Последний раз редактировалось Rik; 28.01.2011 в 20:17.
Rik вне форума Ответить с цитированием
Старый 28.01.2011, 20:38   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Огромный плюс за проделанный труд. Чисто внешне все сделано очень даже на уровне. Сам занимался чем-то подобным и могу по достоинству оценить вложенный труд.
Однако сама попытка смешать С и Паскаль не самая удачная идея. В С понятно почему == вместо =, а у Вас с чем это связано? Или Вы тоже имеете побочные эффекты в операциях?
Далее, серьезным препятсятвием для русского языка будет являться необходимость постоянного переключения раскладки. Проверено лично и неоднократно.
Код:
тип
  ТГлавнаяФорма = класс(TForm)
    метод ФормаПриНажатии(Отправитель: TObject);
  закрытые
  защищенные
  открытые
  конец;
Базовые типы у Вас не русские (потому как я понимаю - их такое обозначение требуется для работы среды), в тоже время как служебные слова являются русскими.
Следующее, что плохо - это слова-обрубки. Дословный перевод команд вместо их самостоятельного обозначения далеко не гуд. В таком случае они не только не упрощают, а наоборот затрудняют понимание программы - тоже занимался таким вопросом. Кстати, не сочтите за рекламу - но вот полуживой-полудохлый проект - русский язык в программировании - rus.24bb.ru
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 28.01.2011, 21:24   #3
Rik
Форумчанин
 
Аватар для Rik
 
Регистрация: 28.07.2007
Сообщений: 361
По умолчанию

Цитата:
Сообщение от Utkin Посмотреть сообщение
Однако сама попытка смешать С и Паскаль не самая удачная идея. В С понятно почему == вместо =, а у Вас с чем это связано? Или Вы тоже имеете побочные эффекты в операциях
Я ожидал что первый вопрос будет почему в паскалеподобном языке = вместо :=, т.к. противоречит Виртовскому пониманию присвоения. Ну а == и =, во первых проще анализировать, можно конечно сделать что и то и другое понимать будет и будет без разницы в логических выражениях = или ==, потом я с этим поэксперементирую... А вообще, всё сделано так как сделано, потому, что главным образом мне так нравится. Получилось так, что я на Delphi переходил с С, мне в С нравились эти мелочи, поэтому я их и использовал.
Цитата:
Сообщение от Utkin Посмотреть сообщение
Базовые типы у Вас не русские (потому как я понимаю - их такое обозначение требуется для работы среды), в тоже время как служебные слова являются русскими.
Я видимо где то неправильно выразился, простые типы можно писать по русски: Строка, Целое и т.д. А всё что относится к классам читается из VCL, поэтому там о русификации речи нет...
Цитата:
Сообщение от Utkin Посмотреть сообщение
Следующее, что плохо - это слова-обрубки. Дословный перевод команд вместо их самостоятельного обозначения далеко не гуд. В таком случае они не только не упрощают, а наоборот затрудняют понимание программы - тоже занимался таким вопросом. Кстати, не сочтите за рекламу - но вот полуживой-полудохлый проект - русский язык в программировании - rus.24bb.ru
Я об этом в курсе, русификация появилась в последний момент отсилу неделю назад, всё продумать не было времени. У меня спрашивали рание о русификации, я подумал, почему бы и нет, вдруг кому то это понадобится... На русификации свет клином не сошелся, её можно и не использовать, создайте в суржи обычный проект без русской транскрипции и будет всё как в дельфи, даже в проекте с русской транскрипцией можете слова ключевые писать и по английски и по русски и имена импортированных идентификаторов можете использовать как русские так и английские, он поймет. Пока это эксперимент, который замедляет компиляцию, т.к. в таблице идентификаторов приходится хранить одновременно и оригинальные названия и русифицированные варианты и при лексическом анализе лишних переходов добовляется. Классический проект без русификации будет скомпилирован гораздо быстрее. Лично я сам предпочитаю классический вариант без русификации, к тому же латинскими символами печатаю вслепую...

Последний раз редактировалось Rik; 28.01.2011 в 21:54.
Rik вне форума Ответить с цитированием
Старый 03.02.2011, 09:31   #4
Rik
Форумчанин
 
Аватар для Rik
 
Регистрация: 28.07.2007
Сообщений: 361
По умолчанию

Цитата:
Сообщение от Utkin Посмотреть сообщение
В С понятно почему == вместо =, а у Вас с чем это связано? Или Вы тоже имеете побочные эффекты в операция
Сейчас понимает и == и = ...
Rik вне форума Ответить с цитированием
Старый 03.02.2011, 09:43   #5
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Все понимаю, работали много, ловите похвалу... Но практическая польза от этого вашего пиджина какая?
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 03.02.2011, 09:50   #6
Rik
Форумчанин
 
Аватар для Rik
 
Регистрация: 28.07.2007
Сообщений: 361
По умолчанию

Цитата:
Сообщение от Alex Cones Посмотреть сообщение
Все понимаю, работали много, ловите похвалу... Но практическая польза от этого вашего пиджина какая?
Проект рассчитан на пользователей Delphi, желающих сделать свои программы максимально гибкими.
Цитата из справки:
Цитата:
Идея создания Суржи возникла в погоне за гибкостью. При выборе приложений корпоративной сферы, гибкость является одним из решающих факторов в пользу того или иного приложения. Возникла необходимость в эффективном средстве разработки приложений, которое не ограничивало бы возможности конечных пользователей по модификации приложений и позволяло вносить изменения в приложения без участия разработчика и перекомпиляции программы.
Т.е. это система для создания приложений по принципу 1С.
Фактически эту систему я использую уже лет 8(раньше ядром системы был сторонний покупной интерпретатор), делаю на ней, для клиентов, морды к базам данных. Если клиент хочет что-либо изменить, ему не нужно заморачиваться по поводу лицензирования средств разработки, затрат на установку и т.д. Тут всё в одном флаконе и исходный код приложения и среда для его "конфигурирования".
Rik вне форума Ответить с цитированием
Старый 03.02.2011, 09:56   #7
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Цитата:
не ограничивало бы возможности конечных пользователей
Эй богу, хорошо. Вот только 99.99% конечных пользователей ничего сложнее заполнения таблиц экселя не умеют, а вы их программировать заставляете.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 03.02.2011, 10:29   #8
Rik
Форумчанин
 
Аватар для Rik
 
Регистрация: 28.07.2007
Сообщений: 361
По умолчанию

Цитата:
Сообщение от Alex Cones Посмотреть сообщение
Эй богу, хорошо. Вот только 99.99% конечных пользователей ничего сложнее заполнения таблиц экселя не умеют, а вы их программировать заставляете.
В любой конторе, есть программист, надо будет что-либо изменить, разберется. У моих заказчиков, программы живут уже много лет без моего участия, поддерживают всё своими силами.
Rik вне форума Ответить с цитированием
Старый 04.02.2011, 18:07   #9
Rik
Форумчанин
 
Аватар для Rik
 
Регистрация: 28.07.2007
Сообщений: 361
По умолчанию

добавил поддержку синтаксиса Паскаль-Дельфи (сейчас 2 языка доступно).
Добавил 2 примера - один на паскале с фрактальной графикой, второй на Суржи без русской транскрипции
Rik вне форума Ответить с цитированием
Старый 15.02.2011, 12:05   #10
xyz80
Новичок
Джуниор
 
Регистрация: 01.02.2010
Сообщений: 1
По умолчанию

Все отлично выполнено! Молодец Юрий! Я рад что и мой голос в пользу введения русского языка программирования был у слышен, за что Вам отдельное спасибо.
Я согласен упущения есть, также есть и не доработки, но все стоит еще на стадии проекта, т.е. все еще развивается. Я давно вел перепись с Юрием и видел как этот проект развивался. Конечно да, переплетение данного языка больше ведет к тому, что людям придется осваивать новый язык программирования ведь в итоге многое возможно изменится. Также смущает не возможность в скрипте создавать описания собственных классов и записей, но думаю данную проблему можно также решить. Что до переключение раскладки клавиатуры, то думаю данный проект еще в стадии тестирования, потому об этом еще прежде-временно говорить.
Но вообще работа проделана огромная и в реальности Юрий потратил много времени и сил на создание всего этого. Потому считаю, что огромный плюс точно заслуживает.
Также Юрий хочу сразу спросить удалось вам реализовать PascalScript от Remobject?
xyz80 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что же я написал? Sibedir Свободное общение 26 04.10.2010 05:01
Я написал текстовую игру... saggy Софт 11 05.06.2010 22:32
Написал редактор карт sasha1993 Gamedev - cоздание игр: Unity, OpenGL, DirectX 8 18.07.2009 21:31
Написал прогу в паскале... deu4er Помощь студентам 2 19.11.2008 20:08
Написал бэкдор, оцените KORN Софт 7 18.11.2007 08:55