The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Доступно второе издание книги 'Программирование: введение в профессию', opennews (ok), 02-Мрт-21, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


65. "Доступно второе издание книги Программирование: введение в п..."  +1 +/
Сообщение от пох. (?), 02-Мрт-21, 22:33 
> Ну если учить СИ то Язык программирования C (Брайан Керниган, Деннис Ритчи)

прекрасная книжка, но - потом открываешь код линуксного ведра, и не понимаешь ровно ничего.
Причина, надеюсь, очевидна.
Нет, я хз что читать про современный C.

> C++ то Язык программирования C++. Краткий курс

вообще нечитаемо (как и весь страуструп). Чем заменить тоже не скажу, не знаю.
Modern C++ Design? Там предполагается что not-so-modern ты уже откуда-то узнал, студенту не поможет.

> лучше уж Кнута за то же время прочитать

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

В любом случае - алгоритмы это прекрасно, но надо ж уметь и код как-то написать...

Ответить | Правка | К родителю #21 | Наверх | Cообщить модератору

70. "Доступно второе издание книги Программирование: введение в п..."  –1 +/
Сообщение от Неокортекс (?), 02-Мрт-21, 22:54 
Есть одно но, прочитав одного автора, ты получишь одно мнение на язык и его стиль, поэтому читать нужно минимум десятки книг, а то и сотни, но у многих мозжечок не выдерживает.
Ответить | Правка | Наверх | Cообщить модератору

73. "Доступно второе издание книги Программирование: введение в п..."  +1 +/
Сообщение от Sw00p aka Jerom (?), 02-Мрт-21, 23:13 
>прекрасная книжка

Так же как и книжки Н. Вирта.

> Нет, я хз что читать про современный C

Читать стандарт и расширения компиляторов.

> Впрочем, во многом полезнее его именно пролистать, а время потратить на что-то другое.

Если ты не готов заниматься тем, чем занимается Кнут, то читать не стоит.

> В любом случае - алгоритмы это прекрасно, но надо ж уметь и код как-то написать...

А чем "код" отличается от алгоритма? Уметь писать "код" - это что такое вообще?

Ответить | Правка | К родителю #65 | Наверх | Cообщить модератору

80. "Доступно второе издание книги Программирование: введение в п..."  –1 +/
Сообщение от пох. (?), 03-Мрт-21, 00:00 
> Так же как и книжки Н. Вирта.

а, шо?! ТОЖЕ каждый день новые?!
ффуу, нет, померещилось, алгоритмы и методы не меняются с годами.

Расскажи вот мне, базируясь на информации, полученной исключительно из керниганов с ритчами - почему не компилируется, блжад, такой код:
extern __inline__ int fn() { some shit }  
(нет, это не мой код, это другие норкоманы. Он, собственно, компилируется - только не линкуется потом. Угадаешь, почему? и, кстати, ЧТО блжад вообще тут написано, если подумать? [прости, тебе нечем, но это для других читателей])

это я даже не про static_assert двух несовместимых синтаксисов, и, б-же упаси, не про интринсики. Хотя при попытке поправить банальную очепятку в линуксном ведре - ты непременно напорешься и на то, и на другое. И вот что делать прочитавшему Кернигана?

> Если ты не готов заниматься тем, чем занимается Кнут

э... нет. я не готов стать теоретиком от программирования, и должность профессора мне тоже никто что-то не предлагает.

Я программирую, а не рассуждаю о. (Напоминаю, что последнюю свою общеизвестную программу наш прохвессор написал 30 лет назад, и по современным меркам она - г-но и пользоваться ей невозможно. Не смотря на (возможно) прекрасный код и идеальне алгоритмы внутри - она никому не нужна.)

> А чем "код" отличается от алгоритма?

А, ну тогда паааанятна... месье теоретик.

Ответить | Правка | Наверх | Cообщить модератору

205. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от _ (??), 04-Мрт-21, 06:47 
>ЧТО блжад вообще тут написано?

да я и сама офигела!(С) 8-)
В лучшем случае "твёрдая водка" ... но это врядли :)

Ответить | Правка | Наверх | Cообщить модератору

207. "Доступно второе издание книги Программирование: введение в п..."  –1 +/
Сообщение от n00by (ok), 04-Мрт-21, 07:36 
"Внешние идентификаторы, начинающиеся со знака подчеркивания, а также все другие идентификаторы, начинающиеся с двух знаков подчеркивания или с подчеркивания и заглавной буквы, зарезервированы для использования в библиотеке."

Таким образом Керниган и Риччи отсылают к соответствующей документации.

Ответить | Правка | Наверх | Cообщить модератору

215. "Доступно второе издание книги Программирование: введение в п..."  –1 +/
Сообщение от Sw00p aka Jerom (?), 04-Мрт-21, 21:33 
> а, шо?! ТОЖЕ каждый день новые?!
> ффуу, нет, померещилось, алгоритмы и методы не меняются с годами.

в смысле каждый день новые? Книжки по паскалю? А зачем они должны быть каждый день новыми если стандарт не меняется? Алгоритмы новые, да придумываются.

> Расскажи вот мне, базируясь на информации, полученной исключительно из керниганов с ритчами
> - почему не компилируется, блжад, такой код:
> extern __inline__ int fn() { some shit }

