Karel

Disambiguazione – Se stai cercando altri significati, vedi Karel (disambigua).
Karel the Robot
linguaggio di programmazione
Niki the robot
AutoreRichard E. Pattis
Data di origine1981
Utilizzodidattica
ParadigmiProgrammazione orientata agli oggetti
Influenzato daPascal
Ha influenzatoKarel++, Alcune varianti regionali
Implementazione di riferimento
Sito webxkarel.sourceforge.net/

Karel è un linguaggio di programmazione concepito per rispondere a esigenze didattiche ed educative, quale strumento introduttivo alla programmazione rivolto a principianti.

Il linguaggio è stato creato nel 1981 da Richard E. Pattis che ne definì le caratteristiche nel suo libro Karel The Robot: A Gentle Introduction to the Art of Programming e ne fece uso nei suoi corsi introduttivi alla Stanford University. Prende il nome da Karel Čapek, lo scrittore ceco che introdusse il termine robot.

Principi basilari

Un programma in Karel è usato per controllare il comportamento di un semplice automa, visualizzato sullo schermo come un piccolo robot di nome Karel. Il robot si muove e agisce in un ambiente che consiste in una semplice griglia di street (strade), orientate orizzontalmente, e avenue (viali), con orientazione verticale.

Karel obbedisce a 5 istruzioni base:

  • move (Karel si sposta di un quadratino lungo la direzione e il verso in cui è orientato);
  • turnleft (Karel ruota il suo orientamento di 90 ° a sinistra)
  • putbeeper (Karel deposita un beeper (cicalino) sul quadrato su cui si trova)
  • pickbeeper (Karel toglie un beeper dal quadrato in cui si trova)
  • turnoff (Karel si spegne e il programma termina).

Karel può anche eseguire test booleani sull'ambiente circostante, restituendo informazioni come la presenza di un beeper nella posizione attualmente occupata, la presenza di ostacoli nelle vicinanze, la direzione verso la quale il robot è rivolto in quel momento. Il programmatore può creare istruzioni addizionali definendole in termini delle cinque istruzioni di base, usando istruzioni per il controllo del flusso if e while in combinazione con interrogazioni sull'ambiente e usando il costrutto iterate.

Esempio

Quello che segue è un esempio della sintassi di Karel in un semplice programma completo (il simbolo ";" marca il termine dell'istruzione, e può essere omesso quando l'istruzione è seguita da un END. Le maiuscole non sono necessarie: la compilazione è case insensitive). All'inizio del codice vi è la definizione di una subroutine turnright, ottenuta dall'iterazione del comando bas turnleft. La subroutine è utilizzata poi nel corpo del programma, delimitato da BEGINNING-OF-EXECUTION/END-OF-EXECUTION:

BEGINNING-OF-PROGRAM
 
 DEFINE turnright AS
 BEGIN
   turnleft;
   turnleft;
   turnleft
 END
 
 BEGINNING-OF-EXECUTION
   ITERATE 3 TIMES
     turnright;
     move;
     turnoff
 END-OF-EXECUTION
 
END-OF-PROGRAM

Varianti e discendenti

Il linguaggio ha ispirato la creazione e lo sviluppo di vari cloni o di linguaggi affini, sempre per scopi educativi. Poiché il linguaggio è destinato a principianti, ne esistono varianti locali in alcuni idiomi, tra cui la lingua ceca (Karel ha goduto di una certa popolarità in Cecoslovacchia). La versione slovacca, chiamata Robot Karol++, contiene ulteriori miglioramenti ed è stato a sua volta tradotto in inglese, tedesco e ceco.

Versioni orientate agli oggetti

I principi base di Karel sono stati aggiornati al paradigma della programmazione orientata agli oggetti in un nuovo linguaggio chiamato Karel++. Da un punto di vista concettuale, Karel++ si fonda su Karel, ma usa una sintassi completamente nuova, simile a quella di Java.

rbKarel

rbKarel è una implementazione di Karel in REALbasic[1]: rbKarel offre i comandi basilari di Karel in un ambiente RBScript con uso della sintassi BASIC per cicli e condizionali. Questo progetto didattico fornice una interfaccia grafica utente multipiattaforma per esperimenti Karel tra cui single-stepping e emissione vocale.

