diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2019-10-22 13:59:18 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-10-22 13:59:18 +0100 |
| commit | 30fed5a7c458a29ca7ff935ee47ee8109f9c004f (patch) | |
| tree | 5af10d17e014e9d33c510ac528fba61f33895340 | |
| parent | f3a8abb2fac24653e9b8f477343337cc9aac97b3 (diff) | |
| parent | 0cc93e0a59b0d142225034d57c05bb4caffa28be (diff) | |
| download | perlweeklychallenge-club-30fed5a7c458a29ca7ff935ee47ee8109f9c004f.tar.gz perlweeklychallenge-club-30fed5a7c458a29ca7ff935ee47ee8109f9c004f.tar.bz2 perlweeklychallenge-club-30fed5a7c458a29ca7ff935ee47ee8109f9c004f.zip | |
Merge pull request #825 from Aearnus/master
Tyler's solutions for #31
| -rw-r--r-- | challenge-031/tyler-limkemann/README | 1 | ||||
| -rw-r--r-- | challenge-031/tyler-limkemann/ch-1.p6 | 2 | ||||
| -rw-r--r-- | challenge-031/tyler-limkemann/ch-2.p6 | 18 |
3 files changed, 21 insertions, 0 deletions
diff --git a/challenge-031/tyler-limkemann/README b/challenge-031/tyler-limkemann/README new file mode 100644 index 0000000000..c03a7a0168 --- /dev/null +++ b/challenge-031/tyler-limkemann/README @@ -0,0 +1 @@ +Solutions by Tyler Limkemann. diff --git a/challenge-031/tyler-limkemann/ch-1.p6 b/challenge-031/tyler-limkemann/ch-1.p6 new file mode 100644 index 0000000000..b56840cc6b --- /dev/null +++ b/challenge-031/tyler-limkemann/ch-1.p6 @@ -0,0 +1,2 @@ +CATCH { default { "can't divide by 0!".say } } +(1/0).say; diff --git a/challenge-031/tyler-limkemann/ch-2.p6 b/challenge-031/tyler-limkemann/ch-2.p6 new file mode 100644 index 0000000000..e84fc90949 --- /dev/null +++ b/challenge-031/tyler-limkemann/ch-2.p6 @@ -0,0 +1,18 @@ +use MONKEY; +use nqp; + +class Contextualizer { + submethod ctxsave(*@args --> Nil) { + $*MAIN_CTX := nqp::ctxcaller(nqp::ctx()); + } +} + +sub MAIN(Str $s) { + my $compiler = nqp::getcomp('perl6'); + + my $*MAIN_CTX := nqp::ctx(); + my $*CTXSAVE := Contextualizer; + + $compiler.eval("my \${$s.uc} = ':)'", :outer_ctx($*MAIN_CTX), :interactive(1)); + $compiler.eval("\${$s.uc}.say", :outer_ctx($*MAIN_CTX), :interactive(1)); +}
\ No newline at end of file |
