;; -*-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 test10)

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

  (define-param-proc my-proc (%arglist)
;;    (((proc (:procedure %arglist (:union (splice %arglist)) pure))
    (((proc (:procedure ((splice %arglist)) (:union (splice %arglist)) pure)))
     (:union (splice %arglist))
     pure)
    (proc 1 2.0 "abc"))

  (define-simple-proc my-proc2
    (((a <integer>) (b <real>) (c <string>))
     (:union <integer> <real> <string>)
     pure)
    (if (equal? a 0)
	b
	c))

  (define main
    (lambda (() <none> nonpure)
      (console-display (my-proc my-proc2))
      (console-newline))))