Robot Emil

Nel 2008 è apparso Educational program Robot Emil una variante in 3D di Robot Karel. Robot Emil agisce in una stanza con tre dimensioni, mostrata attraverso una veduta di tipo fotocamera, così che si aggiungono interessanti caratteristiche, come la possibilità di guardare la scena da diverse angolazioni e distanze, è possibile ruotare la prospettiva, guardare l'attività del robot nei dettagli, ecc. Il Robot può posizionare mattoni di forma e colori a scelta, dipingere le pareti e il pavimento con colori a mosaico, creare porte e tunnel attraverso i muri costruiti con i mattoni, può aprire finestre (usando mattoni trasparenti), può costruire il soffitto (usando mattoni a forma di tetto), erba, sentieri, laghetti (dipingendo le mattonelle. Questa implementazione mette a disposizione un'ampia scelta di mezzi per stimolare la creatività infantile, agevolando il loro pensiero algoritmico e l'immaginazione spaziale, insegnandogli al contempo le basi della programmazione.

La versione originale è in slovacco, ma dal 2009 ne esistono versioni in ceco e in inglese.

FANUC Karel

Nonostante l'omonimia, FANUC Karel non ha alcuna relazione con Karel: si tratta, in questo caso, di un linguaggio proprietario nato in ambito industriale. Il linguaggio non deriva da Karel ma direttamente dal Pascal, ed è dedicato alla programmazione dei robot commerciali prodotti dalla FANUC Robotics.

Note

Bibliografia

  • Richard E. Pattis, Karel The Robot: A Gentle Introduction to the Art of Programming. John Wiley & Sons, 1981 ISBN 0-471-59725-2
  • Joseph Bergin, Mark Stehlik, Jim Roberts, Richard E. Pattis, Karel++: A Gentle Introduction to the Art of Object-Oriented Programming, John Wiley & Sons, 1996 ISBN 0-471-13809-6

Voci correlate

Altri progetti

Collegamenti esterni

Read other articles:

يفتقر محتوى هذه المقالة إلى الاستشهاد بمصادر. فضلاً، ساهم في تطوير هذه المقالة من خلال إضافة مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. (يوليو 2019) منتخب بليز لكرة القدم الشاطئية معلومات عامة رمز الفيفا BLZ  الاتحاد اتحاد بليز لكرة القدم كونفدرالية كون...

 

Untuk bahasa yang disebut secara endonim sebagai Nepal Bhasa, lihat Bahasa Newar. Cari artikel bahasa  Cari berdasarkan kode ISO 639 (Uji coba)  Kolom pencarian ini hanya didukung oleh beberapa antarmuka Halaman bahasa acak Bahasa Nepal नेपाली Nepālī Dituturkan diNepal, India, BhutanWilayahAsia SelatanPenutur16 juta jiwa (2011)[1] Rincian data penutur Jumlah penutur beserta (jika ada) metode pengambilan, jenis, tanggal, dan tempat.[2] 15.800.0...

 

American natural and organic foods supermarket chain and subsidiary of Amazon Whole Foods redirects here. For the type of food, see Whole food. For the food cooperative, see Whole Foods Co-op. Whole Foods Market, Inc.Kale Green logo used since Amazon's acquisition in 2017Headquarters in Downtown AustinCompany typeSubsidiaryIndustry Grocery store Health food store FoundedSeptember 20, 1978; 45 years ago (1978-09-20)FoundersJohn Mackey, Renee Hardy-Lawson, Mark Skiles, Craig W...

Unincorporated community in West Virginia, United StatesKings Creek, West VirginiaUnincorporated communityKings CreekShow map of West VirginiaKings CreekShow map of the United StatesCoordinates: 40°26′53″N 80°35′46″W / 40.44806°N 80.59611°W / 40.44806; -80.59611CountryUnited StatesStateWest VirginiaCountyHancockTime zoneUTC-5 (Eastern (EST)) • Summer (DST)UTC-4 (EDT) Kings Creek is an unincorporated community in Hancock County, West Virginia, U...

 

