The CH programming language is designed to be a superset of C. CH bridges the gap between C and FORTRAN; it encompasses all the programming capabilities of FORTRAN 77 and consists of features of many other programming languages and software packages. Unlike other general-purpose programming languages, CH is designed to be especially suitable for applications in mechanical systems engineering. Because of our research interests, many programming features in CH have been implemented for design automation, although they are useful in other applications as well. In this paper we will describe these new programming features for design automation, as they are currently implemented in CH in comparison with C and FORTRAN 77.

1.
ANSI, 1978, ANSI Standard X3.9-1978, Programming Language FORTRAN, (revision of ANSI X2.9-1966), American National Standards Institute, Inc., NY.
2.
Cheng
H. H.
,
1993
a, “
Scientific Computing in the CH Programming Language
,”
Scientific Programming
, Vol.
2
, No.
3
, pp.
49
75
.
3.
Cheng
H. H.
,
1993
b, “
Handling of Complex Numbers in the CH Programming Language
,”
Scientific Programming
, Vol.
2
, No.
3
, pp.
79
106
.
4.
Cheng, H. H., 1993c, “Adding References and Nested Functions to C for Modular and Parallel Scientific Programming,” NCEG, X3J11.1/93-044, October 22.
5.
Cheng
H. H.
,
1994
a, “
Pedagogically Effective Programming Environment for Teaching Mechanism Design
,”
Computer Applications in Engineering Education
, Vol.
2
, No.
1
, pp.
23
39
.
6.
Cheng
H. H.
,
1994
b, “
Programming with Dual Numbers and its Applications in Mechanism Design
,”
Engineering with Computers
, Vol.
10
, No.
4
, pp.
212
229
.
7.
Cheng, H. H., and Thompson, 1995, “Computer-Aided Displacement Analysis of Spatial Mechanisms Using the CH Programming Language,” Advances in Engineering Software, (accepted).
8.
Clifford
W. K.
,
1873
, “
Preliminary Sketch of Bi-quaternions
,”
Proceedings of London Mathematical Society
, Vol.
4
, pp.
381
395
.
9.
Dooley, J. R., and McCarthy, J. M., 1991, “Spatial Rigid Body Dynamics Using Dual Quaternion Components,” Proceedings of IEEE International Conf. on Robotics and Automation, Vol. 1, Sacramento, CA, April, pp. 90–95.
10.
Martinez
J.
, and
Duffy
J.
,
1993
, “
The Principle of Transference—History, Statement and Proof
,”
Mechanism and Machine Theory
, Vol.
28
, No.
1
, Jan., pp.
165
177
.
11.
Erdman, A. G., and Sandor, G. N., 1991, “Mechanism Design, Analysis and Synthesis,” Vol. 1, 2nd edition, Prentice Hall.
12.
Gupta, K. C., 1989, “Spatial Kinematics,” lecture notes, Department of Mechanical Engineering, University of Illinois at Chicago, June.
13.
Hsia
L. M.
, and
Yang
A. T.
,
1981
, “
On the Principle of Transference in Three-Dimensional Kinematics
,”
ASME JOURNAL OF MECHANICAL DESIGN
, Vol.
103
, No.
3
, July, pp.
652
656
.
14.
IEEE, 1985, ANSI/IEEE Standard 754-1985, IEEE Standard for Binary Floating-Point Arithmetic, Institute of Electrical and Electronic Engineers, Inc., Piscataway, NJ.
15.
ISO/IEC, Information Technology, Programming Languages—FORTRAN, 1539:1991E, ISO, Geneva, Switzerland.
16.
ISO/IEC, Programming Languages—C, 9899:1990E, ISO, Geneva, Switzerland.
17.
Kernighan, B. W., and Ritchie, D. M., 1988, The C Programming Language, Prentice-Hall, Inc., Englewood Cliffs, NJ, 2nd edition; 1st edition, 1978.
18.
Neville, D., and Joskowicz, L., 1993, “A Representation Language for Mechanical Behavior,” Proc. of the 5th International Conf. on Design Theory and Methodology, Albuquerque, NM, September 19–22, pp. 1–6.
19.
Pennock
G. R.
, and
Yang
A. T.
,
1985
, “
Application of Dual-Number Matrices to the Inverse Kinematics Problem of Robot Manipulators
,”
ASME JOURNAL OF MECHANISMS, TRANSMISSIONS, AND AUTOMATION IN DESIGN
, Vol.
107
, June 1985, pp.
201
208
.
20.
Ravani
B.
, and
Roth
B.
,
1984
, “
Mappings of Spatial Kinematics
,”
ASME JOURNAL OF MECHANISMS, TRANSMISSIONS, AND AUTOMATION IN DESIGN
, Vol.
106
, Sept., pp.
341
347
.
21.
Ritchie
D. M.
,
Johnson
S. C.
,
Lesk
M. E.
, and
Kernighan
B. W.
,
1978
, “
The C Programming Language
,”
The Bell System Technical Journal
, Vol.
57
, No.
6
, July-August, pp.
1991
2020
.
22.
Shah, J. J., Bliznakov, P. I., and Urban, S. D., 1993, “Development of a Machine Understandable Language for Design Process Representation,” Proc. of the 5th International Conf. on Design Theory and Methodology, Albuquerque, NM, September 19–22, pp. 15–24.
23.
Stroustrup, B., 1987, The C++ Programming Language, Reading, MA, Addison-Wesley.
24.
Yang
A. T.
, and
Freudenstein
F.
,
1964
, “
Application of Dual-Number Quaternion Algebra to the Analysis of Spatial Mechanisms
,”
ASME Journal of Applied Mechanics
, Vol.
86
, No.
2
, June, pp.
300
308
.
This content is only available via PDF.
You do not currently have access to this content.