Product SiteDocumentation Site

5. Modificaciones en Fedora para desarrolladores

5.1. Herramientas de desarrollo

5.1.1. Ada

Ada es un moderno lenguaje de programación diseñado para aplicaciones extensas de funcionamiento constante - y específicamente para sistemas incrustados - donde la confiabilidad y eficiencia son esenciales. Originariamente fue desarrollado en Francia a principios de los años 80, por un equipo liderado por el Dr. Jean Ichbiah en CII-Honeywell-Bull. A esta primera versión se la conoce como Ada 83. El lenguaje fue revisado y mejorado a una versión compatible a principios de los años 90 en los Estados Unidos, gracias a un equipo encabezado por Tucker Taft de la empresa Intermetrics. El lenguaje obtenido, Ada 95, fue el primero de los lenguajes orientados a objetos internacionalmente estandarizados (ISO). Bajo el patrocinio de ISO, se realizó una nueva (y menor) revisión como agregado a la estándar; esta versión del lenguaje es conocida como Ada 2005. Actualmente se está trabajando sobre algunas características adicionales (como el soporte para anotaciones de programa), y se espera que se complete en el año 2012.
Fedora 16 incluye las ultimas herramientas de codigo abierto para desarrollo en Ada.
  • Fedora 16 incluye una pila completa de herramientas para desarrolladores Ada: Compilador (gcc-gnat), Constructor de Proyecto (gprbuild), IDE (GPS) entre otras herramientas.
  • Enlaces Ada a las herramientas más populares como son: GTK, Qt, zeromq, Databases (PostgreSQL, MySQL y SQLite) etc

5.1.2. autoconf-archive

El GNU Autoconf Archive es una colección de más de 450 macros para GNU Autoconf que ha sido ofrecido como software libre por contribuyentes de la causa a lo largo de todo Internet. La versión 2011.04.12 es la que hoy se ofrece con Fedora 16. Diríjase a http://www.gnu.org/software/autoconf-archive/index.html para conocer los detalles del proyecto.

5.1.3. be

Bugs Everywhere (Errores en Todos Lados) es un "seguidor de errores distribuido”, diseñado para complementar los sistemas de control de versión. Mediante el uso del control de revisión como un backend para el estado del error, se gana varias características convenientes:
  • Los errores y el código viven en las ramas y se unen -cuando una rama se mezcla, ambos los cambios del código y los cambios del error que contiene la rama se mezclan entre sí. Ya no habrá confusión sobre si una corrección que fue aplicada a la rama de desarrollo pero que no está presente en la rama de producción signifique que el error está "corregido".
  • Los usuarios pueden modificar el estado del error fuera de línea, a diferencia de los seguidores de errores centralizados.
  • Cuando un usuario actualiza su código fuente, obtiene el estado del error actual al mismo tiempo.
  • Todavía se puede proveer acceso a través de interfaces web amigables-en este modelo, una interfaz web sólo es otro cliente que se incluye en el repositorio principal.
Fedora 16 incluye la versión 1.0.1.

5.1.4. btparser

btparser es un analizador de seguimiento de repostes que funciona con los informes producidos por el GNU Project Debugger (depurador de proyectos GNU). Puede realizar y analizar el seguimiento de un archivo de texto hasta un árbol de estructura C, permitiendo al desarrollador analizar los detalles y los marcos del seguimiento y así poder trabajar en ellos. La página trac del proyecto puede ser encontrada en https://fedorahosted.org/btparser/.

5.1.5. caribou-devel

Caribou es una aplicación de entrada de texto y navegación de IU (interfaz de usuario) que se desarrolló como una alternativa al Teclado En Pantalla de Gnome. El objetivo es crear una solución usable para personas cuya forma primaria de acceder a una computadora es un dispositivo intercambiador.
El objetivo inicial es poder realizar un teclado en pantalla en el acto, útil para quienes puedan utilizar un ratón, pero que no puedan utilizar un teclado. Este teclado en pantalla puede también ser útil para los usuarios de pantallas táctiles o de tabletas. http://live.gnome.org/Caribou.

5.1.6. cddlib-static

cddlib es una implementación de biblioteca C del Método de descripción doble de Motzkin (Double Description Method of Motzkin et al), que permite generar todos los vértices (esto es en puntos extremos), y rayos extremos de un poliedro general convexo. http://www.ifor.math.ethz.ch/~fukuda/cdd_home/.

5.1.7. D2

El lenguaje de programación D2 se encuentra disponible en Fedora 16. D es un lenguaje moderno de alto desempeño parecido a C/C++ y de sintaxis sencilla. Los desarrolladores de C/C++ y Java pueden migrar a D de manera sencilla.
Detalles adicionales se encuentran disponibles en la página de caractrísticas (en inglés). Mayor información acerca del lenguaje D puede hallarse en http://www.digitalmars.com/d/2.0/index.html.

5.1.8. emacs-ecb

