Главное меню
Мы солидарны с Украиной. Узнайте здесь, как можно поддержать Украину.

Delphi, QIP и быдлокодерство

Автор Алексей Гринь, октября 26, 2009, 22:36

0 Пользователи и 1 гость просматривают эту тему.

myst


addewyd

Цитата: Nekto от октября 27, 2009, 11:28
Паскаль и паскалеподобные языки богомерзки и уродливы по своей природе.
С++ рулит!
та же хрень вид сбоку


addewyd

Цитата: Алексей Гринь от октября 29, 2009, 18:43
насколько нужно любить дельфи, чтобы лесенки типа

   do begin
      if ... then
           ... begin
              ... begin
                 
                  end;
             end;
      end;
   end;
кто заставляет такие лесенки строить?


Алексей Гринь

Цитата: addewyd от октября 29, 2009, 20:50
кто заставляет такие лесенки строить?
Алгоритм

Цитата: arseniiv от октября 29, 2009, 20:38
a {
  b {
    c {
      d {
        e {
        }
      }
    }
  }
}вы не запутываетесь?

У меня так:

bla blablabla()
{
     if(blabla == blabla)
     {
           blabla();
           bla(blabla, 0);
           
           if(blaabla != blabla)
                blablabla();
     }
}

В паскалях типа так:

procedure blablabla(): bla
begin
   if blabla = blabla then
   begin
       blabla();
       bla(blabla, 0);
           
       if blaabla <> blabla then
          blablabla();
   end;
end;

Вот фиг знает, первое намного читабельнее, во втором случае визуально бегины и енды оч плохо отличимы от имён переменных и функций, вырвиглаз же

Неговоря уже о том, что приходится писать руками в 3-5 раз больше буков
肏! Τίς πέπορδε;


злой

Асм рулит:

        MOV AL, 3
        MOV EBX, EAX         
        XOR AH, AH
        MOV AL, 3
        MOV BX, AX             
        XOR EAX, EAX
        MOV AH, 3
        MOV EBX, EAX           
        SUB EBX, EBX
        MOV BL, DL
        MOV ECX, EBX           
        MOV EBX, 0
        MOV BL, DL
        MOV ECX, EBX           
        MOV BL, DL
        XOR EBX, EBX           
Entre los individuos, como entre las naciones, el respeto al derecho ajeno es la paz.   - Benito Juárez

arseniiv

Цитата: Алексей Гринь от октября 30, 2009, 01:48
Вот фиг знает, первое намного читабельнее, во втором случае визуально бегины и енды оч плохо отличимы от имён переменных и функций, вырвиглаз же
(выделено мной)
Если вы пишете в Блокноте ;D В "нормальных" средах всегда ключевые слова вяделяются (а у вас не выделяются? :o)
А, уже Karakurt сказал.

А первое - скорее всего дело привычки. Я {} так же хорошо читаю, как и begin...end. Вроде бы :donno:

Цитата: myst от октября 29, 2009, 20:41
:o :o :o :o :o :o
:o В C++-то?! :o
:o :o :o :o :o :o
Ну, в том предложении Алексей Гринь говорил, что C лучше C++...

Алексей Гринь

Цитата: arseniiv от октября 30, 2009, 14:37
В "нормальных" средах всегда ключевые слова вяделяются
Говорили о языке, теперь снова о среде. Воистину поцкакалисты не отличают язык от среды.

Предлагаю вариант — использовать ключевые слова begin, bgein, end, nde, edn, ebgin, но для наглядности в среде раскрашивать в разные цвета (розовый, малиновый).
肏! Τίς πέπορδε;

arseniiv

;D
Извините, что привёл среду, но и вы сказали, что эти слова схожи с просто идентификаторами - входя в зависимость от сред, потому что кто знает, может, в гипотетической среде набранные ключевые слова превращаются в смайлики?

Алексей Гринь

Просто на деле получается невнятный костыль (якобы для улучшения читаемости), который прикрывается другими костылями (подсветка в IDE, якобы архикрутая фишка). Смысл? Легче сразу перейти на Си :)
肏! Τίς πέπορδε;

myst

Цитата: Алексей Гринь от октября 30, 2009, 01:48
Вот фиг знает, первое намного читабельнее, во втором случае визуально бегины и енды оч плохо отличимы от имён переменных и функций, вырвиглаз же
Вырвиглаз лечится нормальным форматированием исходного текста. Это справедливо для любого языка.

Алексей Гринь

Цитата: myst от октября 31, 2009, 22:50
Вырвиглаз лечится нормальным форматированием исходного текста
По моим наблюденим, у дельфифилов отступ стандартно равен двум пробелам, а это вырвиглаз.
肏! Τίς πέπορδε;

