Philippe Charles

dblp:76/1470 · DBLP profile ↗
← Back
7ranked-venue papers
3as first author
0since 2021 · last 2009
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 4 · 3 first-authorSystems, architecture and hardware · 2Databases, data management, data science and information retrieval · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Programming languages and type systems · 70% Requirements engineering and software design · 30%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Parallel and multicore computing · 83% High-performance computing · 8% Distributed systems · 8%
Databases, data mining, and information retrieval
1 paper
Query processing and optimization · 67% Data stream processing · 33%

Topics — the 11 heaviest of 11, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Programming languages and type systems
language specification
0.112009
Accelerating the creation of customized, language-Specific IDEs in Eclipse · OOPSLA 2009
Programming languages and type systems
language design
0.112007
IMP: a meta-tooling platform for creating language-specific ides in eclipse · ASE 2007
Requirements engineering and software design
software architecture
0.112007
IMP: a meta-tooling platform for creating language-specific ides in eclipse · ASE 2007
Parallel and multicore computing › parallel computing
parallel programming languages
0.112005
X10: an object-oriented approach to non-uniform cluster computing · OOPSLA 2005
Parallel and multicore computing
parallel programming models
0.112005
X10: an object-oriented approach to non-uniform cluster computing · OOPSLA 2005
Parallel and multicore computing › parallel programming models › distributed memory programming models
partitioned global address space
0.112005
X10: an object-oriented approach to non-uniform cluster computing · OOPSLA 2005
Data stream processing
continuous query processing
0.012003
Streaming XPath Processing with Forward and Backward Axes · ICDE 2003
Query processing and optimization › XML query processing
streaming XPath evaluation
0.012003
Streaming XPath Processing with Forward and Backward Axes · ICDE 2003
Query processing and optimization
XML query processing
0.012003
Streaming XPath Processing with Forward and Backward Axes · ICDE 2003
High-performance computing
cluster computing
0.012005
X10: an object-oriented approach to non-uniform cluster computing · OOPSLA 2005
Distributed systems
distributed programming
0.012005
X10: an object-oriented approach to non-uniform cluster computing · OOPSLA 2005

Methods — techniques the papers use, named apart from their topics

code generation from language specifications · 0.1meta-tooling · 0.1atomic blocks · 0.1async/future/foreach constructs · 0.1streaming algorithms · 0.0document-order traversal · 0.0
YearPublicationVenuePosition
2009 Accelerating the creation of customized, language-Specific IDEs in Eclipse
abstract
Full-featured integrated development environments have become critical to the adoption of new programming languages. Key to the success of these IDEs is the provision of services tailored to the languages. However, modern IDEs are large and complex, and the cost of constructing one from scratch can be prohibitive. Generators that work from language specifications reduce costs but produce environments that do not fully reflect distinctive language characteristics.
Philippe Charles, Robert M. Fuhrer, Stanley M. Sutton Jr., Evelyn Duesterwald, Jurgen J. Vinju
OOPSLA1
2007 IMP: a meta-tooling platform for creating language-specific ides in eclipse
abstract
Programming language design remains a vital field, with interest in languages targeting concurrency, scripting, and aspects, as well as in domain-specific languages. Full-featured integrated development environments (IDEs) have become critical to the adoption of new languages. A key factor in the success of these IDEs is the provision of services specifically tailored to the language. However, modern IDE frameworks are large and complex, and the cost of constructing a language-specific IDE from scratch remains prohibitive
Philippe Charles, Robert M. Fuhrer, Stanley M. Sutton Jr.
ASE1
2005 X10: an object-oriented approach to non-uniform cluster computing
abstract
It is now well established that the device scaling predicted by Moore's Law is no longer a viable option for increasing the clock frequency of future uniprocessor systems at the rate that had been sustained during the last two decades. As a result, future systems are rapidly moving from uniprocessor to multiprocessor configurations, so as to use parallelism instead of frequency scaling as the foundation for increased compute capacity. The dominant emerging multiprocessor structure for the future is a Non-Uniform Cluster Computing (NUCC) system with nodes that are built out of multi-core SMP chips with non-uniform memory hierarchies, and interconnected in horizontally scalable cluster configurations such as blade servers. Unlike previous generations of hardware evolution, this shift will have a major impact on existing software. Current OO language facilities for concurrent and distributed programming are inadequate for addressing the needs of NUCC systems because they do not support the notions of non-uniform data access within a node, or of tight coupling of distributed nodes.We have designed a modern object-oriented programming language, X10, for high performance, high productivity programming of NUCC systems. A member of the partitioned global address space family of languages, X10 highlights the explicit reification of locality in the form of places}; lightweight activities embodied in async, future, foreach, and ateach constructs; a construct for termination detection (finish); the use of lock-free synchronization (atomic blocks); and the manipulation of cluster-wide global data structures. We present an overview of the X10 programming model and language, experience with our reference implementation, and results from some initial productivity comparisons between the X10 and Java™ languages.
Philippe Charles, Christian Grothoff, Vijay A. Saraswat, Christopher Donawa, Allan Kielstra, Kemal Ebcioglu, Christoph von Praun, Vivek Sarkar
OOPSLA1
2004 A Framework and Tool for Porting Assessment and Remediation
abstract
We present a framework and tool for porting assessment and code remediation in commercial porting projects, primarily targeting interplatform C/C++ porting. Our framework has a modular architecture for handling real-world code bases, a key part of which is an extensible knowledge base of porting issue types. Porting issue detection and remediation are achieved through dynamically-linked detector and remediation "plug-ins" which can be augmented over time. Analysis and remediation can be performed over multiple intermediate forms, such as the AST or error logs. Analysis and remediation results can be presented as a single assessment report, or the changes can be incorporated into the original code base. Furthermore our framework has been integrated into Eclipse, providing a user interface and allowing further capability for integration with other Eclipse extensions. A subset of our tool has been prototyped and benchmarked against real-world customer code.
Donald P. Pazel, Pradeep Varma, Amit M. Paradkar, Beth Tibbitts, Ashok Anand, Philippe Charles
ICSM6
2003 Streaming XPath Processing with Forward and Backward Axes
abstract
We present a streaming algorithm for evaluating XPath expressions that use backward axes (parent and ancestor) and forward axes in a single document-order traversal of an XML document. Other streaming XPath processors handle only forward axes. We show through experiments that our algorithm significantly outperforms (by more than a factor of two) a traditional nonstreaming XPath engine. Furthermore, our algorithm scales better because it retains only the relevant portions of the input document in memory. Our engine successfully processes documents over 1GB in size, whereas the traditional XPath engine degrades considerably in performance for documents over 100 MB in size and fails to complete for documents of size over 200 MB.
Charles Barton, Philippe Charles, Deepak Goyal, Mukund Raghavachari, Marcus Fontoura, Vanja Josifovski
ICDE2
1988 An Overview of the PTRAN Analysis System for Multiprocessing
Frances E. Allen, Michael G. Burke, Philippe Charles, Ron Cytron, Jeanne Ferrante
J. Parallel Distributed Comput.3
1987 An Overview of the PTRAN Analysis System for Multiprocessing
Frances E. Allen, Michael G. Burke, Philippe Charles, Ron Cytron, Jeanne Ferrante
ICS3