Download presentation
Presentation is loading. Please wait.
1
Polynomial Manipulation Language
COMS4115 PLT Project Presentation December 9, 2003 Team Members: Melinda Agyekum, Shezan Baig, Hari Kurup, Subadhra Sridharan
2
Presentation Overview
Introduction Background The PML Language Language Features Functions & Capabilities Architecture Design Testing Conclusion Future Work Team Experience Questions & Answers
3
Background on Polynomials
What is A Polynomial? Mathematical expression written as the sum of products of numbers and variables Practical Applications Missile trajectory Effectiveness of a Drug Weather Forecasting
4
Introduction to PML What is PML? Benefits of PML?
Symbolic Polynomial Manipulation Language Benefits of PML? Provides Flexible Manipulation of Polynomials Algorithmic Customization Applicable in a Variety of Fields
5
Introduction to PML Parts of a Polynomial Coefficient Int or Float
Ex. 4, 4.3, -100, 14.23, -24.5 Variable Character ( Single or Multiple ) Upper Case Representation Ex. X, XY, RST, V Degree Variable Raised to a Power Ex. X^2, T^4Y^3
6
Introduction to PML Term Any Combination of
Coefficient , Variable, Degree Ex. 3X, 4^3Y, XY, 3, -4X^3 Polynomial Sum of Terms Ex. 3X+ Y, 5Y^3-4Z, 3Z, -4X^3
7
PML Data Types Int, Float, Char, Term, Poly TemrArray CharArray
An array which contains the terms of a polynomial CharArray Stores all variables of a multivariate polynomial Identifiers All variable represented in lower case
8
Language Features Arrays Loops & Breaks: termarray and chararray
Grows and shrinks dynamically. No 'new' or 'malloc' required. length() --> returns array length Loops & Breaks: 'while' and 'do-while' loops are supported Body must be enclosed within a begin-end block 'break' statement to jump out of a loop.
9
Language Features Functions Begins with the keyword 'func'
func <return type> foo ( poly p ) Body enclosed within 'begin – end ' block. Can be overloaded No prototyping required A 'main' function is necessary In-built Functions Ex. degree(), coeff(), polyterm()
10
Language Features Modularity Scope
Program can consist of multiple files One file must contain 'main()' Re-usability Scope Global Local External Scope
11
Architecture Source Code PMLRuntimeEnvironment Lexer (PML.g)
PMLCompilationUnit PMLFunction PMLVariable PMLStatement PMLExpression PMLMath Lexer (PML.g) Parser (PML.g) Walker (PMLWalker.g) Executer (Java Classes) - prints output
12
PML Example
13
Testing Unit Testing Integrated Testing Regression Testing
Test for parser, walker, backend classes Integrated Testing Test complete flow once integrated Regression Testing Make sure new features don't introduce bugs
14
Conclusion Future Work Team Experience Implementing
Logarithms, Trigonometric Functions, Polynomial Division with Symbolic Math Team Experience Effective Communication Set Early Deadlines and Incremental Goals Parallel Work and Division of Labor CVS Repository
15
Thanks for Your Attention!
Any Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.