comparison nworker.rhope @ 34:df038cef648b

More work on supporting user defined types in the C backend
author Mike Pavone <pavone@retrodev.com>
date Wed, 30 Sep 2009 01:25:03 -0400
parents 914ad38f9b59
children 495dddadd058
comparison
equal deleted inserted replaced
33:3b47a8538df2 34:df038cef648b
652 } 652 }
653 } 653 }
654 654
655 Test[:out] 655 Test[:out]
656 { 656 {
657 ref+ <- Worker Ref["+","cdecl",2,1] 657 ref+ <- Worker Ref["+","rhope",2,1]
658 ref* <- Worker Ref["*","cdecl",2,1] 658 ref* <- Worker Ref["*","rhope",2,1]
659 ,a <- [NWorker["cdecl"] 659 ,a <- [NWorker["rhope"]
660 ]Add Input["a", 0] { 660 ]Add Input["a", 0] {
661 ,b <- [~]Add Input["b", 1] { 661 ,b <- [~]Add Input["b", 1] {
662 ,c <- [~]Add Input["c", 2] { 662 ,c <- [~]Add Input["c", 2] {
663 ,outref <- [~]Add Output["out", 0] { 663 ,outref <- [~]Add Output["out", 0] {
664 ,call+ <- [~]Add Worker Call[ref+] { 664 ,call+ <- [~]Add Worker Call[ref+] {
714 out <- [prog]Worker Refs <<[ [[prog]Worker Refs >>]Set[name, Worker Ref[name, convention, inputs, outputs]]] 714 out <- [prog]Worker Refs <<[ [[prog]Worker Refs >>]Set[name, Worker Ref[name, convention, inputs, outputs]]]
715 } 715 }
716 716
717 Register Builtins@NProgram[prog:out] 717 Register Builtins@NProgram[prog:out]
718 { 718 {
719 out <- [[[[[[[[[prog]Register Worker["+", "cdecl", 2, 1] 719 out <- [[[[[[[[[prog]Register Worker["+", "rhope", 2, 1]
720 ]Register Worker["-", "cdecl", 2, 1] 720 ]Register Worker["-", "rhope", 2, 1]
721 ]Register Worker["*", "cdecl", 2, 1] 721 ]Register Worker["*", "rhope", 2, 1]
722 ]Register Worker["/", "cdecl", 2, 1] 722 ]Register Worker["/", "rhope", 2, 1]
723 ]Register Worker["Print", "cdecl", 1, 1] 723 ]Register Worker["Print", "rhope", 1, 1]
724 ]Register Worker["Index", "cdecl", 2, 1] 724 ]Register Worker["Index", "rhope", 2, 1]
725 ]Register Worker["If", "cdecl", 1, 2] 725 ]Register Worker["If", "rhope", 1, 2]
726 ]Register Worker["<", "cdecl", 2, 1] 726 ]Register Worker["<", "rhope", 2, 1]
727 ]Register Worker["<String@Whole Number", "cdecl", 1, 1] 727 ]Register Worker[">", "rhope", 1, 1]
728 } 728 }
729 729
730 Find Worker@NProgram[prog, name:out,notfound] 730 Find Worker@NProgram[prog, name:out,notfound]
731 { 731 {
732 Print[ ["Find Worker@NProgram: "]Append[name] ] 732 Print[ ["Find Worker@NProgram: "]Append[name] ]