Re[8]: Помогите новичку!!!
От: AVC Россия  
Дата: 24.10.06 23:22
Оценка:
Здравствуйте, konsoletyper, Вы писали:

AVC>>Интересно, как в Си "на первых порах обойтись без указателей", если в Си нет передачи параметров по ссылке, а есть только передача по значению?

AVC>>Волей-неволей придется использовать указатели.

K>А зачем возвращать указатели? Неужели нельзя вернуть структуру? Вообще, меня бесит практика навешивать кучу формальных параметров на методы/функции. Причём, что особенно не перевариваю, так это когда множетвенные значения возвращают в структуре, указатель на которую передаётся в метод.


Конечно, функция может вернуть и структуру.
Но, во-первых, больше одной структуры не вернешь.
А, во-вторых, не слишком уместно использовать стркутуры там, где достаточно простых переменных.
Возьмем хотя бы scanf, что-то вроде
scanf("%d %s", &n, s);

Ну и зачем здесь возвращать структуру?

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

Хоар
Re[7]: Помогите новичку!!!
От: AVC Россия  
Дата: 24.10.06 23:31
Оценка:
Здравствуйте, konsoletyper, Вы писали:

K>А как насчёт Smalltalk? Как на нём будет писать сишный программист?


Ведь писали же (и пишут) программисты на Objective C.
А это ничто иное, как смесь Си и Смоллтока.
(Правда, скажу честно, сам бы я не стал писать на такой смеси. Но это уже вкусовщина. )

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

Хоар
Re[6]: Помогите новичку!!!
От: AVC Россия  
Дата: 24.10.06 23:54
Оценка:
Здравствуйте, zheleza, Вы писали:

