     # instance wired the agda-mode executable
     agdaProcessWired: false
     agdaProcess: null
+    agdaVersion: null
 
     constructor: (@core) ->
 

        @agdaProcessWired = false

    info: =>
        @getExecutablePath().then (path) =>
            args = @getProgramArgs().join(' ')
            child = exec "#{path} #{args} -V", (error, stdout, stderr) =>
                if error
                    @core.panel.setContent "Error", "#{error}", 'error'
                else
                    result = stdout.toString().match /^Agda version (.*)\n$/
                    args = @getProgramArgs()
                    args.unshift '--interaction'
                    if result
                        @core.panel.setContent "Info", [
                            "Agda version: #{result[1]}"
                            "Agda executable path: #{path}"
                            "Agda executable arguments: #{args.join(' ')}"
                        ]
                    else
                        @core.panel.setContent "Error", ["unable to parse agda version message #{stdout.toString()}"], 'error'

    compile: =>
        backend = atom.config.get 'agda-mode.backend'

            agdaProcess.on 'error', (error) =>
                reject new InvalidExecutablePathError error, path
            agdaProcess.stdout.once 'data', (data) =>
                result = data.toString().match /^Agda version (.*)\n$/
                if result
                    @agdaVersion = result[1]
                    atom.config.set 'agda-mode.executablePath', path
                    resolve path
                else
