Это все написано для недалекого С-программиста. Ты попробуй написать такое же для Haskell-программиста, заодно расскажи ему что его системы типов в Clojure сделаны лучше и изящней.
defn jobs-distribution-live cluster util/transformed :tree cluster fn :keys peers jobs when-not or empty? peers empty? jobs jobs-distribution peers jobs
Первый я легко паршу, а на втором мозг начинает закипать, как процессор когда видит Flash.
Если Haskell-программисты просто не любят скобки (именно скобки, а не динамическую типизацию или еще что-то другое), то я не вижу чем они лучше недалекого С-программиста. Я бы сперва посмотрел на такого программиста, впрочем, и выслушал его аргуметны.
Я же не говорю что их надо именно любить или не любить. Я говорю, что если человек делом занимается, то на такие мелочи ему точно должно быть пофиг.
Вооот. То есть это исключительно вкусовщина. Потому что второе я понял за пять секунд, а на первом взгляд замылился, пытаясь считать скобки и в конце концов мозг сдался.
Как люди не могут понять, что есть разные предпочтения, возможно, даже разное устройство мозга. Нет у меня в голове стек-машины, я спотыкаюсь на скобках, для меня они выглядят как те самые обрезанные ногти, замусоривающие код.
Второй фрагмент для меня настолько однозначно красивее, понятнее, врубчивее и просто ня, что я даже не знаю, как описать эту очевидность. Но я готов допустить, что кому-то больше нравятся скобки. А ты почему-то нет.
Я прекрасно понимаю и принимаю, что кому-то нравятся скобки, кому-то нет. Я вот нигде не говорю, что мне, например, прям нравятся. Я говорю, что нормальному профессионалу скобки или не скобки - все равно. О других вещах надо думать. Какие свойства инструмента помогают сделать меньше ошибок, например.
> можно было б постараться, и топлевел конструкции хотя б сделать без скобок
Зачем ломать то, что работает?
Лиспы - это чрезвычайно консистентные и практичные языки, в этом их прелесть. Скобки там не просто так, а несут чёткую практическую функцию. Убери скобки - и часть прелестей лиспа уйдёт.
The following defines a J function named "avg" to calculate the average of a list of numbers: avg=: +/ % #
Зато скобочек нет, ога.
Кстати, король скобочек на данный момент - это javascript, а вовсе не традиционные лиспы.
Закипать-то он закипает, только вот тут выкинуты даже нужные скобки, и не хаскель это ни разу. Лишние скобки они не любят (и правильно делают), но структуру тем не менее там в коде сразу видно
Ты попробуй написать такое же для Haskell-программиста,
заодно расскажи ему что его системы типов в Clojure сделаны лучше и изящней.
Reply
Reply
Но это все для них не работает, потому что без скобок все равно лучше чем со скобками.
Reply
(defn jobs-distribution-live [cluster]
(util/transformed (:tree cluster)
(fn [{:keys [peers jobs]}]
(when-not (or (empty? peers) (empty? jobs))
(jobs-distribution peers jobs)))))
defn jobs-distribution-live cluster
util/transformed :tree cluster
fn :keys peers jobs
when-not or empty? peers empty? jobs
jobs-distribution peers jobs
Первый я легко паршу, а на втором мозг начинает закипать, как процессор когда видит Flash.
Если Haskell-программисты просто не любят скобки (именно скобки, а не динамическую типизацию или еще что-то другое), то я не вижу чем они лучше недалекого С-программиста. Я бы сперва посмотрел на такого программиста, впрочем, и выслушал его аргуметны.
Я же не говорю что их надо именно любить или не любить. Я говорю, что если человек делом занимается, то на такие мелочи ему точно должно быть пофиг.
Reply
Reply
Как люди не могут понять, что есть разные предпочтения, возможно, даже разное устройство мозга. Нет у меня в голове стек-машины, я спотыкаюсь на скобках, для меня они выглядят как те самые обрезанные ногти, замусоривающие код.
Второй фрагмент для меня настолько однозначно красивее, понятнее, врубчивее и просто ня, что я даже не знаю, как описать эту очевидность. Но я готов допустить, что кому-то больше нравятся скобки. А ты почему-то нет.
Reply
Reply
Reply
Иммутабельность и типизация, разумеется.
Reply
Reply
Reply
Reply
Зачем ломать то, что работает?
Лиспы - это чрезвычайно консистентные и практичные языки, в этом их прелесть. Скобки там не просто так, а несут чёткую практическую функцию. Убери скобки - и часть прелестей лиспа уйдёт.
The following defines a J function named "avg" to calculate the average of a list of numbers:
avg=: +/ % #
Зато скобочек нет, ога.
Кстати, король скобочек на данный момент - это javascript, а вовсе не традиционные лиспы.
Reply
Reply
Reply
defn jobs-distribution-live *cluster
util/transformed (:tree cluster)
fn *{:keys peers jobs}
when-not (or (empty? peers) (empty? jobs))
jobs-distribution peers jobs
Reply
Leave a comment