Python is broadly used for artificial intelligence, with packages for several applications including General AI, Machine Learning, Natural Language Processing, and Neural Networks. It supports deep learning libraries like MXNet, Keras or TensorFlow. Haskell is also a very good programming language for AI. The overall structure of Perl derives broadly from C. Perl is procedural in nature, with variables, expressions, assignment statements, brace-delimited blocks, control structures, and subroutines. Perl also takes features from shell programming. All variables are labeled with leading sigils, which allow variables to be interpolated directly into strings. Still, unlike the shell, Perl uses sigils on all accesses to variables, and unlike most other programming languages that use sigils, the sigil doesn't denote the type of the variable but the type of the expression. So for instance, to access a list of values in a hash, the sigil for an array ("@") is used, not the sigil for a hash ("%"). Perl also has numerous built-in functions that provide tools often used in shell programming (although many of these tools are implemented by programs external to the shell) such as sorting and calling operating system facilities.