stringtranslate.com

Ч (компьютерное программирование)

CH / ˌ s ˈ / — это проприетарный кроссплатформенный интерпретатор C и C++ и среда языка сценариев. Он был разработан Гарри Ченгом как язык сценариев для начинающих изучать математику , вычисления, численный анализ (численные методы) и программирование на C/C++. В настоящее время Ch разрабатывается и продается компанией SoftIntegration, Inc. Бесплатные версии включают студенческую версию и некоммерческую профессиональную версию для Raspberry Pi .

CH может быть встроен в прикладные программы C и C++. Он имеет функции численных вычислений и графического построения графиков. CH объединяет в себе возможности оболочки и IDE . [1] Оболочка CH объединяет возможности обычной оболочки и языка C. [2] ChIDE обеспечивает быструю навигацию по коду и символьную отладку. Он основан на встроенных CH, Scite и Scintilla . [3] [4]

CH написан на языке C и работает на Windows , Linux , macOS , FreeBSD , AIX , Solaris , QNX и HP-UX . Он поддерживает C90 и основные функции C99 , но не поддерживает полный набор функций C++. Комплексные числа C99, арифметика с плавающей точкой IEEE-754 и функции массивов переменной длины поддерживались в CH до того, как они стали частью стандарта C99. [5] [6] [7] [8] В статье, опубликованной Computer Reseller News ( CRN ), CH названа примечательной среди виртуальных машин на основе C за ее функциональность и доступность сторонних библиотек. [9]

CH имеет множество наборов инструментов, которые расширяют его функции. Например, CH Mechanism Toolkit используется для проектирования и анализа часто используемых механизмов, таких как четырехзвенный шарнир , пятизвенный шарнир , шестизвенный шарнир , кривошипно-ползунный механизм и система кулачкового толкателя. [10] CH Control System Toolkit используется для проектирования, анализа и моделирования непрерывных или дискретных линейных систем управления с инвариантностью во времени (LTI). [11] Оба набора инструментов включают исходный код .

CH был интегрирован в бесплатную C-STEM Studio, платформу для изучения вычислительной техники, науки, технологий, инженерии и математики (C-STEM) с робототехникой. C-STEM Studio разработана Центром интегрированной вычислительной техники и STEM-образования Калифорнийского университета в Дэвисе, предлагая учебную программу для учащихся K-12.

CH поддерживает LEGO Mindstorms NXT и EV3 , Arduino , Linkbot, Finch Robot, RoboTalk и Raspberry Pi, Pi Zero и ARM для программирования и обучения роботов. [12] [13] [14] Его также можно встроить в платформу проектирования систем LabVIEW и среду разработки. [15]

Функции

CH поддерживает стандарт ISO C 1999 (C99) и классы C++. Это надмножество C с классами C++. Поддерживаются несколько основных функций C99, такие как комплексные числа, массивы переменной длины (VLA), арифметика с плавающей точкой IEEE-754 и общие математические функции. Спецификация для широких символов в Приложении 1 для C90 также поддерживается.

Возможности C++, доступные в CH, включают:

CH поддерживает классы на языке C++ с дополнительными возможностями, включая:

CH может взаимодействовать с существующими библиотеками C/C++ и вызывать функции C/C++ из скрипта CH. [16] Как интерпретатор C/C++, CH может использоваться как скриптовый движок и язык расширений для приложений. Указатели на массивы или переменные могут передаваться и совместно использоваться как в C-скомпилированных, так и в контекстах скриптов CH. Одним из примеров встроенного приложения скриптов CH является Mobile-C, который использовался для совместной визуализации распределенной сетчатой ​​модели. [17] [18] [19]

CH имеет встроенный строковый тип (string_t) для автоматического выделения и освобождения памяти. Он поддерживает псевдонимы оболочки, историю и конвейеризацию. [20] [21]

CH имеет встроенные функции 2D/3D графического построения и вычислительные массивы для численных вычислений. Двумерное линейное уравнение вида b = A*x может быть записано дословно в Ch. [22]

Смотрите также

