|
268 | 268 | "name": "stdout", |
269 | 269 | "output_type": "stream", |
270 | 270 | "text": [ |
271 | | - "Requirement already satisfied: pyeffects in /home/vic/anaconda3/lib/python3.9/site-packages (1.0.4)\r\n" |
| 271 | + "Requirement already satisfied: pyeffects in /home/vic/anaconda3/lib/python3.9/site-packages (1.0.5)\r\n" |
272 | 272 | ] |
273 | 273 | } |
274 | 274 | ], |
|
554 | 554 | "traceback": [ |
555 | 555 | "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", |
556 | 556 | "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", |
557 | | - "\u001b[0;32m/tmp/ipykernel_21885/2680335701.py\u001b[0m in \u001b[0;36mparse_name\u001b[0;34m(name_dict)\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 5\u001b[0;31m \u001b[0mn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mName\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0mname_dict\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 6\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mn\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", |
| 557 | + "\u001b[0;32m/tmp/ipykernel_1818/2680335701.py\u001b[0m in \u001b[0;36mparse_name\u001b[0;34m(name_dict)\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 5\u001b[0;31m \u001b[0mn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mName\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0mname_dict\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 6\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mn\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", |
558 | 558 | "\u001b[0;31mTypeError\u001b[0m: __init__() got an unexpected keyword argument 'first_name_is_wrong'", |
559 | 559 | "\nDuring handling of the above exception, another exception occurred:\n", |
560 | 560 | "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", |
561 | | - "\u001b[0;32m/tmp/ipykernel_21885/1474534612.py\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mperson2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparse_person\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mperson2_str\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", |
562 | | - "\u001b[0;32m/tmp/ipykernel_21885/2680335701.py\u001b[0m in \u001b[0;36mparse_person\u001b[0;34m(json_str)\u001b[0m\n\u001b[1;32m 20\u001b[0m \u001b[0mn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparse_name\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mattributes\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'name'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 21\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m'contact1'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mattributes\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 22\u001b[0;31m \u001b[0mcontact1\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparse_contact\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mattributes\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'contact1'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'contact1'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 23\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m'contact2'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mattributes\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 24\u001b[0m \u001b[0mcontact2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparse_contact\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mattributes\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'contact2'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'contact2'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", |
563 | | - "\u001b[0;32m/tmp/ipykernel_21885/2680335701.py\u001b[0m in \u001b[0;36mparse_contact\u001b[0;34m(contact_dict, relationship)\u001b[0m\n\u001b[1;32m 11\u001b[0m \u001b[0mn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 12\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m'name'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mcontact_dict\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 13\u001b[0;31m \u001b[0mn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparse_name\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcontact_dict\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'name'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 14\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mContact\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mn\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrelationship\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mrelationship\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 15\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", |
564 | | - "\u001b[0;32m/tmp/ipykernel_21885/2680335701.py\u001b[0m in \u001b[0;36mparse_name\u001b[0;34m(name_dict)\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mn\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mTypeError\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mte\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 8\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"Couldn't deserialize Name: \"\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mstr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mte\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 9\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mparse_contact\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcontact_dict\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mdict\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrelationship\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mstr\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m->\u001b[0m \u001b[0mContact\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", |
| 561 | + "\u001b[0;32m/tmp/ipykernel_1818/1474534612.py\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mperson2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparse_person\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mperson2_str\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", |
| 562 | + "\u001b[0;32m/tmp/ipykernel_1818/2680335701.py\u001b[0m in \u001b[0;36mparse_person\u001b[0;34m(json_str)\u001b[0m\n\u001b[1;32m 20\u001b[0m \u001b[0mn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparse_name\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mattributes\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'name'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 21\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m'contact1'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mattributes\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 22\u001b[0;31m \u001b[0mcontact1\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparse_contact\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mattributes\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'contact1'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'contact1'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 23\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m'contact2'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mattributes\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 24\u001b[0m \u001b[0mcontact2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparse_contact\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mattributes\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'contact2'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'contact2'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", |
| 563 | + "\u001b[0;32m/tmp/ipykernel_1818/2680335701.py\u001b[0m in \u001b[0;36mparse_contact\u001b[0;34m(contact_dict, relationship)\u001b[0m\n\u001b[1;32m 11\u001b[0m \u001b[0mn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 12\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m'name'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mcontact_dict\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 13\u001b[0;31m \u001b[0mn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparse_name\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcontact_dict\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'name'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 14\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mContact\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mn\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrelationship\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mrelationship\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 15\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", |
| 564 | + "\u001b[0;32m/tmp/ipykernel_1818/2680335701.py\u001b[0m in \u001b[0;36mparse_name\u001b[0;34m(name_dict)\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mn\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 7\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mTypeError\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mte\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 8\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"Couldn't deserialize Name: \"\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mstr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mte\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 9\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mparse_contact\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcontact_dict\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mdict\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrelationship\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mstr\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m->\u001b[0m \u001b[0mContact\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", |
565 | 565 | "\u001b[0;31mTypeError\u001b[0m: Couldn't deserialize Name: __init__() got an unexpected keyword argument 'first_name_is_wrong'" |
566 | 566 | ] |
567 | 567 | } |
|
673 | 673 | "Done: False\n", |
674 | 674 | "Done: True\n", |
675 | 675 | "Result: 101\n", |
676 | | - "Execution time: 4.007782459259033 s\n" |
| 676 | + "Execution time: 4.003849029541016 s\n" |
677 | 677 | ] |
678 | 678 | } |
679 | 679 | ], |
|
720 | 720 | "output_type": "stream", |
721 | 721 | "text": [ |
722 | 722 | "Result: 150\n", |
723 | | - "Execution time: 5.005568742752075 s\n" |
| 723 | + "Execution time: 5.007669448852539 s\n" |
724 | 724 | ] |
725 | 725 | } |
726 | 726 | ], |
|
772 | 772 | "text": [ |
773 | 773 | "Unable to compute result due to exception\n", |
774 | 774 | "Error getting result\n", |
775 | | - "Execution time: 3.0046818256378174 s\n" |
| 775 | + "Execution time: 3.003845453262329 s\n" |
776 | 776 | ] |
777 | 777 | } |
778 | 778 | ], |
|
815 | 815 | }, |
816 | 816 | { |
817 | 817 | "cell_type": "code", |
818 | | - "execution_count": 20, |
| 818 | + "execution_count": 18, |
819 | 819 | "metadata": { |
820 | 820 | "slideshow": { |
821 | 821 | "slide_type": "fragment" |
|
827 | 827 | "output_type": "stream", |
828 | 828 | "text": [ |
829 | 829 | "Result: 150\n", |
830 | | - "Execution time: 5.008533477783203 s\n" |
| 830 | + "Execution time: 5.003130674362183 s\n" |
831 | 831 | ] |
832 | 832 | } |
833 | 833 | ], |
834 | 834 | "source": [ |
835 | | - "from pyeffects.Monad import identity\n", |
836 | | - "\n", |
837 | 835 | "def delayed_result1() -> List[int]:\n", |
838 | 836 | " time.sleep(3)\n", |
839 | 837 | " return 100\n", |
|
852 | 850 | "result2 = Future.run(delayed_result2)\n", |
853 | 851 | "\n", |
854 | 852 | "# Convert List[Future[int]] -> Future[List[int]] \n", |
855 | | - "Future.traverse([result1, result2])(identity)\\\n", |
| 853 | + "Future.traverse([result1, result2])\\\n", |
856 | 854 | " .on_complete(lambda v: handle_result(v.get(), start_time))" |
857 | 855 | ] |
858 | 856 | }, |
|
0 commit comments