Страницы:Кликните, чтобы указать произвольную страницу12345далее
eCat: Какой язык программирования 100% формально "правильный"?
eCat
unregistered
Автор темы
Ответить
e
eCat unregisteredАвтор темы
17 лет назад / 05 ноября 2007 05:36
Например, в Паскале регулярно используется Continue, Break, Exit. Про Си вообще молчу. Есть ещё толпа никому не нужных ветеранов-инвалидов... Ну а есть ли вообще хоть где-то полностью структурный, дословный и недвусмысленный язык?
ВВ
Member
16/1073 ответов
23 года на iXBT, с февраля 2002
1 фото на iXBT.photo
Чаще пишет РІ "Общий" (21%)
Инфо Ответить
В
ВВ Member
17 лет назад / 05 ноября 2007 06:40
Так а ни кто не мешает не использовать Continue, Break, Exit, что в Паскале, что в Си.
eCat
unregistered
Автор темы
Ответить
e
eCat unregisteredАвтор темы
17 лет назад / 05 ноября 2007 06:51
ВВ
Они используются во всеобщей практике. А Си уж ничего не поможет.
mike_teplitsky
Member
273/3176 ответов, #13 в рейтинге
23 года на iXBT, с января 2002
Чаще пишет РІ "Общий" (23%)
США, Moscow/Russia, New Jersey/USA
Web-страница
Инфо Ответить
mike_teplitsky Member
17 лет назад / 05 ноября 2007 07:28
eCat
Точно, нафига эти continue и break. GOTO и все дела
Ipse
Member
4/116 ответов
20 лет на iXBT, с июля 2004
35 фото на iXBT.photo
Чаще пишет РІ "Политика" (56%)
Инфо Ответить
Ipse Member
17 лет назад / 05 ноября 2007 08:02
eCat
А Си уж ничего не поможет.
А вот спорим, что Си еще тебя переживет
eCat
unregistered
Автор темы
Ответить
e
eCat unregisteredАвтор темы
17 лет назад / 05 ноября 2007 08:18
mike_teplitsky
Они просто недоделанные псевдо-процедуры. Вот если бы это было
break[ N]; continue[ N]; exit;
N - вложенность.
Касательно return в Си: аргумент оператора в структурированном языке может относиться только к самим структурам.

Ipse
Он вообще мертворождён, как видно из его постоянной переделки.
БУзер
Member
23/470 ответов
21 год на iXBT, с ноября 2003
Чаще пишет РІ "Общий" (45%)
Инфо Ответить
Б
БУзер Member
17 лет назад / 05 ноября 2007 08:57
eCat
> Ну а есть ли вообще хоть где-то полностью структурный, дословный и недвусмысленный язык?
Ассемблер?
Burn
Member
316/8920 ответов
23 года на iXBT, с июля 2001
Чаще пишет РІ "Политика" (37%)
Инфо Ответить
B
Burn Member
17 лет назад / 05 ноября 2007 09:33
А шо есть формальное определение "правильного" языка?
eCat
unregistered
Автор темы
Ответить
e
eCat unregisteredАвтор темы
17 лет назад / 05 ноября 2007 10:25
Burn
С неущербным синтаксисом: без косноязычия, костылей, кренделей и т.п.
Burn
Member
317/8921 ответов
23 года на iXBT, с июля 2001
Чаще пишет РІ "Политика" (37%)
Инфо Ответить
B
Burn Member
17 лет назад / 05 ноября 2007 10:43
eCat
С неущербным синтаксисом: без косноязычия, костылей, кренделей и т.п.
А какой синтакси ущербный и кто решает что ушербное а что нет?
Самое главное - вы требуете соотвествие языка какомуто ФОРМАЛЬНОМУ критерию правильности, не имея этого ФОРМАЛЬНОГО критерия.
Сначала сформируйте его, сдделайте общеупотребительным а потом спрашивайте...
Но судя по тому что такого критерия до сих пор нет его просто невозможно сформулировать
rocker
Member
17/648 ответов
20 лет на iXBT, с июня 2004
Чаще пишет РІ "Общий" (40%)
Инфо Ответить
r
rocker Member
17 лет назад / 05 ноября 2007 11:04
любой Тьюринг-полный язык - 100% формально правильный.
Ipse
Member
5/117 ответов
20 лет на iXBT, с июля 2004
35 фото на iXBT.photo
Чаще пишет РІ "Политика" (56%)
Инфо Ответить
Ipse Member
17 лет назад / 05 ноября 2007 11:05
eCat
Он вообще мертворождён, как видно из его постоянной переделки.
Всем бы мертворожденным так долго жить как этому, самому востребованному в истории языку. И если уж на то пошло, то какие переделки вы имеете в виду ? Ну если только создание c++ считать за переделку
Dilmah
Member
143/2095 ответов
22 года на iXBT, с сентября 2002
19 фото на iXBT.photo
Чаще пишет РІ "Общий" (36%)
Аргентина
Web-страница
Инфо Ответить
D
Dilmah Member
17 лет назад / 05 ноября 2007 12:18
eCat
> Например, в Паскале регулярно используется Continue, Break, Exit.