Ну честно не знаю, может во времена Кернигана и Ритчи не было понятия inline, а потом всякие гнушники поналипили отсебятины работающее с нюансами вот и не линкуется при некоторых обстоятельствах.

> это я даже не про static_assert двух несовместимых синтаксисов, и, б-же упаси,
> не про интринсики. Хотя при попытке поправить банальную очепятку в линуксном
> ведре - ты непременно напорешься и на то, и на другое.
> И вот что делать прочитавшему Кернигана?

А ничего, вот такие вот стандарты и следования им.

> э... нет. я не готов стать теоретиком от программирования, и должность профессора
> мне тоже никто что-то не предлагает.

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

> Я программирую, а не рассуждаю о. (Напоминаю, что последнюю свою общеизвестную программу
> наш прохвессор написал 30 лет назад, и по современным меркам она
> - г-но и пользоваться ей невозможно. Не смотря на (возможно) прекрасный
> код и идеальне алгоритмы внутри - она никому не нужна.)

На вики есть биография этого профессора, и там же перечислены его заслуги. А тот же Ферма вообще не был математиком, а заслуги имеет. Каждому своё, не буду говорить, "мол а ты чего добился, какие твои заслуги", время покажет, и дай Бог Опеннету прожить еще 100 лет, вероятно и ваши заслуги так же в коментах будут обсуждать :)

> А, ну тогда паааанятна... месье теоретик.

Этот вопрос мне легче с Ordu обсудить :) А ниже в коментах ответили на этот вопрос в принципе.

Успехов.

Ответить | Правка | К родителю #80 | Наверх | Cообщить модератору

230. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 05-Мрт-21, 22:40 
> Ну честно не знаю

Ну то есть кодить-то ты по факту и не умеешь.
Ч.т.д.

> А ничего, вот такие вот стандарты и следования им.

Керниган писал свою книжку в 78м году. С тех пор "немножко" изменились компьютеры, косвенных автоинкрементов, которым большая часть замысловатого сишного синтаксиса посвящена, в процессорах не стало вообще, а вызов однострочных подпрограмм оказался необоснованно дорогим удовольствием.

Проблема что нет никакой более другой книжки, в которой были бы оба варианта __inline__ и их отличия от inline, и оба static_assert. Приходится догадываться по книжкам от c++ (который другой язык и вовсе не все заимствования одинаково выглядят) или по объяснениям коллег, если снизойдут и владеют темой. Ты вот не владеешь.

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

читать адаптации, сделанные кем-то кто прочитал вместо тебя (Кнут, если что, именно адаптация). Настоящие учоные делают ровно так же. Вся современная практика хранения данных основана на расшифровке Анвином адаптации Планка фундаментального труда Рида-Соломона. Его никто из ныне живущих толком не понимает и никакой пользы тебе от него не будет вообще, даже если поймешь. А Планк и его китаец поди PhD на своей адаптации сделали, а может и не один а десять. Вот Анвин был такой инженер, один на всех. Остальные копипастеры в основном.

Поэтому когда какой-то на сей раз хранцузский вчоный выкатил на гора аналогичную конструкцию на базе никому неведомого Мохита-трансформа - его все послали нахер. Потому что уже учоные, помнят про raid6. Но ты можешь попытаться, конечно. Только я уверен, даже если возьмешь Ordu в помощники, кроме пшика ничего не выйдет. То есть вы ни теорию не умеете, ни практику программирования. А в качестве молитвенника Кнут не очень полезен.

> А ниже в коментах ответили на этот вопрос в принципе.

Чушь ответили-то. То есть никто из вас, присутствующих, вообще не умеет кодить, как минимум на си. Ну, что и требовалось доказать.

Ответить | Правка | Наверх | Cообщить модератору

232. "Доступно второе издание книги Программирование: введение в п..."  –1 +/
Сообщение от Sw00p aka Jerom (?), 06-Мрт-21, 02:08 
> Ну то есть кодить-то ты по факту и не умеешь.
> Ч.т.д.

Кодить что и на чем? Вот мелом на доске могу, или на запотевшем стекле, ребенку на пальцах показать могу. Ниже в коментах ответили, что значить "кодить".

> Керниган писал свою книжку в 78м году. С тех пор "немножко" изменились
> компьютеры, косвенных автоинкрементов, которым большая часть замысловатого сишного синтаксиса
> посвящена, в процессорах не стало вообще, а вызов однострочных подпрограмм оказался
> необоснованно дорогим удовольствием.

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

> Проблема что нет никакой более другой книжки, в которой были бы оба
> варианта __inline__ и их отличия от inline, и оба static_assert. Приходится
> догадываться по книжкам от c++ (который другой язык и вовсе не
> все заимствования одинаково выглядят) или по объяснениям коллег, если снизойдут и
> владеют темой. Ты вот не владеешь.

Стек вам в помощь и документация по компилятору.

https://stackoverflow.com/questions/2082551/what-does-inline...

https://gcc.gnu.org/onlinedocs/gcc/Inline.html

https://gcc.gnu.org/onlinedocs/gcc/Alternate-Keywords.html#A...

И напомните мне за какой стандарт С писалась книжка Керниганом?

> читать адаптации, сделанные кем-то кто прочитал вместо тебя (Кнут, если что, именно
> адаптация). Настоящие учоные делают ровно так же.

А ну ка по подробней про Кнутовую адаптацию, я чет не вкурил.

> Его никто из ныне живущих толком не понимает и никакой пользы
> тебе от него не будет вообще, даже если поймешь.

Так для начала нужно понять, чтобы понять потом, что толку нет.

> Вот Анвин был такой инженер, один
> на всех. Остальные копипастеры в основном.

А тут пруфы в студию.

> Только я уверен, даже если возьмешь Ordu в помощники, кроме
> пшика ничего не выйдет. То есть вы ни теорию не умеете,
> ни практику программирования. А в качестве молитвенника Кнут не очень полезен.

Ничего не выйдет из чего? Что это такое, что дано вам, а мне с Ordu не дано?

> Чушь ответили-то. То есть никто из вас, присутствующих, вообще не умеет кодить,
> как минимум на си. Ну, что и требовалось доказать.

Ну вы озвучьте свою "чушь", а то попахивает "блаблабольством".

А про Си, простите, а что должны уметь, и с чего это на Си, вон Ordu на расте может. Я выше написал, могу на пальцах кодить, могу и мелом на доске.

Ответить | Правка | Наверх | Cообщить модератору

236. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 06-Мрт-21, 09:56 
> Кодить что и на чем?

ну я вообще-то строчку кода на си показал. Уверен, в хруст ты не умеешь точно так же. bash неинтересно.

> Ниже в коментах ответили, что значить "кодить".

ответили тоже неумеющие. То есть ответ был правильный - года так для 1950го. Уже в 70м в умных книжках для профессионалов было написано - "но настоящим профессионалом в программировании является тот, кто способен разобраться в чужом большом проекте". Потому что это, внезапно, в разы сложнее примитивного переноса алгоритма на язык программирования, для которого язык можно знать и посредственно. И нет, разбираться тебе пришлось бы не в "псевдокоде", а вот в подобных закорючках. Чтение на ночь K&R ничем этому бы не помогло. Можно его вообще пропустить, и сразу читать любимую тобой "документацию", про "оператор присваивания" там тоже есть.

> Стек вам в помощь и документация по компилятору.

мне неинтересно, я знаю правильный ответ. Судя по киданию ссылками на непонимаемые тобой статьи - ты по прежнему не можешь ответить на простой вопрос про сишечку. Т.е. читать Кернигана тебе было незачем, даром потратил время.

Ответ программиста, владеющего инструментом, уместится на двух строчках.

> А ну ка по подробней про Кнутовую адаптацию, я чет не вкурил.

И алгоритмы, и методики их оценки существовали и до него. Заслуга Кнута в основном в том, что он все это собрал в толстенных трех томах, отбросив ненужный шлак, и изложил (условно) доступным языком, а не вывалил тебе пачку ссылок на "документацию", которую и читать было бы нынче незачем - ctrlc/ctrlv со стека и всех дел. Если не компилится или не собирается - прокрутить до ответа, а не только из вопроса копипастить.

Но Кнут совершенно бесполезен неумеющему кодить в принципе. А тут, я смотрю, в основном такие.

Ответить | Правка | Наверх | Cообщить модератору

247. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от Sw00p aka Jerom (?), 06-Мрт-21, 16:23 
> ну я вообще-то строчку кода на си показал.

Тогда еще укажите используемый стандарт и компилятор. А потом уже решим K&R поможет или нет. С вашим примером K&R не поможет, почему - писал выше.

> ответили тоже неумеющие. То есть ответ был правильный - года так для
> 1950го.

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

> Уже в 70м в умных книжках для профессионалов было написано
> - "но настоящим профессионалом в программировании является тот, кто способен разобраться
> в чужом большом проекте".

Тут ссылочки на конкретные книжки нужны. Чужой большой проект по нынешним меркам должен иметь документацию. И не согласен с тем, что "настоящий профессионал в программировании" должен разбираться в "чужом большом проекте". Ему своего должно быть достаточно.

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

И что там сложного? Вы с большим проектом разбираетесь или "загадки обфусцированного кода" разгадываете?
Большой проект - должен иметь документацию, стандарты проектирования и т.д.

> И нет, разбираться тебе пришлось бы не в "псевдокоде",
> а вот в подобных закорючках.

Избавьте меня от этого, мне делать больше нечего как разгадывать закорючки.

> Чтение на ночь K&R ничем этому
> бы не помогло. Можно его вообще пропустить, и сразу читать любимую
> тобой "документацию", про "оператор присваивания" там тоже есть.

Бог в помощь.

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

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

https://en.wikipedia.org/wiki/Inline_function

А если не интересно читать - вопрос закрыт, по определению мой ответ вам тоже не должен быть интересен.

> Ответ программиста, владеющего инструментом, уместится на двух строчках.

:) рассмешили, из серии - "а сколько нужно вольт, чтобы завинтить шуруп?". Во времена K&R как бы ответили бы на этот вопрос, если была доступна только отвертка, а не шуруповерт? А в наше время когда доступны и отвертка и шуруповерт, этот вопрос был бы корректным?


> И алгоритмы, и методики их оценки существовали и до него. Заслуга Кнута
> в основном в том, что он все это собрал в толстенных
> трех томах, отбросив ненужный шлак, и изложил (условно) доступным языком, а
> не вывалил тебе пачку ссылок на "документацию", которую и читать было
> бы нынче незачем - ctrlc/ctrlv со стека и всех дел. Если
> не компилится или не собирается - прокрутить до ответа, а не
> только из вопроса копипастить.

