Last revised 1-Sep-2023 Questionnaire for Harvard Extension School CSCI E-95: Compiler Design and Implementation Fall 2023 Name: Home/Cellular phone number: E-mail: Work phone number: Where are you located? What is your time zone? What pronouns would you like us to use when referring to you? Occupation (If an undergraduate student, please specify your major and year and at which school; If a graduate student, please specify your department, field, and year and at which school). Have you taken: CSCI E-10a (Formerly CSCI E-50a) (Introduction to Computer Science Using Java I), CSCI E-10b (Formerly CSCI E-50b) (Introduction to Computer Science Using Java II), CSCI E-22 (Formerly CSCI E-119) (Data Structures), CSCI E-26 (Introduction to C, Unix/Linux Programming, and Web Interfaces), CSCI E-28 (Formerly CSCI E-215) (Unix/Linux Systems Programming), CSCI E-38 (Introduction to C++ for Programmers), CSCI E-50 (Formerly CSCI E-52) (Intensive Introduction to Computer Science), CSCI E-53 (Effective C++ for Programmers), CSCI E-61 (Systems Programming and Machine Organization), CSCI E-92 (Principles of Operating Systems), CSCI E-93 (Computer Architecture), ENSC E-123 or CSCI E-123 (Laboratory Electronics: Digital Circuit Design), PHYS E-123a (Laboratory Electronics: Analog Circuit Design), CSCI E-124 (Data Structures and Algorithms), CSCI E-152 (Programming Languages), or equivalents? Please specify which. If you have not taken CSCI E-22 (Formerly CSCI E-119) (Data Structures) or CSCI E-124 (Data Structures and Algorithms), how do you meet the prerequisite? More specifically, do you have experience implementing many different data structures from scratch? If yes, please describe. If not, how do you meet the prerequisite? Are you currently working toward a degree in a degree program? If so, at what institution, which program, and what degree? Concurrently with taking this class, are you working full time? Part time? Are you taking any other classes concurrently with this one? Do you have experience using Posix/Linux/Unix? Are you familiar with Posix/Linux/Unix shell commands? Do you have experience programming using Posix/Linux/Unix system calls? If yes, please describe. Do you have experience using Windows? If so, as a user or as a programmer? What additional appropriate course or work experience do you have? What is your math background? What computer languages do you know (please include assembler and high-level languages)? Have you programmed in the C Programming Language, C++, or Java? What operating systems have you used (e.g. Windows, Mac OS, Linux, iOS, Android, etc.)? Have you written programs that interact with the operating systems? And, if so, with which operating systems? What computers (including microcontrollers) (e.g. x86, MIPS, ARM, PowerPC, M1, M2, RISC-V, SPARC, VAX, Microchip PIC, Intel 8051, Renesas, Motorola 6800 or 68000) have you programmed in assembly language (i.e., which machine code instruction sets)? In general, do you intend to attend the section meetings and classes live or watch the recorded sessions? What is your motivation for taking this course? Do you have any comments or questions for the course staff?