Re: My thoughts on C# and gaming.

OvermindDL1 <[email protected]>
Newsgroups gmane.games.devel.sweng
Message-ID <[email protected]>
On Wed, Jan 27, 2010 at 10:51 PM, OvermindDL1 <[email protected]> wrote:
> On Wed, Jan 27, 2010 at 10:35 PM, Brandon Van Every <[email protected]> wrote:
>> On Thu, Jan 28, 2010 at 12:01 AM, OvermindDL1 <[email protected]> wrote:
>>> On Wed, Jan 27, 2010 at 9:53 PM, Brandon Van Every <[email protected]> wrote:
>>>>
>>>> Scheme is the small one, and "big vs. small" is a different axis from
>>>> "academic vs. practical."  A huge standard library isn't so useful if
>>>> what you really want is a "fast" language to embed.  Consider Python
>>>> vs. Lua.
>>>
>>> Hey, I embed Python quite often!  ;-)
>>
>> Yes but Lua is better at it, which is what you'd expect since it was
>> actually designed to be small and embeddable.  The result is it has
>> far more acceptance in the game industry as an embedding language.
>> You can embed Lisp, for instance there's Embeddable Common Lisp.
>> http://ecls.sourceforge.net/  I don't know about the performance
>> though.
>
> Yeah, I had found that one before, but slight issue, it is infected by the GPL:
>  GNU Library or Lesser General Public License (LGPL)
> Which does not react well with BSD code that needs to *stay* BSD, I do
> not want to restrict the code any further, I would prefer the Boost
> license though (as I generally release all my own code as unless
> forced otherwise by crap like (L)GPL).  I need to statically link it
> into a single binary, so the L part of the LGPL is worthless here.

Er, clicked send before I meant to...  >.>

As for LUA, yeah, it is, smaller is a huge boon in the console market,
I would never expect Python to exist there.  :)
But Python is awesome for what I use it for (pure PC), much easier to
read and understand by the non-programmers that use it in my things.

As for the Lisp, I still love statically typed systems (hence one
major reason I like Python, how often does *anyone* use the dynamic
aspects of such things, and how many bugs does it cause), plus with
making a statically typed Lisp'ish language with LLVM, it is both
compiled and optimized, plus I can change the syntax.  Mine is more of
a tuple system then an S-Expression system, the syntax is similar
though, but with tuples I do pattern matching for function invocation,
for example, to do:
Lisp -> My play language
(+ 1 2) -> (1 + 2)
As mine does pattern matching with a function of type (int (SYMBOL +) int).
Although there is still the usual LISP style function that takes
((SYMBOL +) (repeat (QUOTE (1 inf)) int) to do things like (+ 1 2 3),
which is still pattern matching, but looks Lispish at least.  This way
allows for nicely complicated things that are actually compiled down
machine code by removing some dynamic features, plus it allows for
arbitrary overriding.  In macro's you can still test based on type and
all sorts of stuff like that though, so they are still dynamic.
_______________________________________________
Sweng-Gamedev mailing list
[email protected]
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.