Articulo de referencia

Ch (programación informática)

'''Standard edition:''' [[freeware]] '''Student edition:''' [[freeware]] for students '''Professional edition:''' [[trialware]] for 30 days"},"website":{"wt":"{{URL|www.softinte...

CH / ˌ s ˈ / es un intérprete y entorno de lenguaje de scripting multiplataforma propietario para C y C++ . Fue diseñado por Harry Cheng como un lenguaje de scripting para que los principiantes aprendieran matemáticas , informática, análisis numérico (métodos numéricos) y programación en C/C++. Actualmente, SoftIntegration, Inc. desarrolla y comercializa CH . Las versiones gratuitas incluyen la edición para estudiantes y la edición profesional no comercial para Raspberry Pi .

CH se puede integrar en programas de aplicación C y C++. Cuenta con funciones de cálculo numérico y representación gráfica. CH combina características de shell e IDE . [ 1 ] El shell de CH combina las características de un shell común y el lenguaje C. [ 2 ] ChIDE proporciona navegación rápida del código y depuración simbólica. Se basa en CH integrado, Scite y Scintilla . [ 3 ] [ 4 ]

CH está escrito en C y se ejecuta en Windows , Linux , macOS , FreeBSD , AIX , Solaris , QNX y HP-UX . Admite características de C90 y las principales características de C99 , pero no admite el conjunto completo de características de C++. Las características de números complejos de C99, aritmética de punto flotante IEEE 754 y matrices de longitud variable eran compatibles con CH antes de que se convirtieran en parte del estándar C99. [ 5 ] [ 6 ] [ 7 ] [ 8 ] CH fue notable entre las máquinas virtuales basadas en C por su funcionalidad y la disponibilidad de bibliotecas de terceros. [ 9 ]

CH cuenta con numerosos conjuntos de herramientas que amplían sus funciones. Por ejemplo, el CH Mechanism Toolkit se utiliza para el diseño y análisis de mecanismos de uso común, como el mecanismo de cuatro barras , el mecanismo de cinco barras , el mecanismo de seis barras , el mecanismo de manivela-corredera y el sistema de leva-seguidor. [ 10 ] El CH Control System Toolkit se utiliza para el diseño, análisis y modelado de sistemas de control lineales invariantes en el tiempo (LTI) de tiempo continuo o discreto. [ 11 ] Ambos conjuntos de herramientas incluyen el código fuente .

CH se ha integrado en C-STEM Studio, una plataforma gratuita para el aprendizaje de informática, ciencia, tecnología, ingeniería y matemáticas (C-STEM) con robótica. C-STEM Studio es desarrollado por el Centro de Informática Integrada y Educación STEM de la UC Davis y ofrece un plan de estudios para estudiantes de primaria y secundaria.

CH es compatible con LEGO Mindstorms NXT y EV3 , Arduino , Linkbot, Finch Robot, RoboTalk y Raspberry Pi, Pi Zero y ARM para la programación y el aprendizaje de robots. [ 12 ] [ 13 ] [ 14 ] También puede integrarse en la plataforma de diseño de sistemas y el entorno de desarrollo LabVIEW . [ 15 ]

Características

CH admite el estándar ISO C de 1999 (C99) y las clases de C++. Es un superconjunto de C con clases de C++. Admite varias características importantes de C99, como números complejos, matrices de longitud variable (VLA), aritmética de punto flotante IEEE 754 y funciones matemáticas genéricas. También admite la especificación para caracteres anchos del Anexo 1 de C90.

Las características de C++ disponibles en CH incluyen:

CH admite clases en C++ con capacidades adicionales, entre las que se incluyen:

  • Clases dentro de las funciones miembro
  • Funciones anidadas con clases
  • Pasar una función miembro como argumento de funciones de tipo puntero a función.

CH puede interactuar con bibliotecas C/C++ existentes y llamar a funciones C/C++ desde scripts CH. [ 16 ] Como intérprete C/C++, CH puede usarse como motor de scripting y lenguaje de extensión para aplicaciones. Se pueden pasar y compartir punteros a matrices o variables tanto en contextos de scripting compilados en C como en CH. Un ejemplo de una aplicación de scripting CH integrada es Mobile-C, que se ha utilizado para la visualización colaborativa de modelos de malla distribuidos. [ 17 ] [ 18 ] [ 19 ]

CH tiene un tipo de cadena incorporado (string_t) para la asignación y liberación automática de memoria. Admite alias de shell, historial y tuberías. [ 20 ] [ 21 ]

CH tiene funciones integradas de trazado gráfico 2D/3D y matrices computacionales para computación numérica. Una ecuación lineal 2D de la forma b = A*x se puede escribir tal cual en Ch. [ 22 ]

Véase también

Referencias

  1. Veeraraghavan, Sriranga (2013). "Una introducción a Ch: Implementación de un convertidor de temperatura en Ch" . ComputerWorld.{{cite journal}}: Para citar una revista se requiere |journal=( ayuda )
  2. Ch Shell
  3. Ch IDE
  4. Wang, Gary (2002). "Ch resuelve los problemas de portabilidad". IEEE Spectrum . 39 (6): 59. Bibcode : 2002IEEES..39f..59W . doi : 10.1109/MSPEC.2002.1049264 . S2CID 32477309 . 
  5. Cheng, Harry (1993). "Manejo de números complejos en el lenguaje de programación Ch" . Programación científica : 76–106 .
  6. Cheng, Harry (1993). "Computación científica en el lenguaje de programación Ch" . Programación científica: 49–75 .{{cite journal}}: Para citar una revista se requiere |journal=( ayuda )
  7. Cheng, Harry (1995). "Extending C and FORTRAN for Design Automation" . ASME Trans., Journal of Mechanical Design: 390–395 .{{cite journal}}: Para citar una revista se requiere |journal=( ayuda )
  8. Cheng, Harry (1995). "Extending C with arrays of variable length". Computer Standards & Interfaces . 17 (4): 375– 406. doi : 10.1016/0920-5489(95)00007-H .
  9. Morejon, Mario (2006). "El lenguaje Ch rivaliza con la funcionalidad de Java" . CRN.{{cite journal}}: Para citar una revista se requiere |journal=( ayuda )
  10. Cheng, Harry (2006). "Diseño y análisis de mecanismos interactivos orientados a objetos". Ingeniería con computadoras . 21 (3): 237– 246. doi : 10.1007/s00366-005-0008-4 . S2CID 16996625 . 
  11. Zhu, Yong (2003). "Un paquete de software basado en objetos para el diseño y análisis de sistemas de control interactivos". Journal of Computing and Information Science in Engineering . 3 (4): 366– 367. doi : 10.1115/1.1630815 . S2CID 17908643 . 
  12. robot ch
  13. ch pinzón
  14. ch frambuesa y brazo
  15. "Integración de un intérprete C/C++ Ch en LabVIEW para la creación de scripts" .
  16. Wilson, Matthew (2004). "Open-RJ and Ch" . Dr. Dobb's Journal .
  17. Cheng, Harry (2009). "Aceleración del desarrollo de software mediante scripts integrados" . Dr. Dobb's Journal . pág. 8. 
  18. Wang, Li-rong; Bo, Yo; Hagiwara, I (2009). 2009 IEEE 10th International Conference on Computer-Aided Industrial Design & Conceptual Design . Computer-Aided Industrial Design & Conceptual Design, 2009. CAID & CD 2009. IEEE 10th International Conference. pp. 1127–1132 . doi : 10.1109/CAIDCD.2009.5375178 . ISBN  978-1-4244-5266-8. S2CID 39307433 . 
  19. Wang, Li-rong; Bo, Yo; Hagiwara, Ichiro (2009). Simplificación colaborativa basada en agentes de un modelo de malla 3D . CDVE'09. Actas de la 6.ª conferencia internacional sobre diseño cooperativo, visualización e ingeniería. pp. 325–328 . ISBN  9783642042645.
  20. Campbell, Matt (2003). "Ch, AC/C++ Intérprete: Nuevas posibilidades para quienes gustan de C y Unix" . MACTECH, la revista de tecnología de Apple.{{cite journal}}: Para citar una revista se requiere |journal=( ayuda )
  21. Cheng, Harry (2010). El entorno de lenguaje Ch (ed. 6.3 ). Davis, CA: SoftIntegration, Inc. 
  22. ^ Glassborow, Francisco (2001). "El entorno del lenguaje Ch versión 2.0" . Revista C Vu: 36– 37.{{cite journal}}: Para citar una revista se requiere |journal=( ayuda )

Lecturas adicionales

  • Heller, Martin (2001). "El entorno del lenguaje Ch" . Byte . Archivado del original el 16 de noviembre de 2001.{{cite journal}}: Para citar una revista se requiere |journal=( ayuda )
  • Cheng, Harry (2002). "C99 y computación numérica" . Dr. Dobb's Journal . págs. 28–34 . 
  • Cheng, Harry (2006). "Ch: Intérprete AC/C++ para computación de scripts" . Dr. Dobb's Journal . págs. 6–12 . 
  • Cheng, Harry (2009). C para ingenieros y científicos: un enfoque interpretativo . McGraw-Hill. ISBN 978-0-07-729046-7.
  • Cheng, Harry (2011). C para ingenieros y científicos (  edición en chino). Higher Education Press. ISBN 978-0-07-729046-7.
  • Sitio web oficial , SoftIntegration
  • Mobile-C: una plataforma multiagente para agentes móviles C/C++ Página principal
  • Estudio C-STEM