Здравствуйте, lightSource, Вы писали:
kuj>>Зато "ловушка" вполне корректна. Подобных граблей в C/C++ раскидано великое множество. Поэтому без опыта в C/C++ делать нечего. S>Без опыта в программировании вообще делать нечего. Ровно как и в любой другой серьёзной области деятельности.
Перефразирую: без большого количества опыта. Программирование на C++ требует значительно более высокий уровень квалификации, чем, скажем, программирование на VB.
Здравствуйте, lightSource, Вы писали:
S>Как будто в Паскале нет ничего похожего и он являет собой образец для подражания. Если нужен естественноподобный язык — пиши на SPL(Shakespeare Programming Language). В любом языке, даже естественном есть свои правила, если эти правила не соблюдать — далеко не уедешь.
Если уж на то пошло, грамматика любого естественного языка куда сложнее грамматик ЯП.
Здравствуйте, Kh_Oleg, Вы писали:
S>> 3, 1415 — а вот это уже перечисление, список если позволите — вполне определённая языковая конструкция. Если тебе непривычно — не говори что неудобно. K_O>Да!!! Мне, знаете ли, непривычно, когда "перечисление, список если позволите" приваивается переменной типа double!
М-м-м. Вопрос можно ? Какой С/С++ компилятор позволяет это сделать ? Я имею в виду — пропустит конструкцию
Здравствуйте, amark, Вы писали:
A>Здравствуйте, Kh_Oleg, Вы писали:
S>>> 3, 1415 — а вот это уже перечисление, список если позволите — вполне определённая языковая конструкция. Если тебе непривычно — не говори что неудобно. K_O>>Да!!! Мне, знаете ли, непривычно, когда "перечисление, список если позволите" приваивается переменной типа double!
A>М-м-м. Вопрос можно ? Какой С/С++ компилятор позволяет это сделать ? Я имею в виду — пропустит конструкцию A>
A>double pi = 3,1415;
A>
A>без (как минимум) warning'a ?
ИМХО — любой, т.к. конструкция вполне корректна в соотв. с C++ (и C)
Здравствуйте, amark, Вы писали:
A>Здравствуйте, Курилка, Вы писали:
A>>>М-м-м. Вопрос можно ? Какой С/С++ компилятор позволяет это сделать ? Я имею в виду — пропустит конструкцию A>>>
A>>>double pi = 3,1415;
A>>>
A>>>без (как минимум) warning'a ?
К>>ИМХО — любой, т.к. конструкция вполне корректна в соотв. с C++ (и C)
A>А проверить ? VC 6.0 не пропустил это ни как С, ни как С++
Отдели инициализацию от определения...
double pi;
pi= 3,1415;
... и любой VC компилятор схавает и не поперхнется даже на 4 уровне варнинга.
Здравствуйте, amark, Вы писали:
A>Здравствуйте, Курилка, Вы писали:
A>>>М-м-м. Вопрос можно ? Какой С/С++ компилятор позволяет это сделать ? Я имею в виду — пропустит конструкцию A>>>
A>>>double pi = 3,1415;
A>>>
A>>>без (как минимум) warning'a ?
К>>ИМХО — любой, т.к. конструкция вполне корректна в соотв. с C++ (и C)
A>А проверить ? VC 6.0 не пропустил это ни как С, ни как С++
Под рукой 7.1, так что хз что с 6-кой, но и вправду пример некорректный, т.к. приоритет у "=" выше чему у ",".
Поэтому попробуй скомпилять вот такое:
double pi;
pi = 3,1415;
тупо, но учти, что 1 и 2 строка могут быть отнюдь не одна за другой в тексте программы.
Здравствуйте, Шахтер, Вы писали:
Ш>Здравствуйте, desperado_gmbh, Вы писали:
_>>Здравствуйте, Шахтер, Вы писали:
Ш>>>Вопрос на засыпку -- многие ли программисты знают, что такое интеграл Лебега?
_>>Изоморфизм Карри-Ховарда и основы теории категорий для обсуждаемых целей полезнее
Ш>Пожалуй. Но я боюсь, программистов, знающих теорию категорий, ещё меньше, чем знающих интеграл Лебега.
Вот покапал эту сеть :
то что здесь написано это кажись все, что дает хоть какое-то представленине о этой теории?
Почему бы кому-нить, кто затрагивал в ВУЗе данный предмет и разберется в терминологических тонкостях, не попереводить материал на родной язык, который выложен хотя бы вот тут ... коли это так полезно знать программистам Отечество вас незабудет, дорогие патриоты
Здравствуйте, Курилка, Вы писали:
К>Под рукой 7.1, так что хз что с 6-кой, но и вправду пример некорректный, т.к. приоритет у "=" выше чему у ",". К>Поэтому попробуй скомпилять вот такое:
К>
К>double pi;
К>pi = 3,1415;
К>
К>тупо, но учти, что 1 и 2 строка могут быть отнюдь не одна за другой в тексте программы.
Таки да Еще один аргумент в пользу использования const вместо DEFINE. Ну а о том, что численные значения констант использовать в выражениях — дурной тон, спорить, надеюсь не будем ?
Здравствуйте, Kh_Oleg, Вы писали:
S>>Как будто в Паскале нет ничего похожего и он являет собой образец для подражания. K_O>Вот что сказал компилятор Delphi, на эту же конструкцию: K_O>[Error] Unit1.pas(65): Statement expected, but expression of type 'Integer' found
Я сказал похожего, а не этого. Не надо принимать всё буквально.
S>>Если нужен естественноподобный язык — пиши на SPL(Shakespeare Programming Language). В любом языке, даже естественном есть свои правила, если эти правила не соблюдать — далеко не уедешь. K_O>Нужен читабельный язык, когда интуитивно понятно, что здесь написано. Когда я впервые увидел этот прикол с числом Пи, мне потребовалось целых полминуты, чтобы понять, где здесь ошибка.
Извини, а ты хотел вот так наскоком выучить язык программирования?
K_O>И то, только потому, что я знал, что здесь ошибка есть. А попадись такой код в реальном проекте — пропущу, даже не обратив внимания, потому как выглядит он, на первый взгляд, вполне корректно, а при беглом просмотре точка от запятой не сильно отличается.
Ну знаешь. Всё зависит от того сколько ты писал на С++. Такие ошибки ловятся на лету. Если они для тебя трудны, значит ты просто не привык.
S>>Не вырывай из контекста а рассматривай в целом K_O>А я не вырываю из контекста, это вполне компиляемая конструкция, сам попробуй. Вот мне и непонятно, что она означает?
Я знаю что компиляемая. Ты программист или где? Вам в универе дискретную математику преподавали? Тебя никогда не смущало определение терма для предикатов? Здесь точно такая же ситуация. Однако там значит хорошо, а здесь — плохо? Никогда такого не будет, чтобы можно было написать "Хочу чтобы всё работало" — и оно работало!
K_O>>>Мы тоже им пользуемся, но перед линковкой (20 мин.) IncrediBuild пасует. S>>Ещё раз повторюсь, ты rebuild не так часто запускаешь. K_O>Я не понял, ты что ли рядом сидишь, коли знаешь, как часто мы rebuild запускаем? Так вот, говорю, обычная отладка — найти в отладчике проблему, исправить пару строчек кода в одном файле и снова собрать проект (build, а не rebuild) — занимает 25 мин. K_O>5 мин — компиляция на IncrediBuilde, 20 мин — линковка.
Криво настроеный Incredibuild — хуже любого встроеного компилятора. Как я понимаю, при обычной отладке ты каждый раз меняешь h-шник, от которого зависит туча файлов, а не cpp файл, как все нормальные люди на сборку и прилинковку которого при включенном incremental linking уходит пару секунд. Это уже знаете ли болезнь архитектуры и в этом случае тебя никакой язык не спасёт.
Здравствуйте, kuj, Вы писали:
kuj>Перефразирую: без большого количества опыта. Программирование на C++ требует значительно более высокий уровень квалификации, чем, скажем, программирование на VB.
Здравствуйте, mister-AK, Вы писали:
MA>Здравствуйте, Шахтер, Вы писали:
Ш>>Здравствуйте, desperado_gmbh, Вы писали:
_>>>Здравствуйте, Шахтер, Вы писали:
Ш>>>>Вопрос на засыпку -- многие ли программисты знают, что такое интеграл Лебега?
_>>>Изоморфизм Карри-Ховарда и основы теории категорий для обсуждаемых целей полезнее
Ш>>Пожалуй. Но я боюсь, программистов, знающих теорию категорий, ещё меньше, чем знающих интеграл Лебега.
MA>Вот покапал эту сеть : MA>то что здесь написано это кажись все, что дает хоть какое-то представленине о этой теории?
Боюсь, что этот текст никакого представления о теории категорий не даёт.
MA>Почему бы кому-нить, кто затрагивал в ВУЗе данный предмет и разберется в терминологических тонкостях, не попереводить материал на родной язык, который выложен хотя бы вот тут ...
Этот сайт посвящен K-теории, а не теории категорий.
MA>коли это так полезно знать программистам
Да я не уверен, что так полезно. Если вы не занимаетесь какими-либо очень редкими и глубокими вещами, имеющими отношение к серьёзной науке, то вряд ли вам это нужно.
Уж тем более это нафиг не нужно тем, кто формочки малюет.
MA>Отечество вас незабудет, дорогие патриоты
Забыло напрочь. Даже в советские времена на русский язык переводилось явно недостаточное количество зарубежной научной литературы. После краха СССР это вообще прекратилось.
Здравствуйте, Шахтер, Вы писали:
MA>>Отечество вас незабудет, дорогие патриоты
Ш>Забыло напрочь. Даже в советские времена на русский язык переводилось явно недостаточное количество зарубежной научной литературы. После краха СССР это вообще прекратилось.
Для производства шоколадных батончиков, теория категорий непригодилась. А жаль.
Здравствуйте, lightSource, Вы писали:
S>Извини, а ты хотел вот так наскоком выучить язык программирования?
K_O>>И то, только потому, что я знал, что здесь ошибка есть. А попадись такой код в реальном проекте — пропущу, даже не обратив внимания, потому как выглядит он, на первый взгляд, вполне корректно, а при беглом просмотре точка от запятой не сильно отличается.
S>Ну знаешь. Всё зависит от того сколько ты писал на С++. Такие ошибки ловятся на лету. Если они для тебя трудны, значит ты просто не привык.
А с чего вообще возникла эта мода учить языки программирования вместо того, чтобы учиться программированию? Если язык вредит вместо того, чтобы помогать, то "подумай, нужен ли тебе такой муж" (с)
Язык — это просто одно из средств программиста. Осваивать возможности инструмента, учиться эффективнее его использовать — это да, это нужно. Но почему я должен тратить свое время только из-за кривизны инструмента?
Здравствуйте, INTP_mihoshi, Вы писали:
INT>А с чего вообще возникла эта мода учить языки программирования вместо того, чтобы учиться программированию? Если язык вредит вместо того, чтобы помогать, то "подумай, нужен ли тебе такой муж" (с)
INT>Язык — это просто одно из средств программиста. Осваивать возможности инструмента, учиться эффективнее его использовать — это да, это нужно. Но почему я должен тратить свое время только из-за кривизны инструмента?
учиться программировать "вообще", без к-л языка это, imho, тоже что учиться говорить "вообще", ни на каком языке конкретно
Здравствуйте, Odi$$ey, Вы писали:
INT>>А с чего вообще возникла эта мода учить языки программирования вместо того, чтобы учиться программированию? Если язык вредит вместо того, чтобы помогать, то "подумай, нужен ли тебе такой муж" (с)
OE>учиться программировать "вообще", без к-л языка это, imho, тоже что учиться говорить "вообще", ни на каком языке конкретно
Да. Учиться говорить вообще важнее, чем на каком-то языке конкретно.
Здравствуйте, INTP_mihoshi, Вы писали:
INT>Здравствуйте, Odi$$ey, Вы писали:
INT>>>А с чего вообще возникла эта мода учить языки программирования вместо того, чтобы учиться программированию? Если язык вредит вместо того, чтобы помогать, то "подумай, нужен ли тебе такой муж" (с)
OE>>учиться программировать "вообще", без к-л языка это, imho, тоже что учиться говорить "вообще", ни на каком языке конкретно
INT>Да. Учиться говорить вообще важнее, чем на каком-то языке конкретно.
Каким образом? Собственно, понятие говорить неотделимо от языка.
INT>Язык — это просто одно из средств программиста. Осваивать возможности инструмента, учиться эффективнее его использовать — это да, это нужно. Но почему я должен тратить свое время только из-за кривизны инструмента?
Потому что любой инструмент кажется кривым и неудобным когда ты его еще не освоил. А после того как привыкнешь, кривыми будут казаться любые новые инструменты, пока не приспособишься к ним.
Тут кто-то возмущался тем, что оператор ++ примененный к указателю на структуру мнеяет ее значение не на 1, а на размер структуры. Если он до этого программировал на асме, то это не удивительно.
P.S. А может кривой вовсе не инструмент, а руки?
Здравствуйте, Шахтер, Вы писали:
Ш>Забыло напрочь. Даже в советские времена на русский язык переводилось явно недостаточное количество зарубежной научной литературы. После краха СССР это вообще прекратилось.
Кстати, в этом году вышло второе издание знаменитых "Категорий для работающего математика" Маклейна в переводе В.А.Артамонова (оригинал — 1998 год). Хороший перевод, качественная верстка, практически нет ошибок. И есть надежда, что у "Физматлита" когда-нибудь кончатся советские переводы для перепечатки, и ему придется заняться новыми.
Здравствуйте, SWW, Вы писали:
SWW>Потому что любой инструмент кажется кривым и неудобным когда ты его еще не освоил. А после того как привыкнешь, кривыми будут казаться любые новые инструменты, пока не приспособишься к ним. SWW>Тут кто-то возмущался тем, что оператор ++ примененный к указателю на структуру мнеяет ее значение не на 1, а на размер структуры. Если он до этого программировал на асме, то это не удивительно. SWW>P.S. А может кривой вовсе не инструмент, а руки?
Все кривое, кроме пчел Да и пчелы, вобщем-то...
У меня ситуация немного другая, так как я не считаю автора языка априори глупее себя.
Я сначала вижу в языке интересные и мощные решения, а в процессе применения выясняю, что и у них есть предел.
С++ — гениальная вещь как набор практик и решений. Но, так как он строился инкрементно и тащит на себе все старые решения, на настоящий день отточенная семантика погребена под разлагающимся синтаксисом. Например, generic programming вообще и функциональное программирование в частности загноблены именно им.