Transcript show: 'Derp'.
printSomething: 'Derpy'.
"The method above produced this error:"
"prog.st:3: expected expression"
printSomething: what
10 timesRepeat: [
Transcript show:what.
Transcript cr.
].
Сейчас я пытаюсь научить себя Smalltalk, и я до сих пор не понял, как назвать функцию, которую я написал. Я попытался вызвать функцию printSomething
с параметром 'Derpy'
с помощью оператора printSomething: 'Derpy'.
, но вместо вызова функции он произвел следующую ошибку: prog.st:3: expected expression
.Каков правильный способ определения и вызова функций в GNU Smalltalk?
Что я здесь делаю неправильно, и каков правильный способ вызова функций с параметрами в Smalltalk? Ни один из обучающих программ, которые я прочитал, до сих пор не ответил на мой вопрос, и я все еще немного смущен.
У вас есть ошибка капитализации в вашем коде. Имя метода имеет капитал P, но вы пытаетесь называть его строчным p. – fzwo
@fzwo Тем не менее, та же ошибка возникает, даже если ошибка капитализации была исправлена. Я до сих пор не понял правильный синтаксис для вызовов функций Smalltalk. –
В следующий раз добавьте тег, в котором указывается, какой Smalltalk вы используете. GNU Smalltalk и Squeak/Pharo работают по-разному с точки зрения того, как они обрабатывают исходный код. –