Title: Earlin Lutzelutz@bellatlantic.net610-692-4054
1What online mathematical content could be useful
for commercial software development?
- Earlin Lutz
- 1335 Jackson Lane
- West Chester PA 19380
- 610-692-4054
- elutz_at_bellatlantic.net
Earlin Lutz Bentley Systems Inc 685 Stockton
Dr Exton PA 19341 610-458-2734 earlin.lutz_at_bentle
y.com
2GF Experts Quiz Question What is this?
/
sqrt
1
3The programming connection
4Multiple Targets are the norm
C functions
java methods
jni wrapper
VB wrapper
C methods
C wrapper
5A Special property of Greens Functions....
(Fill in the most complex expression from your
paper)
Complex Expressions ?Big Benefit for automated
processing
6Outline
- Review common practice for transfering
mathematical content to commercial software - Common practice is repetitive, unreliable
- programmer centric
- Envision highly automated process
- Structured primary content in web library
- programmer change from doer to specifier of
implementation - Full benefit requires changes at every phase of
overall process - academic providers
- programmer
- management
7Programmer-Centric Software Workflow
8Programmer Centric Systemdoes not identify ....
- Repetitive Problem
- Modest library of 3D point, 3x3 matrix, affine 3d
transform functions can easily have 100 functions
of comparable complexity - Highly structured primary material
- Highly structured output of programming process
- Programming languages are precisely defined
- Good SW organizations have precise conventions
for - data structures
- argument list ordering
- parameter passing
- local variable creation
9Data Centric Software Workflow
Library of Pure Mathematical Expressions
Prog. Langauge
local style rules
Query
Structured Mathematical Expressions
Translation Spec
Translation Tool
source
No human intervention !!
10Automated Code Generation ..
- Widely used for isolated steps of SW development
- Huge benefits in ideal situation
- Widely distrusted
- Stepping back to one deeper level of abstraction
is difficult concept - Most programmers like tangible feel of producing
CODE - Management distrust. Programmers are expected
to produce code directly, not indirectly.
11Current Online-Library Content
- Journal paper/tech report -- pdf
- hard to extract structured mathematical content
- Source code
- Useful, but requires extensive manual (I.e. error
prone) analysis manipulation to adapt to new
language, coding standards, OS - all or nothing
12Improved online Content
- Computer-readable
- Data intended for further processing, not for
visual inspection - Tree structured
- Any equation must be present as tree structure
- Granularity
- Anything as small as an equation within a paper
must be addressable - Structural properties application independent
- like XML concepts of well formed, validated files
13Data Language Candidates
- XML derivatives
- Widely recognized lexical/syntax rules
- slick editing presentation tools available (??)
- visually ugly
- lisp-like
- Use lisp form as data structure, not programming
language - maple/mathematica
- widespread experience as language for expression
entry rather than execution - need to identify subset that is meaningful
outside proprietary SW
14What (who!) has to change
- Online library needs to contain mathematical
content with highly annotated tree structures
suitable for query and downstream processing - Primary creators (academics in many disciplines)
need to write into the library at this level of
granularity - wont happen until their research process uses
the same data!! - Programmers need to redefine their jobs from
write code to write queries and transformation
specs - Management needs to understand that
transformation specs are real programming.
15Conclusions
- Programmer Centric SW development places
programmer between paper-based/paper-like
publications and working code - In Data Centric model,
- Primary data form must be machine-friendly
- Transfer of data from Primary Library to
Production code should be - highly automated
- controlled by programmer
- not carried out by programmer
- Lesson from history Programming practice changes
in response to successful demonstrations (bottom
up), not in response to great plans (top down)