Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт мар 29, 2024 00:56

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Старая статья о разработке компилятора С++
СообщениеДобавлено: Вс май 26, 2013 18:20 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
http://www.interstron.ru/upload/images/pubs/Redkaya_professiya.pdf
Давно читал эту статью, а сейчас ссылку на нее подняли в комментариях на habrahabr.ru. Довольно увлекательный рассказ о разработке компилятора С++ "с нуля". По сравнению с Фортом - "почувствуйте разницу".


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Пн май 27, 2013 16:47 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Хищник писал(а):
http://www.interstron.ru/upload/images/pubs/Redkaya_professiya.pdf
Давно читал эту статью, а сейчас ссылку на нее подняли в комментариях на habrahabr.ru. Довольно увлекательный рассказ о разработке компилятора С++ "с нуля". По сравнению с Фортом - "почувствуйте разницу".

Возникла крамольная мысль: В малобюджетные проекты мало желающих "корпораций" вкладываться, кроме самих пользователей.:)

P.S. Тоже давно читал данную статью.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Пн май 27, 2013 17:09 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
KPG писал(а):
Возникла крамольная мысль: В малобюджетные проекты мало желающих "корпораций" вкладываться, кроме самих пользователей

И вовсе не крамольная. Представим Microsoft с десятками миллиардов USD в год. Неужели совет директоров соберется, чтобы рассмотреть целесообразность инвестирования 10-100 тыс. USD в какой-то проект? Там речь идет о миллиардах, и именно этими потоками будет оперировать высшее руководство. Небольшой проект - это уровень локального представительства, у которого есть бюджет "на поддержку исследований в местных вузах", или предмет для стартапа. Такую сумму можно получить и из российских фондов, тем более что наукоемкие и/или IT-проекты имеют некоторую поддержку, и на них хотя бы имеется "разнарядка" у тех, кто выделяет деньги. Другое дело, что нужно:
1) Для гранта - иметь пакет в виде "коллектив + ученые степени + публикации по теме + задел + оборудование + ориентация на федеральную целевую программу".
2) Для стартапа - иметь проработанный план возврата инвестиций. Транслятор Форта, библиотеки, среда разработки - все это НЕ предметы для стартапа.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Пн май 27, 2013 22:37 
Не в сети
Аватара пользователя

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
Хищник писал(а):
http://www.interstron.ru/upload/images/pubs/Redkaya_professiya.pdf
Давно читал эту статью, а сейчас ссылку на нее подняли в комментариях на habrahabr.ru. Довольно увлекательный рассказ о разработке компилятора С++ "с нуля". По сравнению с Фортом - "почувствуйте разницу".


Так низя! 32!!! страницы - я неасилил. Непонятно что читать, зачем, и в чем фишка!
Знал бы "фишку" - использовал бы быстрый поиск, если она для меня актуальна...
Эх ... времечко то бежит!

_________________
Мои программные ништякиhttps://majestio.info


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Пн май 27, 2013 23:04 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Интересный и занимательный рассказ о коллективе весьма неглупых специалистов, которые делали серьезный проект, получая на нем организационный опыт. Дополнительно можно еще и посмотреть, СКОЛЬКО усилий требуется на Си-подобные компиляторы, которые, по представлениям некоторых программистов, существуют в избытке и обязательно рано или поздно появятся для любой платформы.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Чт май 30, 2013 23:13 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Хищник писал(а):
Интересный и занимательный рассказ о коллективе весьма неглупых специалистов, которые делали серьезный проект, получая на нем организационный опыт. Дополнительно можно еще и посмотреть, СКОЛЬКО усилий требуется на Си-подобные компиляторы, которые, по представлениям некоторых программистов, существуют в избытке и обязательно рано или поздно появятся для любой платформы.


