Например, в Паскале регулярно используется Continue, Break, Exit. Про Си вообще молчу. Есть ещё толпа никому не нужных ветеранов-инвалидов... Ну а есть ли вообще хоть где-то полностью структурный, дословный и недвусмысленный язык?
Главная iXBT.com Конференция Блоги Games Видео Market Prosound ПроБизнес РегистрацияВойти | |
eCat unregistered Автор темы | Например, в Паскале регулярно используется Continue, Break, Exit. Про Си вообще молчу. Есть ещё толпа никому не нужных ветеранов-инвалидов... Ну а есть ли вообще хоть где-то полностью структурный, дословный и недвусмысленный язык? |
ВВ Member 16/1073 ответов 23 года на iXBT, с февраля 2002 1 фото РЅР° iXBT.photo Чаще пишет РІ "Общий" (21%) | Так а ни кто не мешает не использовать Continue, Break, Exit, что в Паскале, что в Си. |
eCat unregistered Автор темы | ВВ Они используются во всеобщей практике. А Си уж ничего не поможет. |
mike_teplitsky Member 273/3176 ответов, #13 РІ рейтинге 23 года на iXBT, с января 2002 Чаще пишет РІ "Общий" (23%) США, Moscow/Russia, New Jersey/USA Web-страница | eCat Точно, нафига эти continue и break. GOTO и все дела |
Ipse Member 4/116 ответов 20 лет на iXBT, с июля 2004 35 фото РЅР° iXBT.photo Чаще пишет РІ "Политика" (56%) | eCat А Си уж ничего не поможет. А вот спорим, что Си еще тебя переживет |
eCat unregistered Автор темы | mike_teplitsky Они просто недоделанные псевдо-процедуры. Вот если бы это было break[ N]; continue[ N]; exit; N - вложенность. Касательно return в Си: аргумент оператора в структурированном языке может относиться только к самим структурам. Ipse Он вообще мертворождён, как видно из его постоянной переделки. |
БУзер Member 23/470 ответов 21 год на iXBT, с ноября 2003 Чаще пишет РІ "Общий" (45%) | eCat > Ну а есть ли вообще хоть где-то полностью структурный, дословный и недвусмысленный язык? Ассемблер? |
Burn Member 316/8920 ответов 23 года на iXBT, с июля 2001 Чаще пишет РІ "Политика" (37%) | А шо есть формальное определение "правильного" языка? |
eCat unregistered Автор темы | Burn С неущербным синтаксисом: без косноязычия, костылей, кренделей и т.п. |
Burn Member 317/8921 ответов 23 года на iXBT, с июля 2001 Чаще пишет РІ "Политика" (37%) | eCat С неущербным синтаксисом: без косноязычия, костылей, кренделей и т.п. А какой синтакси ущербный и кто решает что ушербное а что нет? Самое главное - вы требуете соотвествие языка какомуто ФОРМАЛЬНОМУ критерию правильности, не имея этого ФОРМАЛЬНОГО критерия. Сначала сформируйте его, сдделайте общеупотребительным а потом спрашивайте... Но судя по тому что такого критерия до сих пор нет его просто невозможно сформулировать |
rocker Member 17/648 ответов 20 лет на iXBT, с июня 2004 Чаще пишет РІ "Общий" (40%) | любой Тьюринг-полный язык - 100% формально правильный. |
Ipse Member 5/117 ответов 20 лет на iXBT, с июля 2004 35 фото РЅР° iXBT.photo Чаще пишет РІ "Политика" (56%) | eCat Он вообще мертворождён, как видно из его постоянной переделки. Всем бы мертворожденным так долго жить как этому, самому востребованному в истории языку. И если уж на то пошло, то какие переделки вы имеете в виду ? Ну если только создание c++ считать за переделку |
Dilmah Member 143/2095 ответов 22 года на iXBT, с сентября 2002 19 фото РЅР° iXBT.photo Чаще пишет РІ "Общий" (36%) Аргентина Web-страница | eCat > Например, в Паскале регулярно используется Continue, Break, Exit. ну если тебе так не нравятся циклы и выходы из них то их можно заменить рекурсией. Удивлен что еще никто не упомянул lisp или scheme.. |
Vogt Member 4436/19672 ответов, #42 РІ рейтинге 22 года на iXBT, с ноября 2002 Чаще пишет РІ "Наука" (36%) | А каков критерий "правильности"? Есть много "чисто академических" языков, которые в некоторм смысле "правильные", но на практике не применяются. К уже упомянутым добавлю рефал, пролог, смолток. |
Dark-Mind Member 51/305 ответов 18 лет на iXBT, с августа 2006 18 фото РЅР° iXBT.photo Чаще пишет РІ "Игры" (25%) | Правильный язык тот, который позволяет писать быстро и эффективно. ИМХО А по поводу инвалидов-операторов, эт вы загибаете, все равно все от компилятора зависит, к тому же не на все случаи в жизни напасешься подходящих функций. Так что чтение-запись и GOTO. |
RomanRA unregistered | eCat А чем Си так плох? Хотел заценить Ваш стиль программирования, набрался терпения и скачал-посмотрел все проекты. А там всё на Паскале Можно конкретику - чем так плох Си? |
Sl@ Member 35/47 ответов 18 лет на iXBT, с января 2007 | ха . машина тьюринга! =) нет никаких брейков , ни халтов, не экзитов |
eCat unregistered Автор темы | 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-страница | break continue return это еще туда-сюда. Я бы с гораздо большим удовольствием отказался от if. Все зло в программировании идет от if |
dozen Member 324/5250 ответов 23 года на iXBT, с августа 2001 Чаще пишет РІ "Программирование" (78%) Канада, СПб => Торонто => ? Web-страница | eCat Мне кажется, я пишу про понятные вещи. Мне кажется, ты ничего в них не понимаешь. |
Duffel unregistered | eCat С неущербным синтаксисом: без косноязычия, костылей, кренделей и т.п. сначала 100% формально "правильно" объясните на русском языке, что хотели сказать этим. косноязычие - это...; костыль - это...; крендель - это... и объясните так, чтобы было полностью структурировано и недвусмысленно |
Animiks unregistered | eCat 1. for I := 1 to 10 do 2. for (I=1;I<=10;i++) Второе - это просто тупая упаковка такого: Нет. Это разные циклы. Первый - это так называемый цикл с счётчиком, которого нет в Си. Второй - это цикл while, который да, более компактно записан, при помощи "for". В Паскале нет такой более компактной записи (не говорю, что это плохо). |
eCat unregistered Автор темы | mike_teplitsky Клоунство - клей нашей BBS, да. dozen Ну, что же по существу скажем? Duffel Косноязычие - плохое построение, непоследовательное, неясная структура, неговорящие имена операторов. Ксотыль - нарушение базовой идеологии языка, путём латания в ней дыр. Крендель - затруднённый несбалансированный синтаксис при описании конструкций. Animiks более компактно записан Не просто. Это некий универсальный конфигуратор цикла - кинжал под ребро лаконичности. |
Alexander Gurov Member 67/691 ответов 21 год на iXBT, с июля 2003 Чаще пишет РІ "Наука" (41%) Украина, Kharkov | eCat ИМХО критерий Ваш того, левый. Лично мне С-шный цикл очень удобен, к примеру частенько возникает необходимость вести параллельно два разных индекса - итератор и счетчик - вот такая форма записи очень приятно позволяет все оформить с учетом последствий от всяких break да continue. А вот возьмите и промоделируйте ту же ситуацию в Паскалевской нотации, приведенной Вами как пример "синтаксической корректности". |
Mih-mih Member 20/453 ответов 20 лет на iXBT, с марта 2004 385 фото РЅР° iXBT.photo Чаще пишет РІ "Спорт" (40%) Россия, Н.Новгород | Полностью дословный и недвусмысленный - асм, разумеется |
AleX_SPb Member 228/3300 ответов 23 года на iXBT, с октября 2001 Чаще пишет РІ "Программирование" (17%) | eCat Не обижайтесь, но мне это напомнило "Взять все и поделить!" Вы бы свою альтернативу представили... А мы рассмотрим, на предмет прямоязычности, бескостыльности и бескрендельности |
Altid Member 23/3816 ответов 20 лет на iXBT, с января 2005 Чаще пишет РІ "Общий" (55%) | Насколько я понимаю, под "правильным" понимается язык, удовлетворяющий т.н. "структурной теореме", допускающей только три базовые конструкции языка: 1) Следование ( 2) Развилка (if-then-else) 3) Повторение (while) Не возбраняется использовать разновидности этих конструкций (те же for или repeat-until сводятся к комбинации while и if). Но с точки зрения структурного программирования НЕ допускается такая вещь, как безусловные переходы. Этим обусловлен неявный запрет на использование GOTO. Но упомянутые Exit, Continue и Break - разновидности того же goto (т.к. переход безусловный, просто метка перехода задана жестко), отсюда следует нежелательность и упомянутых конструкций тоже... |
eCat unregistered Автор темы | Alexander Gurov вести параллельно два разных индекса - итератор и счетчик Линейный итератор не грех вычислить. Если со скоростью так туго, решается другими методами. Или давайте красивый пример!такая форма записи очень приятно позволяет все оформить с учетом последствий от всяких break да continue. А вот возьмите и промоделируйте ту же ситуацию в Паскалевской нотации repeat .. until спасёт от Continue.AleX_SPb А мы рассмотрим, на предмет прямоязычности, бескостыльности и бескрендельности Чем Паскаль с учётом Какой язык программирования 100% формально "правильный"?, #5 не подошёл?Altid упомянутые Exit, Continue и Break - разновидности того же goto (т.к. переход безусловный, просто метка перехода задана жестко), отсюда следует нежелательность С чего бы? Думайте перед тем, как писать. Структура не нарушается. |
Altid Member 24/3817 ответов 20 лет на iXBT, с января 2005 Чаще пишет РІ "Общий" (55%) | eCat Паскаль без упомянутых Вами конструкций - вполне подходит. К слову сказать, изначально этих конструкций в нем и не было. А структуру нарушают любые безусловные переходы. И если в языке оператор goto На_следующий_оператор_после_цикла заменили на "красивое" Break, суть-то не изменилась. |
eCat unregistered Автор темы | Altid А структуру нарушают любые безусловные переходы. Глупость. Вызов процедуры - безусловный переход. Чем отличается Exit? |
Altid Member 25/3818 ответов 20 лет на iXBT, с января 2005 Чаще пишет РІ "Общий" (55%) | eCat Глупость - это как раз сравнение вызова процедуры с безусловным переходом. Просто посмотрите принципы структуктурного программирования |
eCat unregistered Автор темы | 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 | Самый крутой язык программирования класический Basic. |
Altid Member 26/3819 ответов 20 лет на iXBT, с января 2005 Чаще пишет РІ "Общий" (55%) | eCat Но эстетствующие все уж как-то вымерли. Позвольте, а как же тогда понимать первое сообщение в этой теме? И вообще, я-то написал свое первое сообщение в Вашу поддержку, зачем Вы спорить-то кинулись? |
Dilmah Member 144/2103 ответов 22 года на iXBT, с сентября 2002 19 фото РЅР° iXBT.photo Чаще пишет РІ "Общий" (36%) Аргентина Web-страница |
Black_Dragon Member 95/3001 ответов 22 года на iXBT, с марта 2002 Чаще пишет РІ "Политика" (58%) Литва, Kaunas | Тогда самый правильный язык - ассемблер. |