Sign in to follow this  
Prozak

Unity Script Languages: What are the basics?

Recommended Posts

I'm going to code a robot friendly script language, that is not designed for speed or great flexibility, but for sheer compiled size. In other words, I want the compiled programs to be small. I wanted to know how much you can reduce a language to it's basic constituints, before it becomes inpractical. I know we all need our if-then-elses, our gotos, etc... Where can I find info online regarding this subject? [ Visit My Journal ]

Share this post


Link to post
Share on other sites
Assuming your robot runs it's own bytecode, then the more bytecodes you have the smaller your code can be. For example; you could implement an if else with jmp and cmp, in several instructions, or with a more specific single instruction.

Share this post


Link to post
Share on other sites
Quote:
Original post by Anonymous Poster
http://www.muppetlabs.com/~breadbox/bf/
???
BF code has few instructions, but it isn't by any means small. At the very least, if you use BF, you should probably allow some kind of run-length encoding, such as having bit patterns 0000-0111 be the various instructions, and 1000-1111 be a instruction + repetition pair (4 bit instruction, 4 bit repetition count for counts of 0000=2 to 1111=17). Even then, I'm not sure it's optimal compared to more traditional instruction sets (especially if you make speed or flexibility secondary considerations instead of just forgetting them).

Share this post


Link to post
Share on other sites
Look into Forth, most implementations generate code smaller than Assembly. You can check out pbForth, an implementaion for Lego robots: http://www.hempeldesigngroup.com/lego/pbForth/homePage.html

Share this post


Link to post
Share on other sites
if your interested in writing your own, then Alex Varenese's "Game Scripting Mastery" is an excellent introduction to the topic of both high-level and low-level compiler/assembler theory, as well as virtual machine design and implementation. That comes highly recommended from me for what thats worth :-) The obvious choices for "drag and drop" scripting languages that can be inserted into your existing project are probrably tcl, Python or Lua.

Share this post


Link to post
Share on other sites
The best strategy seems to be to design an assembly sort of language that you can convert into byte code (via an assembler), and then write a high-level language compiler (optional) that can compile from high level constructs down to your low-level assembly language. This way you can get the option to write in high or low-level scripting language, and also if your not getting the speed you want from your compiler, you can always do it by hand :-) You can write out a byte per operation more than likely (you wont need more than 255?), with space for a few operands per operation which can be variable by writing out another byte. With regard to online reading, you can get e-books of the dragon book, which goes into compiler design, hash tables, etc. All the good stuff you'll definately need, but that book I mentioned is definately worth getting out the library or buying.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

  • Partner Spotlight

  • Forum Statistics

    • Total Topics
      627662
    • Total Posts
      2978519
  • Similar Content

    • By Jcyshadow97
      Hi,guys.I m working on a Fantasy RPG.Currently i m work alone on the project.I really need someone can make UI stuff.If someone can handle it please feel free to contact me on email: 270514974@libero.it.
      Thank you guys and sorry for my english.
       
       



    • By STRATUM the Game
      Hey, everyone! This is my first post here.
      I would like to know what you think about my project called STRATUM. It's a 2D platformer that is heavily based on storytelling and boss fighting while trekking through the world.

      Everything in STRATUM takes place in the first century AD, in a world that wraps our own universe, called  The Stratum. A parallel Universe that is the home of the Christian deities . In this game you will play as a Dacian warrior, unfamiliar with everything in this world, you’ll get to know and understand The Stratum together with him.
      The main thing that I want with STRATUM is to reinvent the known lore and history of the Christian deities and realms. 
      The story is unconventional, it plays down a lot of the mysticism of Hell or Heaven and it gives it a more rational view while keeping the fantastic in it. What do I mean by that? Well, think about Hell. What do you know about it? It's a bad place where bad people go, right? Well, that's not the case in STRATUM. I don't want to describe such a world. In STRATUM, there is a reason for everything, especially for the way Hell is what it is in the game. "Hell" is called The Black Stratum in the game.
      This world is not very different from Earth, but it is governed by different natural laws.
      The story will also involve the reason why this world entered in touch with ours.

       
      What do you think about all that I said? Would you be interested in such a game? I have to say that everything is just a work of fiction made with my imagination. I do not want to offend anyone's beliefs.
      I want this to be a one man game. I have been working alone on it (this was my decision from the beginning) from art to effects to programming to music to sound effects to everything.
      I also have a youtube video HERE if you want to see the way the game moves and the way my music sounds.
      Please, any kind of feedback will be highly appreciated. If you have something bad to say, do it, don't keep it for yourself only. I want to hear anything that you don't like about my project.
       
    • By LimeJuice
      Hi, it's my first post on this forum and I would like to share the game I am working on at the moment.
      Graphics have been made with Blender3D using Cycle as a renderer and I am using Unity3D. It's a 2D game, one touch side-scrolling game for iOS and Android.
      Here some pictures, and you can have a look to the gameplay on this video :
      Feedbacks ?
      And if you want to try it, send me your email and I will add you to the beta tester list!
       
       








    • By Kirill Kot
      An adventure indie game with quests in a beautiful, bright world. Characters with unique traits, goals, and benefits. Active gameplay will appeal to players found of interactivity, especially lovers of quests and investigations.
      Available on:
      Gameroom (just open the web page and relax)
      AppStore
      GooglePlay
      WindowsPhone

    • By Kirill Kot
      Big Quest: Bequest. An adventure indie game with quests in a beautiful, bright world. Characters with unique traits, goals, and benefits.
      Mobile game, now available on Gameroom. Just open the web page and relax.
  • Popular Now