Как стать автором
Обновить
0

Пользователь

Отправить сообщение
Всё в порядке, в C нет деструкторов. Можете спокойно на нём писать. :)
Распределенные поисковики, вроде YaСy потенциально можно сделать и приватными и персонализироваными. Вообще, владельцы «облачных сервисов» (Google, например) уже настолько прочно вбили в головы людей, что ради приватности придется отказаться от удобства, что компромиссы уже мало кому приходят в голову.
1. Где-то была статья на эту тему о Ruby. Сейчас найти не могу, но суть в том, что индексация с нуля — это не оптимизация и не костыль. Если бы индексация была с единицы, то разрезание (arr[1:5]) массивов выглядело бы в коде с вечными "-1" да "+1". Если кто вспомнит статью — киньте. Вроде бы сам Matz писал, но не уверен.
2 и 3, ну вот Вы привели в пример Smalltalk. Так же о численных типах практически не надо думать в Common Lisp (есть fractional и bignum, в т.ч. fractional bignum и float bignum, явно преобразовывать численные типы не надо) и Tcl (все числа — безразмерные int/float, fractional нет). Есть замечательные действительно высокоуровневые языки — пишите на них.: ) На самом деле, если у вас нет начальника, который говорит «все используют Java/Python/COBOL и мы будем», то эти три языка (даже последние два) отлично покроют 99% классов задач.
Исходник прошивки можно почитать? Проприетарная прошивка от Facebook — единственное, что останавливает меня от покупки Oculus Rift.
> если вы изучите Scala и посмотрите на функциональность Java с той колокольни, то открывшийся вид вполне может вызвать у вас улыбку. Просто попробуйте!

О, излюбленный аргумент лисперов. http://www.paulgraham.com/avg.html «The Blub Paradox».

Ну, раз уж вы этим аргументом воспользовались, то и я предложу по той же причине посмотреть Common Lisp.: ) Без сарказма. Мне потраченное на него время не жалко.
Субъективно синтаксисом все языки для BEAM (виртуальная машина Erlang) уделывает LFE. Только его на 90% один человек пишет в свободное время, поэтому с экосистемой большие проблемы.
> Польза миру это либо польза людям, либо природе, либо культуре/гуманизму, либо экономике, либо науке. Первые три категории не имеют ничего общего со свободным кодом, потому что людям, природе и культуре прекрасно помогает несвободный код.

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

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

Да, вы на это уже ответили выше:
>> То-есть домохозяйки не могут быть программистами и программисты не могут увлекаться кулинарией?
> Могут. А еще на ваш страничку вашего опен-сорсного проекта может зайти Билл Гейтс, прослезиться от восторга и задонатить вам миллиард долларов.

Но это демагогия.
Возможно дело в том, что порядок изложения на самом деле совпадает, и резюмирует то, о чём написано в предыдущих ДЕВЯТИ абзацах. Какую кашу нужно иметь в голове, чтобы найти в статье ошибку, которой нет, потому что она согласуется с вашим представлением о мире, хоть и не согласуется с самой статьёй.
Только сейчас заметил. Что эта серия делает в блоге Тинькофф Банка? У вас используется Scheme?

UPD: Карма, поэтому спрошу сразу. Если используется, возьмёте Scheme developer'ом?: )
> под предлогом изучения мега-популярного языка мы рассказываем людям про SICP.

Коварно. Одобряю!
И не будет, если вы не станете первым… Всё сложно и обсуждалось уже 100500 раз ещё во времена ICQ/XMPP.
Самое близкое, что сейчас есть: openpandora.org К сожалению, не модульный.
Я тоже. Хотел обычный, случайно заказал растворимый. Офигенная штука в любом случае.
На любителя, да. В офисе кроме меня ещё один человек от него не плевался.
За исключением около 10% статья как про Common Lisp.

На самом деле я, познав оба языка, даже пытался сделать Class Browser (это те самые 10%) для CL. Если есть желающие, могу поделиться наработками и списком нерешённых (но не неразрешимых) трудностей.
Это не минималистичные интерфейсы, а интерфейсы с минималистичным дизайном иконок.
Минималистичный интерфейс — это командная строка.
> Главная проблема, о которую мы немедленно споткнулись — там, например, пересекаются параллельные прямые.

Финиш. Прямые параллельны в ПРОСТРАНСТВЕ, а пересекаются их ПРОЕКЦИИ на фото.
Это ж лисповые символьные выражения, только с переносом строк и знаком «равно» вместо скобок.
> Если в Lisp всё описывается как списки, то в языке на основе Tree — всё есть деревья.
Вообще-то в лиспе даже список — это суть бинарное дерево. И угадайте, что такое список списков? Правильно — дерево.
Вы почти правы. В каждой стране своя культура нужно позволить людям жить так, как они хотят, но только при условии абсолютного доступа к информации. Если арабские женщины знают, что в западной культуре у женщин больше прав — значит они хотят так жить, если не знают — то, возможно, не хотят, но усилиями пропаганды их заставляют.

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

И, как следствие, самое серьёзное преступление, которое моет совершить государство — это внутренняя пропаганда, частью которой обычно становится ограничение выезда за пределы страны. Потому что, если государство практикует пропаганду, то оно само начинает управлять культурой народа, т.е. учит народ жить, как и эти парни с воздушными шарами. Не понимаю, почему вы внутреннюю пропаганду считаете хуже воздушных шариков. Одно и то же, ИМХО.

Вы можете быть против воздушных шариков на территории США, или Арабских стран, т.к. там _относительно_ мало влияние внутренней пропаганды, но приводить в пример СССР, КНДР, или Россию — нелогично по вышеприведённым причинам.
С тех пор как я с товарищами писали статьи правда ничего не изменилось? Вроде это всё уже было лет пять назад. habrahabr.ru/post/75451/

> Могу ошибаться, но прямого аналога нет, во всяком случае в популярных, компилируемых языках.
В копилку Common Lisp. Не популярный, да. Компилирется в некоторых реализациях, например самой популярной — SBCL. Вообще map уже есть, но у вас он шаблонный, а не функциональный (с лямбдой), так что вот тоже шаблонный:

(defmacro tmap (op array)
  `(loop for x in ,array collect ,op)

(defun main ()
  (format t "#1 ~A~%" (tmap (* x 3) '(0 1 2 3 4 5)))
  (format t "#2 ~A~%" (tmap (expt x 3) '(0 1 2 3 4 5)))

  (format t "#3 ~A~%" (tmap (* x 3) '(0.0 0.5 1.0 1.5 2.0 2.5)))
  (format t "#4 ~A~%" (tmap (expt x 3) '(0.0 0.5 1.0 1.5 2.0 2.5))))

В SBCL есть кое какой решатель типов. Если он сообразит какого типа списки (на буквальные не реагирует, должно быть объявление типа хоть где-нибудь), то в скомпилированном коде окажутся вызовы машинных команд для * и expt (где есть), если не сообразит — то вызовы функций для произвольных типов.

Конечно, D старается следовать принципу zero overhead, но пока это у C++ получается всё же лучше. Компромисс.: ) Помню, в своё время он мне и нравился как золотая середина между перформансом и удобством, потом обнаружил себя либо за задачами где перформанс не важен, тогда годится Common Lisp (с перформансом всё равно на уровне компилируемых), либо за энтерпрайзнутыми серверными кластерами, где лучше Erlang.

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность