Search results for: Aspect-oriented programming
597 Customization of a Real-Time Operating System Scheduler with Aspect-Oriented Programming
Authors: Kazuki Abe, Myungryun Yoo, Takanori Yokoyama
Abstract:
Tasks of an application program of an embedded system are managed by the scheduler of a real-time operating system (RTOS). Most RTOSs adopt just fixed priority scheduling, which is not optimal in all cases. Some applications require earliest deadline first (EDF) scheduling, which is an optimal scheduling algorithm. In order to develop an efficient real-time embedded system, the scheduling algorithm of the RTOS should be selectable. The paper presents a method to customize the scheduler using aspectoriented programming. We define aspects to replace the fixed priority scheduling mechanism of an OSEK OS with an EDF scheduling mechanism. By using the aspects, we can customize the scheduler without modifying the original source code. We have applied the aspects to an OSEK OS and get a customized operating system with EDF scheduling. The evaluation results show that the overhead of aspect-oriented programming is small enough.Keywords: aspect-oriented programming, embedded system, operating system, real-time system
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1833596 Simulation and 40 Years of Object-Oriented Programming
Authors: Eugene Kindler
Abstract:
2007 is a jubilee year: in 1967, programming language SIMULA 67 was presented, which contained all aspects of what was later called object-oriented programming. The present paper contains a description of the development unto the objectoriented programming, the role of simulation in this development and other tools that appeared in SIMULA 67 and that are nowadays called super-object-oriented programming.
Keywords: Simulation, super-object-oriented programming, object-oriented programming, SIMULA.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1314595 A Common Automated Programming Platform for Knowledge Based Software Engineering
Authors: Ivan Stanev, Maria Koleva
Abstract:
Common Platform for Automated Programming (CPAP) is defined in details. Two versions of CPAP are described: Cloud based (including set of components for classic programming, and set of components for combined programming); and Knowledge Based Automated Software Engineering (KBASE) based (including set of components for automated programming, and set of components for ontology programming). Four KBASE products (Module for Automated Programming of Robots, Intelligent Product Manual, Intelligent Document Display, and Intelligent Form Generator) are analyzed and CPAP contributions to automated programming are presented.Keywords: Automated Programming, Cloud Computing, Knowledge Based Software Engineering, Service Oriented Architecture.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1889594 Programming Aid Tool for Detecting Common Mistakes of Novice Programmers in OpenMP Code
Authors: Jae Young Park, Seung Wook Lee, Jong Tae Kim
Abstract:
OpenMP is an API for parallel programming model of shared memory multiprocessors. Novice OpenMP programmers often produce the code that compiler cannot find human errors. It was investigated how compiler coped with the common mistakes that can occur in OpenMP code. The latest version(4.4.3) of GCC is used for this research. It was found that GCC compiled the codes without any errors or warnings. In this paper the programming aid tool is presented for OpenMP programs. It can check 12 common mistakes that novice programmer can commit during the programming of OpenMP. It was demonstrated that the programming aid tool can detect the various common mistakes that GCC failed to detect.
Keywords: Parallel programming, OpenMP, programming aid.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1553593 Application of De Novo Programming Approach for Optimizing the Business Process
Authors: Z. Babic, I. Veza, A. Balic, M. Crnjac
Abstract:
The linear programming model is sometimes difficult to apply in real business situations due to its assumption of proportionality. This paper shows an example of how to use De Novo programming approach instead of linear programming. In the De Novo programming, resources are not fixed like in linear programming but resource quantities depend only on available budget. Budget is a new, important element of the De Novo approach. Two different production situations are presented: increasing costs and quantity discounts of raw materials. The focus of this paper is on advantages of the De Novo approach in the optimization of production plan for production company which produces souvenirs made from famous stone from the island of Brac, one of the greatest islands from Croatia.Keywords: De Novo Programming, production plan, stone souvenirs, variable prices.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1246592 Robot Task-Level Programming Language and Simulation
Authors: M. Samaka
Abstract:
This paper presents the development of a software application for Off-line robot task programming and simulation. Such application is designed to assist in robot task planning and to direct manipulator motion on sensor based programmed motion. The concept of the designed programming application is to use the power of the knowledge base for task accumulation. In support of the programming means, an interactive graphical simulation for manipulator kinematics was also developed and integrated into the application as the complimentary factor to the robot programming media. The simulation provides the designer with useful, inexpensive, off-line tools for retain and testing robotics work cells and automated assembly lines for various industrial applications.Keywords: Robot programming, task-level programming, robot languages, robot simulation, robotics software.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 3262591 Simplex Method for Fuzzy Variable Linear Programming Problems
Authors: S.H. Nasseri, E. Ardil
Abstract:
Fuzzy linear programming is an application of fuzzy set theory in linear decision making problems and most of these problems are related to linear programming with fuzzy variables. A convenient method for solving these problems is based on using of auxiliary problem. In this paper a new method for solving fuzzy variable linear programming problems directly using linear ranking functions is proposed. This method uses simplex tableau which is used for solving linear programming problems in crisp environment before.
Keywords: Fuzzy variable linear programming, fuzzy number, ranking function, simplex method.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 3350590 Mathematical Programming Models for Portfolio Optimization Problem: A Review
Authors: M. Mokhtar, A. Shuib, D. Mohamad
Abstract:
Portfolio optimization problem has received a lot of attention from both researchers and practitioners over the last six decades. This paper provides an overview of the current state of research in portfolio optimization with the support of mathematical programming techniques. On top of that, this paper also surveys the solution algorithms for solving portfolio optimization models classifying them according to their nature in heuristic and exact methods. To serve these purposes, 40 related articles appearing in the international journal from 2003 to 2013 have been gathered and analyzed. Based on the literature review, it has been observed that stochastic programming and goal programming constitute the highest number of mathematical programming techniques employed to tackle the portfolio optimization problem. It is hoped that the paper can meet the needs of researchers and practitioners for easy references of portfolio optimization.
Keywords: Portfolio optimization, Mathematical programming, Multi-objective programming, Solution approaches.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 6573589 Understanding the Programming Techniques Using a Complex Case Study to Teach Advanced Object-Oriented Programming
Authors: M. Al-Jepoori, D. Bennett
Abstract:
Teaching Object-Oriented Programming (OOP) as part of a Computing-related university degree is a very difficult task; the road to ensuring that students are actually learning object oriented concepts is unclear, as students often find it difficult to understand the concept of objects and their behavior. This problem is especially obvious in advanced programming modules where Design Pattern and advanced programming features such as Multi-threading and animated GUI are introduced. Looking at the students’ performance at their final year on a university course, it was obvious that the level of students’ understanding of OOP varies to a high degree from one student to another. Students who aim at the production of Games do very well in the advanced programming module. However, the students’ assessment results of the last few years were relatively low; for example, in 2016-2017, the first quartile of marks were as low as 24.5 and the third quartile was 63.5. It is obvious that many students were not confident or competent enough in their programming skills. In this paper, the reasons behind poor performance in Advanced OOP modules are investigated, and a suggested practice for teaching OOP based on a complex case study is described and evaluated.
Keywords: Complex programming case study, design pattern, learning advanced programming, object oriented programming.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 783588 Applications of Genetic Programming in Data Mining
Authors: Saleh Mesbah Elkaffas, Ahmed A. Toony
Abstract:
This paper details the application of a genetic programming framework for induction of useful classification rules from a database of income statements, balance sheets, and cash flow statements for North American public companies. Potentially interesting classification rules are discovered. Anomalies in the discovery process merit further investigation of the application of genetic programming to the dataset for the problem domain.Keywords: Genetic programming, data mining classification rule.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1545587 An Idea About How to Teach OO-Programming to Students
Authors: Irene Rothe
Abstract:
Object-oriented programming is a wonderful way to make programming of huge real life tasks much easier than by using procedural languages. In order to teach those ideas to students, it is important to find a good task that shows the advantages of OOprogramming very naturally. This paper gives an example, the game Battleship, which seems to work excellent for teaching the OO ideas (using Java, [1], [2], [3], [4]). A three-step task is presented for how to teach OO-programming using just one example suitable to convey many of the OO ideas. Observations are given at the end and conclusions about how the whole teaching course worked out.Keywords: OO ideas, Java, teaching, engineering students.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1975586 Simplex Method for Solving Linear Programming Problems with Fuzzy Numbers
Authors: S. H. Nasseri, E. Ardil, A. Yazdani, R. Zaefarian
Abstract:
The fuzzy set theory has been applied in many fields, such as operations research, control theory, and management sciences, etc. In particular, an application of this theory in decision making problems is linear programming problems with fuzzy numbers. In this study, we present a new method for solving fuzzy number linear programming problems, by use of linear ranking function. In fact, our method is similar to simplex method that was used for solving linear programming problems in crisp environment before.Keywords: Fuzzy number linear programming, rankingfunction, simplex method.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 3526585 A Consideration of the Achievement of Productive Level Parallel Programming Skills
Authors: Tadayoshi Horita, Masakazu Akiba, Mina Terauchi, Tsuneo Kanno
Abstract:
This paper gives a consideration of the achievement of productive level parallel programming skills, based on the data of the graduation studies in the Polytechnic University of Japan. The data show that most students can achieve only parallel programming skills during the graduation study (about 600 to 700 hours), if the programming environment is limited to GPGPUs. However, the data also show that it is a very high level task that a student achieves productive level parallel programming skills during only the graduation study. In addition, it shows that the parallel programming environments for GPGPU, such as CUDA and OpenCL, may be more suitable for parallel computing education than other environments such as MPI on a cluster system and Cell.B.E. These results must be useful for the areas of not only software developments, but also hardware product developments using computer technologies.
Keywords: Parallel computing, programming education, GPU, GPGPU, CUDA, OpenCL, MPI, Cell.B.E.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1687584 Use of Linear Programming for Optimal Production in a Production Line in Saudi Food Co.
Authors: Qasim M. Kriri
Abstract:
Few Saudi Arabia production companies face financial profit issues until this moment. This work presents a linear integer programming model that solves a production problem of a Saudi Food Company in Saudi Arabia. An optimal solution to the above-mentioned problem is a Linear Programming solution. In this regard, the main purpose of this project is to maximize profit. Linear Programming Technique has been used to derive the maximum profit from production of natural juice at Saudi Food Co. The operations of production of the company were formulated and optimal results are found out by using Lindo Software that employed Sensitivity Analysis and Parametric linear programming in order develop Linear Programming. In addition, the parameter values are increased, then the values of the objective function will be increased.
Keywords: Parameter linear programming, objective function, sensitivity analysis, optimize profit.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 2908583 Dynamic Slope Scaling Procedure for Stochastic Integer Programming Problem
Authors: Takayuki Shiina
Abstract:
Mathematical programming has been applied to various problems. For many actual problems, the assumption that the parameters involved are deterministic known data is often unjustified. In such cases, these data contain uncertainty and are thus represented as random variables, since they represent information about the future. Decision-making under uncertainty involves potential risk. Stochastic programming is a commonly used method for optimization under uncertainty. A stochastic programming problem with recourse is referred to as a two-stage stochastic problem. In this study, we consider a stochastic programming problem with simple integer recourse in which the value of the recourse variable is restricted to a multiple of a nonnegative integer. The algorithm of a dynamic slope scaling procedure for solving this problem is developed by using a property of the expected recourse function. Numerical experiments demonstrate that the proposed algorithm is quite efficient. The stochastic programming model defined in this paper is quite useful for a variety of design and operational problems.Keywords: stochastic programming problem with recourse, simple integer recourse, dynamic slope scaling procedure
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1616582 Order Penetration Point Location using Fuzzy Quadratic Programming
Authors: Hamed Rafiei, Masoud Rabbani
Abstract:
This paper addresses one of the most important issues have been considered in hybrid MTS/MTO production environments. To cope with the problem, a mathematical programming model is applied from a tactical point of view. The model is converted to a fuzzy goal programming model, because a degree of uncertainty is involved in hybrid MTS/MTO context. Finally, application of the proposed model in an industrial center is reported and the results prove the validity of the model.Keywords: Fuzzy sets theory, Hybrid MTS/MTO, Order penetration point, Quadratic programming.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1599581 Production Plan and Technological Variants Optimization by Goal Programming Methods
Authors: Tunjo Perić, Franjo Bratić
Abstract:
In this paper, the goal programming methodology for solving multiple objective problem of the technological variants and production plan optimization has been applied. The optimization criteria are determined and the multiple objective linear programming model for solving a problem of the technological variants and production plan optimization is formed and solved. Then the obtained results are analysed. The obtained results point out to the possibility of efficient application of the goal programming methodology in solving the problem of the technological variants and production plan optimization. The paper points out on the advantages of the application of the goal programming methodology compare to the Surrogat Worth Trade-off method in solving this problem.Keywords: Goal programming, multi objective programming, production plan, SWT method, technological variants.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1918580 Implementation of a Serializer to Represent PHP Objects in the Extensible Markup Language
Authors: Lidia N. Hernández-Piña, Carlos R. Jaimez-González
Abstract:
Interoperability in distributed systems is an important feature that refers to the communication of two applications written in different programming languages. This paper presents a serializer and a de-serializer of PHP objects to and from XML, which is an independent library written in the PHP programming language. The XML generated by this serializer is independent of the programming language, and can be used by other existing Web Objects in XML (WOX) serializers and de-serializers, which allow interoperability with other object-oriented programming languages.Keywords: Interoperability, PHP object serialization, PHP to XML, web objects in XML, WOX.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 753579 Algorithmic Method for Efficient Cruise Program
Authors: Pelaez Verdet, Antonio, Loscertales Sanchez, Pilar
Abstract:
One of the mayor problems of programming a cruise circuit is to decide which destinations to include and which don-t. Thus a decision problem emerges, that might be solved using a linear and goal programming approach. The problem becomes more complex if several boats in the fleet must be programmed in a limited schedule, trying their capacity matches best a seasonal demand and also attempting to minimize the operation costs. Moreover, the programmer of the company should consider the time of the passenger as a limited asset, and would like to maximize its usage. The aim of this work is to design a method in which, using linear and goal programming techniques, a model to design circuits for the cruise company decision maker can achieve an optimal solution within the fleet schedule.Keywords: Itinerary design, cruise programming, goalprogramming, linear programming
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1650578 Stochastic Programming Model for Power Generation
Authors: Takayuki Shiina
Abstract:
We consider power system expansion planning under uncertainty. In our approach, integer programming and stochastic programming provide a basic framework. We develop a multistage stochastic programming model in which some of the variables are restricted to integer values. By utilizing the special property of the problem, called block separable recourse, the problem is transformed into a two-stage stochastic program with recourse. The electric power capacity expansion problem is reformulated as the problem with first stage integer variables and continuous second stage variables. The L-shaped algorithm to solve the problem is proposed.Keywords: electric power capacity expansion problem, integerprogramming, L-shaped method, stochastic programming
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1824577 Comparison of Composite Programming and Compromise Programming for Aircraft Selection Problem Using Multiple Criteria Decision Making Analysis Method
Authors: C. Ardil
Abstract:
In this paper, the comparison of composite programming and compromise programming for the aircraft selection problem is discussed using the multiple criteria decision analysis method. The decision making process requires the prior definition and fulfillment of certain factors, especially when it comes to complex areas such as aircraft selection problems. The proposed technique gives more efficient results by extending the composite programming and compromise programming, which are widely used in modeling multiple criteria decisions. The proposed model is applied to a practical decision problem for evaluating and selecting aircraft problems.A selection of aircraft was made based on the proposed approach developed in the field of multiple criteria decision making. The model presented is solved by using the following methods: composite programming, and compromise programming. The importance values of the weight coefficients of the criteria are calculated using the mean weight method. The evaluation and ranking of aircraft are carried out using the composite programming and compromise programming methods. In order to determine the stability of the model and the ability to apply the developed composite programming and compromise programming approach, the paper analyzes its sensitivity, which involves changing the value of the coefficient λ and q in the first part. The second part of the sensitivity analysis relates to the application of different multiple criteria decision making methods, composite programming and compromise programming. In addition, in the third part of the sensitivity analysis, the Spearman correlation coefficient of the ranks obtained was calculated which confirms the applicability of all the proposed approaches.
Keywords: composite programming, compromise programming, additive weighted model, multiplicative weighted model, multiple criteria decision making analysis, MCDMA, aircraft selection
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 695576 Representation of Coloured Petri Net in Abductive Logic Programming (CPN-LP) and Its Application in Modeling an Intelligent Agent
Authors: T. H. Fung
Abstract:
Coloured Petri net (CPN) has been widely adopted in various areas in Computer Science, including protocol specification, performance evaluation, distributed systems and coordination in multi-agent systems. It provides a graphical representation of a system and has a strong mathematical foundation for proving various properties. This paper proposes a novel representation of a coloured Petri net using an extension of logic programming called abductive logic programming (ALP), which is purely based on classical logic. Under such a representation, an implementation of a CPN could be directly obtained, in which every inference step could be treated as a kind of equivalence preserved transformation. We would describe how to implement a CPN under such a representation using common meta-programming techniques in Prolog. We call our framework CPN-LP and illustrate its applications in modeling an intelligent agent.
Keywords: Abduction, coloured petri net, intelligent agent, logic programming.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1504575 On Optimum Stratification
Authors: M. G. M. Khan, V. D. Prasad, D. K. Rao
Abstract:
In this manuscript, we discuss the problem of determining the optimum stratification of a study (or main) variable based on the auxiliary variable that follows a uniform distribution. If the stratification of survey variable is made using the auxiliary variable it may lead to substantial gains in precision of the estimates. This problem is formulated as a Nonlinear Programming Problem (NLPP), which turn out to multistage decision problem and is solved using dynamic programming technique.
Keywords: Auxiliary variable, Dynamic programming technique, Nonlinear programming problem, Optimum stratification, Uniform distribution.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 2112574 WhatsApp as Part of a Blended Learning Model to Help Programming Novices
Authors: Tlou J. Ramabu
Abstract:
Programming is one of the challenging subjects in the field of computing. In the higher education sphere, some programming novices’ performance, retention rate, and success rate are not improving. Most of the time, the problem is caused by the slow pace of learning, difficulty in grasping the syntax of the programming language and poor logical skills. More importantly, programming forms part of major subjects within the field of computing. As a result, specialized pedagogical methods and innovation are highly recommended. Little research has been done on the potential productivity of the WhatsApp platform as part of a blended learning model. In this article, the authors discuss the WhatsApp group as a part of blended learning model incorporated for a group of programming novices. We discuss possible administrative activities for productive utilisation of the WhatsApp group on the blended learning overview. The aim is to take advantage of the popularity of WhatsApp and the time students spend on it for their educational purpose. We believe that blended learning featuring a WhatsApp group may ease novices’ cognitive load and strengthen their foundational programming knowledge and skills. This is a work in progress as the proposed blended learning model with WhatsApp incorporated is yet to be implemented.
Keywords: Blended learning, higher education, WhatsApp, programming, novices, lecturers.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1177573 Adaptation of Iterative Methods to Solve Fuzzy Mathematical Programming Problems
Authors: Ricardo C. Silva, Luiza A. P. Cantao, Akebo Yamakami
Abstract:
Based on the fuzzy set theory this work develops two adaptations of iterative methods that solve mathematical programming problems with uncertainties in the objective function and in the set of constraints. The first one uses the approach proposed by Zimmermann to fuzzy linear programming problems as a basis and the second one obtains cut levels and later maximizes the membership function of fuzzy decision making using the bound search method. We outline similarities between the two iterative methods studied. Selected examples from the literature are presented to validate the efficiency of the methods addressed.Keywords: Fuzzy Theory, Nonlinear Optimization, Fuzzy Mathematics Programming.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1623572 Making Data Structures and Algorithms more Understandable by Programming Sudoku the Human Way
Authors: Roelien Goede
Abstract:
Data Structures and Algorithms is a module in most Computer Science or Information Technology curricula. It is one of the modules most students identify as being difficult. This paper demonstrates how programming a solution for Sudoku can make abstract concepts more concrete. The paper relates concepts of a typical Data Structures and Algorithms module to a step by step solution for Sudoku in a human type as opposed to a computer oriented solution.Keywords: Data Structures, Algorithms, Sudoku, ObjectOriented Programming, Programming Teaching, Education.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 3097571 A Proposed Framework for Visualization to Teach Computer Science
Authors: Muhammed Yousoof, Mohd Sapiyan, Khaja Kamaluddin
Abstract:
Computer programming is considered a very difficult course by many computer science students. The reasons for the difficulties include cognitive load involved in programming, different learning styles of students, instructional methodology and the choice of the programming languages. To reduce the difficulties the following have been tried: pair programming, program visualization, different learning styles etc. However, these efforts have produced limited success. This paper reviews the problem and proposes a framework to help students overcome the difficulties involved.Keywords: Cognitive Load, Instructional Models, LearningStyles, Program Visualization.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1455570 Jointly Learning Python Programming and Analytic Geometry
Authors: Cristina-Maria Păcurar
Abstract:
The paper presents an original Python-based application that outlines the advantages of combining some elementary notions of mathematics with the study of a programming language. The application support refers to some of the first lessons of analytic geometry, meaning conics and quadrics and their reduction to a standard form, as well as some related notions. The chosen programming language is Python, not only for its closer to an everyday language syntax – and therefore, enhanced readability – but also for its highly reusable code, which is of utmost importance for a mathematician that is accustomed to exploit already known and used problems to solve new ones. The purpose of this paper is, on one hand, to support the idea that one of the most appropriate means to initiate one into programming is throughout mathematics, and reciprocal, one of the most facile and handy ways to assimilate some basic knowledge in the study of mathematics is to apply them in a personal project. On the other hand, besides being a mean of learning both programming and analytic geometry, the application subject to this paper is itself a useful tool for it can be seen as an independent original Python package for analytic geometry.Keywords: Analytic geometry, conics, Python programming language, quadrics.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1583569 Evaluation of Introductory Programming Course for Non-Computer Science Majored Students
Authors: H. Varol
Abstract:
Although students’ interest level in pursuing Computer Science and related degrees are lower than previous decade, fundamentals of computers, specifically introductory level programming courses are either listed as core or elective courses for a number of non-computer science majors. Universities accommodate these non-computer science majored students either via creating separate sections of a class for them or simply offering mixed-body classroom solutions, in which both computer science and non-computer science students take the courses together. In this work, we demonstrated how we handle introductory level programming course at Sam Houston State University and also provide facts about our observations on students’ success during the coursework. Moreover, we provide suggestions and methodologies that are based on students’ major and skills to overcome the deficiencies of mix-body type of classes.
Keywords: Computer science, non-computer science major, programming, programming education.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1833568 EGCL: An Extended G-Code Language with Flow Control, Functions and Mnemonic Variables
Authors: Oscar E. Ruiz, S. Arroyave, J. F. Cardona
Abstract:
In the context of computer numerical control (CNC) and computer aided manufacturing (CAM), the capabilities of programming languages such as symbolic and intuitive programming, program portability and geometrical portfolio have special importance. They allow to save time and to avoid errors during part programming and permit code re-usage. Our updated literature review indicates that the current state of art presents voids in parametric programming, program portability and programming flexibility. In response to this situation, this article presents a compiler implementation for EGCL (Extended G-code Language), a new, enriched CNC programming language which allows the use of descriptive variable names, geometrical functions and flow-control statements (if-then-else, while). Our compiler produces low-level generic, elementary ISO-compliant Gcode, thus allowing for flexibility in the choice of the executing CNC machine and in portability. Our results show that readable variable names and flow control statements allow a simplified and intuitive part programming and permit re-usage of the programs. Future work includes allowing the programmer to define own functions in terms of EGCL, in contrast to the current status of having them as library built-in functions.
Keywords: CNC Programming, Compiler, G-code Language, Numerically Controlled Machine-Tools.
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 2622