done some improvements for the language