# See the License for the specific language governing permissions and
# limitations under the License.
-# A simple exemple of refinement where a method is added to the integer class.
-package fibonacci
+# Simple example of refinement where a method is added to the integer class.
+module fibonacci is example
redef class Int
# Calculate the self-th element of the fibonacci sequence.
- meth fibonacci: Int
+ fun fibonacci: Int
do
- if self < 2 then
- return 1
- else
- return (self-2).fibonacci + (self-1).fibonacci
- end
- end
+ if self < 2 then return self
+ return (self-2).fibonacci + (self-1).fibonacci
+ end
end
# Print usage and exit.
-meth usage
+fun usage
do
print "Usage: fibonnaci <integer>"
exit 0