Package org.openquark.cal.compiler

Examples of org.openquark.cal.compiler.Compiler


     * Test invoking a non-zero arity run target.
     */
    public void testInvokingNonCAF_lecc () {
        if (test_lecc_machine) {
            WorkspaceManager workspaceManager = leccCALServices.getWorkspaceManager();
            Compiler compiler = leccCALServices.getCompiler();

            CompilerMessageLogger messageLogger = new MessageLogger();
            EntryPoint entryPoint = compiler.getEntryPoint(
                EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.RuntimeRegression, "nonCAFEntryPoint")),
                CALPlatformTestModuleNames.RuntimeRegression, messageLogger);
            if (messageLogger.getNMessages() > 0) {
                System.err.println(messageLogger.toString());
            }
View Full Code Here


     * Test invoking a non-zero arity run target.
     */
    public void testInvokingNonCAF_g () {
        if (test_g_machine) {
            WorkspaceManager workspaceManager = gCALServices.getWorkspaceManager();
            Compiler compiler = gCALServices.getCompiler();

            CompilerMessageLogger messageLogger = new MessageLogger();
            EntryPoint entryPoint = compiler.getEntryPoint(
                EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.RuntimeRegression, "nonCAFEntryPoint")),
                CALPlatformTestModuleNames.RuntimeRegression, messageLogger);
            if (messageLogger.getNMessages() > 0) {
                System.err.println(messageLogger.toString());
            }
View Full Code Here

        List<EntryPoint> entryPoints;

        calServices = BasicCALServices.makeCompiled(WORKSPACE_FILE_NAME, new MessageLogger());

        CompilerMessageLogger messageLogger = new MessageLogger();       
        Compiler compiler = calServices.getCompiler();  

        ModuleName moduleName= ModuleName.make("Cal.Benchmarks.Shootout.ChameneosThreadBody");

        List<QualifiedName> functionalAgentNames = new ArrayList<QualifiedName>();
        functionalAgentNames.add(QualifiedName.make(moduleName, "chameneos"));
        functionalAgentNames.add(QualifiedName.make(moduleName, "makeEmptyRoom"));
        functionalAgentNames.add(QualifiedName.make(moduleName, "Red"));
        functionalAgentNames.add(QualifiedName.make(moduleName, "Yellow"));
        functionalAgentNames.add(QualifiedName.make(moduleName, "Blue"));

        CALExecutor executor = calServices.getWorkspaceManager().makeExecutorWithNewContextAndDefaultProperties();

        entryPoints = compiler.getEntryPoints(EntryPointSpec.buildListFromQualifiedNames(functionalAgentNames),
            moduleName, messageLogger);
       
        if (messageLogger.getNMessages() > 0) {
            System.err.println(messageLogger.toString());
            System.exit(1);
View Full Code Here

        stopWatch.start();
       
        calServices = BasicCALServices.makeCompiled(WORKSPACE_FILE_NAME, new MessageLogger());
       
        CompilerMessageLogger messageLogger = new MessageLogger();       
        Compiler compiler = calServices.getCompiler();  
       
        ModuleName moduleName= ModuleName.make("Cal.Benchmarks.Shootout.MessageThreadBody");
       
        threadBody = compiler.getEntryPoint(
            EntryPointSpec.make(QualifiedName.make("Cal.Benchmarks.Shootout.MessageThreadBody", "threadBody")),
            moduleName, messageLogger);
        if (messageLogger.getNMessages() > 0) {
            System.err.println(messageLogger.toString());
        }
View Full Code Here

        //the result of getNthPrime 5003 is 48649
        //the result of getNthPrime 5004 is 48661
              
        CompilerMessageLogger messageLogger = new MessageLogger();       
        WorkspaceManager workspaceManager = calServices.getWorkspaceManager();
        Compiler compiler = calServices.getCompiler();  
       
        EntryPoint entryPoint = compiler.getEntryPoint(
            EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.M2, "getNthPrime")),
            CALPlatformTestModuleNames.M2, messageLogger);
        if (messageLogger.getNMessages() > 0) {
            System.err.println(messageLogger.toString());
        }
