diff --git a/src/propeller/push/instructions/numeric.cljc b/src/propeller/push/instructions/numeric.cljc index b9cbf1f..455dad4 100755 --- a/src/propeller/push/instructions/numeric.cljc +++ b/src/propeller/push/instructions/numeric.cljc @@ -121,9 +121,13 @@ :name "_from_string"} (fn [stack state] (make-instruction state - #(try ((if (= stack :integer) int float) (read-string %)) - #?(:clj (catch Exception e) - :cljs (catch js/Error. e))) + #(try (if (= stack :integer) + #?(:clj (Integer/parseInt %) + :cljs (js/parseInt %)) + #?(:clj (Float/parseFloat %) + :cljs (js/parseFloat %))) + #?(:clj (catch Exception e :ignore-instruction) + :cljs (catch js/Error e :ignore-instruction))) [:string] stack)))