Krzysztof Kowalczyk wrote:
The topic is: are there improvements in programming technology (i.e. silver bullets) that can account for an order of magnitude improvements in programmers productivity.
Using a glue to stick pieces of gold together can produce a jewelry. But i think you will want one made from scratch. Python is a glue. C will kick its ass forever. Because C is a tool not a glue.
C has no lists, fancy strings, dictionaries and so on. But if you are not going to invent them in C you could write a great program.
You are going to write proxy. You need to keep a list of connections. You estimate to serve about 100 connections at once. Keep this in dynamically allocated hash-lookup dictionary. As always do. As others do.
Weird. Just use plain old static-sized C array. Replace key lookup with a simple retrieving via connections[fd-base_fd_no].
You are going to save a bit of memory using dynamic allocation? You are joking? 1000 connections * 4096k per connection = 4Mb. This array will be 4M only. You have gigabytes of memory in your high-end server!
Yes, Python could be a tool too. But who cares?