;; -*-theme-d-*-

;; Copyright (C) 2014  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 test245)


  (import (standard-library core)
	  (standard-library list-utilities)
	  (standard-library complex)
	  (standard-library console-io))


  (define main
    (lambda (() <none> nonpure)
      (console-display (real->complex 1.5))
      (console-newline)
      (console-display (integer->complex 1))
      (console-newline)
      (console-display (make-polar 2.0 1.57))
      (console-newline)
      (let ((cx (complex -1.1 2.5))
	    (functions (:uniform-list (:procedure (<complex>) <object> (pure)))
		       (list real-part imag-part abs c-angle - square)))
	(for-each (lambda (((fn (:procedure (<complex>) <object> (pure))))
			   <none> (nonpure))
		    (console-display (fn cx))
		    (console-newline))
		  functions)))))
