diff --git a/.gitignore b/.gitignore index bc678b87c333f3a81058ffda3f97d11d631dc91c..cc00482e06fd9685ac977926449134f7e4cb5bac 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,4 @@ .metals/ target/ .vscode/ -playground.scala \ No newline at end of file +playground.worksheet.sc \ No newline at end of file diff --git a/src/scanRightExample.scala b/src/scanRightExample.scala deleted file mode 100644 index ac13a44c101f0366f3ac50a731797a43a17ef015..0000000000000000000000000000000000000000 --- a/src/scanRightExample.scala +++ /dev/null @@ -1,26 +0,0 @@ -package scanRightExample - -@main -def main() = { - // From https://stackoverflow.com/questions/17408880/reduce-fold-or-scan-left-right - val abc = List("A", "B", "C") - - def add(res: String, x: String) = { - // println(s"op: $res + $x = ${res + x}") - res + x - } - - println(abc.scanLeft("z")(add)) - - println(abc.scanRight("z")(add)) - - val funcs = List( - (x: Int) => x + 1, - (x: Int) => x * 2, - (x: Int) => x * x - ) - - println(funcs.scanLeft(2)((v, f) => f(v))) - - println(funcs.reverse.scanLeft(2)((v, f) => f(v))) -} diff --git a/src/scanRightExample.worksheet.sc b/src/scanRightExample.worksheet.sc new file mode 100644 index 0000000000000000000000000000000000000000..659d7042d9f42a6929524da1a9b068f16c351064 --- /dev/null +++ b/src/scanRightExample.worksheet.sc @@ -0,0 +1,20 @@ +// From https://stackoverflow.com/questions/17408880/reduce-fold-or-scan-left-right +val abc = List("A", "B", "C") + +def add(res: String, x: String) = { + res + x +} + +println(abc.scanLeft("z")(add)) + +println(abc.scanRight("z")(add)) + +val funcs = List( + (x: Int) => x + 1, + (x: Int) => x * 2, + (x: Int) => x * x +) + +println(funcs.scanLeft(2)((v, f) => f(v))) + +println(funcs.reverse.scanLeft(2)((v, f) => f(v)))