 
 import Cocoa
 
-class Script {
+protocol Script {
+    func run() throws
+    func reveal() throws
+    func edit() throws
+}
+
+class AbstractScript : Script {
     
     let url: URL
     let name: String

            do {
                input = try self.readInputString(type: inputType, editor: document)
            } catch let error {
                Script.writeToConsole(message: error.localizedDescription, scriptName: self.name)
                return
            }
        } else {


// MARK: -

final class AppleScript: AbstractScript {
    
    static let extensions = ["applescript", "scpt", "scptd"]
    
