Pull to refresh

Comments 47

UFO just landed and posted this here
А я вот нихрена не понял
UFO just landed and posted this here
В 80-х начали, в 2002 забросили… В общем, конечно, круто, но разве есть будущее у этого проекта?
Ну как видите начали же заниматься вновь :)
Forth до сих пор развивается, а они похожи.
Так что посмотрим…
всё новое — хорошо забытое старое )
ммм… а что здесь новое и что здесь старое?
имелось ввиду что о ДССП сейчас мало кому известно (старое и забытое), но при желании можно развить (поднять и отряхнуть так сказать) и получить нечто новое :) как то так…
Пока что это напоминает раскопки динозавров =)
Как ни крути, новым это сложно назвать.
Языки очень близки, но есть и отличия.
Свои слова.
ДССП позволяет любой порядок определения слов.
На язык сильное влияние оказала ранее разработанная «Сетунь-70».
Объясните на пальцах.

Функция F1 должна вычислять значение по формуле 3*X*X-4*X+2

Реализация в ДССП выглядит, согласно статье, так

: F1 [X] C [X,X] 3 * [X,3*X] 4 — [X,3*X-4] * [3*X*X-4*X] 2 + [3*X*X-4*X+2];

Вопрос — что значит весь оверхед «C [X,X] 3 * [X,3*X] 4 — [X,3*X-4] * [3*X*X-4*X] 2 +» и для чего он нужен?
: — дальше будет определение
F1 — название
[X] — комментарий, в стеке предполагается наличие числа X
C — продублировать вершину стека
[X,X] — комментарий, в стеке теперь два числа X
3 — занести в стек число 3
* — перемножить стек (вершина с подвершиной) = 3*X
и т.д.
; — конец определения
А хде у вас X*X считается? C 3 * => C* 3*?
По-идее * действует только на 2 операнда на стеке
Об этом преобразовании (я так понимаю для уменьшения числа операций умножения) надо было в статье написать. А то вообще, не язык а загадка получается.
А как этот переход реализован:
[A0,X,A2*X+A1] * + [A2*X*X-A1*X+A0];
?
Первое умножение должно привести к
[A0,X(A2*X+A1)] = [A0,A2*X*X+A1*X]
Сложение — к
[A2*X*X+A1*X+A0]
Откуда там минус-то?
ффффтопку
долго долго бить за такой синтаксис
алсо напомнило вот это: forum.ixbt.com/topic.cgi?id=26:39074
Только не говорите этого FORTH-программистам ;)
то что синтаксис лучше Форта, это конечно большое достижение, но где сейчас Форт?
В embedded. И это вам не сайтики клепать на пехапе и не ГУИ рисовать в дельфях.
вы говорите так, будто это что-то плохое

зачем сравнивать зеленое с холодным? каждому языку свою нишу: пехапе — лидер области сайтиков, дельфи — бывший лидер в гуях, а куда метят сабжевые аббревиатуры?
> вы говорите так, будто это что-то плохое

Не надо форсить этот дурацкий мем, мы тут ведем техническую дискуссию, а не обмен словосочетаниями, не так ли?

> зачем сравнивать зеленое с холодным?

Ваш вопрос был о том, где сейчас Форт. Я и ответил, где же он. Еще вопросы будут?

> а куда метят сабжевые аббревиатуры?

Сабж нужен для развития мышления. Также, как математика, Лисп, etc.
>Ваш вопрос был о том, где сейчас Форт. Я и ответил, где же он. Еще вопросы будут?
с первого ответа я поверил что форт крайне актуален в embedded и ни разу не подвергаю это сомнению. Но именно ВЫ сравнили ДССП с дельфи и пехапе, я же выразил сомнение в корректности сравнения.

математика актуальна всегда, лисп живет и здравствует уже пол века, а ДССП умер вскоре после рождения и сейчас непонятно зачем его пытаются воскресить

>для развития мышления
брайнфак тоже неплохо расширяет сознание

А если серьезно, не понимаю, как логика программируемого калькулятора поможет мне развить мышление
> Но именно ВЫ сравнили ДССП с дельфи и пехапе, я же выразил сомнение в корректности сравнения.

Из каких моих слов можно вывести сравнение ДССП с дельфи и пхп? Это я Форт с ними сравнивал. Программирование встраиваемых систем (особенно hard realtime) требует очень сильной подготовки, чего не скажешь о веб-программировании и GUI (хотя и тут подготовка тоже не помешает, но барьер входа очень низкий все-таки).

> математика актуальна всегда, лисп живет и здравствует уже пол века

Лисп как раз таки не «мертвее обычного». ;) (ни в коем случае не следует расценивать это как «лисп не нужен»)

> а ДССП умер вскоре после рождения

В статье написано, что появился он в конце 60-х, а «помер» в 2002.

> и сейчас непонятно зачем его пытаются воскресить

Это мешает вам жить?

> А если серьезно, не понимаю, как логика программируемого калькулятора поможет мне развить мышление

А как алгебра помогает развить мышление? Как помогает формальная логика, теория типов или еще там что?
>барьер входа очень низкий все-таки
а вы не думали, что на высоту этого самого барьера синтаксис и философия языка оказывают самое непосредственное влияние?

>Из каких моих слов можно вывести сравнение ДССП с дельфи и пхп?
Я думал в этой теме обсуждается ДССП а не форт

