Comments (5)
This has been committed
from pharo-smalltalk.
@kytrinyx I don't understand - that link just says the directories have to match whats in config.json - so if the config slug says HelloWorld, why wouldn't it work?
We're trying to come up with simple mapping mechanisms to match a non-file based language (Smalltalk) to Exercism, so I was hoping to just use the Package name in smalltalk to generate that directory but in our package names "-" has a special sub package meaning, and names must being with a capital. Hence in Smalltalk we would use HelloWorld.
I can find another way, but I'm obviously missing the key documentation somehow?
from pharo-smalltalk.
I'll need to update the instructions, in that case.
The config slugs must be all lowercase, and hyphenated. The exercise slug is used as an identifier by the website, as well as to identify the exercise by the command-line app. Additionally, we use the slug to connect the exercise implementation in each language to the problem specification for the same exercise in https://github.com/exercism/problem-specifications.
The files themselves, or subdirectories within it could all have camel-case, but we have a lot of things that rely on the underlying assumption that the directory itself is normalized to kebab-case.
from pharo-smalltalk.
@kytrinyx ok - this where the onboarding for developers of a track is all a bit mysterious - the docs are a bit sprawling and its not obvious what is configuration and what is convention (particularly for non c-style languages that have different conventions). In retrospect it makes sense now - I'll just need to do a bit more work in our mapping-generation.
I'm hoping this is all worth while, as it seems a shame not to have languages that work a bit differently in your tracks - and give people an opportunity to learn something a bit different (I guess with common tools like exercism that they feel comfortably with).
I think we can pull it off.
from pharo-smalltalk.
I'm hoping this is all worth while, as it seems a shame not to have languages that work a bit differently in your tracks
Yes! I definitely want to be able to support languages that work differently, it's just not come up before. I think this means you're a pioneer :)
from pharo-smalltalk.
Related Issues (20)
- Fix dependency conflict during loading dev baseline HOT 1
- Update link to CLI token in Pharo UI dialog
- Update conributing guidelines to be up-to-date
- Update reference material - Pharo By Example
- Fix typos in Key features description
- Error in getting solution path string in Pharo8
- Add support for P11 and remove support for versions 7, 8
- Test runner passes unexpected on empty class definition with no method defined
- Test runner should exit with zero code when result.json is produced
- Refactor Exercise test generator
- Add Binary Search Tree exercise
- Add Simple Cipher exercise
- Fix test runner error status, when all tests ran
- Out-of-sync unit tests for resistor color duo
- Building a training set of tags for pharo-smalltalk HOT 29
- Configure tokei for pharo HOT 11
- Building a training set of tags for pharo-smalltalk - fixed version (community solutions) HOT 19
- All pharo tests pass even though i didn't solve the exercise HOT 13
- Fix TonelParser to return correct error when parsing empty file
- Test runner fails on Minesweeper exercise
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pharo-smalltalk.