diff options
Diffstat (limited to 'final_project/work/description')
-rw-r--r-- | final_project/work/description | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/final_project/work/description b/final_project/work/description new file mode 100644 index 0000000..64b6574 --- /dev/null +++ b/final_project/work/description @@ -0,0 +1,26 @@ + +A generic operator system connects the application of a generic procedure on +multiple arguments to the "appropriate" procedure for those specific arguments +based on type predicates. + +Our problem is to take an individual object (/not/ in the object-oriented +sense of the word, but in the s-expression sense of the word) and determine +the set of procedures which /could/ be applied to it based on type predicates +and present these options interactively to the user in a useful manner. + +[Various optimizations to this process will be discussed] + +We will consider and demonstrate this system in the domains of a) the R5RS +Scheme builtin types and procedures and b) the scmutils types and special +procedures for mathematics and physics. Our "range" for these domains will +be an interactive REPL environment (or just text interaction?) and a GTK +graphical user interface. + +Other domains this system could be applied to include: + random correctness or unit testing of complex systems + automatically generated generic user interfaces + +Related problems (which could be covered by this work?): + chaining procedures (eg if f maps A->B and g maps B->C, then gof maps + A->C which might be what we want + some kind |