1.1, Аноним (-), 23:49, 02/11/2016 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> некоторые из которых могут привести к записи за границу буфера, обращению к уже освобождённым блокам, повторному вызову функции free(), подстановке cookie для других серверов, неверной обработке спецсимволов в доменом имени
При Rust такого не было!
| |
|
|
3.7, Аноним (-), 09:58, 03/11/2016 [^] [^^] [^^^] [ответить]
| –5 +/– |
Помер. Ещё до рождения. Сейчас родители этот трупик наряжают в детские костюмчики, читают ему Маршака, возят в коляске гулять. Но нормальные люди, когда видят их, переходят на другую сторону улицы. На всякий случай.
| |
|
2.5, Аноним (-), 08:45, 03/11/2016 [^] [^^] [^^^] [ответить]
| +3 +/– |
C - кросплатформерный ассемблер. Асма позволяет что угодно и куда угодно записать, потому и и С делает то, что ты ему говоришь. А эти ваши расты - хипстота.
| |
|
3.15, Comdiv (ok), 22:59, 03/11/2016 [^] [^^] [^^^] [ответить]
| +/– |
Это, кстати, миф, потому-то Си и требует различных расширений под каждую платформу.
Для многих оказывается сюрпризом, когда их программа на "высокоуровневом ассемблере", валится на другой платформу из-за, к примеру, непригодного выравнивания или просто из-за других размерностей целых, пусть и в большую сторону. Второе несоответствие ассемблеру - это оптимизации современных компиляторов, изменяющих изначальную программу, порой, до неузнаваемости. Ассемблеры так не поступают.
| |
|
4.16, Аноним (-), 09:28, 04/11/2016 [^] [^^] [^^^] [ответить]
| +/– |
Это не миф, ты просто буквально понял "кросплатформерный ассемблер". Ясен хер банальной перекомпиляцией под другую платформу софт просто так не заработает, нужна куча #ifdef'ов ASM'ов. Смысл в том, что из всех высокоуровневых языков - С самый низкоуровневый. Если ты говоришь ему ч/з memcpy скопировать что-то куда-то, то кто он такой, чтоб тебе запрещать? Всякие сраные IZEN'ы этого не понимают. И именно поэтому 99.99999% всех операционок написано именно на нём - потому что офигенно безграничные возможности, только проц может тебя ограничить (page fault, например).
| |
|
5.17, Comdiv (ok), 10:45, 04/11/2016 [^] [^^] [^^^] [ответить]
| +/– |
>Если ты говоришь ему ч/з memcpy скопировать что-то куда-то,
>то кто он такой, чтоб тебе запрещать?
Во-первых, на некоторых платформах нет memcpy как и остальной части стандартной библиотеки. Во-вторых, компилятор может даже не запретить, а поступить хуже - молча выкинуть его, если посчитает, что он не нужен.
Нет, конечно, если назвать что угодно чем угодно и сказать, что надо понимать не буквально, а метафизически, то можно подогнать под любоё понятие при желании. Если же разобраться, то применительно к Си понятие "переносимый ассемблер" больше похоже на рекламный лозунг.
| |
|
6.20, angra (ok), 11:50, 04/11/2016 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Во-первых, на некоторых платформах нет memcpy как и остальной части стандартной библиотеки.
И что из этого следует?
> Во-вторых, компилятор может даже не запретить, а поступить хуже - молча
> выкинуть его, если посчитает, что он не нужен.
Оптимизации вообще-то можно не включать.
> Если же разобраться, то применительно к Си понятие "переносимый ассемблер" больше похоже на рекламный лозунг.
Разве что для того, кто не умеет писать на С и не способен посмотреть на список платформ и основной язык линукса(ядра), после чего сделать правильный вывод.
| |
|
7.22, Comdiv (ok), 16:46, 04/11/2016 [^] [^^] [^^^] [ответить]
| +/– |
>> Во-первых, на некоторых платформах нет memcpy как и остальной части стандартной библиотеки.
> И что из этого следует?
Что это не переносимый ассемблер.
>> Во-вторых, компилятор может даже не запретить, а поступить хуже - молча
>> выкинуть его, если посчитает, что он не нужен.
> Оптимизации вообще-то можно не включать.
Далеко не всегда, потому что без них программа может и не завестись. На ассемблере всё заведётся и ничего не выкинется.
> Разве что для того, кто не умеет писать на С и не
> способен посмотреть на список платформ и основной язык линукса(ядра),
Вот, что пишет Ваш коллега:
>>Ясен хер банальной перекомпиляцией под другую платформу софт
>>просто так не заработает, нужна куча #ifdef'ов ASM'ов.
..
> после чего сделать правильный вывод.
Для этого нужно всё же глубже смотреть, чем в приведённом Вами анализе. Никто не запрещает верить рекламным лозунгам.
| |
|
8.24, Аноним (-), 21:56, 04/11/2016 [^] [^^] [^^^] [ответить] | +/– | Таки чистая математика переносится без изменений А у тебя есть вакие-то вариант... текст свёрнут, показать | |
|
9.26, Led (ok), 22:03, 04/11/2016 [^] [^^] [^^^] [ответить] | –1 +/– | Не только даже для одного и того же вида процессора, умеющего переключаться BE ... текст свёрнут, показать | |
|
|
11.39, Аноним (-), 00:59, 05/11/2016 [^] [^^] [^^^] [ответить] | –3 +/– | ИМХО позор - это когда утята крякают на си что зелен виноград, но напрочь забыва... текст свёрнут, показать | |
|
12.45, Comdiv (ok), 01:44, 05/11/2016 [^] [^^] [^^^] [ответить] | +1 +/– | Позор - это встревать в дискуссию, ничего не поняв Никто не предлагает заменять... текст свёрнут, показать | |
|
|
14.50, Comdiv (ok), 21:53, 05/11/2016 [^] [^^] [^^^] [ответить] | –1 +/– | Где Вы увидели рекламу Rust у меня В рассказе о том, что Си - это не переносим... текст свёрнут, показать | |
|
|
|
|
|
9.32, Comdiv (ok), 23:10, 04/11/2016 [^] [^^] [^^^] [ответить] | –1 +/– | 1 Никогда не сталкивались с отсутсвием floating-point 2 При чём тут ассемблер... текст свёрнут, показать | |
|
10.35, Аноним (-), 00:17, 05/11/2016 [^] [^^] [^^^] [ответить] | +/– | Сталкивались И чего Если FPU нет то вариантов немного сэмулировать его или не... большой текст свёрнут, показать | |
|
|
12.48, Аноним (-), 17:04, 05/11/2016 [^] [^^] [^^^] [ответить] | +/– | Ну вот так У разного железа - разные возможности И если кто закладывался на ка... большой текст свёрнут, показать | |
|
13.51, Comdiv (ok), 22:06, 05/11/2016 [^] [^^] [^^^] [ответить] | –1 +/– | Поэтому и не получается переносимого ассемблера Ели Вы не поняли, другие языки... текст свёрнут, показать | |
|
|
|
|
|
|
|
|
|
4.27, Аноним (-), 22:09, 04/11/2016 [^] [^^] [^^^] [ответить] | +1 +/– | А это уже на усмотрение програмера - насколько портабельным он хочет быть А зна... большой текст свёрнут, показать | |
|
5.34, Comdiv (ok), 23:21, 04/11/2016 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Может еще
> ассемблер какой, еще более экзотичный. Типа C для DSP с 16-битным
> char просто потому что стандарт не запрещает, а 8 битов адресовать
> проц не умеет в принципе, потому что для него минимальный юнит
> - 16 битов.
Стандарт Си, кстати, не даёт гарантий, что char 8-битный, так что это не должно оказывать сопротивление грамотно написанному. Но как много людей пишут код, учитывая это?
> Типы данных с фиксированным размером - это C99, которому 17 лет.
Типы с фиксированными разрядностями являются опциональными по стандарту и для "истинно переносимых" не должны использоваться. Вместо них следует использовать int_leastXX_t, но опять-таки, как много людей так пишут?
> до кого за 17 лет не дошло - наверное это не си виноват.
Как видим, 17 лет не хватило, чтобы понять стандарт полностью. Разве я не прав?
> вынес половину neon/sse асма в пользу simd intrinsics на си.
Так это и есть расширения языка, поддерживаемые на уровне компилятора, хотя и грамотно завёрнутые в абстракции Си.
| |
|
6.37, Аноним (-), 00:46, 05/11/2016 [^] [^^] [^^^] [ответить] | –1 +/– | И чего Если нужны гарантии - есть uint8_t, с 1999 года Ты знаешь, C99 с лохмат... большой текст свёрнут, показать | |
|
7.38, Led (ok), 00:55, 05/11/2016 [^] [^^] [^^^] [ответить]
| –2 +/– |
> Как видим, мы и поняли стандарты и их реализации так как нам
> было удобно. А проблемы индейцев это таки проблемы индейцев. Тем более
> что индейцы вообще не знают что такое стандарт, но копьями и
> стрелами трясут.
Думаю, ты немного ошибся: ты пытаешся что-то доказать не индейцу, а индусу из касты "вендузоеды".
| |
7.41, Comdiv (ok), 01:31, 05/11/2016 [^] [^^] [^^^] [ответить]
| –1 +/– |
> И чего? Если нужны гарантии - есть uint8_t, с 1999 года.
Ещё раз, uint8_t - это опциональный тип, стандарт не гарантирует его наличия. Откройте наконец стандарт, и почитайте.
> Ты знаешь, C99 с лохматого 1999 года таки освоили довольно много людей.
Сколько можно?
> А нисколько - все дружно решили что нехай авторы компилеров нормально C99
> реализуют и дают все эти uint8_t и проч. А перфекционизм -
> это прекрасно, но на все эти бидоны, го и прочие расты
> ты вообще формальные стандарты покажешь, хотя-бы с таким качеством реализаций?
При чём тут всё это. Речь об "ассемблере" - не "ассемблере", а не о том, что лучше. Открою страшную тайну - использую преимущественно Си.
>> Как видим, 17 лет не хватило, чтобы понять стандарт полностью. Разве я не прав?
> Как видим, мы и поняли стандарты и их реализации так как нам было удобно.
То, что Вы не учли этого и никогда не встречали ситуации, где эти типы отсутствуют, а теперь выдаёте это за концепцию.
> И чего? Если вякать про стандарты - напишите на свою хипстерскую хрень
> хотя-бы такие, тогда поговорим. На JS вон пытались написать.
При чём тут это? Повторюсь - использую Си. Речь о терминологии и радужных рекламных лозунгах, а не замене Си на Js.
| |
|
8.49, Аноним (-), 17:52, 05/11/2016 [^] [^^] [^^^] [ответить] | +1 +/– | Стандарт не гарантирует что под программу хватит памяти, что скорость процессора... большой текст свёрнут, показать | |
|
9.52, Comdiv (ok), 22:31, 05/11/2016 [^] [^^] [^^^] [ответить] | +/– | Глупости, продолжаете невежество выдавать за концепцию Наличие типа большей раз... большой текст свёрнут, показать | |
|
|
|
|
|
|
|
2.12, Аноним (-), 11:03, 03/11/2016 [^] [^^] [^^^] [ответить]
| –2 +/– |
> При Rust такого не было!
При Rust вообще софта не было. Пара утилит типа легковесной (по функционалу) замены cp да полурабочий движок браузера не в счёт.
| |
|
3.30, Аноним (-), 22:31, 04/11/2016 [^] [^^] [^^^] [ответить]
| +/– |
> При Rust вообще софта не было. Пара утилит типа легковесной (по функционалу)
> замены cp да полурабочий движок браузера не в счёт.
А в случае Rust принц не спасает принцессу. Он отправляется в лес и рубит деревце, с которым двигает к сельскому кузнецу, чтобы тот ему пику вообще сделал. После чего отправляется ловить дикую лошать, которую еще надлежит объездить. Ну а в следующей части пьесы принц узнает что замок он тоже должен строить сам.
| |
|
2.53, Лютый жабист (ok), 05:09, 08/11/2016 [^] [^^] [^^^] [ответить]
| +/– |
Под rust ещё скорее всего не написали путней либы даже уровня curl.
И неясно, напишут ли, т.к. rust тормознее java, при этом в жабе уже давно есть полноценные безголовые браузеры HtmlUnit/Selenium, которые умеют исполнять JS, юзать алерты, попапы, итд
| |
|
3.54, Аноним (-), 06:19, 08/11/2016 [^] [^^] [^^^] [ответить]
| +/– |
Grep на Rust быстрее чем на си, давай продолжай кукарекать или найди этот проект и проверь.
| |
|
4.55, Лютый жабист (ok), 07:12, 08/11/2016 [^] [^^] [^^^] [ответить]
| +/– |
printf может тоже быстрее. А что приличное: курл и htmlunit на расте уже написали, товарищ кококо?
| |
|
|
|
|
2.11, Led (ok), 10:49, 03/11/2016 [^] [^^] [^^^] [ответить]
| +18 +/– |
>>Version: 4:16.04.3-0ubuntu1
> Кто знает, что означает цифра перед двоеточием?
Четыре.
| |
|
|
2.8, Наркоман (?), 10:02, 03/11/2016 [^] [^^] [^^^] [ответить]
| +/– |
Нужно на каждый тип запроса для каждого протокола по утилите, да. Чтобы угодить фанатикам.
| |
2.9, A.Stahl (ok), 10:03, 03/11/2016 [^] [^^] [^^^] [ответить]
| +3 +/– |
Почему комбайн? Разве он что-то умеет кроме отсылания запросов и получения ответов?
| |
2.13, angra (ok), 12:49, 03/11/2016 [^] [^^] [^^^] [ответить]
| +/– |
Не надо путать комбайны с утилитами, имеющими много опций или поддерживающими много протоколов.
| |
|
1.23, Аноним (-), 17:10, 04/11/2016 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
ну они сами там расписались в том, что им трудно договариваться с оригинальными разработчиками, когда они пытаются пилить свои форки-велосипеды на их оригинальных разработках ;)
| |
|