Skip to content

High school sweetheart #830

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 0 commits into from
Closed

Conversation

depial
Copy link
Contributor

@depial depial commented Feb 26, 2025

This is the concept exercise high-school-sweetheart to accompany the concept function compsition(#821). This has been taken from the crystal version with minor modifications made for the Julia language. Also the word 'ASCII' has been replaced by 'unicode', since this is more accurate.

The introduction.md has been left blank, to be filled in once the about.md is made for the concept.

@depial
Copy link
Contributor Author

depial commented Feb 26, 2025

As this was taken from the Crystal version, which I believe is meant as a string method concept exercise, instructions.md and hints.md need some updating to better highlight the ideas of function composition.

@colinleach
Copy link
Contributor

Hmmm... I'm trying to remember why I put this down as a possible exercise for this concept. Gleam uses it for the pipe-operator concept, which may be relevant. Dow that have a more useful set of documents?

This is the list I've been working from.

@depial
Copy link
Contributor Author

depial commented Feb 26, 2025

It's quite fine for function composition, since it allows for use of the function composition operator, as well as piping and nesting. Actually, my first exemplar.jl used the composition operator, but I reverted to more explicit function calls for clarity.

I think I'll change the exemplar to include varied function composition techniques.

instructions.md and hints.md just need to be modified for the change in emphasis, which I'll be happy to do. I just wanted to get things up for collaboration's sake.

@colinleach
Copy link
Contributor

My brain is pretty frazzled after the recent booleans fiasco, so I'm reluctant to touch anything at the moment. It will be better/safer if I look at this tomorrow, if that's OK with you.

It's probably best if you make the introduction.md while you have your head into the exercise. It should just mean deleting stuff, which is a lot quicker and easier than writing it.

@colinleach
Copy link
Contributor

colinleach commented Mar 2, 2025

Oops, I was a bit quick to approve this. The .meta/design.md file is now officially required (though it's missing from many older exercises, so linting doesn't complain).

Content is pretty flexible, but if it helps this is the most recent one I wrote:


Design

Goal

The goal of this exercise is to teach the student the basics of vectors (1-D arrays) in Julia.

Learning objectives

  • Know that a vector is an ordered, homogeneous collection (though the type can be Any).
  • Know how to create vectors.
  • Understand vector indexing
  • Know that negative indices are not allowed.
  • Know how to modify, insert and delete enties

Out of scope

These will be covered in the vector-operations Concept:

  • More complex slicing
  • Most other vector operations

Concepts

The Concepts this exercise unlocks are:

  • vectors

Prerequisites

  • conditionals

@colinleach
Copy link
Contributor

I should have said: configlet fmt -e <slug> -u -y will take care of all JSON cleanup.

Also, I think it's best to add a design.md, but then go ahead and merge when you're ready. I suspect several of these will later need some small edits, once we have a better understanding of dependencies.

Copy link
Contributor

@colinleach colinleach left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I belatedly woke up...

After much coffee, I finally noticed that introduction.md is still empty!

@depial depial closed this Mar 3, 2025
@depial depial force-pushed the high-school-sweetheart branch from 02ff860 to 48f0625 Compare March 3, 2025 22:47
@colinleach
Copy link
Contributor

I'm a bit surprised to see you closed this. Wasn't it quite close to being ready to merge?

@depial
Copy link
Contributor Author

depial commented Mar 3, 2025

It closed automatically when I was trying to sync the branch with the head...

I've opened another here (#836)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants