fachdidaktische aspekte der theoretischen informatik 12. gi-fachtagung informatik und schule...
TRANSCRIPT
Fachdidaktische Aspekte der theoretischen Informatik
12. GI-Fachtagung Informatik und SchuleDidaktik der Informatik in Theorie und Praxis
Lehrerfortbildungsveranstaltung am FB Informatik
Christian Wagenknecht, Michael HielscherGörlitz, am 26.10.07
Was haben wir heute vor?
Informatiklehrpläne in D und Beispiel: Hessen Sächs. LP Ziele und Inhalte Probleme fachdidaktische Antworten und
ein Feld für Erprobungen AtoCC – ohne AtoCC hat man keine Chance! Abschluss
2
Lehrplan Ziele und Inhalte3
Nr. Bundesland Lehrplaninhalt (Lernbereich) Pflichtbestandteil
1 Baden-Württemberg Bereich der theoretischen Informatik (Automaten, Berechenbarkeit)
nein
2 Bayern 3. Formale Sprachen (noch Entwurf) 3 Berlin 4.4 Sprachen und Automaten ja (auch GK)4 Brandenburg Bereich D 2: Automaten und formale Sprachen nein
5 Bremen Grundlagen der Theoretischen Informatik (Automaten, formale Sprachen)
nein
6 Hamburg
7 Hessen Formale Sprachen und Grammatiken Automaten, Fakultativ: Übersetzerbau
ja (auch GK)
8 Mecklenburg-Vorpommern 4. Sprachen und Automaten ja (auch GK)
9 Niedersachsen Eigenschaften endlicher AutomatenAspekte formaler Sprachen
nein
10 Nordrhein-Westfalen Endliche Automaten und formale Sprachen nein
11 Rheinland-Pfalz Formale Sprachen und Automaten zur Sprachbeschreibung und Spracherkennung
ja (nur LK)
12 Saarland Automaten und formale Sprachen Fakultativ: Übersetzerbau
ja (auch GK)
13 Sachsen 8 A: Formale Sprachen, Kellerautomat, Akzeptor nein 14 Sachsen-Anhalt 15 Schleswig-Holstein Automaten als mögliches Themengebiet nein16 Thüringen Themenbereich 7.3: Einblick in formale Sprachen nein
In den meisten Bundesländern sind ausgewählte Inhalte der TI Lehrplaninhalt der Sek. II:
Lehrplanauszug Hessen
Verbindliche Unterrichtsinhalte/Aufgaben:
Formale Sprachen und Grammatiken
reguläre und kontextfreie Grammatiken und Sprachen
Anwendung mit Syntaxdiagrammen
Chomsky-Hierarchie (LK)
kontextsensitive Sprachen (LK)
Endliche Automaten Zustand, Zustandsübergang, Zustandsdiagramm Zeichen, Akzeptor
Simulation realer Automaten (z. B. Getränkeautomat)
Anwendung endlicher Automaten (z. B. Scanner)
deterministische und nicht-deterministische Automaten (LK)
reguläre Ausdrücke (LK)
Mensch-Maschine-Kommunikation (LK)
Kellerautomaten
(LK, GK fakultativ)
Automat mit Kellerspeicher
kontextfreie Grammatiken
Klammerausdrücke, Rekursion Turing- oder Registermaschine
(LK, GK fakultativ)
Turing- oder registerberechenbar
Churchsche These
Computer als universelle symbolverarbeitende Maschine
Verhältnis Mensch-Maschine
Fakultative Unterrichtsinhalte/Aufgaben:
Übersetzerbau Scanner, Parser, Interpreter und Compiler
z. B. Steuersprache für Roboter, LOGO, Plotter oder miniPASCAL
4
Gefühlssituation der Lehrenden
"TI wollte ich nie machen." "TI hat mich nie richtig interessiert." "TI war mir immer zu theoretisch und abstrakt." "Die TI-Dozenten waren suspekt – TI im
postgradualen Studium erinnere ich mit Grausen."
"Die TI-Inhalten helfen mir nicht, wenn das Schulnetzwerk mal wieder zusammenbricht."
...
5
Lernbereich 8 A (Sächs. Lehrplan)6
GK Informatik f. Jahrgangsstufen 11 und 12, wird ab Schuljahr 2008/09 wirksam
endlicher Automat
Ausgangssituation für TI in der Schule
Manche Lehrende mögen es nicht. Manche Lehrende können es nicht richtig. SchülerInnen/Studierende fragen gelegentlich: "Wann
geht es denn nun endlich richtig los mit der Informatik? Ach so, das ist es schon."
Lehrplaninhalt: Zeit-Inhalt-Relation bedenklich; lässt Kompetenzdefizite der Autoren vermuten
"Ergebnis": Wenn möglich, TI weglassen. FALSCH!! Informatik wird nicht als Wissenschaft
repräsentiert. (Kontrast zu Math., Nat.-wiss.)Konkret: Studienabbrecher!!!
7
TI an Hochschulen – NICHTS für Schulen8
Typischerweise: Begrifflich orientiert, deduktiv
• Zeichen, Alphabet, Wort, Verkettung, Wortmenge• Sprache, formale Grammatik, Ableitung• reguläre Sprachen: Chomsky-Typ-3-Grammatik, reguläre Ausdrücke, DEA, NEA, L(DEA)=L(NEA), Minimalautomat, diverse Sätze (Nerode/Myhill, Pumping Lemma, ...), ...• kontextfreie Sprachen: Typ-2-Gr., DKA, NKA, L(DKA)<L(NKA), Transformation G >>> NKA (1 Zustand), diverse Sätze, ...• ksS / unbeschr. Sprachen: Typ-1- und Typ-0-Grammatiken, Turing-Maschine (beschränkt/unbeschränkt)
* Theorie der formalen Sprachen* Automatentheorie* Berechenbarkeitstheorie* Komplexitätstheorie
Schwächen dieses Vorgehens9
1. Geringe Motivation
2. kfS (im Verbund mit rS) sind die für den Compilerbau
wichtigste Sprachklasse – wird nicht gezeigt
(evtl. in einem Extrakurs Compilerbau)
Besser: Grundkonzepte des Compilerbaus konzeptionell thematisieren. Motivation aus der Praxis!
Dies ist ohne Software-Hilfsmittel nicht möglich.
Unterrichtsplanung (14 Ustd.)10
Didaktische Software
in Schulen: diverse Simulationstools oder Lernumgebungen, wie Kara; meist von enthusiastischen LehrerInnen
in Hochschulen: Systeme für die Lehre, wie JFLAP
LEX und YACC für die Hand des Ingenieurs
11
Simulationstool – Bildungsserver HessenSimulationstool – Bildungsserver Hessen
Defizite existierender Systeme
Systeme bzw. separate Module thematisieren Einzelaspekte
nicht definitionskonform und/oder nicht an Lernprozessen orientiert, sondern die Prozess-Simulation dominiert
Suggerieren abstrakten Automat als physikalisches Objekt
Systeme können nur simple Beispiele bearbeiten – zu große Distanz zur Praxis
12
Lern- und Arbeitsumgebung für TI: Anforderungen
ganzheitlicher Ansatz: Praxis Theorie Praxis, s. Lehrplanforderung
einheitliche Bedienung der Module (für Automatentheorie und Sprachübersetzer)
Handlungsorientierung auf hohen Abstraktionsniveaus (wenig technischer Ballast auch für anspruchsvolle Aufgabenstellungen)
13
AtoCC - Vom abstrakten Automaten zur automatisierten Entwicklung von Sprachübersetzern
Typische Kopplung von Automatentheorie mit Aspekten des Compilerbaus (s. Lehrpläne)
Wichtige didaktische Entscheidung: Zielsprache sollte nicht Maschinencode sein!!
ein enger Bezug der Herstellung eines Sprachübersetzers zu den theoretischen Grundlagen erfordert hohe Abstraktion
Modellierung des Übersetzungsprozesses mit "ausführbaren" T-Diagrammen
15
Unterrichtsplanung: 1. Woche16
ZR – eine Sprache für einen Zeichenroboter
17
Praxisnahe (echte!) Aufgabe mit grafischer Ausgabe:Entwickeln Sie einen Compiler, der die Sprache ZR (ZeichenRoboter) in PDF übersetzt.
Eingabewort (in ZR): WH 36 [WH 4 [VW 100 RE 90] RE 10]
Ausgabewort (in PS):%!PS-Adobe-2.0/orient 0 def /xpos 0 def /ypos 0 def 0 0 0 setrgbcolor/goto { /ypos exch def /xpos exch def xpos ypos moveto} def/turn { /orient exch orient add def} def /draw { /len exch def newpath xpos ypos moveto /xpos xpos orient sin len mul add def /ypos ypos orient cos len mul add def xpos ypos lineto stroke } def 300 400 goto100 draw 90 turn 100 … turn 10 turn