Package wyvern.tools.types

Examples of wyvern.tools.types.Environment.extend()


  public Value evaluateApplication(Application app, Environment argEnv) {
    Value argValue = app.getArgument().evaluate(argEnv);
    Environment bodyEnv = env;
    List<NameBinding> bindings = function.getArgBindings();
    if (bindings.size() == 1)
      bodyEnv = bodyEnv.extend(new ValueBinding(bindings.get(0).getName(), argValue));
    else if (bindings.size() > 1 && argValue instanceof TupleValue)
      for (int i = 0; i < bindings.size(); i++)
        bodyEnv = bodyEnv.extend(new ValueBinding(bindings.get(i).getName(), ((TupleValue)argValue).getValue(i)));
    else if (bindings.size() != 0)
      throw new RuntimeException("Something bad happened!");
View Full Code Here


    List<NameBinding> bindings = function.getArgBindings();
    if (bindings.size() == 1)
      bodyEnv = bodyEnv.extend(new ValueBinding(bindings.get(0).getName(), argValue));
    else if (bindings.size() > 1 && argValue instanceof TupleValue)
      for (int i = 0; i < bindings.size(); i++)
        bodyEnv = bodyEnv.extend(new ValueBinding(bindings.get(i).getName(), ((TupleValue)argValue).getValue(i)));
    else if (bindings.size() != 0)
      throw new RuntimeException("Something bad happened!");
   
    return function.getBody().evaluate(bodyEnv);
  }
View Full Code Here

import wyvern.tools.types.extensions.Unit;

public class Globals {
  public static Environment getStandardEnv() {
    Environment env = Environment.getEmptyEnvironment();
    env = env.extend(new ImportResolverBinding("java",JavaResolver.getInstance()));
    env = env.extend(new ImportResolverBinding("wyv", WyvernResolver.getInstance()));

    env = env.extend(new TypeBinding("Unit", Unit.getInstance()));
    env = env.extend(new TypeBinding("Int", Int.getInstance()));
    env = env.extend(new TypeBinding("Bool", Bool.getInstance()));
View Full Code Here

public class Globals {
  public static Environment getStandardEnv() {
    Environment env = Environment.getEmptyEnvironment();
    env = env.extend(new ImportResolverBinding("java",JavaResolver.getInstance()));
    env = env.extend(new ImportResolverBinding("wyv", WyvernResolver.getInstance()));

    env = env.extend(new TypeBinding("Unit", Unit.getInstance()));
    env = env.extend(new TypeBinding("Int", Int.getInstance()));
    env = env.extend(new TypeBinding("Bool", Bool.getInstance()));
    env = env.extend(new TypeBinding("Str", Str.getInstance()));
View Full Code Here

  public static Environment getStandardEnv() {
    Environment env = Environment.getEmptyEnvironment();
    env = env.extend(new ImportResolverBinding("java",JavaResolver.getInstance()));
    env = env.extend(new ImportResolverBinding("wyv", WyvernResolver.getInstance()));

    env = env.extend(new TypeBinding("Unit", Unit.getInstance()));
    env = env.extend(new TypeBinding("Int", Int.getInstance()));
    env = env.extend(new TypeBinding("Bool", Bool.getInstance()));
    env = env.extend(new TypeBinding("Str", Str.getInstance()));
   
    env = env.extend(new ValueBinding("null", UnitVal.getInstance(FileLocation.UNKNOWN))); // How to represent  shock/horror  null!?
View Full Code Here

    Environment env = Environment.getEmptyEnvironment();
    env = env.extend(new ImportResolverBinding("java",JavaResolver.getInstance()));
    env = env.extend(new ImportResolverBinding("wyv", WyvernResolver.getInstance()));

    env = env.extend(new TypeBinding("Unit", Unit.getInstance()));
    env = env.extend(new TypeBinding("Int", Int.getInstance()));
    env = env.extend(new TypeBinding("Bool", Bool.getInstance()));
    env = env.extend(new TypeBinding("Str", Str.getInstance()));
   
    env = env.extend(new ValueBinding("null", UnitVal.getInstance(FileLocation.UNKNOWN))); // How to represent  shock/horror  null!?
    env = env.extend(new ValueBinding("true", new BooleanConstant(true)));
View Full Code Here

    env = env.extend(new ImportResolverBinding("java",JavaResolver.getInstance()));
    env = env.extend(new ImportResolverBinding("wyv", WyvernResolver.getInstance()));

    env = env.extend(new TypeBinding("Unit", Unit.getInstance()));
    env = env.extend(new TypeBinding("Int", Int.getInstance()));
    env = env.extend(new TypeBinding("Bool", Bool.getInstance()));
    env = env.extend(new TypeBinding("Str", Str.getInstance()));
   
    env = env.extend(new ValueBinding("null", UnitVal.getInstance(FileLocation.UNKNOWN))); // How to represent  shock/horror  null!?
    env = env.extend(new ValueBinding("true", new BooleanConstant(true)));
    env = env.extend(new ValueBinding("false", new BooleanConstant(false)));
View Full Code Here

    env = env.extend(new ImportResolverBinding("wyv", WyvernResolver.getInstance()));

    env = env.extend(new TypeBinding("Unit", Unit.getInstance()));
    env = env.extend(new TypeBinding("Int", Int.getInstance()));
    env = env.extend(new TypeBinding("Bool", Bool.getInstance()));
    env = env.extend(new TypeBinding("Str", Str.getInstance()));
   
    env = env.extend(new ValueBinding("null", UnitVal.getInstance(FileLocation.UNKNOWN))); // How to represent  shock/horror  null!?
    env = env.extend(new ValueBinding("true", new BooleanConstant(true)));
    env = env.extend(new ValueBinding("false", new BooleanConstant(false)));
   
View Full Code Here

    env = env.extend(new TypeBinding("Unit", Unit.getInstance()));
    env = env.extend(new TypeBinding("Int", Int.getInstance()));
    env = env.extend(new TypeBinding("Bool", Bool.getInstance()));
    env = env.extend(new TypeBinding("Str", Str.getInstance()));
   
    env = env.extend(new ValueBinding("null", UnitVal.getInstance(FileLocation.UNKNOWN))); // How to represent  shock/horror  null!?
    env = env.extend(new ValueBinding("true", new BooleanConstant(true)));
    env = env.extend(new ValueBinding("false", new BooleanConstant(false)));
   
    env = env.extend(new ValueBinding("print", new ExternalFunction(arrow(str, unit), (env1, argument) -> {
      System.out.println(((StringConstant)argument).getValue());
View Full Code Here

    env = env.extend(new TypeBinding("Int", Int.getInstance()));
    env = env.extend(new TypeBinding("Bool", Bool.getInstance()));
    env = env.extend(new TypeBinding("Str", Str.getInstance()));
   
    env = env.extend(new ValueBinding("null", UnitVal.getInstance(FileLocation.UNKNOWN))); // How to represent  shock/horror  null!?
    env = env.extend(new ValueBinding("true", new BooleanConstant(true)));
    env = env.extend(new ValueBinding("false", new BooleanConstant(false)));
   
    env = env.extend(new ValueBinding("print", new ExternalFunction(arrow(str, unit), (env1, argument) -> {
      System.out.println(((StringConstant)argument).getValue());
      return UnitVal.getInstance(FileLocation.UNKNOWN); // Fake line number! FIXME:
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. 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.