2011/3/24 Philipp Gesang <pgesang@ix.urz.uni-heidelberg.de>
>      {\ctalua{context(modification_date("\jobname.tex", "#1"))}}
          ^
s/\\ctalua/\\ctxlua/

I have:
\startluacode
  function modification_date(file, format)
    local f    = file
    local attr = lfs.attributes(f)

    assert (type(attr) == "table")
    if attr.mode ~= "directory" then
      if format == "long" then
        return os.date("%Y-%m-%d %H:%M",attr.modification)
      else
        return os.date("%Y-%m-%d",attr.modification)
      end
    end
  end
\stopluacode

\def\getdate
 {\dosingleempty\dogetdate}

\def\dogetdate[#1]%
 {\ctxlua{context(modification_date("\jobname.tex", "#1"))}}

\starttext

\getdate

\getdate{"short"}

\getdate{"long"}

\stoptext

This gives:
2011-03-24
2011-03-24"short"
2011-03-24"long"

--
Cecil Westerhof