Acho a maneira de recuperar propriedades de objeto mais limpa do que obter índices de array.
Para trabalhar com matrizes como notação de objeto , use isto:
$array = array('language'=>'php', 'framework'=>'laravel', 'ide'=>'Sublime Text');
$object = new ArrayObject($array, ArrayObject::ARRAY_AS_PROPS);
echo $object->language; // php
O código agora parece mais limpo.