Ну так выбирайте, читать вам Кнута или Стек. И решать вам какой источник вам полезней. Книжки с ответами на все вопросы увы нет.

> Но Кнут совершенно бесполезен неумеющему кодить в принципе. А тут, я смотрю,
> в основном такие.

Кнут ведь тоже человек времен K&R, и я думаю, он не собирается переиздавать свои труды под лад ГНУшников. Спросите его, почему?

Ответить | Правка | Наверх | Cообщить модератору

92. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от Аноним (92), 03-Мрт-21, 01:01 
>> Уметь писать "код" - это что такое вообще?

Перекладывание алгоритма на яп с учетом особенностей платформы и среды исполнения.

Ответить | Правка | К родителю #73 | Наверх | Cообщить модератору

216. "Доступно второе издание книги Программирование: введение в п..."  –1 +/
Сообщение от Sw00p aka Jerom (?), 04-Мрт-21, 21:38 
> Перекладывание алгоритма на яп с учетом особенностей платформы и среды исполнения.

Совершенно верно, +1.

Ответить | Правка | Наверх | Cообщить модератору

237. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 06-Мрт-21, 10:01 
>>> Уметь писать "код" - это что такое вообще?
> Перекладывание алгоритма на яп с учетом особенностей платформы и среды исполнения.

Хороший ответ для 1950го года, когда программы набирали переключателями.
Но нет. Уже во времена "Численные методы и программирование на фортране" не это считалось важным.

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

Ответить | Правка | К родителю #92 | Наверх | Cообщить модератору

248. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от Sw00p aka Jerom (?), 06-Мрт-21, 16:36 
> Хороший ответ для 1950го года, когда программы набирали переключателями.
> Но нет. Уже во времена "Численные методы и программирование на фортране" не
> это считалось важным.

Это ответ того, у кого мозоли на пальцах от этих переключателей?

> неспособные и нежелающие даже с чужим однострочным патчем
> чужой софт пересобрать, чтоб решить ерундовую проблемку?

Проблема в головах, увы её не решить. И все людские беды от ума. Желаю вам не решать чужие проблемы, а избегать свои.


Ответить | Правка | Наверх | Cообщить модератору

261. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от Последний из могикан. (?), 07-Мрт-21, 00:25 
Может и резко и жёстко но по моему достойные спецы не будут тратить своё время на опеннет.
P.S.Опеннет очень хорош.Но для определённого контингента)
Ответить | Правка | К родителю #237 | Наверх | Cообщить модератору

263. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от Sw00p aka Jerom (?), 07-Мрт-21, 01:08 
> Может и резко и жёстко но по моему достойные спецы не будут
> тратить своё время на опеннет.
> P.S.Опеннет очень хорош.Но для определённого контингента)

Наивный, вы владеете своим временем, чтобы его еще и тратить?


Ответить | Правка | Наверх | Cообщить модератору

264. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от Последний из могикан. (?), 07-Мрт-21, 01:28 
Детерминизм это оправдание собственной лени.
Ответить | Правка | Наверх | Cообщить модератору

265. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от Sw00p aka Jerom (?), 07-Мрт-21, 03:45 
> Детерминизм это оправдание собственной лени.

То, чего мы сторонимся, то нас преследует. То к чему мы стремимся, то нас настигает. Что это?

Ответить | Правка | Наверх | Cообщить модератору

266. "Доступно второе издание книги Программирование: введение в п..."  +1 +/
Сообщение от пох. (?), 07-Мрт-21, 09:40 
> Может и резко и жёстко но по моему достойные спецы не будут тратить своё время на опеннет.

Ну я вот двух видел. Те точно умели кодить.

> P.S.Опеннет очень хорош.Но для определённого контингента)

для контингента, который так и не смог принять уродливые втентакли с телеграмчиками как среду общения.


Ответить | Правка | К родителю #261 | Наверх | Cообщить модератору

115. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от myhand (ok), 03-Мрт-21, 07:04 
> Нет, я хз что читать про современный C.

Все тоже.  Плюс нужный стандарт.

(C++ - харам, не надо читать.)

> если ты можешь прочитать а не пролистать Кнута за то же время - то, конечно, успехов.

А какие проблемы-то? Да еще если ограничиться выполнением заданий уровня 01)

> В любом случае - алгоритмы это прекрасно, но надо ж уметь и код как-то написать...

Так программирование - это про алгоритмы, а не про описание приплюснутого (или к-л еще) синтаксиса.

Лучшего "введения в" чем SICP тут, мне кажется, так и не написали.

Ответить | Правка | К родителю #65 | Наверх | Cообщить модератору

220. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 04-Мрт-21, 23:04 
>> Нет, я хз что читать про современный C.
> Все тоже.  Плюс нужный стандарт.

Я вот там выше задал вопрос из своей практики - как мне показалось, банальный. (Во всяком случае, в кругу программистов мне дали на него ответ почти сразу, и даже показали почему перестал работать.)
В ответ только чепуха и попытки спрыгнуть с темы. Ты тоже не можешь объяснить что там написано?

