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

IEIEIEIO

Автор arseniiv, октября 30, 2010, 18:47

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

myst

Цитата: Python от ноября  1, 2010, 20:17
Если инклуд содержит лишь другие инклуды, то непосредственно в нем эти директивы могут и отсутствовать. Значит ли это, что костыль здесь не используется?
Не-не-не, такие отмазки не проканают. Ляпнули глупость — имейте мужество признать свою ошибку.

Цитата: Python от ноября  1, 2010, 20:17
Нет, он используется косвенно — через подключаемые к инклуду инклуды, поскольку обычно присутствует при любом объявлении переменных или функций, немного по-разному оформляемых в С и С++.
Скажите-ка мне, для чего предназначен второй костыль, какую именно несовместимость он устраняет?

myst

Цитата: Python от ноября  1, 2010, 20:25
Зато бесплатно и не требуют через месяц денег.
За окном идёт снег.

Цитата: Python от ноября  1, 2010, 20:25
Представим, что в неудачной попытке подключиться к интернету пользователь случайно отключил серверную службу справки, а потом пытается найти информацию в справке, как ее включить. В нормальной системе должен быть документ (текст, html) с краткой инструкцией, как все исправить.
Я про локальную справку говорил, а Вы о чём фантазируете?

Python

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

Python

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

arseniiv

Только не надо тут придумывать, что C/++ — божественный язык. Его портит препроцессор. Надо было придумать без него.

Python

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

arseniiv

Мне не нравится то, что без него там в некоторых случаях следовало бы обходиться средствами языка (которых нет). Конечно, препроцессоры нужны. Но в меру. А когда это нельзя сделать — очень плохо.

myst

Цитата: Python от ноября  1, 2010, 20:34
Очевидно, он необходим для правильной линковки с двоичными библиотеками, используемыми как С, так и С++.
Ну, и что из этого следует, в каких заголовочниках он должен быть?

Цитата: Python от ноября  1, 2010, 20:34
Серверная часть локальной справки тоже отключается, разве нет? Либо пользователь отключил службу, от которой зависит работоспособность службы справки и поддержки.
А если пользователь отключил диск, на котором находятся данные справки, или отключил свою голову?

Цитата: arseniiv от ноября  1, 2010, 20:39
Только не надо тут придумывать, что C/++ — божественный язык. Его портит препроцессор. Надо было придумать без него.
А кто тут придумывает? Конечно, препроцессор — костыль, слегка прикрывающий ущербность обоих языков.

Цитата: Python от ноября  1, 2010, 20:41
Чего мне не хватает в джаве, так это goto и препроцессора.
Воспользоваться препроцессором не позволяет какая-то очень суровая религия?

arseniiv

Цитата: myst от ноября  1, 2010, 20:59
А кто тут придумывает? Конечно, препроцессор — костыль, слегка прикрывающий ущербность обоих языков.


Delphi, кстати, развивается скачками, зря вы так. Привычка, может.

Кстати, вы заметили, что многие интегрированные среды с каждой новой версией тормозят всё существеннее? Это ужасно. Потому что все. (Которые встречались.) Плохо, потому что нельзя убрать неиспользуемые компоненты.

Bhudh

Offtop
Цитата: arseniivDelphi, кстати, развивается скачками
И бегами? На тотализаторе, что ли, средства на разработку зарабатывают?
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Python

Цитата: myst от ноября  1, 2010, 20:59
А если пользователь отключил диск, на котором находятся данные справки, или отключил свою голову?
Голову в первую очередь :)
Представим, пользователь услышал от кого-то, что работу компьютера можно ускорить, отключив лишние службы. А потом пытается понять, почему после столь полезной процедуры у него ничего не рботает.
Цитата: myst от ноября  1, 2010, 20:59
Ну, и что из этого следует, в каких заголовочниках он должен быть?
В смысле? Не ломайте мой парсер.
Цитата: myst от ноября  1, 2010, 20:59
Конечно, препроцессор — костыль, слегка прикрывающий ущербность обоих языков.
Мощный костыль, к стати, раз ущербный язык стал всеобщим стандартом.
Цитата: myst от ноября  1, 2010, 20:59
Воспользоваться препроцессором не позволяет какая-то очень суровая религия?
В стандартную поставку джавы, вроде бы, не включен. Хотя, конечно, можно применить сишный, но это уже немного не то удовольствие.

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

Bhudh

Цитата: PythonПредставим, пользователь услышал от кого-то, что работу компьютера можно ускорить, отключив лишние службы.
Вы спорите с человеком, который мне это советовал ;D.
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

myst

Цитата: arseniiv от ноября  1, 2010, 21:04
Delphi, кстати, развивается скачками, зря вы так.
Что Вы хотели сказать?

Цитата: arseniiv от ноября  1, 2010, 21:04
Кстати, вы заметили, что многие интегрированные среды с каждой новой версией тормозят всё существеннее?
Нет, раньше я ими не пользовался, поэтому сравнивать не с чем.

myst

