io | |
---|---|
Språkklass | objektorienterad , prototypisk |
Framträdde i | 2002 |
Författare | Steve Decorte |
Utvecklaren | Steve Decorte, Jonathan Wright, Jeremy Tregunna |
Filtillägg _ | .io |
Släpp | 2017.09.06 (11 augusti 2017 ) |
Testversion | 2019.05.22-alpha (22 september 2018 ) |
Typ system | dynamisk |
Stora implementeringar | Io, Io.Net |
Blivit påverkad | Smalltalk , NewtonScript , Self , Lua , Lisp , Act1 |
påverkas | Ioke , Begränsad Io |
Licens | modifierad BSD-licens [d] |
Hemsida | iolanguage.org |
Io ( första bokstaven är ett stort "i" ) är ett skriptbaserat , rent objektorienterat programmeringsspråk med dynamisk typning . Språket utvecklades av Steve Dekorte 2002 [ 1 ] . Implementeringen är plattformsoberoende , öppen källkod ( BSD-licens ) och designad för att vara lätt att bädda in som ett skriptspråk.
Till skillnad från Perl , PHP , Python och Ruby har en klass i Io ingen grundläggande skillnad från ett objekt, den är ett förstklassigt objekt i språket. Arv implementeras av prototyper , som i Self , Lua och JavaScript . Flera arv stöds.
Till exempel av objekt, klasser och namnutrymmen i Io används alltså prototyper. Meddelanden används för satser , metodanrop , tilldelning och variabel åtkomst.
Följande kod skriver ut "Hello world!" till konsolen. genom att skicka ett println-meddelande till strängen:
"Hej världen!" printlnImplementering av designmönstret " ensamstående " :
Singleton := Objektklon // Objekt skapas (":=") genom att klona befintliga objekt Singleton clone = Singleton //Klonplatsvärdet ersätts ("=") med en referens till själva objektetProgrammeringsspråk | |
---|---|
|
Objektorienterade språk | |
---|---|
Sammanställt | |
Skript |
|
Båda föreställningarna |