Logic programming environments: Dynamic program analysis and debugging
Tài liệu tham khảo
1989
Aikawa, S., Kamiko, M., Kubo, H., Matsuzawa, F., and Chikayama, T., ParaGraph: A Graphical Tuning Tool for Multiprocessor Systems, in: FGCS'92 [78], pp. 286–293.
1989
Arora, 1993, Explaining Program Execution in Deductive Systems
Av-Ron, 1984, Top-Down Diagnosis of Prolog Programs
Ball T., and Horwitz, S., Slicing Programs with Arbitrary Control Flow, in: Fritzson [80], AADEBUG'93.
Barker-Plummer, D., Cliché Programming in Prolog, in: Bruynooghe [20], pp. 247–271, META'90.
Baklund, J., What is a Meta-Variable in Prolog? in: Abramson and Rogers [1], pp. 383–398, META '88.
Baron, U., Chassin de Kergommeaux, J., Hailperin, M., Ratcliffe, M., Robert, P., Syre, J.-C., and Westphal, H., The Parallel ECRC Prolog System PEPSys: An Overview and Evaluation Results, in: FGCS'88[77], pp.841–850.
Belli, F., and Jack, O., A Product Assurance Environment for Prolog, in: Duccassé et al. [63], LPE'93.
Bergantz, 1991, Information Relationships in Prolog Programs: How do Programmers Comprehend Functionality?, 35, 313
Binks, D., Declarative Debugging of Abstract Data Types in Godël, in: Fritzon [80], AADEBUG'93.
Bougé, 1986, Test Sets Generating from Algebraic Specifications Using Logic Programming, Journal of System and Software, 6, 343, 10.1016/0164-1212(86)90004-X
Bowless, A. W., and Wilk, P. F., Tracing Requirements for Multi-Layered Meta-Programming in: Abramson and Rogers [1], pp. 383–398, META'88.
Brayshaw, 1991, An Architecture for Visualizing the Execution of Parallel Logic Programs, 870
Brayshaw, M., and Eisenstadt, M., Adding Data and Procedure Abstraction to the Transparent Prolog Machine (TPM), in: Kowalski and Bowen [106], pp. 532–547, JICSLP'88.
Breuer, 1992, Reverse Engineering in Prolog, vol. 636, 290
Bronsard, 1992, A Framework of Directionality for Proving Termination of Logic Programs, 321
Bruffaerts, A., and Henin, E., Proof Trees for Negation as Failure: Yet Another Prolog Meta-Interpreter, in: Kowalski and Bowen [106], pp. 343–358, JICSLP'88.
1990
Bruynooghe, 1991, A Practical Framework for the Abstract Interpretation of Logic Programs, Journal of Logic Programming, 10, 91, 10.1016/0743-1066(91)80001-T
Bruynooghe, 1992, Special Issue on Abstract Interpretation, Journal of Logic Programming, 13
Bruynooghe, M., and Janssens, G., An Instance of Abstract Interpretation Integrating Type and Mode Inference, in: Kowalski and Bowen [106], pp.669–683, JICSLP'88.
1992, vol. 631
Bundy, 1986, A Proposed Prolog Story
Byrd, 1980, Understanding the Control Flow of Prolog Programs, Logic Programming Workshop
Calejo, 1992, A Framework for Declarative Prolog Debugging
Calejo, 1991, Declarative Source Debugging, vol. 541
Callebaut, A., and Demoen, B., Program Sources as Model for Debugging in Prolog in: Ducassé et al. [64], LPE'90.
Campagnoni, 1989, Information Retrieval Using a Hypertext-Based Help System, Proceedings of the 12th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval, 212, 10.1145/75334.75357
Canfora, 1992, A Logic-Based Approach to Reverse Engineering Tools Production, IEEE Transactions on Software Engineering, 18, 1053, 10.1109/32.184760
Carlsson, 1993, Smoothing Rough Edges in Aurora
Carro, 1993, Some Paradigms for Visualizing Parallel Execution of Logic Programs
Casson, 1990, Event Abstraction Debuggers for Layered Systems in Prolog
Cheng, J., Slicing Concurrent Programs, in: Fritzon [80], AADEBUG'93.
Cherniak, 1988, Undebuggability and Cognitive Science, Communications of the ACM, 31, 402, 10.1145/42404.42406
Cochard, J.-L., A Graphical Representation Environment for Complex Prolog Structures, in: Ducassé et al. [64], LPE'90.
Codish, M., Dams, D., and Shapiro, E., Automatic Detection of Reply Variables in Concurrent Logic Programs, in: Bruynooghe [20], pp.325–338, META'90.
Codognet, C., Codognet, P., and Corsini, M., Abstract Interpretation of Concurrent Logic Programs, in: Debray and Herminigildo [45], pp.215–232, NACLP'90.
Cohen, 1977, A Language for Inquiring about the Run-Time Behavior of Programs, Software—Practice and Experience, 7, 445, 10.1002/spe.4380070403
Conlon, 1992, Debugging Tools for Concurrent Logic Programming, 35, 157
Coombs, 1984, Expert Systems: An Alternative Paradigm, 135
Coombs, 1986, Debugging User Conceptions of Interpretation Processes, 303
Chassin de Kergommeaux, 1988, The Implementation of PEPSys on a MX-500 Multiprocessor, Technical Report CA-38
1990
Debray, 1989, Static Inference of Modes and Data Dependencies in Logic Programs, ACM Transactions on Programming Languages and Systems, 11, 418, 10.1145/65979.65983
DeMillo, 1987
Dershowitz, N., and Lee, Y., Deductive Debugging, in: SLP'87 [171], pp.298–306.
Deville, 1994, Logic Program Synthesis, Journal of Logic Programming 19, 20, 321, 10.1016/0743-1066(94)90029-9
Also , Research Report RR 93-19,Université Catholique de Louvain, Unité d'Informatique.
Dewar, 1986, Graphical Display of Complex Information within a Prolog Debugger, 25, 503
Diehl, 1993, Reachability Analysis on Distributed Executions, vol. 668, 629
Dincbas, M., Van Hentenryck, P., Simonis, H., Aggoun, A., Graf, T., and Berthier, F., The Constraint Logic Programming Language CHIP, in: FGCS'88 [77].
Disz, T., and Lusk, E., A Graphical Tool for Observing the Behavior of Parallel Logic Programs, in: SLP'87 [171], pp. 46–53.
Domingue, 1989, A New Metaphor for the Graphical Explanation of Forward-Chaining Rule Execution, 129
Dorochevsky, 1992, ElipSys Parallel Execution Tracer, Internal Report 91-7i
Drabent, W., Nadjm-Tehrani, S., and Maluszynski, J., The Use of Assertions in Algorithmic Debugging, in: FGCS'88[77], pp. 573–581.
Drabent, W., Nadjm-Tehrani, S., amd Maluszynski, J., Algorithmic Debugging with Assertions, in: Abramson and Rogers [1], pp.383–398, META'88.
Ducassé, M., Abstract Views of Prolog Executions in Opium, in: Saraswat and Ueda [162], pp. 18–32, ILPS'91.
Ducassé, 1991, Analysis of Failing Prolog Executions
Ducassé, 1992, An Extendable Trace Analyser to Support Automated Debugging
Ducassé, M., A General Trace Querry Mechanism Based on Prolog, in: Bruynooghe and Wirsing [24], pp.400–414, PLILP'92.
Ducassé, M., A Pragmantic Survey of Automated Debugging, in: Fritzon [80], AADE- BUG'93.
1993
1990
1991
1992
Ducassé, 1994
Duesterwald, 1992, Distributed Slicing and Partial Reexecution for Distributed Programs, Vol. 589
Eisenstadt, 1984, A Powerful Prolog Trace Package
Eisenstadt, 1985, Retrospective Zooming, A Knowledge Based Tracing and Debugging Methodology for Logic Programming
Eisenstadt, 1988, The Transparent Prolog Machine (TPM): An Execution Model and Graphical Debugger for Logic Programming, Journal of Logic Programming, 5, 277, 10.1016/0743-1066(88)90001-5
Emde, 1990, Automated Debugging of Non-Terminating Prolog Programs, Proceedings of the ICLP'90 Workshop on Logic Programming Environments
Eriksson, 1985, Neat Explanation of Proof Trees, 379
Feldman, Y., and Shapiro, E., Temporal Debugging and Its Visual Animation, in: Saraswat and Ueda [162], pp.3–17, ILPS'91.
Fernández, 1992, IDeal Resource Allocation (IDRA): A Technique for Computing Accurate Ideal Speedups in Parallel Logic Languages
Ferrand, 1987, Error Diagnosis in Logic Programming, An Adaptation of E.Y. Shapiro's Method, Journal of Logic Programming, 4, 177, 10.1016/0743-1066(87)90001-X
1988
1992
Fidge, 1991, Logical Time in Distributed Computing Systems, IEEE Computer, 28–33
1993, Proceedings of the First Workshop on Automated and Algorithmic Debugging, vol. 749
Fromherz, 1993, Declarative Debugging of Concurrent Constraint Programs, Lecture Notes in Computer Sciences, vol. 749, 10.1007/BFb0019403
Fuchs, 1992, Specifications Are (Preferably) Executable, 323
Gaifman, 1991, Replay, Recovery, Replication and Snapshots of Nondeterministic Concurrent Programs
Gallagher, 1986, Transforming Logic Programs by Specialising Interpreters, 109
Gorlick, 1987, Timing Prolog Programs without Clocks, SLP'87, 426
Gorlick, 1990, Mockingbird: A Logical Methodology for Testing, The Journal of Logic Programming, 8, 95, 10.1016/0743-1066(90)90053-8
Graham, 1982, gprof: A Call Graph Execution Profiler, SIGPLAN Notices, 17, 120, 10.1145/872726.806987
Hanus, 1993, A Debugging Model for Functional Logic Programs, vol. 714
Hermenegildo, 1992
Hill, 1992, The Gödel Programming Language
Hill, P.M., and Lloyd, J.W., Analysis of Meta-Programs, in: Abramson and Rogers [1], pp. 23–51, META'88.
Hirunkitti, V., and Hogger, C.J., A Generalised Query Minimisation for Program Debugging, in: Fritzson [80], AADEBUG'93.
Hoffman, 1991, Automated Module Testing in Prolog, IEEE Transactions on Software Engineering, 17, 934, 10.1109/32.92913
Höök, 1990, Redo “TRY ONCE and PASS”: The Influence of Complexity and Graphical Notation on Novices' Understanding of Prolog, 19, 337
Höök, 1992, Possible Extensions to the Byrd Box Tracer Aimed at Experts
Huntbach, M.M., Algorithmic Parlog Debugging, in: SLP'87 [171], pp. 288–297.
Inamura, Y., and Onishi, S., A Detection Algorithm of Perpetual Suspension in KL1, in: Warren and Szeredi [191], pp.18–30, ICLP'90.
Ishida, S., and Chikayama, T., Programming Environment of PIMOS, in: Ducassé et al. [66], pp. 48–54, LPE'92.
Kahn, K.M., Concurrent Constraint Programs to Parse and Animate Pictures of Concurrent Constraint Programs, in: FGCS'92 [78].
Kamkar, 1990, Bug Localization by Algorithmic Debugging and Program Slicing, vol. 456
Karlsson, 1992, A High-Performance OR-Parallel System
Klint, 1992, Programming Environments, ACM SIGPLAN Notices, 27, 90, 10.1145/141018.141058
Komorowski, 1982, Partial Evaluation as a Means for Inferencing Data Structures in an Applicative Language: A Theory and Implementation in the Case of Prolog, 255
1982
Korel, B., Identifying Faulty Modifications in Software Maintenance, in: Fritzson [80], AADEBUG'93.
1988
Kusalik, 1993, Towards a Generalized Graphical Interface for Logic Programming Development
Kusalik, A.J., and Prestwich, S.D., Programmer-Oriented Visualisation of Parallel Logic Program Execution, in: Ducassé . [63], LPE'93.
Ladret, 1991, Vlp: A Visual Logic Programming Language, 2, 163
Lakshman, T. K., and Reddy, U. S., Typed Ptolog: A Semantic Reconstruction of Mycroft-O'Keefe Type System, in: Saraswat and Ueda [162], pp. 202–220, ILP'91.
Lamport, 1978, Time, Clocks, and the Ordering of Events in a Distributed System, Communications of the ACM, 21, 558, 10.1145/359545.359563
Lazzeri, S.G., Vizzprol: A Tool for Visualizing Prolog Programs, in: Ducassé and Ferrand [65], LPE'91.
Leal, J.P., The Ytoolkit: A Prolog Approach to a User Interface, in: Ducassé . [64], LPE'90.
Leal, J.P., Damas, L., and Moreira, N., An History Based Interface, in: Ducassé and Ferrand [65], LPE'91.
Leblanc, 1987, Debugging Parallel Programs with Instant Replay, IEEE Transactions on Computers, C-36, 471, 10.1109/TC.1987.1676929
Lee, Y.-J., and Dershowitz, N., Debugging Logic Programs Using Specifications, in: Fritzson [80], AADEBUG'93.
Leu, 1992, Execution Replay: A Mechanism for Integrating a Visualization Tool With, vol. 634, 55
Leu, 1991, Efficient Execution Replay Technique for Distributed Memory Architectures, vol. 487, 315
1989
Lichtenstein, Y., and Shapiro, E., Abstract Algorithmic Debugging, in: Kowalski and Bowen [106], JICSLP'88.
Lim, P., and Stuckey, P.J., Meta Programming as Constraint Programming, in: Debray and Hermenegildo [45], pp. 416–430, NACLP'90.
Lingenfelder, 1989, Structuring Computer Generated Proofs, 378
Lloyd, 1987, Declarative Error Diagnosis, 5, 133
Lloyd, J.W., Directions for Meta-Programming, in: FGCS'88 [77], pp. 609–617.
Looi, 1988, Analysing Novices' Programs in a Prolog Intelligent Teaching System, 314
Lusk, 1993, Applications of the Aurora Parallel Prolog System to Computational Molecular Biology, 353
Maeda, M., Implementing a Process Oriented Debugger with Reflection and Program Transformation, in: FGCS'92 [78], pp. 961–968.
Malony, 1991, Traceview: A Trace Visualization Tool, IEEE Software, 19, 10.1109/52.84213
Marre, 1991, Toward Automatic Test Data Set Selection Using Algebraic Specifications and Logic Programming, 202
McDowell, 1989, Debugging Concurrent Programs, ACM Computing Surveys, 21, 593, 10.1145/76894.76897
Meier, 1989, SEPIA—An Extendible Prolog System, Proceedings of the IFIP '89
Mellish, 1987, Abstract Interpretation of Prolog Programs, 181
Miller, 1956, The Magical Number Seven, Plus or Minus Two: Some Limits on Our Capacity for Processing Information, Psychological Review, 63, 81, 10.1037/h0043158
Monteiro, L., and Porto, A., Contextual Logic Programming, in: Levi and Martelli [119], pp. 284–299, ICLP'89.
Moroshita, 1986, Prolog Computation Model BPM and Its Debugger PROEDIT2, 147
Mulholland, 1993
Murray, 1993, Visualizing and Representing Knowledge for the End User: A Review, 38, 23
Myers, 1979, The Art of Software Testing
Nadathur, G., and Miller, D.A., An Overview of λProlog, in: Kowalski and Bowen [106], pp. 810–827, JICSLP'88.
Naish, 1986, Negation and Control in Prolog, vol. 238
Naish, L., Declarative Debugging of Lazy Functional Programs, in: Ducassé . [66], pp. 29–34, LPE'92.
Naish, L., Types and the Intended Meaning of Logic Programs, in: Pfenning [153], ch.6, pp. 189–216, ISBN 0-262-16131-1.
Naish, L., Dart, P.W., and Zobel, J., The NU-Prolog Debugging Environment, in: Levi and Martelli [119], ICLP'89.
Nakashima, 1984, What is a Variable in Prolog?, 327
Nilsson, H., and Fritzson, P., Algorithmic Debugging of Lazy Functional Languages, in: Bruynooghe and Wirsing [24], pp.385–399, PLILP'92.
Noyé, 1994, An Overview of the Knowledge Crunching Machine
Olsson, 1991, A Dataflow Approach to Event-Based Debugging, 21, 209
Osterweil, 1992, A Proposed Testing and Analysis Research Initiative, IEEE Software, 89, 10.1109/52.156901
Paris, 1991, Generation and Explanation: Building an Explanation Facility for the Explainable Expert Systems Framework, 49
Pereira, 1986, Rational Debugging in Logic Programming, vol. 225, 203
Pereira, L.M., and Calejo, M.C., A Framework for Prolog Debugging, in: Kowalski and Bowen [106], JICSLP'88.
Pereira, L.M., Damasio, C.V. and Alferes, J.J., Debugging by Diagnosing Assumptions, in: Fritzson [80], AADEBUG'93.
1992
Plummer, 1987, Coda: An Extended Debugger for Prolog
Podgurski, 1989, The Implications of Program Dependences for Software Testing, Debugging, and Maintenance, 14, 168
Rajan, 1987, Apt: A Principled Design of an Animated View of Program Execution for Novice Programmers, 291
Raynal, 1992, About Logical Clocks for Distributed Systems, Operating Systems Review (ACM SIGOPS), 26, 41, 10.1145/130704.130708
Reiss, 1990, Connecting Tools Using Message Passing in the FIELD Program Development Environment, IEEE Software, 57, 10.1109/52.56450
Rousset, 1987, Negative and Positive Explanations in Expert Systems, 1
Rueher, M., Revisiting Capabilities of Graphic for Logic Programming, in: Ducassé and Ferrand [65], LPE'91.
Safra, 1986, Meta Interpreters for Real, 271
1991
Saurel, 1987, Contribution aux Systémes Experts: Développement d'un Cas Concret et Etude du Probléme de la Génération d'Explications Négatives
Schleiermacher, 1990, The Implementation of ProTest
Sehr, D.C., and Kalé, L.V., Estimating the Inherent Parallelism in Prolog Programs, in: FGCS'92 [78], pp. 783–790.
Shahmehri, 1991, Generalized Algorithmic Debugging
Shapiro, 1989, The Family of Concurrent Logic Programming Languages, ACM Computing Surveys, 21, 413, 10.1145/72551.72555
Shapiro, 1983
Shmueli, O., and Tsur, S., Logical Diagnosis of LDL Programs, in: Warren and Szeredi [191], pp. 112–129, ICLP'90.
Silverman, 1987, The Logix System User Manual
1987
Specht, G., Generating Explanation Trees Even for Negations in Deductive Database Systems, in: Ducassé . [63], LPE'93.
Sterling, 1986, Incremental Flavor-Mixing of Meta-Interpreters for Expert System Construction, Proceedings of the 3rd Symposium on Logic Programming, 20
Sterling, 1986
Sterling, 1989, Explaining Prolog Based Expert Systems Using a Layered Meta-Interpreter
Strooper, P., and Hoffman, D., Prolog Testing of C Modules, in: Saraswat and Ueda [162], pp. 596–610, ILPS'91.
Svensson, 1990, MUSE Trace
Swartout, 1989, Toward a Rapid Prototyping Environment for Expert Systems
Takahashi, 1985, Preset—A Debugging Environment for Prolog, vol. 221, 90
Takeuchi, 1987, Algorithmic Debugging of GHC Programs and its Implementation in GHC, 180
Tick, E., Visualizing Parallel Logic Programs with VISTA, in: FGCS'92 [78], pp. 934– 942.
Tobermann, G., and Beckstein, C., What's in a Trace: The Box Model Revisited, in: Fritzson [80], AADEBUG'93.
Trehan, R., A Process Based Tracer for KL1 on PIM, in: Ducassé and Ferrand [65], LPE'91.
van Emden, 1982, An Interpreting Algorithm for Prolog Programs, Proceedings of the First International Conference on Logic Programming
van Emden, 1993, Marketing for Logic Programming, Newsletter of the Association for Logic Programming, 6, 3
van Emden, 1982, Logic Programming, 189
van Harmelen, 1992, Definable Naming Relations in Meta-Level Systems, vol. 649, 89
van Rossum, 1989, Implémentation d'un Debugger Prolog
Van Someren, 1985
Walker, 1983, Prolog/Ex1, An Inference Engine Which Explains Both Yes and No Answers, 526
1990
Weiser, 1984, Program Slicing, IEEE Transactions on Software Engineering, SE-10, 352, 10.1109/TSE.1984.5010248
Wieland, 1990, Two Explanation Facilities for the Deductive Database Management System DeDex, Proceedings of the 9th Conference on Entity-Relationship Approach, 189
Wielemaker, 1992
Wielemaker, 1992
Yalcinalp, 1991, Meta-Programming for Knowledge Based Systems in Prolog
Yalcinalp, L.Ü., and Sterling, L., An Integrated Interpreter for Explaining Prolog's Successes and Failures, in: Abramson and Rogers [1], META'88.