View Full Code Here

        //q       

        CompilerMessageLogger messageLogger = new MessageLogger();
       
        WorkspaceManager workspaceManager = calServices.getWorkspaceManager();
        Compiler compiler = calServices.getCompiler();   
      
        CALExecutor executor = workspaceManager.makeExecutor(executionContext)
       
        //the below function represent a model of what is created when using EntryPointSpec classes i.e.
        //explicit input and output policies.
       
        //allPrimesAdjunct :: Prelude.JObject;
        //allPrimesAdjunct = (Prelude.output # List.toJIterator) M1.allPrimes;           

        EntryPointSpec allPrimesEntryPointSpec =
            EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.M1, "allPrimes"), null, OutputPolicy.ITERATOR_OUTPUT_POLICY);       
       
        EntryPoint allPrimesEntryPoint =
            compiler.getEntryPoint(allPrimesEntryPointSpec, CALPlatformTestModuleNames.M1, messageLogger);
       
        if (messageLogger.getNMessages() > 0) {
            System.err.println(messageLogger.toString());
        }
 
View Full Code Here

        //  q
                       
        CompilerMessageLogger messageLogger = new MessageLogger();
       
        WorkspaceManager workspaceManager = calServices.getWorkspaceManager();
        Compiler compiler = calServices.getCompiler();           
       
        CALExecutor executor = workspaceManager.makeExecutor(executionContext);               
       
        List<EntryPointSpec> entryPointSpecs = new ArrayList<EntryPointSpec>(); //list of EntryPointSpec
       
        //the below function represent a model of what is created when using EntryPointSpec classes i.e.
        //explicit input and output policies.
       
        //allPrimesAdjunct :: Prelude.JObject;
        //allPrimesAdjunct = (Prelude.output # List.toJIterator) M1.allPrimes;          
       
        EntryPointSpec allPrimesEntryPointSpec =
            EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.M1, "allPrimes"), null, OutputPolicy.ITERATOR_OUTPUT_POLICY);
        EntryPointSpec stringListEntryPointSpec =
            EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.M2, "stringList"), null, OutputPolicy.ITERATOR_OUTPUT_POLICY);      
                     
        entryPointSpecs.add(allPrimesEntryPointSpec);
        entryPointSpecs.add(stringListEntryPointSpec);       
        compiler.getEntryPoints(entryPointSpecs, CALPlatformTestModuleNames.M2, messageLogger);
                      
        List<EntryPoint> entryPoints =
            compiler.getEntryPoints(entryPointSpecs, CALPlatformTestModuleNames.M2, messageLogger);
        if (messageLogger.getNMessages() > 0) {
            System.err.println(messageLogger.toString());
        }       
        EntryPoint allPrimesEntryPoint = entryPoints.get(0);
        EntryPoint stringListEntryPoint = entryPoints.get(1);       
View Full Code Here

        //q
              
        CompilerMessageLogger messageLogger = new MessageLogger();
       
        WorkspaceManager workspaceManager = calServices.getWorkspaceManager();
        Compiler compiler = calServices.getCompiler();    
       
        CALExecutor executor = workspaceManager.makeExecutor(executionContext);
       
        EntryPoint allPrimesExternalEntryPoint =
            compiler.getEntryPoint(
                EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.M2, "allPrimesExternal")),
                CALPlatformTestModuleNames.M2, messageLogger);
        if (messageLogger.getNMessages() > 0) {
            System.err.println(messageLogger.toString());
        }
             
        try {
           
            CalValue remainingPrimesCalValue = (CalValue)executor.exec(allPrimesExternalEntryPoint, null);
           
            EntryPoint nextNPrimesExternalEntryPoint =
                compiler.getEntryPoint(
                    EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.M2, "nextNPrimesExternal")),
                    CALPlatformTestModuleNames.M2, messageLogger);
           
            BufferedReader inBuff = new BufferedReader(new BufferedReader(new java.io.InputStreamReader(System.in)));          
