Paradigmata programování 2

Podobne dokumenty
Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 13.2.

Univerzita Palackého v Olomouci

Martin Pergel. 26. února Martin Pergel

MATEMATIKA 3. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

Kristýna Kuncová. Matematika B2 18/19

Úvodní informace. 18. února 2019

Numerické metody minimalizace

Kristýna Kuncová. Matematika B2

Aproximace funkcí 1,00 0,841 1,10 0,864 1,20 0,885. Body proložíme lomenou čarou.

Funkce zadané implicitně. 4. března 2019

Matematika 2, vzorová písemka 1

(1) Derivace. Kristýna Kuncová. Matematika B2 17/18. Kristýna Kuncová (1) Derivace 1 / 35

Cauchyova úloha pro obyčejnou diferenciální rovnici

Kristýna Kuncová. Matematika B3

Internet a zdroje. (Zdroje na Internetu) Mgr. Petr Jakubec. Katedra fyzikální chemie Univerzita Palackého v Olomouci Tř. 17.

Zadání: Vypočítejte hlavní momenty setrvačnosti a vykreslete elipsu setrvačnosti na zadaných

Komplexní analýza. Martin Bohata. Katedra matematiky FEL ČVUT v Praze Martin Bohata Komplexní analýza Mocninné řady 1 / 18

Numerické metody 8. května FJFI ČVUT v Praze

Co nám prozradí derivace? 21. listopadu 2018

Kapitola 4: Soustavy diferenciálních rovnic 1. řádu

Necht je funkce f spojitá v intervalu a, b a má derivaci v (a, b). Pak existuje bod ξ (a, b) tak, že f(b) f(a) b a. Geometricky

Geometrická nelinearita: úvod

Matematika (KMI/PMATE)

NÁVOD K POUŽITÍ KEZELÉSI KÉZIKÖNYV INSTRUKCJA OBSŁUGI NÁVOD NA POUŽÍVANIE. Česky. Magyar. Polski. Slovensky

Operace s funkcemi [MA1-18:P2.1] funkční hodnota... y = f(x) (x argument)

1 Soustava lineárních rovnic

Stavový popis Stabilita spojitých systémů (K611MSAP) Katedra aplikované matematiky Fakulta dopravní ČVUT. čtvrtek 20. dubna 2006

Obsah. Zobrazení na osmistěn. 1 Zobrazení sféry po částech - obecné vlastnosti 2 Zobrazení na pravidelný konvexní mnohostěn

Kristýna Kuncová. Matematika B2 18/19. Kristýna Kuncová (1) Vzorové otázky 1 / 36

Anna Kratochvílová Anna Kratochvílová (FJFI ČVUT) PDR ve zpracování obrazu / 17

Úvod do TEXu. Brno, L A TEX dokumenty a matematika.

Statistika (KMI/PSTAT)

PARADIGMATA PROGRAMOVÁNÍ 1B

Vybrané kapitoly z matematiky

Příručka k rychlé instalaci: NWD2105. Základní informace. 1. Instalace softwaru

B0B99PRPA Procedurální programování

Powyższe reguły to tylko jedna z wersji gry. Istnieje wiele innych wariantów, można też ustalać własne zasady. Miłej zabawy!

Zásuvný modul QGISu. QGIS plugin pro práci s katastrálními daty

Jednoduchá zobrazení. Podpořeno z projektu FRVŠ 584/2011.

(2) Funkce. Kristýna Kuncová. Matematika B2. Kristýna Kuncová (2) Funkce 1 / 25

Obsah Atributová tabulka Atributové dotazy. GIS1-2. cvičení. ČVUT v Praze, Fakulta stavební, katedra mapování a kartografie

Jednoduchá zobrazení. Podpořeno z projektu FRVŠ 584/2011.

5. a 12. prosince 2018

Inverzní Z-transformace

(13) Fourierovy řady

TGH01 - Algoritmizace

TGH01 - Algoritmizace











návod k použití instrukcja obsługi

Scheelova kometa. Dušan Merta. Colours of Sepsis 2019, OSTRAVA!!!

prof. RNDr. Roman Kotecký DrSc., Dr. Rudolf Blažek, PhD Pravděpodobnost a statistika Katedra teoretické informatiky Fakulta informačních technologií

B0B99PRPA Procedurální programování

Návod k použití ovládacího panelu GZ-539 Serie

Skraplacze wyparne. Odpaøovací kondenzátory D 127/3-5 PL/CZ

Určitý (Riemannův) integrál a aplikace. Nevlastní integrál. 19. prosince 2018

Common Lisp - funkcje i zmienne

Ladící prostředí pro Windows

Reprezentace dat. BI-PA1 Programování a Algoritmizace I. Ladislav Vagner

