Hiroshima University Syllabus

Back to syllabus main page
Japanese
Academic Year 2024Year School/Graduate School School of Informatics and Data Science
Lecture Code KA109001 Subject Classification Specialized Education
Subject Name プログラミング言語
Subject Name
(Katakana)
プログラミングゲンゴ
Subject Name in
English
Programming Languages
Instructor NISHIMURA KOUJI
Instructor
(Katakana)
ニシムラ コウジ
Campus Higashi-Hiroshima Semester/Term 2nd-Year,  Second Semester,  4Term
Days, Periods, and Classrooms (4T) Mon9-10,Weds9-10:ENG 220
Lesson Style Lecture Lesson Style
(More Details)
 
In principle, lectures are face-to-face and exercises are online (on-demand), but face-to-face may be changed to online (simultaneous interactive). 
Credits 2.0 Class Hours/Week   Language of Instruction B : Japanese/English
Course Level 3 : Undergraduate High-Intermediate
Course Area(Area) 25 : Science and Technology
Course Area(Discipline) 02 : Information Science
Eligible Students 2nd grade students of School of Informatics and Data Science
Keywords Programming Languages, Compiler, Pseudo language programming 
Special Subject for Teacher Education   Special Subject  
Class Status
within Educational
Program
(Applicable only to targeted subjects for undergraduate students)
In addition to understanding the mechanism of programming languages, learn a wide range of basic syntax and semantics of programming with exercises.
Also, deepen understanding through metaprogramming using pseudo language. 
Criterion referenced
Evaluation
(Applicable only to targeted subjects for undergraduate students)
Computer Science Program
(Abilities and Skills)
・A. Information infrastructure development technology, information processing technology, technology that analyzes data and creates new added value.
・B. Ability to identify new problems independently and solve them through quantitative and logical thinking based on data, multifaceted perspectives, and advanced information processing and analysis.
・D3. Knowledge of hardware and software and programming ability to process data efficiently.

Data Science Program
(Abilities and Skills)
・A. Information infrastructure development technology, information processing technology, technology that analyzes data and creates new added value.
・B. Ability to identify new problems independently and solve them through quantitative and logical thinking based on data, multifaceted perspectives, and advanced information processing and analysis.

Intelligence Science Program
(Abilities and Skills)
・A. Information infrastructure development technology, information processing technology, technology that analyzes data and creates new added value.
・B. Ability to identify new problems independently and solve them through quantitative and logical thinking based on data, multifaceted perspectives, and advanced information processing and analysis.
・D2. Information processing ability and data analysis ability to contribute to the application and development of artificial intelligence and IoT. 
Class Objectives
/Class Outline
Learn the general knowledge on programming language as a basis of software development.
Specific goals are as follows:
1. Can understand the syntax and semantics of programming language
2. Can understand the execution environment of the program including compiler
3. Can use metaprogramming using pseudo language 
Class Schedule lesson1: Guidance, Introduction to programming languages
lesson2: Overview of the compiler
lesson3: Lexical analysis: Regular expressions and finite automata
lesson4: Lexical analysis: Lexical analyzer
lesson5: Syntax analysis: Context free grammar
lesson6: Syntax analysis: Upward parsing
lesson7: Syntax analysis: Recursive downward parsing
lesson8: Semantics analysis: Symbol table
lesson9: Semantics analysis: Type handling
lesson10: Runtime environment
lesson11: Interpreter
lesson12: Metaprogramming using pseudo language: Variables and Types
lesson13: Metaprogramming using pseudo language: Operators
lesson14: Metaprogramming using pseudo language: Functions
lesson15: Metaprogramming using pseudo language: Process flow

The lecturer may impose a report in response to the content of each lesson and perform final exam.

The contents or the order of the lesson may vary due to the progress of the lesson, etc. 
Text/Reference
Books,etc.
Documents are prepared by the lecturer. 
PC or AV used in
Class,etc.
 
(More Details) The handouts will be placed on moodle, so please download them yourself.
Record the lesson so that you can look back on it later.  
Learning techniques to be incorporated  
Suggestions on
Preparation and
Review
It is desirable to understand the basic grammer and algorithm such as C language. 
Requirements  
Grading Method Consider active participation in the results of quiz and final exam. 
Practical Experience Experienced  
Summary of Practical Experience and Class Contents based on it The lecturer will instruct secure programming development techniques based on software development experience in an aeronautical system company and practical experience as an information security engineer who has licenses on registered information security specialist (RISS) and CAIS-Assistant. 
Message  
Other The language of instruction will be decided and announced by the lecturer based on the language proficiency of the students. 
Please fill in the class improvement questionnaire which is carried out on all classes.
Instructors will reflect on your feedback and utilize the information for improving their teaching. 
Back to syllabus main page