Jump to content
Sign in to follow this  
idl0r

Lua instead of SQF/SQS

Recommended Posts

@GossamerSolid: No if you follow most popular code conventions which say that you should add spaces for 2-arguments operators, which means:

_i = _i + 1

Share this post


Link to post
Share on other sites
The only thing SQF lacks and what actively bothers me is the lack object-oriented programming

Natively, yes, but BI have attempted to implement more OOness in it (ex: OO module, setVariable) over the years, so there's a good chance that in future iterations of the engine (and thus the language) there will be significant improvement in this, particularly since BI has themselves use these things quite often in their scripting. I wouldn't be surprised if SQF becomes more OO in the future.

Share this post


Link to post
Share on other sites
Another way of saying it is that it's 100% extra work ;)

Well said, thank you :)

Natively, yes, but BI have attempted to implement more OOness in it (ex: OO module, setVariable) over the years, so there's a good chance that in future iterations of the engine (and thus the language) there will be significant improvement in this, particularly since BI has themselves use these things quite often in their scripting. I wouldn't be surprised if SQF becomes more OO in the future.

Neither would I, but to be honest I fear that any implementation at this stage would be a tad hacky.

Share this post


Link to post
Share on other sites

+1 for a real language with OO (not bolted on-top, but native) :)

Share this post


Link to post
Share on other sites

anyone, who not code in Erlang - go to Hell !![Evil laugh]

its functional, logical, object-oriented, message-passing language.

p.s.

why you not translate you [Evil]Java code to BIS C++ before pasting it into Arma2 ?

Share this post


Link to post
Share on other sites

Beyond OOP and some of the guts of the parser/scripting engine, syntactically I feel that SQF is adequate.

Even the lack of OOP is fine with me, a lot of languages do not have objects, including C, which is one of the most widely used languages around still.

Sometimes lacking objects is also a good thing in my opinion. There are times where I have seen OOP lead to useless overhead and abstraction, especially in situations where it is dynamically parsed or interpreted.

Share this post


Link to post
Share on other sites
There are times where I have seen OOP lead to useless overhead and abstraction, especially in situations where it is dynamically parsed or interpreted.

Is useless for guys that dont undertand the principles of new development system. Is very complex for most peoples. But, OOP is ideal for complex systems such as games (core base) and business.

Scripted languages are better to fast and freak development, is something else...

Best Regards.

Share this post


Link to post
Share on other sites

Instead of? No thanks. Accompanying? Sure, if it can be done then why not?

Share this post


Link to post
Share on other sites
Is useless for guys that dont undertand the principles of new development system. Is very complex for most peoples. But, OOP is ideal for complex systems such as games (core base) and business.

Scripted languages are better to fast and freak development, is something else...

Best Regards.

There are plenty of business critical components written in C and it has no objects. PHP is considered a "scripting language" and there its OOP and is used in huge projects. Same goes for Ruby and Python.

Any language is what you make it, there is no such thing as a scripting language that is not a programming language. Scripting is programming.

We have ACRE set up in a very complex environment that replicates a C development environment, same goes for ACE, both are very complex, but manageable systems that allow fast development and maintainability.

Share this post


Link to post
Share on other sites
There are plenty of business critical components written in C and it has no objects. PHP is considered a "scripting language" and there its OOP and is used in huge projects. Same goes for Ruby and Python.

Any language is what you make it, there is no such thing as a scripting language that is not a programming language. Scripting is programming.

We have ACRE set up in a very complex environment that replicates a C development environment, same goes for ACE, both are very complex, but manageable systems that allow fast development and maintainability.

I Agree NouberNou, but I think that OOP and language scripting are not comparable, is the same that to compare Call Of Duty against Arma2, We can't compare this....

You can develop any system using OOP or Scripting, but for the future, only OOP vision facilitates the work, Of course, if done right ( Best and correct Design patterns, best coding tools, best programmers, best designers, best unit tests).

In many years of working with a lot of languages, only OOP applied made me really see what might make an intelligent code ( magic for some peoples:p ).

Scripting is good, is very good , is a essential tool in developer days. Working with scripting and OOP done right, better. ;)

Best regards

Edited by D3lta

Share this post


Link to post
Share on other sites
I'd suggest to use Lua or something else in future ARMA games.

I don't like Lua tbh but Lua would be *much* better than the current SQF/SQS stuff. I think both sides would benefit from it. You can do a lot more than currently possible and at least Lua is also portable.

How can LUA "do more" than the language which is already capable of doing everything that Arma2 can?

Share this post


Link to post
Share on other sites
How can LUA "do more" than the language which is already capable of doing everything that Arma2 can?

