bootstrapworld / curriculum

6 stars 7 forks source link

add explanation of how to convert circles to code in pyret back into order of operations lesson #979

Closed flannery-denny closed 2 years ago

flannery-denny commented 2 years ago

fixes also need to happen in slides.

and, it seems to me, that we should show an example before we start telling them not to worry about parentheses. but I defer to @schanzer on that.

schanzer commented 2 years ago

@flannery-denny I've fixed the lesson and slides, along with generating new images.

Also updated the slide images in our Fall2022 folder. If these look good to you, feel free to update the PD decks accordingly and close the issue.

schanzer commented 2 years ago

@flannery-denny I went ahead an updated the PD decks as well. Close if you're happy with how the slides look?

flannery-denny commented 2 years ago

@schanzer the lesson plan looks great... there are some ways that the slides diverge from the lesson plan that don't make sense to me. I'll work on fixing it.

flannery-denny commented 2 years ago

@schanzer wow. the slides.md file has so many instance where wescheme and pyret should be different and there's no @ifproglang being used... I think this is a pretty stable lesson and it looks like you've been updating slides.md so I'm inclined to think it's worth getting it right on git... if that's the goal, I need a zoom date to clarify some things... but maybe I should just fix the slides on googledrive?

schanzer commented 2 years ago

@flannery-denny I'm not seeing what you're seeing. I took a careful pass and actually removed two @ifproglangs.

I don't see much that needs to be different for Pyret v. WeScheme. If you feel strongly, please feel free to propose a change by tomorrow. Otherwise, we need to close this and move on.

flannery-denny commented 2 years ago

@schanzer aren't most of the coe and code images proglang specific? I'm not seeing that in the slides.md file

schanzer commented 2 years ago

@flannery-denny Check out the slides themselves. If you see any problems, let me know. They all look good to me.

Also note that language-specific images do not necessarily need to be wrapped in @ifproglang: the images directory for this lesson has pyret and wescheme subfolders, which allows the asciidoc and markdown files to refer to them by filename and let the build system handle sorting out which image is which.

flannery-denny commented 2 years ago

That clarifies things. Thanks. I’ll have another look in the morning.

The other place that seemed to require @ifproglang when I was working on slides was the code provided as answers for teachers in the speaker notes.

Flannery

On Jun 22, 2022, at 8:57 PM, Emmanuel Schanzer @.***> wrote:

 @flannery-denny Check out the slides themselves. If you see any problems, let me know. They all look good to me.

Also note that language-specific images do not necessarily need to be wrapped in @ifproglang: the images directory for this lesson has pyret and wescheme subfolders, which allows the asciidoc and markdown files to refer to them by filename and let the build system handle sorting out which image is which.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.

schanzer commented 2 years ago

@flannery-denny Ah! The teachers' notes!

OK, done and pushed.

flannery-denny commented 2 years ago

@schanzer

  1. don't we want #:parens true for this code?
  2. why are we asking them to write the code for the two examples we've just shown them how to write the code for - the lesson plan doesn't do that.
  3. and why are we leaving out this text from the lesson plan?

*Arithmetic expressions involving more than one operation, will end up with more than one @.{wescheme}{and more than one pair of @.{pyret}{and, whether or not there are parentheses in the original expression, the code requires parentheses to clarify the order in which the operations should be completed.}*

On Wed, Jun 22, 2022 at 9:13 PM Emmanuel Schanzer @.***> wrote:

@flannery-denny https://github.com/flannery-denny Ah! The teachers' notes!

OK, done and pushed.

— Reply to this email directly, view it on GitHub https://github.com/bootstrapworld/curriculum/issues/979#issuecomment-1163845672, or unsubscribe https://github.com/notifications/unsubscribe-auth/AP4Z7TFKLZFGOVVCGHHOKS3VQPB3FANCNFSM5ZM6DPAQ . You are receiving this because you were mentioned.Message ID: @.***>

schanzer commented 2 years ago

@flannery-denny

  1. We do have #:parens true in the code! see line 207
  2. Good point! I removed the code
  3. That text is in the lesson plan! Are you asking about the slides? Rachel did all the slides for the Algebra pathway, so you'd have to ask her. I'm fine with you adding this to the slides.
flannery-denny commented 2 years ago

@schanzer I've pushed suggestions, but don't remember how to build slides so haven't confirmed that they look how I expect them to and haven't broken anything.

flannery-denny commented 2 years ago

As in math, in Pyret there are some cases where the outermost parentheses can be removed: (1 + 2) can be safely written as 1 + 2, and the same goes for the Pyret code (1 2) 3) can be safely written as 1 2 3, and the same goes for the Pyret code It is always better to at least start with the parentheses before taking them out. It is never wrong to include them!

All four of the examples before the slide above should have all of the parentheses. and avoiding @ifproglang is putting the fate of the parentheses in Dorai's code, which defaults to

2(3+8) instead of (2 (3 + 8))

@schanzer I added the outer parentheses in the speaker notes of the pyret slide decks by hand, because I need to move on to finishing the deck. If someone builds the slides in git, my fixes will be overwritten. If you can figure out how to fix them in slides.md, great.

schanzer commented 2 years ago

@flannery-denny I've already fixed slides.md, so your fixes will not be forgotten!

@retabak , in the future be sure to use @show{(code '(+ 1 2)} instead of writing 1 + 2. This ensures that the correct code will be generated regardless of proglang.

In the Pyret slide deck, all the code examples have all the parentheses.

Closing at last!