Udarbejdet sprog - Compiled language
Et kompileret sprog er et programmeringssprog, hvis implementeringer typisk er kompilatorer (oversættere, der genererer maskinkode fra kildekode ), og ikke tolke (trin-for-trin eksekutører af kildekode , hvor der ikke foregår oversættelse før runtime).
Udtrykket er noget uklart. I princippet kan ethvert sprog implementeres med en compiler eller med en tolk. En kombination af begge løsninger er også almindelig: en kompilator kan oversætte kildekoden til en mellemform (ofte kaldet p-kode eller bytecode ), som derefter sendes til en tolk, der udfører den.
Fordele og ulemper
Programmer, der er kompileret til indfødt kode på kompileringstidspunktet, har en tendens til at være hurtigere end dem, der oversættes ved runtime på grund af oversættelsesprocessens overhead. Nyere teknologier såsom just-in-time-kompilering og generelle forbedringer i oversættelsesprocessen begynder dog at indsnævre dette hul. Blandede opløsninger ved hjælp af bytecode har tendens til mellemliggende effektivitet.
Programmeringssprog på lavt niveau kompileres typisk, især når effektivitet er det vigtigste problem, frem for understøttelse på tværs af platforme . For sådanne sprog er der flere en-til-en-korrespondancer mellem den programmerede kode og hardwareoperationer udført af maskinkode , hvilket gør det lettere for programmører at kontrollere brugen af central processor (CPU) og hukommelse i detaljer.
Med en vis indsats er det altid muligt at skrive kompilatorer selv for traditionelt fortolkede sprog . For eksempel kan Common Lisp kompileres til Java bytecode (derefter fortolket af den virtuelle Java -maskine ), C -kode (derefter kompileret til native maskinkode) eller direkte til native kode. Programmeringssprog, der understøtter flere kompileringsmål, giver udviklere mere kontrol over enten at vælge udførelseshastighed eller kompatibilitet på tværs af platforme.
Sprog
Nogle sprog, der almindeligvis anses for at være udarbejdet:
- Ada
- ALGOL
-
GRUNDLÆGGENDE
- PowerBasic
- Visual Basic (til bytecode)
- PureBasic
- C
- C ++
- C# (til bytecode)
- CLEO
- COBOL
- Cobra
- Krystal
- D
- eC
- Eiffel
- Erlang (til bytecode)
- F# (til bytecode)
- Faktor (senere versioner)
- Forth
- Fortran
- Gå
- Haskell
- Haxe (til bytecode eller C ++)
- Java (til bytecode)
- JOVIAL
- Julia (gennem JIT )
- LabVIEW , G
- Lisp
- Frodige
- Kviksølv
- ML
- Nim (til C, C ++ eller Objective-C)
- Åben-URQ
- Pascal
- Mål-C
- PL/I
- RPG
- Rust
- Frø 7
- SPITBOL
- Swift
- Vala
- Vlang
- Visual Foxpro
- Visuel Prolog
- W
- Zig
Værktøjer
Se også
Referencer
- ^ Ullah, Asmat. "Funktioner og egenskaber ved kompilerede sprog" . www.sqa.org.uk .
- ^ Hickey, Rich. "Clojure er et kompileret sprog" , Hentet den 11. september 2020.
eksterne links
.