Re[2]: Современное программирование
От: xbit Россия  
Дата: 21.12.05 19:17
Оценка: :)
Здравствуйте, reductor, Вы писали:

R>Умеющий уши, да услышит.


Имеющий руки, да напишет
Нас не догонят!
Re[20]: Современное программирование
От: vdimas Россия  
Дата: 21.12.05 19:32
Оценка:
Здравствуйте, reductor, Вы писали:

Значит, все-таки, преподаватель

Тогда вполне понятно, если многие студенты знают, то неохота раскрывать себя.
Re[19]: Современное программирование
От: alexeiz  
Дата: 21.12.05 21:39
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>ЗЫ: а вы случайно не замаскированый Луговской? Уж больно том похож...


А кто такой этот Луговской?
Re: Современное программирование
От: vdimas Россия  
Дата: 21.12.05 21:55
Оценка: 1 (1)
S>Народ, на форуме буквально неделю назад жаркая дискусия была по поводу программирования с++ vs ???. Были и такие сообщения, что на с++ пишут процентов 5-10 кода, остальное на каких-то других языках, о которых я например и не слышал. Теперь ничего не понимаю, выходит чтоб быстро и эффективно программить надо забыть про с++, и учить всякие скриптовые языки, учить ocalm и т.д.? Народ поделитесь еще и тем, какие современные технологии помогают быстро писать обычный, не специализированный софт...

Вот неплохая книга:
http://lib.aswl.ru/books/methodology/programming/

не по конкретному ЯП, а про разные подходы, с доступным объяснением, где какой подход наиболее применим.

Поможет систематизировать твои собственные знания.

Языки делятся на классы, как раз из-за разных подходов. Например, С++/Delphi — языки одного класса, т.е. их можно хоть как-то сравнивать на задачах одного класса. Сравнивать С++ с Phyton или там Rubby — неккоректно. Я уже молчу о сравнении его с Lisp/ML-ями/Haskell.

Тут Гена правильно сказал о вреде советов, но все же рискну.

С++ — все-таки рекомендую. Системные задачи случаются чаще, чем можно себе предположить. Не настаиваю на том, чтобы быть проффессионалом в нем, но пока что это все-таки mainstream и долго останется таковым. Заодно с ним .Net или Java на выбор. Оба направления неплохи и примерно равнозначны. Если больше ориентируешься на интеграцию с виндами — то .Net, если нужна переносимость, то Java.

Дополнительно неплохо овладеть несколькими скриптовыми. Lisp все еще неплох в качестве оного и есть несколько неплохих интерпретаторов Lisp и Scheme для .Net и Java с неплохой интеграцией.

Помимо этого есть "джентельменский набор" скриптовых языков, без которых сложновато. Для виндов: VBScript и JavaScript + основные службы и COM-объекты системы, используемые в скриптах. Для юнихов: shell-семейcтво и Perl + основные юниховые команды и утилиты. В обоих случаях очень много инфы прикладного характера, так что изучать качественно одновременно вряд ли получится. Придется все-таки выбирать.

Есть много более "переносимых": Tcl, Phyton, Rubby, но все-равно, переносимых условно. Скрипт взаимодействует с окружением операционной системы, т.е. несмотря на переносимый синтаксис, получаем непереносимую семантику.


Далее...

XML — от этого зверя никуда не денешься, как ни бегай. Так же как от HTML/CSS/DHTML/DOM и банального SQL. Тоже нечто вроде "джентельменского набора".

Функциональные языки и пр. декларативные... Их необходимость зависит от задач. Интерес к этим языкам усиливается год от года. Опять же, может быть твои задачи как раз хорошо бы делать на них, просто ты пока об этом не знаешь...

Одним словом, действительно, необходимо пережевывать и усваивать массу информации. Желательно систематизированно, т.е. при поддержке "правильного" чтива, типа того, что по ссылке. Правда по ссылке как бы весьма общее чтиво. Дополнительно куча ссылок на литературу по конкретным подходам/технологиям/языкам постоянно дается в форумах RSDN.
Re[14]: Современное программирование
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 22.12.05 07:43
Оценка:
Здравствуйте, vdimas, Вы писали:

E>>Вот и разговоры с вами, reductor, мне напоминают такие бои. Ваши разговоры про знания языков и прочее -- это как бой с тенью перед зеркалом. Красиво, технично и, безусловно, полезно. Только это -- всего лишь техника, а она ничего не решает.


V>Немного не так. Техника ничего не решает до определенного уровня. Для 12-ти летних пацанов — это примерно тот уровень. Чуть выше — техника решает все, ибо физ-подготовка уже в норме у всех противников. Умение применять элементы техники в те самые нужные моменты — это тоже составляющая техники. (требуется решительность/смелость, холодный расчет и реакция и достаточные наработки определенных мышц — это все тоже элементы техники, без них техника немыслима)


Я не зря сказал про 12-13 летних. В этом возрасте что год тренировок, что два месяца -- это совсем не показатели.
Чуть постарше 15-16 лет -- там уже совсем другой расклад, там гораздо реже встречаются противники разного уровня подготовки. И там вместо техники более важную роль начинает играть тактика и стратегия, уменее подстроится под противника. Но без харатектера и воли все равно никуда не уедешь.

V>Опять же, до определенного уровня противника. Применительно к ПО — до определенной сложности задачи.

V>Чем выше "уровень противника", тем больше одновременно рассматриваемых факторов влияют на исход.

Применительно к ПО не часто бывает так, чтобы человек занимался разработкой АСУТП, а затем резко перешел к разработке экспертных систем для детской педиатрии. Да при этом пытался бы делать решения с использованием тех же самых SCADA систем. Все же в ПО разные ниши не так уж плохо определены, как и доминирующие языки/технологии в этих нишах. Так что при смене специализации вполне можно и сменить инструментарий. Но вот если в той же самой области (для примера возьмем АСУТП) вдруг откуда-то возникает сверхсложная задача, то не факт, что для ее решения придется менять C++ на Lisp или OCaml и что из этого получится что-либо путное.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[12]: Современное программирование
От: Mamut Швеция http://dmitriid.com
Дата: 22.12.05 07:54
Оценка:
R>Я не понял, к чему это?
R>По ссылке бред какой-то.
R>Вам не нравятся reader macros по умолчанию? переопределять не пробовали?
R>Про XML — вообще без комментариев.

Для ЛИСПа нет человеческих библиотек для работы с ХМЛ. И никто создавать такую библиотеку, судя по всему, не собирается. Не знаю, может в коммерческих Лиспах есть —
... << RSDN@Home 1.2.0 alpha rev. 619>>


dmitriid.comGitHubLinkedIn
Re[13]: Современное программирование
От: reductor  
Дата: 22.12.05 08:03
Оценка: 1 (1)
Здравствуйте, Mamut, Вы писали:

R>>Я не понял, к чему это?

R>>По ссылке бред какой-то.
R>>Вам не нравятся reader macros по умолчанию? переопределять не пробовали?
R>>Про XML — вообще без комментариев.

M>Для ЛИСПа нет человеческих библиотек для работы с ХМЛ. И никто создавать такую библиотеку, судя по всему, не собирается. Не знаю, может в коммерческих Лиспах есть —



Во-первых, есть:
http://common-lisp.net/project/cxml/
http://common-lisp.net/project/s-xml/

Во-вторых еще много есть
В-третьих, оно там не нужно.
В-четвертых сделать свою трансформацию xml <-> s-exps ничего не стоит.

Давайте все научимся "отвечать за базар".
Re[14]: Современное программирование
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 22.12.05 08:24
Оценка:
Здравствуйте, reductor, Вы писали:

R>Давайте все научимся "отвечать за базар".


Ok, давайте с нас и начнем. Вот отсюда:
Автор: reductor
Дата: 21.12.05

E>А вот преимущества для моей конкретной задачи я описывал.



