Research Article

Designing and Interpreting a Mathematical Programming Language

Volume: 23 Number: 6 December 1, 2019
EN

Designing and Interpreting a Mathematical Programming Language

Abstract

The syntax of the programming languages has a significant impact on the definition and validation of mathematical calculations. In particular, the management of code identification and validation processes can be made easier and faster, depending on the parametric behavior of the functions. In this article, a programming language that supports the use of mathematical function structures is designed and an interpreter, which can evaluate the source code written in this language, is developed. The language syntax is represented by an LL (k) grammar defined in the BNF notation. The interpreter consists of several basic components such as parser, semantic controller and code evaluator, each of which makes a different kind of code interpretation. The LL (k) parser component used for the syntactic analysis of the language is generated via an automatic code generation tool called JavaCC. The other components work on the abstract syntactic tree that this parser generates. To illustrate the use of the language with code samples, several mathematical algorithms that include calculations on different sequences of numbers, are programmed and interpreted.

Keywords

References

  1. [1] L. K. C. Louden, “Programming Languages: Principles and Practices", Cengage Learning, 2011.
  2. [2] R. Harper, "Practical Principles for Programming Languages", 2nd ed., Cambridge University Press, 2016.
  3. [3] B. W. Kernighan and D. M. Ritchie, "The C Programming Language", Prentice Hall Professional Technical Reference, 1988.
  4. [4] L. Wall, T. Christiansen and J. Orwant, "Programming Perl", 3rd ed., O'Reilly Media, 2000.
  5. [5] M. Mateas and N. Montfort, "A Box, Darkly: Obfuscation, Weird Languages, and Code Aesthetics", In Digital Arts and Culture: Digital Experience: Design, Aesthetics, Practice (DAC 2005), Copenhagen, Denmark, 2005.
  6. [6] International Obfuscated C Code Contest., https://www.ioccc.org/, 2018.
  7. [7] J. Wakerly, "The programming language Pascal", Microprocessors and Microsystems, vol. 3, no. 7, pp. 321-326, 1979.
  8. [8] K. Arnold, J. Gosling, and . Holmes, "The Java programming language", Addison Wesley Professional, 2005.

Details

Primary Language

English

Subjects

Computer Software

Journal Section

Research Article

Publication Date

December 1, 2019

Submission Date

December 11, 2018

Acceptance Date

April 16, 2019

Published in Issue

Year 2019 Volume: 23 Number: 6

APA
Pehlivan, H. (2019). Designing and Interpreting a Mathematical Programming Language. Sakarya University Journal of Science, 23(6), 1027-1041. https://doi.org/10.16984/saufenbilder.494974
AMA
1.Pehlivan H. Designing and Interpreting a Mathematical Programming Language. SAUJS. 2019;23(6):1027-1041. doi:10.16984/saufenbilder.494974
Chicago
Pehlivan, Hüseyin. 2019. “Designing and Interpreting a Mathematical Programming Language”. Sakarya University Journal of Science 23 (6): 1027-41. https://doi.org/10.16984/saufenbilder.494974.
EndNote
Pehlivan H (December 1, 2019) Designing and Interpreting a Mathematical Programming Language. Sakarya University Journal of Science 23 6 1027–1041.
IEEE
[1]H. Pehlivan, “Designing and Interpreting a Mathematical Programming Language”, SAUJS, vol. 23, no. 6, pp. 1027–1041, Dec. 2019, doi: 10.16984/saufenbilder.494974.
ISNAD
Pehlivan, Hüseyin. “Designing and Interpreting a Mathematical Programming Language”. Sakarya University Journal of Science 23/6 (December 1, 2019): 1027-1041. https://doi.org/10.16984/saufenbilder.494974.
JAMA
1.Pehlivan H. Designing and Interpreting a Mathematical Programming Language. SAUJS. 2019;23:1027–1041.
MLA
Pehlivan, Hüseyin. “Designing and Interpreting a Mathematical Programming Language”. Sakarya University Journal of Science, vol. 23, no. 6, Dec. 2019, pp. 1027-41, doi:10.16984/saufenbilder.494974.
Vancouver
1.Hüseyin Pehlivan. Designing and Interpreting a Mathematical Programming Language. SAUJS. 2019 Dec. 1;23(6):1027-41. doi:10.16984/saufenbilder.494974

Cited By


INDEXING & ABSTRACTING & ARCHIVING

33418 33537  30939     30940 30943 30941  30942  33255    33253  33254

30944  30945  30946   34239




30930Bu eser Creative Commons Atıf-Ticari Olmayan 4.0 Uluslararası Lisans   kapsamında lisanslanmıştır .