From 85a9388124edd4b8e0266b8028bd2baed377ea39 Mon Sep 17 00:00:00 2001 From: Richard Sailer Date: Thu, 4 Feb 2016 17:54:09 +0100 Subject: [PATCH] initial commit --- diagramm | 22 +++++++++++++++ experimente/03-01-todays-date.pl | 14 +++++++++ experimente/loop_test/loop_test.class | Bin 0 -> 489 bytes experimente/loop_test/loop_test.java | 19 +++++++++++++ experimente/loop_test/perl5.pl | 13 +++++++++ experimente/loop_test/perl6.pl | 16 +++++++++++ experimente/loop_test/python3.4.py | 8 ++++++ perl6_vortrag.org | 39 ++++++++++++++++++++++++++ 8 files changed, 131 insertions(+) create mode 100644 diagramm create mode 100755 experimente/03-01-todays-date.pl create mode 100644 experimente/loop_test/loop_test.class create mode 100644 experimente/loop_test/loop_test.java create mode 100755 experimente/loop_test/perl5.pl create mode 100755 experimente/loop_test/perl6.pl create mode 100755 experimente/loop_test/python3.4.py create mode 100644 perl6_vortrag.org diff --git a/diagramm b/diagramm new file mode 100644 index 0000000..1ce6ecf --- /dev/null +++ b/diagramm @@ -0,0 +1,22 @@ + + + + + +------------------------------------+ + | your_code.pl6 | + | | + +------------------------------------+ + +------------------------------------+ + | | + | Rakudo (Compiler) | + | | + +------------------------------------+ + +------------------------------------+ + | MoarVM | + | | + +------------------------------------+ + +---------------++------------------+ + | || | + | CPU || OS | + | || | + +---------------++------------------+ diff --git a/experimente/03-01-todays-date.pl b/experimente/03-01-todays-date.pl new file mode 100755 index 0000000..e0ba122 --- /dev/null +++ b/experimente/03-01-todays-date.pl @@ -0,0 +1,14 @@ +#!/usr/bin/env perl6 +use v6; + +=begin pod +=TITLE Today's Date +=AUTHOR stmuk +You want year, month and day for today's date. +=end pod + +my $d = Date.today; + +say "{$d.year} {$d.month} {$d.day}"; + +# vim: expandtab shiftwidth=4 ft=perl6 diff --git a/experimente/loop_test/loop_test.class b/experimente/loop_test/loop_test.class new file mode 100644 index 0000000000000000000000000000000000000000..4802c7bbdffb91e219d3f2cbc34b924e2dc210f8 GIT binary patch literal 489 zcmYLFO-sW-5Pj2ZvPo?1TCKN&dh!dsNH2;PK@h5Ys0hJ>q&1Y(nn;a;N1^CRe}m}3 zvnN5sAK;JBf8Y-gQD>`YHg9I$WZv*L&z}!Z02VOpL!fAZ&aNbs#1O$*ijz27CRmeG zTLiI^?nZ=SEl#41qy0wI-3%KY?uh*`P6(ru+qHIh9L{&bq%~j9x^dE4G{QnX3!8iE z;X!|1qD1iP=~1^Ct;R+_*h$laoh&-c=8QfM8xFzy>k`!eUfpO%&5V%SUc(qHHf^39 zgH<3%t}2|#bf)h?cU%x$j^?u&_4xQ)o6#3uU~|4y{-YmQLI=Xuf$iwPkvfpB4qU}V zIf|*0iW|yR9!F34y7r^8SjDgz4ns0rhB8DMrux*g^txEClyWy1x2mEnlz)w(*|L}^ zi#gpBbo=$zvpBvQ&$+(miC^bccH3g#DF$$Y0!}%fGrvHID_|7j6R|{|U;2Pc?-+UK LoAKZ8?;89DjW=1f literal 0 HcmV?d00001 diff --git a/experimente/loop_test/loop_test.java b/experimente/loop_test/loop_test.java new file mode 100644 index 0000000..7d4983f --- /dev/null +++ b/experimente/loop_test/loop_test.java @@ -0,0 +1,19 @@ + +class loop_test +{ + public static void main(String[] args) + { + int[] array_1 = { 1,2,3,4,5,6,7,8,9,10 }; + int[] array_2 = { 0,0,0,0,0,0,0,0,0,0 }; + + for (int i = 1; i <= 100000; i++) + { + for (int j=0 ;j < 10 ; j++ ) + { + array_2[j] = array_1[j]; + } + + } + + } +} diff --git a/experimente/loop_test/perl5.pl b/experimente/loop_test/perl5.pl new file mode 100755 index 0000000..85d0e70 --- /dev/null +++ b/experimente/loop_test/perl5.pl @@ -0,0 +1,13 @@ +#!/usr/bin/env perl + +my @array_1 = (1,2,3,4,5,6,7,8,9,10); +my @array_2 = (0,0,0,0,0,0,0,0,0,0); + +for (1..100_000) +{ + for $i (0..9) + { + $array_2[$i] = $array_1[$i]; + } + +} diff --git a/experimente/loop_test/perl6.pl b/experimente/loop_test/perl6.pl new file mode 100755 index 0000000..ae6c87b --- /dev/null +++ b/experimente/loop_test/perl6.pl @@ -0,0 +1,16 @@ +#!/usr/bin/env perl6 +use v6; + +my @array_1 = (1,2,3,4,5,6,7,8,9,10); +my @array_2 = (0,0,0,0,0,0,0,0,0,0); + +for (1..100_000) -> $index +{ + for (1..10) -> $i + { + @array_2[$i] = @array_1[$i] + } + +} + +#say ( @array_2[3].type() ); diff --git a/experimente/loop_test/python3.4.py b/experimente/loop_test/python3.4.py new file mode 100755 index 0000000..6325b87 --- /dev/null +++ b/experimente/loop_test/python3.4.py @@ -0,0 +1,8 @@ +#!/usr/bin/env python3 + +array_1 = [ 1,2,3,4,5,6,7,8,9,10 ]; +array_2 = [ 0,0,0,0,0,0,0,0,0,0 ]; + +for index in range(100000): + for i in range(10): + array_2[i] = array_1[i] diff --git a/perl6_vortrag.org b/perl6_vortrag.org new file mode 100644 index 0000000..c780098 --- /dev/null +++ b/perl6_vortrag.org @@ -0,0 +1,39 @@ + +* Inhaltsübersicht(plan) (vorschlag) +** überblick und theorie (beispiele) +** Tools: +*** rakudo compiler (und rakudobrew) +*** panda paketsystem +*** emacs mode +*** in den files muss oben "use v6" stehen +** Typsystem +** sigil invarianz +** konkrete beispiele und Performance vergleiche (perl6, perl5, python3) +*** hier auch: typ von etwas auslesen (das komische introspection makro) +*** --optimize= verwneden +*** zeigen wie es besser wird durch type annotations +*** fun: java beispiel +** Die geilheit von compact arrays +** Übersicht modulsystem +** perl5 module in perl6 usen (und performance) + - ist vermutl nicht inperformant +** reguläre ausdrücke +** kurz: Objektorientierung? +*** (implizite getter und setter) +*** Es gibt exceptions (sie sind okay) +** Was weggelasen wurde + +*** auch: anschauen, läuft wirklich ein 2. prozess +*** etvl. gutes beispiel: xml parsing foo library +*** C Code in perl6 (nativecall) +*** Macros (lisp style) +*** spezifikation +*** junctions und autoparallelisierung +*** async support +*** gather +** Schlussgedanken: +*** Zur Größe/Komplexizität +*** Wird perl6 groß? (so groß wie perl5) + - perl6 will in eine domäne die schon voll ist + - stostrup zitat + - wird eher was schönes für enthusiasten