Ссылки

  1. ^ Вирарагхаван, Шриранга (2013). «Введение в Ch: Реализация преобразователя температуры в Ch». ComputerWorld. {{cite journal}}: Цитировать журнал требует |journal=( помощь )
  2. ^ Ч. Шелл
  3. ^ Ч IDE
  4. ^ Ванг, Гэри (2002). «Ch решает проблемы переносимости». IEEE Spectrum . 39 (6): 59. doi :10.1109/MSPEC.2002.1049264. S2CID  32477309.
  5. ^ Ченг, Гарри (1993). «Обработка комплексных чисел в языке программирования Ch». Научное программирование : 76–106.
  6. ^ Чэн, Гарри (1993). «Научные вычисления на языке программирования Ch». Научное программирование: 49–75. {{cite journal}}: Цитировать журнал требует |journal=( помощь )
  7. ^ Ченг, Гарри (1995). «Расширение C и FORTRAN для автоматизации проектирования». ASME Trans., Журнал механического проектирования: 390–395. {{cite journal}}: Цитировать журнал требует |journal=( помощь )
  8. ^ Ченг, Гарри (1995). «Расширение C с помощью массивов переменной длины». Компьютерные стандарты и интерфейсы . 17 (4): 375–406. doi :10.1016/0920-5489(95)00007-H.[ мертвая ссылка ‍ ]
  9. ^ Морехон, Марио (2006). «Язык Ch соперничает с функциональностью Java». CRN. {{cite journal}}: Цитировать журнал требует |journal=( помощь )
  10. ^ Ченг, Гарри (2006). «Проектирование и анализ объектно-ориентированных интерактивных механизмов». Engineering with Computers . 21 (3): 237–246. doi :10.1007/s00366-005-0008-4. S2CID  16996625.
  11. ^ Чжу, Юн (2003). «Пакет программного обеспечения на основе объектов для проектирования и анализа интерактивных систем управления». Журнал вычислительной техники и информационной науки в машиностроении . 3 (4): 366–367. doi :10.1115/1.1630815. S2CID  17908643.
  12. ^ ч робот
  13. ^ ч зяблик
  14. ^ ch raspberry and arm [ постоянная мертвая ссылка ‍ ]
  15. ^ «Внедрение интерпретатора C/C++ Ch в LabVIEW для написания скриптов».
  16. ^ Уилсон, Мэтью (2004). «Open-RJ и Ch». Журнал доктора Добба .
  17. ^ Ченг, Гарри (2009). «Ускорение разработки программного обеспечения с использованием встроенных сценариев». Журнал доктора Добба . стр. 8.
  18. ^ Ван, Ли-ронг; Бо, Йо; Хагивара, И (2009). 2009 IEEE 10-я Международная конференция по автоматизированному промышленному проектированию и концептуальному дизайну . Автоматизированное промышленное проектирование и концептуальное проектирование, 2009. CAID & CD 2009. IEEE 10-я Международная конференция. стр. 1127–1132. doi :10.1109/CAIDCD.2009.5375178. ISBN 978-1-4244-5266-8. S2CID  39307433.
  19. ^ Ван, Ли-ронг; Бо, Йо; Хагивара, Ичиро (2009). Совместное упрощение трехмерной модели сетки с помощью агентов. Cdve'09. CDVE'09 Труды 6-й международной конференции по совместному проектированию, визуализации и инжинирингу. С. 325–328. ISBN 9783642042645.
  20. ^ Кэмпбелл, Мэтт (2003). «Ch, AC/C++ Interpreter – Новые возможности для тех, кто любит C и Unix». MACTECH, журнал технологий Apple. {{cite journal}}: Цитировать журнал требует |journal=( помощь )
  21. ^ Ченг, Гарри (2010). Языковая среда Ch (6.3 ред.). Дэвис, Калифорния: SoftIntegration, Inc.
  22. ^ Глассбороу, Фрэнсис (2001). «Языковая среда Ch, версия 2.0». Журнал C Vu: 36–37. {{cite journal}}: Цитировать журнал требует |journal=( помощь )

Дальнейшее чтение

Внешние ссылки