it uses dynamic JavaScript constructs that are difficult to analyze without interpreting the program
calling methods with the square bracket notation
feels like a totally arbitrary restriction. That has nothing to do with free software and everything to do with the difficulty of analysis. Stupid.