On 12/11/14 10:10, Clint Byrum wrote:
Excerpts from Zane Bitter's message of 2014-11-11 13:06:17 -0800:
On 11/11/14 13:34, Ryan Brown wrote:
I am strongly against allowing arbitrary Javascript functions for
complexity reasons. It's already difficult enough to get meaningful
errors when you **** up your YAML syntax.

Agreed, and FWIW literally everyone that Clint has pitched the JS idea
to thought it was crazy ;)

So far nobody has stepped up to defend me,

I'll defend you, but I can't defend the idea :)

so I'll accept that maybe
people do think it is crazy. What I'm really confused by is why we have
a new weird ugly language like YAQL (sorry, it, like JQ, is hideous),

Agreed, and appealing to its similarity with Perl or PHP (or BASIC!) is probably not the way to win over Python developers :D

and that would somehow be less crazy than a well known mature language
that has always been meant for embedding such as javascript.

JS is a Turing-complete language, it's an entirely different kettle of fish to a domain-specific language that is inherently safe to interpret from user input. Sure, we can try to lock it down. It's a very tricky job to get right. (Plus it requires a new external dependency of unknown quality... honestly if you're going to embed a Turing-complete language, Python is a much more obvious choice than JS.)

Anyway, I'd prefer YAQL over trying to get the intrinsic functions in
HOT just right. Users will want to do things we don't expect. I say, let
them, or large sections of the users will simply move on to something

The other side of that argument is that users are doing one of two things with data they have obtained from resources in the template:

1) Passing data to software deployments
2) Passing data to other resources

In case (1) they can easily transform the data into whatever format they want using their own scripts, running on their own server.

In case (2), if it's not easy for them to just do what they want without having to perform this kind of manipulation, we have failed to design good resources. And if we give people the tools to just paper over the problem, we'll never hear about it so we can correct it at the source, just launch a thousand hard-to-maintain hacks into the world.


OpenStack-dev mailing list

Reply via email to