Results 1 -
9 of
9
Profiling Large-Scale Lazy Functional Programs
- JOURNAL OF FUNCTIONAL PROGRAMMING
, 1998
"... The LOLITA natural language processor is an example of one of the ever-increasing number of large-scale systems written entirely in a functional programming language. The system consists of over 47,000 lines of Haskell code (excluding comments) and is able to perform a wide range of tasks such as se ..."
Abstract
-
Cited by 14 (3 self)
- Add to MetaCart
The LOLITA natural language processor is an example of one of the ever-increasing number of large-scale systems written entirely in a functional programming language. The system consists of over 47,000 lines of Haskell code (excluding comments) and is able to perform a wide range of tasks such as semantic and pragmatic analysis of text, information extraction and query analysis. The efficiency of such a system is critical; interactive tasks (such as query analysis) must ensure that the user is not inconvenienced by long pauses, and batch mode tasks (such as information extraction) must ensure that an adequate throughput can be achieved. For the past three years the profiling tools supplied with GHC and HBC have been used to analyse and reason about the complexity of the LOLITA system. There have been good results, however experience has shown that in a large system the profiling life-cycle is often too long to make detailed analysis possible, and the results are often misleading. In response to these problems a profiler has been developed which allows the complete set of program costs to be recorded in so-called cost-centre stacks. These program costs are then analysed using a post-processing tool to allow the developer to explore the costs of the program in ways that are either not possible with existing tools or would require repeated compilations and executions of the program. The modifications to the Glasgow Haskell compiler based on detailed cost semantics and an efficient implementation scheme are discussed. The results of using this new profiling tool in the analysis of a number of Haskell programs are also presented. The overheads of the scheme are discussed and the benefits of this new system are considered. An outline is also given of how this approach can be modified to assist with the tracing and debugging of programs.
Parallelising a Large Functional Program Or: Keeping LOLITA Busy
, 1996
"... . A parallel version of the LOLITA natural language engineering system is under construction. We believe that, at 47,000 lines of Haskell, LOLITA is the largest non-strict parallel functional program ever. In this paper we report on the ongoing parallelisation of LOLITA, which has the following ..."
Abstract
-
Cited by 9 (1 self)
- Add to MetaCart
. A parallel version of the LOLITA natural language engineering system is under construction. We believe that, at 47,000 lines of Haskell, LOLITA is the largest non-strict parallel functional program ever. In this paper we report on the ongoing parallelisation of LOLITA, which has the following interesting features common to real world applications of lazy languages: -- the code was not specifically designed for parallelism; -- laziness is essential for the efficiency in LOLITA; -- LOLITA interfaces to data structures outside the Haskell heap, using a foreign language interface; -- LOLITA was not written by those most closely involved in the parallelisation. Our expectations in parallelising the program were to achieve moderate speedups with small changes in the code. To date speedups of up to 2.4 have been achieved for LOLITA running under a realistic simulation of our 4 processor shared-memory target machine. We are currently tuning the program on the Sun SPARCserver ta...
Realization of natural language interfaces using lazy functional programming
- ACM Comp. Surv. 38(4) Article
, 2006
"... The construction of natural language interfaces to computers continues to be a major challenge. The need for such interfaces is growing now that speech recognition technology is becoming more readily available, and people cannot speak those computer-oriented formal languages that are frequently used ..."
Abstract
-
Cited by 7 (1 self)
- Add to MetaCart
The construction of natural language interfaces to computers continues to be a major challenge. The need for such interfaces is growing now that speech recognition technology is becoming more readily available, and people cannot speak those computer-oriented formal languages that are frequently used to interact with computer applications. Much of the research related to the design and implementation of natural language interfaces has involved the use of high-level declarative programming languages. This is to be expected as the task is extremely difficult, involving syntactic and semantic analysis of potentially ambiguous input. The use of LISP and Prolog in this area is well documented. However, research involving the relatively new lazy functional programming paradigm is less well known. This paper provides a comprehensive survey of that research.
University of Durham: Description of the LOLITA system as Used in MUC-7
- In Proceedings of the MUC-7
, 1995
"... Laboratory for Natural Language Engineering, Department of Computer Science, University of Durham, ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
Laboratory for Natural Language Engineering, Department of Computer Science, University of Durham,
Financial Information Extraction using pre-defined and user-definable Templates in the LOLITA System
- Proceedings of the Fifteenth International Conference on Computational Linguistics (COLING-92
, 1997
"... Financial operators have today access to an extremely large amount of data, both quantitative and qualitative, real-time or historical and can use this information to support their decision-making process. Quantitative data are largely processed by automatic computer programs, often based on artific ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Financial operators have today access to an extremely large amount of data, both quantitative and qualitative, real-time or historical and can use this information to support their decision-making process. Quantitative data are largely processed by automatic computer programs, often based on artificial intelligence techniques, that produce quantitative analysis, such as historical price analysis or technical analysis of price behaviour. Differently, little progress has been made in the processing of qualitative data, which mainly consists of financial news articles from financial newspapers or on-line news providers. As a result the financial market players are overloaded with qualitative information which is potentially extremely useful but, due to the lack of time, is often ignored. The goal of this work is to reduce the qualitative data-overload of the financial operators. The research involves the identification of the information in the source financial articles which is relevant ...
Realization of Natural-Language Interfaces Using Lazy Functional Programming
- ACM Comput. Surv
"... The construction of natural-language interfaces to computers continues to be a major challenge. The need for such interfaces is growing now that speech-recognition technology is becoming morereadily available, and people cannot speak those computer-oriented formal languages that are frequently used ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
The construction of natural-language interfaces to computers continues to be a major challenge. The need for such interfaces is growing now that speech-recognition technology is becoming morereadily available, and people cannot speak those computer-oriented formal languages that are frequently used to interact with computer applications. Much of the research related to the design and implementation of natural-language interfaces has involved the use of high-level declarative programming languages. This is to be expected as the task is extremely difficult, involving syntactic and semantic analysis of potentially-ambiguous input. The use of LISP and Prolog in this area is well documented. However, research involving the relatively-new lazy functional-programming paradigm is less well known. This paper provides a comprehensive survey of that research.
ANALOGOUS REASONING AND CASE-BASED REASONING FOR INTELLIGENT DECISION SUPPORT SYSTEMS
"... Abstract: Methods of analogous reasoning and case-based reasoning for intelligent decision support systems are considered. Special attention is drawn to methods based on a structural analogy that take the context into account. This work was supported by RFBR (projects 02-07-90042, 05-07-90232). ..."
Abstract
- Add to MetaCart
Abstract: Methods of analogous reasoning and case-based reasoning for intelligent decision support systems are considered. Special attention is drawn to methods based on a structural analogy that take the context into account. This work was supported by RFBR (projects 02-07-90042, 05-07-90232).
Granularity for Explanation
"... . Most people would agree that a formalisation of granularity in natural language should involve notions of abstraction and detail. However in reality, this concept has proved difficult to capture formally. In this paper we examine the role of granularity in constructing explanations. This role ..."
Abstract
- Add to MetaCart
. Most people would agree that a formalisation of granularity in natural language should involve notions of abstraction and detail. However in reality, this concept has proved difficult to capture formally. In this paper we examine the role of granularity in constructing explanations. This role is clarified by providing several dimensions along which any explanation task can be characterised. We argue that a combination of these dimensions can be used to define a notion of coherence in texts. This notion of coherence gives rise to search heuristics when solving nontrivial language engineering problems such as reference resolution. 1 Introduction Intuitively shifts in granularity correspond to the ability of an individual to see the same concept through different perspectives depending upon the current needs. However this notion has proved difficult to capture rigourously, and in the cases where a formal characterisation has been given few implementations have emerged. We ini...
Knowledge Representation and Reasoning Using Sorts in Large Scale Natural Language Processing
"... This paper has began to address these issues. A fuller discussion and further examples are to be presented at the workshop. ..."
Abstract
- Add to MetaCart
This paper has began to address these issues. A fuller discussion and further examples are to be presented at the workshop.

