LINUX.ORG.RU

История изменений

Исправление geekless, (текущая версия) :

Почему действие в середине?

Потому что человек размышляет «от объекта». «Берем вот эту хрень и что-то с ней делаем. А потом берем то, что получилось, и снова с этим что-то делаем.» А не так: «вот действие, где ж блджад объекты для него?». Да вспомни, как ты жрать готовишь, блин! Человек в реальном мире оперирует объектами, а не действиями. И ЯП должен отражать мышление человека.

То есть на самом деле понятно почему - это результат костыльной реализации ООП на конкретной архитектуре.

Когда ж вы научитесь отделять представление от семантики, а семантику от реализации? Специалисты... При любом каком угодно закрученном параметрическом полиморфизме безо всякого ООП, запись с выделенным объектом будет просто тупо удобнее. Более того — выделенным объектом может быть в принципе любой из аргументов функции. И в идеале, язык должен позволять синтаксические трансформации, чтобы записывать слева от функции любой из аргументов.

Вот эту вот херню:

(* (reduce + select((> 10) somelist)) somevalue)
Мозгу один хрен приходится парсить изнутри наружу, подсознательно считая скобочки, чтобы не запутаться.

А вот эту можно просто прочитать без всякого напряга, последовательно:

somelist select(>(10)) reduce(+) *(somevalue)

Да вспомни, как выглядят пайпы в sh! Всё то же самое по сути.

Исправление geekless, :

Почему действие в середине?

Потому что человек размышляет «от объекта». «Берем вот эту хрень и что-то с ней делаем. А потом берем то, что получилось, и снова с этим что-то делаем.» А не так: «вот действие, где ж блджад объекты для него?». Да вспомни, как ты жрать готовишь, блин! Человек в реальном мире оперирует объектами, а не действиями. И ЯП должен отражать мышление человека.

То есть на самом деле понятно почему - это результат костыльной реализации ООП на конкретной архитектуре.

Когда ж вы научитесь отделять представление от семантики, а семантику от реализации? Специалисты... При любом каком угодно закрученном параметрическом полиморфизме безо всякого ООП, запись с выделенным объектом будет просто тупо удобнее. Более того — выделенным объектом может быть в принципе любой из аргументов функции. И в идеале, язык должен позволять синтаксические трансформации, чтобы записывать слева от функции любой из операторов.

Вот эту вот херню:

(* (reduce + select((> 10) somelist)) somevalue)
Мозгу один хрен приходится парсить изнутри наружу, подсознательно считая скобочки, чтобы не запутаться.

А вот эту можно просто прочитать без всякого напряга, последовательно:

somelist select(>(10)) reduce(+) *(somevalue)

Да вспомни, как выглядят пайпы в sh! Всё то же самое по сути.

Исправление geekless, :

Почему действие в середине?

Потому что человек размышляет «от объекта». «Берем вот эту хрень и что-то с ней делаем. А потом берем то, что получилось, и снова с этим что-то делаем.» А не так: «вот действие, где ж блджад объекты для него?». Да вспомни, как ты жрать готовишь, блин! Человек в реальном мире оперирует объектами, а не действиями. И ЯП должен отражать мышление человека.

То есть на самом деле понятно почему - это результат костыльной реализации ООП на конкретной архитектуре.

Когда ж вы научитесь отделять представление от семантики, а семантику от реализации? Специалисты... При любом каком угодно закрученном параметрическом полиморфизме безо всякого ООП, запись с выделенным объектом будет просто тупо удобнее. Более того — выделенным объектом может быть в принципе любой из аргументов функции. И в идеале, язык должен позволять синтаксические трансформации, чтобы записывать слева от функции любой из операторов.

Вот эту вот херню:

(* (reduce + select((> 10) somelist)) somevalue)
Мозгу один хрен приходится парсить изнутри наружу, подсознательно считая скобочки, чтобы не запутаться.

А вот эту можно просто прочитать без всякого напряга, последовательно:

somelist select(>(10)) reduce(+) *(somevalue)

Исправление geekless, :

Почему действие в середине?

Потому что человек размышляет «от объекта». «Берем вот эту хрень и что-то с ней делаем. А потом берем то, что получилось, и снова с этим что-то делаем.» А не так: «вот действие, где ж блджад объекты для него?». Да вспомни, как ты жрать готовишь, блин! Человек в реальном мире оперирует объектами, а не действиями. И ЯП должен отражать мышление человека.

То есть на самом деле понятно почему - это результат костыльной реализации ООП на конкретной архитектуре.

Когда ж вы научитесь отделять отделять представление от семантики, а семантику от реализации? Специалисты... При любом каком угодно закрученном параметрическом полиморфизме безо всякого ООП, запись с выделенным объектом будет просто тупо удобнее. Более того — выделенным объектом может быть в принципе любой из аргументов функции. И в идеале, язык должен позволять синтаксические трансформации, чтобы записывать слева от функции любой из операторов.

Вот эту вот херню:

(* (reduce + select((> 10) somelist)) somevalue)
Мозгу один хрен приходится парсить изнутри наружу, подсознательно считая скобочки, чтобы не запутаться.

А вот эту можно просто прочитать без всякого напряга, последовательно:

somelist select(>(10)) reduce(+) *(somevalue)

Исходная версия geekless, :

Почему действие в середине?

Потому что человек размышляет «от объекта». «Берем вот эту хрень и что-то с ней делаем. А потом берем то, что получилось, и снова с этим что-то делаем.» А не так: «вот действие, где ж блджад объекты для него?». Да вспомни, как ты жрать готовишь, блин! Человек в реальном мире оперирует объектами, а не действиями. И ЯП должен отражать мышление человека.

То есть на самом деле понятно почему - это результат костыльной реализации ООП на конкретной архитектуре.

Когда ж вы научитесь отделять отделять представление от семантики, а семантику от реализации? Специалисты... При любом каком угодно закрученном параметрическом полиморфизме безо всякого ООП, запись с выделенным объектом будет просто тупо удобнее. Более того — выделенным объектом может быть в принципе любой из аргументов функции. И в идеале, язык должен позволять синтаксические трансформации, чтобы записывать слева от функции любой из операторов.

Вот эту вот херню:

(* (reduce + select((> 10) somelist)) somevalue)
Мозгу один хрен приходится парсить изнутри наружу, подсознательно считая скобочки, чтобы не запутаться.

А вот эту можно просто прочитать без всякого напряга, последовательно:

somelist select(>(10)) reduce(+) * somevalue