;; -*-theme-d-*-

;; Copyright (C) 2008-2013 Tommi Höynälänmaa
;; Distributed under GNU General Public License version 3,
;; see file doc/GPL-3.

;; Expected results: translation and running OK


(define-proper-program (tests test347)


  (import (standard-library core)
	  (standard-library basic-math)
	  (standard-library console-io))


  (define <number> (:union <integer> <real>))


  (define-simple-proc number->real (((nr <number>)) <real> pure)
    (match-type nr
      ((r <real>) r)
      ((i <integer>) (integer->real i))
      (else (raise 'number-type-mismatch))))


  (define main
    (lambda (() <none> nonpure)
      (console-display-line (number->real 10))
      (console-display-line (number->real 5.5)))))
