Перейти к содержанию
    

Печально :(

 

Мне вот другое печально.

Не поленился, слазил на E-LAB - оказываеццо, они обновились 20 октября с.г.

Ну, скачал демку, поставил, гляжу. Впечатления:

0. Если это Паскаль, то я тоже - Паскаль. Блез. :( Столько расширений языка, вместо того, чтобы через библиотеку встроенных функций делать казалось бы полезные вещи - тут тебе и мультитреды, и прерывания... Т.е. играют нечестно, присаживая на свой продукт даже непонятно кого.

1. СтОит коммерческая нехило - под 500 ойро

2. Фичи все из разряда обучалок.

3. Про код пока ничего не понимаю - надо надуться на тест...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Т.е. играют нечестно, присаживая на свой продукт даже непонятно кого.

Увы :(, это обычное явление....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я же давал ссылку, там прямо написано:

- настоящие программисты не боятся использовать GOTO;

Извини, но в первом сообщении написано "я постоянно использую goto". Согласись, между "постоянно использовать" и "не бояться использовать" дистанция огромного размера.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Извини, но в первом сообщении написано "я постоянно использую goto". Согласись, между "постоянно использовать" и "не бояться использовать" дистанция огромного размера.

 

Согласен, один-один :smile3009:

 

На самом деле, конечно, все что можно выполнить без goto не в ущерб производительности - выполняется без goto. Я это к тому, что не имеет смысла изобретать какие-то костыли, типа флагов для выхода из вложенных циклов, если проще написать goto (написав рядом с ним камент, нафига это сделано для "ненастоящих программистов", которые, может быть, будут разбираться в этом исходнике).

 

Например, банальная ситуация, в которой есть смысл использовать goto:

switch(var)
{
case 1:
   ....code1....
   break;
case 2:
   ....code2....
   goto L_DEF;
case 3:
   ....code3....
   break;
case 4:
   ....code4....
   break;
case 5:
   ....code5....
   goto L_DEF;
case 6:
   ....code6....
   goto L_DEF;
....
default:
L_DEF:
  ....postcode....
  break;
}

 

А если альтернатив посткода не как в примере, есть код или нету кода, а три разных посткода? Тогда без goto надо лепить кучу флагов, чего делать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Например, банальная ситуация, в которой есть смысл использовать goto:

Приведу прием, авось кому пригодиться, как в некоторых случаях можно избавиться от goto :)

Если есть ситуация при которой надо выйти из линейно-выполняемого участка кода (а такая возникает довольно часто при разборе протоколов с непостоянной длиной хидера):

 

.....
if ( x ) goto end;
....
if ( y ) goto end;
..
end:

 

вместо goto и метки можно воспользоваться любым оператором цикла и break, производительность от этого не пострадает.

 

do
{
     .....
     if ( x ) break;
     ....
     if ( y ) break;
     ..
} while (0);

 

а смотреться будет, на мой взгляд красивше нагляднее.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2. Фичи все из разряда обучалок.

 

Попался созданный учебный материал

ОСНОВЫ ПРОГРАММИРОВАНИЯ МИКРОКОНТРОЛЛЕРОВ ATMEGA128 И 68HC908

 

http://books.ifmo.ru/book/pdf/227.pdf

 

P.S. Примеры на Pascal E-Lab:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

do
{
     .....
     if ( x ) break;
     ....
     if ( y ) break;
     ..
} while (0);

 

а смотреться будет, на мой взгляд красивше нагляднее.

 

Как раз смотреться он будет очень искусственно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как раз смотреться он будет очень искусственно.

 

Да пофиг, как оно будет смотреться. Это просто очередной способ из 628 способов избавится от goto. 99% этих способов сводится к использованию break и continue в цикле. Итого, в принципе, можно изготовить 2 альтернативы кода по выходу - делать (по continue, используя код в условии через запятые) или не делать (по break). А если альтернатив кода три - например, два разных куска кода и ничего не выполнять?

 

Да и еще, про if с брейком - если такой рукопашный switch содержит более десятка вариантов, он становится весьма нечитаем, а если эти варианты суть n,n+1,...,n+m и их много - совершенно не факт, что компилятор асилит изготовление таблички.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Попался созданный учебный материал

Мда. Посмотрел. Авторов - принудить к эвтаназии за изысканный стиль программирования.

А тут говорят про то, шо студент и молодой спец нынче тупой пошел. А какой он будет - после такой лоботомии?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

гм. А что такое Perl? не скриптовый клон паскаля часом, а? :)
Ой, где такую траву дают? Я тоже хочу!

 

Или скажите мне, что надо курить или сколько выпить, что бы вот ЭТО стало похожим на Pascal :1111493779:

 

 

use strict;
use SOAP::Lite;
use Data::Dumper; $Data::Dumper::Terse = 1; $Data::Dumper::Indent = 1;

@ARGV or die "Usage: $0 proxy [uri [commands...]]\n";
my($proxy, $uri) = (shift, shift);
my %can;
my $soap = SOAP::Lite->proxy($proxy)->on_fault(sub{});
                $soap->uri($uri) if $uri;
print STDERR "Usage: method[(parameters)]\n> ";
while (defined($_ = shift || <>)) {
  next unless /\w/;
  my($method) = /\s*(\w+)/;
  $can{$method} = $soap->can($method) unless exists $can{$method};
  my $res = eval "\$soap->$_";
  $@                               ? print(STDERR join "\n", "--- SYNTAX ERROR ---", $@, '') :
  $can{$method} && !UNIVERSAL::isa($res => 'SOAP::SOM')
                                   ? print(STDERR join "\n", "--- METHOD RESULT ---", $res || '', '') :
  defined($res) && $res->fault     ? print(STDERR join "\n", "--- SOAP FAULT ---", $res->faultcode, $res->faultstring, '') :
  !$soap->transport->is_success    ? print(STDERR join "\n", "--- TRANSPORT ERROR ---", $soap->transport->status, '') :
                                     print(STDERR join "\n", "--- SOAP RESULT ---", Dumper($res->paramsall), '')
} continue {
  print STDERR "\n> ";
}

Изменено пользователем XVR

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Мда, травка зашибись была...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я-то думал, что та ссылочка от gotty годится только для юмора. А там нет ни одного лишнего слова, всё чистая правда. :) Понял, когда почитал хорошенько эту тему. Люди совершенно серьёзно требуют от языка высокого уровня возможности забраться в хитрые закоулки их любимого микроконтроллера. И всерьёз не приемлют необходимости _фундаментального_ образования в программировании, знать не хотят, зачем оно нужно.

Плюс к тому совершенно непонятная агрессивность людей, которых по другим местам форума я знаю как очень разумных. Произнести среди сишников слово "Паскаль" - это как среди ориентированной на демократические ценности интеллигенции произнести слово "Сталин". Среди работающих на Паскале людей такие поливы в адрес Си - большая редкость.

Воистину преподавание студентам Си можно сопоставить с совращением малолетних. Так и будут потом всю жизнь считать важнейшим преимуществом языка возможность легко добраться до чего попало, не думая о последствиях. И не принимать ничего другого.

Кстати, господа сишники, а почему вы так ненавидите именно Паскаль?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, господа сишники, а почему вы так ненавидите именно Паскаль?

 

Втайне завидуют? :laughing:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, господа сишники, а почему вы так ненавидите именно Паскаль?

На провакационные выпады агрессивно-настроенного Паскалиста отвечать не буду. А на вопрос отвечу.

 

1. Объективно -- количество качественных Паскаль-компиляторов на порядок меньше, чем Си-компиляторов. Как следствие, выбор скуден и неинтересен. Как следствие этого, сообщество Паскалистов меньше.

 

2. Зачем мне учить албанский? С практической точки зрения мне интересен тот язык, на котором говорит большая часть населения планеты _И_ на котором ведутся дела. Так сказать международный язык общения. Зачем мне учить и, соответственно, писать на Паскале, когда в моем окружении он не имеет широкого распространения.

 

3. Субъективно. Мне на Си комфортнее писать. Я им мыслю. Паскаль для меня, все равно что французский. Я его понимаю, могу разобраться, но он мне нафиг не нужен.

 

4. Я не знаю качественных программных продуктов, которые написаны на Паскале. (Курсовые и кандитатские -- откидываем сразу. Это продукты, которыми не пользуются. Это одноразовый хэндикрафт. Типа "докозательство", что я знаю и умею.) Но я знаю очень много продуктов, которые написаны на Си/Си++. Это дает мне повод сомневаться, что Паскаль -- это промышленный инструмент.

 

Отсюда, все, что связано с Паскалем воспринимается, как трата моих ресурсов. Поскольку затраты на изучение и применение еще одной (аналогичной) технологии не окупаются, то возникает закономерный вопрос -- а нафига оно мне надо? Я мастерски владею инструментом, я зарабатываю неплохие деньги. Что измениться, если я начну писать на Паскале? -- Много чего. Самое главное -- я отдаю себе отчет, что я потеряю доход, из-за того, что скорость и качество результатов моего труда окажутся ниже. Во всяком случае -- они будут не выше, чем сейчас. (С) "Зачем это оно мне надо?"

 

Поскольку, вокруг меня сформировано общество, где подавляющее большинство "говорит" на Си, а не на Паскале, а мы (условно говоря) заинтересованы в получении молодых кадров, с которыми легко можно общаться и делать бизнес, то нам бы хотелось получать в свою среду именно Си-ников, а не Паскалистов. Это, думаю, понятно. Тогда должно быть понятно, на чем основано такое яростное противостояние двух лагерей. И если Вы, уважаемый, уводите кадры, то вы безусловно объявляетесь противником. (С) "Не обижайтесь. Это правда!" ("С легким паром!")

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поскольку, вокруг меня сформировано общество, где подавляющее большинство "говорит" на Си, а не на Паскале,

 

Рад за Вас. Неужели вокруг Вас общество "говорит" на Cи. Даже не в рамках постановки

решения задачи :lol:

 

P.S. Другие пункты, даже комментировать не интересно.

Хотя Pascal программистом не являюсь, а по работе требуется использование С/С++.

Изменено пользователем Kopa

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...