ну если тебе так не нравятся циклы и выходы из них то их можно заменить рекурсией.

Удивлен что еще никто не упомянул lisp или scheme..
Vogt
Member
4436/19672 ответов, #42 в рейтинге
22 года на iXBT, с ноября 2002
Чаще пишет РІ "Наука" (36%)
Инфо Ответить
V
Vogt Member
17 лет назад / 05 ноября 2007 14:11
А каков критерий "правильности"? Есть много "чисто академических" языков, которые в некоторм смысле "правильные", но на практике не применяются. К уже упомянутым добавлю рефал, пролог, смолток.
Dark-Mind
Member
51/305 ответов
18 лет на iXBT, с августа 2006
18 фото на iXBT.photo
Чаще пишет РІ "Игры" (25%)
Инфо Ответить
Dark-Mind Member
17 лет назад / 05 ноября 2007 15:17
Правильный язык тот, который позволяет писать быстро и эффективно. ИМХО
А по поводу инвалидов-операторов, эт вы загибаете, все равно все от компилятора зависит, к тому же не на все случаи в жизни напасешься подходящих функций. Так что чтение-запись и GOTO.
RomanRA
unregistered
Ответить
R
RomanRA unregistered
17 лет назад / 05 ноября 2007 15:37
eCat

А чем Си так плох? Хотел заценить Ваш стиль программирования, набрался терпения и скачал-посмотрел все проекты. А там всё на Паскале .
Можно конкретику - чем так плох Си?
Sl@
Member
35/47 ответов
18 лет на iXBT, с января 2007
Инфо Ответить
S
Sl@ Member
17 лет назад / 05 ноября 2007 21:39
ха . машина тьюринга! =) нет никаких брейков , ни халтов, не экзитов
eCat
unregistered
Автор темы
Ответить
e
eCat unregisteredАвтор темы
17 лет назад / 06 ноября 2007 03:30
Burn
Vogt
RomanRA
Нормальный язык состоит из слов, которые описывают работу программы (логические и функциональные языки не рассматриваются). Критерий - в полноте описания.
Мне кажется, я пишу про понятные вещи. Пример.
1. for I := 1 to 10 do
2. for (I=1;I<=10;i++)
Второе - это просто тупая упаковка такого:
I := 1;
while I <= 10 do
begin
// гы
Inc(I);
end;
То есть, нормальный синтаксис отсуствует.
Это подход в стиле макро-ассемблера: вот тут мы поставим скобочку, а компиятор всё рассувает, как написано в инструкции к языку.
Уже написано про Break, Continue - это никак не может быть процедурами.

Ipse
Нет уж C++, все на C#.
mike_teplitsky
Member
274/3192 ответов, #13 в рейтинге
23 года на iXBT, с января 2002
Чаще пишет РІ "Общий" (23%)
США, Moscow/Russia, New Jersey/USA
Web-страница
Инфо Ответить
mike_teplitsky Member
17 лет назад / 06 ноября 2007 06:42
break continue return это еще туда-сюда. Я бы с гораздо большим удовольствием отказался от if.
Все зло в программировании идет от if
dozen
Member
324/5250 ответов
23 года на iXBT, с августа 2001
Чаще пишет РІ "Программирование" (78%)
Канада, СПб => Торонто => ?
Web-страница
Инфо Ответить
d
dozen Member
17 лет назад / 06 ноября 2007 06:49
eCat
Мне кажется, я пишу про понятные вещи.
Мне кажется, ты ничего в них не понимаешь. Модератор, перенеси тему в 26 форум, мы там этого чудика научим родину любить!
Duffel
unregistered
Ответить
D
Duffel unregistered
17 лет назад / 06 ноября 2007 07:31
eCat
С неущербным синтаксисом: без косноязычия, костылей, кренделей и т.п.

сначала 100% формально "правильно" объясните на русском языке, что хотели сказать этим.
косноязычие - это...;
костыль - это...;
крендель - это...
и объясните так, чтобы было полностью структурировано и недвусмысленно
Animiks
unregistered
Ответить
A
Animiks unregistered
17 лет назад / 06 ноября 2007 07:58
eCat
1. for I := 1 to 10 do
2. for (I=1;I<=10;i++)
Второе - это просто тупая упаковка такого:


