Þ ¥bonds€¬cell_resultsŒÙ$5560ed36-b0c0-11ea-0104-49c31d171422Š¦queuedÂ¤logs�§runningÂ¦output†¤bodyÙ5<div class="markdown"><h2>Turtle commands</h2>
</div>¤mime©text/html¬rootassigneeÀ²last_run_timestampËAÚý`UÈÖ°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$5560ed36-b0c0-11ea-0104-49c31d171422¹depends_on_disabled_cellsÂ§runtimeÎ r-µpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÂÙ$47907302-b0c0-11ea-0b27-b5cd2b4720d8Š¦queuedÂ¤logs�§runningÂ¦output†¤bodyÙ&left! (generic function with 1 method)¤mimeªtext/plain¬rootassigneeÀ²last_run_timestampËAÚýb¶ó,°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$47907302-b0c0-11ea-0b27-b5cd2b4720d8¹depends_on_disabled_cellsÂ§runtimeÎ )šµpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÂÙ$ab083f08-b0c0-11ea-0c23-315c14607f1fŠ¦queuedÂ¤logs�§runningÂ¦output†¤bodyÙ5<div class="markdown"><h1>ðŸ�¢ definition</h1>
</div>¤mime©text/html¬rootassigneeÀ²last_run_timestampËAÚý`U³Ð°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$ab083f08-b0c0-11ea-0c23-315c14607f1f¹depends_on_disabled_cellsÂ§runtimeÎ vÔµpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÂÙ$70160fec-b0c7-11ea-0c2a-35418346592eŠ¦queuedÂ¤logs�§runningÂ¦output†¤bodyÙƒ<bond def="angle" unique_id="TsKBZQvw468E"><input type='range' min='0' step='0.031415926535897934' max='1.5707963267948966'></bond>¤mime©text/html¬rootassigneeÀ²last_run_timestampËAÚýbT¬†°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$70160fec-b0c7-11ea-0c2a-35418346592e¹depends_on_disabled_cellsÂ§runtimeÎÎƒµpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÂÙ$fc44503a-b0bf-11ea-0f28-510784847241Š¦queuedÂ¤logs�§runningÂ¦output†¤bodyÙ'right! (generic function with 1 method)¤mimeªtext/plain¬rootassigneeÀ²last_run_timestampËAÚýb­3œ°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$fc44503a-b0bf-11ea-0f28-510784847241¹depends_on_disabled_cellsÂ§runtimeÎ HÇµpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÂÙ$6dbce38e-b0bc-11ea-1126-a13e0d575339Š¦queuedÂ¤logs�§runningÂ¦output†¤bodyÙ/turtle_drawing (generic function with 1 method)¤mimeªtext/plain¬rootassigneeÀ²last_run_timestampËAÚýbÉ€„°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$6dbce38e-b0bc-11ea-1126-a13e0d575339¹depends_on_disabled_cellsÂ§runtimeÎ 
õµpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÂÙ$573c11b4-b0be-11ea-0416-31de4e217320Š¦queuedÂ¤logs�§runningÂ¦output†¤bodyÙ*backward! (generic function with 1 method)¤mimeªtext/plain¬rootassigneeÀ²last_run_timestampËAÚýb£lY°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$573c11b4-b0be-11ea-0416-31de4e217320¹depends_on_disabled_cellsÂ§runtimeÎ ºµpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÂÙ$310a0c52-b0bf-11ea-3e32-69d685f2f45eŠ¦queuedÂ¤logs�§runningÂ¦output†¤bodyÙ+Vector{String} (alias for Array{String, 1})¤mimeªtext/plain¬rootassignee§Drawing²last_run_timestampËAÚýb|’%°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$310a0c52-b0bf-11ea-3e32-69d685f2f45e¹depends_on_disabled_cellsÂ§runtimeÍ<½µpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÂÙ$5aea06d4-b0c0-11ea-19f5-054b02e17675Š¦queuedÂ¤logs�§runningÂ¦output†¤bodyÙK<div class="markdown"><h2>Function to make turtle drawings with</h2>
</div>¤mime©text/html¬rootassigneeÀ²last_run_timestampËAÚý`UÝ<°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$5aea06d4-b0c0-11ea-19f5-054b02e17675¹depends_on_disabled_cellsÂ§runtimeÎ ´;µpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÂÙ$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5bŠ¦queuedÂ¤logs�§runningÂ¦output†¤body ¤mimeªtext/plain¬rootassigneeÀ²last_run_timestampËAÚýbŠÍ«°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5b¹depends_on_disabled_cellsÂ§runtimeÎ ûµpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÂÙ$e6c7e5be-b0bf-11ea-1f7e-73b9aae14382Š¦queuedÂ¤logs�§runningÂ¦output†¤bodyÙ)forward! (generic function with 1 method)¤mimeªtext/plain¬rootassigneeÀ²last_run_timestampËAÚýb™CÌ°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$e6c7e5be-b0bf-11ea-1f7e-73b9aae14382¹depends_on_disabled_cellsÂ§runtimeÎ ˆÞµpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÂÙ$d30c8f2a-b0bf-11ea-0557-19bb61118644Š¦queuedÂ¤logs�§runningÂ¦output†¤body‚£msgÚMethodError: no method matching right!(::Main.workspace#2.Turtle, ::Missing)
[0mClosest candidates are:
[0m  right!(::Main.workspace#2.Turtle, [91m::Number[39m) at ~/work/disorganised-mess/disorganised-mess/turtles.jl#==#fc44503a-b0bf-11ea-0f28-510784847241:1ªstacktrace“Œªcall_shortÙ}(::var"#7#8"{typeof(Main.workspace#2.forward!), typeof(Main.workspace#2.right!), Missing, Colon})(t::Main.workspace#2.Turtle)§inlinedÂ£urlÙ�https://github.com/fonsp/disorganised-mess/tree/6d5f6e46c196925a19e151358b6656510197d2e1//turtles.jl#==#d30c8f2a-b0bf-11ea-0557-19bb61118644#L3¤pathÙh/home/runner/work/disorganised-mess/disorganised-mess/turtles.jl#==#d30c8f2a-b0bf-11ea-0557-19bb61118644®source_packageÀ¤callÙ}(::var"#7#8"{typeof(Main.workspace#2.forward!), typeof(Main.workspace#2.right!), Missing, Colon})(t::Main.workspace#2.Turtle)ªlinfo_type³Core.MethodInstance¤line¤fileÙ2turtles.jl#==#d30c8f2a-b0bf-11ea-0557-19bb61118644¤func¢#7­parent_moduleÀ¦from_cÂŒªcall_shortÙpturtle_drawing(f::var"#7#8"{typeof(Main.workspace#2.forward!), typeof(Main.workspace#2.right!), Missing, Colon})§inlinedÂ£urlÙ�https://github.com/fonsp/disorganised-mess/tree/6d5f6e46c196925a19e151358b6656510197d2e1//turtles.jl#==#6dbce38e-b0bc-11ea-1126-a13e0d575339#L1¤pathÙh/home/runner/work/disorganised-mess/disorganised-mess/turtles.jl#==#6dbce38e-b0bc-11ea-1126-a13e0d575339®source_packageÀ¤callÙpturtle_drawing(f::var"#7#8"{typeof(Main.workspace#2.forward!), typeof(Main.workspace#2.right!), Missing, Colon})ªlinfo_type³Core.MethodInstance¤line¤fileÙ2turtles.jl#==#6dbce38e-b0bc-11ea-1126-a13e0d575339¤func®turtle_drawing­parent_moduleÀ¦from_cÂŒªcall_short¯top-level scope§inlinedÃ£urlÀ¤pathÙh/home/runner/work/disorganised-mess/disorganised-mess/turtles.jl#==#d30c8f2a-b0bf-11ea-0557-19bb61118644®source_packageÀ¤call¯top-level scopeªlinfo_type§Nothing¤line¤fileÙ2turtles.jl#==#d30c8f2a-b0bf-11ea-0557-19bb61118644¤func»##function_wrapped_cell#312­parent_moduleÀ¦from_cÂ¤mimeÙ'application/vnd.pluto.stacktrace+object¬rootassigneeÀ²last_run_timestampËAÚýc-ºª°persist_js_stateÂ·has_pluto_hook_featuresÂ§cell_idÙ$d30c8f2a-b0bf-11ea-0557-19bb61118644¹depends_on_disabled_cellsÂ§runtimeÀµpublished_object_keys�¸depends_on_skipped_cellsÂ§erroredÃ±cell_dependenciesŒÙ$5560ed36-b0c0-11ea-0104-49c31d171422„´precedence_heuristic	§cell_idÙ$5560ed36-b0c0-11ea-0104-49c31d171422´downstream_cells_map€²upstream_cells_map‚§@md_str�¨getindex�Ù$47907302-b0c0-11ea-0b27-b5cd2b4720d8„´precedence_heuristic	§cell_idÙ$47907302-b0c0-11ea-0b27-b5cd2b4720d8´downstream_cells_map�¥left!�²upstream_cells_map„¦Turtle‘Ù$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5b¡-�¦right!‘Ù$fc44503a-b0bf-11ea-0f28-510784847241¦Number�Ù$ab083f08-b0c0-11ea-0c23-315c14607f1f„´precedence_heuristic	§cell_idÙ$ab083f08-b0c0-11ea-0c23-315c14607f1f´downstream_cells_map€²upstream_cells_map‚§@md_str�¨getindex�Ù$70160fec-b0c7-11ea-0c2a-35418346592e„´precedence_heuristic	§cell_idÙ$70160fec-b0c7-11ea-0c2a-35418346592e´downstream_cells_map�¥angle‘Ù$d30c8f2a-b0bf-11ea-0557-19bb61118644²upstream_cells_mapŠ¤Core�¤Base�·PlutoRunner.create_bond�«PlutoRunner�¤HTML�¡/�¯Core.applicable�¥@bind�¨Base.get�¢pi�Ù$fc44503a-b0bf-11ea-0f28-510784847241„´precedence_heuristic	§cell_idÙ$fc44503a-b0bf-11ea-0f28-510784847241´downstream_cells_map�¦right!’Ù$d30c8f2a-b0bf-11ea-0557-19bb61118644Ù$47907302-b0c0-11ea-0b27-b5cd2b4720d8²upstream_cells_mapƒ¦Turtle‘Ù$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5b¡-�¦Number�Ù$6dbce38e-b0bc-11ea-1126-a13e0d575339„´precedence_heuristic	§cell_idÙ$6dbce38e-b0bc-11ea-1126-a13e0d575339´downstream_cells_map�®turtle_drawing‘Ù$d30c8f2a-b0bf-11ea-0557-19bb61118644²upstream_cells_mapˆ¦Turtle‘Ù$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5b¤join�¤HTML�¡/�¡*�¦String�¢pi�¨Function�Ù$573c11b4-b0be-11ea-0416-31de4e217320„´precedence_heuristic	§cell_idÙ$573c11b4-b0be-11ea-0416-31de4e217320´downstream_cells_map�©backward!�²upstream_cells_map„¦Turtle‘Ù$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5b§foward!�¡-�¦Number�Ù$310a0c52-b0bf-11ea-3e32-69d685f2f45e„´precedence_heuristic	§cell_idÙ$310a0c52-b0bf-11ea-3e32-69d685f2f45e´downstream_cells_map�§Drawing‘Ù$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5b²upstream_cells_map‚¦String�¦Vector�Ù$5aea06d4-b0c0-11ea-19f5-054b02e17675„´precedence_heuristic	§cell_idÙ$5aea06d4-b0c0-11ea-19f5-054b02e17675´downstream_cells_map€²upstream_cells_map‚§@md_str�¨getindex�Ù$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5b„´precedence_heuristic	§cell_idÙ$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5b´downstream_cells_map�¦Turtle•Ù$e6c7e5be-b0bf-11ea-1f7e-73b9aae14382Ù$573c11b4-b0be-11ea-0416-31de4e217320Ù$fc44503a-b0bf-11ea-0f28-510784847241Ù$47907302-b0c0-11ea-0b27-b5cd2b4720d8Ù$6dbce38e-b0bc-11ea-1126-a13e0d575339²upstream_cells_map„¥Tuple�¤Bool�¦Number�§Drawing‘Ù$310a0c52-b0bf-11ea-3e32-69d685f2f45eÙ$e6c7e5be-b0bf-11ea-1f7e-73b9aae14382„´precedence_heuristic	§cell_idÙ$e6c7e5be-b0bf-11ea-1f7e-73b9aae14382´downstream_cells_map�¨forward!‘Ù$d30c8f2a-b0bf-11ea-0557-19bb61118644²upstream_cells_map‡¦Turtle‘Ù$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5b¥push!�¡+�¡*�¦Number�£cos�£sin�Ù$d30c8f2a-b0bf-11ea-0557-19bb61118644„´precedence_heuristic	§cell_idÙ$d30c8f2a-b0bf-11ea-0557-19bb61118644´downstream_cells_map€²upstream_cells_map…¡:�®turtle_drawing‘Ù$6dbce38e-b0bc-11ea-1126-a13e0d575339¦right!‘Ù$fc44503a-b0bf-11ea-0f28-510784847241¨forward!‘Ù$e6c7e5be-b0bf-11ea-1f7e-73b9aae14382¥angle‘Ù$70160fec-b0c7-11ea-0c2a-35418346592e´cell_execution_orderœÙ$70160fec-b0c7-11ea-0c2a-35418346592eÙ$ab083f08-b0c0-11ea-0c23-315c14607f1fÙ$310a0c52-b0bf-11ea-3e32-69d685f2f45eÙ$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5bÙ$5560ed36-b0c0-11ea-0104-49c31d171422Ù$e6c7e5be-b0bf-11ea-1f7e-73b9aae14382Ù$573c11b4-b0be-11ea-0416-31de4e217320Ù$fc44503a-b0bf-11ea-0f28-510784847241Ù$47907302-b0c0-11ea-0b27-b5cd2b4720d8Ù$5aea06d4-b0c0-11ea-19f5-054b02e17675Ù$6dbce38e-b0bc-11ea-1126-a13e0d575339Ù$d30c8f2a-b0bf-11ea-0557-19bb61118644´last_hot_reload_timeË        ©shortpathªturtles.jl®process_status¥ready¤pathÙ@/home/runner/work/disorganised-mess/disorganised-mess/turtles.jl­pluto_version¨v0.19.47®last_save_timeËAÚý`TÙZªcell_orderœÙ$70160fec-b0c7-11ea-0c2a-35418346592eÙ$d30c8f2a-b0bf-11ea-0557-19bb61118644Ù$ab083f08-b0c0-11ea-0c23-315c14607f1fÙ$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5bÙ$310a0c52-b0bf-11ea-3e32-69d685f2f45eÙ$5560ed36-b0c0-11ea-0104-49c31d171422Ù$e6c7e5be-b0bf-11ea-1f7e-73b9aae14382Ù$573c11b4-b0be-11ea-0416-31de4e217320Ù$fc44503a-b0bf-11ea-0f28-510784847241Ù$47907302-b0c0-11ea-0b27-b5cd2b4720d8Ù$5aea06d4-b0c0-11ea-19f5-054b02e17675Ù$6dbce38e-b0bc-11ea-1126-a13e0d575339±published_objects€¥nbpkgŠ¯install_time_nsÎžƒ¢!¬instantiatedÃ²installed_versions€°terminal_outputs�ªnbpkg_syncÚÇ
[0m[1mInstantiating...[22m
[90m===[39m
[32m[1m  No Changes[22m[39m to `/tmp/jl_sHPgyd/Project.toml`
[32m[1m  No Changes[22m[39m to `/tmp/jl_sHPgyd/Manifest.toml`

[0m[1mResolving...[22m
[90m===[39m
[32m[1m  No Changes[22m[39m to `/tmp/jl_sHPgyd/Project.toml`
[32m[1m  No Changes[22m[39m to `/tmp/jl_sHPgyd/Manifest.toml`

[0m[1mPrecompiling...[22m
[90m===[39m
[32m[1m  Activating[22m[39m new project at `/tmp/jl_sHPgyd`§enabledÃ·restart_recommended_msgÀ´restart_required_msgÀ­busy_packages�¶waiting_for_permissionÂÙ,waiting_for_permission_but_probably_disabledÂ«cell_inputsŒÙ$5560ed36-b0c0-11ea-0104-49c31d171422„§cell_idÙ$5560ed36-b0c0-11ea-0104-49c31d171422¤code¶md"## Turtle commands"¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÃÙ$47907302-b0c0-11ea-0b27-b5cd2b4720d8„§cell_idÙ$47907302-b0c0-11ea-0b27-b5cd2b4720d8¤codeÙ9left!(ðŸ�¢::Turtle, angle::Number) = right!(ðŸ�¢, -angle)¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÂÙ$ab083f08-b0c0-11ea-0c23-315c14607f1f„§cell_idÙ$ab083f08-b0c0-11ea-0c23-315c14607f1f¤codeµmd"# ðŸ�¢ definition"¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÃÙ$70160fec-b0c7-11ea-0c2a-35418346592e„§cell_idÙ$70160fec-b0c7-11ea-0c2a-35418346592e¤codeÙO@bind angle HTML("<input type='range' min='0' step='$(pi/100)' max='$(pi/2)'>")¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÂÙ$fc44503a-b0bf-11ea-0f28-510784847241„§cell_idÙ$fc44503a-b0bf-11ea-0f28-510784847241¤codeÙGfunction right!(ðŸ�¢::Turtle, angle::Number)
	ðŸ�¢.heading -= angle
end¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÂÙ$6dbce38e-b0bc-11ea-1126-a13e0d575339„§cell_idÙ$6dbce38e-b0bc-11ea-1126-a13e0d575339¤codeÚfunction turtle_drawing(f::Function)
	ðŸ�¢ = Turtle((150, 150), pi*3/2, true, String[])
	
	f(ðŸ�¢)
	
	image = """<svg version="1.1"
     baseProfile="full"
     width="300" height="300"
     xmlns="http://www.w3.org/2000/svg">""" * join(ðŸ�¢.history) * "</svg>"
	return HTML(image)
end¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÂÙ$573c11b4-b0be-11ea-0416-31de4e217320„§cell_idÙ$573c11b4-b0be-11ea-0416-31de4e217320¤codeÙ8backward!(ðŸ�¢::Turtle, by::Number) = foward!(ðŸ�¢, -by)¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÂÙ$310a0c52-b0bf-11ea-3e32-69d685f2f45e„§cell_idÙ$310a0c52-b0bf-11ea-3e32-69d685f2f45e¤code¸Drawing = Vector{String}¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÂÙ$5aea06d4-b0c0-11ea-19f5-054b02e17675„§cell_idÙ$5aea06d4-b0c0-11ea-19f5-054b02e17675¤codeÙ,md"## Function to make turtle drawings with"¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÃÙ$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5b„§cell_idÙ$6bbb674c-b0ba-11ea-2ff7-ebcde6573d5b¤codeÙhmutable struct Turtle
	pos::Tuple{Number, Number}
	heading::Number
	pen_down::Bool
	history::Drawing
end¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÂÙ$e6c7e5be-b0bf-11ea-1f7e-73b9aae14382„§cell_idÙ$e6c7e5be-b0bf-11ea-1f7e-73b9aae14382¤codeÚNfunction forward!(ðŸ�¢::Turtle, distance::Number)
	old_pos = ðŸ�¢.pos
	new_pos = ðŸ�¢.pos = old_pos .+ (distance .* (cos(ðŸ�¢.heading), sin(ðŸ�¢.heading)))
	if ðŸ�¢.pen_down
		push!(ðŸ�¢.history, """<line x1="$(old_pos[1])" y1="$(old_pos[2])" x2="$(new_pos[1])" y2="$(new_pos[2])" stroke="black" stroke-width="3" />""")
	end
	ðŸ�¢
end¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÂÙ$d30c8f2a-b0bf-11ea-0557-19bb61118644„§cell_idÙ$d30c8f2a-b0bf-11ea-0557-19bb61118644¤codeÙVturtle_drawing() do t
	
	for i in 1:100
		right!(t, angle)
		forward!(t, i)
	end
	
end¨metadataƒ©show_logsÃ¨disabledÂ®skip_as_scriptÂ«code_foldedÂ«notebook_idÙ$da1efb82-4a9e-11f0-22dd-7b6f8d27e71d«in_temp_dirÂ¨metadata€