The TASKADE Programming Language by TEAM 9 Andrey Dimitrov - Project manager Christopher Riedered - Language Guru Avner May - System Architect Joyce Kim.

Slides:



Advertisements
Similar presentations
Operating Systems Components of OS
Advertisements

 Chapter 6: Activity Planning – Part 1 NET481: Project Management Afnan Albahli.
Object Oriented Programming in Java George Mason University Fall 2011
Introduction to a Programming Environment
Compilers and Interpreters. Translation to machine language Every high level language needs to be translated to machine code There are different ways.
Course: Introduction to Computers
L EC. 01: J AVA FUNDAMENTALS Fall Java Programming.
Chapter 13 & 14 Software Testing Strategies and Techniques
DIRAC API DIRAC Project. Overview  DIRAC API  Why APIs are important?  Why advanced users prefer APIs?  How it is done?  What is local mode what.
Activity 1 - WBs 5 mins Go online and spend a moment trying to find out the difference between: HIGH LEVEL programming languages and LOW LEVEL programming.
Computer Programming-1 CSC 111 Chapter 1 : Introduction.
Introducing Java.
LAYING OUT THE FOUNDATIONS. OUTLINE Analyze the project from a technical point of view Analyze and choose the architecture for your application Decide.
Table-Driven Acceptance Testing Mario Aquino Principal Software Engineer Object Computing, Inc.
Testing. What is Testing? Definition: exercising a program under controlled conditions and verifying the results Purpose is to detect program defects.
THE HOG LANGUAGE A scripting MapReduce language. Jason Halpern Testing/Validation Samuel Messing Project Manager Benjamin Rapaport System Architect Kurry.
Introduction to Visual Basic. Quick Links Windows Application Programming Event-Driven Application Becoming familiar with VB Control Objects Saving and.
Boardr The Racing Board Game Creation Language. Project Manager: Eric Leung Language and Tools Guru: Shensi Ding System Architect: Seong Jin Park System.
PYTHON. Python is a high-level, interpreted, interactive and object- oriented scripting language. Python was designed to be highly readable which uses.
CSC 338: Compiler design and implementation
Sep 12, 2007Sprenkle - CS1111 Objectives Review  Linux  Why programming languages? Compiled vs. Interpreted Languages Programming in Python  Data types.
1 Module Objective & Outline Module Objective: After completing this Module, you will be able to, appreciate java as a programming language, write java.
University of Houston-Clear Lake Proprietary© 1997 Evolution of Programming Languages Basic cycle of improvement –Experience software difficulties –Theory.
Java Programming, Second Edition Chapter One Creating Your First Java Program.
COP 3330 Notes 1/12. Today's topics Downloading Java and Eclipse Hello World Basic control structures Basic I/O Strings.
Computer Science 101 Introduction to Programming.
JCreator Tonga Institute of Higher Education. Programming with the command line and notepad is difficult. DOS disadvantages  User Interface (UI) is not.
BUILD ON THE POLYGLOT COMPILER FRAMEWORK MIHAL BRUMBULLI 7th Workshop “SEERE” Montenegro-Risan 9-14 September 2007 SimJ Programming Language.
Homework #1 J. H. Wang Oct. 5, 2015.
CS 153: Concepts of Compiler Design August 26 Class Meeting Department of Computer Science San Jose State University Fall 2015 Instructor: Ron Mak
Graphene So what’s the most efficient way to spam all your Facebook friends? Team Adith Tekur (System Architect/Tester) Neha Rastogi (System Integrator)
Cross Language Clone Analysis Team 2 October 13, 2010.
OCR GCSE Computing © Hodder Education 2013 Slide 1 OCR GCSE Computing Python programming 1: Introduction.
1 Compiler Construction (CS-636) Muhammad Bilal Bashir UIIT, Rawalpindi.
Dharmen Mehta (Project Manager) Nimai Buch (Language Guru) Yash Parikh (System Architect) Amol Joshi (System Integrator) Chaitanya Korgaonkar (Verifier.
PHP vs. Python. Similarities are interpreted, high level languages with dynamic typing are Open Source are supported by large developer communities are.
CSI 1340 Introduction to Computer Science II Chapter 1 Software Engineering Principles.
Software Development Introduction
The single most important skill for a computer programmer is problem solving Problem solving means the ability to formulate problems, think creatively.
BY: JAKE TENBERG & CHELSEA SHIPP PROJECT REVIEW: JGIBBERISH.
Text TCS INTERNAL Oracle PL/SQL – Introduction. TCS INTERNAL PL SQL Introduction PLSQL means Procedural Language extension of SQL. PLSQL is a database.
Winter 2016CISC101 - Prof. McLeod1 CISC101 Reminders Quiz 3 next week. See next slide. Both versions of assignment 3 are posted. Due today.
1 1 1 Introduction to Java. 2 History of Java Java – Originally for intelligent consumer-electronic devices – Then used for creating Web pages with dynamic.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
 It is a pure oops language and a high level language.  It was developed at sun microsystems by James Gosling.
Programming Language Basics. What is a Programming Language? “A computer, human-created language used to write instructions for a computer.” “An artificial.
Aryeh Tasher Brian Ramos Qijun Zhong Michael Li Tian Zhang.
Sung-Dong Kim, Dept. of Computer Engineering, Hansung University Java - Introduction.
M&CML: A Monitoring & Control Specification Modeling Language
Chapter 5: Preparing C Programs
Advanced Computer Systems
Development Environment
GC101 Introduction to computer and program
Lecture 1: Introduction to JAVA
Java programming lecture one
TRANSLATORS AND IDEs Key Revision Points.
Cracking the Coding Interview
Copyright Catherine M. Burns
Programming Vocabulary.
Introduction to Python
Escape sequences: Practice using the escape sequences on the code below to see what happens. Try this next code to help you understand the last two sequences.
Introduction CSC 111.
CMPE 152: Compiler Design August 23 Class Meeting
CMP 131 Introduction to Computer Programming
Programming Language Basics
PROGRAMMING FUNDAMENTALS Lecture # 03. Programming Language A Programming language used to write computer programs. Its mean of communication between.
CMPE 152: Compiler Design January 29 Class Meeting
Programming Language Translation
Programming language translators
Faculty of Computer Science and Information System
Presentation transcript:

The TASKADE Programming Language by TEAM 9 Andrey Dimitrov - Project manager Christopher Riedered - Language Guru Avner May - System Architect Joyce Kim - System Inegrator Taury Di Cioccio - System Tester

TASKADE When life gives you tasks...

Conventional scheduling applications are context specific. TAKSADE allows the user to program their own context is a simple and intuitive language. Taskade Usage

Students and Professionals can use TASKADE to schedule work, study, and everything in between Taskade Usage

Scheduling with Taskade

o Accessible o Intuitive o Flexible o Productive o Multi-Platform Language Keywords

o Accessible o Intuitive o Flexible o Productive o Multi-Platform A syntax with clear, English keywords. For example: if, else, end, Number Language Keywords

o Accessible o Intuitive o Flexible o Productive o Multi-Platform Appearance similar to other languages like Matlab, Python, SQL. Few and simple programming constructs make sure new users can't get into too much trouble. Language Keywords

o Accessible o Intuitive o Flexible o Productive o Multi-Platform Scheduling commands with variables allow for a variety of scheduling options. Input files give users the ability to schedule multiple sets of tasks the same way. Language Keywords

o Accessible o Intuitive o Flexible o Productive o Multi-Platform Easy to quickly create a schedule. Taskade handles tasks large and small. Language Keywords

o Accessible o Intuitive o Flexible o Productive o Multi-Platform Taskade compiles to Java bytecode, making it easily runnable from any computer with a JVM. Language Keywords

MyScheduler.ts: TaskType homework(String class_name); TaskType exercise(String gym_name); FINISH homework AT LEAST 1:00 BEFORE START exercise; March23.ti: homework make_parser(duration 3:00, priority 9, deadline class_name "PLT"); homework networks_pset( duration 1:00, priority 3, deadline class_name "Networks"); exercise jog( duration 1:00, priority 7, deadline gym "Great Outdoors"); exercise lift(duration 1:00, priority 7, deadline gym "Columbia"); Language Example

OptionScheduler.ts: Input String mode; TaskType homework(String class_name); TaskType television(); if mode is "relax": START television BEFORE START homework; else FINISH homework AT LEAST 3:00 BEFORE START television; end NowThatOurCompilerIsComplete.ti: // Woohoo! Done writing the compiler! String mode = "relax"; television GameOfThrones(duration 1:00, priority 9, deadline Language Example

Development Environment

Translator Architecture

From source.ts to java code...

Runtime Architecture

Runtime Scheduling Engine

Testing Method

Explore protected methods Confirm basic functionality White-Box Testing Method - Node

Focus on testing critical functions White-Box Testing Method - Trees

"Ideal" schedules to verify consistency "Impossible" schedules to see what happens Focus on helpful error output Black-Box Testing: Simulation

Live Demo!!!