Hi everyone, a few months ago I started building another interpreted programming language to be the successor of my past project ([url=http://www.socoder.net/index.php?showcase=19896]link[/url]). In short I learned a lot from the old version and started over again from scratch in May. What I am asking is what you think of the syntax I have so far. Goals... [li]Easy to learn, not much typing required[/li] [li]Ability to create a decent 2D game with it[/li] [li]Syntax similar to Blitz Basic[/li] [li]Eventually port the interpreter to the Wii or PSP[/li] And yeah I already read [url=http://www.socoder.net/index.php?topic=2022]JL's thread[/url]. Here's a simple Pong game I just wrote in it. [[code]//set up the window Graphics(640,480,16,2) AppTitle("Pong") //player 1 public float p1y = 220 public int p1s = 0 //player 2 (CPU) public float p2y = 220 public int p2s = 0 //ball public float bx = 320 public float by = 240 public float bvx = 3 public float bvy = 2 //make a timer to limit game speed public timer gametimer = createtimer(45) //main game loop While(keyhit(1) = false){ //update ball bx = bx + bvx by = by + bvy //update scoring if(bx > 640){ p2s = p2s + 1 bx = 320 by = 240 bvx = 3 bvy = 2 } if(bx < 0){ p1s = p1s + 1 bx = 320 by = 240 bvx = -3 bvy = 2 } //ball bounces off top and bottom walls and speeds up if(by > 480){ bvx = bvx * 1.1 bvy = bvy * -1.1 } if(by < 0){ bvx = bvx * 1.1 bvy = bvy * -1.1 } //limit ball speed if(bvx > 5){bvx = 5} if(bvx < -5){bvx = -5} if(bvy > 5){bvy = 5} if(bvy < -5){bvy = -5} //player control p1y = mousey() - 20 if(p1y<0){p1y = 0} if(p1y>440){p1y = 440} //basic AI for the CPU player if(p2y+20>by-2){p2y = p2y - 4.5} if(p2y+20<by-2){p2y = p2y + 4.5} if(p2y<0){p2y = 0} if(p2y>440){p2y = 440} //check for hitting paddles if(rectsoverlap(630,p1y,10,40,bx-2,by-2,4,4)){ bvx = bvx * -1.5 bvy = bvy * -1 bvy = bvy + (by-p1y-20)/2 } if(rectsoverlap(0,p2y,10,40,bx-2,by-2,4,4)){ bvx = bvx * -1.5 bvy = bvy * -1 bvy = bvy + (by-p2y-20)/2 } //wait for the timer waittimer(gametimer) //draw screen cls() rect(bx-2,by-2,4,4,1) rect(0,p2y,10,40,1) rect(630,p1y,10,40,1) text(240,30,p2s,0,0) text(380,30,p1s,0,0) line(320,0,320,480) flip() } end() [/code] This post is from -- http://socoder.net/index.php?topic=2041