The equipment and operational techniques are described which were found suitable to control pH in the range 6.8-7.8 pH, within 3Z0.03 pH units of the desired value, a t cell concentrations up to a maximum of 2.5 X 106/ml. The results of batch growth of a suspension strain of the BHK cell (clone 13) under conditions of controlled pH are given and the significance of these results is discussed. 147 148 R. C. TELLING AND C. J. STONE 3, METER RECORDER CONTROLLED MAIN
A t ype-theoretic denition of a variant of the Standard ML (Revised 1996) programming language is given. The denition consists of a syntax-directed translation of SML96 programs into a typed intermediate language. The intermediate language is an explicitly-typed-calculus with product, sum, recursive, and module types. The translation performs type reconstruction, handles identier scope resolution, enforces static well-formedness conditions, and expands high-level constructs (such as pattern matching and signature matching) into uses of the more rudimentary mechanisms of the intermediate language. This document presents work in progress and is being distributed for the purpose of obtaining feedback. As such, the translation does not completely match the denition of SML96, which is itself still undergoing change.
The goal of the TIL project was to explore the use of Typed Intermediate Languages to produce high-performance native code from Standard ML (SML). We believed that existing SML compilers were doing a good job of conventional functional language optimizations, as one might find in a LISP compiler, but that inadequate use was made of the rich type information present in the source language. Our goal was to show that we could get much greater performance by propagating type information through to the back end of the compiler, without sacrificing the advantages afforded by loop-oriented and other optimizations.We also confirmed that using typed intermediate languages dramatically improved the reliability and maintainability of the compiler itself. In particular, we were able to use the type system to express critical invariants, and enforce those invariants through type checking. In this respect, TIL introduced and popularized the notion of a certifying compiler, which attaches a checkable certificate of safety to its generated code. In turn, this led directly to the idea of certified object code, inspiring the development of Proof-Carrying Code and Typed Assembly Language as certified object code formats.
We are investigating a new approach to compiling Standard ML (SML) based on four key technologies: interwional polymorphism [23], nearlg tag-free garbage collection [12, 46, 34], conventional functional language optimization, and loop optimization.To explore the practicality of our approach, we have constructed a compiler for SML called TIL, and are thus far encouraged by the results: On DEC ALPHA workstations, programs compiled by TIL are roughly three times faster, do one-fifth the total heap allocation, and use onehalf the physical memory of programs compiled by SML of New Jersey (SML/NJ).However, our results are still preliminary -we have not yet investigated how to improve compile time; TIL takes about eight times longer to compile programs than SML/NJ. Also, we have not yet implemented the full module system of SML, although we do provide support for structures and separate compilation.Fb.mlly, we expect the performance of programs compiled by TIL to improve significantly as we tune the compiler and implement more optimizations.Two key issues in the compilation of advanced languages such as SML are the presence of garbage collection and type variables.Most compilers use a universal representation for values of unknown or variable type. In particular, values are forced to fit into a tagged machine word; values larger than a machine word are represented as pointers to tagged, heapallocated objects. This approach supports fast garbage collection and efficient polymorphic functions, but can result in inefficient code when types are known at compile time. Even with recent advances in SML compilation, such as Leroy's representation analysis [28], values must be placed in a universal representation before being stored in updateable data
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2025 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.