>> если ты можешь прочитать а не пролистать Кнута за то же время - то, конечно, успехов.
> А какие проблемы-то? Да еще если ограничиться выполнением заданий уровня 01)

толстый он. Ну и тоску навевает смертную.

>> В любом случае - алгоритмы это прекрасно, но надо ж уметь и код как-то написать...
> Так программирование - это про алгоритмы, а не про описание приплюснутого (или

то есть уметь писать код вам не надо, вы ни на каком инструменте не играете, руководитель, видимо?

Ответить | Правка | Наверх | Cообщить модератору

242. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от myhand (ok), 06-Мрт-21, 11:14 
> Ты тоже не можешь объяснить что там написано?

Можно носом ткнуть в что смотреть?  Лень по треду бегать, а ничего конкретного вроде куска кода я не припоминаю.

> толстый он. Ну и тоску навевает смертную.

Он тоньше этого опуса (или того же порядка).  На любителя, да.  Но если тебе скушны математические тексты - может и программирование не твое?

> то есть уметь писать код вам не надо

Надо, конечно.  Но это уже не про обучение программированию - а про обучение
синтаксису конкретного языка программирования.

Ответить | Правка | Наверх | Cообщить модератору

245. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 06-Мрт-21, 13:49 
>> Ты тоже не можешь объяснить что там написано?
> Можно носом ткнуть в что смотреть?  Лень по треду бегать, а

можно, как-никак, любимый образчик:
extern __inline__ int fn() { inline code; }  

Что за норкомания тут написана, что это ВООБЩЕ означает (а если подумать?) и, кстати, почему такая программа не собирается и что с этим делать? (а ты думал, это обстракция? Хрен там, сборка сломалась) И отдельно - как тебе помогло прочтение K&R для решения этой проблемы?

>  Но если тебе скушны математические тексты - может и программирование
> не твое?

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

>> то есть уметь писать код вам не надо
> Надо, конечно.  Но это уже не про обучение программированию - а
> про обучение синтаксису конкретного языка программирования.

ну а какое может быть программирование без конкретного синтаксиса? Тем более пример-то самого простого языка и сам по себе простой.

В плюсовых или хрустовых загогулинах и профессионалы путаются, и чаще реально проще переписать чем разбираться.

Ответить | Правка | Наверх | Cообщить модератору

249. "Доступно второе издание книги Программирование: введение в п..."  –1 +/
Сообщение от Sw00p aka Jerom (?), 06-Мрт-21, 17:12 
> можно, как-никак, любимый образчик:
> extern __inline__ int fn() { inline code; }
> Что за норкомания тут написана, что это ВООБЩЕ означает (а если подумать?)
> и, кстати, почему такая программа не собирается и что с этим
> делать? (а ты думал, это обстракция? Хрен там, сборка сломалась) И
> отдельно - как тебе помогло прочтение K&R для решения этой проблемы?

вот K&R вам точно сказали бы, что за нах нОркомания. Может еще конституция должна сказать, что за нах там написан? А за эту нОркоманию вам ответит только ГНУшная документация.

> ну уж точно не программирование стопиццотого способа сортировки массива. Это вообще мало
> "чье".

А зачем, когда за вас давно уже придумали, а вам всего лишь остается пользоваться тем что есть.

> С моей точки зрения, профессионалу полезно знать что в этой книге где-то
> есть, и примерно уметь оценить, стоит ли в ней рыться ради
> конкретного случая, или так сойдет.

Экстрасенсорный программист :) Не прочитав книги знает о чем там речь. Даже по содержанию на первых двух страницах книги, трудно судить о полезности всей книги, не прочитав её от корки до корки. А весело, когда там пишут, вот эту главу можете не читать и переходить к другой :)  

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

а зачем программировать, если можно и камни таскать. Каждому своё, не судите обо всех по себе.

> ну а какое может быть программирование без конкретного синтаксиса? Тем более пример-то
> самого простого языка и сам по себе простой.

Ну так для начала и нужно было написать на каком языке вы написали и какому стандарту придерживались, если вдруг у языка их куча, не говорю еще о том как эти стандарты соблюдаются теми или иными инструментами - компиляторами. Написали ГНУшную "ересь" и хотите пояснений от талмуда K&R?  

> В плюсовых или хрустовых загогулинах и профессионалы путаются, и чаще реально проще
> переписать чем разбираться.

:) пиши свое, программист!

Ответить | Правка | Наверх | Cообщить модератору

271. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от myhand (ok), 07-Мрт-21, 12:03 
>>> Ты тоже не можешь объяснить что там написано?
>> Можно носом ткнуть в что смотреть?  Лень по треду бегать, а
> можно, как-никак, любимый образчик:
> extern __inline__ int fn() { inline code; }

Это выдранный с мясом кусок кода.  Могу ошибиться, не зная что такое code.

> Что за норкомания тут написана, что это ВООБЩЕ означает (а если подумать?)
> и, кстати, почему такая программа не собирается и что с этим делать?

Не собралось, подозреваю, на не-gcc.  Т.к. __inline__ - нестандартный синоним inline
в ем: https://gcc.gnu.org/onlinedocs/gcc/Alternate-Keywords.html#A...

> отдельно - как тебе помогло прочтение K&R для решения этой проблемы?

