Today. Generic Language g Technology (2IS15)
|
|
- Rosalyn Hart
- 8 years ago
- Views:
Transcription
1 Today Generic Lanuae Technoloy (2IS15) Domain Specific Lanuae Desin Prof.dr. Mark van den Brand Tools for software analysis and manipulation Prorammin lanuae independent (parametric) The story is from the IDE/PE perspective First a eneral overview, then introduction to specific technoloies / Faculteit Wiskunde en Informatica PAGE 1 What What... is a lanuae?... is a Prorammin Environment (PE)?... is Generic Lanuae Technoloy (GLT)?... is a Proram?... is a Prorammin Environment?... is a lanuae?... is a Prorammin Environment (PE)?... is Generic Lanuae Technoloy (GLT)?... is a Proram?... is a Prorammin Environment? / Faculteit Wiskunde en Informatica PAGE 2 / Faculteit Wiskunde en Informatica PAGE 3
2 What is a lanuae? Aspects of a Lanuae A prorammin lanuae Assembler, Cobol, PL/I, C, C++, Java, C#,... AD Domain-Specific ifi Lanuae (DSL) SQL for queries BibTex for entries in a biblioraphy Euris for railroad emplacement safety Risla for financial products WebDSL for web paes Syntax Textual/raphical form of declarations, statements, etc. Static Semantics Scope and type of variables, conversions, formal/actual parameters, etc. Queries: who calls who, who uses variable X,... Dynamic Semantics Proram execution Toolin / Faculteit Wiskunde en Informatica PAGE 4 / Faculteit Wiskunde en Informatica PAGE 5 What What is a Prorammin Environment... is a lanuae?... is a Prorammin Environment (PE)?... is Generic Lanuae Technoloy (GLT)?... is a Proram?... is a Prorammin Environment? A system that supports the development of prorams in order to: Increase productivity: Uniform user-interface (UI); interated tools Increased interaction; early error detection Increase quality: Interated version manaement Interated testin Interated documentation / Faculteit Wiskunde en Informatica PAGE 6 / Faculteit Wiskunde en Informatica PAGE 7
3 Classical PE Interated PE (IPE) Command line oriented: Text editor only xemacs or vim cc or javac Prorams stored in files Complete recompilation after each chane Late error detection Debuin requires recompilation with different options Interated Development Environment (IDE) Specialized, syntax-directed, editor for each lanuae Common intermediate representation for all tools Incremental processin (reusin results of previous calculations) One GUI Early error detection Syntax errors Undeclared variables Type errors in expressions / Faculteit Wiskunde en Informatica PAGE 8 / Faculteit Wiskunde en Informatica PAGE 9 Functionality of an IDE Examples of IDEs Syntax-directed editin/hihlihtin, pretty printin Typecheckin Restructurin Versionin Executin, debuin, profilin Testin Documentin Eclipse: Interated Development Environment (IDE) for Java Plu-in mechanism for extensions MS Visual Studio: msdn.microsoft.com/vstudio t di IDE for various lanuaes VB, C, C++, C# / Faculteit Wiskunde en Informatica PAGE 10 / Faculteit Wiskunde en Informatica PAGE 11
4 What What is Generic Lanuae Technoloy?... is a lanuae?... is a Prorammin Environment (PE)?... is Generic Lanuae Technoloy (GLT)?... is a Proram?... is a Prorammin Environment? Goal: Enable the easy creation of lanuae-specific tools and prorammin environments Separate lanuae-specific aspects from eneric aspects Approach: Find ood, reusable, e, solutions o s for eneric e aspects Find ways to define lanuae-specific aspects Find ways to enerate tools from lanuae-specific definitions iti / Faculteit Wiskunde en Informatica PAGE 12 / Faculteit Wiskunde en Informatica PAGE 13 Generic Aspects Definin Lanuae Aspects User-interface Text editor Proram storae Documentation Syntax Lexical and context-free rammar Static semantics Ad hoc? Dynamic semantics Ad hoc? / Faculteit Wiskunde en Informatica PAGE 14 / Faculteit Wiskunde en Informatica PAGE 15
5 From Definition to Tool Examples of Generic IDEs Syntax Scanner and parser eneration Static semantics??? Dynamic semantics??? Eclipse IMP: A framework for Generic Interated Development Environments (IDE) The oal of the Eclipse IMP is to provide an extensible platform for the development of hih-quality, fully-featured, lanuae-specific IDE's in Eclipse Spoofax/IMP: Rascal: / Faculteit Wiskunde en Informatica PAGE 16 / Faculteit Wiskunde en Informatica PAGE 17 What What is Proram?... is a lanuae?... is a Prorammin Environment (PE)?... is Generic Lanuae Technoloy (GLT)?... is a Proram?... is a Prorammin Environment? Definition of problem P Generated proram that solves P / Faculteit Wiskunde en Informatica PAGE 18 / Faculteit Wiskunde en Informatica PAGE 19
6 Examples of Proram s (1) Examples of Proram s (2) Reular expression matchin: Problem: reconize reular expressions R 1,..., R n in a text Generates: finite automaton Web sites Problem: create uniform web site for set of HTML paes Generate: HTML code with standard layout and site map Generate biblioraphic entries; author = {Brand, {M.G.J. van den} and Jon, {H.A. de} and P. Klint and P. Olivier}, title = {{E}fficient {A}nnotated {T}erms}, journal = {Software, Practice \& Experience}, year = {2000}, paes = { }, volume = {30}} enerates: M.G.J. van den Brand, H.A. de Jon, P. Klint and P.A. Olivier, Efficient Annotated Terms, Software, Practice & Experience, 30(3): , 2000 / Faculteit Wiskunde en Informatica PAGE 20 / Faculteit Wiskunde en Informatica PAGE 21 Examples of Proram Genators (3) Proram s (summary) Compiler: Input: Java proram Generates: JVM code C preprocessor: Input C proram with #include, #define directives Generates C proram with directives replaced Problem description is specific and is usually written in a Domain-Specific Lanuae (DSL) contains eneric alorithms and information about application domain. A PG isolates a problem description from its implementation easier to switch to other implementation methods. Improvements/optimizations in the enerator are ood for all enerated prorams. / Faculteit Wiskunde en Informatica PAGE 22 / Faculteit Wiskunde en Informatica PAGE 23
7 What... is a lanuae?... is a Prorammin Environment (PE)?... is Generic Lanuae Technoloy (GLT)?... is a Proram?... is a Prorammin Environment? What is Prorammin Environment (PEG)? A PEG is a proram enerator applied in the domain of prorammin environments Input: description of a desired lanuae L Output: (parts of) a dedicated L environment Advantaes: Uniform interface across different lanuaes contains eneric, re-usable, implementation knowlede Disadvantae: some UI optimizations are hard / Faculteit Wiskunde en Informatica PAGE 24 / Faculteit Wiskunde en Informatica PAGE 25 Prorammin Environment PEG = collection of proram enerators Formal definition of lanuae L Definition of L syntax Definition of L static semantics Definition of L dynamic semantics Parser Typechecker Evaluator Dedicated environment for editin, manipulatin and executin L prorams L-parser L-typechecker L-evaluator Interated L-prorammin p environment / Faculteit Wiskunde en Informatica PAGE 26 / Faculteit Wiskunde en Informatica PAGE 27
8 Prorammin Environment Summary PEG allows definition of (small) (domain specific) lanuaes PEG = lanuae workbench Evolution from traditional PE via IDE to lanuae workbenches How to describe the syntax and semantics of a (small) (domain specific) lanuae Questions so far? / Faculteit Wiskunde en Informatica PAGE 28 / Faculteit Wiskunde en Informatica PAGE 29
Organization of DSLE part. Overview of DSLE. Model driven software engineering. Engineering. Tooling. Topics:
Organization of DSLE part Domain Specific Language Engineering Tooling Eclipse plus EMF Xtext, Xtend, Xpand, QVTo and ATL Prof.dr. Mark van den Brand GLT 2010/11 Topics: Meta-modeling Model transformations
More informationPrinciples of integrated software development environments. Learning Objectives. Context: Software Process (e.g. USDP or RUP)
Principles of integrated software development environments Wolfgang Emmerich Professor of Distributed Computing University College London http://sse.cs.ucl.ac.uk Learning Objectives Be able to define the
More informationUNIQUE Identity Access Management
Manaement UNIQUE Manaement The IAM solution for your company with more control and security when accessin your corporate network. UNIQUE Manaement enables secure access control of all remote desktop structures
More informationSOFTWARE TESTING TRAINING COURSES CONTENTS
SOFTWARE TESTING TRAINING COURSES CONTENTS 1 Unit I Description Objectves Duration Contents Software Testing Fundamentals and Best Practices This training course will give basic understanding on software
More informationUNIQUE Business for SaaS
UNIQUE The solution for your business with more control and security when accessin your Cloud network. UNIQUE enables secure access control of all remote desktop structures and web services in the Cloud
More informationWHITE PAPER. Peter Drucker. intentsoft.com 2014, Intentional Software Corporation
We know now that the source of wealth is something specifically human: knowledge. If we apply knowledge to tasks we already know how to do, we call it productivity. If we apply knowledge to tasks that
More informationStatic Analyzers. Context. Learning Objectives
Static Analyzers Wolfgang Emmerich Professor of Distributed Computing University College London http://sse.cs.ucl.ac.uk Context Requirements Inception Elaboration Construction Transition Analysis Design
More informationHow To Write A Report In Xbarl
XBRL Generation, as easy as a database. Christelle BERNHARD - christelle.bernhard@addactis.com Consultant & Deputy Product Manaer of ADDACTIS Pillar3 Copyriht 2015 ADDACTIS Worldwide. All Rihts Reserved
More informationCSCI 3136 Principles of Programming Languages
CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University Winter 2013 CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University
More information2. Advance Certificate Course in Information Technology
Introduction: 2. Advance Certificate Course in Information Technology In the modern world, information is power. Acquiring information, storing, updating, processing, sharing, distributing etc. are essentials
More informationProgrammers rejoice: QML makes business people understand. Qt Developer Days 2014 Hinrich Specht 2. September 2014 Folie 1
Programmers rejoice: QML makes business people understand Qt Developer Days 2014 Hinrich Specht 2. September 2014 Folie 1 About me My company What I do at work Where I live What is it all about? Agenda
More informationSkills for Employment Investment Project (SEIP)
Skills for Employment Investment Project (SEIP) Standards/ Curriculum Format for Web Application Development Using DOT Net Course Duration: Three Months 1 Course Structure and Requirements Course Title:
More informationON AN APPROACH TO STATEMENT OF SQL QUESTIONS IN THE NATURAL LANGUAGE FOR CYBER2 KNOWLEDGE DEMONSTRATION AND ASSESSMENT SYSTEM
216 International Journal "Information Technoloies & Knowlede" Volume 9, Number 3, 2015 ON AN APPROACH TO STATEMENT OF SQ QUESTIONS IN THE NATURA ANGUAGE FOR CYBER2 KNOWEDGE DEMONSTRATION AND ASSESSMENT
More informationTopics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives
Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,
More information1 Introduction. 2 An Interpreter. 2.1 Handling Source Code
1 Introduction The purpose of this assignment is to write an interpreter for a small subset of the Lisp programming language. The interpreter should be able to perform simple arithmetic and comparisons
More informationVragen. Software development model. Software development model. Software development model
Vragen Noem de belangrijkste activiteiten in een software engineeringsproject Welke vormen van onderhoud kan men onderscheiden? Karakteriseer het waterval model Waterfall model Document oriented Suited
More informationProgramming Languages
Programming Languages Programming languages bridge the gap between people and machines; for that matter, they also bridge the gap among people who would like to share algorithms in a way that immediately
More informationTextual Modeling Languages
Textual Modeling Languages Slides 4-31 and 38-40 of this lecture are reused from the Model Engineering course at TU Vienna with the kind permission of Prof. Gerti Kappel (head of the Business Informatics
More informationHow to make the computer understand? Lecture 15: Putting it all together. Example (Output assembly code) Example (input program) Anatomy of a Computer
How to make the computer understand? Fall 2005 Lecture 15: Putting it all together From parsing to code generation Write a program using a programming language Microprocessors talk in assembly language
More informationProgramming Languages
Programming Languages In the beginning To use a computer, you needed to know how to program it. Today People no longer need to know how to program in order to use the computer. To see how this was accomplished,
More informationQuestions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements
Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements
More informationSave thousands with the complete e-document distribution solution
Albany econnect Save thousands with the complete e-document distribution solution The UK s leadin provider of electronic document distribution software Since 1989, Albany Software has been developin software
More informationProgramming with the Microsoft.NET Framework Using Microsoft Visual Studio 2005 (VB)
Programming with the Microsoft.NET Framework Using Microsoft Visual Studio 2005 (VB) Course Number: 4995 Length: 5 Day(s) Certification Exam There are no exams associated with this course. Course Overview
More informationWhat is Automotive Software Engineering? What is Automotive Software Engineering? What is Automotive Software Engineering?
Process models: Capability Maturity Model Integration (CMMI) Software Process Improvement and Capability Determination (SPICE) V-Model Standards: MISRA-C standard AUTOSAR Configuration management Product
More informationSoftware Development Kit
Open EMS Suite by Nokia Software Development Kit Functional Overview Version 1.3 Nokia Siemens Networks 1 (21) Software Development Kit The information in this document is subject to change without notice
More information<Insert Picture Here> What's New in NetBeans IDE 7.2
Slide 1 What's New in NetBeans IDE 7.2 The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated
More informationCompiler and Language Processing Tools
Compiler and Language Processing Tools Summer Term 2011 Prof. Dr. Arnd Poetzsch-Heffter Software Technology Group TU Kaiserslautern Prof. Dr. Arnd Poetzsch-Heffter Compilers 1 Outline 1. Language Processing
More informationA Short Introduction to Writing Java Code. Zoltán Majó
A Short Introduction to Writing Java Code Zoltán Majó Outline Simple Application: Hello World Compiling Programs Manually Using an IDE Useful Resources Outline Simple Application: Hello World Compiling
More informationINTRODUCTION TO JAVA PROGRAMMING LANGUAGE
INTRODUCTION TO JAVA PROGRAMMING LANGUAGE Today Java programming language is one of the most popular programming language which is used in critical applications like stock market trading system on BSE,
More informationDescription. Benefits. Requirements. Selection process. Duration
PHP development Be part of a team that implements a web application displaying products from different affiliate platforms using their available API s. The application is developed using PhalconPHP framework
More information1/20/2016 INTRODUCTION
INTRODUCTION 1 Programming languages have common concepts that are seen in all languages This course will discuss and illustrate these common concepts: Syntax Names Types Semantics Memory Management We
More informationAn Organisational Perspective on Collaborative Business Processes
An Oranisational Perspective on Collaborative Business Processes Xiaohui Zhao, Chenfei Liu, and Yun Yan CICEC - Centre for Internet Computin and E-Commerce Faculty of Information and Communication Technoloies
More informationAn Automatic Reversible Transformation from Composite to Visitor in Java
An Automatic Reversible Transformation from Composite to Visitor in Java Akram To cite this version: Akram. An Automatic Reversible Transformation from Composite to Visitor in Java. CIEL 2012, P. Collet,
More informationcreating a text-based editor for eclipse
creating a text-based editor for eclipse By Elwin Ho Contact author at: Elwin.Ho@hp.com June 2003 2003 HEWLETT-PACKARD COMPANY TABLE OF CONTENTS Purpose...3 Overview of the Eclipse Workbench...4 Creating
More informationDesign with Reuse. Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1
Design with Reuse Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1 Objectives To explain the benefits of software reuse and some reuse
More informationDangers and Benefits of Using a DSL
Centrum voor Wiskunde en Informatica REPORTRAPPORT Little Languages: Little Maintenance? A. van Deursen, P. Klint Software Engineering (SEN) SEN-R9704 March 30, 1997 Report SEN-R9704 ISSN 1386-369X CWI
More informationLesson 06: Basics of Software Development (W02D2
Lesson 06: Basics of Software Development (W02D2) Balboa High School Michael Ferraro Lesson 06: Basics of Software Development (W02D2 Do Now 1. What is the main reason why flash
More informationSAP HANA Core Data Services (CDS) Reference
PUBLIC SAP HANA Platform SPS 12 Document Version: 1.0 2016-05-11 Content 1 Getting Started with Core Data Services....4 1.1 Developing Native SAP HANA Applications....5 1.2 Roles and Permissions....7 1.3
More informationLanguage-Driven, Technology-Enhanced Instructional Systems Design
Language-Driven, Technology-Enhanced Instructional s Design Iván Martínez-Ortiz, José-Luis Sierra, Baltasar Fernández-Manjón Fac. Informática. Universidad Complutense de Madrid C/ Prof. José García Santesmases
More informationCASE workbenches. . Software tools to support specific process phases. Objectives. Chapter 26. Chapter 26 CASE Workbenches
Chapter 26 Chapter 26 CASE Workbenches Learning Objective. Software tools to support specific process phases Frederick T Sheldon Assistant Professor of Computer Science Washington State University From
More informationStatic Program Visualization Within The ASF+SDF Meta Environment. Master Software Engineering Qais Ali Supervisor: Prof.dr. P.
Static Program Visualization Within The ASF+SDF Meta Environment Master Software Engineering Qais Ali Supervisor: Prof.dr. P. Klint Centrum voor Wiskunde en Informatica University of Amsterdam Amsterdam,
More informationChapter 13: Program Development and Programming Languages
Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented
More informationA FRAMEWORK FOR MONITORING PROGRAM EXECUTION
A FRAMEWORK FOR MONITORING PROGRAM EXECUTION Clinton Lewis Jeffery TR 93-21 July 30, 1993 Department of Computer Science The University of Arizona Tucson, Arizona 85721 This work was supported in part
More informationAnalysis and Transformation of Source Code by Parsing and Rewriting
Analysis and Transformation of Source Code by Parsing and Rewriting ACADEMISCH PROEFSCHRIFT ter verkrijging van de graad van doctor aan de Universiteit van Amsterdam op gezag van de Rector Magnificus prof.
More informationXFlash A Web Application Design Framework with Model-Driven Methodology
International Journal of u- and e- Service, Science and Technology 47 XFlash A Web Application Design Framework with Model-Driven Methodology Ronnie Cheung Hong Kong Polytechnic University, Hong Kong SAR,
More informationThe ADOxx Metamodelling Platform Workshop "Methods as Plug-Ins for Meta-Modelling" in conjunction with "Modellierung 2010", Klagenfurt
The ADOxx Metamodelling Platform Workshop "Methods as Plug-Ins for Meta-Modelling" in conjunction with "Modellierung 2010", Klagenfurt Dr. Harald Kühn 24.03.2010 Agenda 1 Overview 2 Deployment and Integration
More informationHow to Improve Database Connectivity With the Data Tools Platform. John Graham (Sybase Data Tooling) Brian Payton (IBM Information Management)
How to Improve Database Connectivity With the Data Tools Platform John Graham (Sybase Data Tooling) Brian Payton (IBM Information Management) 1 Agenda DTP Overview Creating a Driver Template Creating a
More informationComponent visualization methods for large legacy software in C/C++
Annales Mathematicae et Informaticae 44 (2015) pp. 23 33 http://ami.ektf.hu Component visualization methods for large legacy software in C/C++ Máté Cserép a, Dániel Krupp b a Eötvös Loránd University mcserep@caesar.elte.hu
More informationIntegrating Prose as First-Class Citizens with Models and Code
Integrating Prose as First-Class Citizens with Models and Code Markus Voelter independent/itemis, voelter@acm.org Abstract. In programming and modeling we strive to express structures and behaviors as
More informationMcGraw-Hill The McGraw-Hill Companies, Inc., 20 1. 01 0
1.1 McGraw-Hill The McGraw-Hill Companies, Inc., 2000 Objectives: To describe the evolution of programming languages from machine language to high-level languages. To understand how a program in a high-level
More informationRun-time Variability Issues in Software Product Lines
Run-time Variability Issues in Software Product Lines Alexandre Bragança 1 and Ricardo J. Machado 2 1 Dep. I&D, I2S Informática Sistemas e Serviços SA, Porto, Portugal, alexandre.braganca@i2s.pt 2 Dep.
More informationYouTrack MPS case study
YouTrack MPS case study A case study of JetBrains YouTrack use of MPS Valeria Adrianova, Maxim Mazin, Václav Pech What is YouTrack YouTrack is an innovative, web-based, keyboard-centric issue and project
More informationPG DAC. Syllabus. Content. Eligibility Criteria
PG DAC Eligibility Criteria Qualification 1. Engg Graduate in any discipline or equivalent (eg. BE/B.Tech/4 years B. Sc Engg./ AMIE/ AIETE / DoEACC B level etc). 2. PG in Engg. Sciences (eg. MCA / M.Sc.
More informationShort notes on webpage programming languages
Short notes on webpage programming languages What is HTML? HTML is a language for describing web pages. HTML stands for Hyper Text Markup Language HTML is a markup language A markup language is a set of
More informationObject-Oriented Software Specification in Programming Language Design and Implementation
Object-Oriented Software Specification in Programming Language Design and Implementation Barrett R. Bryant and Viswanathan Vaidyanathan Department of Computer and Information Sciences University of Alabama
More informationSPSS WebApp Framework
SPSS WebApp Framework Solve business problems with customized, Web-based, analytical applications powered by SPSS Solve business problems with SPSS WebApp applications Predictin the best course of action
More informationNexawebホワイトペーパー. Developing with Nexaweb ~ Nexaweb to Improve Development Productivity and Maintainability
Nexawebホワイトペーパー Developing with Nexaweb ~ Nexaweb to Improve Development Productivity and Maintainability Nexaweb Technologies, Inc. February 2012 Overview Many companies today are creating rich internet
More informationMbeddr and Software Documentation
Integrating Prose as First-Class Citizens with Models and Code Markus Voelter independent/itemis, voelter@acm.org Abstract. In programming and modeling we strive to express structures and behaviors as
More informationDIPLOMADO DE JAVA - OCA
DIPLOMADO DE JAVA - OCA TABLA DE CONTENIDO INTRODUCCION... 3 ESTRUCTURA DEL DIPLOMADO... 4 Nivel I:... 4 Fundamentals of the Java Programming Language Java SE 7... 4 Introducing the Java Technology...
More informationTake full advantage of IBM s IDEs for end- to- end mobile development
Take full advantage of IBM s IDEs for end- to- end mobile development ABSTRACT Mobile development with Rational Application Developer 8.5, Rational Software Architect 8.5, Rational Developer for zenterprise
More informationA Database Re-engineering Workbench
A Database Re-engineering Workbench A project proposal by Anmol Sharma Abstract Data is not always available in the best form for processing, it is often provided in poor format or in a poor quality data
More informationSAS Add in to MS Office A Tutorial Angela Hall, Zencos Consulting, Cary, NC
Paper CS-053 SAS Add in to MS Office A Tutorial Angela Hall, Zencos Consulting, Cary, NC ABSTRACT Business folks use Excel and have no desire to learn SAS Enterprise Guide? MS PowerPoint presentations
More informationIntroduction to programming
Unit 1 Introduction to programming Summary Architecture of a computer Programming languages Program = objects + operations First Java program Writing, compiling, and executing a program Program errors
More informationDeveloping Web Services with Eclipse and Open Source. Claire Rogers Developer Resources and Partner Enablement, HP February, 2004
Developing Web Services with Eclipse and Open Source Claire Rogers Developer Resources and Partner Enablement, HP February, 2004 Introduction! Many companies investigating the use of web services! Cost
More informationChapter 1. Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705. CS-4337 Organization of Programming Languages
Chapter 1 CS-4337 Organization of Programming Languages Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705 Chapter 1 Topics Reasons for Studying Concepts of Programming
More informationArtificial Intelligence. Class: 3 rd
Artificial Intelligence Class: 3 rd Teaching scheme: 4 hours lecture credits: Course description: This subject covers the fundamentals of Artificial Intelligence including programming in logic, knowledge
More informationModern PL/SQL Code Checking and Dependency Analysis
Modern PL/SQL Code Checking and Dependency Analysis Philipp Salvisberg Senior Principal Consultant BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MUNICH STUTTGART VIENNA
More informationICAPRG409A Develop mobile applications
ICAPRG409A Develop mobile applications Release: 1 ICAPRG409A Develop mobile applications Modification History Release Release 1 Comments This Unit first released with ICA11 Information and Communications
More informationA Visual Language Based System for the Efficient Management of the Software Development Process.
A Visual Language Based System for the Efficient Management of the Software Development Process. G. COSTAGLIOLA, G. POLESE, G. TORTORA and P. D AMBROSIO * Dipartimento di Informatica ed Applicazioni, Università
More informationThe Projman Application: Allowing SAS to Manage Your Project Jon Patton, Miami University, Oxford, Ohio
1 Abstract Paper TU13 The Projman Application: Allowin SAS to Manae Your Project Jon Patton, Miami University, Oxford, Ohio SAS/OR software has four major procedures that can be used to manae your projects.
More informationTutorial 5: Developing Java applications
Tutorial 5: Developing Java applications p. 1 Tutorial 5: Developing Java applications Georgios Gousios gousiosg@aueb.gr Department of Management Science and Technology Athens University of Economics and
More informationParsing Technology and its role in Legacy Modernization. A Metaware White Paper
Parsing Technology and its role in Legacy Modernization A Metaware White Paper 1 INTRODUCTION In the two last decades there has been an explosion of interest in software tools that can automate key tasks
More informationDynamic Web Programming BUILDING WEB APPLICATIONS USING ASP.NET, AJAX AND JAVASCRIPT
Dynamic Web Programming BUILDING WEB APPLICATIONS USING ASP.NET, AJAX AND JAVASCRIPT AGENDA 1. Introduction to Web Applications and ASP.net 1.1 History of Web Development 1.2 Basic ASP.net processing (ASP
More informationCSE 373: Data Structure & Algorithms Lecture 25: Programming Languages. Nicki Dell Spring 2014
CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages Nicki Dell Spring 2014 What is a Programming Language? A set of symbols and associated tools that translate (if necessary) collections
More informationCedalion A Language Oriented Programming Language (Extended Abstract)
Cedalion A Language Oriented Programming Language (Extended Abstract) David H. Lorenz Boaz Rosenan The Open University of Israel Abstract Implementations of language oriented programming (LOP) are typically
More informationScoping (Readings 7.1,7.4,7.6) Parameter passing methods (7.5) Building symbol tables (7.6)
Semantic Analysis Scoping (Readings 7.1,7.4,7.6) Static Dynamic Parameter passing methods (7.5) Building symbol tables (7.6) How to use them to find multiply-declared and undeclared variables Type checking
More informationReport of the case study in Sistemi Distribuiti A simple Java RMI application
Report of the case study in Sistemi Distribuiti A simple Java RMI application Academic year 2012/13 Vessio Gennaro Marzulli Giovanni Abstract In the ambit of distributed systems a key-role is played by
More informationCSE 308. Coding Conventions. Reference
CSE 308 Coding Conventions Reference Java Coding Conventions googlestyleguide.googlecode.com/svn/trunk/javaguide.html Java Naming Conventions www.ibm.com/developerworks/library/ws-tipnamingconv.html 2
More informationRefactoring (in) Eclipse
Refactoring (in) Eclipse J. van den Bos Master s thesis August 15, 2008 Master Software Engineering Universiteit van Amsterdam Thesis Supervisor: Prof. Dr. P. Klint Internship Supervisor: Drs. H.J.S. Basten
More informationDEVELOPMENT OF AN ANALYSIS AND REPORTING TOOL FOR ORACLE FORMS SOURCE CODES
DEVELOPMENT OF AN ANALYSIS AND REPORTING TOOL FOR ORACLE FORMS SOURCE CODES by Çağatay YILDIRIM June, 2008 İZMİR CONTENTS Page PROJECT EXAMINATION RESULT FORM...ii ACKNOWLEDGEMENTS...iii ABSTRACT... iv
More informationPULP Scription: A DSL for Mobile HTML5 Game Applications
PULP Scription: A DSL for Mobile HTML5 Game Applications Mathias Funk and Matthias Rauterberg Department of Industrial Design, Eindhoven University of Technology, Den Dolech 2, 5600MB Eindhoven, The Netherlands
More informationKeys 2 Work / PA ementoring / PA Career Guides / My Career Journey / Financial Literacy 101
www.smartfutures.or online collee and career readiness solutions for pennsylvania educators Keys 2 Work / PA ementorin / PA Career Guides / My Career Journey / Financial Literacy 101 our mission: To assure
More informationJos Warmer, Independent jos.warmer@openmodeling.nl www.openmodeling.nl
Domain Specific Languages for Business Users Jos Warmer, Independent jos.warmer@openmodeling.nl www.openmodeling.nl Sheet 2 Background Experience Business DSLs Insurance Product Modeling (structure) Pattern
More informationGUI and Web Programming
GUI and Web Programming CSE 403 (based on a lecture by James Fogarty) Event-based programming Sequential Programs Interacting with the user 1. Program takes control 2. Program does something 3. Program
More informationUnit Testing for Domain-Specific Languages
Unit Testing for Domain-Specific Languages 1 Hui Wu, 1 Jeff Gray and 2 Marjan Mernik 1 Department of Computer and Information Sciences, University of Alabama at Birmingham Birmingham, Alabama USA {wuh,gray}@cis.uab.edu
More informationORACLE APPLICATION EXPRESS 5.0
ORACLE APPLICATION EXPRESS 5.0 Key Features Fully supported nocost feature of the Oracle Database Simple 2-Tier Architecture Develop desktop and mobile applications 100% Browserbased Development and Runtime
More informationTSM ASSESSMENT PROTOCOL
TSM ASSESSMENT PROTOCOL A Tool for Assessin External Outreach Performance Introduction Launched in 2004, Towards Sustainable Minin (TSM) is an initiative of the Minin Association of Canada desined to enhance
More informationData Sheet VISUAL COBOL 2.2.1 WHAT S NEW? COBOL JVM. Java Application Servers. Web Tools Platform PERFORMANCE. Web Services and JSP Tutorials
Visual COBOL is the industry leading solution for COBOL application development and deployment on Windows, Unix and Linux systems. It combines best in class development tooling within Eclipse and Visual
More informationSemantic Web Services for e-learning: Engineering and Technology Domain
Web s for e-learning: Engineering and Technology Domain Krupali Shah and Jayant Gadge Abstract E learning has gained its importance over the traditional classroom learning techniques in past few decades.
More informationCommercial Database Software Development- A review.
Commercial Database Software Development- A review. A database software has wide applications. A database software is used in almost all the organizations. Over 15 years many tools have been developed
More informationCommuniqué 4. Standardized Global Content Management. Designed for World s Leading Enterprises. Industry Leading Products & Platform
Communiqué 4 Standardized Communiqué 4 - fully implementing the JCR (JSR 170) Content Repository Standard, managing digital business information, applications and processes through the web. Communiqué
More informationSAP Technical Brief SAP NetWeaver. Increase IT Productivity with ABAP Development Tools for SAP NetWeaver
SAP Technical Brief SAP NetWeaver Objectives Increase IT Productivity with ABAP Development Tools for SAP NetWeaver The drive for better, more efficient IT The drive for better, more efficient IT Your
More informationAn Approach for the Systematic Development of Domain-Specific Languages
An Approach for the Systematic Development of Domain-Specific Languages Mark Strembeck 1, Uwe Zdun 2 1 Institute of Information Systems, New Media Lab Vienna University of Economics and BA, Austria mark.strembeck@wu-wien.ac.at
More informationCATALOG OF CLASSES IT and Technical Courses
CATALOG OF CLASSES IT and Technical Courses Table of Contents CATALOG OF CLASSES... 1 Microsoft... 1 10135BC... 1 Configuring, Managing and Troubleshooting Microsoft Exchange Server 2010 Service Pack 2...
More informationThe Java Series. Java Essentials I What is Java? Basic Language Constructs. Java Essentials I. What is Java?. Basic Language Constructs Slide 1
The Java Series Java Essentials I What is Java? Basic Language Constructs Slide 1 What is Java? A general purpose Object Oriented programming language. Created by Sun Microsystems. It s a general purpose
More informationT14 RUMatricula Phase II. Section 1 Metaphor and requirements
Section 1 Metaphor and requirements RUMatricula is a system that aims at replacing current UPRM terminal-based course selection software with a web-based and mobile-friendly alternative that is simple
More informationCase Studies of Running the Platform. NetBeans UML Servlet JSP GlassFish EJB
September Case Studies of Running the Platform NetBeans UML Servlet JSP GlassFish EJB In this project we display in the browser the Hello World, Everyone! message created in the session bean with servlets
More informationSafety & Environmental Assurance Centre
International Commission on Microbioloical Specifications for Foods (ICMSF) Outline Workin with Risk-based Metrics in the Food Industry LEON GORRIS Risk-based food safety manaement Risk Analysis & Microbioloical
More informationJiří Šebek, Karel Richta. Department of Computer Science and Engineering. 121 35 Praha 2, Czech Republic {sebekji1,richta}@fel.cvut.
Aspect-oriented User User Interface Interface Design Design for Android for Android Applications Applications 1 1 Jiří Šebek, Karel Richta Jiří Šebek, Karel Richta Department of Computer Science and Engineering
More informationApplication Development With Data Studio
Application Development With Data Studio Tony Leung IBM February 4, 2013 13087 leungtk@us.ibm.com Insert Custom Session QR if Desired. Developing Application Application Development Stored Procedures Java
More information