ARC provides a few programming languages embedded in the application that are covered here. 

Block Programming

As opposed to text-based programming, block-based programming refers to programming language and IDE that separates executable actions into modular portions called blocks. These blocks are generally represented with icons that can be clicked and dragged to reorder them.

Text-Based Programming