myst

Цитата: Алексей Гринь от ноября  1, 2009, 02:40
По моим наблюденим, у дельфифилов отступ стандартно равен двум пробелам, а это вырвиглаз.
Ладно хоть не один. :)

arseniiv

Два пробела может, потому, что такой в справке ;D
А мне и двух пробелов хватает, три не нравится, а четыре — для меня вырвиглаз. Стоит только достигнуть небольшой вложенности, как эти четырёхпробельные строки улетают далеко-далеко...
Вообще, среди плохих программистов (что есть, то есть — среди пользователей Delphi их больше (хотя сравнить с Васиком... ::) )) отступы не приняты. Жаль, конечно...

Кстати, один пробел — для меня то же, что и четыре.

myst


arseniiv

Конечно же, нет. Но они уже должны быть обязательными. :)

Кстати, это сказки, что в Pascal (а уже в нём было) and и or сравнение производят до конца. В "0 and A" A вычисляться не будет.

myst

Цитата: arseniiv от ноября  1, 2009, 15:24
Но они уже должны быть обязательными. :)
Обязательным должен быть целостный стиль.

Python

Цитата: Nekto от октября 27, 2009, 11:28
Паскаль и паскалеподобные языки богомерзки и уродливы по своей природе.
С++ рулит!
С-подобный синтаксис более лаконичен, чем паскалеподобный, содержит больше удобных возможностей, С-подобные языки имеют более продвинутые компиляторы и библиотеки функций, но:
1) синтаксис описания переменных очень неудобен. Что такое int *a[10][10] - это двумерный массив указателей, массив указателей на массивы, указатель на двумерный массив?
2) порядок выполнения операций, не совпадающий в разных реализациях С и С-подобных языков;
3) С-шный switch-case, благополучно перекочевавший во все С-клоны - не что иное, как пережиток эпохи царствования оператора goto. По существу, это не структурированный выбор, как if-then-else или паскалевский case, а переход на метку с последующим выходом через break. Пропуск break ошибкой не является, хотя обычно ведет к ошибочным результатам.
4) ..................

В общем, придраться можно много к чему.
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

myst

Цитата: arseniiv от ноября  1, 2009, 15:24
Кстати, это сказки, что в Pascal (а уже в нём было) and и or сравнение производят до конца. В "0 and A" A вычисляться не будет.
Implementation-dependent.

Python

P.S. Если уж зашла речь о case, наиболее продвинутым по функциональности является select-case в структурированных бейсиках (Quick BASIC, TurboBasic, VBA и под.), предусматривающий диапазоны, идущие в бесконечность (case is>100). Чуть менее продвинуты паскаль и делфи: есть дипазоны в пределах конкретных значений. В С-подобном синтаксисе диапазон можно задать лишь путем перечисления всех значений, входящих в диапазон.
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

arseniiv

Цитата: Python от ноября  1, 2009, 16:00
1) синтаксис описания переменных очень неудобен. Что такое int *a[10][10] - это двумерный массив указателей, массив указателей на массивы, указатель на двумерный массив?
Обеими руками да! :up: И этот страшный typedef, совершенно нечайно разобрался, как им пользоваться.
Case в Delphi, кстати, ещё и оптимизируется, и некоторые операторы case работают быстрее аналогичной системы if.

Offtop
О хорошести языков:
Я вот создаю себе pas-модуль для языка сценариев. Вопреки предположениям, он имеет вообще Scheme-подобный синтаксис. ;D (Но нет типизации, парадигма больше императивная, есть функции-значения; но руки всё ещё не дошли...) Хотя я бы предпочёл JavaScript - но его реализацию для Delphi я не находил (а системно-зависимость мне не нужна).

myst

Цитата: arseniiv от ноября  1, 2009, 16:48
Case в Delphi, кстати, ещё и оптимизируется, и некоторые операторы case работают быстрее аналогичной системы if.
Неужели делфистроители таки осилили эту оптимизацию?

myst

Цитата: Python от ноября  1, 2009, 16:00
2) порядок выполнения операций, не совпадающий в разных реализациях С и С-подобных языков;
Не понял, о чём речь?

Python

Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

myst


Быстрый ответ

Обратите внимание: данное сообщение не будет отображаться, пока модератор не одобрит его.

Имя:
Имейл:
Проверка:
Оставьте это поле пустым:
Наберите символы, которые изображены на картинке
Прослушать / Запросить другое изображение

Наберите символы, которые изображены на картинке:

√36:
ALT+S — отправить
ALT+P — предварительный просмотр