ebooksgratis.com

See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Mesa (programming language) - Wikipedia, the free encyclopedia

Mesa (programming language)

From Wikipedia, the free encyclopedia

Mesa

Mesa is a programming language developed at Xerox PARC. The name Mesa was a pun, referring to its design intent to be a "high-level" programming language.

Mesa was used for the software for the Xerox Alto (one of the first personal computers with a graphical user interface) and the later Xerox Star workstations. Later, the GlobalView desktop environment was written in Mesa. Thus, trained Mesa programmers from Xerox were well versed in the fundamentals of GUIs, networked environments and the other advances Xerox contributed to the field of Computer Science.

Mesa is an ALGOL-like language. designed around the concept of modular programming and stressing separation between the (programmer's) interface of a programming module and its implementation. In Mesa, all keywords are capitalized. Mesa has a rich exception facility with four types of exceptions, and includes Monitors for synchronization. Mesa was the first language to implement monitor BROADCAST, which was created at Xerox by the developers of the Pilot operating system.

Mesa incorporated significant advances in both the design and the implementation of programming languages. It was a strongly-typed programming language with type-checking across module boundaries, but with enough flexibility in its type system that heap allocators could be written in Mesa (see Geschke et al 1977). It also supported incremental compilation and source-level debugging of one machine from another via Ethernet. Indeed, any Mesa developer could debug the operating systems on Xerox 8010 and 6085 machines, which were also coded in Mesa.

Before that time Mesa was run on Xerox's micro-coded workstations such as the Alto, the 8010 (Dandelion) and the smaller and faster 6085 (Daybreak). A secondary development environment, called the Xerox Development Environment (XDE) allowed developers to debug both the operating system Pilot as well as ViewPoint GUI applications using a world swap mechanism. This allowed the entire "state" of the world to be swapped out, and allowed low level system crashes which paralyzed the whole system to be debugged. The Pilot/Mesa world in later releases moved away from the world swap view when the micro-coded machines were phased out in favor of SPARC workstations and Intel PC's running a Mesa PrincOps emulator for the basic hardware instruction set.

Mesa was taught via the Mesa Programming Course that took people through the wide range of technology Xerox had available at the time and ended with the programmer writing a "hack", a workable program designed to be useful. An actual example of such a hack is the BWSMagnifier, which was written in 1988 and allowed people to magnify sections of the workstation screen as defined by a resizable window and a changeable magnification factor.

Contents

[edit] Descendants

[edit] Notes

  1. ^ "Modula-2 and Oberon", N. Wirth, Proc. 3rd Conf. History of Programming Languages, San Diego, 2007.
  2. ^ "Java Language Specification", J. Gosling., B. Joy, G. Steele, G. Brachda, The Java Language Specification, 2nd Edition

[edit] See also

[edit] References

[edit] External links

Languages


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -