The syntax is very concise and cryptic, but what is messy about dt[i,j,k]?
data.table transformed the way I do analysis. Honestly probably 75% of my lines have are dt[] calls. It allows me to analyze on 500M row data.sets routinely on a powerful workstation interactively.