1 00:00:07,500 --> 00:00:09,585 Phew. 2 00:00:09,585 --> 00:00:10,650 You've now seen 3 00:00:10,650 --> 00:00:13,245 some of the subtleties of passing parameters, 4 00:00:13,245 --> 00:00:16,155 accessing global variables, don't do it, 5 00:00:16,155 --> 00:00:18,180 functions calling other functions, 6 00:00:18,180 --> 00:00:20,565 and functions having side effects. 7 00:00:20,565 --> 00:00:22,455 You should now be able to, 8 00:00:22,455 --> 00:00:25,320 avoid the use of global variables and function definitions 9 00:00:25,320 --> 00:00:28,800 by creating formal parameters for all values that are needed, 10 00:00:28,800 --> 00:00:32,910 and you should be able to identify whether a function has any side effects, 11 00:00:32,910 --> 00:00:35,355 including mutations to lists and dictionaries. 12 00:00:35,355 --> 00:00:38,730 As much as possible, I encourage you to avoid side effects, 13 00:00:38,730 --> 00:00:41,970 come as close to strict functional programming as you can. 14 00:00:41,970 --> 00:00:44,370 Speaking of functional programming, 15 00:00:44,370 --> 00:00:47,815 why did the functional program returned her TV? 16 00:00:47,815 --> 00:00:50,850 Because she kept muting the sound by accident, 17 00:00:50,850 --> 00:00:54,935 she returned the TV and asked for one that was immutable. 18 00:00:54,935 --> 00:00:59,310 Okay. That one was a stretch. We'll see you next time.