POLIURETANOWE SPRĘŻYNY NACISKOWE. POLYURETHANOVÉ TLAČNÉ PRUŽINY

Petr Hasil. c Petr Hasil (MUNI) Nekonečné řady MA III (M3100) 1 / 187

Obsah. Limita posloupnosti a funkce. Petr Hasil. Limita posloupnosti. Pro a R definujeme: Je-li a < 0, pak a =, a ( ) =. vlastní body.

Kombinatorika a grafy I

1. Informace o předmětu, úvod do programování

ggplot2 Efektní vizualizace dat v prostředí jazyka R Martin Golasowski 8. prosince 2016

LBF/ZUB22 Programové vybavení ordinace zubního lékaře. Mgr. Markéta Trnečková, Ph.D. Palacký University, Olomouc

Podrêcznik podstawowej konfiguracji po³¹czeñ Wi-Fi

Numerické metody a statistika

Matematika 1 Jiˇr ı Fiˇser 24. z aˇr ı 2013 Jiˇr ı Fiˇser (KMA, PˇrF UP Olomouc) KMA MAT1 24. z aˇr ı / 52

Edita Pelantová, katedra matematiky / 16

TVL LED NÁVOD K POUŽITÍ NÁVOD NA POUŽITIE

Quick sort, spojové struktury

Vlastnosti. Příprava. Czech - 2 -

Logika V. RNDr. Kateřina Trlifajová PhD. Katedra teoretické informatiky Fakulta informačních technologíı BI-MLO, ZS 2011/12

Dräger Alcotest 6820 Měřič obsahu alkoholu v dechu Urządzenie do pomiaru stężenia alkoholu w wydychanym powietrzu

PA152,Implementace databázových systémů 2 / 25

Statistika (KMI/PSTAT)

TVF22384WEB NÁVOD K POUŽITÍ NÁVOD NA POUŽITIE INSTRUKCJA UŻYTKOWNIKA HASZNÁLATI UTASÍTÁS

ULS4805FE. Návod k použití Návod na použitie Instrukcja obsługi Instruction Manual Használatı utasítás. Licensed by Hyundai Corporation, Korea

Wprowadzenie do języka Common Lisp

Návod k použití BUBNOVÁ SUŠIČKA

Matematická analýza II pro kombinované studium. Konzultace první a druhá. RNDr. Libuše Samková, Ph.D. pf.jcu.cz

Centrální řídící jednotka RMB795

DXDB 215 NÁVOD K POUŽITÍ NÁVOD NA POUŽITIE INSTRUKCJA OBSŁUGI USER MANUAL

návod k použití instrukcja obsługi

HL24285SMART. Návod k použití Návod na použitie Instrukcja obsługi Használatı utasítás. Licensed by Hyundai Corporation, Korea

ENA 5 Załącznik. Instrukcja montażu i obsługi. Flamco.

Automatové modely. Stefan Ratschan. Fakulta informačních technologíı. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Návod k obsluze 2 Ďäçăßĺň ńţóçň 10 Instrukcja obsugi 18 Kullanma Kýlavuzu 26

1.1 Ovládací panel Zobrazení stavů Ovládací klávesnice Menu zobrazení Panel ovládání stroje...

Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. Petr Krajča (UP) KMI/YOS: Přednáška II. 6. říjen, / 26

ESL 8810RO CS MYČKA NÁDOBÍ NÁVOD K POUŽITÍ 2 PL ZMYWARKA INSTRUKCJA OBSŁUGI 22

Transkrypt:

Paradigmata programování 2 1. cvičení Radek Janoštík Univerzita Palackého v Olomouci 11.2.2019 Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 1 / 19

Úvod Předmět navazuje na Paradigmata programování 1 Jedna dvouhodina týdně (přednáška, doc. Krupka) + dvě hodiny cvičení (výklad + samostatná práce) Anketa: oblíbenost scheme (Dobrá/špatná) zpráva: Scheme po prvních dvou cvičení neuvidíme Přechod k LISPu Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 2 / 19

Konzultace, kontakt Email: radek.janostik@upol.cz Pracovna: 5.076 Telefon: 585 634 715 (nepreferován) Web: http://apollo.inf.upol.cz/ janostik/ Konzultace: Čtvrtek 13:00-14:30 nebo dohodou Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 3 / 19

Podmínky zápočtu Účast na cvičeních je povinná Minimální účast: 75% Čeká nás 12 cvičení, tedy max. 3 absence Ze závažných důvodů možnost omluvit/uznat účast Vyžadována aktivní účast (neznalost definicí, předchozí látky absence) Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 4 / 19