я не специалист в форте и судить о том, «где он сейчас» могу только так (g):
12 100 для требуется forth
191 000 для требуется delphi
6 540 000 для требуется php
nuff said

>А как алгебра помогает развить мышление? Как помогает формальная логика, теория типов или еще там что?
и каким образом алгебра относится к развитию мышления изучением ДССП?
перефразируя ваше утверждение:
ешьте горькое потому, что яблоки сладкие
> а вы не думали, что на высоту этого самого барьера синтаксис и философия языка оказывают самое непосредственное влияние?

В этом нет ничего страшного. Если язык позволяет писать более качественное ПО, то выбирать нужно именно его.

> Я думал в этой теме обсуждается ДССП а не форт

Не надо демагогии. Вы упомянули Форт, а я вас поправил, исключительно fgj.

> я не специалист в форте и судить о том, «где он сейчас» могу только так (g):

Эти цифры мало значат. Найти Форт-программиста для embedded невероятно трудно (спрос есть, а предложения нет), поэтому они больше ценятся.

> и каким образом алгебра относится к развитию мышления изучением ДССП?

Как этот вопрос относится к теме разговора?

РАЯ является конкатенативным языком программирования, и каждый программист должен знать хотя бы один такой язык, чтобы поменьше бултыхаться в локальном экстремуме. Если это, конечно, программист.

> перефразируя ваше утверждение: ешьте горькое потому, что яблоки сладкие

Как вы вывели это из моего утверждения?
В статье говорится, что язык призван уменьшить количество ошибок, но я вот плохо понимаю как этому будет способоствовать такая запись.
Неужели это:
: F1 C 3 * 4 — * 2 +;
читается проще, чем, например:
F1 = lambda(x): 3*X**2 — 4*X + 2
Да, присоединяюсь к вопросу. Как язык с таким синтаксисом «призван уменьшить трудоемкость, повысить надежность и обеспечить широкую доступность программирования»?
К синтаксису быстро привыкаешь.
Вспомните калькуляторы МК на которых также записывали выражения в ПОЛИЗ.
И FORTH, и такие функциональные языки как Haskell тоже тому подтверждение.
Уменьшить трудоемкость, повысить надежность и обеспечить широкую доступность программирования в первую очередь за счёт подхода — структурированного программирования.
То есть, это «структурированное» программирование на самом деле есть функциональное, с каким-то дюже низким уровнем — чуть ли не напрямую идет работа со стеком… А работа со стеком никогда не была интуитивной и удобной для пользователя — постоянно нужно думать что у нас на вершине, какая глубина, в какой последовательности чего мы там засовывали. В функциональном подходе, эта проблема, конечно, сглажена, но всё же…

Языки уже дошли до именованных параметров, когда даже не имеет значение последовательность параметров. Это и позволяет «уменьшить трудоемкость, повысить надежность и обеспечить широкую доступность программирования».

А тут — стек. Хорошо хоть отдельных регистров для сложения/умножения/деления нету.
Про стек верно.
Какие «плюшки» есть в ДССП по этому поводу:
1. Используется нисходящее программирование,
начинается с конченой цели и постепенно работа разбивается на всё более мелкие части, которые элементарно тестируются отдельно.
2. Есть именованные параметры.
Может конечно я плохо читаю, но статья получилась скорее об этом самом РАЯ, чем о ДССП.
Пошел гуглить СП.
Статья про структурированное программирование :)
ДССП это что-то вроде gcc+ide только для РАЯ.
Это — особый костям для мазохиста?

По-моему это мазохизм, аналогичный lisp`у.

Либо мой умишко не охватывает всей красоты и волшебства.
перечитал еще раз этот рекламный буклет
язык позиционируется как более высокоуровневая альтернатива ассемблеру. на 60-й год это, безусловно, был бы прорыв, НО! прогресс ушел далеко вперед

также я не увидел сравнения вашего языка с парочкой конкурентов.
легкость освоения,
значительное повышение производительности труда программиста и качества создаваемых программ, развиваемость,
адаптивность,
мобильность. Все это конечно хорошо, но хотелось бы увидеть в цифрах, иначе это пустые слова
Ожидал увидеть структурный синтез программ :-(
>Базовый язык ДССП — Развиваемый Адаптивный Язык (РАЯ)
До шестого класса я считал Райбольницу как райскую больницу )))
Одному мне стиль изложения напомнил курсовые и диплом? Как будто выдрали куски текста из другого (других) источника и слегка сгладили стыки. Введение, примеры, заключение. Все быстро, поверхностно, при этом с ненужными подробностями и нифига не понятно, если не полезть по ссылкам. С таким же успехом можно было просто ссылки привести.

Развиваемый Адаптивный Язык (РАЯ) — оказывается был (есть) не только язык Ада но и Рая :)

«ДССП была призвана уменьшить трудоемкость, повысить надежность и обеспечить широкую доступность программирования путем систематического внедрения дисциплины структурированного программирования в сочетании с диалоговым режимом и нетрадиционной архитектурой системы, базирующейся на стеках, словаре и процедурном коде.» — А можно простыми словами, без академического зубодробительства, в чем оригинальность подхода, сферы использования, преимущества перед аналогами (если есть)?
UFO just landed and posted this here
Only those users with full accounts are able to leave comments. Log in, please.