aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbigail <abigail@abigail.be>2021-08-02 15:16:55 +0200
committerAbigail <abigail@abigail.be>2021-08-02 20:38:22 +0200
commit3d2c0bd460eb1bdc13a935014f09dddfd3be036c (patch)
tree8b3f29bb8a89e0af80f86305c1f06c59529591fa
parenta02491766b56fca83d4caabb24c9e65b9a665851 (diff)
downloadperlweeklychallenge-club-3d2c0bd460eb1bdc13a935014f09dddfd3be036c.tar.gz
perlweeklychallenge-club-3d2c0bd460eb1bdc13a935014f09dddfd3be036c.tar.bz2
perlweeklychallenge-club-3d2c0bd460eb1bdc13a935014f09dddfd3be036c.zip
Solutions in 29 languages for week 124, part 1.
-rw-r--r--challenge-124/abigail/README.md20
-rw-r--r--challenge-124/abigail/awk/ch-1.awk29
-rw-r--r--challenge-124/abigail/bash/ch-1.sh27
-rw-r--r--challenge-124/abigail/basic/ch-1.bas25
-rw-r--r--challenge-124/abigail/bc/ch-1.bc26
-rw-r--r--challenge-124/abigail/befunge-93/ch-1.bf9318
-rw-r--r--challenge-124/abigail/c/ch-1.c32
-rw-r--r--challenge-124/abigail/cobol/ch-1.cb30
-rw-r--r--challenge-124/abigail/csh/ch-1.csh27
-rw-r--r--challenge-124/abigail/erlang/ch-1.erl31
-rw-r--r--challenge-124/abigail/forth/ch-1.fs21
-rw-r--r--challenge-124/abigail/fortran/ch-1.f9028
-rw-r--r--challenge-124/abigail/go/ch-1.go31
-rw-r--r--challenge-124/abigail/java/ch-1.java29
-rw-r--r--challenge-124/abigail/lua/ch-1.lua27
-rw-r--r--challenge-124/abigail/m4/ch-1.m417
-rw-r--r--challenge-124/abigail/mmix/ch-1.mms64
-rw-r--r--challenge-124/abigail/node/ch-1.js27
-rw-r--r--challenge-124/abigail/ocaml/ch-1.ml25
-rw-r--r--challenge-124/abigail/pascal/ch-1.p29
-rw-r--r--challenge-124/abigail/perl/ch-1.pl29
-rw-r--r--challenge-124/abigail/php/ch-1.php27
-rw-r--r--challenge-124/abigail/postscript/ch-1.ps26
-rw-r--r--challenge-124/abigail/python/ch-1.py27
-rw-r--r--challenge-124/abigail/r/ch-1.r25
-rw-r--r--challenge-124/abigail/rexx/ch-1.rexx25
-rw-r--r--challenge-124/abigail/ruby/ch-1.rb27
-rw-r--r--challenge-124/abigail/scheme/ch-1.scm25
-rw-r--r--challenge-124/abigail/sql/ch-1.sql25
-rw-r--r--challenge-124/abigail/tcl/ch-1.tcl25
30 files changed, 824 insertions, 0 deletions
diff --git a/challenge-124/abigail/README.md b/challenge-124/abigail/README.md
index 96ce515677..0bd71c5813 100644
--- a/challenge-124/abigail/README.md
+++ b/challenge-124/abigail/README.md
@@ -27,13 +27,33 @@
### Solutions
* [AWK](awk/ch-1.awk)
* [Bash](bash/ch-1.sh)
+* [Basic](basic/ch-1.bas)
+* [bc](bc/ch-1.bc)
+* [Befunge-93](befunge-93/ch-1.bf93)
* [C](c/ch-1.c)
+* [Cobol](cobol/ch-1.cb)
+* [Csh](csh/ch-1.csh)
+* [Erlang](erlang/ch-1.erl)
+* [Forth](forth/ch-1.fs)
+* [Fortran](fortran/ch-1.f90)
+* [Go](go/ch-1.go)
+* [Java](java/ch-1.java)
* [Lua](lua/ch-1.lua)
+* [m4](m4/ch-1.m4)
+* [MMIX](mmix/ch-1.mms)
* [Node.js](node/ch-1.js)
+* [Ocaml](ocaml/ch-1.ml)
+* [Pascal](pascal/ch-1.p)
* [Perl](perl/ch-1.pl)
+* [Php](php/ch-1.php)
+* [Postscript](postscript/ch-1.ps)
* [Python](python/ch-1.py)
* [R](r/ch-1.r)
+* [Rexx](rexx/ch-1.rexx)
* [Ruby](ruby/ch-1.rb)
+* [Scheme](scheme/ch-1.scm)
+* [SQL](sql/ch-1.sql)
+* [Tcl](tcl/ch-1.tcl)
### Blog
[Perl Weekly Challenge 124: Happy Women Day][blog1]
diff --git a/challenge-124/abigail/awk/ch-1.awk b/challenge-124/abigail/awk/ch-1.awk
new file mode 100644
index 0000000000..90d459b0d4
--- /dev/null
+++ b/challenge-124/abigail/awk/ch-1.awk
@@ -0,0 +1,29 @@
+#!/usr/bin/awk
+
+#
+# See ../README.md
+#
+
+#
+# Run as: awk -f ch-1.awk
+#
+
+BEGIN {
+ print " ^^^^^"
+ print " ^ ^"
+ print " ^ ^"
+ print " ^ ^"
+ print " ^ ^"
+ print " ^ ^"
+ print " ^ ^"
+ print " ^ ^"
+ print " ^ ^"
+ print " ^ ^"
+ print " ^^^^^"
+ print " ^"
+ print " ^"
+ print " ^"
+ print " ^^^^^"
+ print " ^"
+ print " ^"
+} \ No newline at end of file
diff --git a/challenge-124/abigail/bash/ch-1.sh b/challenge-124/abigail/bash/ch-1.sh
new file mode 100644
index 0000000000..683a1ac0f1
--- /dev/null
+++ b/challenge-124/abigail/bash/ch-1.sh
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+#
+# See ../README.md
+#
+
+#
+# Run as: bash ch-1.sh
+#
+
+echo " ^^^^^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^^^^^"
+echo " ^"
+echo " ^"
+echo " ^"
+echo " ^^^^^"
+echo " ^"
+echo " ^" \ No newline at end of file
diff --git a/challenge-124/abigail/basic/ch-1.bas b/challenge-124/abigail/basic/ch-1.bas
new file mode 100644
index 0000000000..eee344ff4b
--- /dev/null
+++ b/challenge-124/abigail/basic/ch-1.bas
@@ -0,0 +1,25 @@
+010 REM
+020 REM See ../README.md
+030 REM
+
+040 REM
+050 REM Run as: basic ch-1.bas
+060 REM
+
+100 PRINT " ^^^^^"
+101 PRINT " ^ ^"
+102 PRINT " ^ ^"
+103 PRINT " ^ ^"
+104 PRINT " ^ ^"
+105 PRINT " ^ ^"
+106 PRINT " ^ ^"
+107 PRINT " ^ ^"
+108 PRINT " ^ ^"
+109 PRINT " ^ ^"
+110 PRINT " ^^^^^"
+111 PRINT " ^"
+112 PRINT " ^"
+113 PRINT " ^"
+114 PRINT " ^^^^^"
+115 PRINT " ^"
+116 PRINT " ^" \ No newline at end of file
diff --git a/challenge-124/abigail/bc/ch-1.bc b/challenge-124/abigail/bc/ch-1.bc
new file mode 100644
index 0000000000..7f41441d7f
--- /dev/null
+++ b/challenge-124/abigail/bc/ch-1.bc
@@ -0,0 +1,26 @@
+#
+# See ../README.md
+#
+
+#
+# Run as: bc ch-1.bc
+#
+" ^^^^^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^^^^^
+ ^
+ ^
+ ^
+ ^^^^^
+ ^
+ ^
+"
+quit \ No newline at end of file
diff --git a/challenge-124/abigail/befunge-93/ch-1.bf93 b/challenge-124/abigail/befunge-93/ch-1.bf93
new file mode 100644
index 0000000000..f5bd23acb2
--- /dev/null
+++ b/challenge-124/abigail/befunge-93/ch-1.bf93
@@ -0,0 +1,18 @@
+55+ "^ " v
+55+ "^ " v>
+55+ "^^^^^ " v>
+55+ "^ " v>
+55+ "^ " v>
+55+ "^ " v>
+55+ "^^^^^ " v>
+55+ "^ ^ " v>
+55+ "^ ^ " v>
+55+ "^ ^ " v>
+55+ "^ ^ " v>
+55+ "^ ^ " v>
+55+ "^ ^ " v>
+55+ "^ ^ " v>
+55+ "^ ^ " v>
+55+ "^ ^ " v>
+55+ "^^^^^ "v>
+ ,_@#:<
diff --git a/challenge-124/abigail/c/ch-1.c b/challenge-124/abigail/c/ch-1.c
new file mode 100644
index 0000000000..c04528cd88
--- /dev/null
+++ b/challenge-124/abigail/c/ch-1.c
@@ -0,0 +1,32 @@
+# include <stdlib.h>
+# include <stdio.h>
+# include <string.h>
+
+/*
+ * See ../README.md
+ */
+
+/*
+ * Run as: cc -o ch-1.o ch-1.c; ./ch-1.o
+ */
+
+int main (void) {
+ printf (" ^^^^^\n");
+ printf (" ^ ^\n");
+ printf (" ^ ^\n");
+ printf (" ^ ^\n");
+ printf (" ^ ^\n");
+ printf (" ^ ^\n");
+ printf (" ^ ^\n");
+ printf (" ^ ^\n");
+ printf (" ^ ^\n");
+ printf (" ^ ^\n");
+ printf (" ^^^^^\n");
+ printf (" ^\n");
+ printf (" ^\n");
+ printf (" ^\n");
+ printf (" ^^^^^\n");
+ printf (" ^\n");
+ printf (" ^\n");
+ exit (0);
+} \ No newline at end of file
diff --git a/challenge-124/abigail/cobol/ch-1.cb b/challenge-124/abigail/cobol/ch-1.cb
new file mode 100644
index 0000000000..6e665d4ce4
--- /dev/null
+++ b/challenge-124/abigail/cobol/ch-1.cb
@@ -0,0 +1,30 @@
+IDENTIFICATION DIVISION.
+PROGRAM-ID. VENUS.
+
+*>
+*> See ../README.md
+*>
+
+*>
+*> Run as: cobc -xF ch-1.cb; ./ch-1
+*>
+
+PROCEDURE DIVISION.
+ DISPLAY " ^^^^^".
+ DISPLAY " ^ ^".
+ DISPLAY " ^ ^".
+ DISPLAY " ^ ^".
+ DISPLAY " ^ ^".
+ DISPLAY " ^ ^".
+ DISPLAY " ^ ^".
+ DISPLAY " ^ ^".
+ DISPLAY " ^ ^".
+ DISPLAY " ^ ^".
+ DISPLAY " ^^^^^".
+ DISPLAY " ^".
+ DISPLAY " ^".
+ DISPLAY " ^".
+ DISPLAY " ^^^^^".
+ DISPLAY " ^".
+ DISPLAY " ^".
+ STOP RUN.
diff --git a/challenge-124/abigail/csh/ch-1.csh b/challenge-124/abigail/csh/ch-1.csh
new file mode 100644
index 0000000000..453a03b2f7
--- /dev/null
+++ b/challenge-124/abigail/csh/ch-1.csh
@@ -0,0 +1,27 @@
+#!/bin/csh
+
+#
+# See ../README.md
+#
+
+#
+# Run as: csh ch-1.csh
+#
+
+echo " ^^^^^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^ ^"
+echo " ^^^^^"
+echo " ^"
+echo " ^"
+echo " ^"
+echo " ^^^^^"
+echo " ^"
+echo " ^" \ No newline at end of file
diff --git a/challenge-124/abigail/erlang/ch-1.erl b/challenge-124/abigail/erlang/ch-1.erl
new file mode 100644
index 0000000000..0b12117541
--- /dev/null
+++ b/challenge-124/abigail/erlang/ch-1.erl
@@ -0,0 +1,31 @@
+%
+% See ../README.md
+%
+
+%
+% Run as: ln ch-1.erl ch1.erl
+% erl -compile ch1
+% erl -noshell -s ch1 main -s init stop
+%
+
+-module (ch1).
+-export ([main/0]).
+
+main () ->
+ io:fwrite (" ^^^^^\n"),
+ io:fwrite (" ^ ^\n"),
+ io:fwrite (" ^ ^\n"),
+ io:fwrite (" ^ ^\n"),
+ io:fwrite (" ^ ^\n"),
+ io:fwrite (" ^ ^\n"),
+ io:fwrite (" ^ ^\n"),
+ io:fwrite (" ^ ^\n"),
+ io:fwrite (" ^ ^\n"),
+ io:fwrite (" ^ ^\n"),
+ io:fwrite (" ^^^^^\n"),
+ io:fwrite (" ^\n"),
+ io:fwrite (" ^\n"),
+ io:fwrite (" ^\n"),
+ io:fwrite (" ^^^^^\n"),
+ io:fwrite (" ^\n"),
+ io:fwrite (" ^\n"). \ No newline at end of file
diff --git a/challenge-124/abigail/forth/ch-1.fs b/challenge-124/abigail/forth/ch-1.fs
new file mode 100644
index 0000000000..b7bdbafc7f
--- /dev/null
+++ b/challenge-124/abigail/forth/ch-1.fs
@@ -0,0 +1,21 @@
+\
+\ See ../README.md
+\
+
+.( ^^^^^)
+.( ^ ^)
+.( ^ ^)
+.( ^ ^)
+.( ^ ^)
+.( ^ ^)
+.( ^ ^)
+.( ^ ^)
+.( ^ ^)
+.( ^ ^)
+.( ^^^^^)
+.( ^)
+.( ^)
+.( ^)
+.( ^^^^^)
+.( ^)
+.( ^) \ No newline at end of file
diff --git a/challenge-124/abigail/fortran/ch-1.f90 b/challenge-124/abigail/fortran/ch-1.f90
new file mode 100644
index 0000000000..52f8dead50
--- /dev/null
+++ b/challenge-124/abigail/fortran/ch-1.f90
@@ -0,0 +1,28 @@
+!
+! See ../README.md
+!
+
+!
+! Run as: gfortran -o ch-1.o ch-1.f90; ./ch-1.o
+!
+
+program ch1
+ implicit none
+ write (*, *) " ^^^^^"
+ write (*, *) " ^ ^"
+ write (*, *) " ^ ^"
+ write (*, *) "^ ^"
+ write (*, *) "^ ^"
+ write (*, *) "^ ^"
+ write (*, *) "^ ^"
+ write (*, *) "^ ^"
+ write (*, *) " ^ ^"
+ write (*, *) " ^ ^"
+ write (*, *) " ^^^^^"
+ write (*, *) " ^"
+ write (*, *) " ^"
+ write (*, *) " ^"
+ write (*, *) " ^^^^^"
+ write (*, *) " ^"
+ write (*, *) " ^"
+end \ No newline at end of file
diff --git a/challenge-124/abigail/go/ch-1.go b/challenge-124/abigail/go/ch-1.go
new file mode 100644
index 0000000000..d7ccf33b7a
--- /dev/null
+++ b/challenge-124/abigail/go/ch-1.go
@@ -0,0 +1,31 @@
+package main
+
+//
+// See ../README.md
+//
+
+//
+// Run as: go run ch-1.go
+//
+
+import "fmt"
+
+func main () {
+ fmt . Print (" ^^^^^\n")
+ fmt . Print (" ^ ^\n")
+ fmt . Print (" ^ ^\n")
+ fmt . Print (" ^ ^\n")
+ fmt . Print (" ^ ^\n")
+ fmt . Print (" ^ ^\n")
+ fmt . Print (" ^ ^\n")
+ fmt . Print (" ^ ^\n")
+ fmt . Print (" ^ ^\n")
+ fmt . Print (" ^ ^\n")
+ fmt . Print (" ^^^^^\n")
+ fmt . Print (" ^\n")
+ fmt . Print (" ^\n")
+ fmt . Print (" ^\n")
+ fmt . Print (" ^^^^^\n")
+ fmt . Print (" ^\n")
+ fmt . Print (" ^\n")
+} \ No newline at end of file
diff --git a/challenge-124/abigail/java/ch-1.java b/challenge-124/abigail/java/ch-1.java
new file mode 100644
index 0000000000..93dd9df6a7
--- /dev/null
+++ b/challenge-124/abigail/java/ch-1.java
@@ -0,0 +1,29 @@
+//
+// See ../README.md
+//
+
+//
+// Run as: ln ch-1.java ch1.java; javac ch1.java; java ch1
+//
+
+public class ch1 {
+ public static void main (String [] args) {
+ System . out . print (" ^^^^^\n");
+ System . out . print (" ^ ^\n");
+ System . out . print (" ^ ^\n");
+ System . out . print (" ^ ^\n");
+ System . out . print (" ^ ^\n");
+ System . out . print (" ^ ^\n");
+ System . out . print (" ^ ^\n");
+ System . out . print (" ^ ^\n");
+ System . out . print (" ^ ^\n");
+ System . out . print (" ^ ^\n");
+ System . out . print (" ^^^^^\n");
+ System . out . print (" ^\n");
+ System . out . print (" ^\n");
+ System . out . print (" ^\n");
+ System . out . print (" ^^^^^\n");
+ System . out . print (" ^\n");
+ System . out . print (" ^\n");
+ }
+} \ No newline at end of file
diff --git a/challenge-124/abigail/lua/ch-1.lua b/challenge-124/abigail/lua/ch-1.lua
new file mode 100644
index 0000000000..f981c7be1c
--- /dev/null
+++ b/challenge-124/abigail/lua/ch-1.lua
@@ -0,0 +1,27 @@
+#!/opt/local/bin/lua
+
+--
+-- See ../README.md
+--
+
+--
+-- Run as: lua ch-1.lua
+--
+
+print (" ^^^^^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^^^^^")
+print (" ^")
+print (" ^")
+print (" ^")
+print (" ^^^^^")
+print (" ^")
+print (" ^") \ No newline at end of file
diff --git a/challenge-124/abigail/m4/ch-1.m4 b/challenge-124/abigail/m4/ch-1.m4
new file mode 100644
index 0000000000..cc661e825a
--- /dev/null
+++ b/challenge-124/abigail/m4/ch-1.m4
@@ -0,0 +1,17 @@
+ ^^^^^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^^^^^
+ ^
+ ^
+ ^
+ ^^^^^
+ ^
+ ^
diff --git a/challenge-124/abigail/mmix/ch-1.mms b/challenge-124/abigail/mmix/ch-1.mms
new file mode 100644
index 0000000000..594bd5d759
--- /dev/null
+++ b/challenge-124/abigail/mmix/ch-1.mms
@@ -0,0 +1,64 @@
+%
+% See ../README.md
+%
+
+%
+% Run as: mmixal -o ch-1.mmo ch-1.mms; mmix -q ch-1.mmo
+%
+ LOC Data_Segment
+ GREG @
+Text01 BYTE " ^^^^^",10,0
+Text02 BYTE " ^ ^",10,0
+Text03 BYTE " ^ ^",10,0
+Text04 BYTE " ^ ^",10,0
+Text05 BYTE " ^ ^",10,0
+Text06 BYTE " ^ ^",10,0
+Text07 BYTE " ^ ^",10,0
+Text08 BYTE " ^ ^",10,0
+Text09 BYTE " ^ ^",10,0
+Text10 BYTE " ^ ^",10,0
+Text11 BYTE " ^^^^^",10,0
+Text12 BYTE " ^",10,0
+Text13 BYTE " ^",10,0
+Text14 BYTE " ^",10,0
+Text15 BYTE " ^^^^^",10,0
+Text16 BYTE " ^",10,0
+Text17 BYTE " ^",10,0
+
+ LOC #100
+
+Main LDA $255,Text01
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text02
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text03
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text04
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text05
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text06
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text07
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text08
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text09
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text10
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text11
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text12
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text13
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text14
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text15
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text16
+ TRAP 0,Fputs,StdOut
+ LDA $255,Text17
+ TRAP 0,Fputs,StdOut
+ TRAP 0,Halt,0 \ No newline at end of file
diff --git a/challenge-124/abigail/node/ch-1.js b/challenge-124/abigail/node/ch-1.js
new file mode 100644
index 0000000000..afdb369d65
--- /dev/null
+++ b/challenge-124/abigail/node/ch-1.js
@@ -0,0 +1,27 @@
+#!/usr/local/bin/node
+
+//
+// See ../README.md
+//
+
+//
+// Run as: node ch-1.js
+//
+
+console . log (" ^^^^^")
+console . log (" ^ ^")
+console . log (" ^ ^")
+console . log (" ^ ^")
+console . log (" ^ ^")
+console . log (" ^ ^")
+console . log (" ^ ^")
+console . log (" ^ ^")
+console . log (" ^ ^")
+console . log (" ^ ^")
+console . log (" ^^^^^")
+console . log (" ^")
+console . log (" ^")
+console . log (" ^")
+console . log (" ^^^^^")
+console . log (" ^")
+console . log (" ^") \ No newline at end of file
diff --git a/challenge-124/abigail/ocaml/ch-1.ml b/challenge-124/abigail/ocaml/ch-1.ml
new file mode 100644
index 0000000000..eeebeef182
--- /dev/null
+++ b/challenge-124/abigail/ocaml/ch-1.ml
@@ -0,0 +1,25 @@
+(* *)
+(* See ../README.md *)
+(* *)
+
+(* *)
+(* Run as: ocaml ch-1.ml *)
+(* *)
+
+print_endline " ^^^^^";
+print_endline " ^ ^";
+print_endline " ^ ^";
+print_endline " ^ ^";
+print_endline " ^ ^";
+print_endline " ^ ^";
+print_endline " ^ ^";
+print_endline " ^ ^";
+print_endline " ^ ^";
+print_endline " ^ ^";
+print_endline " ^^^^^";
+print_endline " ^";
+print_endline " ^";
+print_endline " ^";
+print_endline " ^^^^^";
+print_endline " ^";
+print_endline " ^"; \ No newline at end of file
diff --git a/challenge-124/abigail/pascal/ch-1.p b/challenge-124/abigail/pascal/ch-1.p
new file mode 100644
index 0000000000..61819aadaf
--- /dev/null
+++ b/challenge-124/abigail/pascal/ch-1.p
@@ -0,0 +1,29 @@
+Program XXX;
+
+(* *)
+(* See ../README.md *)
+(* *)
+
+(* *)
+(* Run as: fpc -och-1.out ch-1.p; ./ch-1.out *)
+(* *)
+
+begin
+ writeln (' ^^^^^');
+ writeln (' ^ ^');
+ writeln (' ^ ^');
+ writeln (' ^ ^');
+ writeln (' ^ ^');
+ writeln (' ^ ^');
+ writeln (' ^ ^');
+ writeln (' ^ ^');
+ writeln (' ^ ^');
+ writeln (' ^ ^');
+ writeln (' ^^^^^');
+ writeln (' ^');
+ writeln (' ^');
+ writeln (' ^');
+ writeln (' ^^^^^');
+ writeln (' ^');
+ writeln (' ^');
+end. \ No newline at end of file
diff --git a/challenge-124/abigail/perl/ch-1.pl b/challenge-124/abigail/perl/ch-1.pl
new file mode 100644
index 0000000000..138ab19026
--- /dev/null
+++ b/challenge-124/abigail/perl/ch-1.pl
@@ -0,0 +1,29 @@
+#!/opt/perl/bin/perl
+
+#
+# See ../README.md
+#
+
+#
+# Run as: perl ch-1.pl
+#
+
+print << '--';
+ ^^^^^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^ ^
+ ^^^^^
+ ^
+ ^
+ ^
+ ^^^^^
+ ^
+ ^
+--
diff --git a/challenge-124/abigail/php/ch-1.php b/challenge-124/abigail/php/ch-1.php
new file mode 100644
index 0000000000..a1cc76ccd6
--- /dev/null
+++ b/challenge-124/abigail/php/ch-1.php
@@ -0,0 +1,27 @@
+<?php
+ //
+ // See ../README.md
+ //
+
+ //
+ // Run as: php ch-1.php
+ //
+
+ echo " ^^^^^\n";
+ echo " ^ ^\n";
+ echo " ^ ^\n";
+ echo " ^ ^\n";
+ echo " ^ ^\n";
+ echo " ^ ^\n";
+ echo " ^ ^\n";
+ echo " ^ ^\n";
+ echo " ^ ^\n";
+ echo " ^ ^\n";
+ echo " ^^^^^\n";
+ echo " ^\n";
+ echo " ^\n";
+ echo " ^\n";
+ echo " ^^^^^\n";
+ echo " ^\n";
+ echo " ^\n";
+?> \ No newline at end of file
diff --git a/challenge-124/abigail/postscript/ch-1.ps b/challenge-124/abigail/postscript/ch-1.ps
new file mode 100644
index 0000000000..d2b11f77cc
--- /dev/null
+++ b/challenge-124/abigail/postscript/ch-1.ps
@@ -0,0 +1,26 @@
+%!PS
+%
+% See ../README.md
+%
+
+%
+% Run as: ps2ascii ch-1.ps
+%
+
+( ^^^^^) =
+( ^ ^) =
+( ^ ^) =
+( ^ ^) =
+( ^ ^) =
+( ^ ^) =
+( ^ ^) =
+( ^ ^) =
+( ^ ^) =
+( ^ ^) =
+( ^^^^^) =
+( ^) =
+( ^) =
+( ^) =
+( ^^^^^) =
+( ^) =
+( ^) = \ No newline at end of file
diff --git a/challenge-124/abigail/python/ch-1.py b/challenge-124/abigail/python/ch-1.py
new file mode 100644
index 0000000000..ce68db339e
--- /dev/null
+++ b/challenge-124/abigail/python/ch-1.py
@@ -0,0 +1,27 @@
+#!/opt/local/bin/python
+
+#
+# See ../README.md
+#
+
+#
+# Run as: python ch-1.py
+#
+
+print (" ^^^^^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^ ^")
+print (" ^^^^^")
+print (" ^")
+print (" ^")
+print (" ^")
+print (" ^^^^^")
+print (" ^")
+print (" ^") \ No newline at end of file
diff --git a/challenge-124/abigail/r/ch-1.r b/challenge-124/abigail/r/ch-1.r
new file mode 100644
index 0000000000..70c92b4ab0
--- /dev/null
+++ b/challenge-124/abigail/r/ch-1.r
@@ -0,0 +1,25 @@
+#
+# See ../README.md
+#
+
+#
+# Run as: Rscript ch-1.r
+#
+
+cat (" ^^^^^\n")
+cat (" ^ ^\n")
+cat (" ^ ^\n")
+cat (" ^ ^\n")
+cat (" ^ ^\n")
+cat (" ^ ^\n")
+cat (" ^ ^\n")
+cat (" ^ ^\n")
+cat (" ^ ^\n")
+cat (" ^ ^\n")
+cat (" ^^^^^\n")
+cat (" ^\n")
+cat (" ^\n")
+cat (" ^\n")
+cat (" ^^^^^\n")
+cat (" ^\n")
+cat (" ^\n") \ No newline at end of file
diff --git a/challenge-124/abigail/rexx/ch-1.rexx b/challenge-124/abigail/rexx/ch-1.rexx
new file mode 100644
index 0000000000..9c7f30d794
--- /dev/null
+++ b/challenge-124/abigail/rexx/ch-1.rexx
@@ -0,0 +1,25 @@
+/*
+ * See ../README.md
+ */
+
+/*
+ * Run as: rexx ch-1.rexx
+ */
+
+say " ^^^^^"
+say " ^ ^"
+say " ^ ^"
+say " ^ ^"
+say " ^ ^"
+say " ^ ^"
+say " ^ ^"
+say " ^ ^"
+say " ^ ^"
+say " ^ ^"
+say " ^^^^^"
+say " ^"
+say " ^"
+say " ^"
+say " ^^^^^"
+say " ^"
+say " ^" \ No newline at end of file
diff --git a/challenge-124/abigail/ruby/ch-1.rb b/challenge-124/abigail/ruby/ch-1.rb
new file mode 100644
index 0000000000..976168b29e
--- /dev/null
+++ b/challenge-124/abigail/ruby/ch-1.rb
@@ -0,0 +1,27 @@
+#!/usr/bin/ruby
+
+#
+# See ../README.md
+#
+
+#
+# Run as: ruby ch-1.rb
+#
+
+puts (" ^^^^^");
+puts (" ^ ^");
+puts (" ^ ^");
+puts (" ^ ^");
+puts (" ^ ^");
+puts (" ^ ^");
+puts (" ^ ^");
+puts (" ^ ^");
+puts (" ^ ^");
+puts (" ^ ^");
+puts (" ^^^^^");
+puts (" ^");
+puts (" ^");
+puts (" ^");
+puts (" ^^^^^");
+puts (" ^");
+puts (" ^"); \ No newline at end of file
diff --git a/challenge-124/abigail/scheme/ch-1.scm b/challenge-124/abigail/scheme/ch-1.scm
new file mode 100644
index 0000000000..ce519cbc9e
--- /dev/null
+++ b/challenge-124/abigail/scheme/ch-1.scm
@@ -0,0 +1,25 @@
+;;;
+;;; See ../README.md
+;;;
+
+;;;
+;;; Run as: guile --no-auto-compile ch-1.scm
+;;;
+
+(display " ^^^^^\n")
+(display " ^ ^\n")
+(display " ^ ^\n")
+(display " ^ ^\n")
+(display " ^ ^\n")
+(display " ^ ^\n")
+(display " ^ ^\n")
+(display " ^ ^\n")
+(display " ^ ^\n")
+(display " ^ ^\n")
+(display " ^^^^^\n")
+(display " ^\n")
+(display " ^\n")
+(display " ^\n")
+(display " ^^^^^\n")
+(display " ^\n")
+(display " ^\n") \ No newline at end of f