Learning Compiler Construction by Examples

合集下载

Individualdifferences学习中的个体差异

Individualdifferences学习中的个体差异

(7) Motivation
Integrative motivation--learning the language in order to take
part in the culture of its people
Instrumental motivation--learning the language for a career goal or other practical reason.
(8) Interest and attitude
learners’ communicative needs… learners’ attitude towards the second
language community…
(9) Empathy
Putting yourself into someone else’s shoes One need not abandon one’s own way of feeling
Types of Anxiety
Harmful and helpful anxiety Social anxiety: speech anxiety, shyness,
stage fright, embarrassment, socialevaluative anxiety and communication apprehension. Test anxiety
moment in time as a response to a definite situation.
situational-specific anxiety: the anxiety which is
aroused by a specific type of situation or event such as public speaking, exams, or class participation

The+last+lesson+of+the+English+college+entrance+ex

The+last+lesson+of+the+English+college+entrance+ex

Check and Modify
Review your answers
Practice speaking
Improve writing skills
Memorize new words and their meanings, and use them in your daily conversations and writing.
Read more English materials, such as books, newspapers, and articles, to improve comprehension and speed.
写作部分要求考生能够清晰、准确地 表达自己的观点,并使用适当的语言 和结构。
Listening comprehension
听力
听力部分要求考生能够理解所听到的 对话或短文的主旨和细节,并从中获 取信息。
VS
Oral expression
口语
口语部分要求考生能够清晰、准确地表达自 己的观点,并能够进行简单的交流和讨论。
Speak more often in English to improve pronunciation, fluency, and confidence.
Write regularly, and seek feedback from teachers or peers to improve grammar, punctuation, and essay structure.
Complete past exam papers to familiarize yourself with different question types and their marking criteria.

2025年教师资格证考试《英语学科知识与教学能力》(高级中学)模拟试卷

2025年教师资格证考试《英语学科知识与教学能力》(高级中学)模拟试卷

2025年教师资格证考试《英语学科知识与教学能力》(高级中学)模拟试卷1.【单项选择题】Chomsky believes that a grammar must _______all the grammat(江南博哥)ical sentences in a language.A. makeB. useC. generateD. understand正确答案:C参考解析:题目问的是关于乔姆斯基的转换生成语法观点。

乔姆斯基认为人类学习和使用语言不是靠机械模仿和记忆,而是不断理解和掌握语言规则,举一反三地创造性地运用的过程。

2.【单项选择题】Don't defend him anymore. It's obvious thathe_______destroyed the fence of the garden even without an apology.A. accidentallyB. carelesslyC. deliberatelyD. automatically正确答案:C参考解析:考查副词辨析。

accidentally“意外地,偶然地”;carelessly “粗心地,大意地”;deliberately“故意地”;automatically“自动地”。

句意:不要再为他辩护了,很明显,他是故意弄坏花园篱笆的,甚至也没有道歉。

3.【单项选择题】Which of the following italicized parts is a subject clause?A. We are quite certain that we will get there in time.B. He has to face the fact that there will be no pay rise this year.C. She said that she had seen the man earlier that morning.D. It's sheer luck that the miners are still alive after ten days.正确答案:D参考解析:A项是表语从句,是一个主系表的结构,B项是同位语从句,that引导的同位语从句补充说明先行词的内容,C项是宾语从句,that引导的宾语从句做谓语动词said的宾语;只有D项是主语从句,it是形式主语,真正的主语是后面的that从句部分。

语言学课后习题答案

语言学课后习题答案

