Coder Social home page Coder Social logo

Comments (13)

glennj avatar glennj commented on June 30, 2024

I'm sorry you're having a tough time. Unfortunately Exercism is really equipped to teach you about the Pharo IDE. Have you read through the Pharo docs and followed the resources?

Also the Pharo discord will have information for beginners: https://discord.gg/kxtXPbfh

from pharo-smalltalk.

youve avatar youve commented on June 30, 2024

I did read the docs. The part where I got stuck was that I couldn't find the code inside the IDE to edit it -- I did spend at least ten minutes, probably more clicking everything I could think of and exploring the menus, but I know that's not exercism's job to teach me a language that I don't know anything about, it's okay. I gave it a try and I think I don't want to learn something right now that I can't edit in vim.

The reason I reported it as a bug is that I can submit a solution that doesn't solve the exercise and still get credit for it: the test runner says that all 19 tests passed, but if you look at the code I entered, you can see that it should not pass the tests in the roman numerals problem:

Class {
        #name : #HelloWorld,
        #superclass : #Object,
        #category : #'Exercise@HelloWorld'
}
{ #category : #example }
HelloWorld class >> sayHello [
        ^ 'Goodbye, Mars!'
]

from pharo-smalltalk.

Bajger avatar Bajger commented on June 30, 2024

Hi @youve! Thanks for reporting this, I will definitely look at this! Did you submit your exercise via IDE or through Exercism website (code editor)?

Regarding finding a code: On page there is a paragraph dealing with System Browser - place where you can see how Pharo code is organized. See: https://exercism.org/docs/tracks/pharo-smalltalk/installation
You can type also shift + enter this would enable quick search and try to find hello, it should give you options to browse package or class. If you find documentation confusing, not clear enough, let me know how to improve this.
Quick search:
obrazek

System browser:
obrazek

from pharo-smalltalk.

youve avatar youve commented on June 30, 2024

Hi! I submitted it through Exercism website (code editor). The same code snippet works for the other exercises, too - I first noticed it with two-fer but I didn't publish that as a solution.

Thanks for the screenshots, I'll give it another try later today.

from pharo-smalltalk.

Bajger avatar Bajger commented on June 30, 2024

It is related to old issue, which still preserves in Pharo. pharo-project/pharo#11155
Problem is that Pharo test runner uses "vanilla" image, that includes all example sources and tests. Source classes are deleted before import of your solution. Problem is in the fact that even after deletion of original class with solution, test keeps remembering deleted class (still refers to that - it is called ObsoleteClass), until new class is recompiled by your source code import. But if your source code doesn't include definition of roman numerals class (you left there HelloWorld class), it keeps using the ObsoleteClass (with all methods from vanilla solution).

TLDR: I will try to find a way:

  • either by not using image with all example solutions
  • or compile dummy RomanNumeral class without any method definition
  • or find a way to convince instance of ObsoleteClass to not execute original compiled method

from pharo-smalltalk.

Bajger avatar Bajger commented on June 30, 2024

Fix must be applied to test runner, after that will be applicable on Exercism website.

from pharo-smalltalk.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.