1 import fibraNow I need to reinstate the networking layer... and think about adding multi-core features via the new (in 2.6) multiprocessing module. It would be nice to have events magically transferred across process boundaries. FibraNet used to do this, but I haven't found a clean way of adding this to fibra, yet.
2
3
4 def task_a():
5 for i in xrange(10):
6 yield fibra.Send('AN_EVENT')
7
8 def task_b():
9 while True:
10 msg = yield fibra.Recv('AN_EVENT')
11 print 'Received:', msg
12
13 def test():
14 s = fibra.schedule()
15 s.install(task_a())
16 s.install(task_b())
17 s.run()
18
19 if __name__ == "__main__":
20 test()
Tuesday, November 18, 2008
Fibra grows events.
Fibra has grown an event handling plugin.
Wednesday, November 12, 2008
Due to popular demand...
...another gamejam has been scheduled for November 14-30. Short notice I know. Apologies.
I had hoped to deploy a new version of the gamejam.org interface, but I simply don't have the time. Next year, perhaps.
The previous gamejam was quite successful, so if you feel inclined, feel free to join in.
I had hoped to deploy a new version of the gamejam.org interface, but I simply don't have the time. Next year, perhaps.
The previous gamejam was quite successful, so if you feel inclined, feel free to join in.
Monday, November 10, 2008
The Attraction of Dynamic Languages.
Today, a friend asked me, "Why are you attracted to dynamic languages?".
I didn't have a ready answer. After thinking about it for a while, I can list some good reasons why I prefer to work in Python, which is a dynamic language. Lately I have been writing a lot of code in C and C# (directly re-implementing Python algorithms), so I think I am in a good place to pass comment.
Have I missed anything?
I didn't have a ready answer. After thinking about it for a while, I can list some good reasons why I prefer to work in Python, which is a dynamic language. Lately I have been writing a lot of code in C and C# (directly re-implementing Python algorithms), so I think I am in a good place to pass comment.
- Python code is ~10% the size of my equivalent C# code. This means less typing, faster prototypes and less room for bugs.
- Dynamic languages really do promote loose coupling. There is no dependence on types. This helps the programmer write re-usable code, and actually re-use it, rather than hide it away in some dusty, forgotten SVN repository...
- Python works rather well with C. It's a piece of cake to convert a Python function into C code, then call them using ctypes. This fits perfectly with an incremental development method, where a prototype can slowly be converted into C code as needed.
- Late binding lets you do some really clever stuff, and makes things like state machines very compact and easy to code and understand.
- A standard, OS independent socket implementation.
- ...hmm not much else.
Have I missed anything?
Tuesday, November 04, 2008
Burning out...
Too many projects. Too many people asking for things.
No time for the things I really want to do.
How do _you_ prevent burn out?
No time for the things I really want to do.
How do _you_ prevent burn out?
Subscribe to:
Posts (Atom)
Popular Posts
-
So, you've created a car prefab using WheelCollider components, and now you can apply a motorTorque to make the whole thing move along. ...
-
This hard-to-see screenshot is a Generic Node Graph Editing framework I'm building. I'm hoping it can be used for any kind of node...
-
When you start working with threads in your Unity3D project, you will discover that many things need to be done in the main loop. For exampl...
-
Thank to Adrian Boeing I was inspired this morning to hack together a ripple shader for Unity3D. Thanks for the math Adrian. You can see t...
-
import csv open("output.tsv", "w").write("\n".join("\t".join(e.strip() for e in i) for i in csv.rea...
-
I've just seen and used a brilliant ssh option. The command: sudo ssh -D localport user@externalhost will set up a local SOCKS proxy l...
-
Possibly slightly more correct lighting. The rim light is now only applied in the direction of the sun, rather than being purely based on v...
-
Often, when building a game, you need to test if objects are colliding. The objects could be spaceships, rocks, mouse pointers, laser beams....
-
Working with multiple threads is often a necessary evil. This is how I do it safely inside a Unity3D component. There are only certain time...
-
As promised, here is my code for creating a uniform set of points on a sphere. using UnityEngine ; using System . Collections . Generic ;...
