Among existing language around: python, scratch, c/c++, Java, or another interpreter language will work fine in raspberry pi.
For me, I make use of c++ due to it's native implementation on the machine. With c/c++ you could make direct access to the hardware, memory, irq, gpio, and etc...
Aside, with c++ you can make desktop/gui application as well as database programming. You may choose several GUI framework available, ranging from QT, GTK, FLTK, wxWidgets. The latest one is my favorites library/framework due to licensing reason and it's ability to make portable application with static library linking, fully oop with c++ dialect, and many more....
These some tools I used for doing Raspberry Pi programming in my x86_64 computer:
- Netbeans for main IDE
- Buildroot (to generate toolchain)
- wxFormbuilder for RAD, very nice c++ GUI designer
- Ubuntu 14.04 LTS
- Additionally, Raspberry Pi model 2 B+ for real testing purpose.... + Raspbian Jessie
For beginning point, you may read my brief tutorial for RPi cross compile on Ubuntu x86_64, here: http://yasriady.blogspot.co.id/2015/10/ ... ry-pi.html