А зачем вы там врете по ссылке? Closures есть везде (и в тикле и в перле и даже в питоне) и передавать их можно куда угодно, а лисп — не менее императивный язык, чем руби и синтаксиса у лиспа нет вообще никакого. Ни птичьего ни земноводного.


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


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[14]: Современное программирование
От: Cyberax Марс  
Дата: 22.12.05 08:27
Оценка:
reductor wrote:
> Давайте все научимся "отвечать за базар".
Что же, ждем от вас красивого решения той задачи на Lisp'е.

--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[15]: Современное программирование
От: reductor  
Дата: 22.12.05 08:35
Оценка: +1
Здравствуйте, eao197, Вы писали:

E>Здравствуйте, reductor, Вы писали:


R>>Давайте все научимся "отвечать за базар".


E>Ok, давайте с нас и начнем. Вот отсюда:
Автор: reductor
Дата: 21.12.05

E>Прошу показать мне, в каком конкретно месте по приведенной мной ссылке было вранье.

Почему? Из-за одной его супер-мега-фичи: возможность передавать в функцию блок кода в качестве параметра.


Это есть _во всех_ нормальных языках. Уж точно это не мега-фича и уж точно руби здесь не уникален.


В отличии от Lisp-а Ruby остается чисто императивным языком с превычным большинству программистов синтаксисом. Для меня это означает, во-первых, что не требуется адаптации к птичьему Lisp-синтаксису и, во-вторых, что на Ruby можно писать нормальный императивный код.


Лисп не менее императивный, чем руби. У лиспа нет синтаксиса вообще, я повторяю, заучите это, распечатайте, повесьте на стену, вытатуируйте где-нибудь. Не знаю каким еще языком это сказать — У лиспа. Нет. Синтаксиса. Синтаксиса у него НЕТ. Вообще.
Ну и на нем можно писать "нормальный императивный код". У лиспа даже GOTO есть.

В отличии от Lisp-а имеется одна основная ветвь разработки Ruby и одна единая реализация, портированная на массу платформ. Еще более важно, что есть единая стандартная библиотека (постоянно и оперативно развиваемая) и централизованная вокруг Ruby community. Достижением этого community является, например, система управления пакетами RubyGems.


а это что:
http://jruby.sourceforge.net/

И вообще, ставить в достоинство то, что нет других реализация — это маразм. И в недостаток то, что они есть — еще больший.
Re[15]: Современное программирование
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 22.12.05 08:38
Оценка: -1
Здравствуйте, Cyberax, Вы писали:

C>reductor wrote:

>> Давайте все научимся "отвечать за базар".
C>Что же, ждем от вас красивого решения той задачи на Lisp'е.

Ответ раз:
Автор: reductor
Дата: 21.12.05

E>Пожалуйста, изобразите на TCL пример описания проекта, который я показывал здесь на Ruby и XML.

Мне больше делать чтоли нечего?


Ответ два (там же):

E>Еще раз прошу изобразить приведенный мной пример с использованием Tcl/Tk, Perl или Python с использованием их closures.

Еще раз не буду ничего изображать. Зачем мне это?


Ответ три:
Автор: reductor
Дата: 21.12.05

E>Знаете, reductor, у вас продолжает проявляться неприятная привычка игнорировать конкретные вопросы и просьбы предоставить конкретный пример кода. Причем, проявляется это не только в разговорах со мной, но и с беседах с Cyberax и VladD2. Очень жаль, но в таком русле нельзя вести разговор дальше.

Простите, я вам что-то должен?


Тенденция однако.


На самом деле, вполне нормальный ответ был бы: "Извините, но у меня нет времени на решение подобных тестовых задач". Большинство учасников здесь люди семейные, занятые и не располагающие большими запасами свободного времени, поэтому такой ответ был бы понят и принят без каких-либо возражений. Только почему-то в норамальной форме общаться не очень получается. А жаль, многие высказывания reductor-а действительно интересны и полезны.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[14]: Современное программирование
От: Mamut Швеция http://dmitriid.com
Дата: 22.12.05 08:46
Оценка:
M>>Для ЛИСПа нет человеческих библиотек для работы с ХМЛ. И никто создавать такую библиотеку, судя по всему, не собирается. Не знаю, может в коммерческих Лиспах есть —


R>Во-первых, есть:

