diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastROptionBuiltin.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastROptionBuiltin.java
index 5327a8a1ade517ffa7577e33bc555425e002afe8..e4f5044921f381977a3b9dac8b0cc8de59b7f913 100644
--- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastROptionBuiltin.java
+++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastROptionBuiltin.java
@@ -32,6 +32,7 @@ import com.oracle.truffle.r.nodes.builtin.RBuiltinNode;
 import com.oracle.truffle.r.runtime.FastROptions;
 import com.oracle.truffle.r.runtime.RRuntime;
 import com.oracle.truffle.r.runtime.builtins.RBuiltin;
+import com.oracle.truffle.r.runtime.context.RContext;
 import com.oracle.truffle.r.runtime.data.RNull;
 
 /**
@@ -48,6 +49,9 @@ public abstract class FastROptionBuiltin extends RBuiltinNode.Arg1 {
     @Specialization
     @TruffleBoundary
     protected Object getOption(String name) {
+        if ("hostLookup".equals(name)) {
+            return RRuntime.asLogical(RContext.getInstance().getEnv().isHostLookupAllowed());
+        }
         FastROptions opt = null;
         try {
             opt = Enum.valueOf(FastROptions.class, name);
diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/methods/R/methods_overrides.R b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/methods/R/methods_overrides.R
index 0eb43ee900daf5ef38ee37c0e1c4c81d6148feb8..f317d4cfba5ea6aa0075a9f7c70c2069c112bd6c 100644
--- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/methods/R/methods_overrides.R
+++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/methods/R/methods_overrides.R
@@ -1,4 +1,4 @@
-# Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,7 @@ eval(expression({
 `slot<-` <- .fastr.methods.slotassign
 
 new <- function (Class, ...) {
-    if(is.character(Class)) {
+    if (.fastr.option("hostLookup") && is.character(Class) && !isClass(Class)) {
         javaClass <- java.type(Class, silent=TRUE)
         if(!is.null(javaClass)) {
             Class <- javaClass