120 likes | 245 Views
PROGRAMMING LANGUAGE CREATION FOR CONTROLING INTERNAL TRANSPORT DEVICES. Józef Okulewicz Warsaw University of Techn ology , Faculty of Transport. Telematyka, 2007. HISTORY OF PROGRAMMING LANGUAGES. FORTRAN X 1954. 2004. www.oreilly.com. FORTRAN X 1954. 2006. Eric Levenez, July 2007
E N D
PROGRAMMING LANGUAGE CREATION FOR CONTROLING INTERNAL TRANSPORT DEVICES Józef OkulewiczWarsaw University of Technology, Faculty of Transport Telematyka, 2007
HISTORY OF PROGRAMMING LANGUAGES FORTRANX 1954 2004 www.oreilly.com
FORTRANX 1954 2006 Eric Levenez, July 2007 http://www.levenez.com/lang/history.html
John Backus is the father of Fortran, the language that frozecomputer architectures to this day. But he wrote in 1981: „While it is perhaps natural and inevitablethat languageslike Fortran and its successors should have developed out of the concept of the von Neumann computer as they did, the fact that such languages have dominated our thinking for twenty yearsis unfortunate. …because their long-standing familiaritywill make it hard for usto understand and adoptnew programming styles which one day will offerfar greater intellectual and computational power.” Richard P. Gabriel, Guy L. Steele Jr. :What Computers Can’t Do (And Why), Lisp and Symbolic Computation (LASC),vol. 1, n. 3-4.1986
A Boolean algebra is also called a Boolean lattice. The connection to lattices (special partially ordered sets) is suggested by the parallel between set inclusion, A ⊆ B, and ordering, a ≤ b. Consider the lattice of all subsets of {x,y,z}, ordered by set inclusion. This Boolean lattice is a partially ordered set in which, say, {x} ≤ {x,y}. Any two lattice elements, say p = {x,y} and q = {y,z}, have a leastupper bound, here {x,y,z}, and a greatest lower bound, here {y}. Suggestively, the least upper bound (or join or supremum) is denoted by the same symbol as logical OR, p∨q; and the greatest lower bound (or meet or infimum) is denoted by same symbol as logical AND, p∧q. WIKIPEDIAhttp://en.wikipedia.org/wiki/
LOGICAL LATICE OF 2 VARIABLES 11 10 01 accessibility space time SYSTEM NOTIONS STRUCTURE
LOGICAL LATICE OF 3 VARIABLES 111 110 101 011 100 010 001
SYSTEM NOTIONS STRUCTURE integrity accessibility transparency connectivity space time aim
<command> v*q* <instruction> ::= <AT> <command> <AS> <THIS> accessibility transparency connectivity nil+@ nil @# # ” for” ” if ” ” go ”
STRUCTURE OF THE TRANSPORT SYSTEM objects generating program instructions priority object conveyor segment segment controling
PROGRAM LINEAR STRUCTURE @A v2 #z1 @A v1 #z1 +20 :A @B #z1 @t1 v2 #z1 :t5 @t4 v1 #z1 @t5 v2 #z1 @B #z1 @B v2 #z1 @B v1 #z1 +20 :B @t1 v1 #z1 @t2 v2 #z1 @t2 v1 #z1 +50 :s1 @t5 v1 #z1 @s1 v2 #z1 @s1 v1 #z1 +10 @s1 #z1 @s1 #z2 @s1 #z3 @s2 #z2 @s2 #z3 @s3 #z3 @C v2 #z1 @C v1 #z1 +20 :C @B #z1 @t3 v2 #z1 @z1 v2 #z1 @z1 v1 #z1 +10 @t4 v2 #z1 @t3 v1 #z1 @w1 @w2 @w3 @t5 @t6 @s1 @s2 @s3 @C @t7 @z1 @z2 @z3 @b3 @* ► #w1 #z1/0.1;z2/0.4;z3 +R(40,120) #w2 #z1/0.1;z2/0.5;z3 +R(60,140) #w3 #z1/0.1;z2/0.6;z3 +E(100)