Цитата: Python от ноября  1, 2010, 21:25
Голову в первую очередь :)
Представим, пользователь услышал от кого-то, что работу компьютера можно ускорить, отключив лишние службы. А потом пытается понять, почему после столь полезной процедуры у него ничего не рботает.
Представим, пользователь услышал от кого-то, что работу компьютера можно ускорить, отключив питание лишних устройств. А потом... Ну, Вы понили. ;)

Цитата: Python от ноября  1, 2010, 21:25
В смысле? Не ломайте мой парсер.
Какой у Вас хрупкий парсер, однако. Вопрос предельно ясный. Вы знаете назначение костыля, так скажите, когда, то есть в каких заголовочниках, его следует применять.

Цитата: Python от ноября  1, 2010, 21:25
Мощный костыль, к стати, раз ущербный язык стал всеобщим стандартом.
Этот костыль не является причиной распространения C.

Цитата: Python от ноября  1, 2010, 21:25
В стандартную поставку джавы, вроде бы, не включен.
Ну и что?

Цитата: Python от ноября  1, 2010, 21:25
Хотя, конечно, можно применить сишный, но это уже немного не то удовольствие.
Почему же? Но в любом случае Вас никто не заставляет использовать именно сишный. И да, зачем Вам вообще понадобился препроцессор для Жабы?

Цитата: Python от ноября  1, 2010, 21:25
как скомпилировать ANSI C в класс для JVM?
Никак.

Цитата: Python от ноября  1, 2010, 21:25
Или написать кроссплатформенный код, пригодный и для .NET, и для JVM?
На каком языке?

Python

Цитата: myst от ноября  2, 2010, 07:48
И да, зачем Вам вообще понадобился препроцессор для Жабы?
1) Некоторые конструкции в этом языке просто созданы для рекламы макросов.
2) Адаптация кода, написанного на других С-подбных языках.

Цитата: myst от ноября  2, 2010, 07:48
На каком языке?
Возможно, на каком-то Java/С#-подобном языке с использованием препроцессора?

Цитата: myst от ноября  2, 2010, 07:48
Вы знаете назначение костыля, так скажите, когда, то есть в каких заголовочниках, его следует применять.
Ответ очевиден. Костыль полезен, когда синтаксис для разных реализаций C/C++ имеет некоторые различия. Впрочем, этим возможности препроцессора не исчерпываются.

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

myst

Цитата: Python от ноября  2, 2010, 13:09
1) Некоторые конструкции в этом языке просто созданы для рекламы макросов.
Расскажите, что ли, нам тоже интересно.

Цитата: Python от ноября  2, 2010, 13:09
2) Адаптация кода, написанного на других С-подбных языках.
:o

Цитата: Python от ноября  2, 2010, 13:09
Возможно, на каком-то Java/С#-подобном языке с использованием препроцессора?
В таком случае, нужен не препроцессор, но врач.

Цитата: Python от ноября  2, 2010, 13:09
Ответ очевиден. Костыль полезен, когда синтаксис для разных реализаций C/C++ имеет некоторые различия.
Неправильный ответ. Как Вы надоели юлить. :down: Если Вы не знаете, в каких случаях применяется этот костыль, то не прикидывайтесь, что знаете. А если знаете, то какого чёрта морочите мне голову и несёте чушь про то, что он присутствует во всех сишных заголовочниках?

Цитата: Python от ноября  2, 2010, 13:09
Пользователь редко лезет с отверткой к компьютеру, а клавиатура и мышь у него всегда под рукой. Все действия через «дружественный» интерфейс воспринимаются как безопасные, ведь даже если что-то перепутал, всегда есть возможность посмотреть справку :)
(Зевнул.) Опять фантазии, скукота...

Python

Цитата: myst от ноября  2, 2010, 13:32
Расскажите, что ли, нам тоже интересно.
Ну, например, ввод-вывод в джаве ну очень громоздкий, Вам так не кажется?

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

myst

Цитата: Python от ноября  2, 2010, 13:49
Ну, например, ввод-вывод в джаве ну очень громоздкий, Вам так не кажется?
Мне нет. Приведите пример кода, который Вы мечтаете упростить макросами.

Цитата: Python от ноября  2, 2010, 13:49
Адаптация сишного кода — не настолько бессмысленная задача, как кажется. Уже хотя бы по той причине, что открытого сишного кода было создано более чем достаточно. Если мы используем существующую сишную программу как вспомогательный инструмент к джава-приложению, то есть смысл сделать эту программу совместимой с любой платформой, на которой работает джава. Идеальный вариант — компиляция в Java-класс, либо использование фрагментов сишной программы в коде на джаве
Вы макросами хотите решить эту задачу? :o

Цитата: Python от ноября  2, 2010, 13:49
У Вас имеется правильный? Тогда я внимательно слушаю.
Э не-е, так не пойдёт. Сначала признайте, что сморозили глупость.