Нет. Это разные циклы. Первый - это так называемый цикл с счётчиком, которого нет в Си. Второй - это цикл while, который да, более компактно записан, при помощи "for". В Паскале нет такой более компактной записи (не говорю, что это плохо).
eCat
unregistered
Автор темы
Ответить
e
eCat unregisteredАвтор темы
17 лет назад / 06 ноября 2007 09:42
mike_teplitsky
Клоунство - клей нашей BBS, да.

dozen
Ну, что же по существу скажем?

Duffel
Косноязычие - плохое построение, непоследовательное, неясная структура, неговорящие имена операторов.
Ксотыль - нарушение базовой идеологии языка, путём латания в ней дыр.
Крендель - затруднённый несбалансированный синтаксис при описании конструкций.

Animiks
более компактно записан
Не просто. Это некий универсальный конфигуратор цикла - кинжал под ребро лаконичности.
Alexander Gurov
Member
67/691 ответов
21 год на iXBT, с июля 2003
Чаще пишет РІ "Наука" (41%)
Украина, Kharkov
Инфо Ответить
A
Alexander Gurov Member
17 лет назад / 06 ноября 2007 09:52
eCat
ИМХО критерий Ваш того, левый.
Лично мне С-шный цикл очень удобен, к примеру частенько возникает необходимость вести параллельно два разных индекса - итератор и счетчик - вот такая форма записи очень приятно позволяет все оформить с учетом последствий от всяких break да continue. А вот возьмите и промоделируйте ту же ситуацию в Паскалевской нотации, приведенной Вами как пример "синтаксической корректности".
Mih-mih
Member
20/453 ответов
20 лет на iXBT, с марта 2004
385 фото на iXBT.photo
Чаще пишет РІ "Спорт" (40%)
Россия, Н.Новгород
Инфо Ответить
M
Mih-mih Member
17 лет назад / 06 ноября 2007 10:20
Полностью дословный и недвусмысленный - асм, разумеется
AleX_SPb
Member
228/3300 ответов
23 года на iXBT, с октября 2001
Чаще пишет РІ "Программирование" (17%)
Инфо Ответить
A
AleX_SPb Member
17 лет назад / 06 ноября 2007 10:28
eCat
Не обижайтесь, но мне это напомнило "Взять все и поделить!" И "Желаю, чтобы все" до кучи
Вы бы свою альтернативу представили... А мы рассмотрим, на предмет прямоязычности, бескостыльности и бескрендельности
Altid
Member
23/3816 ответов
20 лет на iXBT, с января 2005
Чаще пишет РІ "Общий" (55%)
Инфо Ответить
A
Altid Member
17 лет назад / 06 ноября 2007 11:00
Насколько я понимаю, под "правильным" понимается язык, удовлетворяющий т.н. "структурной теореме", допускающей только три базовые конструкции языка:
1) Следование (
2) Развилка (if-then-else)
3) Повторение (while)

Не возбраняется использовать разновидности этих конструкций (те же for или repeat-until сводятся к комбинации while и if).

Но с точки зрения структурного программирования НЕ допускается такая вещь, как безусловные переходы. Этим обусловлен неявный запрет на использование GOTO. Но упомянутые Exit, Continue и Break - разновидности того же goto (т.к. переход безусловный, просто метка перехода задана жестко), отсюда следует нежелательность и упомянутых конструкций тоже...
eCat
unregistered
Автор темы
Ответить
e
eCat unregisteredАвтор темы
17 лет назад / 06 ноября 2007 11:11
Alexander Gurov
вести параллельно два разных индекса - итератор и счетчик
Линейный итератор не грех вычислить. Если со скоростью так туго, решается другими методами. Или давайте красивый пример!
такая форма записи очень приятно позволяет все оформить с учетом последствий от всяких break да continue. А вот возьмите и промоделируйте ту же ситуацию в Паскалевской нотации
repeat .. until спасёт от Continue.

AleX_SPb
А мы рассмотрим, на предмет прямоязычности, бескостыльности и бескрендельности
Чем Паскаль с учётом Какой язык программирования 100% формально "правильный"?, #5 не подошёл?

Altid
упомянутые Exit, Continue и Break - разновидности того же goto (т.к. переход безусловный, просто метка перехода задана жестко), отсюда следует нежелательность
С чего бы? Думайте перед тем, как писать. Структура не нарушается.
Altid
Member
24/3817 ответов
20 лет на iXBT, с января 2005
Чаще пишет РІ "Общий" (55%)
Инфо Ответить
A
Altid Member
17 лет назад / 06 ноября 2007 11:30
eCat

