A student-friendly, course-friendly guide to compiler theory, applications, and programming technology Compiler construction is a tricky subject, involving theory, the application of that theory, and programming techn...
详细信息
ISBN:
(数字)9781118112779;9781118112878
ISBN:
(纸本)9780470949597
A student-friendly, course-friendly guide to compiler theory, applications, and programming technology Compiler construction is a tricky subject, involving theory, the application of that theory, and programming technology. Virtually every day, advances in computer technology propel advances in compiler technology. Compiler Construction Using java, javaCC, and Yacc covers every topic essential to learning compilers from the ground up and is accompanied by a powerful and flexible software package for evaluating projects as well as several tutorials, well-defined projects, and test cases. While the coverage of javaCC is entirely optional, this book provides the only comprehensive introduction to the topic currently available. Far easier to read and understand than any other compiler guide, this book sets a new standard for learning this invaluable skill. It provides:
Strong coverage of formal languages, including context-sensitive and unrestricted languages as well as regular and context-free languages
A clear exposition of compiler design and implementation theory
Numerous well-defined projects, using source language with six levels of complexity
A complete teaching support software package that evaluates compiler projects for correctness, run time, and size of code, and runs on multiple platforms
Immediate feedback for students on their projects
Compiler Construction Using javaTM, javaCC, and Yacc provides substantial support for each project, many of which are incremental enhancements of previous projects. The goals at each new level are challenging but achievable and can be reached in several different ways, for example, by writing a compiler or interpreter by hand, with javaCC, or with Yacc.
This paper presents an interactive, user-friendly tutoring system, which can be used to enhance students' understanding of the principles behind data structures. The system has the capability to display data struc...
详细信息
This paper presents an interactive, user-friendly tutoring system, which can be used to enhance students' understanding of the principles behind data structures. The system has the capability to display data structures graphically as well as providing the facility to allow users to perform the basic operations on the data structure generated. An animation-based approach has been developed to provide a step-by-step illustration of how various traversal techniques are performed in the context of binary search and AVL trees data structure. The system has a tutorial mode incorporating exercises, where students can learn basic concepts operations associated with each data structure. The evaluation was carried out by computer science undergraduate students in the School of Computing and Mathematics. It is generally acknowledged that the system was very useful in teaching students about data structures. This system can be used as an effective supplement to traditional teaching methods.
The purpose of set java language in private college is to train students to use the java program for software development capability. In this paper, private colleges teaching java programming status and problems are a...
详细信息
ISBN:
(纸本)9783037851555
The purpose of set java language in private college is to train students to use the java program for software development capability. In this paper, private colleges teaching java programming status and problems are analyzed and discussed, and some improvements in order to achieve the effect of improving teaching quality.
We present a framework for a programming course for undergraduate computer science students. The technical motivation is to implement a two-wheeled self-balancing controllable robot. Advanced requirements make it a fu...
详细信息
ISBN:
(纸本)9783642254888
We present a framework for a programming course for undergraduate computer science students. The technical motivation is to implement a two-wheeled self-balancing controllable robot. Advanced requirements make it a full-grown software project. The emphasis of this course is on one hand to teach basic concepts of software programming. The students work in groups of five and each student is assigned a role, which is typical for the software development process. On the other hand, the course is intended to give some basic hands-on experience in control theory.
In order to optimize the hydraulic transportation system efficiency and cost in the surface extraction of Athabasca oil sand deposits in Canada, there is a desire to extend the hydraulic transport system to production...
详细信息
In order to optimize the hydraulic transportation system efficiency and cost in the surface extraction of Athabasca oil sand deposits in Canada, there is a desire to extend the hydraulic transport system to production faces in oil sands mines using mobile train of Flex-Rite-based flexible pipelines. Hydraulic transportation system based on flexible-pipe arrangement has been shown to be more competitive than the dump-truck transportation system. This flexible arrangement introduces a unique set of hydraulic transport problems which needs rigorous modeling, experimentation, and analysis to understand the system production capacities and efficiency. Part of the work presented here is an attempt to provide multiphase oil sand slurry simulation and modeling by developing a slurry flow simulator, a graphical user interface-based software, for Flex-Rite flexible-pipe train, a form of hydraulic transportation system. Such software provides a tool/platform for rigorous experimentation and analysis of flow and production capacities.
EduVisor software visualization component is a new pedagogical tool specifically developed to address some wide-spread problems in teaching object-oriented technology to novice programmers. The visualization tool is i...
详细信息
EduVisor software visualization component is a new pedagogical tool specifically developed to address some wide-spread problems in teaching object-oriented technology to novice programmers. The visualization tool is integrated in a world-class IDE, and shows the students the structure of their own creations at runtime. EduVisor is based on a solid grounding in literature and over 25 years of combined experience in teaching a CS1 course. With this component we have set the goal of helping our students progress faster through the most difficult initial stages of programming.
Effective object-oriented (OO) programming requires understanding class libraries. This paper presents our approach to design and build a cognitive tool that supports a programmer to understand OO class libraries. The...
详细信息
Effective object-oriented (OO) programming requires understanding class libraries. This paper presents our approach to design and build a cognitive tool that supports a programmer to understand OO class libraries. The MUDRIK system provides (1) three-dimensional visualization mechanisms for representing class structures and relationships from a variety of views and (2) flexible focus specification mechanisms that allow users to adapt a space of components to be displayed according to the task at hand. Interactive views of MUDRIK enable programmers to examine components' detail while maintaining a global representation of the rest of the library. The paper describes why understanding class library is critical in OO programming, presents a cognitive framework of our approach and design rationale behind the system design, and provides a detailed description of the system followed by a discussion on our approach. (c) 2008 Elsevier Ltd. All rights reserved.
It has become imperative for undergraduate students to learn the java programming language. Educational institutions need to train their students so that they retain the knowledge of solving problems using this and no...
详细信息
ISBN:
(纸本)9781424455065
It has become imperative for undergraduate students to learn the java programming language. Educational institutions need to train their students so that they retain the knowledge of solving problems using this and not to just learn the language syntax and write code, without much understanding. To enhance the learning capacities and teaching methodologies, a learning object model was proposed which couples the static and dynamic approaches. A repository of such learning objects would be created and be accessible to the teaching staff. These objects are reusable and allow the learner as well as the teacher to modify and convert it into a new learning object. The model comprises of static pages created based on sound pedagogical principles and links to a virtual environment, where any code could be executed in a dynamic way, without much hassles, thereby giving the learner a complete feel of learning the concepts and application.
Sun's foundation-level Sun Certified java Programmer (SCJP) for Standard Edition 6 is a must-have for any java programmer, and is a prerequisite for Sun’s specialty certifications. This resource is essen...
详细信息
ISBN:
(数字)9780470487105
ISBN:
(纸本)9780470417973
Sun's foundation-level Sun Certified java Programmer (SCJP) for Standard Edition 6 is a must-have for any java programmer, and is a prerequisite for Sun’s specialty certifications. This resource is essential preparation for the SCJP and focuses heavily on the skill set that Sun expects its SCJPs to have, with numerous examples, exercises, and real-world scenarios to give readers the tools needed to use what they learn. The material covers declarations, initialization, and scoping; flow control; API contents; concurrency; object-oriented concepts; collections/generics; and fundamentals. The interactive CD-ROM features chapter review questions, two bonus exams, a series of flashcards that can be used on PCs or handheld devices, and an ***: CD-ROM/DVD and other supplementary materials are not included as part of eBook file.
暂无评论