MARC details
000 -LEADER |
campo de control de longitud fija |
02908naa a2200265 a 4500 |
003 - IDENTIFICADOR DE NÚMERO DE CONTROL |
campo de control |
AR-LpUFIB |
005 - FECHA Y HORA DE LA ÚLTIMA TRANSACCIÓN |
campo de control |
20240131183011.0 |
007 - CAMPO FIJO DE DESCRIPCIÓN FÍSICA--INFORMACIÓN GENERAL |
campo de control de longitud fija |
ta |
008 - DATOS DE LONGITUD FIJA--INFORMACIÓN GENERAL |
campo de control de longitud fija |
230201s2002 xx do 000 0 eng d |
024 8# - IDENTIFICADOR DE OTROS ESTÁNDARES |
Número estándar o código |
DIF002455 |
040 ## - FUENTE DE CATALOGACIÓN |
Centro catalogador/agencia de origen |
AR-LpUFIB |
Lengua de catalogación |
spa |
Centro/agencia transcriptor |
AR-LpUFIB |
100 1# - ENTRADA PRINCIPAL--NOMBRE DE PERSONA |
Nombre de persona |
Garrido, Alejandra |
9 (RLIN) |
251648 |
245 10 - MENCIÓN DEL TÍTULO |
Título |
Challenges of refactoring C programs |
260 ## - PUBLICACIÓN, DISTRIBUCIÓN, ETC. |
Lugar de publicación, distribución, etc. |
ref_localidad@37940 : |
Nombre del editor, distribuidor, etc. |
, |
Fecha de publicación, distribución, etc. |
2002 |
490 0# - MENCIÓN DE SERIE |
Mención de serie |
^p Datos electrónicos (1 archivo : 126 KB) |
500 ## - NOTA GENERAL |
Nota general |
Formato de archivo: PDF. -- Este documento es producción intelectual de la Facultad de Informática-UNLP (Colección BIPA / Biblioteca.) -- Disponible también en línea (Cons. 22/12/2008) |
520 ## - RESUMEN, ETC. |
Sumario, etc. |
Refactoring has become a well-known technique for transforming code in a way that preserves behavior. Refactorings may be applied manually, although manual code manipulation is error prone and cumbersome, so maintainers need tools to make automatic refactorings. There is currently extensive literature on refactoring object-oriented programs and some very good tools for refactoring Smalltalk and Java code. Although there is more code written in C or C++ than in any other language, refactoring tools for C with full support for preprocessor directives have not yet appeared. The C programming language, especially the preprocessor directives that coexist with it, complicates refactorings in different ways as directives are not legal C code and may violate otherwise correct refactorings. Refactoring C poses two major research challenges. On the one hand, as preprocessor directives may violate correctness, new precondition and execution rules must be defined for existing refactorings to preserve behavior. On the other hand, the automated execution of refactorings requires specialized program analysis tools to represent and manipulate preprocessor directives. After studying the area we have found some results to overcome these challenges and make a correct tool for the C language attainable. This paper first discusses the difficulties in refactoring C code with preprocessor directives. It then defines preconditions and execution rules to maintain correctness of refactoring in the presence of macros and conditional directives. Moreover, new refactorings are proposed for macro definitions and conditionals. Lastly, the paper suggests enhancements to program analysis and program representation tools to correctly manipulate preprocessor directives. -- Keywords: Refactoring. C programming. Preprocessor directives. |
534 ## - NOTA SOBRE LA VERSIÓN ORIGINAL |
Encabezamiento principal del original |
Proceedings of the International Conference on the Principles of Software Evolution (IWPSE༾). |
650 #4 - PUNTO DE ACCESO ADICIONAL DE MATERIA--TÉRMINO DE MATERIA |
Término de materia o nombre geográfico como elemento de entrada |
DIAGNÓSTICO MÉDICO |
9 (RLIN) |
252428 |
650 #4 - PUNTO DE ACCESO ADICIONAL DE MATERIA--TÉRMINO DE MATERIA |
Término de materia o nombre geográfico como elemento de entrada |
PREPROCESADORES |
9 (RLIN) |
253683 |
650 #4 - PUNTO DE ACCESO ADICIONAL DE MATERIA--TÉRMINO DE MATERIA |
Término de materia o nombre geográfico como elemento de entrada |
MULTIPROCESADORES |
9 (RLIN) |
247609 |
856 40 - LOCALIZACIÓN Y ACCESO ELECTRÓNICOS |
Identificador Uniforme de Recursos |
<a href="www.lifia.info.unlp.edu.ar/papers/2002/Garrido2002.pdf">www.lifia.info.unlp.edu.ar/papers/2002/Garrido2002.pdf</a> |
856 40 - LOCALIZACIÓN Y ACCESO ELECTRÓNICOS |
Identificador Uniforme de Recursos |
<a href=" http://catalogo.info.unlp.edu.ar/meran/getDocument.pl?id=86"> http://catalogo.info.unlp.edu.ar/meran/getDocument.pl?id=86</a> |
942 ## - ELEMENTOS DE ENTRADA SECUNDARIOS (KOHA) |
Tipo de ítem Koha |
Capítulo de libro |