Chapter 1Introduction 1. Define the following terms briefly.(1) linguistics: the scientific or systematic study of language.(2) language: a system of arbitrary vocal symbols used for human communication.(3) arbitrariness: the absence of similarity between the form of a linguisticsign and what it relates to in reality, e.g. the word dog does not look likea dog.(4) duality: the way meaningless elements of language at one level (soundsand letters) combine to form meaningful units (words) at another level.(5) competence: knowledge of the grammar of a language as a formalabstraction and distinct from the behavior of actual language use, i.e.performance.(6) performance: Chomsky’s term for actual language behavior as distinct fromthe knowledge that underlies it, or competence.(7) stylistics: the study of how literary effects can be related to linguisticfeatures.(8) phatic communion: Language is used to establish an atmosphere ormaintain social contact between the speaker and the hearer.(9) functionalism: the study of the forms of language in reference to theirsocial function in communication.(10) formalism: the study of the abstract forms of language and their internalrelations.(11) synchronic linguistics: the study of language and speech as they are usedat a given moment and not in terms of how they have evolved over time.(12) diachronic linguistics: the study of linguistic change over time in contrastto looking at language as it is used at a given moment.2. No, language is human-specific. Human language has seven design features, including arbitrariness, duality, productivity, interchangeability, displacement, specialization and cultural transmission. These features are found utterly lacking in dogs’ or pigs’ noises and thus set human language apart from animal cry systems.3. Arbitrariness refers to the fact that there is no logical or intrinsic connectionbet ween a particular sound and the meaning it is associated with. For example, for the same animal dog, in English we call it /d0g/, in Chinese as “gou”, but “yilu”in Japanese; it barks wow wow in English but wang wang in Chinese. Of course, onomatopoetic words such as “quack-quack” and “bang” are exceptions, but words like these are relatively few compared with the total number of words in a language.4. A human baby does not speak any language at birth. What language the baby is going to speak is determined by the culture he is born into. A Chinese baby born and brought up in London by an English family will speak English, while an English child brought up in Beijing by a Chinese aunt will speak Chinese. That is to say, language cannot be transmitted through heredity. It is culturally transmitted.5. Firstly, linguistics describes languages and does not lay down rules of correctness while traditional grammar emphasizes correctness. Secondly, linguistics regards the spoken language as primary, while traditional grammar emphasizes the priority of the written language. Thirdly, traditional grammar is based on Latin and it tries to impose the Latin categories and structures on other languages, while linguistics describes each language on its own merits.6. A descriptive approach attempts to tell what is in the language while the prescriptive approach tells people what should be in the language. Most modern linguistics is descriptive, whereas traditional grammars are prescriptive.7. Synchronic linguistics studies language at one particular time while diachronic linguistics studies language developments through time. Synchronic linguistics focuses on the state of language at any point in history while diachronic linguistics focuses on the differences in two or more than two states of language over decades or centuries.8. No, human language has the design feature of specialization. It refers to the fact that man does not have a total physical involvement in the act of communication. For example, a mother can tell a story to her child while slicing up a cake. However, wolves can only respond to a stimulus and is totally involved physically in the communication process. Thus, a wolf cannot have a language similar to man’s, even though it could express a thousand different emotions. Besides, the aspect of productivity also distinguishes human language from wolf ’s postures.Chapter 2The Sounds of Language 1. Define each of the following terms briefly.(1) articulator: the tongue, lips, and velum, which change the shape of the vocaltract to produce different speech sounds.(2) assimilation: a phonological process whereby a sound becomes phoneticallysimilar (or identical) to a neighboring sound, e.g. a vowel becomes [+nasal] when followed by a [+nasal] consonant.(3) consonant: a speech sound produced by partial or complete closure of partof the vocal tract, thus obstructing the airflow and creating audible friction.Consonants are described in terms of voicing, place of articulation, and manner of articulation.(4) elision: the leaving out of a sound or sounds in speech.(5) intonation: the variation in pitch and stress which gives beat and rhythmto the tune the voice plays in ordinary speech.(6) phoneme: the abstract element of a sound, identified as being distinctivein a particular language.(7) phonetics: the study of linguistic speech sounds, how they areproduced, how they are perceived, and their physical properties.(8) phonology: the study of the abstract systems underlying the sounds oflanguage.(9) stress: the prominence given to certain sounds in speech.(10) voicing: the vibration in the larynx caused by air from thelungs passing through the vocal cords when they are partly closed; speech sounds are said to be either voiced or voiceless.(11) voiceless: When the vocal cords are spread apart, the airstreamfrom the lungs is not obstructed at the space between vocal cords and passes freely. The sounds produced in this way are described asvoiceless sounds.(12) vowel: a speech sound produced without significant constriction of theair flowing through the oral cavity.2. Minimal pair test or substitution test.Minimal pair test or substitution test is to see whether substituting one sound for 4another results in a different word. If it does, the two sounds representdifferent phonemes. For example, as to the English word bear, if we substitute p for b, we get the word pear, the two are different words. Then /b/ and /p/ represent different phonemes. Other examples are chunk/junk, ban/bin, bet/beat, fine/vine, side/site, etc.3. Take the word big for example, in the word big /big/, /b/ is the onset, /i/ is the nucleus and /g/ is the coda. The difference between open syllables and closed syllables is whether the words have codas. If there are codas, they are closed syllables, such as pig, hat and at; if not, they are open syllables, such as do, I, tea and key.4. (1) stop, consonant(2) back, rounded, vowel5. (1) voiceless / voiced(2) bilabial / labiodental(3) close / semi-open(4) stop / nasal(5) alveolar / palatal(6) alveolar / dental(1) kit/git, bucker/bugger, bag/back(2) mark/nark, smack/snack, sum/sun(3) best/vest, ober/over, lib/live(4) bore/more, abate/amate, mob/mom(5) pat/fat, apt/aft (AmE), harp (BrE)/half7. (1) The stresses are placed on the second syllable except for “promise”. We may easily conclude that the verbs usually are stressed on the second syllable. (2) Syllable representations of the words:collide [k2#laid] elect [i#lekt] consider [k2n#sid2]Chapter 3Morphology 1. Define the following terms briefly.(1) morphology: the study of the structure of words.5(2) morpheme: the smallest unit of language that carries meaning orserves a grammatical function.(3) free morpheme: a morpheme that can stand alone as a word.(4) bound morpheme: a morpheme that can not stand alone as a word,e.g. ment (as in establishment), and -er (as in painter).(5) morph: the smallest meaningful phonetic segments of an utterance onthe level of parole.(6) allomorph: a phonetic form in which a morpheme is realized, e.g. -s, -es,and en are all allomorphs (in writing) of the plural morpheme.(7) derivation: the formation of new words by adding affixes to other words ormorphemes in morphology and word formation.(8) clipping: the process by which parts of a word of more than one syllablehave been cut off, and reduced to a shorter form.(9) acronym: words which are composed of the first letter of a series ofwords and are pronounced as single words. Examples: NATO, radar and yuppy.(10) initialism: Some new words are composed of the first letters of aseries of words and pronounced by saying each letter in them. Such words are called initialism.(11) blending: A single new word can be formed by combining two separateforms. Typically, blending is finished by taking only the beginning of one word and joining it to the end of another word. For example,brunch is formed by the shortened forms of breakfast and lunch.(12) root: the morpheme that remains when all affixes are stripped from a complexword, e.g. system from un- + system + atic + ally.(13) stem: the base to which one or more affixes are attached to create amore complex form that may be another stem or a word. For example, book is the stem of bookish.(14) prefix: Affixes can be joined to the beginning of the root or stem, inwhich case they are called prefixes.(15) suffix: Affixes can be joined to the end of the root or stem, in which casethey are called suffixes.2. (3), (5), (7)3. (1) simple: fly tree suite(2) bound morpheme rootfly / flyreuse re- usespiteful -ful spitepreplan pre- plandesks -s desktriumphed -ed triumphsuite / suiteoptionality -ality optionuntie un- tiedelight de- lightfastest -est fastprettier -ier prettytree / treejustly -ly justdeform de- formmistreat mis- treatdislike dis- likepayment -ment paydisobey dis- obeypremature pre- mature4. (1) Column I: ablaut (vowel modification)Column II: suppletionColumn III: stress modification(2) The process in the Column I is finished by changing the vowel of each word,while in Column II, the process is finished by changing vowel and consonant of each word.(3) Column I: awake/awoke bear/bore arise/aroseblow/blew bite/bit hide/hidlie/lay know/knew foot/feetgoose/geese tooth/teeth louse/liceColumn II: bad/worse are/were many/moreColumn III: ‘combine/com’bine ‘compress/com’press7‘conduct/con’duct ‘insert/in’sert‘insult/in’sult ‘intern/in’tern5. (1) Omitted.(2) Other examples:‘rerun (n.) – re’run (v.) ‘contrast (n.) – con’trast (v.)‘convert (n.) – con’vert (v.) ‘desert (n.) – de’sert (v.)‘export (n.) – ex’port (v.) ‘increase (n.) – in’crease (v.)‘conduct (n.) – con’duct (v.) ‘object (n.) – ob’ject (v.)‘content (n.) – con’tent (v.) ‘protest (n.) – pro’test (v.)‘insult (n.) – in’sult (v.) ‘produce (n.) – pro’duce (v.)When a word belongs to different word classes, the stress of the word will be sometimes placed on different syllables. When all the words above are stressed on the first syllables, they are nouns, but if they have the second syllables stressed, the words become verbs.6. (1) It means “the inhabitant of ”.(2) It means “the person who does”.(3) The morphological rule working here is “n. + -er –– n.”, and thelast phoneme of the noun, which the suffix -er is added to, should be aconsonant.(4) The rule in (3) doesn’t work in the word discoverer because the last phoneme of discoverer is a vowel /2/.7. (1) inflection (2) derivation (3) inflection (4) inflection (5) derivationChapter 4Syntax 1. Define the following terms briefly.(1) syntax: the term used to refer to the structure of sentences and to the studyof sentence structure.(2) word class: a group of words which are similar in function; words which aregrouped into word classes according to how they combine with other words, how they change their forms, etc.(3) prescriptive approach: This view regards grammar as a set ofrules for the 8“proper”use of a language, that’s to say, it tries to lay down rules to tell people how to use a language.(4) descriptive approach: the approach of linguistic studies, with whichlinguists collect samples of the language they are interested in and attempt to describe the regular structures of the language as they are used, not according to some view of how they should be used.(5) IC analysis: the approach to divide the sentence up into its immediateconstituents by using binary cutting until obtaining its ultimateconstituents. For example, the immediate constituents of “The man bought a car”are the man and bought a car. The immediate constituents of the man are the and man, and so on until no further cuts can be made. The ultimate constituents of “The man bought a car”at the word level are the, man, bought, a, and car.(6) structural analysis: a type of descriptive approach to study thedistribution of linguistic forms in a language through such methods as the use of “test frames”.(7) immediate constituent: Linguistic units can be divided into smallconstituents, which can be further analyzed into smallerconstituents. This process continues until no further divisions arepossible. The first division or units are known as immediate constituents.(8) ultimate constituent: Linguistic units can be divided into smallconstituents, which can be further analyzed into smallerconstituents. This process continues until no further divisions arepossible. The final division or units are known as ultimate constituents.(9) constituent structural grammar: It refers to a grammar which analyzessentences using only the idea of constituency, which reveals a hierarchy of structural levels.(10) transformational grammar: a type of grammar which attempts to define anddescribe by a set of rules or principles all the grammatical sentences(without ungrammatical ones) of a language.(11) ideational function: the use of language as a means of giving structure toour experience of the real or imaginary world.(12) interpersonal function: the use of language for maintaining social rolesand interacting with others.(13) textual function: to create written or spoken texts which cohere withinthemselves and which fit the particular situation in which they are used. 2. Yes. As we know, morphology is the study of the internal structure, forms and 9classes of words, while syntax focuses on the structure and ordering of components within a sentence. The major distinction between morphology and syntax is that the former is concerned with the internal composition of a word, while the latter is concerned with the combination of words.3. (2) Instead of using the form “suggest somebody to do something”, weusually use “suggest + that-clause” or “suggest doing”, here we’d better substitute “advise” for “suggest”(4) The word “request”is a transitive verb which should take an object directly,so the word “for” should be omitted.(6) The word “donate” cannot be followed by double objects as “donatesomebody something”. Instead we always use “donate something to somebody”.(10) The subject of the verb “write”is usually a human; an “article”cannot writeitself. In this case the passive construction is normally used: The article was very well writen.(11) Usually we don’t use “be bored of something/somebody”, but “be bored withsomething/somebody” which means losing interest in somebody/something.(13) Here “myself ” is a reflexive pronoun, which can’t be used as subject, andit should be replaced by “I”.(14) The word “surprise” is usually used as a transitive verb, so theexpression “…surprise for you” is ungrammatical, and it can bereplaced by “surprise somebody (with something)”or “I was surprised by your getting married.”(15) The word “sleep” is usually used as an intransitive verb, which can’t takean object. The cases of “sleep” being used as a transitive verb aresemantically limited, as in “to sleep a good sleep” or “the room can sleep3 people”.4. It’s ungrammatical, because “us” is the objective case which can’t serve asthe subject, while “she”is the subjective case which can’t serve as the object.The sentence should be “We visit her on Sundays”. The personal pronouns “you”and “it” have the same form whether used as the subject or object.5. (1) NP: A Guns “N”Roses concert, an arena, some 2500 fans, a full-fledged riot,A Guns “N” Roses concert at an arena , A Guns “N” Roses concert at an arena near ST. Louis ,The trouble, venue security, a camera, the front, the stage, the front of the stage. PP: at an arena, at an arena near ST. Louis, near ST. Louis, in disaster, near the front, of the stage, near the front of the stage. VP: staged a full-fledged riot, asked venue security, confiscate a camera.(2) N: Guns, Roses, concert, arena, ST. Louis, disaster, fans, riot, trouble, Axl 10Rose, venue, security, camera, front, stage. Prep: at, near, in, of. V: end, stage, start, ask, confiscate, see.6. (1) You mustn’t end a sentence with a preposition.You mustn’t split infinitives7. (i)(ii)8. (1) a. Terry loves his wife and I love his wife,too. b. I love my wife as well as Terry loveshis wife.(2) a. It’s yesterday that they said she would go. b. She would go yesterdayas they said.(3) a. The governor is a street fighter who is dirty.b. The governor is a fighterin a dirty street.(4) a. The design has squares and circles, both of which are big. b. The designhas big squares, and it also has some circles. (The sizes of the circlesare not mentioned.)Chapter 5Semantics 1. Define the following terms briefly.(1) semantics: the study of linguistic meaning.(2) truth-conditional semantics: an approach that knowing the meaning ofthe sentence is the same as knowing the conditions under which the sentenceis true or false, and knowing the meaning of a word or expression is knowingthe part that it plays in the truth or falsehood of the sentence containingit.(3) naming theory: the view that the meaning of an expression is what it refersto, or names.(4) behaviorist theory: the view that the meaning of a linguistic form is definedas observable behaviors which is an approach drawing on psychology.(5) use theory: the semantic theory according to which the meaning ofan expression is determined by its use in communication and moregenerally, in social interaction.(6) sense: the inherent part of an expression’s meaning, together with thecontext, determines its referent. For example, knowing the sense ofa noun phrase such as the president of the United States in 2004 allows oneto determine that George W. Bush is the referent.(7) reference: (in semantics) the relationship between words and thethings, actions, events and qualities they stand for. An example in Englishis the relationship between the word tree and the object “tree”(referent) in the real world.(8) conceptual meaning: It means the meaning of words may be discussed interms of what they denote or refer to, also called denotative or cognitivemeaning. It is the essential and inextricable part of what language is and is widely regarded as the central factor in verbal communication.For instance, the conceptual meaning of “he”in English is any male personor male animal.(9) connotative meaning: It is the communicative meaning that a word ora combination of words has by virtue of what it refers to, over its purelyconceptual meaning. For example, the connotative meaning of “woman” isemotional, frail, inconstant, irrational, etc.(10) semantic field: the organization of related words and expressionsinto a system which shows their relationship to one another. For example,kinship terms such as father, mother, brother, sister, uncle, aunt belongto a semantic field whose relevant features include generation, sex,membership of the father’s or mother’s side of family.(11) lexical gap: the absence of a word in a particular place in a semantic fieldof a language. For instance, in English we have brother versus sister,son versus daughter, but no separate lexemes for “male”and “female”cousin.(12) componential analysis: (in semantics) an approach to the study of meaningwhich analyzes a word into a set of meaning components or semanticfeatures. For example, the meaning of the English word boy may be shownas [+human][+male][-adult].(13) semantic feature: the smallest units of meaning in a word. The meaningof word may be described as a combination of semantic components orfeatures. For example, the feature [+male] is part of the meaning of father, and so is the feature [+adult], but other features are needed tomake up the whole meaning of father. Often, semantic features areestablished by contrast and can be stated in terms of [+] and [-], e.g. womanhas the semantic features [+human], [-male] and [+adult].(14) synonym: the sense relations of equivalence of meaning betweenlexical items, e.g. small/little and dead/deceased.(15) antonym: the sense relation of various kinds of opposing meaning betweenlexical items, e.g. big/small, alive/dead and good/bad.(16) hyponymy: the sense relation between terms in a hierarchy, where amore particular term (the hyponym) is included in the more general one (thesuperordinate): X is a Y, e.g. a beech is a tree, a tree is a plant.(17) meronym: the sense relation between body and its parts which are not onlysections of the body but defined in terms of specific functions. For example,the head is the part of the body which carries the most important sense organs,i.e. eyes, ears, nose and tongue.(18) semantic role: the way in which the referent of a noun phrase is involvedin the situation described or represented by the clause, forexample as agent, patient, or cause.(19) entailment: the relationship between two sentences where the truthof one (the second) is inferred from the truth of the other, e.g. Cordayassassinated Marat and Marat is dead; if the first is true, the second mustbe true.(20) presupposition: implicit assumptions about the world required to make anutterance meaningful or appropriate, e.g. “some tea has already been taken”is a presupposition of “Take some more tea!”2. (1) He waited by the bank.a. He waited by the financial institution which people can keep their money inor borrow from.b. He waited by the bank of the river.(2) Is he really that kind?a. Is he really that type of person?b. Is he really that kind-hearted?(3) We bought her dog biscuits.a. We bought dog biscuits for her.b. We bought biscuits for her dog.(4) He saw that gasoline can explode.a. He saw that gasoline container explode.b. He saw that gasoline may explode.(5) Fifty soldiers shot three wild foxes.a. Fifty soldiers shot three wild foxes in total.b. Each of the fifty soldiers shot three wild foxes.(6) He saw her drawing pencils.a. He saw her pencils for drawing.b. He saw her drawing the picture of pencils.3. (2) (4) (5) (8) are antonyms; (1) (3) (6) (7) are synonyms.4. charity: kindness, sympathy, church, helpfuliron: strong, brave, hard, determinedmole: traitor, betrayal, spysnow: pure, virgin, cleanstreet: homeless, living hard, pitiable5. (1) a. hoard b. scribble c. barn, method d. olfactory(2) a. acquire b. tell c. way d. smell(3) a. buy, win, steal. b. talk, tell c. road, way, path d. smell These words are less marked in their sets because they are more usual and tend to be used more frequently. They consist of only one morphemeand are easier to learn and remember than others. They are also often broaderin meaning and cannot be described by using the name of another member ofthesame field.6. homophones: sea-see, break-brake; polysemies: sea, break, prayer, mature, trace,house homonyms: ear.7. In a semantic field, not all lexical items necessarily have the same status.The less marked members of the same semantic field (1) are usuallyeasier to learn and remember than more marked members; (2) consistof only one morpheme in contrast to more marked members; (3) cannot bedescribed by using the name of another member of the same field; (4) tendto be used more frequently than more marked terms; (5) broader in meaningthan more marked members; (6) are not the result of the metaphorical usageof the name of another object or concept, but more marked are.8. (1) a. bachelor, man, son, paperboy, pope, chiefb. bull, rooster, drake, ram.The (a) and (b) words are male.The (a) words are human.The (b) words are animals.(2) a. ask, tell, say, talk, converseb. shout, whisper, mutter, drawl, hollerThe (a) and (b) words are realized by sounds.The (a) words are normal voice quality.The (b) words are produced by modifying one’s normal voice quality.(3) a. walk, run, skip, jump, hop, swimb. fly, skate, ski, ride, cycle, canoe, hang-glideThe (a) and (b) words are sports (movement).The (a) words are sports without instruments.The (b) words are sports with instruments.Chapter 6Pragmatics 1.Define the following terms briefly.(1) pragmatics: a branch of linguistics that studies language in use.(2) deixis: the marking of the orientation or position of entities andsituations with respect to certain points of reference such as the place(here/there) and time (now/then) of utterance.(3) reference: (in semantics) the relationship between words and the things,actions, events, and qualities they stand for.(4) anaphora: a process where a word or phrase (anaphor) refers back to anotherword or phrase which was used earlier in a text or conversation.(5) presupposition: implicit assumptions about the world required to makean utterance meaningful or appropriate, e.g. “some tea has already been taken”is a presupposition of “Take some more tea!”(6) Speech Act Theory: The theory was proposed by J. L. Austin and has beendeveloped by J. R. Searle. Basically, they believe that language is not only used to inform or to describe things, it is often used to “dothings”, to perform acts. In saying “Sorry”, you are performing an act of apology.(7) indirect speech act: an utterance whose literal meaning (location)and intended meaning (illocution) are different. For example, Can you pass the salt? is literally a yes/no question but is usually uttered as a request or polite directive for action.(8) the Cooperative Principle: a principle proposed by the philosopher PaulGrice whereby those involved in communication assume that bothparties will normally seek to cooperate with each other to establish agreed meaning. It is composed of 4 maxims: quality, quantity, relation and manner.(9) the Politeness Principle: politeness is regarded by most interlocutorsas a means or strategy which is used by a speaker to achievevarious purposes, such as saving face, establishing and maintainingharmonious social relations in conversation. This principle requiresspeakers to “minimize the expression of impolite beliefs”. It is composed of 6 maxims: Maxims of Tact, Generosity, Approbation, Modesty, Agreement and Sympathy.。

COMPILER CONSTRUCTION

COMPILER CONSTRUCTION

Assemblers
• A translator for the assembly language of a particular computer • Assembly language is a symbolic form of one machine language • A compiler may generate assembly language as its target language and an assembler finished the translation into object code
Linkers
• Collect separate object files into a directly executable file • Connect an object program to the code for standard library functions and to resource supplied by OS • Becoming one of the principle activities of a compiler, depends on OS and processor
Editors
• Compiler have been bundled together with editor and other programs into an interactive development environment (IDE) • Oriented toward the format or structure of the programming language, called structurebased • May include some operations of a compiler, informing some errors

PROGRAMLEARNINGOUTCOMES-WelcometoWinona程序的学习..

PROGRAMLEARNINGOUTCOMES-WelcometoWinona程序的学习..
Assessment Planning
The Student Experience
Initial The list of outcomes is problematic: e.g., very incomplete, overly detailed, inappropriate, disorganized. It may include only discipline-specific learning, ignoring relevant institution-wide learning. The list may confuse learning processes (e.g., doing an internship) with learning outcomes (e.g., application of theory to realworld problems). Outcome statements do not identify what students can do to demonstrate learning. Statements such as “Students understand scientific method” do not specify how understanding can be demonstrated and assessed. There is no clear relationship between the outcomes and the curriculum that students experience.
Students have some knowledge of program outcomes. Communication is occasional and informal, left to individual faculty or advisors.

Chapter12AppliedLinguistics-Exercises

Chapter12AppliedLinguistics-Exercises

Chapter12AppliedLinguistics-ExercisesChapter 12 Applied linguisticsI. Fill in each of the following blanks with one word which begins with the lettergiven.1. In its narrow sense, applied linguistics refers to the a_________ of linguisticfindings to l_________ t________.2. The grammar-translation method depends heavily on an established p_______grammar.3. In the direct method, learners are required to m____ the new language and in thisway become familiar with a particular structure or p_____.4. A__________ was built on the ideas of American structural linguistics and those ofbehaiourist psychology.5. It is held in f_________ language teaching that we should teach people what wecan do with various linguistic forms.6. Broader than Chomsky’s l___________ competence, Hymes’s c_____________competence includes the ability to use the language appropriately for a variety of social circumstances.7. D_________ tests measure knowledge of individual language items, such as agrammar test which has different sections on tenses, adverbs, and prepositions.8. IELTS is a kind of c_____________ tests.II. Decide whether each of the following statements is True or False.1. In a broader sense, applied linguistics refers to any discipline that applies linguisticfindings to address language related issues.2. Intensive reading should be taught only by the grammar-translation method.3. Today, it is generally agreed that language learning is just the learning of a set ofhabits.4. Communicative language teaching is not really a coherent and cohesive theorysupporting a set of techniques for language teaching; rather, it is more an eclectic approach drawn from many sources that tend to promote or lead to the teaching and learning of a language as and for communication.5. In communicative language teaching, language function and form are equallyemphasized and language fluency is just as important as accuracy.6. Achievement tests aim to show the overall level of a learner’s language ability at agiven moment.7. True-false tests are examples of subjective tests while multiple-choice tests areexamples of objective tests.8. The three main principles of testing, validity, reliability, and practicality may go inconflict.III. Define the following terms.1.achievement test2. validity3. proficiency test/doc/8a15253902.html,nguage aptitude test5. diagnostic test6. backwash effectIV. Answer the following questions.1. What advantages and disadvantages does the grammar-translation method have,compared with the communicative approach of language teaching?2. Y ou are having or have had the course called “Intensive Reading”. Whatapproaches does or did your teacher use? Justify your answer with detailed analysis.3. Can the Test for English Majors (Grade 4) and the College Entrance Test of Englishbe grouped into the same category of test? Why?4. If you were to design an English test for the second-year senior middle schoolstudents, what factors would you take into consideration to make it a good one? Suggested answersI. 1. application, language, teaching; 2. prescriptive3. mimic, pattern4. Audiolingualism5. functional6. linguistic, communicative7. Discrete-point 8. criterion-referencedII. 1. T 2. F 3. F 4. T 5. T 6. F 7. F 8. TIII.1.Achievement tests are based on a particular language syllabus, part of a syllabus, orchapters in a textbook that learners are known to have studied. They are tests of how well learners know what they have been taught. The Chinese MET test taken by students leaving Senior Middle School and Mid-Term tests for University English Majors are examples of large-scale and small-scale achievement tests, respectively. The former is based on the Middle School English syllabus while the latter may be based on just a few chapters from a textbook.2. The validity of a test relates to what the test claims to measure and how well it doesso. If we know that a test is valid then we know what we can confidently say abouta person who passes or fails it. A number of different statistical procedures can beapplied to a test to estimate its validity. And the two most important aspects of validity are content and construct validity. If a test has content validity it means that the test questions cover a fair sample of the language structures and skills that the test claims to be measuring. A test has construct validity if it can show that it measures only what it claims to measure and nothing else.3. Proficiency tests do not claim to be based on any particular syllabus or textbook.They aim to show the overall level of a learner’s language ability at a given moment. They are often given to see whether or not a learner’s language ability is sufficient to be able to perform a particular task, or work in a specific role, using the L2. Examples of such tests are the Chinese English Proficiency Test(EPT), the American Test of English as a Foreign Language (TOEFL) and the British International English Language Testing System (IELTS) test, all of which, although different, aim to show whether a learner has sufficient ability in English to be able to study successfully in an English speaking country.4. L anguage aptitude tests measure an individual’s potential for second language orforeign language learning and which can be used to identify those learners who are most likely to succeed. Like language proficiency tests, language aptitude tests are theory-based, but the theory upon which they are based includes abilities that are related to the acquisition, rather than the use of language. The theory of language aptitude hypothesizes that cognitive abilities such as rote memorization, sound coding, and the identification of grammatical analogies are related to an individual’s ability to learn a second or foreign language, and together constitute language aptitude.5. A diagnostic test offers the learner the chance to use a range of languageelements—they might be functions, structures, situations or vocabulary—to find out which he is familiar with and which he is not. The content of a diagnostic test is quite specific, referring back to recent class work. It is intended to have positive results for the student by encouraging him with success or pointing out exactly what he needs to do to improve. It is often based on further examples of the kind of material which has been used in class. For instance, a diagnostic pronunciation test may be used to measure the learner’s pronunciation of English sounds. It would show which sounds a student is and is not able to pronounce. Diagnostic tests may be used to find out how mucha leaner knows before beginning a language course.6. Backwash effect refers to the effect that tests may have on what actually occurs inthe classroom. For example, If language tests only test knowledge of grammar and vocabulary, then this is what teachers and learners will concentrate on in the classroom. Conversely, if tests demand that learners show that they can use the language, classroom time will have to be found to practice such use of the language.IV.1. Clues: Compare the major features of the two approaches, you can figure out that learners’grammatical knowledge may be better developed by the grammar-translation method which stresses accuracy over fluency, while accuracy may be overlooked in the communicative teaching approach. Check what problems of the grammar-translation method can be solved in the communicative approach, you can tell disadvantages of grammar-translation method.2. Clue: Different teaching methods are used in dealing with different teaching content; there are differences in the concrete teaching of different teachers, who may hold different ideas about language and language teaching and learning. Exemplification is encouraged.3. No, they can’t. Reasons can be given by analyzing the two exams along the basic distinctions in language testing.4. V alidity, reliability and practicality. Detailed elaboration of the three factors is needed to make a complete answer.。

Exam(可查字典)

Exam(可查字典)

NCCU Programming Languages MidTerm Exam(可查字典) 樣題與考古題,不含OO部分學號: 姓名:I. True or False questions. (O or X)(a)( ) 高階語言比組合語言有較好的可攜性.(b)( ) C語言不可以採用interpreter的實作方式.(c)( ) Both Prolog and FORTRAN are called imperative languages.(d)( ) C語言的程式由一組functions組成,所以C是functional language。

(e)( ) Fortran does not support recursion because it does not have dynamic memory allocation functionlike C’s malloc.(f)( ) C語言的”static”宣告的目的在於控制變數的記憶體位置大小。

(g)( ) 沒有指標的程式語言就不會有aliasing problem (aliases).(h)( ) Explicit dynamic memory allocation through operations such as malloc are typically done on the heap.(i)( ) If we remove the malloc and free functions from C, then C programs won't have garbage.(j)( ) A partial function from A to B is the same as a total function from a subset of A to B.(k)( ) Scheme語言採取的是dynamic type binding。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Learning Compiler Construction by ExamplesJosé de Oliveira GuimarãesDepartamento de Computação – UFSCarSão Carlos – SP, 13565-905Brazilemail: jose@dc.ufscar.brAbstract: In traditional compiler construc tion courses, eachcompiler phase is studied in detail before moving on to thenext one. This not only places a great distance between theory and practice but also makes the students lose the bigpicture of the subject. We have been employing a different course format in which the subject is incrementally introduced through ten compilers of increasinglycomplexity. The first compiler is in fact just a syntaxanalyzer of a very simple language. The last one is a complete compiler of a Pascal-like language. Students ofthis course learn how to build compilers faster than theusual.Keywords: compiler construction, learning by examples,object-oriented programming.D.3.4 [Programming Languages]: Processors - Codegeneration, Compilers, Parsing1. IntroductionStudents usually consider difficult courses on compiler construction. The reasons are that compilerconstruction demands a heavy dose of programming andtheory. A compiler operates in phases, each one with its particularities, algorithms, techniques, and tricks of thetrade. The phases are lexical analysis, syntax analysis(parsing), semantic analysis, code generation, and code optimization [5]. The last phase is not usually studied in the undergraduate courses of our university.A compiler takes a program writ ten in a source language S and produces as output another program in a target language. The lexical analyzer takes characters of the input, in language S, and groups them in what we call tokens. Each language terminal is a token, which is associated to an integer constant. The syntax analyzer (parser) takes the tokens as input and checks if the source program matches the S grammar. The parser may build an abstract syntax tree (AST) of the source program. An AST is a data structure representing all the main elements of the input. It has all the important information present in the source program. The source program may have errors not detected by the parser such as "variable not declared" and "left and right-hand sides of the assignment have incompatible types". The semantic analysis is responsible for this kind of checking. In general, the semantic analyzer is composed by a myriad of pieces of code spread in the parser. The code optimizer changes the AST or some intermediary program representation produced by the parser in order to make the output program faster or smaller. The code generator is responsible for generating code in the target language.Traditional compiler construction courses present most or even all aspects of every compilation phase before moving on to the next one. As a consequence, students feel lost in details, losing the big compiler picture. Only at the middle or at the end of the course that a complete compiler emerges? sometimes a complete compiler is never presented. Students usually ask the question "why am I learning this?". Since they do not know the whole, they do not understand why the parts are necessary.This article presents the details of a different compiler construction course which has been taught every year since 2002 at the Computer Science Department of the Federal University of São Carlos, Brazil. The subject is introduced through examples of increasing complexity, starting with a very simple expression grammar and finishing with a complete compiler of a language similar to Pascal. The next section explains how these examples are presented to the students. The last section concludes.2. The Course OutlineThe compiler construction course is taught in one semester with sixteen weeks, three of which are reserved for examinations. There are four consecutive 50-minutes classes a week. Most of the students are in the fifth (Computer Science) or seventh (Computing Engineering) semester of their courses. Now that we described the context, the course outline can be presented.The course is divided in two parts, each one eight-weeks long. The first one is very practical. We teach how to build compilers without worrying in proving why the techniques presented work. In the second part, we teach the theory behind compiler construction. This inversion is made on purpose. The objective is to introduce the subject as fast as possible to enable students to build a simple compiler in the first month. Students do not miss the theory since it is intuitively clear that the parsing method used, recursive descendent parsing, works.The first cours e part uses ten compilers made using recursive descendent analysis and five compilers made using CUP/Jlex [1] [8]. The first ten compilers were made in Java without the help of any tool. All of thecompilers [6] and a manual [7] explaining them are available to the students. In the first d ay of the course, in four 50-minutes classes, the following topics are seen: ?the definition of a compiler;?the compiler cousi ns: where compiler techniques may be employed;? the phases of a compiler (lexical analysis, syntax analysis, semantic analysis, and code generationand optimization).In the second c ourse day, the first five compilers are introduced. In these compilers, lexical analysis is very simple, trivial. We concentrate in the more interesting parsing and code generation phases. A lexical analyzer can be made without any sophisticated technique and we chose to show more complex lexical analyzers later on. Code generation is rapidly presented to catch the imagination of the students ? it seems something magical to automatically transform one language into another. None of the first five compilers needs a symbol table ? there is no semantic analysis. But the abstract syntax tree is built for the 5th compiler. Compilers 6 to 10 are seen one a day, approximately. All compilers were made in Java.The ten compilers made using the recursive descendent parsing method a re presented in the following paragraphs. The important topics introduced with each of them are discussed.Compilers 1 through 5 use the same language whose grammar isExpr ::= '(' Oper Expr Expr ')'| NumberOper ::= '+' | '-'Number ::= '0' | '1' | ... | '9' Legal "programs" in this language are expressions like1(+ 1 2)(- (+ 5 2) 4)Using this grammar we teach how to make a lexical and a syntax analyzer in Java. The lexical analyzer is very simple: it skips white spaces and returns the next character ? note that all terminals are one-character tokens.The parser is not difficult either. It is composed by methods of class Compiler, which also contains one method (nextToken) for lexical analysis. Class Compiler contains one method for each grammar rule ? expr, oper, and number. Each parser method is responsible for analyzing the corres ponding grammar rule and returns nothing (void). Some examples with even simpler grammars are shown and the subject is not difficult to be understood by the students. Com piler 1 does not generate code ? it is in fact just a parser.There is a method error() which is called whenever a lexical or parser error is found. This method prints a message and terminates the program. Note the whole compiler is in class Compiler.Compiler 2 generates code using the s implest possible way: by adding print (System.out.println) statements to the parser code. The target language is C, which means code generation is very simple. For example, “(+ 1 2)” produces “(1 + 2)”.Compiler 3 generates assembly code. A stack-based virtual machine is used. This compiler is not too different from the previous one. It shows that non-optimized code generation to assembly is generally easy to do.Compiler 4 evaluates the value of the expression at compile time. It shows the very basic techniques of interpreters ? to evaluate an expression is to interpret it. Each parser method (expr and number) but oper returns the value of the expression analyzed by the corresponding rule.Compiler 5 builds the AST (abstract syntax tree) for the input expression. The AST is a set of objects representing the input. These objects are instances of AST classes CompositeExpr and NumberExpr. Class CompositeExpr represents an expression with an operator, like “(+ 1 2)”. Class NumberExpr represents a number. These classes inherit from abstract class Expr which has an abstract genC method. Methods expr and number of class Compiler return objects of the AST corresponding to the expression they analyze:Expr expr() { ... }NumberExpr number() { ... }The course material [7] explains the two reasons CompositeExpr and NumberExpr must inherit from Expr:?method expr of the parser returns either aCompositeExpr or a NumberExpr object. Ifthe rule Expr ::= ‘(‘ Oper Expr Expr‘)’ is chosen, instead of Expr ::= Number,method expr returns a CompositeExpr object.Otherwise it returns an object of NumberExpr.Therefore the return type of expr must be acommon superclass of CompositeExpr andNumberExpr. We created Expr for that;?class CompositeExpr has three instancevariables:char oper;Expr left, right;left and right are pointers to the left and rightexpressions of a composite expression. Both leftand right must be able to point either to aCompositeExpr or to a NumberExpr object.Then their types should be Expr, a commonsuperclass.Code generation is rem oved from methods expr and number of class Compiler and placed in genC methods of the AST. There is an abstract method genC in Expr and concrete genC methods in CompositeExpr and NumberExpr. The top-level parser method is method compile of class Compiler. It returns an object of type Expr whose real class at runtime is one of the Expr subclasses. By sending the genC message to this object, a method of CompositeExpr or NumberExpr is called. This illustrates polymorphism in Java.During the course, we try to teach as much object-oriented programming as possible. And there is plenty of opportunities for that in the design of the AST classes. All the important aspects o f object-oriented programming are explored: classes, inheritance, and polymorphism.Compiler 6 uses a language that supports the declaration of variables. A typical program would bea = 1b = 7 : (+ a b)This language demands some semantic analysis, since a variable may be declared twice and a non-declared variable may be used in the expression following the colon. However, we do not introduce semantic analysis in this compiler, which is only useful for showing new AST classes (Program, Variable, VariableExpr) and a more complete code generation to C?now the output can be compiled by a C compiler and executed. The previous compilers generate just the expression in C, without the main function.Again, there are new opportunities to teach object-oriented programming here. The declaration of a variable,1“b = 7”, is represented by an object of class Variable. Method genC of this class generates “int b = 7;” for the statement “b = 7”. When a variable appears in an expression, we should not use class Variable of the AST to represent it. Code generation for variable b when it appears in the ex pression “(+ a b)” is different from the code generation for the declaration of b. Therefore variable b in an expression should be represented by another class, which is VariableExpr. The grammar of language 62 defines the following rule:Expr ::= ‘(‘ Oper Expr Expr ‘)’| Number| Variable1 Variables are in fact constants, since their values cannot be changed.2 Source language of compiler 6. Method expr of the parser returns a VariableExpr object when the last option is chosen (corresponding to Expr ::= Variable). That means VariableExpr should inherit from Expr.Compiler 7 uses the same grammar as language 6. It evaluates the expression through methods eval added to several AST classes. Each AST class represents part of an expression and the eval method of that class returns the value of that p art.A hash table plays the role of a symbol table and is used to keep the values of the variables. At the declaration of a variable, the pair (name, value) is inserted at the table. When a variable is found in the expression, its value is retrieved from the hash table. The compiler checks if a variable is being declared twice and if it is declared before used.This compiler is another nice introduction to interpretation (the other is compiler 4). Instead of generating code to a virtual machine and interpreting it, this compiler interprets the AST directly, an easy way of building an interpreter.Compiler 8 introduces new grammar rules with long terminals like if, then, and begin ? all previous terminals had just one character. There are numbers with more than one digit and comments from // till the end of the line. The language supports d eclaration of variables,if, read, and write statements. There are great changes in the lexical analyzer which now uses integers to represent terminals (previous lexical analyzers used the one-character terminals themselves). There are new AST classes: AssignmentStatement, IfStatement, ReadStatement, and WriteStatement. A ll of them are subclasses of the abstract class Statement, which declares an abstract g enC method.Compiler 9 introduces several novelties related to object-oriented programming. A class Lexer is created for lexical analysis ? method nextToken is moved to it. A class CompilerError is created just for error signaling. Class Compiler has the parsing methods. There are just one object of each of classes Compiler, Lexer, and CompilerError. Each one references the other two. Variables have types. There are types i nteger, boolean, and char. Each type is represented by a class of the AST and all type classes inherit from abstract class Type. At runtime, only one object of each of the type classes is created ?there is no need to create more than one. All objects representing, for example, type char would be equal to each other. Types introduce a lot of semantic checking: the if expression must have type boolean, the left and right-hand side of an assignment must have the same type, and so on.Compiler 10 uses a grammar with several new rules. The language resembles Pascal and supports procedures, functions, and loop statements. The symbol table needs to be improved since there are global subroutines and local variables and parameters ? it is necessary to use two hash tables, one for each scope. We could have used a more efficient hash table but we did not because this would be a distraction from the main goals of the course.In this compiler there are new opportunities for semantic analysis and code generation. For example, when a procedure is called the compiler should check the number and types of the arguments. Code generation is not difficult because procedure and function declarations are translated to function declarations in C ? the difficulties of the subject are masked by the target language.The abstract syntax trees used in compilers 8-10 are not too abstract. We chose to add to them more information than they usually have. All identifiers are represented in the AST classes by pointers to objects. For example, a statement “b = 1” is represented by an object of the AST class AssignmentStatement. This class has an instance variable of type V ariable. An object of this class references the object of class Variable that represents “b”. Usually “b” would be represented by string “b”. This way of building the AST adds more object-oriented programming to the compiler construction.After studying the ten compilers made using the method of recursive descendent parsing, we present five compilers made using CUP/JLex [1, 5]. These tools are the equivalent to YACC/Lex for Java. CUP is a parser generator and JLex creates a lexical analyzer from a description of the terminals. These five compilers are the equivalent of the first five compilers made by hand using recursive descendent parsing.The second part of the course deals with theory of compiler construction. The students learn why the recursive descendent parsing method works. It is interesting to note that, while studying the first ten compilers, the students have the intuition that the method works. They ask questions like “what if we had a rule A ::= B | C and both B and C start with the same terminal?”. These questions showa correct intuitive understanding of the method.3. ConclusionIn the course described in this paper, the concepts and techniques of compiler construction are introduced incrementally through a series of ten compilers. The incremental and smooth additions of features to each language make it relatively easy to learn the subject. The most attractive parts, parsing and code generation, are introduced in the very first compilers, motivating the students. In the course material, at the end of each compilerdescription there are exercises relative to the newtechniques presented in that compiler. In the classes, exercises are given after every new topic to involve students with the subject.In our course, students learn how to build a complete compiler in the second course day. They get thebig picture of the subject immediately. All of the materialthat follows brings only refinements (although important) to the compilers taught in this day. Ghuloum [4] proposes asimilar teaching method using Scheme, although his compilers are much more sophisticated than we thought could be taught in an undergraduate course. It is interestingto note that the critics he makes on traditional courses arevirtually the same as ours.By presenting the theory after and not before, we create suspense on the reasons that make the recursive descendent parsing method works. The compilers are amotivation to study the theory. It is worth remembering that it is in compiler construction that theory and practicemeet each other. Without theory, there would be nosystematic technique for compiler construction.Several articles discuss compiler constructioncourses [2], [3], [8], [10]. However, these articles focus on the student assignments, the compilers the students should implement. It can be a compiler for a) a small ad-hoclanguage, b) a subset of a known language, c) an object-oriented, functional, or logic language, d) a real language in which the Professor supplies part of the code (a “fill in theblanks” approach). Or the assignments can be a mixture ofthe above. In this article we stress another topic, the teaching of compiler construction itself. By presentingpractice before theory we get the students interested in thesubject. By presenting the compiler techniques in small steps we keep them interested because the increments from one compiler to the next are not that difficult to follow.This course is followed in the subsequent semester by a compiler laboratory course. In it, students build a complete compiler for a small object-oriented language. This language is a subset of Java called Krakatoa (a very significant name indeed). In fact, Krakatoa can be considered the smallest Java subset that is object-oriented. It has everything necessary to be considered object-oriented and nothing more.Code generation is made to C with all the complexities brought by inheritance, polymorphism, and message sends to variables, this, and super. Although we present a paper that describes how to generate code, this is not a trivial task to the students.Since this laboratory compiler course has no expositive classes, the Krakatoa compiler is made only with the practical experience and theoretical basis students acquired in the first course, the one described in this paper. This is, in our opinion, the greater evidence of the success of this “incremental” course method.All the course material is available on the Internet[6].Bibliography[1] Ananian, C. JLex: A lexical analyzer generator for Java./~appel/modern/java/JLex,2003.[2] Baldwin, D. A compiler for teaching about compilers.In Proceedings of the 34th SIGCSE technical symposium on Computer science education. (Reno, Ne vada, Feb. 19-23, 2003), 220-223.[3] Coon, L. A sequence of lab exercises for anintroductory c ompiler construction course. SIGCSEBulletin 28, 3 (Sep. 1996), 60-64.[4] Ghuloum, Abdulaziz. An incremental approach to compiler construction. In Proceedings of the 2006 Schemeand Functional Programming Workshop, Portland, OR, 2006.[5] Grune, D., Bal, H., Jacobs, J.H. and Langendoen, K.Modern Compiler Design. John Wiley & Sons, 2000. [6] Guimarães, José de O. Compilers used in the course.Available at http://www.dc.ufscar.br/~jose/courses/cc-en.htm.[7] Guimarães, José de O. Learning Compiler Constructionby Examples. Course material. Available athttp://www.dc.ufscar.br/~jose/courses/cc-en.htm.[8] Hudson, S. CUP parser generator for Java./~appel/modern/java/CUP.[9] Neff, N. OO Design in compiling an OO language. In Proceedings of the thirtieth SIGCSE technical symposiumon Computer science education. (New Orleans, Louisiana,Mar. 24-28, 1999), 326-330.[10] Tempte, M. A compiler construction project for anobject-oriented language. In Proceedings of the twenty-third SIGCSE technical symposium on Computer science education. (Kansas City, Missouri, Mar. 5-6, 1992), 138-141.。

相关文档
最新文档