Автор Тема: Модифицированный синтаксис Оберона  (Прочитано 180301 раз)

Fktrc

  • Newbie
  • *
  • Сообщений: 9
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #105 : Февраль 16, 2012, 08:03:55 am »
not
∧   and
∨   or
⊻   xor
⊼   nand
⊽   nor

возможно, придется заменить значек ^ работы с указателями, чтобы не перепутать с and
Вот скажите, оно стоит усилий, которые предлагается потратить? Вот кому оно реально надо? Не просто "хотелось бы", "было бы прикольно" и т.п., а реальная необходимость или хотя бы удобство? Бывают, конечно, случаи, когда самому делать неохота, но готовым результатом воспользовался бы. Но вот этим даже пользоваться не хочется.

DIzer

  • Гость
Re: Модифицированный синтаксис Оберона
« Ответ #106 : Февраль 16, 2012, 10:08:38 am »
Вот скажите, оно стоит усилий, которые предлагается потратить? Вот кому оно реально надо? Не просто "хотелось бы", "было бы прикольно" и т.п., а реальная необходимость или хотя бы удобство? Бывают, конечно, случаи, когда самому делать неохота, но готовым результатом воспользовался бы. Но вот этим даже пользоваться не хочется.
Возможно это будет интересно если профилировать ББ в систему для начального обучения, (введение такого рода обозначений облегчает восприятие алгоритма, программы ) - но вот ведь какая штука:
1. Восприятие ДОЛЖНО быть улучшено (замена символов - всего лишь составная часть из НЕОБХОДИМОГО комплекса мер)
2. Второй момент, должно быть обеспечено УДОБСТВО использования этой фичи.

Если эти условия не будут выполнены, то такую работу ждет участь БОЛЬШИНСТВА компонент - поделок из коллекции Цина.Хороший пример - известные реализации подсистемы подсветки синтаксиса в ББ - в том виде как они РЕАЛИЗОВАНЫ  - они НАХРЕН никому не нужны -"гениальность" коровцев заключается в заключении о том, что они не нужны ВООБЩЕ :D , и даже подгонки под  этот тезис определенной "теории".

from valexey: исправил кодировку.
« Последнее редактирование: Февраль 16, 2012, 10:34:46 am от valexey »

Geniepro

  • Hero Member
  • *****
  • Сообщений: 1955
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #107 : Февраль 20, 2012, 04:59:15 am »
... в C++ оператор && дублируется ключевым словом "and".
о_О серьёзно???
to iterate is human, to recurse, divine

Салат «рекурсия»: помидоры, огурцы, салат…

Vartovyj

  • Full Member
  • ***
  • Сообщений: 197
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #108 : Февраль 22, 2012, 10:33:38 pm »
Зачем вообще логические и побитовые операции обозначать по-разному, если и так однозначно определяется какой тип операции.
Кто что может сказать про гуглевский язык Go? Есть мнения, что это изощренно испоганенный оберон.

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #109 : Февраль 22, 2012, 10:35:51 pm »
Кто что может сказать про гуглевский язык Go? Есть мнения, что это изощренно испоганенный оберон.
Скорее испоганенный Limbo.

PS. Не стоит видеть во всем что имеет модуль и сборщик мусора, Оберон :-)
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #110 : Февраль 22, 2012, 10:36:43 pm »
... в C++ оператор && дублируется ключевым словом "and".
о_О серьёзно???
Да, конечно. Но тут не стоит путать C++ с Си.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

vlad

  • Hero Member
  • *****
  • Сообщений: 1391
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #111 : Февраль 23, 2012, 05:57:32 pm »
Зачем вообще логические и побитовые операции обозначать по-разному, если и так однозначно определяется какой тип операции.

Для логических операций возможно ленивое вычисление. Оберонщики расскажут насколько это важно в трехэтажных предикатах правильных циклов :) Впрочем и необеронщики находят такой свойство весьма полезным. Битовые операции - вычисляются полностью.

Vartovyj

  • Full Member
  • ***
  • Сообщений: 197
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #112 : Февраль 23, 2012, 08:34:37 pm »
В теме было предложено, чтобы модифицированный оберон кроме присущей ему универсальности был также удобен для разработки веб приложений и для программирования микроконтроллеров. Предлагаю обсудить, какую функциональность еще можно добавить языку для этих целей, помимо той, что появилась в КП и Оберон-07(М).

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #113 : Февраль 23, 2012, 09:10:42 pm »
В теме было предложено, чтобы модифицированный оберон кроме присущей ему универсальности был также удобен для разработки веб приложений и для программирования микроконтроллеров. Предлагаю обсудить, какую функциональность еще можно добавить языку для этих целей, помимо той, что появилась в КП и Оберон-07(М).
В плане синтаксиса ничего специфичного для микроконтроллеров не нужно. В плане семантики - может быть и нужно.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

Vartovyj

  • Full Member
  • ***
  • Сообщений: 197
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #114 : Март 02, 2012, 08:36:35 am »
Еще мысли по поводу упрощения синтаксиса. Отказываемся от ключевых слов TYPE, PROCEDURE, CONST.

Константы:
N = 100
limit = 2*N -1

Объявление типов:
Table = [N] real
Tree = ^Node
Node = rec key: int; left, right: Tree end rec
CenterNode = rec (Node)
name: [32] char;
subnode: Tree
end rec
Function1 = (x: int): int
« Последнее редактирование: Март 02, 2012, 08:41:27 am от Vartovyj »

Vartovyj

  • Full Member
  • ***
  • Сообщений: 197
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #115 : Март 02, 2012, 08:51:18 am »
Объявление процедуры:
ReadInt(x: int);
i : int := 0; ch: char;
Read(ch);
while ("0" <= ch) & (ch <= "9") do
i := 10*i + (ORD(ch)-ORD("0")); Read(ch)
end while;
x := i
end ReadInt
« Последнее редактирование: Март 02, 2012, 08:53:59 am от Vartovyj »

Vartovyj

  • Full Member
  • ***
  • Сообщений: 197
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #116 : Март 03, 2012, 10:49:27 am »
Какие на ваш взгляд ресурсы необходимы для написания полноценного 64 битового оптимизирующего компилятора обероноподобного ЯП? Возможно ли это сделать небольшой коммандой энтузиастов?

Geniepro

  • Hero Member
  • *****
  • Сообщений: 1955
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #117 : Март 03, 2012, 11:27:53 am »
Компилятор малополезен без хорошей библиотеки и удобной среды разработки.
Как-то на оберонкоре оценивали стоимость подобной разработки, вышло не менее миллиона долларов )))
to iterate is human, to recurse, divine

Салат «рекурсия»: помидоры, огурцы, салат…

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #118 : Март 03, 2012, 11:30:00 am »
Какие на ваш взгляд ресурсы необходимы для написания полноценного 64 битового оптимизирующего компилятора обероноподобного ЯП? Возможно ли это сделать небольшой коммандой энтузиастов?
Смотря насколько оптимизирующего :-)
В первом приближении - месяц-два рабочего времени. Месяц на компилятор, месяц на рантайм и отладку. Это если конечно не пытаться написать компилятор на нем самом, а использовать реально предназначенный для этого уже готовый современный инструментарий.

Да, это без учета проектирования языка. То есть скажем взяли Oberon-07, и реализуем.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Модифицированный синтаксис Оберона
« Ответ #119 : Март 03, 2012, 11:30:55 am »
Да, моя оценка - это без богатых либ, отладчика и IDE. Чисто компилятор + рантайм.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"