R>http://common-lisp.net/project/cxml/

Хм, вот этот я как-то пропустил почему-то.

R>http://common-lisp.net/project/s-xml/

It does not support CDATA.
Only supports simple character sets.
It does not support name spaces
It does not support any special tags (like processing instructions).
It is not validating, even skips DTD's all together.


R>Во-вторых еще много есть


На самом деле нет.

R>В-третьих, оно там не нужно.


R>В-четвертых сделать свою трансформацию xml <-> s-exps ничего не стоит.


R>Давайте все научимся "отвечать за базар".


... << RSDN@Home 1.2.0 alpha rev. 619>>


dmitriid.comGitHubLinkedIn
Re[15]: Современное программирование
От: reductor  
Дата: 22.12.05 08:54
Оценка: 1 (1) +2
Здравствуйте, Mamut, Вы писали:


R>>Во-вторых еще много есть


M>На самом деле нет.


http://common-lisp.net/project/xmls/
http://cvs.sourceforge.net/viewcvs.py/*checkout*/clocc/clocc/src/cllib/xml.lisp
Еще в Allegro и LispWorks входит все для XML


R>>Давайте все научимся "отвечать за базар".


M>


Дада, именно.
Re[18]: Современное программирование
От: srggal Украина  
Дата: 22.12.05 08:56
Оценка:
Здравствуйте, reductor, Вы писали:

R>Здравствуйте, Anton Batenev, Вы писали:


AB>>Вы не находите странным подобную "секретность"? На два, казалось бы, основных вопроса, которые проходят через всю нашу жизнь — семейное положение и портфолио вы ответили категорически отрицательно?


R>Нет, не нахожу.

R>И мне казалось, основной вопрос на этом форуме — это программирование.
R>А не мое портфолио и семейное положение. И навязчивое стремление узнать последнее кажется мне несколько патологическим.

ГМ, не сдержался.

Если основной вопрос — это программирование, то большинство Ваших постов ОФФТОП.
Ибо учеба не является эхотажной.

ЗЫ
( 2Модератор — не сдержался )
Поддерживаю мнение товарищей, что Вы являетесь преподавателем, либо, как вариант, разработчиком средней руки ( не по интеллектуальным показателям, а ввиду паталогической склонности к изучению, упрощени., переделке ), судьба к которому была благосклонна, и Вы достигли должности тех. директора, на почве чего и считаете себя непревзайденным специалистом.

ЗЫЗЫ
Хотя на самом деле мне нет до этого дела, и многими Вашими постами я согласен, правда это высказывание не распространяется на этот тред.

ЗЫЗЫЗЫ
Сам люблю все упрощать переделывать и украшать, но мне приходится себя сдерживать.
... << RSDN@Home 1.1.4 stable rev. 510>>
Re[14]: Современное программирование
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 22.12.05 08:58
Оценка:
Здравствуйте, reductor, Вы писали:

[...]
R>В-третьих, оно там не нужно.
В десятку: Lisp сам по себе превосходно заменяет XML.

R>Давайте все научимся "отвечать за базар".

+1
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[16]: Современное программирование
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 22.12.05 09:00
Оценка:
Здравствуйте, reductor, Вы писали:

R>>>Давайте все научимся "отвечать за базар".


E>>Ok, давайте с нас и начнем. Вот отсюда:
Автор: reductor
Дата: 21.12.05

E>>Прошу показать мне, в каком конкретно месте по приведенной мной ссылке было вранье.

R>

Почему? Из-за одной его супер-мега-фичи: возможность передавать в функцию блок кода в качестве параметра.


R>Это есть _во всех_ нормальных языках. Уж точно это не мега-фича и уж точно руби здесь не уникален.


Где я сказал, что это эта фича уникальна для руби? Я разве говорил, что ее напрочь нет в Python-е или Lisp-е?
А привлекательность этой фичи для меня была в том, как она записывается:
sources_root( "impl" ) {
  cpp_source "channel_impl.cpp"
  cpp_source "channel_data.cpp"
}

а не как-то так:
target.sources_root( "impl",
  lambda t: t.cpp_source( "channel_impl.cpp" ), t.cpp_source( "channel_data.cpp" ) )


