OberonCore https://forum.oberoncore.ru/ |
|
Обсуждение проекта PureBuilder https://forum.oberoncore.ru/viewtopic.php?f=93&t=3133 |
Страница 7 из 7 |
Автор: | Владислав Жаринов [ Среда, 19 Январь, 2011 19:15 ] |
Заголовок сообщения: | Re: Параллельное программирование в системе формализации дея |
Сергей Прохоренко писал(а): Я против макросов (кроме случаев, когда они являются по сути частью компилятора, как в Си), перегрузки операторов и подобных им трюков. Код должен исполняться так, как он выглядит при создании, а не так, как он будет выглядеть после обработки. В противном случае программист может легко ошибиться. Да и с точки зрения идеологии PureBuilder - структурный, а не текстовый редактор. В нем зрительный образ, отражающий семантику программы, - самое главное, а внутреннее представление - вещь второстепенная. Вот это где-то и мне близко... как раз хотелось бы давать "зрительный образ макросов компилятора".
Мода приходит и уходит. |
Автор: | Владислав Жаринов [ Пятница, 28 Январь, 2011 10:36 ] |
Заголовок сообщения: | Структура документа редактора |
Про зрительный образ и внутреннее представление кое-что вырисовывается - см. здесь - конечно, также на качественном уровне. В принципе как результат определения ПК-языка и (предварительно) АТ-языка. |
Автор: | Валерий Лаптев [ Среда, 02 Февраль, 2011 11:43 ] |
Заголовок сообщения: | Re: Обсуждение проекта PureBuilder |
Только сейчас обратил внимание. Среди перечисленных парадигм: структурное программирование и процедурное программирование. Чем отличаются с вашей точки зрения? ИМХО, структурное уже пора перестать выделять в отдельную парадигму, а просто по умолчанию поддерживать - чтоб по-другому и писАть нельзя было. |
Автор: | Сергей Прохоренко [ Среда, 02 Февраль, 2011 13:02 ] |
Заголовок сообщения: | Re: Обсуждение проекта PureBuilder |
Валерий Лаптев писал(а): Только сейчас обратил внимание. Среди перечисленных парадигм: структурное программирование и процедурное программирование. Чем отличаются с вашей точки зрения? ИМХО, структурное уже пора перестать выделять в отдельную парадигму, а просто по умолчанию поддерживать - чтоб по-другому и писАть нельзя было. Процедурное программирование Можно написать программу без операторов присваивания, в которой будут только вызывы функций, в т.ч. рекурсия. Такая программа не будет соответствовать процедурному программированию, как и программа на Prolog'е. Структурное программирование Мне представляется, что структурное программирование - это разновидность процедурного, в которой для передачи управления (когда инструкции не выполняются последовательно) используются вложенные блоки кода с одним входом и одним выходом в каждом блоке. Альтернативой является не только оператор goto и операторы досрочного выхода (что порицается и должно быть лишено поддержки в синтаксисе), но и функциональное (как подвариант - логическое) программирование с рекурсией, без побочных эффектов, без операторов присваивания и по-возможности без переменных (особенно глобальных и статических) (что при правильном применении одобряется). А лишний раз напомнить про стркутурное программирование, мне кажется, полезно. |
Автор: | Madzi [ Четверг, 03 Февраль, 2011 13:24 ] |
Заголовок сообщения: | Re: Обсуждение проекта PureBuilder |
Процедурное программирование - это выделение часто повторяемых участков кода в обособленные сущености - подпрограммы. Выполнялось это в основном из-за необходимости экономии памяти под программу. В последствии, стали выделять не только повторяющиеся куски, но и код выполняющий некоторые осмысленные действия. Так появились процедуры и функции. Структурное программирование - когда код структурируется по смыслу и содержанию. Существуют условные и безусловные управляющие структуры. Каждая структура характеризуется определённой осмысленной операцией. Структурное программирование может быть с использованием процедур, а может быть и без него. |
Автор: | Сергей Прохоренко [ Четверг, 03 Февраль, 2011 15:29 ] |
Заголовок сообщения: | Re: Обсуждение проекта PureBuilder |
Madzi писал(а): Процедурное программирование - это выделение часто повторяемых участков кода в обособленные сущености - подпрограммы. Выполнялось это в основном из-за необходимости экономии памяти под программу. В последствии, стали выделять не только повторяющиеся куски, но и код выполняющий некоторые осмысленные действия. Так появились процедуры и функции. Это определение лучше того, которое сейчас в Википедии. |
Автор: | Galkov [ Понедельник, 07 Февраль, 2011 11:07 ] |
Заголовок сообщения: | Re: Обсуждение проекта PureBuilder |
И что занимательно, никто толком не говорит, каковым по качеству действием является выделение "куска кода" в подпрограмму. Это действие интерфейсное, предназначенное для лучшего понимания/читаемости ??? Или это есть действие по оптимизации, влияющее на качество выходного кода ??? В принципе, совершенно два разных "действия". |
Автор: | Сергей Прохоренко [ Понедельник, 07 Февраль, 2011 22:13 ] |
Заголовок сообщения: | Re: Обсуждение проекта PureBuilder |
Galkov писал(а): И что занимательно, никто толком не говорит, каковым по качеству действием является выделение "куска кода" в подпрограмму. Это действие интерфейсное, предназначенное для лучшего понимания/читаемости ??? Или это есть действие по оптимизации, влияющее на качество выходного кода ??? В принципе, совершенно два разных "действия". Первое. Всё для человека. |
Автор: | Galkov [ Вторник, 08 Февраль, 2011 17:10 ] |
Заголовок сообщения: | Re: Обсуждение проекта PureBuilder |
Присоединяюсь. Такое решение мне представляется наиболее перспективным. Следовательно, решение как сие устраивать в кодах: как процедуру, или как инлайн - святая обязанность компилятора. И никого больше. И тут мы ненавязчиво вступаем в противоречие с концепцией "тонкого интеллектуального слоя". Которая, конечно же, имеет право на жизнь, ИМХО Как компромисс. Который длится уже не первое десятилетие |
Автор: | Сергей Прохоренко [ Вторник, 08 Февраль, 2011 17:30 ] |
Заголовок сообщения: | Re: Обсуждение проекта PureBuilder |
Galkov писал(а): Присоединяюсь. Такое решение мне представляется наиболее перспективным. Следовательно, решение как сие устраивать в кодах: как процедуру, или как инлайн - святая обязанность компилятора. И никого больше. И тут мы ненавязчиво вступаем в противоречие с концепцией "тонкого интеллектуального слоя". Которая, конечно же, имеет право на жизнь, ИМХО Как компромисс. Который длится уже не первое десятилетие Ну, мы можем намекнуть компилятору, если захотим. Он ведь не знает, как часто будет вызываться процедура. А что такое концепция "тонкого интеллектуального слоя"? |
Страница 7 из 7 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |