[Bf-gamedev] Lua

Jason Wilkins jason.a.wilkins at gmail.com
Thu Sep 26 19:09:01 CEST 2013


I mistyped when I said I wrote a "wrapper" for GLEW.  I actually just
directly used SWIG to generate an interface (was pleased that it mostly
just worked).  GLUT did require wrapping the callback setting functions
because they take C functions and I needed to be able to pass in Lua
functions.  Was about 500 lines of Lua specific code, and you'd have to
rewrite that for each language.


On Thu, Sep 26, 2013 at 12:03 PM, Jason Wilkins
<jason.a.wilkins at gmail.com>wrote:

> +1 to "I've never understood the appeal of loosely-typed languages for
> complicated projects like games"
>
> While I really like Lua, I mainly think of it as just glue.  In my opinion
> the typesafe heavy lifting should all be written in C++ and the scripting
> language should only be used as a sophisticated configuration file.
>
> Of course, an add-on is different, it needs to do more than just
> coordinate pre-existing functionality, it needs to add functionality (by
> definition).  C# would be excellent for that as the add-on gets more
> complicated and real software engineering starts to be needed.
>
>
> On Thu, Sep 26, 2013 at 11:25 AM, Tom Edwards <contact at steamreview.org>wrote:
>
>>  Mono/CLR is the right choice for game development. It's a memory-managed
>> environment which performs better than scripts, can be strongly-typed or
>> loosely-typed depending on language chosen, and has a cross-platform IDE
>> plus debugger ready to go (on Windows you can use Visual Studio!).
>>
>> It's easy to use CLR or native libraries; compiling your own CLR code is
>> really fast; the runtime provides tonnes of useful built-in classes; it has
>> the concept of code security and sandboxing running all the way through;
>> and any transition would be smoothed considerably by IronPython.
>>
>> Coming at this from the other angle, I've never understood the appeal of
>> loosely-typed languages for complicated projects like games. They are nice
>> for small, simple tasks but become a nightmare to work with as a codebase
>> grows. I maintain a Blender add-on with nearly 200KB of code and my life
>> would be much improved if I could use C# instead of Python.
>>
>>
>> On 26/09/2013 4:49, Jason Wilkins wrote:
>>
>> I can understand your frustration Campbell.  I've never participated in
>> any of those previous discussions, but this is something that has been
>> kicking around in the back of my mind for a while, and seeing that we have
>> a Blender gamedev list reminded me of it yet again.  It could just be that
>> having one language is good enough for 90% of people and going from 1 to 2
>> is a big enough step that nobody really wants to take it for the 10% that
>> really care.
>>
>>  In computer science if you have 2 of something you should support an
>> infinity of it ;-)
>>
>>  If I really really want to use Lua then I'll get it done.
>>
>>  I'll have to think about the LLVM or Mono suggestion.  LLVM especially
>> is something I need to learn more about for reasons outside of Blender, so
>> I'd have a good reason to look into that.
>>
>>
>> On Thu, Sep 26, 2013 at 10:40 AM, Campbell Barton <ideasman42 at gmail.com>wrote:
>>
>>> On Fri, Sep 27, 2013 at 1:33 AM, Jason Wilkins
>>> <jason.a.wilkins at gmail.com> wrote:
>>> > I've used SWIG, and it did occur to me that if I wrote a SWIG
>>> interface file
>>> > that it would bring in lots of languages all at once.
>>> >
>>> > It doesn't support just "any" language.  I wish it had V8 or
>>> spidermonkey
>>> > support, for example.
>>> >
>>> >
>>> > On Thu, Sep 26, 2013 at 10:29 AM, Jacob Merrill <
>>> blueprintrandom1 at gmail.com>
>>> > wrote:
>>> >>
>>> >> What about this? - http://www.swig.org/
>>> >>
>>> >> this seems like a way to make "ANY" language grab the same handles in
>>> the
>>> >> BGE.
>>> >>
>>> >> I could be mistaken...
>>>
>>>  If we have more languages I would want to check on runtimes that
>>> already support a verity of languages.
>>> - LLVM/JVM/Mono for eg... who knows, maybe PyPy or Parrot...
>>>
>>> (in all seriousness Mono seems most compelling and has worked well for
>>> Unity3D), then we can support one runtime as well as different
>>> languages.
>>>
>>> LLVM has the advantage we already bundle it with OSL, so worth
>>> investigating too.
>>>
>>> But to get back to reality - this conversation keeps re-opening and
>>> nothing ever comes of it.
>>> Yes - we can support whatever languages we like - but this just ends
>>> up being a huge project when you consider integration with the rest of
>>> Blender and ongoing maintenance.
>>>
>>> --
>>> - Campbell
>>>  _______________________________________________
>>> Bf-gamedev mailing list
>>> Bf-gamedev at blender.org
>>> http://lists.blender.org/mailman/listinfo/bf-gamedev
>>>
>>
>>
>>
>> _______________________________________________
>> Bf-gamedev mailing listBf-gamedev at blender.orghttp://lists.blender.org/mailman/listinfo/bf-gamedev
>>
>>
>>
>> _______________________________________________
>> Bf-gamedev mailing list
>> Bf-gamedev at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-gamedev
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.blender.org/pipermail/bf-gamedev/attachments/20130926/ac52552d/attachment.htm 


More information about the Bf-gamedev mailing list