Build representer
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- coffeescript
- Domain
- tooling
Research direction
Start with the representer interface and creating-from-scratch guide linked in the issue, then compare implementations from other Exercism tracks. Check the track's config.json for the .status.representer key. Done means the CoffeeScript track has a working representer that follows the spec, or an existing one is confirmed and the issue can be closed.
Written by the indexing model from the issue text.
Description
In Exercism v3, we're introducing a new (optional) tool: the representer. The goal of the representer is to take a solution and returning a representation, which is an extraction of a solution to its essence with normalized names, comments, spacing, etc. but still uniquely identifying the approach taken. Two different ways of solving the same exercise must not have the same representation.
Each representer is track-specific. When a new solution is submitted, we run the track's representer, which outputs two JSON files that describe the representation.
Once we have a normalized representation for a solution, a team of vetted mentors will look at the solution and comment on it (if needed). These comments will then automatically be submitted to each new solution with the same representation. A notification will be sent for old solutions with a matching representation.
The representer is an optional tool though, which means that if a track does not have a representer, it will still function normally.
Goal
Build a representer for your track according to the spec. Check this page to help you get started with building a representer.
Note that the simplest representer is one that merely returns the solution's source code.
It can be very useful to check how other tracks have implemented their representer.
If your track already has a working representer, please close this issue and ensure that the .status.representer key in the track config.json file is set to true.
Choosing between representer and analyzer
There is some overlap between the goals of the representer and the analyzer. If you want to build both, we recommend starting by building the representer for the following reasons:
- Representers are usually (far) easier to implement
- Representers can have a far bigger impact on the mentoring load than analyzers by empowering mentors
- Representers apply to all exercises, whereas analyzers usually target specific exercises or a subset
Tracking
- Dominant language
- CoffeeScript
- Stars
- 19
- Forks
- 49
- Avg merge
- 22m
- Merged PRs (30d)
- 3
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from exercism/coffeescript
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
exercism/coffeescript#422 ·
-
🚨 configlet sync --test found unsynced testsMay be free again @BNAndras claimed this 59 days ago, and no pull request is open. Open
exercism/coffeescript#410 · 1 assignee ·
-
Build analyzerOpenx:action/create x:knowledge/advanced x:module/analyzer x:size/massive x:type/coding
Difficulty 5/5 Over a week Newbie friendliness 30/100
exercism/coffeescript#167 ·
-
Pass linting checksOpenx:action/fix x:knowledge/elementary x:size/medium x:type/content
Difficulty 3/5 1-2 days Newbie friendliness 30/100
exercism/coffeescript#133 · 1 comment ·
-
x:action/improve x:knowledge/intermediate x:module/practice-exercise x:size/large x:type/content
Difficulty 4/5 3-5 days Newbie friendliness 30/100
exercism/coffeescript#132 · 1 comment ·
All issues in exercism/coffeescript
Similar issues
-
area:release bug
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
registrystack/registry-stack#1874 ·
Maintainers usually reply within 1 day
-
namespace operations
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
EclipseFdn/open-vsx.org#13702 ·
Maintainers usually reply within 1 day
-
Adding SIMD typesOpen
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
material-extensions/vscode-material-icon-theme#3610 ·
Maintainers usually reply within 2 days
-
deltareview treats a line-range citation as an unknown path, firing the delta-review pass spuriouslyOpenagent-butler-finding bug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
jordansmall/spindrift#4366 ·
Maintainers usually reply within 1 day