Jump to content

[PLUGIN, WIP, 0.23] kRISC - kOS with a RISC heart


marianoapp

Recommended Posts

Have you looked at Jebnix and what woodywood is doing? It seems interesting but probably a lot harder to merge any code with.

I'm not exactly following his project, but a quick review of the planned scope leave it very close to what kOS already has, or that could easily have if we decide to add it.

Point by point review:

Done

- Compatibility with KerboScript 0.9x

- Simplified codebase

- Formal language specification

- Better error handling, which provides the script name and location of the error

- Enhanced WHEN... THEN capability. Unambiguously allows an entire block of code to be executed on a WHEN... THEN instance

- Arrays: (with lists)

- Enumerators: (with lists)

- Boolean values

- Extended math and physics functions.

- Expandable memory

- Distance delay

- Multitasking (there is a development branch that have threads support)

- Interprocess and intercomputer communication

- Easier pitch/yaw/roll system

Easy to add

- New operators. Operators for not-equal, bitwise AND and OR, bitwise and logical NOT

- ELSE and IF ELSE blocks

- Persistant WHEN... THEN: (I want to add this for ON commands as well)

- A MEMDUMP keyword

- Leaving scripts early

A little more of work to do

- Subroutines blocks with a SUB or FUNCTION keyword: locks internally are already functions, so it wouldn't be that hard to add custom user functions

- Runtime exception handling. A TRY... CATCH block would be handy

- Return values

- Variable scope. Variables created with the LOCAL keyword would exist in their local scope

- String escape sequences

- String operations

- User prompts

- Script names storable in variables as function pointers.

Link to comment
Share on other sites

I must say that the most recent script name additions to Jebnix look very useful. I have been wanting that for a couple of scripts for a while now.

A big fear in this would be to have two excellent alternatives for a similar language, each with slightly different but very useful commands, forcing the user to choose. I already had visions of cobbling two units together on one craft :D

Edited by Camacha
Link to comment
Share on other sites

Found a minor bug: engine:isp returns a single. If you try to apply round(), it throws an error: "can't cast <value> to double."

Fixed :)

By the way this project was merged with kOS so now all the bug reports should be reported in this thread (dev) or this other thread (release).

Also the development was moved to a new github organization (https://github.com/KSP-KOS) so you can report the bugs there too.

Link to comment
Share on other sites

  • 3 months later...
This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...