Pull to refresh

К вопросу о языках программирования…

Reading time 2 min
Views 2.4K
Так как голосование не позволяет оставлять комментарии, то оформлю комментарии отдельной статьёй.

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

Под катом — законченный пример на одном из распространённых языков программирования. Бонус! Даже не один язык программирования, но два.

JavaScript:
function remove_element(/* array */ a, /* element */ e) {
  var b=[];
  for (var i=0;i<a.length;i++) {
    if (a[i]!=e) b.push(a[i]);
  }
  return b;
}
var before=[7, "13", "5", 6];
var after=remove_element(before, "13");


PHP (пример исправлен, спасибо Sannis):
function remove_element(/* array */ $a, /* element */ $e) {
  $b=array();
  foreach($a as $m) {
    if ($m!=$e) array_push($b, $m);
  }
  return $b;
}
$before=array("11",&nbsp"a", 2, 3);
$after=remove_element($before, "a");

Какие ещё языки, допускающее подобное, вы знаете и считаете ли вы что удобства предоставляемые этим подходом оправдывают проблемы, которые он порождает?

P.S. Многие языки программирования имеют много странностей при работе с числами с плавающей точкой — но про это хорошо известно и может быть защитано максимум как полбалла. Хотя даже если привлечь числа с плавающей точкой на вменяемых языках программирования (С/C++, Java, Python, Lisp) я ничего придумать не могу (без перекрытия операторов, что, понятно уже чистой воды читерство).

P.P.S. Вообще весь топик вырос из дискуссии где мне пытались объяснить что я ничего не понимаю в программировании и моё нежелание мириться с подобными, с позволения сказать, языками программирования свидетельствует о моей серости и убогости, а не о проблемах в языке.
Tags:
Hubs:
-5
Comments 128
Comments Comments 128

Articles