{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "$*JUPYTER.register-comm('counter', -> :$in, :$out, :$data {\n", " my atomicint $num = 0;\n", " start react whenever Supply.interval(2) -> $i {\n", " $out.send($num + $i);\n", " done if $i > 4;\n", " }\n", " start while $in.receive -> $i {\n", " $num ⚛= $i;\n", " }\n", " }\n", ")" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "application/javascript": [ "var comm = Jupyter.notebook.kernel.comm_manager.new_comm('counter');\n", "var el = $('
---
');\n", "this.element.append(el);\n", "var x = 10;\n", "comm.on_msg(function(msg) {\n", " el.html(msg.content.data);\n", " comm.send({'num': x});\n", " x = x + 10;\n", "});" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%% javascript\n", "var comm = Jupyter.notebook.kernel.comm_manager.new_comm('counter');\n", "var el = $('
---
');\n", "this.element.append(el);\n", "var x = 10;\n", "comm.on_msg(function(msg) {\n", " el.html(msg.content.data);\n", " comm.send({'num': x});\n", " x = x + 10;\n", "});" ] } ], "metadata": { "kernelspec": { "display_name": "Raku", "language": "raku", "name": "raku" }, "language_info": { "file_extension": ".p6", "mimetype": "text/plain", "name": "raku", "version": "6.c" } }, "nbformat": 4, "nbformat_minor": 2 }