Olioita voidaan myös määritellä ilman luokkia, välittöminä objekteina immediate objects. Présentation générale Caml Light est une implémentation légère et portable du noyau du langage Caml qui date du début des années et qui a servi de précurseur à OCaml. Nous recommandons de passer immédiatement à son successeur, OCaml. Esi-isä-luokan metodeita voidaan kuitenkin sitoa vaihtoehtoisiin metodinimiin käyttäen avainsanaa super. OCaml on funktionaalinen ohjelmointikieli — se tukee funktioita matemaattisen määritelmän mukaisesti täysin. Le système OCaml est une implémentation de qualité industrielle de ce langage, comprenant un compilateur produisant du code natif de haute performance ocamlopt pour 9 architectures de microprocesseurs IA32, PowerPC, AMD64, Alpha, Sparc, Mips, IA64, HPAA, StrongArm , un compilateur code-octet ocamlc et une boucle d’interaction ocaml pour la rapidilité du développement et la portabilité. Tyyppien päättely mahdollistaa polymorfisuuden funktioille.

Nom: caml inria
Format: Fichier D’archive
Système d’exploitation: Windows, Mac, Android, iOS
Licence: Usage Personnel Seulement
Taille: 15.12 MBytes

OCamlin moduulijärjestelmän avulla voi myös määritellä funktoreita. OCaml tukee ohjelmien poikkeustilaa ja niiden käsittelyä. Pour les informations les plus récentes, rendez-vous sur le nouveau site OCaml à l’adresse ocaml. OCaml nimitys otettiin käyttöön vuonna Nous recommandons de passer immédiatement à son successeur, OCaml. Nous recommandons de passer immédiatement à son successeur, OCaml. Tässä mielessä OCamlin oliomalli noudattaa klassista olio-ohjelmointi-mallia.

Objective Caml on funktionaalinen olio-ohjelmointikieli. OCaml on laajennettu versio Caml -kielestä ja on sen pääasiallinen implementaatio. OCamlin ensiversio julkaistiin vuonna Objective Caml -nimisenä, kun Caml special light -kieleen yhdistettiin tyypitetty olio- ja luokkamalli.

OCaml nimitys otettiin käyttöön vuonna OCaml sisältää täysiverisen olio-mallin, vahvan moduulijärjestelmän sekä polymorfisen tyyppijärjestelmän tyypinpäättelyllä. OCaml System sisältää teollisuustasoisen toteutuksen, natiivikääntäjät yhdeksälle eri prosessoriarkkitehtuurilletavukoodikääntäjänsekä komentorivitulkin read-eval-loop.

OCamlin jakelu sisältää laajan standardikirjastondebuggerinlekseri – ja parseri -generaattorit sekä koodin tulostamiseen ja dokumentointiin tarvittavat osat. OCaml on kypsä ML-sukuinen funktionaalinen olio-ohjelmointikieli. Se on kirjoitettu OCamlilla itsellään lukuun ottamatta joitakin C-kielellä kirjoitettuja ajonaikaisia osia.

OCaml perii paljon vuosikymmenien funktionaalisten kieliin, kielentutkimukseen ja tyyppiteoriaan liittyvästä akateemisesta tutkimustyöstä.

OCamlia käytetään sekä opetuskielenä, että teollisuudessa. OCaml on staattisesti tyypitetty kieli. Vahvasti tyypitettynä kielenä se estää muistinhallintavirheitä tehokkaasti.

Le langage Caml: Accueil

Tästä seuraten OCaml syntaksi on hälytönsen kääntäjä poimii virheet tehokkaasti, ja tuloksena syntyvä koodi on nopeaa — OCaml on tehokas kieli. Sen ytimekäs syntaksi ilmaisee lambda-kalkyylia kolmella tavalla: Ocamlissa yksittäinen lauseke on muodoltaan Caml- fraasi.

  TÉLÉCHARGER FORMULAIRE PERMIS DE CONSTRUIRE MODIFICATIF GRATUIT

caml inria

Fraasit ovat joko ilmaisuja tai tunnistimien let -määritelmiä. Komentotulkkia käytettäessä ne päättyvät ‘;;’ merkkeihin, jotka eivät ole välttämättömiä kieltä käännettäessä. Kullekin fraasille lasketaan kääntäjässä arvo ja tyyppi, eikä tyyppiä tarvitse erikseen määritellä. Tyyppien päättely mahdollistaa polymorfisuuden funktioille. OCamlin tyyppijärjestelmästä löytyvät tyypit totuusarvo booleankokonaislukuliukulukumerkki ja merkkijono.

Ennaltamääritellyt tietorakenteet ovat monikko tupletaulukko array ja lista list. Useimmat OCamlin tietorakenteet ovat muuttumattomia, mutta taulukko on muuttuva – sen kokoa voi muuttaa sen määrittelemisen jälkeenkin.

OCamlissa ei ole muuttujan käsitettä. OCaml Standard library -kirjasto sisältää viitteet referencesyhden alkion knria joita let illä tunnistimiin sitomalla voi viitata vaihteleviin arvoihin. Käyttäjän määrittelemät tietorakenteet ovat taltiot records ja variantit variants. Taltiot kuvaavat tietorakenteen osaset ja niiden tyypit.

Le Consortium Caml à l’Inria

Variantit taasen luettelevat kaikki mahdolliset tyypit määrittelemälleen tietorakenteelle: OCaml on funktionaalinen ohjelmointikieli — se tukee funktioita matemaattisen määritelmän mukaisesti täysin. Tästä seuraten funktioita voi vapaasti antaa parametreinä ja käyttää kuten muitakin tietotyyppejä. OCaml tukee myös korkeamman asteen funktioita higher order functionseli funktioita joihin annetaan toisia funktioita argumentteinä.

Rekursio ilmaistaan käyttäen rec -sanaa. Rekursion käyttö on rajoitettu funktioihin, koska sen todistus ei ole eheä mielivaltaisille ilmaisuille. OCamlin imperatiivisiin ominaisuuksiin kuuluvat for ja while -silmukat, sekä muuntuvat tietorakenteet kuten taulukot array. Myös taltiot voivat olla muuntuvia, jos ne määritellään käyttämällä avainsanaa mutable.

OCaml tukee ohjelmien poikkeustilaa ja niiden käsittelyä. Poikkeuskäsittely määritellään exception avainsanalla. OCamlin muistinhallinta on täysin automaattinen – kääntäjä osaa käyttää osoittimia pointers ja ajaa roskienkeräyksen tarvittaessa. OCaml käyttää moduuleita johdonmukaisen rakenteen ja yhtenäisen nimikäytännön aikaansaamiseksi. OCamlissa tällaisia rakenteita structure määritellään lauseella struct Rakenteelle annetaan yleensä myös nimi sitomalla se tunnistimeen module -avainsanalla.

Näin estetään nimien loppuminen ja törmäily nimiavaruudessa. Moduulijärjestelmä mahdollistaa myös tyyppiabstraktion abstract types. Määritellyn tietorakenteen osien näkyvyyttä voi määritellä kuvaajalla sic signaturejoka määritellään avainsanoilla sig OCamlin moduulijärjestelmän avulla voi myös määritellä funktoreita.

Funktorit ovat yksinkertaisesti yhden rakenteen avulla parametrisoituja rakenteita; rakenne A joka määritellään rakenteen B: Myös funktoreihin voi soveltaa kuvaajaa signature. OCamlin moduuliominaisuudet mahdollistavat myös monista moduuleista koostuvan ohjelman osien kääntämisen eri aikaan. OCamlin oliomalli on omintakeinen. OCamlin luokat class määrittelevät olioita object käyttäen periytyvyyttä ja metodeita. Olioiden tyypitys on tavallinen, ja niillä voi lisäksi olla alatyyppejä.

  TÉLÉCHARGER BD BLEK LE ROC GRATUIT

Oliot eivät tunne periytymistä. Oliot luodaan yleensä luokista, käyttäen new -avainsanaa. Oliot voidaan myös luoda kloonaamalla metodilla Oo. Olioita voidaan myös määritellä ilman luokkia, välittöminä objekteina immediate objects.

Tällöin oliota kuvaus object Olioiden sisältämät, niiden luokissa määritellyt tietorakenteet ovat saatavilla vain olioiden metodien kautta enkapsulaatio. OCaml ei tunne luokkamuuttujia, eli kullakin oliolla on omat yksittäiset tietorakennejoukkonsa.

Tässä mielessä OCamlin oliomalli noudattaa klassista olio-ohjelmointi-mallia. Luokat ovat OCamlissa yleisen olio-ohjelmointi-paradigman mukaisesti määritelmiä olioiden rakentamista varten. OCaml -luokilla on oma, tavallisista tyypeistä poikkeava tyyppijärjestelmänsä, ja luokat voivat periytyä toisista luokista.

Luokat määritellään OCamlissa sitomalla luokka ja sen nimi oliorakenteeseen class NN object Luokkia voidaan periyttää toisista luokista lisäämällä object Luokkien metodimääritelmät ovat varjostavia, eli jälkeläisen metodi korvaa vanhemmalta perityn acml.

Tätä kutsutaan OCamlissa nimellä late binding. Esi-isä-luokan metodeita voidaan kuitenkin sitoa vaihtoehtoisiin metodinimiin käyttäen avainsanaa super. OCaml luokat tukevat niistä olioita luotaessa kutsuttavia alustusmetodeita. Alustusmetodit ovat avainsanalla initializer määriteltäviä anonyymejä metodeita, joita ei voi varjostaa tai uudelleenmääritellä. Periytetyissä luokissa alustusmetodit ajetaan määrittelyjärjestyksessä. OCaml-luokkien metodit voivat olla yksityisiä, jolloin ne eivät näy olion ulkopuolella, ja niitä voidaan kutsua vain toisista saman olion metodeista.

Yksityiset metodit määritellään ilmaisulla method private. OCaml luokat voivat myös olla virtuaalisia; luokkia joissa määritellään virtuaalisia, sisällöttömiä metodeita ja instanssimuuttujia virtual. Virtuaalisien luokkien virtuaaliset metodit ja muuttujat täytyy määritellä aliluokassa ennen kuin niistä voidaan instantioida olioita. Virtuaaliset metodit voivat olla yksityisiä, syntaksissa tämä tapaus ilmaistaan method private virtual.

Consortium

Standalone Caml programs, The OCaml system release 3. Oliopohjaiset ohjelmointikielet Vapaat ohjelmistot.

caml inria

Small-elementtiä käyttämättömät tarkenteelliset tietolaatikot. Näkymät Lue Muokkaa Muokkaa wikitekstiä Näytä historia. Muissa hankkeissa Wikimedia Commons. Sivua on viimeksi muutettu 5.