mixing worlds - complang.tuwien.ac.at€¦ · mixing worlds stackbasierte sprachen, gruppe 100...

6
Mixing Worlds Stackbasierte Sprachen, Gruppe 100 18.12.2009 Wolfgang Bumiller (0725517) Peter Frühwirt (0725673) Martin Perner (0725782)

Upload: others

Post on 05-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mixing Worlds - complang.tuwien.ac.at€¦ · Mixing Worlds Stackbasierte Sprachen, Gruppe 100 18.12.2009 Wolfgang Bumiller (0725517) Peter Frühwirt (0725673) Martin Perner (0725782)

Mixing WorldsStackbasierte Sprachen, Gruppe 100

18.12.2009

Wolfgang Bumiller (0725517)

Peter Frühwirt (0725673)

Martin Perner (0725782)

Page 2: Mixing Worlds - complang.tuwien.ac.at€¦ · Mixing Worlds Stackbasierte Sprachen, Gruppe 100 18.12.2009 Wolfgang Bumiller (0725517) Peter Frühwirt (0725673) Martin Perner (0725782)

Postscript eats with Forks

A pacman implementation with Forth.

th

Page 3: Mixing Worlds - complang.tuwien.ac.at€¦ · Mixing Worlds Stackbasierte Sprachen, Gruppe 100 18.12.2009 Wolfgang Bumiller (0725517) Peter Frühwirt (0725673) Martin Perner (0725782)

Architecture

• Postscript 3D rendering engine

• Logic over Forth

• Interprocesscommunication using FIFO

• Distributed system

• Simple artificial intelligence agent

• Integrated sound (mplayer connection)

Page 4: Mixing Worlds - complang.tuwien.ac.at€¦ · Mixing Worlds Stackbasierte Sprachen, Gruppe 100 18.12.2009 Wolfgang Bumiller (0725517) Peter Frühwirt (0725673) Martin Perner (0725782)

Architecture

user input

Input

gforth pacman.fs

game logic

cat engine.eps

rendering

while(true)

echo „frame“

sleep 0.1

Output mplayer ghostscript

Page 5: Mixing Worlds - complang.tuwien.ac.at€¦ · Mixing Worlds Stackbasierte Sprachen, Gruppe 100 18.12.2009 Wolfgang Bumiller (0725517) Peter Frühwirt (0725673) Martin Perner (0725782)

Language highlights

• Execution tokens (Game logic, Forth)

• Dynamic scoping (Rendering engine, Postscript)

• Document structuring

Page 6: Mixing Worlds - complang.tuwien.ac.at€¦ · Mixing Worlds Stackbasierte Sprachen, Gruppe 100 18.12.2009 Wolfgang Bumiller (0725517) Peter Frühwirt (0725673) Martin Perner (0725782)

Livedemo