15 citations found. Retrieving documents...
M. Siff and T. Reps, "Program Generalization for Software Reuse: From C to C++," Proc. SIGSOFT '96 Fourth ACM SIGSOFT Symp. Foundations of Software Eng., pp. 135--146, Oct. 1996.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Inference of generic types in Java - Donovan, Ernst (2003)   (Correct)

....[8, 24, 23] typically implemented via dataflow. An abstract value (for instance, a set of possible run time types) is flowed around the program, and each program operation affects the abstract value in a well defined manner. Task. Polymorphic type inference aimed at reverse engineering [25, 9] aims to broaden the applicability of a pre existing component in order to permit it to be used in more situations. Code transformations either enable the broader applicability or provide compile time type correctness guarantees. Our work fits in this category. Type inference for ML style ....

....typed language [20, 22, 21, 15, 10, 7, 1, 2] data polymorphism is implicit and elimination of type checks is a major motivation. However, there is little room for standard type analysis. Statically typed languages take advantage of compile time type checking. Type inference or reconstruction [17, 20, 15, 25] must be used even for explicitly typed languages, if the source types do not capture the analysis information; that is the case for our analysis. The Hindley Milner algorithm was originally proposed to operate over equality constraints [17] More recent work that extends it to object oriented ....

[Article contains additional citation context not shown here]

M. Siff and T. W. Reps. Program generalization for software reuse: From C to C++. In Foundations of Software 16 Engineering, pages 135--146, 1996.


Proof Generalization and Proof Reuse - Pons   (Correct)

....theories such as integer or polynomials in the case of groups. In relation to the introduction of the concept of module modules in proof assistant, this could make it possible to develop parameterized theories starting from specic instances. This is more or less similar to Sioe and Reps s works[SR96] in the eld of programming languages, when they try to generate generic C code starting from C code. ....

Michael Sioe and Thomas Reps. Program generalization for software reuse: From C to C++. In Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, volume 216 of ACM Software Engineering Notes, pages 135146, New York, October 1618 1996. ACM Press.


An Empirical Analysis of C Preprocessor Use - Ernst, Badros, Notkin (2000)   (4 citations)  (Correct)

