Determining the extent of lookahead in syntactic error repair
ACM Transactions on Programming Languages and Systems (TOPLAS)
SDE 5 Proceedings of the fifth ACM SIGSOFT symposium on Software development environments
Lightweight lexical source model extraction
ACM Transactions on Software Engineering and Methodology (TOSEM)
ACM Transactions on Computer-Human Interaction (TOCHI)
Version models for software configuration management
ACM Computing Surveys (CSUR)
GENOA—a customizable, front-end-retargetable source code analysis framework
ACM Transactions on Software Engineering and Methodology (TOSEM)
Exploiting the map metaphor in a tool for software evolution
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Using multidimensional separation of concerns to (re)shape evolving software
Communications of the ACM
Error repair with validation in LR-based parsing
ACM Transactions on Programming Languages and Systems (TOPLAS)
Consistency maintenance in real-time collaborative graphics editing systems
ACM Transactions on Computer-Human Interaction (TOCHI)
A State-of-the-Art Survey on Software Merging
IEEE Transactions on Software Engineering
Flexible Merging for Asynchronous Collaborative Systems
On the Move to Meaningful Internet Systems, 2002 - DOA/CoopIS/ODBASE 2002 Confederated International Conferences DOA, CoopIS and ODBASE 2002
Selected papers from the ICSE SCM-4 and SCM-5 Workshops, on Software Configuration Management
A Survey of Software Refactoring
IEEE Transactions on Software Engineering
DMS®: Program Transformations for Practical Scalable Software Evolution
Proceedings of the 26th International Conference on Software Engineering
NextGen eXtreme porting: structured by automation
Proceedings of the 2005 ACM symposium on Applied computing
Backward-compatible constant-time exception-protected memory
Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Hi-index | 0.00 |
We present a novel method for generalizing the recognition capability of a tool from one dialect of a language to other dialects. The framework defines a novel base-dialect-specific map layer for representing program geography as recognised/unrecognised program zones in terms of an annotated preprocessor token stream. Error call stacks generated in the front-end syntax-analysis are also stored in the map for invoking programmable, error handling and repair transformations to obtain recognizable constructs from un-recognized ones. An iterative process is followed, wherein for each transformation, reversion-identifying edits are also stored in the map to provide a handle on (and preserved semantics of) the unchanged, original form. To advance unconstrained dialect variation from the recognised base dialect, the map's edit components and all transformations are defined on text form, for which a novel datatype minimizing transformation conflict is defined denotationally. The datatype, anchored text, gives primacy to locations in the initial sources, independently of the code located thereat. This results in greater commutativity of software transformations. A case study of the approach in generalizing a sequential dialect of C to UPC (Unified Parallel C) is carried out.