А ещё можно посмотреть на программы статического анализа типа Lint их цены и диагностические "всевозможные'
сообщения.
В Форте за счёт изначально "простой" вычислительной виртуальной машины (например "явный" массив памяти,
базовые переменные указывающие на ячейки этой памяти, "упрощённая" форма циклов с I и J базовыми словами,
т.к. "не надо" следить за типами переменных, то и ошибок с преобразованием типа и "непомнинья" типа конкретной переменной если она не введена через макрос тоже нет, к тому же, напрмер, в массивах можно вести по "желанию" динамический контроль за диапазоном обращения к памяти из запомненой размерности,
короткие и легко запоминаемые слова @ ! и др., лёгкость внесения изменений в рабочий код, возможность
параметризовать код, подстроить синтаксис и семантику, "монотонность" восприятия текста программы ...
Что ещё забыто или указано неверно? )

P.S. К чему это? Интересно как может выглядеть Lint по функциональности для Форта и какие сообщения об опасных или не очень местах будет выводить? Как можно формализовать для этого инструментарий?
К этим размышлениям привело рассмотрение ранее приводимой ссылки по программе Cweed (не понятно что
она и зачем "сканирует" в Си файлах для практического использования информации?)
Вроде эта тема особо не обсуждалась и для Форта не видно Lint анализаторов на "горизонте".


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Чт май 30, 2013 23:19 
KPG писал(а):
Вроде эта тема особо не обсуждалась и для Форта не видно Lint анализаторов на "горизонте".
Это опять из разряда обсуждений, куда к автомобилю цеплять лошадь и почему телеграммы доходят сухими. Или, если угодно, как раскрасить Forth-программу...


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Чт май 30, 2013 23:25 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
gudleifr писал(а):
KPG писал(а):
Вроде эта тема особо не обсуждалась и для Форта не видно Lint анализаторов на "горизонте".
Это опять из разряда обсуждений, куда к автомобилю цеплять лошадь и почему телеграммы доходят сухими. Или, если угодно, как раскрасить Forth-программу...

Может быть и так, но хороший или плохой пример по данному вопросу мог бы быть полезным.
Или для Форта это лишнее? и должно решаться комплексным инструментом типа IDE? или не решаться
вообще.

P.S. Если раскраска программы кому то помогает, то почему её не надо использовать? А раскрашивать
или нет это уже индивидуально решается.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Чт май 30, 2013 23:53 
KPG писал(а):
Или для Форта это лишнее?
Начало всех lint-подобных программ анализ синтаксиса, на основании которого делаются выводы о семантике. В Forth-же синтаксиса нет. Если Вы придумаете свой, например, будете считать связки :-; и/или IF-THEN синтаксически значимыми, то можете их проверять-раскрашивать... Но это не помешает другому фортеру вообще обойтись без подобных конструкций.
В отличие от других языков, например, C++, где все, что Вы можете написать, обязано следовать правилам C-синтаксиса, в Forth можно полагаться только на те "опорные точки", которые Вы сами расставите в своих словах: SMUDGE, LATEST в :-; , стек управления в IF-THEN, контроль стека в основном цикле...


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Пт май 31, 2013 00:17 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
gudleifr писал(а):
KPG писал(а):
Или для Форта это лишнее?
Начало всех lint-подобных программ анализ синтаксиса, на основании которого делаются выводы о семантике. В Forth-же синтаксиса нет. Если Вы придумаете свой, например, будете считать связки :-; и/или IF-THEN синтаксически значимыми, то можете их проверять-раскрашивать... Но это не помешает другому фортеру вообще обойтись без подобных конструкций.

Вы видели Форт без IF-THEN? или других "синтаксических" элементов?

gudleifr писал(а):
В отличие от других языков, например, C++, где все, что Вы можете написать, обязано следовать правилам C-синтаксиса, в Forth можно полагаться только на те "опорные точки", которые Вы сами расставите в своих словах: SMUDGE, LATEST в :-; , стек управления в IF-THEN, контроль стека в основном цикле...

Пока на данном форуме обсуждается Форт в том виде как он понимается. "Нигелирование" существа вопроса
или сведения обсуждения его к абсурду не способствует конструктивному диалогу. По моему :<

P.S. Т.к. программа выполняется в реальных командах, то и верифицировать её в той или иной степени возможно.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Пт май 31, 2013 00:31 
KPG писал(а):
Вы видели Форт без IF-THEN? или других "синтаксических" элементов?