А причем тут K&R?  Если на ansi-С пишешь - можно и K&R ограничиться.  А если
начал использовать более современные диалекты - тут есть стандарты, которые
таки надо читать.  Ну и документацию компилятора, если уж и нестандартные расширения используешь.

Все как я, в общем-то и написал: введение в синтаксис языка и стандарты.  Лучше
K&R введения в C - нету.

>>  Но если тебе скушны математические тексты - может и программирование
>> не твое?
> ну уж точно не программирование стопиццотого способа сортировки массива. Это вообще мало
> "чье".

Зато полезно понимать, что такое массив, что такое список
и т.п.  Подпрограммы-сопрограммы, вот это вот все.  Алгоритмы и
структуры данных, короче.  Может на вкус и цвет - тут есть и более
любимые тобой книжки, но Кнут - он вот как раз про это.

Раньше это надо было знать.  А сейчас - надо сечь в фреймворках,
API прикладных библиотек, в этом вот всем.  Хотя однажды невежество
подкрадется к такому смузихлебу и кааак наподдаст...

>>> то есть уметь писать код вам не надо
>> Надо, конечно.  Но это уже не про обучение программированию - а
>> про обучение синтаксису конкретного языка программирования.
> ну а какое может быть программирование без конкретного синтаксиса?

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

> В плюсовых или хрустовых загогулинах и профессионалы путаются, и чаще реально проще
> переписать чем разбираться.

Да, учить программированию с C или с приплюснутым - это жесть.

Ответить | Правка | К родителю #245 | Наверх | Cообщить модератору

272. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 07-Мрт-21, 12:55 
> Это выдранный с мясом кусок кода.  Могу ошибиться, не зная что такое code.

какой-то код. Неважно что делающий.
Меня интересуют предыдущие заклинания. Удивительно, но ты третий, кто не понимает, и, вероятно, не умеет кодить? Потому что вопрос (если не знать ответ) напрашивается.

> Не собралось, подозреваю, на не-gcc.  Т.к. __inline__ - нестандартный синоним inline

не угадал (не-gcc, но он знает про __inline__, да и в gcc в любой момент, а может уже, могли сломать точно так же, это устаревший вариант семантики). И не совсем/всегда синоним.

> А причем тут K&R?

вот при том - ты его читал, а реальную проблему в коде исправить не можешь - причем даже не понимаешь, что тут такого удивительного. Третий...

А я спрашивал не столько даже про проблему, специфичную для конкретного странного случая, сколько предлагал подумать, кому было бы чем, что вообще за норкомания здесь написана, что вообще тут должен был сделать компилятор, кроме как по сегфолту упасть от охренения?

Вот трем человекам не пришло даже в голову поинтересоваться, что за нахрен и как так быть может, хотя явный же бред написан, если не знать заранее то, о чем в K&R ничего нет - угадать не выйдет.

(А он может, ога. У инлайнов, внезапно, очень нетривиальная семантика. То что тут оно еще и сломалось, уже мелочь.)

Книжек таких, увы, нет. О чем, собственно, и была речь. Т.е. это один пример, просто на мой взгляд совсем уж выдающийся, а в общем и целом - современный си и практики программирования на нем уже очень далеко ушли от K&R, и книжку давно пора новую писать. Поменьше внимания уделяя никем неиспользуемому и бесполезному a[++i]+=b, побольше современным особенностям - инлайны, интрисики, cpu-specific код, что я еще забыл - то, чего ради и используют низкоуровневый язык по назначению.

Ответить | Правка | Наверх | Cообщить модератору

273. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от Sw00p aka Jerom (?), 07-Мрт-21, 17:04 
>вот при том - ты его читал, а реальную проблему в коде исправить не можешь - причем даже не понимаешь, что >тут такого удивительного. Третий...

Ну и где же ваш ответ? Где там проблема раз уж мы не знаем? Не будет ответа, считай не "блаблабол", а "3.14здабол" очередной.

Ответить | Правка | Наверх | Cообщить модератору

276. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 07-Мрт-21, 18:49 
> Ну и где же ваш ответ? Где там проблема раз уж мы

пшел нах, он тебе не нужен - ты не умеешь кодить.

Я готов продолжать обсуждение только с теми, кто хотя бы немного имеет отношение к профессии.

Ответить | Правка | Наверх | Cообщить модератору

279. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от Sw00p aka Jerom (?), 08-Мрт-21, 02:15 
> Я готов продолжать обсуждение только с теми, кто хотя бы немного имеет
> отношение к профессии.

ты уже дал себе определение, посмотрим кто с тобой будет хоть что-то обсуждать.


Ответить | Правка | Наверх | Cообщить модератору

280. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 08-Мрт-21, 09:33 
Нет, тебе мерещится. То что ты придумал мне какое-то 'определение' - исключительно твоя проблема. Ты ненунжное ненужно, др-р на впопенсосие, не умеющий кодить, с тобой обсуждать просто нечего и незачем.

Ответить | Правка | Наверх | Cообщить модератору

274. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от myhand (ok), 07-Мрт-21, 17:56 
>> Это выдранный с мясом кусок кода.  Могу ошибиться, не зная что такое code.
> какой-то код. Неважно что делающий.
> Меня интересуют предыдущие заклинания. Удивительно, но ты третий, кто не понимает, и,
> вероятно, не умеет кодить?

Ну, вопрос-то был о потенциальных проблемах, "почему не собирается"?  Я ответил почему может
не собираться.