1924 film Loving LiesFilm posterDirected byW. S. Van DykeWritten byThompson BuchananBased onThe Harbor Barby Peter B. KyneStarringEvelyn BrentProductioncompanyAssociated AuthorsDistributed byAllied Producers & Distributors CorporationRelease date January 22, 1924 (1924-01-22) Running time7 reelsCountryUnited StatesLanguageSilent (English intertitles) Loving Lies is a 1924 silent American silent drama film directed by W. S. Van Dyke and starring Evelyn Brent and Monte Blue.&...

 

Rebung Setunas rebung. Nama Tionghoa Hanzi tradisional: 竹筍 Hanzi sederhana: 竹笋 Alih aksara Mandarin - Hanyu Pinyin: zhú sǔn Yue (Kantonis) - Jyutping: zuk1 seon2 Nama Jepang Kanji: 竹の子 or 筍 Kana: タケノコ Alih aksara - Romaji: takenoko Nama Korea Hangul: 죽순, 대나무싹 Alih aksara - Romanisasi: juk sun, daenamu ssak Nama Nepali Nepali: तामा (Tama) Rebung adalah tunas atau anakan yang masih muda yang tumbuh dari akar bambu. Penduduk Indonesia maupun Asia um...

Sergio Rico Rico con la maglia del Siviglia nel 2017 Nazionalità  Spagna Altezza 194 cm Peso 90 kg Calcio Ruolo Portiere Squadra  Paris Saint-Germain Carriera Giovanili 2006-2011 Siviglia Squadre di club1 2011-2014 Siviglia Atlético36 (-60)2014-2018 Siviglia114 (-150)2018-2019→  Fulham29 (-56)2019-2022 Paris Saint-Germain13 (-14)2022→  Maiorca14 (-29)2022- Paris Saint-Germain0 (0) Nazionale 2016 Spagna1 (-1) 1 I due numeri indicano le presen...

 

متلازمة غودباستشر صورة مجهرية من التهاب كبيبات الكلى الهلالي الذي تبين أن المرض مكافحة غشاء الكبيبي الطابق السفليصورة مجهرية من التهاب كبيبات الكلى الهلالي الذي تبين أن المرض مكافحة غشاء الكبيبي الطابق السفلي معلومات عامة الاختصاص طب الكلى،  وطب الرئة،  وعلم المنا�...

 

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Houston Rockets accomplishments and records – news · newspapers · books · scholar · JSTOR (February 2018) (Learn how and when to remove this message) The Rockets moved into the Toyota Center at the start of the 2003–2004 season The Houston Rockets are an Ame...

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Habiganj District – news · newspapers · books · scholar · JSTOR (September 2015) (Learn how and when to remove this message) District of Bangladesh in Sylhet DivisionHabiganj হবিগঞ্জDistrict of BangladeshClockwise from top-left: Uchail Mosque, Bit...

 

US-based golf tour for men 50 and older This article is about the senior golf tour. It is not to be confused with the PGA's Tour Championship tournament or the ATP Champions Tour in tennis. PGA Tour ChampionsCurrent season, competition or edition: 2024 PGA Tour Champions seasonFormerlySenior PGA Tour (1980–2002)Champions Tour (2003–2015)SportGolfFounded1980FounderPGA TourFirst season1980CountryBased in the United States[a]Most titlesMoney list titles: Bernhard Langer (11)Tournamen...

 

Western Star TrucksJenisanak perusahaanIndustriotomotifDidirikan1967PendiriWhite Motor CompanyKantorpusatPortland, Oregon, Amerika SerikatTokohkunciRoger Nielson (President, CEO)Dave Carson (President)ProdukTrukIndukDaimler Truck North AmericaAnakusahaERF (1996–2000)Situs webwesternstarstrucks.com Western Star Trucks Sales, Inc. adalah produsen truk Amerika yang berkantor pusat di Portland, Oregon, dan anak perusahaan dari Daimler Truck North America, yang pada gilirannya merupakan anak per...

