90 likes | 206 Views
Problem Solving Environments: Expectations and Reality. Richard Fateman Computer Science Division University of California, Berkeley. What do the names mean to us?. Accelerated, Strategic, Grand Challenge, High Performance Environments Old wine in new bottles? -- Not really. Reality Check.
E N D
Problem Solving Environments: Expectations and Reality Richard Fateman Computer Science Division University of California, Berkeley
What do the names mean to us? • Accelerated, Strategic, Grand Challenge, High Performance Environments • Old wine in new bottles? -- Not really R. Fateman/ PSEs
Reality Check • It is hard to use computers, still • CS tends to be driven by technology not application • User communities define PSE funding today • Moore’s law provides a low-effort quick fix to many problems: why change approach? • Yet, we believe • There are unexploited major opportunities to vastly improve productivity. R. Fateman/ PSEs
Times Change • Economic forces: Commodity computing replaces supercomputing • Market focus: Java? GUI commercial software? • Technological forces: • standards: winner takes all • ubiquitous networking • Expertise is distributed, sparse • Knowledge is everywhere. R. Fateman/ PSEs
What’s a PSE? • Broadly defined to include • General (Gallopoulos, Houstis , Rice) • Meta: tools - subroutines, interfaces • Meta2: tool builders (app languages, buses, CORBA, html generator...) • Meta3 : system languages (Java, Perl, Tcl, Lisp) • Specific / custom built • MS Powerpoint, Traveller’s aid, Purchasing advisor, Electronic Notebook, Airframe CAD, Biodynamics framework, Wood structures • Stake in the ground principle • Easier to “sell” R. Fateman/ PSEs
Technology I (+ and -) • Java is good because although it's usually interpreted and is slow it • Runs really fast on someone else's machine, • so we hear. • Java is good because although it is object-oriented, it • Runs really fast on someone else's machine, • so we hear. R. Fateman/ PSEs
Technology II • Java is good because it is secure, • and a program written in pure Java is easy to debug, has a • well-defined semantics, and • Runs really fast on someone else's machine, • so we hear. • Java does automatic storage allocation, but that's ok because times are different now...although garbage collection was funny in lisp, GC in Java • Runs really fast on someone else's machine, • so we hear. • Java is really truly machine independent, provided all incorrect implementations are erased and the correct JVM downloaded. • Then everyone's Java will compute the same thing, so we hear... R. Fateman/ PSEs
What about Computer Algebra? • The right level of discourse for science • richer than Fortran, C++, etc. • Communicating about Math over networks, stored in digital form, etc. • Extensible: library perspective on knowledge • Framework for programming or meta-programming R. Fateman/ PSEs