emacs-ecb es un navegador de código basado en Emacs. Muestra un número de ventanas con información que le facilita la navegación y revisado del código fuente:
  • un árbol de directorios,
  • una lista de archivos fuente en el directorio actual (con soporte completo y estado de CV actual),
  • una lista de funciones/clases/métodos/... en el archivo actual, (ECB usa la semántica CEDET, Imenu, o etags, para obtener este listado de manera que todos los lenguajes soportados por cualesquiera de estas herramientas sean automáticamente soportadas por ECB también)
  • un historial con los archivos visitados recientemente (posible de ser organizados de acuerdo a diferentes criterios),
  • una ventana ecb directa o auto actualizada por el analizador semántico para algún intellisense,
  • la barra rápida
  • salida de la compilación (ventana de compilación) y otros modos como ayuda, grep, etc. o cualquiera que el usuario defina que se deba mostrar en esta ventana.
Puede hallarse mayor información en http://ecb.sourceforge.net/.

5.1.9. frama-c

frama-c es una herramienta de análisis de código fuente C, que puede ser utilizada o bien de manera independiente, o bien de manera integrada con Emacs. frama-c ofrece un navegador fuente, y puede calcular métricas sencillas, como por ejemplo sloc, profundidad de llamada o la complejidad ciclomática de un determinado proyecto. También puede generar gráficos de llamada sencillos. Pueden ser verificadas numerosas aserciones relativas al código, y este puede a su vez ser validado con diferentes teoremas. frama-c acepta complementos escritos por el usuario para análisis personalizados adicionales. Puede hallarse mayor información acerca de frama-c en http://frama-c.com/.

5.1.10. Complementos Python de GCC

Ahora está disponible un complemento GCC que integra Python 2 y Python 3, permitiendo a los desarrolladores enganchar el funcionamiento interior de GCC con más facilidad (por ejemplo, para añadir nuevas advertencias del compilador). Para más detalles vea la página de características.

5.1.11. jruby

jruby es una implementación Java del lenguaje Ruby, brindando a los programadores Ruby la independencia de la plataforma Java. La versión 1.6.2 de jruby es una novedad en Fedora 16. La página del proyecto puede conocerse en http://jruby.org.

5.1.12. libpipeline

libpipeline ofrece un conjunto de funciones para manipular las tuberías de los subprocesos de forma flexible y conveniente. http://libpipeline.nongnu.org/.

5.1.13. osm-gps-map-devel

osm-gps-map-devel es un widget GTK+ (con enlaces Python) que, cuando se indican coordenadas GPS, dibuja una ruta GPS, con puntos de interés sobre un mapa de circulación. Descarga datos de mapas desde una gran cantidad de sitios web, incluido openstreetmap.org. http://nzjrs.github.com/osm-gps-map/.

5.1.14. Perl 5.14

Fedora 16 se ofrece con Perl 5.14, y algunas de sus características son las de ser compatible con la versión 6 de Unicode; una manipulación más confiable y consistente de excepciones, el soporte mejorado para IPV6, y mejorías en el desempeño y la administración de la memoria. Para conocer la lista completa de las modificaciones (incluyendo las de sintaxis), por favor consulte la documentación oficial de Perl: http://perldoc.perl.org/perl5140delta.html.

5.1.15. qwtpolar-devel

qwtpolar-devel es una biblioteca para plotear gráficos polares. http://qwtpolar.sourceforge.net/.

5.1.16. shunit2

shunit2 es una unidad de marco de pruebas para sripts de shell, parecido a PyUnit o JUnit. http://code.google.com/p/shunit2/.

5.1.17. Análisis estático de extensiones CPython

Fedora ahora viene con la variante gcc-with-cpychecker de GCC, que agrega verificaciones adicionales en tiempo de compilación a los módulos de extensión de Python escritos en C, detectando varios de los problemas comúnes (por ejemplo, errores de conteo de referencias).

5.1.18. why-emacs

why-emacs es un agregado de Emacs para la herramienta de verificación de software denominada 'Why'. http://why.lri.fr/. Why ofrece soporte para una gran cantidad de demostradores de teoremas, entre los que se incluyen Ergo, haRVey y Zenon.

5.1.19. wso2

Otra novedad en Fedora 16 es el Marco de servicios web WSO2 para C++. Es una biblioteca C++ de tipo empresarial, que permite ofrecer y consumir servicios Web en C++. Fedora ofrece la versión 2.1.0 del marco de trabajo. La documentación puede conocerse en http://wso2.org/project/wsf/cpp/2.0.0/docs/.

5.2. Haskell

5.2.1. GHC

ghc ha sido actualizado a la versión 7.0.4 con muchos errores corregidos.

5.2.2. Plataforma Haskell

haskell-platform ha sido actualizado al último lanzamiento estable 2011.2.0.1.

5.2.3. Paquetes nuevos

Nuevos paquetes incluidos cabal-dev, leksah, y varias bibliotecas nuevas.