.... functions (even those that have been inlined [Zel83] An example of a tool working on the post processed code is the use of type inferencing to produce C function templates from C; however, the input has been preprocessed so that all include files are incorporated and all macros expanded [SR96, p. 145] Such preprocessing may limit the readability of the resulting C templates by converting terse, high level, well named constructs into verbose, low level code. Preprocessing may also limit reusability: the macro expanded code will perform incorrectly when compiled on a system with ....

Michael Si# and Thomas Reps. Program generalization for software reuse: From C to C++. In Proceedings of SIGSOFT '96 Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 135--146, October 1996.


An Empirical Analysis of C Preprocessor Use - Ernst, Badros, Notkin (1999)   (4 citations)  (Correct)

.... functions (even those that have been inlined [Zel83] An example of a tool working on the post processed code is the use of type inferencing to produce C function templates from C; however, the input has been preprocessed so that all include files are incorporated and all macros expanded [SR96, p. 145] Such preprocessing may limit the readability and reusability of the resulting C templates. Another example is that call graph extractors generally work in terms of the post processed code, even when a human is the intended consumer of the call graph [MNL96] A tool that manipulates ....

Michael Siff and Thomas Reps. Program generalization for software reuse: From C to C++. In Proceedings of SIGSOFT '96 Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 135--146, October 1996.


An Empirical Analysis of C Preprocessor Use - Ernst, Badros, Notkin (1997)   (4 citations)  (Correct)

....broad and diverse ways, complicating the development of C programming support tools. On the other hand, the analysis also convinces us that, by extending our analysis framework with some class type inferencing techniques (similar to those used by Siff and Reps for C to C translation [SR96], O Callahan and Jackson for program understanding [OJ97] and others) we can take significant steps towards a tool that usefully converts a high percentage of Cpp code into C language features. 1 We are interested not in translations that merely allow a C program to be compiled by a C ....

Michael Siff and Thomas Reps. Program generalization for software reuse: From C to C++. In Proceedings of SIGSOFT '96 Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 135--146, October 1996.


Coping with Type Casts in C - Siff, Chandra, Ball, Kunchithapadam, .. (1999)   (9 citations)  Self-citation (Siff Reps)   (Correct)

....relationships. Figure 7(b) shows a set of upcasts found in the vortex benchmark. In this graph, a number of pointer types are cast to Ptr(DrawObj) which is a pointer to struct DrawObj. 5 Related Work The idea of applying alternate type systems to C appears in several places, among them [5, 12, 9, 11, 13]. Most of these references discuss the application of parametric polymorphism to C, while in this paper we discuss the application of subtype polymorphism to C. The related work section in [11] describes related work pertaining to the application of parametric polymorphism to C. The type system ....

....The idea of applying alternate type systems to C appears in several places, among them [5, 12, 9, 11, 13] Most of these references discuss the application of parametric polymorphism to C, while in this paper we discuss the application of subtype polymorphism to C. The related work section in [11] describes related work pertaining to the application of parametric polymorphism to C. The type system developed in this paper has similarities with several type systems proposed by Cardelli [2, 3, 1] The primary difference is that we take into account the physical layout of data types when ....

Michael Siff and Thomas Reps. Program generalization for software reuse: From C to C++. In Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 135--146, San Francisco, October 1996.


Physical Type Checking for C - Chandra, Reps (1999)   (15 citations)  Self-citation (Reps)   (Correct)

....example problems with dereferencing null pointers, but only by adding explicit annotations to the source code. On the other hand, neither lint nor LCLint has a notion of subtyping. Alternative type systems. The idea of applying alternative type systems to C appears in several places, among them [7, 17, 11, 12, 16, 18]. Most of these references discuss the application of parametric polymorphism to C. In particular, 17] concerns a new dialect of C that is polymorphic and type safe. 11] uses polymorphic type inference on existing C programs, but for determining information about the transfer of values. 12] and ....

Michael Siff and Thomas Reps. Program generalization for software reuse: From C to C++. In Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 135--146, San Francisco, October 1996.


Identifying Modules Via Concept Analysis - Siff, Reps (1997)   (39 citations)  Self-citation (Siff Reps)   (Correct)

....Attributes capturing this information might be of the form may use a value that flows from statement s or is part of the slice with respect to statement s . ffl Information obtained from type inferencing: Type inference can be used to uncover distinctions between seemingly identical types [16, 14]. For example, if f is a function declared to be of type int Theta int bool, type inference might discover that f s most general type is of the form ff Theta fi bool. This reveals that the type of f s first argument is distinct from the type of 1 Some legacy code is monolithic ....

Michael Siff and Thomas Reps. Program generalization for software reuse: From C to C++. In Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 135--146, San Francisco, October 1996.


Physical Type Checking for C - Chandra, Reps (1999)   (15 citations)  Self-citation (Reps)   (Correct)

....problems with dereferencing null pointers but only by adding explicit annotations to the source code. On the other hand, neither lint nor LCLint has a notion of subtyping. Alternative type systems. The idea of applying alternative type systems to C appears in several places, among them [GS93, SV96, OJ95, SR96, Ste96]. Most of these references discuss the application of parametric polymorphism to C. In particular, SV96] concerns a new dialect of C that is polymorphic and type safe. OJ95] uses polymorphic type inference on existing C programs, but for determining information about the transfer of values. ....

Michael Siff and Thomas Reps. Program generalization for software reuse: From C to C++. In Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 135--146, San Francisco, October 1996.


Identifying Modules Via Concept Analysis - Siff, Reps (1997)   (39 citations)  Self-citation (Siff Reps)   (Correct)

....Attributes capturing this information might be of the form may use a value that flows from statement s or is part of the slice with respect to statement s . ffl Information obtained from type inferencing: Type inference can be used to uncover distinctions between seemingly identical types (see [19, 17]) For example, if f is a function declared to be of type int Theta int bool, type inference might discover that f s most general type is of the form ff Theta fi bool. This reveals that the type of f s first argument is distinct from the type of its second argument (even though they had ....

Michael Siff and Thomas Reps. Program generalization for software reuse: From C to C++. In Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 135--146, San Francisco, October 1996.


Coping with Type Casts in C - Siff, Chandra, Kunchithapadam, Reps (1999)   (9 citations)  Self-citation (Siff Reps)   (Correct)

....in the vortex benchmark. In this graph, a number of pointer types are cast to Ptr(DrawObj) which is a pointer to struct DrawObj. 5 Related Work Some of the ideas of this paper are also discussed in [13] The idea of applying alternate type systems to C appears in several places, among them [5, 15, 12, 14, 16]. Most of these references discuss the application of parametric polymorphism to C, while in this paper we discuss the application of subtype polymorphism to C. The related work section in [14] describes related work pertaining to the application of parametric polymorphism to C. The type system ....

....The idea of applying alternate type systems to C appears in several places, among them [5, 15, 12, 14, 16] Most of these references discuss the application of parametric polymorphism to C, while in this paper we discuss the application of subtype polymorphism to C. The related work section in [14] describes related work pertaining to the application of parametric polymorphism to C. The type system developed in this paper has similarities with several type systems proposed by Cardelli [2, 3, 1] The primary difference is that we take into account the physical layout of data types when ....

Michael Siff and Thomas Reps. Program generalization for software reuse: From C to C++. In Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 135--146, San Francisco, October 1996.


Identifying Modules Via Concept Analysis - Siff (1997)   (39 citations)  Self-citation (Siff Reps)   (Correct)

....Attributes capturing this information might be of the form may use a value that flows from statement s or is part of the slice with respect to statement s . ffl Information obtained from type inferencing: Type inference can be used to uncover distinctions between seemingly identical types [10, 9]. For example, if f is a function declared to be of type int Theta int bool, type inference might discover that f s most general type is of the form ff Theta fi bool. This reveals that the type of f s first argument is distinct from the type of its second argument (even though they had the ....

....y such that y x and y 6= x. 1] A sups( the atomic partition [2] P fAg [3] W fAg [4] while W 6= do [5] remove some p from W [6] for each c 2 p [7] for each c 0 2 sups(c) 8] p 0 p Gamma ancs(c 0 ) 9] if ( S p 0 ) c 0 = if p 0 and c 0 are disjoint [10] p 00 p 0 [ fc 0 g [11] if p 00 62 P [12] P P [ fp 00 g [13] W W [ fp 00 g [14] endif [15] endif [16] endfor [17] endfor [18] endwhile Figure 7: An algorithm to find the partitions of a concept lattice. The algorithm builds up a collection of all the partitions of a concept ....

Michael Siff and Thomas Reps. Program generalization for software reuse: From C to C++. In Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 135--146, San Francisco, October 1996.


An Empirical Analysis of C Preprocessor Use - Ernst, Badros, Notkin (2002)   (4 citations)  (Correct)

No context found.

M. Siff and T. Reps, "Program Generalization for Software Reuse: From C to C++," Proc. SIGSOFT '96 Fourth ACM SIGSOFT Symp. Foundations of Software Eng., pp. 135--146, Oct. 1996.


An Empirical Analysis of C Preprocessor Use - Ernst, Badros, Notkin (2002)   (4 citations)  (Correct)

No context found.

M. Siff and T. Reps, "Program Generalization for Software Reuse: From C to C++," Proc. SIGSOFT '96 Fourth ACM SIGSOFT Symp. Foundations of Software Eng., pp. 135--146, Oct. 1996.


Scripting Language Open PROMOL: Extension, Environment and.. - Damasevicius (2001)   (Correct)

No context found.

Siff, M., and T. Reps (1996). Program generalization for software reuse: From C to C++. In SIGSOFT 96: Proceedings of the Fourth ACM SIGSOFT Symposium on the Foundations of Software Engineering, pp. 135-146. ACM Press, New York.

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC