вторник, 25 июля 2017 г.

Функциональщина

Конструкция вида:

Vector1 .filter .IsClass
.join ( Vector2 .transform .Parent .filter .IsUnit )
.join ( Vector3 .filter .IsRecord )
.transform .TypeName
.sort .stringCompare
.forEach .print

Или:

0
[ 1 2 3 4 ]
.join [ 5 6 7 8 9 ]
.revert
.filter ( != 5 )
.transform ( + 2 )
.forEach +
.print

- это - "ураган"!

Начинаю проникаться "функциональщиной".

Это на "моих скриптах. На современных Delphi подобное тоже возможно. Несколько более многословно. Но возможно.

Очень продуктивный подход. Учитывая константность объектов и возможность кеширования результата.

У Штефана Глинке есть конечно, что-то подобное.

Ну и на LINQ (https://ru.m.wikipedia.org/wiki/Language_Integrated_Query) похоже.

Ну и вспоминаются "fluent-interface'ы".

Комментариев нет:

Отправить комментарий