I used HACK frequently on Android, and recently there has been more sites started blocking built-in browser due to being old version. Is there any plan to upgrade it?
155 karma · joined March 3, 2017
const K = <A, B>(a: A) => (_b: B) => a;
const S = <A, B, C>(a: (x: C) => (y: B) => A) => (b: (x: C) => B) => (c: C) => a(c)(b(c));
const Z = S(K(S(S(K)(K))(S(K)(K))))(S(S(K(S))(K))(K(S(K(S(S)(S(K))))(S(S(K(S))(K))(K)))));
https://en.wikipedia.org/wiki/Fixed-point_combinatorNo ASM involved so technically portable (although it depends on built-in).
Flix equivalent (copy paste to https://play.flix.dev/):
eff Pick {
def pick(): Int32
}
def body(): (Int32, Int32, Int32) \ Pick = {
let a = Pick.pick();
let b = Pick.pick();
let c = Pick.pick();
(a, b, c)
}
def handlePick(f: Unit -> a \ ef): List[a] \ ef - Pick =
run {
f() :: Nil
} with handler Pick {
def pick(_, resume) =
resume(1) ::: resume(2) ::: resume(3)
}
def main(): Unit \ IO =
println(handlePick(body))Do you publish it somewhere? Here's a sample my my js obfuscator output: https://gist.github.com/Trung0246/c8f30f1b3bb6a9f57b0d9be94d...
---
const K = <A, B>(a: A) => (_b: B) => a; const S = <A, B, C>(a: (x: C) => (y: B) => A) => (b: (x: C) => B) => (c: C) => a(c)(b(c));
const I = S(K)(K); const B = S(K(S))(K); const C = S(B(B)(S))(K(K)); const W = C(S)(I); const T = C(I); const V = B(C)(T); const I1 = C(C(I)); const C1 = B(C); const R1 = C1(C1); const V1 = B(R1)(C1); const I2 = R1(V);
const Z = B(W(I1))(V1(B)(W(I2)));