#99 Article 1048 Posted at 1995/12/18 09:10:06 by BAA (MAP5104) [SAHOU.1]
Subject: Re:*9 プログラミングお作法の話 /969 .... /941 /940
smalltalk で書いてみました。
しかし、smalltalk は、5 年以上昔にちょっと触ってみただけなので、
変なところだらけかもしれません。
処理系は smalltalk 80 ではなく、Linux の ftp サイトにある、
Claus Gittinger さんの作成された、smalltalk/x という処理系です。
Workspace から Nyan new setLines 15 などを printIt で評価すれ
ば動きます。
----------------------------------------
Object subclass:#Nyan
instanceVariableNames:'printString numberOfLines'
classVariableNames:''
poolDictionaries:''
category:'User-Sample'
!
!Nyan methodsFor:'printing'!
printOn: aStream
""
1 to: numberOfLines do: [:n |
((n = 3) | (n = 5) | (n = numberOfLines))
ifTrue: [
1 to: n do: [:m | printString printOn: aStream ].
]
ifFalse: [n printOn: aStream.].
aStream cr.
]
! !
!Nyan methodsFor:'accessing'!
setString: aString
""
printString := aString.
!
setLines: lines
""
numberOfLines := lines.
! !
!Nyan methodsFor:'initialization'!
initialize
super initialize.
self setString: 'meow '.
self setLines: 10.
! !
!Nyan class methodsFor: 'instance creation'!
new
^super new initialize.
! !
----------------------------------------
BAA