Euler (bahasa pengaturcaraan)
![]() | |
| |
Paradigma | procedural, imperative, structured |
---|---|
Direka oleh | Niklaus Wirth and Helmut Weber |
Disiplin penjenisan | dynamic |
Dipengaruhi | ALGOL 60 |
Euler ialah satu bahasa pengaturcaraan yang dicipta oleh Niklaus Wirth dan Helmut Weber, bertujuan sebagai tambahan dan meluaskan ALGOL 60. Matlamat penciptanya adalah bagi menghasilkan bahasa pengaturcara:
- yang lebih mudah, tetapi lebih lentur, berbanding ALGOL 60
- yang merupakan bahasa pengaturcaraan berguna yang memproses dengan keberkesanan memandai
- yang boleh ditakrifkan secara rasmi dengan ketat
Menyeluruh
Euler menggunakan konsep jenis umum. Dalam Euler, jujukan, prosedur, dan suis bukanlah kuantiti yang diistihar dan dinamakan oleh pengenal: ia tidak (sebagaimana ALGOL) kuantiti yang sama taraf dengan pembolehubah, sebaliknya, kuantiti ini pada tahap sama dengan nombor dan pemalar bolean. Dengan itu, selain nombor tradisi dan pemalar logik, Euler memperkenalkan jenis tambahan berikut:
- rujukane
- label
- simbol - symbol
- senarai - list (jujukan)
- prosedur
- tidak ditakrifkan - ("undefined")
Semua malar boleh diberikan pada pembolehubah, yang memiliki bentuk sama seperti dalamALGOL, tetapi yang mana tiada jenis tetap dinyatakan: Euler merupakan bahasa pengaturcara taip dinamik. Tambahan lagi, prosedure boleh menghasilkan nilai sebarang jenis apabila dilaksanakan, dan jenis ini boleh berlainan dari satu panggilan prosedure dengan berikutnya. Sama juga, unsur dalam senarai boleh memiliki nilai sebarang jenis dan boleh terdapat perbezaan antara unsur dengan unsur dalam senarai. Dengan itu, apabila senarai unsur merupakan label, pertukaran didapati. Jika unsur merupakan prosedure, senarai prosedure didapati (yang tiada dalam ALGOL 60). Jika unsur itu sendiri merupakan senarai, struktur pokok umum didapati. Euler memberikan ujian-jenis umum dan operator penukar-jenis.
Bacaan
- Niklaus Wirth, Helmut Weber: EULER: a generalization of ALGOL, and its formal definition: Part I. Communications of the ACM 1966; 9 (1): p. 13-25
- Niklaus Wirth, Helmut Weber: EULER: a generalization of ALGOL, and its formal definition: Part II. Communications of the ACM 1966; 9 (2): p. 89-99
- Thomas W. Christopher: EULER. An Experiment in Language Definition. Illinois Institute of Technology, 1997. full text Diarkibkan 2006-09-01 di Wayback Machine