Úvod do (Common) Lispu Lisp = rodina jazyků Druhý nejstarší vysokoúrovňový jazky CommonLisp - standardizovaný dialekt Starší bratr scheme Opět jednoduchá, závorková syntax Na pár odlišností velmi podobný scheme univerzálnější - multiparadigmový, přívětivější vývojová prostředi,... Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 5 / 19

Vývojová prostředí (1/2) - LispWorks Preferované vývojové prostředí http://www.lispworks.com Ke stažení - Personal Edition - 5hodinový běh Po vyplnění dotazníku Údajně multiplatformní (Windows, MacOS X, Linux (za bludišt áka)) All-in One Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 6 / 19

Vývojová prostředí (2/2) - Alternativy GNU Emacs Powerfull textový editor (až operační systém) Podpora CommonLispu (Slime) Multiplatformní https://www.gnu.org/software/emacs/ Musí se zažít Portacle Založené na Emacs Přednstavené, doplňování, syntex-check,... Multiplatformní https://portacle.github.io/ Vyzkoušejte, mohou být lepší než LispWorks Na cvičení budu používat LispWorks Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 7 / 19

LispWorks (1/5) - představení Klávesové zkratky: Tools Preferences Environment Emulation Emacs-ové klávesové zkratky Windwos-like klávesové zkratky (doporučeno) Listener Klasická příkazová řádka interpretru Podobně jako spodní část v Racketu Slouží k přímému vyhodnocování výrazů Ctr+ArrowUp - poslední příkaz * - poslední výsledek Editor Soubor s kódem = buffer Více záložek (záložka buffers) Záložka Definitions - seznam definicí Důležitá tlačítka: Breakpoint, MakroExpand, CompileBuffer, CompileDefinition, EvalDefinition Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 8 / 19

LispWorks (2/5) - Restarty Dojde-li v Listeneru k chybě, informuje vás o ní Dostanete na výběr více možností :b backtrace :c + číslo vybraná možnost Možnosti (výběr) Znovu vyhodnocení (předtím změna v bufferu) Specifikování vazby Abort... Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 9 / 19

LispWorks (3/5) - Debugger Krokování programu V Editoru Tlačítko toggle breakpoint umístí zarážku Při dosažení breakpointu se objeví stepper Stepper - viz cvičení Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 10 / 19

LispWorks (4/5) - Inspector Klikací prohlížení hodnot Ikona Inspect (Mikroskop se zeleným puntíkem) Textová alternativa: (inspect proměnná) Ukončení :q Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 11 / 19

LispWorks (5/5) - Hyperspec nápověda Help Manuals ANSI CommonLisp standard Kompletní referenční příručka, popis funkcí,... Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 12 / 19

Lisp vs. Scheme (1/2) - Vazby symbolů Symboly v LISPu mají 2 druhy vazeb: Hodnotová vyhodnocuje se pokud není na 1. místě seznamu Funkční vyhodnocuje se na 1. místě seznamu Funkčí vazba se dá zjistit pomocí (function symbol) Zavolání funkce z hodnotové vazby (funcall symbol argumenty) Ukázka Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 13 / 19

Lisp vs. Scheme (2/2) - Pravdivostní hodnoty a prázdný seznam Pro pravdu, #t ze scheme, máme symbol t Pro nepravdu, #f ze scheme, máme symbol nil Narozdíl od scheme t a nil jsou obyčejné symboly Vše kromě nil a prázdného seznamu se bere jako pravda Seznam je ukončený nil Ukázka Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 14 / 19

Lisp vs. Scheme (2/2) - Slovníček Slovníček s překladem známých procedur ze Scheme do LISPu bude zveřejněn na webu Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 15 / 19

Cvičení 1. Příklad Nainstalujte a spust te LispWorks Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 16 / 19

Cvičení 2. Příklad Naprogramujte v LISPu funkci fib pro výpočet n-tého členu Fibbonachiho posloupnosti > (fib 5) 5 > (fib 6) 8 > (fib 10) 55 Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 17 / 19

Cvičení 3. Příklad Naprogramujte v LISPu funkci my-apply se 2 parametry, první má být funkce, druhý hodnota, která vrátí výsledek aplikace funkce na hodnotu > (my-apply (lambda (x) (* x x x)) 5) 125 > (my-apply (function fib) 10) 55 > (my-apply (function sqrt) 25) 5 Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 18 / 19

Cvičení 4. Příklad Naprogramujte v LISPu funkci odd-list se jedním parametrem list, která ze seznamu vytvoří seznam s prvky na lichých pozicích > (odd-list (1 2 3 4 5)) (1 3 5) > (odd-list ()) () > (odd-list (8 2 3 6 8 7 1 2 3 6)) (8 3 8 1 3) Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 11.2.2019 19 / 19