Цитата: Python от ноября  2, 2010, 13:49
А в чем состоит принципиальная несовместимость этих языков?
Что такое принципиальная несовместимость? Кому в здравом уме может прийти мысль соединять ужа с ежом с помощью текстовых макросов? У большинства загоревшихся после 2—3 крупных огребаний эйфория мощщи́ макросов проходит и приходит понимание, что статическая типизация — это добро, а видеть именно то, что получает компилятор — щастье.

Python

Цитата: myst от ноября  2, 2010, 14:43
Э не-е, так не пойдёт. Сначала признайте, что сморозили глупость.
Не вижу, в чем глупость. Если мои представления о предмете дискуссии ошибочны, то в чем именно?

Цитата: myst от ноября  2, 2010, 14:43
не нет. Приведите пример кода, который Вы мечтаете упростить макросами.
Код на джаве с препроцессором мог бы, например, содержать подобные фрагменты:

#define PRINTLN System.out.println
#define OPENW(W,F,S) File F = new File(S);\
if (F.exists()) F.delete(); \
Writer W = new BufferedWriter(new FileWriter(F));
....
PRINTLN("Hello, world");
OPENW(myWriter, myFile, "file.txt");
//Второй пример можно было бы сделать и лучше, но у меня нет желания и времени
//создавать на форуме библиотеку программ для несуществующего языка
....

Цитата: myst от ноября  2, 2010, 14:43
Вы макросами хотите решить эту задачу?
Макросы как один из возможных вспомогательных инструментов. Естественно, далеко не все можно привести к макросам — преобразование С в Java требует более сложных действий.

Цитата: myst от ноября  2, 2010, 14:43
Что такое принципиальная несовместимость? Кому в здравом уме может прийти мысль соединять ужа с ежом с помощью текстовых макросов?
Но согласитесь, оба языка имеют много общего между собой — намного больше, чем С и любой из них.
Цитировать
У большинства загоревшихся после 2—3 крупных огребаний эйфория мощщи́ макросов проходит и приходит понимание, что статическая типизация — это добро, а видеть именно то, что получает компилятор — щастье.
В чем счастье искать редкие фрагменты полезного кода между тоннами стандартных конструкций? ІМНО, легко читаемый код должен быть лаконичным.
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

myst

Цитата: Python от ноября  2, 2010, 16:10
Не вижу, в чем глупость. Если мои представления о предмете дискуссии ошибочны, то в чем именно?
Я даже жирным выделял, а Вы всё не видите, отмазки какие-то пустились лепить... Короче, Вы признаёте ложность своего высказывания
Цитата: Python от ноября  1, 2010, 18:01
В любом сишном инклуде это позорище присутствует.
?

Цитата: Python от ноября  2, 2010, 16:10
#define PRINTLN System.out.println
#define OPENW(W,F,S) File F = new File(S);\
if (F.exists()) F.delete(); \
Writer W = new BufferedWriter(new FileWriter(F));
....
PRINTLN("Hello, world");
OPENW(myWriter, myFile, "file.txt");
Вот именно за такое применение макросов убивают самым бесчеловечным способом. Вы хоть раз пробовали отлаживать код, напичканный подобным говном?

Цитата: Python от ноября  2, 2010, 16:10
Макросы как один из возможных вспомогательных инструментов.
И чему они вспомогают?

Цитата: Python от ноября  2, 2010, 16:10
Но согласитесь, оба языка имеют много общего между собой — намного больше, чем С и любой из них.
Это повод пуститься во все тяжкие и продать душу дьяволу?

Цитата: Python от ноября  2, 2010, 16:10
В чем счастье искать редкие фрагменты полезного кода между тоннами стандартных конструкций? ІМНО, легко читаемый код должен быть лаконичным.
Легко читаемый код и макросы — несовместимые понятия. У меня крепнет чувство, что Вы на днях узнали о макросах и очумели от их способности изменить код до неузнаваемости. Ну ничего, как дойдёт дело до практики, всё как рукой снимет (если не клинический случай, конечно).

Python

Цитата: myst от ноября  2, 2010, 16:48
Вот именно за такое применение макросов убивают самым бесчеловечным способом. Вы хоть раз пробовали отлаживать код, напичканный подобным говном?
Я и не утверждал, что именно такой вариант кода следует применять на практике — во втором примере по-хорошему начальные операции с файлом следовало бы вынести в отдельную функцию. Тем не менее, трудно отрицать, что, по сравнению с cout<<, printf или writeln, принятый в Java System.out.println выглядит устрашающе.
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

Python

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

Python

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

myst

Цитата: Python от ноября  2, 2010, 18:09
Если макросы использовать в меру и с пониманием их возможного вреда, то вполне совместимые.
Приведённый Вами пример показывает, что Вы пока не понимаете их вреда.

myst

Цитата: Python от ноября  2, 2010, 18:21
Я так понял, придирки к слову «любой»? Насколько я понимаю, в русском языке слово «любой» используется не только как синоним к «каждый», но и как эквивалент украинского «перший-ліпший». Иными словами, речь шла о высокой вероятности наличия подобных элементов в случайным образом выбранном файле .h. Надеюсь, мое понимание русского языка соответствует общепринятому?
:o Хренасе отмазочка...

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

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

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

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

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