Z>А когда попрограммит немного и поймёт, что разницы и нет по сути между begin и {, тогда освоить подобные языки будет значительно проще и быстрее, ежели понадобится.


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

Z>Ну и наверное в свете все большего развития ООП имеет смысл начинать сразу с него, а не с процедурных языков. Думаю, изучить переход ООП-процедуры легче, чем процедуры-ООП, а многие, переходя на объектно-ориентированный язык, всё равно продолжительное время пользуются знаниями, полученными при процедурном программировании. К несчастью, многие вузовские программы безнадёжно устарели, а процесс их замены долог и мучителен


Это мысль спорна.
Классы нужны далеко не всегда, зачастую предпочтительнее обычные процедуры.
Да и разница между процедурным и объектно-ориентированным подходом примерно соответствует разнице между первым и вторым этажом. Принципиальной разницы нет.
Вот между процедурным и функциональным подходами разница принципиальная.
Если же следовать веяниям времени, то пора ориентироваться уже не на ООП как таковое, а на КОП.

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

Хоар
Re[13]: Помогите новичку!!!
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 25.10.06 00:19
Оценка:
Здравствуйте, Андрей Хропов, Вы писали:

ГВ>>Да, согласен. Нужен. В обязательном порядке. Если ты этого не понимаешь — это не моя проблема.

АХ>Ну наверное Кнут — это крутовато.

Трудно сказать, насколько это "крутовато". ИМХО, для того, чобы читать Кнута нужна всего-то базовая матподготовка и понимание совсем элементарных вещей: что такое компьютер и что такое алгоритм.

АХ>Объем все-таки большой и слишком много деталей, это скорее энциклопедия — справочник.


А как им пользоваться, если не понимаешь, что там написано и как его применить? Кнут, в частности, тем и хорош, что даёт "отвязное" от реалий воплощение алгоритмов. В отличие, кстати, от того же Вирта.

АХ>Но вот Ахо, Хопкрофт, Ульман или Седжвик или Кормен, Лейзерстон, Ривест — то, что надо ИМХО.


По первой троице, однозначно, это нужно изучать позже — после приобретения "алгоритмического фундамента". Седжвик, откровенно говоря, вызывает сомнения в полезности для начинающего (если речь идёт о "фундаментальных алгоритмах..."), ИМХО — рановато. По КЛР — не могу прокомментировать.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[12]: Помогите новичку!!!
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 25.10.06 00:41
Оценка:
Здравствуйте, Lloyd, Вы писали:

А>>Плохо понимая, что он делает. Блин, нельзя называть программистом,

А>>того кто не знает дискретной математики, хотя бы на уровне понимания основных
А>>алгоритмов и концепций.

L>Отнюдь, очень даже можно. 90%-ов рынка труда — это задачи не связанные со сколь-либо сложной алгоритмикой. Такова реальность, сколь бы ни было это печально осознавать.


И что из этого следует? Что нужно непременно попасть в те самые 90%?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[13]: Помогите новичку!!!
От: Lloyd Россия  
Дата: 25.10.06 07:35
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

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


А>>>Плохо понимая, что он делает. Блин, нельзя называть программистом,

А>>>того кто не знает дискретной математики, хотя бы на уровне понимания основных
А>>>алгоритмов и концепций.

L>>Отнюдь, очень даже можно. 90%-ов рынка труда — это задачи не связанные со сколь-либо сложной алгоритмикой. Такова реальность, сколь бы ни было это печально осознавать.


ГВ>И что из этого следует? Что нужно непременно попасть в те самые 90%?


Нет, это означает, что название "программист" вполне применимо к этому большинству, и следовательно, чтобы формально называться программистом, нет необходимости в вышеприведенных знаниях.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[12]: Помогите новичку!!!
От: Lloyd Россия  
Дата: 25.10.06 07:35
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

L>>Генадий, неужели вы согласны с коржиком, что начинающему программисту зачем-то нужен Кнут?


ГВ>Да, согласен. Нужен. В обязательном порядке. Если ты этого не понимаешь — это не моя проблема.


Я понимаю, что это не ваша проблема, но, извините, не могли бы вы конкретно указать для чего он нужен?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[14]: Помогите новичку!!!
От: AVC Россия  
Дата: 25.10.06 13:53
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>А как им пользоваться, если не понимаешь, что там написано и как его применить? Кнут, в частности, тем и хорош, что даёт "отвязное" от реалий воплощение алгоритмов. В отличие, кстати, от того же Вирта.


Я вот тут интересуюсь, в чем эта "отвязанность от реалий" выражается?
Уж не в причудливой ли системе команд MIX?

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

Хоар
Re[15]: Помогите новичку!!!
От: LaptevVV Россия  
Дата: 25.10.06 15:41
Оценка:
Здравствуйте, AVC, Вы писали:

ГВ>>А как им пользоваться, если не понимаешь, что там написано и как его применить? Кнут, в частности, тем и хорош, что даёт "отвязное" от реалий воплощение алгоритмов. В отличие, кстати, от того же Вирта.


AVC>Я вот тут интересуюсь, в чем эта "отвязанность от реалий" выражается?

AVC>Уж не в причудливой ли системе команд MIX?
MIX (кстати, новое издание переписывается на MMIX) — это только реализация... А отвязность в том, что алгоритмы написаны на простом человеческом языке...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[12]: Помогите новичку!!!
От: vvotan Россия  
Дата: 25.10.06 16:50
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Здравствуйте, night beast, Вы писали:


NB>>не мешайте мальчику самовыражаться.

NB>>

ГВ>Нефиг.


Пофиг
--
Sergey Chadov

... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[14]: Помогите новичку!!!
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 25.10.06 19:32
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>>>Отнюдь, очень даже можно. 90%-ов рынка труда — это задачи не связанные со сколь-либо сложной алгоритмикой. Такова реальность, сколь бы ни было это печально осознавать.


ГВ>>И что из этого следует? Что нужно непременно попасть в те самые 90%?


L>Нет, это означает, что название "программист" вполне применимо к этому большинству, и следовательно, чтобы формально называться программистом, нет необходимости в вышеприведенных знаниях.


— Я учил тебя Закону Джунглей, касающемуся всего нашего населения за исключением Обезьяньего Народа, живущего среди ветвей. У них нет закона. Обезьяны — отверженные. У них нет собственного наречия; они пользуются украденными словами, которые подслушивают, когда подглядывают за нами, прячась в ветвях. У них не наши обычаи. Они живут без вожаков. У них нет памяти. Они хвастаются, болтают, уверяют, будто они великий народ, готовый совершать великие дела в джунглях, но падает орех, им делается смешно, и они все забывают. Мы, жители джунглей, не имеем с ними дела...


Редьярд Киплинг, Книга Джунглей
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[13]: Помогите новичку!!!
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 25.10.06 19:35
Оценка:
Здравствуйте, Lloyd, Вы писали:

ГВ>>Да, согласен. Нужен. В обязательном порядке. Если ты этого не понимаешь — это не моя проблема.

L>Я понимаю, что это не ваша проблема, но, извините, не могли бы вы конкретно указать для чего он нужен?

Нет, не мог бы. Сам возьми, да посмотри.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[15]: Помогите новичку!!!
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 25.10.06 19:38
Оценка:
Здравствуйте, AVC, Вы писали:

AVC>Я вот тут интересуюсь, в чем эта "отвязанность от реалий" выражается?

AVC>Уж не в причудливой ли системе команд MIX?

Ну, на мой взгляд — как раз в этом. MIX не позволяет относиться к Кнуту, как к "справочнику рецептов на языке X". То бишь, прямо заставляет думать своей головой. На определённом этапе — очень полезное качество.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[16]: Помогите новичку!!!
От: AVC Россия  
Дата: 25.10.06 22:07
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

AVC>>Я вот тут интересуюсь, в чем эта "отвязанность от реалий" выражается?

AVC>>Уж не в причудливой ли системе команд MIX?

ГВ>Ну, на мой взгляд — как раз в этом. MIX не позволяет относиться к Кнуту, как к "справочнику рецептов на языке X". То бишь, прямо заставляет думать своей головой. На определённом этапе — очень полезное качество.


А что, написанию программ на высокоуровневых языках мышление противопоказано?
Что же касается использования в книге ассемблера как основного языка, возникает впечатление, что Кнут не рассматривал ФП как существенную составляющую искусства программирования.
Я, к примеру, не слыхал о ФП на языке ассемблера.

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

Хоар
Re[14]: Помогите новичку!!!
От: Lloyd Россия  
Дата: 26.10.06 06:14
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>>>Да, согласен. Нужен. В обязательном порядке. Если ты этого не понимаешь — это не моя проблема.

L>>Я понимаю, что это не ваша проблема, но, извините, не могли бы вы конкретно указать для чего он нужен?

ГВ>Нет, не мог бы. Сам возьми, да посмотри.


Генадий, вы, кажется, не понимаете о чем я вас спрашиваю. Я знаю о чем написано в трехтомнике Кнута, имел глупость потратить на него время. Но, хоть убейте, я не вижу области применений этим знаниям для 90%-ов программистов.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[17]: Помогите новичку!!!
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 26.10.06 11:49
Оценка:
Здравствуйте, AVC, Вы писали:

ГВ>>Ну, на мой взгляд — как раз в этом. MIX не позволяет относиться к Кнуту, как к "справочнику рецептов на языке X". То бишь, прямо заставляет думать своей головой. На определённом этапе — очень полезное качество.


AVC>А что, написанию программ на высокоуровневых языках мышление противопоказано?


Нет, ты не понял. Я имел ввиду, что из Кнута нельзя просто взять, и просто скопировать из него реализации программ. Нужно хоть чуть-чуть головой поработать.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[15]: Помогите новичку!!!
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 26.10.06 12:45
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>Генадий, вы, кажется, не понимаете о чем я вас спрашиваю. Я знаю о чем написано в трехтомнике Кнута, имел глупость потратить на него время. Но, хоть убейте, я не вижу области применений этим знаниям для 90%-ов программистов.


Так я тоже не вижу в Кнуте никакого смысла для тех самых 90%, которые формально называются программистами
Автор: Lloyd
Дата: 25.10.06
(я так понимаю, ты сейчас о них говоришь). Правда, в сознательном стремлении в это множество я тоже не вижу никакого смысла.

А так Кнут... Ну, базовая алгоритмическая подготовка. Аккурат для начинающих, чтобы мозги на место поставить. В дальнейшем — хороший алгоритмический и в чём-то методический справочник.

P.S.: Моё имя пишется с двумя "н".
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[16]: Помогите новичку!!!
От: Lloyd Россия  
Дата: 26.10.06 13:00
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

L>>Генадий, вы, кажется, не понимаете о чем я вас спрашиваю. Я знаю о чем написано в трехтомнике Кнута, имел глупость потратить на него время. Но, хоть убейте, я не вижу области применений этим знаниям для 90%-ов программистов.


ГВ>Так я тоже не вижу в Кнуте никакого смысла для тех самых 90%, которые формально называются программистами
Автор: Lloyd
Дата: 25.10.06
(я так понимаю, ты сейчас о них говоришь). Правда, в сознательном стремлении в это множество я тоже не вижу никакого смысла.


Геннадий, если не затруднит, прочитайте пожалуйста еще раз вопрос, который я вам задал.

Hint: Я не спрашивал есть ли смысл (это слишком отвлеченное понятие, смысл можно найти даже в изучении суахили), я просил описать где в современной жизни можно применить знания, которые новичек гипотетически может почерпнуть из Кнута.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[18]: Помогите новичку!!!
От: AVC Россия  
Дата: 26.10.06 13:05
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Нет, ты не понял. Я имел ввиду, что из Кнута нельзя просто взять, и просто скопировать из него реализации программ. Нужно хоть чуть-чуть головой поработать.


Теперь понял.
Но меня и правда заинтересовало, что Кнут все программы написал на ассемблере.
Следует ли отсюда, что он игнорировал функциональный подход?

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

Хоар
Re[17]: Помогите новичку!!!
От: LaptevVV Россия  
Дата: 26.10.06 13:13
Оценка: 1 (1) +1
Здравствуйте, Lloyd, Вы писали:

L>Hint: Я не спрашивал есть ли смысл (это слишком отвлеченное понятие, смысл можно найти даже в изучении суахили), я просил описать где в современной жизни можно применить знания, которые новичек гипотетически может почерпнуть из Кнута.


Ну дык блин! Давайте повыкидываем из высшего образования (программистов) всю математику нафиг — ее тоже нельзя нигде применить в современной жизни...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.