1 / 26

The TASKADE Programming Language

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. Taskade Usage.

smithdiane
Download Presentation

The TASKADE Programming Language

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The TASKADEProgramming 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

  2. TASKADE When life gives you tasks ...

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

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

  5. Scheduling with Taskade

  6. Language Keywords • Accessible • Intuitive • Flexible • Productive • Multi-Platform

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

  8. Language Keywords • Accessible • Intuitive • Flexible • Productive • 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.

  9. Language Keywords • Accessible • Intuitive • Flexible • Productive • 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.

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

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

  12. Language Example 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 04/16/2012@11:00, class_name "PLT"); homework networks_pset( duration 1:00, priority 3, deadline 03/29/2012@01:10, class_name "Networks"); exercise jog( duration 1:00, priority 7, deadline 03/25/2012@11:00, gym "Great Outdoors"); exercise lift(duration 1:00, priority 7, deadline 03/25/2012@11:00, gym "Columbia");

  13. 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 05/13/2012@22:00);

  14. Development Environment

  15. Translator Architecture

  16. From source.ts to java code...

  17. Runtime Architecture

  18. Runtime Scheduling Engine

  19. Testing Method

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

  21. White-Box Testing Method - Trees • Focus on testing critical functions

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

  23. Live Demo!!!

More Related