Glasgow Haskell Compiler

Glasgow Haskell Compiler
Logo
VývojářUniversity of Glasgow
Aktuální verze9.10.1 (10. května 2024)
Operační systémCross-platform
Vyvíjeno vC a Haskell
Typ softwarukompilátor
LicenceBSD
Webdomovská stránka GHC
Některá data mohou pocházet z datové položky.

The Glorious Glasgow Haskell Compilation System, známý pod jmény Glasgow Haskell Compiler či GHC, je open source kompilátor do strojového kódu pro funkcionální programovací jazyk Haskell. Hlavními vývojáři jsou Simon Peyton Jones a Simon Marlow.

Historie

Vývoj GHC původně začal v roce 1989 jako prototyp napsaný v LML Kevinem Hammondem na Universitě Glasgow. Později, ve stejném roce, byl tento prototyp kromě jeho parseru kompletně přepsán v Haskellu Cordelií Hallovou, Willem Partainem a Simonem Peytonem Jonesem. První beta verze byla vydána 1. dubna 1991 a následovaly další rozšiřující verze, přidávající např. analýzu striktnosti stejně jako jazyková rozšíření, jako monadický I/O, proměnlivá pole, unboxed datové typy a výkonovou analýzu. Peyton Jones a Simon Marlow později přešli ke společnosti Microsoft Research v Cambridge v Anglii, kde byli hlavními osobami zodpovědnými za vývoj GHC. GHC také obsahovalo programový kód od dalších šedesáti programátorů, kteří se spolupodíleli na jeho vývoji.

Architektura

GHC je napsáno v Haskellu (technikou bootstrapingu, samozavádění), ale runtime systém Haskellu, základní prvek kompilátoru,[kdo?] je napsán v programovacím jazyce C a zprostředkovaném jazyce C--. Většina kódu GHC je napsána pomocí dokumentovaného programování.

Front end GHC zahrnující lexikální analýzu, syntaktickou analýzu a kontrolu datových typů je navržen pro zachování co nejvyššího množství informace o zdrojovém kódu až do dokončení procesu typového odvozování s důrazem na poskytování jasných výpisů chybových stavů uživateli. V poslední fázi front endu se provádí odstranění syntaktickýho cukru, který Haskell převede do typovaného mezilehlého jazyka (mezikódu ?) známého jako "Core" (jádro) (založeného na systému F, rozšířeného o výrazy let and case. Časem se jádro rozšířilo o podporu obecných algebraických datových typů (GADT), je postaveno na rozšíření systému F a stává se z něj systém nazvaný System FC.

Podle zvyklosti z tradiční typově orientované kompilace se následně spouští zjednodušovač kódu GHC, neboli "middle end", který provádí většinu optimalizací implementovaných v GHC. Ty jsou strukturovány jako posloupnost úprav aplikovaných na zdrojový kód při úpravách jádra. Analýza a úpravy spouštěné v této fázi zahrnují požadavkovou analýzu (zobecněnou analýzu striktnosti), aplikaci uživatelsky definovaných pravidel rewrite rules (což zahrnuje soubor pravidel včetně standardních knihoven GHC, které vykonávají foldr/build fusion), unfolding (rozbalování – zahrnuje v tradičních překladačích tzv. "inlining"), let-floating – analýzu, jež rozhoduje, které funkční argumenty mohou být rozbaleny, analýza CPR, specializace přetížených funkcí, stejně jako soubor jednodušších místních úprav jako jsou constant folding a beta redukce.

Závěrečná úroveň sestává ze zjednodušovacích úprav jádra do STG (Spineless Tagless G-machine) (nižšího zprostředkovaného jazyka). Stejně jako jádro je i samo STG funkcionálním jazykem. STG je ekvivalentem teoretického modelu počítače (stejně jako například Turingův stroj či model RAM). Back end GHC provádí úpravy STG před překladem do C, C-- nebo strojového kódu.

Jazyk

GHC pracuje podle posledního standardu jazyka nazvaného Haskell 2010. Podporuje také mnoho volitelných rozšíření, jako jsou například: knihovna STM, která umožňuje kontrolovat zápisy do sdílené paměti a další.

Přenositelnost

V současné době je několik verzí GHC dostupných pro různé platformy, včetně Windows a většiny variací Unixu (jako jsou různé distribuce Linuxu nebo Mac OS X). GHC byl také portován na několik různých procesorových architektur.

Reference

V tomto článku byl použit překlad textu z článku Glasgow Haskell Compiler na anglické Wikipedii.

Externí odkazy

Read other articles:

Artikel ini sebatang kara, artinya tidak ada artikel lain yang memiliki pranala balik ke halaman ini.Bantulah menambah pranala ke artikel ini dari artikel yang berhubungan atau coba peralatan pencari pranala.Tag ini diberikan pada November 2022. Ela DarlingEla Darling pada tahun 2019Lahir(1986-06-23)23 Juni 1986TexasKebangsaanAmerikaPekerjaanpustakawan, aktor film porno, pengusahaDikenal ataspengusaha realitas virtual Ela Darling (lahir 23 Juni 1986) adalah seorang pemeran pornografi sekalgus...

 

Evergreen Marine Corporation長榮海運Peti kemas 40 kaki milik EvergreenJenisPublikKode emitenTWSE: 2603LSE: EGMDIndustriTransportasiDidirikan1968; 56 tahun lalu (1968)KantorpusatDistrik Luzhu, Taoyuan, TaiwanWilayah operasiSeluruh duniaTokohkunciChang, Cheng-Yung (Chairman)[1][2]ProdukPengapalanKargoDistribusi kargoPendapatanNTD 124,467 milyar (2016)[3] $4,266 milyar (2018)[4] £3,038 milyar (2018)[4]PemilikEvergreen GroupKaryawan3.389 (2007) Ev...

 

العلاقات الفنزويلية الكيريباتية فنزويلا كيريباتي   فنزويلا   كيريباتي تعديل مصدري - تعديل   العلاقات الفنزويلية الكيريباتية هي العلاقات الثنائية التي تجمع بين فنزويلا وكيريباتي.[1][2][3][4][5] مقارنة بين البلدين هذه مقارنة عامة ومرجعية للدول�...

For the San Angelo, Texas, United States airport, see Mathis Field. Radio station in San Angelo, TexasKSJT-FMKSJT StudiosSan Angelo, TexasBroadcast areaSan AngeloFrequency107.5 MHzBrandingLa Grande 107.5ProgrammingLanguage(s)SpanishFormatSpanish musicOwnershipOwnerLa Unica Broadcasting Co.Sister stationsKPTJHistoryCall sign meaningK, SJT- aeronautical call signTechnical informationFacility ID36186ClassC1ERP100,000 wattsHAAT184.0 meters (603.7 ft)Transmitter coordinates31°26′19.00″N ...

 

Bursa KomediBerkas:Bursa Komedi.pngLogo Bursa KomediGenreSketsa komediCerita seruAksiJailKonyolParodiKeluargaSutradaraRichard BuntarioPengarah kreatifRichard Buntario dan Rizal MantovaniPemeranHarry De Pretes Pierre Gruno Krisna Purwana Edwin Kelik Pelipur Lara Sony Wicaksono Angel Ibrahim BaimNegara asalIndonesiaBahasa asliBahasa IndonesiaJmlh. musimbelum diketahuiJmlh. episodebelum diketahuiProduksiProduser eksekutifbelum diketahuiProduserRichard BuntarioLokasi produksiJakartaPenyuntingbel...

 

American breed of goose American BuffConservation statusFAO (2007), USA: not listed[1]: 128 FAO (2007), UK: critical[1]: 124 Livestock Conservancy (2022): watch[2]DAD-IS (2023), USA: not listedDAD-IS (2023), UK: unknown[3]Other namesAmerican Buff GooseCountry of originUnited StatesDistributionUnited StatesUnited KingdomUsemeat, fancyTraitsWeightMale: USA: 8 kg (18 lb)UK: 10–13 kg (22–28 lb)Female: USA: 7&#...

Astronomical diagram graphing two colour indices A color–color diagram is a means of comparing the colors of an astronomical object at different wavelengths. Astronomers typically observe at narrow bands around certain wavelengths, and objects observed will have different brightnesses in each band. The difference in brightness between two bands is referred to as color. On color–color diagrams, the color defined by two wavelength bands is plotted on the horizontal axis, and the color defin...

 

Invasion of the Philippines by Japan during World War II For the Allied campaign against the Japanese in the Philippines of 1944–1945, see Philippines campaign (1944–1945). Battle of the PhilippinesPart of the Pacific Theater of World War IIA burial detail of American and Filipino prisoners of war uses improvised litters to carry fallen comrades at Camp O'Donnell, Capas, Tarlac, 1942, following the Bataan Death March.DateDecember 8, 1941 – May 8, 1942LocationCommonwealth of the Philippi...

 

Australian entertainment company Original members of The Wiggles, 2004. Left to right: Greg Page, Jeff Fatt, Murray Cook, and Anthony Field The Wiggles Pty Ltd is the business created by the founders of the Australian children's music group The Wiggles. The group was protective of their brand, and adopted many of the same business practices as The Cockroaches, the former band of Anthony Field and Jeff Fatt, two of their founding members. They remained as independent as possible, and retained ...

Tonthoingambi Leishangthem, yang dikenal sebagai Tonthoi, adalah seorang aktris film India. Dia telah membangun karier di film Manipur dan merupakan penerima beberapa penghargaan, termasuk Penghargaan Film Nasional. Sejak kecil, Tonthoi adalah orang yang berperilaku baik, disiplin, berdedikasi dan pekerja keras. Kerja keras dan dedikasinya terbayar ketika ia menerima Penghargaan Aktris Terbaik Tahun Ini dari FAM pada 2012. Dia adalah penduduk asli Chingkhu, Khundrakpam, Manipur, India. Ia ad...

 

Barrier island in Ocean County, New Jersey, US This article is about the island in New Jersey. For the island in New York, see Long Beach Barrier Island. 39°38′23″N 74°10′54″W / 39.639835°N 74.181619°W / 39.639835; -74.181619 Holgate Beach, part of the Edwin B. Forsythe National Wildlife Refuge, managed by the U.S. Fish and Wildlife Service, is situated at the southern tip of Long Beach Island, within Long Beach Township, Ocean County, New Jersey, U.S., on ...

 

City council; lawmaking body of the City of Columbus, Ohio Columbus City CouncilTypeTypeUnicameral LeadershipPresidentShannon Hardin, Democratic since January 2018[1] President pro temRob Dorans, Democratic since January 2023 StructureSeats7ElectionsVoting systemAt-largeLast electionNovember 7, 2023Next electionNovember 11, 2025Meeting placeCity Hall, Columbus, OhioWebsitecolumbus.gov/council The Columbus City Council is the lawmaking body of Columbus, Ohio. It has 7 members w...

Canadian peace activist For other uses, see Russow. This biography of a living person needs additional citations for verification. Please help by adding reliable sources. Contentious material about living persons that is unsourced or poorly sourced must be removed immediately from the article and its talk page, especially if potentially libelous.Find sources: Joan Russow – news · newspapers · books · scholar · JSTOR (September 2016) (Learn how and when...

 

Aviator, thrice Hero of the Soviet Union Ivan KozhedubKozhedub in 1949Native nameІван Микитович КожедубNickname(s)Батя (Dad), Борода (Beard)Born8 June 1920Obrazhiivka, Chernigov Governorate, Ukrainian SSR[1]Died8 August 1991(1991-08-08) (aged 71)Moscow, Russian SFSR, Soviet UnionAllegiance Soviet UnionService/branch Soviet Air ForceYears of service1940–1985RankMarshal of AviationBattles/warsWorld War II Battle of Kursk Korean WarAwardsHer...

 

Village near Longford town, Ireland This article may require cleanup to meet Wikipedia's quality standards. The specific problem is: Excessive replication of content from other sources. Excessive links of loosely related sources. Please help improve this article if you can. (April 2013) (Learn how and when to remove this message) Village in Leinster, IrelandMoydow Maigh DumhaVillageMoydow (Castlerea) CastleMoydowLocation in IrelandCoordinates: 53°39′50″N 7°47′17″W / ...

SMP Negeri 1 Ngawen, KlatenInformasiJenisNegeriJumlah kelasKelas VII sampai kelas IXAlamatLokasiJl. Karanganom Mayungan Ngawen Klaten, Klaten, Jawa Tengah, IndonesiaTel./Faks.(0272) 330207Moto SMP Negeri 1 Ngawen, Klaten adalah salah satu Sekolah Menengah Pertama yang berada di Desa Mayungan, Kecamatan Ngawen, Kabupaten Klaten, Jawa Tengah. Sejarah pada awalnya bernama SMP Negeri 1 Ketandan karena berada di Kecamatan Ketandan, Klaten, seiring perubahan nama SMP menjadi SLTP, berubah menj...

 

أبو قير للصناعات الهندسية مصنع 10 الحربيالشعارمعلومات عامةالبلد  مصرالتأسيس 1952 (منذ 72 سنة)النوع شركة مساهمة حكوميةالمقر الرئيسي أبو قير، الإسكندريةموقع الويب fact10.mompالمنظومة الاقتصاديةالشركة الأم الهيئة القومية للإنتاج الحربيالنشاطات صناعات مدنية وعسكريةمناطق الخدم�...

 

Brand of lightweight minimalist footwear Feel the World Inc.Trade nameXero ShoesCompany typePrivate companyIndustryFootwearFoundedNovember 23, 2009 (2009-11-23) in Boulder, Colorado, U.S.[1][2]FounderSteven Sashen and Lena PhoenixHeadquartersBroomfield, CO, United StatesKey peopleSteven Sashen (CEO)Lena Phoenix (president and board chairwoman)Dennis Driscoll (chief product officer)[2]ProductsXero ShoesRevenue $33.6 million (2021)$23.0 million (2020)Websi...

عبد الحميد بن عبد الله الآلوسي معلومات شخصية الميلاد سنة 1817   بغداد  الوفاة 23 يوليو 1906 (88–89 سنة)  بغداد  مكان الدفن مقبرة الشيخ معروف  مواطنة الدولة العثمانية  الديانة الإسلام[1]  مشكلة صحية عمى[1]  إخوة وأخوات أبو الثناء الآلوسي  عائلة الآلوس...

 

City in Chūbu, JapanMakinohara 牧之原市CityTea plantations in Makinohara FlagSealLocation of Makinohara in Shizuoka PrefectureMakinohara Coordinates: 34°44′N 138°13′E / 34.733°N 138.217°E / 34.733; 138.217CountryJapanRegionChūbu (Tōkai)PrefectureShizuokaFirst official recorded6 BCSagara Town settledApril 1, 1889Haibara Town settledApril 1, 1955Both town merged and city settledOctober 11, 2005Government • MayorKikuo Sugimoto (from October...