>> Не собралось, подозреваю, на не-gcc.  Т.к. __inline__ - нестандартный синоним inline
> не угадал (не-gcc, но он знает про __inline__, да и в gcc
> в любой момент, а может уже, могли сломать точно так же,
> это устаревший вариант семантики). И не совсем/всегда синоним.

Нет, не сломали.  И - синоним в gcc.  "extern inline" может быть следующей кандидатурой.  Эта семантика неодинаково поддерживается стандартами.  Но, в принципе, ничего страшного тут нет: писавший подразумевал "у нас есть для этого extern, но вот вам типа inline версия, если хочите".

>> А причем тут K&R?
> вот при том - ты его читал, а реальную проблему в коде
> исправить не можешь

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

> современный си и практики программирования на нем
> уже очень далеко ушли от K&R, и книжку давно пора новую писать.

Не думаю.  Скорее, тенденция в том, что такие инструкции компилятору сувать
под нос нужно все реже - сам разберется что ему inline.  Вкалывают роботы.

Может и пора писать новое введение, но - некому, все померли.  Да и C, в отличие
от всяких питончиков - зарос legacy-конструкциями и проще не становится.

> никем неиспользуемому и бесполезному a[++i]+=b

Ну почему-ж неиспользуемому-то?  Азы адресации, присваивание...

> cpu-specific код, что я еще забыл

- а это вообще не про C, который "переносимый ассемблер".

Ответить | Правка | К родителю #272 | Наверх | Cообщить модератору

275. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 07-Мрт-21, 18:48 
> Ну, вопрос-то был о потенциальных проблемах, "почему не собирается"?  Я ответил почему может
> не собираться.

то что ты гадаешь, не зная ответа - это еще ладно. То что ты при этом не спросил вслух - "да что вообще тут за херь такая, как inline может быть extern и что тут курили или нюхали?!" - это вот странно.

> Не думаю.  Скорее, тенденция в том, что такие инструкции компилятору сувать
> под нос нужно все реже - сам разберется что ему inline.  

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

Вот a[++i]+=b - уже действительно не нужны тридцать лет как, нет тех процессоров, для которых Ритчи эту оптимизацию придумал (это одна инструкция dec pdp11), у современных от нее только inc/dec остались, т.е. только ++i/i++ имеют семантику, отражающую реальную особенность, да и та низачем не нужна), напиши в стиле фортрана - скомпилируется ровно в такой же код, только еще и удобочитаемый.

> - а это вообще не про C

Это про C, вот сейчас такое как раз патчу.

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


Ответить | Правка | Наверх | Cообщить модератору

281. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от myhand (ok), 08-Мрт-21, 10:36 
>> Ну, вопрос-то был о потенциальных проблемах, "почему не собирается"?  Я ответил почему может
>> не собираться.
> то что ты гадаешь, не зная ответа - это еще ладно.

Не мы таки - жизнь такая.  Ты задачи формулируй, чтобы не нужно было гадать.

> То что ты при этом не спросил вслух - "да что вообще
> тут за херь такая, как inline может быть extern и что
> тут курили или нюхали?!" - это вот странно.

In 2001, Linus said:
- "extern inline" means "I actually _have_ an extern for this function,
   but if you want to inline it, here's the inline-version"

Учитывая контекст - это именно то, о чем я написал.  Хотя я реально не лазил в стандарты,
чтобы выяснить когда эта семантика была бы корректной, если вообще.

>> - а это вообще не про C
> Это про C, вот сейчас такое как раз патчу.

Я не про то, что это неактуально практически (забивать гвозди могут хоть твоей
головой вместо молотка) - а про то, что это не то, для чего был придуман C.

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

Не буду.  Пойду в стандарты, документацию используемого компилятора и т.п.

Ответить | Правка | Наверх | Cообщить модератору

282. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 08-Мрт-21, 12:36 
> Ты задачи формулируй

Ну какое слово в специально для тебя переписанной формулировке было неясно:
> Что за норкомания тут написана, что это ВООБЩЕ означает (а если подумать?) и, кстати, почему
> такая программа не собирается и что с этим делать?

ответа, к моему удивлению, не знает и не умеет узнать ни один из собеседников. Ну и вот чего дальше с такими общаться на темы изучения программирования, если они кодить не умеют в принципе, только "разрабатывать идеальные алгоритмы" (да и те не умеют, полагаю, умеют из кнута скопипастить, может быть)?

Ответ мне неинтересен, я его и так знаю - мне интересно использовать знание или незнание тобой ответа (а не умение быстро нагуглить каких-то совпавших по ключевым словам ссылок, которые оппонент ни разу не прочел и не понял) для дальнейшей аргументации - почему K&R безнадежно устарела и читать ее совершенно бесполезно для современного программиста - другой хорошей художественной литературы хватает. С тем же успехом можно изучать назначения переключателей в Марк-1.

> Учитывая контекст - это именно то, о чем я написал.

ну прекрасно, что с третьей попытки ты осилил разобраться, непрекрасно что для этого потребовалась неделя уговоров.
Дальше, собственно, уже неинтересно, там действительно специфика конкретных компиляторов и конкретного диалекта (C11 все в очередной раз поменял, и не будем показывать пальцем у кого он оказался по умолчанию вместо привычного 99).

