Mercurial > repos > rhope
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] ] |