gabor szabo [email protected] perl training israel ...gabor szabo – perl training israel – - raz...

27
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

Upload: others

Post on 27-May-2020

11 views

Category:

Documents


0 download

TRANSCRIPT

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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/