Ответить | Правка | Наверх | Cообщить модератору

283. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от myhand (ok), 08-Мрт-21, 12:53 
> ответа, к моему удивлению, не знает и не умеет узнать ни один
> из собеседников.

Так я бы не удивлялся, учитывая что ты ставишь некорректные задачи (к-е
не имеют единственного ответа, например).


Ответить | Правка | Наверх | Cообщить модератору

285. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 08-Мрт-21, 14:17 
> Так я бы не удивлялся, учитывая что ты ставишь некорректные задачи (к-е
> не имеют единственного ответа, например).

задача была, повторяю, не получить и так давно мне известный ответ, а продемонстрировать что сишечка нынче совсем не та, что в 72м году. Для чего был выбран уникально-образцовый кусок кода, проверенно вызывающий полный ах..й у человека, умеющего кодить, знающего Cи не по Кернигану, но не владеющего конкретным предметом.

К сожалению, я не учел, с какой публикой имею дело - мне все по инерции кажется, что опеннет подразумевает умение получать какую-то пользу от открытого кода, а не др-чку на фетиш впопенсосия и чтоб денег никому не платить.

Ответить | Правка | К родителю #283 | Наверх | Cообщить модератору

286. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от myhand (ok), 08-Мрт-21, 14:29 
>> Так я бы не удивлялся, учитывая что ты ставишь некорректные задачи (к-е
>> не имеют единственного ответа, например).
> задача была, повторяю, не получить и так давно мне известный ответ

Привожу пример подобной "задачи": раздели 71 на 8 с остатком.  Вот тут ты хочешь,
внезапно, единственный ответ.

> а продемонстрировать что сишечка нынче совсем не та, что в 72м году.
> Для чего был выбран уникально-образцовый кусок кода, проверенно вызывающий полный ах..й

Да не было конкретно у меня полного а...я, я умоляю.  То, что (первый) ответ не
был задуманным тобой - проблема формулировки задачи, а не конкретного
варианта решения.

Ответить | Правка | К родителю #285 | Наверх | Cообщить модератору

287. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 08-Мрт-21, 14:53 
> Привожу пример подобной "задачи": раздели 71 на 8 с остатком.  Вот тут ты хочешь,
> внезапно, единственный ответ.

В школе такие задачи училка, внезапно, тоже вовсе не для того задает, чтобы узнать от тебя остаток. Она его и так знает, он в конце учебника написан. А тебе это знание ничем не пригодится.
Задача была для остановиться и задуматься, если есть чем. Вы все ее сфейлили, предъявив вместо этого навык быстрого гуглежа (что характерно - бесполезный, только твоя цитата из Линуса была близко к цели).

Кроме разьве что экземпляра, вспомнившего про "библиотечные функции" - это вот спасибо, это я занес в анналы, использую в следующем аналогичном тредике для демонстрации не то что бесполезности, а вреда "знаний" полученных из книжек 70х годов.

Но с самим экземпляром, естественно, дискуссии о программировании получиться после такого ответа уже тоже не могло.

Ответить | Правка | К родителю #286 | Наверх | Cообщить модератору

288. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от myhand (ok), 08-Мрт-21, 16:31 
>> Привожу пример подобной "задачи": раздели 71 на 8 с остатком.  Вот тут ты хочешь,
>> внезапно, единственный ответ.
> В школе такие задачи училка, внезапно, тоже вовсе не для того задает,
> чтобы узнать от тебя остаток. Она его и так знает

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

> Задача была для остановиться и задуматься, если есть чем. Вы все ее
> сфейлили, предъявив вместо этого навык быстрого гуглежа (что характерно - бесполезный,
> только твоя цитата из Линуса была близко к цели).

Неправда.  Мой первоначальный ответ тоже был совершенно правильным, соответствуя
условиям задачи ("почему может не собраться" и т.п.).

Ответить | Правка | К родителю #287 | Наверх | Cообщить модератору

289. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от пох. (?), 08-Мрт-21, 22:09 
> Мой первоначальный ответ тоже был совершенно правильным

Ответ не был правильным (у этой задачи только один правильный ответ, как и у школьной), но он мне и не был нужен, совершенно. Нужно было задуматься, что тут написано - а этого вы не умеете, потому что не пишете на си и не читаете чужой код.
(другое дело если бы ты дал действительно правильный ответ, не задумываясь просто от того что его знал - тогда было бы с чего продолжать)

Ответить | Правка | К родителю #288 | Наверх | Cообщить модератору

290. "Доступно второе издание книги Программирование: введение в п..."  +/
Сообщение от myhand (ok), 09-Мрт-21, 07:37 
>> Мой первоначальный ответ тоже был совершенно правильным
> Ответ не был правильным (у этой задачи только один правильный ответ, как
> и у школьной)

Разумеется.  Но только после формулировки дополнительных условий.

> Нужно было задуматься, что тут написано

Неа.  Вопрос был сформулирован так:
(1) Что за норкомания тут написана, что это ВООБЩЕ означает (а если подумать?) и, кстати, (2) почему такая программа не собирается и что с этим делать?

На (2) - я тебе ответил сразу (#271).  На (1) - в следующем (#274) посте, после уточнения. (Только тебя почему-то без цитаты Линуса не проняло.)  Ну и?)

Ответить | Правка | К родителю #289 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру