Feature #904

Live parser and compiler for devs

Added by kju over 6 years ago. Updated almost 5 years ago.

Status:Expired Start date:04/09/2009
Priority:Normal Due date:
Assignee:- % Done:


Target version:-
Affected Version:


My goal is to create a live parser and compiler for devs.
This means instead of relying on the BI stuff,
the community has do write its own tool.
I strongly believe it will safe a lot of time.

it will save a lot of errors too! the 'bi compiler' aka o2scipt and
binarise produces some 'interesting' results sometimes that the engine can't follow.

Ok great. I will look into the code and come back to you.
If you say it is sensible to split this part to a separate project, it can be done in time.

Ok, a brief overview:

  • Project WetSand and my OAC regex take care of the syntax changes between OFP and ArmA.
  • DeSQS will be the tool to verify sqs code, same for SQF with a future DeSQF.
  • LintCheck does similar checks for cpp,sqm,ext,bin,rvmat files.

sqs/sqf should have the same functionality in regards to detecting errors etc.
same = 'what user is used to'

Do you think it is possible for both script (sqs/sqf) and "config" (cpp, ext, sqm etc)
to automatically fix certain errors or at last suggest possible fixes?

missing semicolons and braces comes to mind.


Updated by kju over 6 years ago

What about writing a parser and compiler in Ruby?
You and me ... in a few weeks. Once i do program Ruby to a degree.

Sounds interesting.
Though I would have to know what it actually involves :P

I was hoping rather to finish things already on the list,
instead of sticking more things on the list :P

Well I need to discuss this with all experience programmers in the dev heaven channel.
In uni we did some stuff in that area already.
From what I can remember if you define the language right in a specific way,
you can let programs generate the parser and compiler completely.

Updated by T_D over 6 years ago

It is probably done with grammars. Have no experience in writing a parser but this should be done by someone who already did this sort of stuff. vektorboson has some experience afaik.

Updated by kju over 5 years ago

  • Status changed from Assigned to In progress
  • Assignee changed from kju to T_D

Updated by kju almost 5 years ago

  • Status changed from In progress to Expired
  • Assignee deleted (T_D)

Superseded by squint now.

Also available in: Atom PDF