American Moving & Storage AssociationMerged intoAmerican Trucking AssociationsSuccessorMoving and Storage ConferenceFormation1920 (precursor)Defunct2020Typetrade associationHeadquartersAlexandria, VirginiaLocationUnited StatesMembership 4,000The American Moving & Storage Association (AMSA) was the non-profit trade association representing members of the professional moving industry based primarily in the United States. Its approximately 4,000 members consisted of van lines, their...

 

2020年夏季奥林匹克运动会波兰代表團波兰国旗IOC編碼POLNOC波蘭奧林匹克委員會網站olimpijski.pl(英文)(波兰文)2020年夏季奥林匹克运动会(東京)2021年7月23日至8月8日(受2019冠状病毒病疫情影响推迟,但仍保留原定名称)運動員206參賽項目24个大项旗手开幕式:帕维尔·科热尼奥夫斯基(游泳)和马娅·沃什乔夫斯卡(自行车)[1]闭幕式:卡罗利娜·纳亚(皮划艇)&#...

 

Військово-музичне управління Збройних сил України Тип військове формуванняЗасновано 1992Країна  Україна Емблема управління Військово-музичне управління Збройних сил України — структурний підрозділ Генерального штабу Збройних сил України призначений для планува...

Spanish politician (born 1952) For other people named Juan Sánchez, see Juan Sánchez (disambiguation). In this Spanish name, the first or paternal surname is Sánchez and the second or maternal family name is Gordillo. Juan Manuel Sánchez GordilloMayor of MarinaledaIn office6 May 1979 – 17 June 2023Deputy of the Parliament of Andalusiafor SevilleIn office8 July 1994 – 12 March 2000In office13 April 2008 – 26 November 2014 Personal detailsBorn (1952-...

 

Sporting event delegationPanama at the1996 Summer OlympicsIOC codePANNOCComité Olímpico de PanamáWebsitewww.copanama.com (in Spanish)in AtlantaCompetitors7 in 6 sportsFlag bearer Eileen CoparropaMedals Gold 0 Silver 0 Bronze 0 Total 0 Summer Olympics appearances (overview)189619001904190819121920192419281932193619481952195619601964196819721976198019841988199219962000200420082012201620202024 Panama competed at the 1996 Summer Olympics, held in Atlanta, United States. Results by ev...

 

St Paul's Church, Upton Cross Upton Cross and Upton are hamlets a quarter of a mile apart in east Cornwall, England, United Kingdom. Upton is situated at grid reference SX 279 724 north of Upton Cross 5 miles (8 kilometres) northwest of Callington. They are on the northeast side of Caradon Hill on the B3254 Liskeard to Launceston road.[1] St Paul's Church at Upton Cross is a mission church built in this corner of the parish of Linkinhorne in 1887 to serve the needs of the local minin...

VenerabilisLeo DupontLahir24 Januari 1797Martinique, PrancisMeninggal18 Maret 1876 (usia 79)Tours, Prancis Bagian dari sebuah seri dariDevosi Katolikkepada Wajah Kudus Yesus Doa-doa dan Sakramen-sakramen Doa Panah Emas Kemasan Kecil Skapular Wajah Kudus Tokoh Maria dari Santo Petrus Leo Dupont Thérèse dari Lisieux Maria Pierina De Micheli Mary Therese Vicente Maria Pia Mastena Gaetano Catanoso Organisasi Para Suster Reparasi Wajah Kudus Para Suster Wajah Kudus Oratorium Wajah Kudus lbs Leo ...

 

Pyridinium chlorochromate Ball-and-stick model of the pyridinium cation Ball-and-stick model of the chlorochromate anion Names IUPAC name Pyridinium chlorochromate Other names PCC; Corey-Suggs reagent Identifiers CAS Number 26299-14-9 Y 3D model (JSmol) Interactive image ChEBI CHEBI:176795 ChemSpider 10608386 Y ECHA InfoCard 100.043.253 EC Number 247-595-5 PubChem CID 129695875 UNII DTV5HU1N27 Y CompTox Dashboard (EPA) DTXSID40893953 InChI InChI=1S/C5H5N.ClH.Cr.3O/c1-2-4-6-5-3...