Пожалуйста! Например, мой распознаватель "градусов" для примера коллеги mOleg. Условий там до фига, а IF-ов очень мало. Или те же стековые манипуляторы... Одна из первых моих задачек в Forth была замена обычных IF-ов на дейкстровские if и do...
Тоже и про :-; , которые вполне могут кончится в первых блоках программы, уступив место Вами придуманным. Как, например, в Forth-ассемблерах.
KPG писал(а):
Пока на данном форуме обсуждается Форт в том виде как он понимается.
Открываем Броуди-TF, читаем... Или надо читать "понимается мною"?
KPG писал(а):
"Нигелирование" существа вопроса
или сведения обсуждения его к обсурду не способствует конструктивному диалогу.
Почему же? Reductio ad absurdum очень давно используется в логике доказательств.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Пт май 31, 2013 00:53 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
gudleifr писал(а):
KPG писал(а):
Вы видели Форт без IF-THEN? или других "синтаксических" элементов?

Пожалуйста! Например, мой распознаватель "градусов" для примера коллеги mOleg. Условий там до фига, а IF-ов очень мало. Или те же стековые манипуляторы... Одна из первых моих задачек в Forth была замена обычных IF-ов на дейкстровские if и do...
Тоже и про :-; , которые вполне могут кончится в первых блоках программы, уступив место Вами придуманным. Как, например, в Forth-ассемблерах.

И что нельзя выяснить где все эти IF запрятались? исходя из исходной модели знаний о Форт системе?
(даже если привлечь "динамику" кроме статического анализа, что скорее всего и делают продвинутые Lint)
А семантику, для сравнения, описать отдельно.

gudleifr писал(а):
KPG писал(а):
Пока на данном форуме обсуждается Форт в том виде как он понимается.
Открываем Броуди-TF, читаем... Или надо читать "понимается мною"?

Любое допущение, даже если оно частное, служит цели получения какого то полезного результата.

gudleifr писал(а):
KPG писал(а):
"Нигелирование" существа вопроса
или сведения обсуждения его к обсурду не способствует конструктивному диалогу.
Почему же? Reductio ad absurdum очень давно используется в логике доказательств.

И что будем Базаровыми?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Пт май 31, 2013 01:00 
KPG писал(а):
И что нельзя выяснить где все эти IF запрятались?

KPG писал(а):
даже если привлечь "динамику" кроме статического анализа

В общем случае задача доказуемо неразрешима.
Модно идти двумя путями:
1. как антивирусы/оптимизаторы - наступаем на очередную коровью лепешку, провешиваем обходной путь, идем дальше, пока опять не вляпаемся...
2. по Дейкстре - строим программу доказуемо правильным способом.
KPG писал(а):
И что будем Базаровыми?
Кирсанов нравится больше?


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Пт май 31, 2013 01:17 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
gudleifr писал(а):
KPG писал(а):
И что нельзя выяснить где все эти IF запрятались?

KPG писал(а):
даже если привлечь "динамику" кроме статического анализа

В общем случае задача доказуемо неразрешима.
Модно идти двумя путями:
1. как антивирусы/оптимизаторы - наступаем на очередную коровью лепешку, провешиваем обходной путь, идем дальше, пока опять не вляпаемся...
2. по Дейкстре - строим программу доказуемо правильным способом.

1. когда то может и по Дейкстре, если времени "вагон" для её построения и доказательства корректности.
2. используя простые понятные конструкции, которые можно "контролировать"

gudleifr писал(а):
KPG писал(а):
И что будем Базаровыми?
Кирсанов нравится больше?

Будем самими сабой.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Старая статья о разработке компилятора С++
СообщениеДобавлено: Пт май 31, 2013 01:20 
KPG писал(а):
1. когда то может и по Дейкстре, если времени "вагон" для её построения и доказательства корректности.
2. используя простые понятные конструкции, которые можно "контролировать"
(1) противоречит (2). И уж всяко, это будет не Forth "как он понимается".


Последний раз редактировалось gudleifr Пт май 31, 2013 01:29, всего редактировалось 1 раз.

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

Часовой пояс: UTC + 3 часа [ Летнее время ]


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11


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

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB