sentence: code used citeulike is written in tcl , with user contributed plugins in python , perl , ruby and tcl ; some additional modules are written in java ; data is stored using postgresql there is no api but plugins can be contributed using subversion .