ada 5 лет назад
Родитель
Сommit
2abd8a905b
3 измененных файлов с 8 добавлено и 11 удалено
  1. 3 4
      lisp/core.rs
  2. 2 6
      lisp/lisp.rs
  3. 3 1
      lisp/new-cs.lisp

+ 3 - 4
lisp/core.rs

@@ -310,13 +310,12 @@ fn range(a: MalArgs) -> MalRet {
 }
 
 fn alloc_input(a: MalArgs) -> MalRet {
-    println!("{:?}", a);
-    Ok(Nil)
+    // TODO implement
+    Ok(ZKScalar(bls12_381::Scalar::zero()))
 }
 
 fn scalar_zero(a: MalArgs) -> MalRet {
-    println!("{:?}", a);
-    Ok(Nil)
+    Ok(ZKScalar(bls12_381::Scalar::zero()))
 }
 
 fn scalar_one(a: MalArgs) -> MalRet {

+ 2 - 6
lisp/lisp.rs

@@ -291,19 +291,15 @@ fn eval(mut ast: MalVal, mut env: Env) -> MalRet {
                     //Sym(ref a0sym) if a0sym == "prove" => {
                     //Sym(ref a0sym) if a0sym == "verify" => {
                     Sym(ref a0sym) if a0sym == "enforce" => {
-                        let (a1, a2) = (l[1].clone(), l[2].clone());
+                        let (a1, a2) = (l[0].clone(), l[1].clone());
                         let value = eval_ast(&a2, &env)?;
                         match value {
                             List(ref el, _) => {
-                                //let val = zkcons_eval(el.to_vec(), &a1, &env)?;
-                                //val.clone();
                                 println!("{:?}", el.to_vec());
                             }
                             _ => println!("invalid format"),
                         }
-                        //                        println!("3 {:?}", eval(a1.clone(), env.clone()));
-                        env_set(&env, a1.clone(), eval(a1.clone(), env.clone())?);
-                        eval(a1.clone(), env.clone())
+                        Ok(Nil)
                     }
                     Sym(ref a0sym) if a0sym == "fn*" => {
                         let (a1, a2) = (l[1].clone(), l[2].clone());

+ 3 - 1
lisp/new-cs.lisp

@@ -19,7 +19,9 @@
    ;; Lc0: [(Scalar::one(), CS::one()), (Scalar::one().neg(), C)]
 ;; Lc1: [(Scalar::one(), y)]
 ;; Lc2: [(Scalar::one(), U), (Scalar::one().neg(), A), (Scalar::one().neg(), B)]
-    (enforce (scalar::one x) ((neg scalar::one) x2) ((neg scalar::one) x3))
+(println
+    (enforce ((scalar::one x) ((neg scalar::one) x2) ((neg scalar::one) x3)))
+)
 )))
 (def! a (scalar "0000000000000000000000000000000000000000000000000000000000000003"))
 (setup (MyCircuit (a (* a a) (* (* a a) a))))