View Full Code Here

        //q      
       
        CompilerMessageLogger messageLogger = new MessageLogger();
       
        WorkspaceManager workspaceManager = calServices.getWorkspaceManager();
        Compiler compiler = calServices.getCompiler();    
       
        CALExecutor executor = workspaceManager.makeExecutor(executionContext);               
       
        List<QualifiedName> entryPointNames = new ArrayList<QualifiedName>(); //list of QualifiedName
        entryPointNames.add(QualifiedName.make(CALPlatformTestModuleNames.M2, "allPrimesExternal"));
        entryPointNames.add(QualifiedName.make(CALPlatformTestModuleNames.M2, "stringListExternal"));
        entryPointNames.add(QualifiedName.make(CALPlatformTestModuleNames.M2, "takeNExternal_ListOfInt"));
        entryPointNames.add(QualifiedName.make(CALPlatformTestModuleNames.M2, "takeNExternal_ListOfString"));                      
       
        List<EntryPoint> entryPoints =
            compiler.getEntryPoints(
                EntryPointSpec.buildListFromQualifiedNames(entryPointNames),
                CALPlatformTestModuleNames.M2,
                messageLogger);
       
        if (messageLogger.getNMessages() > 0) {
View Full Code Here

        //  q
                       
        CompilerMessageLogger messageLogger = new MessageLogger();
       
        WorkspaceManager workspaceManager = calServices.getWorkspaceManager();
        Compiler compiler = calServices.getCompiler();          
       
        CALExecutor executor = workspaceManager.makeExecutor(executionContext);               
       
        List<EntryPointSpec> entryPointSpecs = new ArrayList<EntryPointSpec>(); //list of EntryPointSpec
       
        //the below 2 functions represent a model of what is created when using EntryPointSpec classes i.e.
        //explicit input and output policies.
       
        //allPrimesAdjunct :: Prelude.JObject;
        //allPrimesAdjunct = (\x -> Prelude.output ((Prelude.unsafeCoerce x) ::  Prelude.CalValue)) M1.allPrimes;
        //
        //takeNIntAdjunct :: Prelude.JObject -> Prelude.JObject -> Prelude.JObject;
        //takeNIntAdjunct list nToTake =
        //    (\x -> Prelude.output ((Prelude.unsafeCoerce x) :: ([Int], CalValue)))
        //        (takeN
        //            ((\x -> (Prelude.unsafeCoerce ((Prelude.input x) :: Prelude.CalValue)) :: [Prelude.Int]) list)
        //            ((Prelude.input :: Prelude.JObject -> Prelude.Int) nToTake)
        //         );
       
        EntryPointSpec allPrimesEntryPointSpec =
            EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.M1, "allPrimes"), new InputPolicy[] {}, OutputPolicy.CAL_VALUE_OUTPUT_POLICY);
        EntryPointSpec stringListEntryPointSpec =
            EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.M2, "stringList"), new InputPolicy[] {}, OutputPolicy.CAL_VALUE_OUTPUT_POLICY);
       
        String Prelude_Int = CAL_Prelude.TypeConstructors.Int.getQualifiedName();
        String Prelude_CalValue = CAL_Prelude.TypeConstructors.CalValue.getQualifiedName();
        String Prelude_String = CAL_Prelude.TypeConstructors.String.getQualifiedName();
        String Prelude_unsafeCoerce = CAL_Prelude.Functions.unsafeCoerce.getQualifiedName();
        String Prelude_output = CAL_Prelude.Functions.output.getQualifiedName();
       
        SourceModel.TypeExprDefn listOfIntType = SourceModel.TypeExprDefn.List.make(SourceModel.TypeExprDefn.TypeCons.make(CAL_Prelude.TypeConstructors.Int));
        EntryPointSpec takeNListOfInt =
            EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.M2, "takeN"), new InputPolicy[] {
            InputPolicy.makeTypedCalValueInputPolicy(listOfIntType),
            InputPolicy.DEFAULT_INPUT_POLICY
            }, OutputPolicy.make("(\\x -> " + Prelude_output + " ((" + Prelude_unsafeCoerce + " x) :: ([" + Prelude_Int + "], " + Prelude_CalValue + ")))"));

       
        SourceModel.TypeExprDefn listOfStringType = SourceModel.TypeExprDefn.List.make(SourceModel.TypeExprDefn.TypeCons.make(CAL_Prelude.TypeConstructors.String));
        EntryPointSpec takeNListOfString =
            EntryPointSpec.make(QualifiedName.make(CALPlatformTestModuleNames.M2, "takeN"), new InputPolicy[] {
            InputPolicy.makeTypedCalValueInputPolicy(listOfStringType),
            InputPolicy.DEFAULT_INPUT_POLICY
        }, OutputPolicy.make("(\\x -> " + Prelude_output + " ((" + Prelude_unsafeCoerce + " x) :: ([" + Prelude_String + "], " + Prelude_CalValue + ")))"));       
                     
        entryPointSpecs.add(allPrimesEntryPointSpec);
        entryPointSpecs.add(stringListEntryPointSpec);
        entryPointSpecs.add(takeNListOfInt);
        entryPointSpecs.add(takeNListOfString);       
                      
        List<EntryPoint> entryPoints =
            compiler.getEntryPoints(entryPointSpecs, CALPlatformTestModuleNames.M2, messageLogger);
        if (messageLogger.getNMessages() > 0) {
            System.err.println(messageLogger.toString());
        }
        EntryPoint allPrimesEntryPoint = entryPoints.get(0);
        EntryPoint stringListEntryPoint = entryPoints.get(1);
View Full Code Here

TOP

Related Classes of org.openquark.cal.compiler.Compiler

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.