コード例 #1
0
ファイル: CatPrimitives.cs プロジェクト: catb0t/cat-language
            public override void Eval(Executor exec)
            {
                int n = exec.PopInt();
                string s = "";

                if (n == 0) s = "0";
                while (n > 0)
                {
                    if (n % 2 == 1)
                    {
                        s = "1" + s;
                    }
                    else
                    {
                        s = "0" + s;
                    }
                    n /= 2;
                }
                exec.PushString(n.ToString(s));
            }
コード例 #2
0
ファイル: CatPrimitives.cs プロジェクト: catb0t/cat-language
 public override void Eval(Executor exec)
 {
     Object o = exec.Pop();
     exec.PushString(CatKind.TypeNameFromObject(o));
 }
コード例 #3
0
ファイル: CatPrimitives.cs プロジェクト: catb0t/cat-language
 public override void Eval(Executor exec)
 {
     exec.PushString(Console.ReadLine());
 }
コード例 #4
0
ファイル: CatPrimitives.cs プロジェクト: catb0t/cat-language
 public override void Eval(Executor exec)
 {
     exec.PushString(exec.PopString());
 }
コード例 #5
0
ファイル: CatPrimitives.cs プロジェクト: catb0t/cat-language
 public override void Eval(Executor exec)
 {
     int n = exec.PopInt();
     exec.PushString(n.ToString("x"));
 }