R>

В отличии от Lisp-а Ruby остается чисто императивным языком с превычным большинству программистов синтаксисом. Для меня это означает, во-первых, что не требуется адаптации к птичьему Lisp-синтаксису и, во-вторых, что на Ruby можно писать нормальный императивный код.


R>Лисп не менее императивный, чем руби. У лиспа нет синтаксиса вообще, я повторяю, заучите это, распечатайте, повесьте на стену, вытатуируйте где-нибудь. Не знаю каким еще языком это сказать — У лиспа. Нет. Синтаксиса. Синтаксиса у него НЕТ. Вообще.

R>Ну и на нем можно писать "нормальный императивный код". У лиспа даже GOTO есть.

Перечитайте еще раз мои слова: "чисто императивным языком с превычным большинству программистов синтаксисом". Насколько я понимаю, Lisp -- это мультипарадигменный язык (в отличии от Ruby). И уж точно его синтаксис не привычен большинству программистов. Даже при отсутствии синтаксиса как такового.

Кроме того, обратите внимание на фразу "для меня это означает", т.е. это я считаю, что у Lisp-а птичий синтаксис, и что мне нужна адаптация к Lisp-у. А вот к Ruby не нужна. Мне не нужна. О чем я и сказал.

R>

В отличии от Lisp-а имеется одна основная ветвь разработки Ruby и одна единая реализация, портированная на массу платформ. Еще более важно, что есть единая стандартная библиотека (постоянно и оперативно развиваемая) и централизованная вокруг Ruby community. Достижением этого community является, например, система управления пакетами RubyGems.


R>а это что:

R>http://jruby.sourceforge.net/

Понятия не имею, какая-то реимплементация Ruby на 100% Java. Причем 1.8.2 compilant, и к тому же: "Most builtin Ruby classes provided". С учетом того, что основная ветвь разработки уже давно выпустила 1.8.3 и еще более давно ведется разработка 1.9.0, то JRuby -- это что-то а-ля JPython, только менее извесное.
Но даже если принимать во внимание JRuby, то они всего лишь повторяют то, что было сделано в основной ветви разработки Ruby.

И я не понял, вы что-то хотите возразить против моих слов о "единой стандартной библиотеки" и о таком достижении Ruby community, как RubyGems? А вы этими вещами пользовались, чтобы что-нибудь опровергать?

R>И вообще, ставить в достоинство то, что нет других реализация — это маразм. И в недостаток то, что они есть — еще больший.


Маразм? Я за 13 лет программирования насмотрелся на разные реализации C++ на разных платформах. И пришел к выводу, что лучше было бы иметь один одинаковый GCC (название можно выбрать по вкусу) на всех платформах, чем такое скопище как сейчас (да только на Windows есть GCC, MSVC, ICC, BCC, Digital Mars, cygwin GCC, был CodeWarrior и, возможно, есть еще что-то, с чем мне не приходилось сталкиваться)! А с Ruby после C++ просто благодать -- везде все одинаковое. Хоть под Windows, хоть под Linux-ом, хоть под MacOS, хоть под NonStop.


Так что поостороженее с обвинениями во лжи. В данном конкретном случае они оказались безосновательными.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[22]: Современное программирование
От: srggal Украина  
Дата: 22.12.05 09:04
Оценка:
Здравствуйте, reductor, Вы писали:

R>Здравствуйте, Sergey, Вы писали:


S>>Спрашиваю — какие языки, на каком уровне, опыт управления какими проектами — скока строк кода, на каком языке, время жизни проектов.


R>Здесь шла речь о Tcl/perl/python

R>отвечаю — все на уровне 5-10 лет с несколькими проектами на каждом 50-500 тысяч строк кода.
R>Вообще в активном запасе у меня около 30 языков.

Такие системы обречены на рождение устаревшими. И это не моё мнение, читал у кого-то из классиков, да и сам участвовал в подобном, правда не мирового уровня проекте.

