Euler (programmeringsspråk)
Paradigm | Multiparadigm : procedurmässigt , imperativt , strukturerat |
---|---|
Familj | ALGOL Wirth |
Designad av |
Niklaus Wirth Helmut Weber |
Utvecklare |
Stanford University ETH Zürich |
Dök först upp | 1965 |
Maskinskrivningsdisciplin | dynamisk |
Omfattning | Lexikalisk |
Influerad av | |
ALGOL 60 |
Euler är ett programmeringsspråk skapat av Niklaus Wirth och Helmut Weber, tänkt som en förlängning och generalisering av ALGOL 60 . Formgivarnas mål var att skapa ett språk som är:
- Enklare men ändå mer flexibel än ALGOL 60
- Användbar och bearbetad med rimlig effektivitet
- Definierbar med rigorös formalitet
Tillgängliga källor indikerar att Euler var i drift 1965.
Översikt
Euler använder ett allmänt datatypskoncept . I Euler arrayer , procedurer och switchar inte kvantiteter som deklareras och namnges av identifierare: till skillnad från ALGOL är de inte kvantiteter på samma nivå som variabler . Dessa kvantiteter är snarare på nivån med numeriska och booleska konstanter . Således, förutom de traditionella numeriska och logiska konstanterna, introducerar Euler flera tillagda typer:
Alla konstanter kan tilldelas variabler, som har samma form som i ALGOL, men för vilka inga fasta typer anges: Euler använder dynamisk typning . Vidare kan en procedur producera ett värde av som helst när den exekveras, och denna typ kan variera från ett anrop av proceduren till nästa .
På samma sätt kan elementen i en lista ha värden av vilken typ som helst och dessa kan skilja sig från element till element i en lista. Så när listelementen är etiketter erhålls en switch. Om elementen är procedurer erhålls en procedurlista, som inte är tillgänglig i ALGOL 60. Om elementen är listor själva, erhålls en allmän trädstruktur.
Euler tillhandahåller generella typprovnings- och typomvandlingsoperatörer.