История изменений
Исправление arturianec100, (текущая версия) :
Здесь гибкость или ограниченность языка не при чём - это гибкость и простота расширения ИНФРАСТРУКТУРЫ.
Была бы потребность - добавили бы в nginx/apache/что угодно модуль, который точно также вызывал бы произвольную cli программу, передав данные в stdin, argv или куда угодно и как угодно. И тогда показывали бы как на любом ЯП (хоть луа, хоть С++) - json::parse(std::cin) | subdict(std::vector{"Header-1"s, "Header-2"s}) | values | join(", "s) | csv_writer{open_file("visitors.csv"s)}; std::cout << (http_response{} | headers({{"Location"s, "http://new-url.com"s}}));
Вполне валидный С++ синтаксис. Модуль для веб-сервера и либу для выразительности можно спокойно запилить «на коленке». Вот только это почти никому не нужно - почти все берут готовое. И не порекламировать «новый лучший ЯП» - все ЯП общего назначения могут в cli.
Не забываем про
Причем я могу сделать так в проекте, о котором практически ничего не знаю.
Исходная версия arturianec100, :
Здесь гибкость или ограниченность языка не при чём - это гибкость и простота расширения ИНФРАСТРУКТУРЫ.
Была бы потребность - добавили бы в nginx/apache/что угодно модуль, который точно также вызывал бы произвольную cli программу, передав данные в stdin, argv или куда угодно и как угодно. И тогда показывали бы как на любом ЯП (хоть луа, хоть С++) - ``` json::parse(std::cin) | subdict(std::vector{"Header-1"s, «Header-2"s}) | values | join(», "s) | csv_writer{open_file("visitors.csv"s)}; std::cout << (http_response{} | headers({{"Location"s, "http://new-url.com"s}}));
Вполне валидный С++ синтаксис. Модуль для веб-сервера и либу для выразительности можно спокойно запилить "на коленке". Вот только это почти никому не нужно - почти все берут готовое. И не порекламировать "новый лучший ЯП" - все ЯП общего назначения могут в cli.
Не забываем про
>Причем я могу сделать так в проекте, о котором практически ничего не знаю.