Паскаль без упомянутых Вами конструкций - вполне подходит. К слову сказать, изначально этих конструкций в нем и не было.
А структуру нарушают любые безусловные переходы.
И если в языке оператор goto На_следующий_оператор_после_цикла заменили на "красивое" Break, суть-то не изменилась.
eCat
unregistered
Автор темы
Ответить
e
eCat unregisteredАвтор темы
17 лет назад / 06 ноября 2007 11:52
Altid
А структуру нарушают любые безусловные переходы.
Глупость. Вызов процедуры - безусловный переход. Чем отличается Exit?
Altid
Member
25/3818 ответов
20 лет на iXBT, с января 2005
Чаще пишет РІ "Общий" (55%)
Инфо Ответить
A
Altid Member
17 лет назад / 06 ноября 2007 12:05
eCat

Глупость - это как раз сравнение вызова процедуры с безусловным переходом.
Просто посмотрите принципы структуктурного программирования
eCat
unregistered
Автор темы
Ответить
e
eCat unregisteredАвтор темы
17 лет назад / 06 ноября 2007 12:45
Altid
Это не сравнение. Это констатация факта.
Просто посмотрите принципы структуктурного программирования
За ламака меня держите?
Often it is recommended that each loop should only have one entry point (and in the original structural programming, also only one exit point)
Но эстетствующие все уж как-то вымерли.
Роман П.
unregistered
Ответить
Р
Роман П. unregistered
17 лет назад / 06 ноября 2007 12:48
Самый крутой язык программирования класический Basic.
Altid
Member
26/3819 ответов
20 лет на iXBT, с января 2005
Чаще пишет РІ "Общий" (55%)
Инфо Ответить
A
Altid Member
17 лет назад / 06 ноября 2007 13:20
eCat
Но эстетствующие все уж как-то вымерли.

Позвольте, а как же тогда понимать первое сообщение в этой теме?
И вообще, я-то написал свое первое сообщение в Вашу поддержку, зачем Вы спорить-то кинулись?
Dilmah
Member
144/2103 ответов
22 года на iXBT, с сентября 2002
19 фото на iXBT.photo
Чаще пишет РІ "Общий" (36%)
Аргентина
Web-страница
Инфо Ответить
D
Dilmah Member
17 лет назад / 06 ноября 2007 14:10
eCat

пойди поговори с пацанами здесь: http://lambda-the-ultimate.org
Black_Dragon
Member
95/3001 ответов
22 года на iXBT, с марта 2002
Чаще пишет РІ "Политика" (58%)
Литва, Kaunas
Инфо Ответить
Black_Dragon Member
17 лет назад / 06 ноября 2007 14:13
Тогда самый правильный язык - ассемблер.
Ваш ответ:

Нет значка Нет значка Р’РѕС‚ тут! Лампочка Восклицание Р’РѕРїСЂРѕСЃ Класс! Улыбка Злость Огорчение РџРѕРіРѕРІРѕСЂРёРј? Краснею Подмигивание Ругаю РћРґРѕР±СЂСЏСЋBIUdelSxsupxsuboffsp spoilerqurlimgvideo• list1. list1 codeprecenter-hr-rusQWE→ЙЦУ
файлыочистить
Ваше имя: Авторизуйтесь Предпросмотр В полную форму
вставить выделенную цитату в окно ответа
Если Вы считаете это сообщение ценным для дискуссии (не обязательно с ним соглашаться), Вы можете поблагодарить его автора, а также перечислить ему на счет некоторую сумму со своего баланса (при отзыве благодарности перечисленная сумма не будет вам возвращена).
Также вы можете оценить сообщение как неудачное.
В течение суток можно 20 раз оценить сообщения разных участников (купите Premium-аккаунт, либо оплачивайте оценки сверх лимита).
Если Вы считаете это сообщение ценным для дискуссии (не обязательно с ним соглашаться), Вы можете поблагодарить его автора, а также перечислить ему на счет некоторую сумму со своего баланса (при отзыве благодарности перечисленная сумма не будет вам возвращена).
Также вы можете оценить сообщение как неудачное.
В течение суток можно 20 раз оценить сообщения разных участников (купите Premium-аккаунт, либо оплачивайте оценки сверх лимита).
Страницы:Кликните, чтобы указать произвольную страницу12345далее
Последние обсуждения в Конференции
13:49ИИ - осознание себя? ИИ
13:48Микроархитектура Lion Cove. Мобильные процессоры Intel Lunar Lake / десктопные LGA 1851 Arrow Lake Процессоры
13:48iXBT.photo в 2025-м году планируется закрыть. Просим перенести все свои фотографии на другие ресурсы как можно раньше (ранее: мелкие советы и предложения по улучшению фотогалереи) iXBT.com
13:48Кто-то хочет в СССР? История
13:48Украина после Евромайдана. Взгляд из России. Вход для лиц с русофобскими взглядами закрыт Политика
13:48Светодиодные лампы для дома и офиса Бытовая техника
13:47Fujifilm X-Pro, X-E, X-A, X-T, X-H - беззеркальные камеры со сменной оптикой и объективы Фуджи Фото
13:46Diablo IV (4). Релиз 06.06.2023! Игры
13:45Сисадминская курилка Администрирование
13:45Советская фантастика: что было хорошего и плохого Культура
13:44DAC (ЦАП) внешний: выбор и советы Стерео
13:44Давайте обсудим хорошее вино! Кулинария
13:44Formula 1 РЎРїРѕСЂС‚
13:44Что и почему взять на 27" сегодня? Мониторы
13:43Просыпается ноут из выключенного состояния, все советы из инета перепробовал. OС и сист. ПО
13:42Надежность хранения информации Накопители
13:41Выбор ресивера ДК аудио
13:39Не совсем старые ( до 2016 г.) компьютеры и комплектующие: обсуждение работы, использования и прочее. Тех. поддержка
13:37Nvidia GeForce RTX 5070/Ti, 5080, 5090 [Blackwell] Видеосистема
13:36 Биллибои против сонибоев. Сонибои против мариобоев. Мариобои против всех. И наоборот. Консоли
Последние темы без ответов
сегодняНеразрешимая проблема. Памагите люди добрыя)) Общий
сегодняLLM Qwen – возможности, опыт использования, ограничения ИИ
сегодняНе могу прошить UUID на материнской плате ASRock H55M-LE ни с помощью amidedos ни ее версии под Windows - осталось только слить дамп биоса, редактировать в HEX-редакторе и шить обратно? Тех. поддержка
вчера[Решено] Установил и успешно запустил пакет motion под OpenWRT, но не могу зайти на его админку и получить видеопоток с помощью VLC-плеера Unix
вчераDenon dcd-3000 ремонт Стерео
вчераLLM ChatGPT – возможности, опыт использования, ограничения ИИ
2 дняИИ шутит. ИИ
3 дняThecus 4560/2520 поиск прошивки. НАС
3 дняРоссийская инди-поп-музыка Культура
3 дняИИ-агенты - что, зачем, как... ИИ
13:43Создан твёрдый смазочный материал, снижающий трение во влажной среде
13:39В «Яндекс Музыке» запустили персональный рейтинг самых прослушиваемых артистов
13:32Замена Toyota Camry от 2,1 млн рублей. В России объявлены скидки на большой седан Dongfeng Aeolus Shine Max
13:24Разработан метод 3D-печати керамических структур размером 10 микрометров
13:08Полетели на пару недель, а задержались чуть ли не на год. Илон Маск пообещал скоро вернуть застрявших на МКС астронавтов и обвинил в задержке Байдена
12:56Учёные создали биоразлагаемый материал для 3D-печати из кофейных отходов и грибного мицелия
12:49Объявлены российские цены на кроссоверы KGM (SsangYong): гарантия 5 лет или 100 тыс. км, корейские моторы, японские автоматы, полностью русифицированное меню
12:48Важная веха в ядерной медицине: в России запатентовали новый способ разделения радия, актиния и тория
12:33В веб-версии «VK Видео» появился режим «Картинка в картинке»
12:32За Lada Iskra последует Lada Tigris? АвтоВАЗ запатентовал новую торговую марку
20+ лет назад в этот день обсуждали
2002Siemens s35i & зарядка... Моб. телефоны
2002Как перейти из конфигурации "Торговля и Склад" 8.7 в 9.0 Прикладное ПО
2002Блин!Еще одна проблема, как узнать размер файла лежащего на другом сервере с помощью PHP??? Интернет
2002tdk cyclone 241040 Оптич. носители
2003Что лучше рессивер или усилитель? Цифр.звук
2003Увеличение пропускной способности сети за счёт 2-х сетевух Сети
2003разгон PowerColor 8500 vivo через биос Разгон
2003Решил купить подержаный КПК в Германии или Франции: где засады Планшеты
2003А если так запускать БП ATX он будет работать ? Эл. устройства
2004Питерцы, подскажите ссылки на ваши интернет магазины, где можно оргтехнику купить Общий