И при их разработке применяются несколько друние подходы, да в них требуется огромное внимание уделять архитектуре и кстранению излишней связанности как на уровне архитектуры, так и на уровне исходных текстов.
ИМХО использование разнокалиберных языков для решения специфических задач — не есть гуд в таких проектах.

Без Формального Процесса разработки согромная вероятность провала.

Но во всём этом я не вижу причин откровенного неуважения к форумчанам

ЗЫ

500 тысяч строк кода на Tcl — это сколько квадратных метров в сумарной площади всех окон ?
(Шутка, может и глупая, но несдержался)
... << RSDN@Home 1.1.4 stable rev. 510>>
Re[25]: Современное программирование
От: srggal Украина  
Дата: 22.12.05 09:06
Оценка: +1
Здравствуйте, Anton Batenev, Вы писали:

AB>В том-то и дело, что имеют. Вот вы, например, вначале этой ветки рекомендовали stragner-у языки к изучению ML(SML/O'Caml), Scheme, Common Lisp, Haskell, Prolog, Smalltallk, Forth, APL/J/K. Новичку, не знакомому с этими языками, хотелось бы посмотреть, пощупать и оценить то, что на них уже сделано. При чем, поскольку данный совет давали именно вы, то хотелось бы посмотреть и "пощупать" именно ваши проекты, услышать о подводных камнях, которые возникали в процессе их производства, какие решения были приняты и почему и т.д.


Я так понимаю, что "новичок" просто ничего не сможет панять в 500 тысячах строк на любом из этих языков, да и канал может быть слабый для скачивания подобных примеров
... << RSDN@Home 1.1.4 stable rev. 510>>
Re[15]: Современное программирование
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 22.12.05 09:07
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>[...]

R>>В-третьих, оно там не нужно.
ГВ>В десятку: Lisp сам по себе превосходно заменяет XML.

Тем не менее, в исходной постановке задачи был XML. А программирование подразумевает, что требуется решать конкретные задачи. И если заказчику нужно обрабатывать именно XML описания, то никуда не денешься. Он может быть и сам бы хотел вместо XML что-нибудь другое использовать, а изменить не в состоянии, т.к. не возможно это изменить.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[16]: Современное программирование
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 22.12.05 09:37
Оценка: 1 (1) +2 -1
Здравствуйте, eao197, Вы писали:

[...]

E>Тенденция однако.

E>

E>На самом деле, вполне нормальный ответ был бы: "Извините, но у меня нет времени на решение подобных тестовых задач".

Женя, вот тут я с тобой категорически не согласен. Во-первых, витиеватые извинения, как и требования от оппонентов чего-либо в форуме попросту неуместны, чай не пансион благородных девиц. Во-вторых, я понаблюдал за дискуссией с reductor-ом и впечатление сложилось не очень. Разводить на конкретику типа: "а покажи, как сделать XML-трансформер" в таком споре почти всегда неконструктивно. Никто не помешает вопрошающему сказать что-то вроде: "Ой, ужоснах какой! Да это же нормальному человеку не понять! Ни шиша ты мне, короче, не доказал, балбес хренов!" и закрутить новую итерацию бесполезного плевания конкретными примерами, которые на самом деле никому ничего не доказывают. Уводят дискуссию в сторону бодания вокруг звёздочек и значков — это да, это запросто.

Ну и вопросы про портфолио — они тоже наводят на мысль о мерянии, кхм, ну ты понял, чем, тем паче, что reductor, как раз, сбил тебя на конкретику просто блестяще. И кстати, вполне оправданно.

Так что, reductor оппонентов довольно экономично послал и, в сущности, своершенно правильно сделал. Я бы, кстати, примерно так же поступил. Потому что в основном дискуссия должна была бы идти о принципах.

E>[...] А жаль, многие высказывания reductor-а действительно интересны и полезны.


В одной посылке, как минимум, я с ним согласен — важно понять принципы, а потом уже освоение языков, использующих эти принципы, особой проблемы не представляет.



Сначала хотел написать тебе в мыло, но показалось, что такое рассуждение будет интересно не только тебе одному. Тем паче, что дискуссия-то открытая. Вот и оценка — тоже открытая. Nothing personal.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.