![Page 1: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/1.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
The future of dynamic languages
Gabor Szabo [email protected]
Perl Training Israel www.pti.co.il Raz Information System www.raz.co.il
![Page 2: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/2.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Dynamic Languages
● PHP● Tcl● Python● Ruby ● Perl ● ...
![Page 3: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/3.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
PHP
● First version in 1995● Web development
– Low end – virtually everything
– Mid-range
– High-end (e.g. Lufthansa)
● Serious competitor of JSP and ASP● ...
![Page 4: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/4.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Tcl● Since 1988● Mostly know as Tcl/Tk● Controlling external devices
– Networking devices
– Electronic devices
– Satellites
● GUI Applications (through Tk)● AOL server – America Online● ...
![Page 5: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/5.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Python
● Web application programming● GUI based applications● “A dynamic version of Java”● Some very large applications built on Python● Google uses it...
![Page 6: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/6.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Ruby● New (first release in 1995)● Object Oriented in every aspect (even data)● Small (footprint, community)● Very attractive
![Page 7: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/7.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Perl
● Perl 1.0 1987 – UNIX shell replacement● Perl 5.0 1995 – Object oriented web development● Perl 5.8 2002
– Web Application development
– QA Automation
– Database management
– System administration (both Linux and Windows)
– ...
![Page 8: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/8.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Perl
![Page 9: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/9.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Perl
![Page 10: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/10.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Perl 6
● Perl 5 has a problem– it is getting old
– it is hard to add new feature to the language
● Perl 6– major redesign of the language
– new implementation of the language
– Larry Wall, Damian Conway and a small team...
![Page 11: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/11.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Common features
● High-level● Dynamically typed● Run on lots of platforms● Open Source● (see also ActiveState White Paper)
![Page 12: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/12.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
List of Platforms for Perl
● Linux● Free/Net/OpenBSD● Solaris, AIX, HP,...● Novell NetWare● BeOS
● Windows● Machintosh● VMS● OS/400, OS/390● more...
![Page 13: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/13.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
High-level and dynamically typed
● Flexible● Expressive● Concentrate on business problems rather than
how to overcome the language
![Page 14: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/14.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Open Source
● Free (as in free speech)● FREE!! (as in free beer)● Business friendly licenses● Community centered● ...
![Page 15: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/15.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Who is using them ?
● Financial sector (Banks, Insurance)● Telecommunication (Phone, ISP)● Industry● Hi-tech companies (Checkpoint, Mercury, Aduva)● Government● ...
![Page 16: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/16.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Why do they use these languages ?
● Faster development– Save money
● Huge community, easy to get support– Save money
● Many Platforms, easy migration– Save money
● They suit the task
![Page 17: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/17.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
So what is the problem ?
● Many languages● Lots of overlapping problems● Perl has drivers for nearly every database● Why rewrite in PHP or Ruby ?● Perl has over 7000 free extension (libraries)● Let others use them from Python or Ruby...
![Page 18: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/18.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
![Page 19: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/19.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Parrot is Virtual Machine● Comparable to
– JVM● A number of platforms● But Java focused
– .NET CLR● A number of languages● But Windows only
– Mono● Open Source implementation of .NET● Still, focusing C# and similar languages
![Page 20: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/20.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Parrot VM
● Open Source● Platform Independent● Multi-language● Focusing Dynamic languages, but...
![Page 21: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/21.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
![Page 22: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/22.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Parrot VM - Platforms
● It will replace perl– It has to run everywhere where perl runs
● But it can be small– It can run on mobile phones
● So all the platforms of Perl and more...
![Page 23: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/23.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Parrot VM – Multi-language (status)
● Perl 6
● Perl 5
– Ponie● Python
– Pirate● Ruby
● PHP
● Tcl...
● Code for JVM
– Java● Code for .NET CLR
– C#
– VB.NET
– ...
![Page 24: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/24.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
When ?
● Parrot 0.1.1 is available since October 2004● It works,
– good for experiments
– not for production
– needs further development...
![Page 25: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/25.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
So what now ?
● Perl 5● Python● PHP● Tcl● Ruby● ...
![Page 26: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/26.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
Thank You
Gabor Szabo [email protected]
Perl Training Israel www.pti.co.il Raz Information System www.raz.co.il
![Page 27: Gabor Szabo gabor@pti.co.il Perl Training Israel ...Gabor Szabo – Perl Training Israel – - Raz Information Systems - So what is the problem ? Many languages Lots of overlapping](https://reader030.vdocuments.net/reader030/viewer/2022040610/5ed159594008b975c855768b/html5/thumbnails/27.jpg)
Gabor Szabo – Perl Training Israel – www.pti.co.il - Raz Information Systems - www.raz.co.il
References
● Parrot: http://www.parrotcode.org/
● Parrot in Detail: http://www.parrotcode.org/talks/ParrotInDetail2.pdf
● Perl: http://www.perl.org/
● Ruby: http://www.ruby-lang.org/en/
● Python: http://www.python.org/
● PHP: http://www.php.net/
● ActiveState White Paper: http://www.activestate.com/Company/NewsRoom/whitepapers.plex
● The Parrot Logo: http://wardley.org/computers/parrot/logo.html
● Pirate: http://pirate.tangentcode.com/
● Ponie http://www.poniecode.org/