COOL is an Object-Oriented programming language used to teach compiler design in many undergraduate and graduate courses. Because most students are unfamiliar with the language and code editors and IDEs often lack the support for COOL, writing code and test programs in COOL are a burden to students, causing them to not fully understand many important and advanced features of the language and compiler. In this tool paper, we describe COOLIO,an extension to support COOL in the popular VSCode IDE. COOLIOprovides (i) syntax highlighting supports for the COOL language through lexing and parsing, (ii) semantics-aware autocompletion features that help students write less code and reduce the burden of having to remember unfamiliar COOL grammar and syntax, and (iii) relevant feedback from the underlying COOL interpreter/compiler (e.g., error messages, typing information) to the students through VSCode editor to aid debugging. We believe that COOLIO will help students enjoy writing COOL programs and consequently learn and appreciate more advanced compiler concepts.
翻译:COOL是用于在许多本科生和研究生课程中教授汇编者设计的一种面向目标的编程语言,因为大多数学生不熟悉语言和代码编辑,而IDE往往缺乏对COOL的支持,COOL的写法和测试程序对学生来说是一种负担,使他们不能完全理解语言和编译者的许多重要和先进的特征。在本工具文件中,我们描述了COOLIO,这是在广受欢迎的VSCode IDE中支持COOL的延伸。COOLIO提供(一) 语法通过开立和解析突出支持COOL语言的语法,(二) 有助于学生写写较少的代码的语义读音自动补全功能,减轻学生回忆不熟悉的COOL语法和语法的负担,(三) 通过VSCode编辑向学生提供相关的反馈(例如错误信息、打字信息)以帮助调试。我们认为,COOLIO将帮助学生享受编写COOL程序,从而学习和欣赏更先进的编译者概念。