140 likes | 266 Views
Knowledge, Action and Systems Some emerging foundational issues in Computing … Can Information Studies Help?. Eric Yu Faculty of Information Studies University of Toronto February 2001. Synopsis. Fundamental role of “language” in computing Traditional challenge in computing: “complexity”
E N D
Knowledge, Action and SystemsSome emerging foundational issues in Computing … Can Information Studies Help? Eric Yu Faculty of Information Studies University of Toronto February 2001
Synopsis • Fundamental role of “language” in computing • Traditional challenge in computing: “complexity” • originally refers to computational complexity - #computations to solve a certain problem • e.g., theorem proving in math. logic • e.g., encryption • Emerging challenges: more complexity • higher-level processing – semantics, intentionality • need “communication” across “communities” • evolution – coordinating, reconciling changes • Info. studies is also very much concerned about language • controlled vocabulary, subject categories, systems of concepts,… • Can Info. Studies principles be applied to challenges in computing?
What is Computing? getting a machine to do things for you based on symbols Action User Representation, Language
Instructions to a machine need to be expressed in some “language” that can be “understood” and executed by the machine program Programer I want … input data output data Process
Programs can be generated by other programs, allowing “higher-level” languages to be used Compiler Programer compiler program program in higher-level language I want … Programer Compiler Process program input data Process output data
Many levels of language Requirements language/notation (e.g., SADT, i*) … Design language/notation (e.g., UML) … Database language (e.g., SQL) Communication Protocols (e.g., HTTP) Programming language (e.g., Java) Intermediate code (e.g., Java byte code) Machine language (e.g., for Intel Pentium III) Each level has a different subject matter Translate from higher to lower-level language to get to “implementation”
Why translate? Why implementation? • computational power • digital electronics • gains by orders of magnitude, not % • leverage comes from transformation of knowledge into action • knowledge is embedded in programs – originating from programmers, designers, analysts, domain experts, users… • radical, structural changes • info revolution, information society, knowledge economy,… • implementability comes at the expense of “expressiveness” • need to restrict the language so that its meaning can be unambiguously specified, and therefore executed. • Each higher level of language (and corresponding abstract machine) offers greater degree of expressivenss.
Many levels of language Human natural language Specialized technical language (e.g., medical prescription, molecular biology, immunology) < controlled vocabularies > < classification rules > …. Requirements language/notation (e.g., SADT, i*) … Design language/notation (e.g., UML) … Database language (e.g., SQL) Communication Protocols (e.g., HTTP) Programming language (e.g., Java) Intermediate code (e.g., Java byte code) Machine language (e.g., for Intel Pentium III) Also gains “executability” by restricting language
new challenges • limits in achieving higher-level “knowledge” representation • “Formal Methods” (variants of math. logic) not gaining wide acceptance, despite high computational leverage • Semi-formal methods are widely used (e.g., UML) 2. communication across different communities, domains, due to connectivity, networking… 3. evolution – coordination, reconciling changes over time, across communities, at different rates • e.g., legacy reengineering – extracting meaning from code
Reaching out along three dimensions Evolution (across time) Major successes in computing have been at the bottom stretch of the vertical dimension. Distribution (across communities) Implementation (across abstraction levels)
Can Information Studies Help? • LIS has been concerned with making concept systems work on a large scale, world-wide, across many communities, managing evolution over long periods of time. • In computing, dozens (?) of concepts are invented per project per day per level of abstraction • Need to define meanings– social aspects of meaning, interpretation. • Need connection to action • XML is only a basis, e.g., • WML • VoiceXML • … Domain ontologies
Many major advances in computing have come from other fields • Chomsky – linguistics • Newell – psychology • Simon – organizational behaviour • … • Berners-Lee – physics (as a power user ) Information Studies have a lot to offer to enrich computing
Conversely… Information Science can benefit by better leveraging computational power • Information Studies is concerned with the entire knowledge cycle. • Computing has focused primarily on “combination” – manipulating explicit knowledge to produce other explicit knowledge. Computational power works best with highly restrictive languages (formal syntax, mathematical logics). • But computational power is increasingly used to support other phases in the knowledge cycle. The key is to be able “translate” knowledge from higher level languages (less restrictive) to lower level languages which can be directly connected to action (“executable” by machine). Nonaka 1994
Recap: What is Computing? getting a machine to do things for you based on symbols Computing is not just about computers, or about technology in the narrow sense. It is very much about language, and about connecting knowledge (expressed in some language) to action.