Advantanges for LUA:

- Stable with good error recovery if you know how to do it.

- Consistent and not overly verbose syntax (shhh - I know "if () then")

- most elegant data structures

- Good documentation and community support

- is very easy to embed, hooks com C, C++, C#, easy

- Fast running

- good historic in gaming

- OOP inside

- would make BIS focus more on the ARMA( gameplay, future, resources )

And others....

Share this post


Link to post
Share on other sites
Instead of? No thanks. Accompanying? Sure, if it can be done then why not?

If it got added, it should carry the same weight as SQF/SQS.

People (like me) would much prefer to work in an enviroment like Lua, which I don't just find easier to work with. It also has alot more support (See: http://lua-users.org/)

Not to mention some beneifts it could bring, more OOP capabilities and what is (In my opinion) a much cleaner syntax.

I think adding more languages (whether it be Lua, C++/C# based, Java hell even Python) could only bring good.

Edited by Ben_S

Share this post


Link to post
Share on other sites

I still haven't seen a practical comparison between Arma 2 script formats and Lua.

Share this post


Link to post
Share on other sites
+1

I'd like Lua implemented.

Very simple, yet powerful.

http://en.wikipedia.org/wiki/Lua_(programming_language)

simpler than SQS ?

more powerful ?

probably no in both case.

so LUA implementation is pointless, except efforts to please some consumers with LUA skills, probably.

there is PLENTY of good languages to support/implement, wasn't good[enough]to be supported natively.

Share this post


Link to post
Share on other sites
Advantanges for LUA:

- Stable with good error recovery if you know how to do it.

- Consistent and not overly verbose syntax (shhh - I know "if () then")

- most elegant data structures

- Good documentation and community support

- is very easy to embed, hooks com C, C++, C#, easy

- Fast running

- good historic in gaming

- OOP inside

- would make BIS focus more on the ARMA( gameplay, future, resources )

And others....

EPIC FACEPALM

Ok... You are asking BIS to rewrite Arma2 so that it can handle LUA, this isn't exactly going to make them focus more on gameplay is it?

"Stable with good error recovery if you know how to do it."... Wat... This can be said for SQF/SQS

"most elegant data structures" makes no sense.

"Good documentation and community support" says the person posting in one of the most active and helpful communities I have ever been a member of.

"is very easy to embed, hooks com C, C++, C#, easy" irrelevant really, Arma2 calls SQF and SQS very easily... why do you need the rest of the points here?

Why is history in gaming relevant?

"Fast running" don't be stupid. A scripting system only really runs as fast as the engine running the scripts. Since BIS have the most experience with the system they already support then I don't really think this is a good argument.

"Consistent and not overly verbose syntax" ok, maybe you prefer the syntax of LUA to SQF... so what?

Basically implementation of another scripting system would be a complete waste of time, money, resources, energy and effort. SQF/SQS would still need to remain supported to allow legacy support for missions, mods and everything else. Pointless. I bet you want ragdoll too...

Share this post


Link to post
Share on other sites

Why bother?

Bis have a proprietary scripting language. Why would they want to infect it with what some gobshite learnt a bit about at college last week?

Edited by xmongx

Share this post


Link to post
Share on other sites
Why bother?

Bis have a proprietary scripting language. Why would they want to infect it with what some gobshite learnt a bit about at college last week?

Lua is a well established language, used in a whole variety of games, either up front or behind the scenes.

years ago i gave this answer to similar discussion about Lua/Python etc.

http://forums.bistudio.com/showpost.php?p=1520270&postcount=11

while it would be nice to e.g. have Lua support because of other games etc using it

it's not enough to justify the resources spent on such effort

Yes, It would be nice to have other languages like C++, Lua and Python. But I guess you're right in saying it wont offer enough to justify adding it.

However, Dwarden, Personally - what do you think about Lua?

Share this post


Link to post
Share on other sites

it's not enough to justify the resources spent on such effort

I just hope the CodeMasters is not want to implement anything in LUA/AngelScript/C#, I'd run over there quick.

Ps. TechnoTerroHamster, this a topic of suggestion, right? :rolleyes:

Best Regards.

Edited by D3lta

Share this post


Link to post
Share on other sites

Just saw the line 'real OO support, not bolted on' and couldn't help but laugh. The VAST majority of object oriented code out there in the business world has 'bolted on' OO support. The entire world doesn't revolve around Java. SQF has remarkable capabilities, it is just very specific to the Arma 2 engine so requires certain allowances by the programmer to constrain logic within the performance limitations of that framework.

Share this post


Link to post
Share on other sites

All this programming talk just made me want to go outside and play with my real guns, brb.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×