Kleisli, a functional query system

Kleisli is a modern data integration system that has made a significant impact on bioinformatics data integration. This paper contains a brief introduction to the Kleisli system and an example to illustrate its uses in the bioinformatics arena. The primary query language provided by Kleisli is called CPL, which is a functional query language whose surface syntax is based on the comprehension syntax. Kleisli is itself implemented using the functional language SML. So this paper also describes the influence of functional programming research that benefits the Kleisli system, especially the less obvious ones at the implementation level.Availability. Kleisli has been commercialized under the name “KRIS”. It is available from Kris Technology Inc., 713 Santa Cruz Ave, n2, Menlo Park, CA 94025, USA. Direct email to info@kris-inc.com and web browser to http:sswww.kris-inc.com.

[1]  Limsoon Wong THE COLLECTION PROGRAMMING LANGUAGE - Reference Manual , 1996 .

[2]  C. J. Date A critique of the SQL database language , 1984, SGMD.

[3]  D Benton,et al.  Bioinformatics--principles and potential of a new multidisciplinary tool. , 1996, Trends in biotechnology.

[4]  Limsoon Wong,et al.  Principles of Programming with Complex Objects and Collection Types , 1995, Theor. Comput. Sci..

[5]  Didier Rémy,et al.  Type checking records and variants in a natural extension of ML , 1989, POPL '89.

[6]  Allen Goldberg,et al.  Stream processing , 1984, LFP '84.

[7]  S F Altschul,et al.  Local alignment statistics. , 1996, Methods in enzymology.

[8]  J. B. Ward Principles of programming , 1956, Electrical Engineering.

[9]  Ke Wang,et al.  A Graphical Interface to Genome Multidatabases , 1998, J. Database Manag..

[10]  Philip Wadler Functional Programming: An Angry Half-Dozen , 1997, DBPL.

[11]  Bernhard Mitschang,et al.  Data-intensive intra- and Internet applications-experiences using Java and CORBA in the World Wide Web , 1998, Proceedings 14th International Conference on Data Engineering.

[12]  G. Schuler,et al.  Entrez: molecular biology database and retrieval system. , 1996, Methods in enzymology.

[13]  Philip Wadler,et al.  Comprehending monads , 1990, Mathematical Structures in Computer Science.

[14]  Ulf Leser,et al.  Issues in developing integrated genomic databases and application to the human X chromosome , 1998, Bioinform..

[15]  David Jordan,et al.  The Object Database Standard: ODMG 2.0 , 1997 .

[16]  D. Lipman,et al.  National Center for Biotechnology Information , 2019, Springer Reference Medizin.

[17]  Jon Sigel,et al.  CORBA Fundamentals and Programming , 1996 .

[18]  Philip Wadler An angry half-dozen , 1998, SIGP.

[19]  Carole A. Goble,et al.  TAMBIS: Transparent Access to Multiple Bioinformatics Information Sources , 1998, ISMB.

[20]  Kenneth H. Fasman,et al.  The GDB human genome data base anno 1993 , 1993, Nucleic Acids Res..

[21]  Lawrence C. Paulson,et al.  A Higher-Order Implementation of Rewriting , 1983, Sci. Comput. Program..

[22]  Anne H. H. Ngu,et al.  Heterogeneous Query Optimization Using Maximal Sub-Queries , 1993, International Conference on Database Systems for Advanced Applications.

[23]  A G Murzin,et al.  SCOP: a structural classification of proteins database for the investigation of sequences and structures. , 1995, Journal of molecular biology.

[24]  Peter Buneman,et al.  Structural Recursion as a Query Language , 1992, DBPL.

[25]  Dan Suciu,et al.  Bounded Fixpoints for Complex Objects , 1993, Theor. Comput. Sci..

[26]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[27]  Peter Buneman,et al.  Database programming in Machiavelli—a polymorphic language with static type inference , 1989, SIGMOD '89.

[28]  Limsoon Wong,et al.  THE Kleisli/CPL EXTENSIBLE QUERY OPTIMIZER - Programmer Guide , 1996 .

[29]  S Walsh,et al.  ACEDB: a database for genome information. , 1998, Methods of biochemical analysis.

[30]  Shahrokh Saeednia,et al.  How to maintain both privacy and authentication in digital libraries , 2000 .

[31]  Limsoon Wong,et al.  A protein patent query system powered by Kleisli , 1998, SIGMOD '98.

[32]  Jeffrey D. Ullman,et al.  Principles of Database and Knowledge-Base Systems, Volume II , 1988, Principles of computer science series.

[33]  Dan Suciu,et al.  On Two Forms of Structural Recursion , 1995, ICDT.

[34]  J. Michael Spivey,et al.  A Functional Theory of Exceptions , 1990, Sci. Comput. Program..

[35]  Juergen Sellentin,et al.  Data-intensive intra- & internet applications — experiences using java and corba in the world wide web , 1999 .

[36]  Limsoon Wong,et al.  An introduction to Remy's fast polymorphic record projection , 1995, SGMD.

[37]  Limsoon Wong,et al.  Querying Nested Collections , 1994 .

[38]  P D Karp,et al.  Database links are a foundation for interoperability. , 1996, Trends in biotechnology.

[39]  W. Pearson Comparison of methods for searching protein sequence databases , 1995, Protein science : a publication of the Protein Society.

[40]  L. R. Rasmussen,et al.  In information retrieval: data structures and algorithms , 1992 .

[41]  Limsoon Wong,et al.  Local properties of query languages , 1997, Theor. Comput. Sci..

[42]  Anthony Kosky,et al.  Transforming databases with recursive data structures , 1996 .

[43]  P G Baker,et al.  Recent developments in biological sequence databases. , 1998, Current opinion in biotechnology.

[44]  E. F. Codd,et al.  A relational model of data for large shared data banks , 1970, CACM.

[45]  N W Matheson,et al.  The GDB Human Genome Data Base Anno 1992. , 1992, Nucleic acids research.

[46]  E. F. Codd,et al.  A Relational Model for Large Shared Data Banks , 1970 .

[47]  G. Yarrington Molecular Cell Biology , 1987, The Yale Journal of Biology and Medicine.

[48]  Jennifer Widom,et al.  Object exchange across heterogeneous information sources , 1995, Proceedings of the Eleventh International Conference on Data Engineering.

[49]  Chen,et al.  Using Kleisli to Bring Out Features in BLASTP Results. , 1998, Genome informatics. Workshop on Genome Informatics.

[50]  Nick Roussopoulos,et al.  Interoperability of multiple autonomous databases , 1990, CSUR.

[51]  Chen Extracting Kozak Consensus Sequence Using KleisliJing , 1998 .

[52]  Val Tannen,et al.  Logical and Computational Aspects of Programming with Sets/Bags/Lists , 1991, ICALP.

[53]  R. G. G. Cattell,et al.  The Object Database Standard: ODMG-93 , 1993 .

[54]  Limsoon Wong,et al.  BioKleisli: a digital library for biomedical researchers , 1997, International Journal on Digital Libraries.

[55]  David B. Searls,et al.  SORTEZ: a relational translator for NCBI's ASN.1 database , 1994, Comput. Appl. Biosci..

[56]  Limsoon Wong,et al.  Query Languages for Bags and Aggregate Functions , 1997, J. Comput. Syst. Sci..