Re: Perl or Python?
- To: debian-russian@lists.debian.org
- Subject: Re: Perl or Python?
- From: Aleksey Cheusov <vle@gmx.net>
- Date: Thu, 19 Mar 2009 14:38:04 +0200
- Message-id: <[🔎] s93fxh98z83.fsf@chel.imb.invention.com>
- In-reply-to: <chnPu-65x-23@gated-at.bofh.it> (Victor Wagner's message of "Thu, 19 Mar 2009 11:40:12 +0100")
- References: <ch4Wz-So-11@gated-at.bofh.it> <ch8np-6vv-31@gated-at.bofh.it> <chchl-4rn-31@gated-at.bofh.it> <chcUa-5jt-21@gated-at.bofh.it> <chddi-5Z0-1@gated-at.bofh.it> <chdwK-6or-21@gated-at.bofh.it> <chdZL-7ga-15@gated-at.bofh.it> <chfoP-Rw-7@gated-at.bofh.it> <chmJI-4kL-11@gated-at.bofh.it> <chnw6-5Fa-13@gated-at.bofh.it> <chnPu-65x-23@gated-at.bofh.it>
>> >> А типизированные переменные они не ввели случайно?
>>
>> > Слава богу, нет. НУ не должны быть ПЕРЕМЕННЫЕ типизированными.
>> Виктор. Наличие типизированных переменных в языке - это один из
>> важнейших классификационных признаков языков программирования.
>
> Угу. Относящее его к классу портабельных ассемблеров. Наряду с ручным
> менеджментом памяти.
"Шъерт побъери"(С) Вы там наверное в одной норе живете.
Нет, нет и нет. Смотри Pike или Objective-C как примеры.
Modula-3, кажется тоже. Да их полно на самом деле.
>> При создании больших программ их наличие очень хорошо сказывается на
>
> Скорее, это служит признаком того, что этот язык НЕЛЬЗЯ использовать для
> создания больших программ. Его ниша - маленькие кусочки, критичные по
> скорости выполнения.
См. выше.
> Еще венгерскую нотацию вспомни. Берем большой проект, и на третьем
> рефакторинге выясняется что здесь нужна переменная другого типа.
> В результате её приходится переименовывать по всему коду.
Этот бред я не использую и никому не советую.
>> надежности создаваемого ПО. Это азбука!
>
> Это не азбука, это катехезис. А я - атеист.
Аналогично. Но это нынче не в моде.
> Кстати, создание больших проектов НЕИЗБЕЖНО приводит к тому что
> появляются те или иные конструкции для обхода строгой типизации.
Не то, чтобы неизбежно...
> Потому что в почти любом реальном проекте необходимость работы с
> коллекциями разнородных значений, независимо от типа этих значений -
> есть.
У меня, например, такой потребности не возникает. Но даже если... как
уже было показано на примере Pike-а, есть ЯП, в которых одно другому не
мешает.
>> > А вот int и string - это явно один и тот же тип. SCALAR называется.
>> Нет. Это полная ерунда. scalar/vector - это никакой не тип.
>
> А что же это? Если над ними есть вполне определенные наборы операций?
>
> В вышепоскипанном ты рассматривал в качестве типов set и map - чем
> vector хуже set?
Тем, что множество - это множество, а вектор - это вектор и у них
совершенно разный набор базовых операций. В массив нельзя _эффективно_
вставить новый эелемент, при условии, что там его нет, а в множество
можно. Я уж не говорю, что множество - одно из базовых понятий при
проектировании алгоритмов наряду с ассоциативными массивами, просто
массивами, списками и прочими. Но это разные изначально разные структуры
данных. Мы тут какую ерунду 1-ого курса перемалываем, тебе не кажется?
Все это прекрасно расписано на википедии.
http://en.wikipedia.org/wiki/List_of_data_structures
> В том же STL - это сущности одного и того же порядка.
> Не нравится слово vector, можно использовать sequence (правда, тогда те,
> кто читал Вирта поймут неправильно. У Вирта sequence ближе к generator
> чем к vector).
В последний раз я Вирта читал в лучшем случае лет 15 назад (конечно, не
все). Может, забыл, где у него sequence как generator?
--
Best regards, Aleksey Cheusov.
Reply to: