Consoles are great for fighting, platform games etc., but I think there will always be a market for PC games that have advanced graphics and a complex user interface. I would never play an RPG like NWN on a console using a TV as screen and gamepad for controls. These games require a PC with high resolution and a mouse and keyboard.
There are still some questions you need to answer:
How do you define "round"?
How do you define "similarly sized"?
How do you define "significantly affects the orbit"?
How do you define "the same orbit"?
How do you define "orbit eachother"? You might say that it is the lighter object that orbits the heavier, but for example the earth orbits the moon as well in a small circle.
Seems like the anti piracy groups are getting desperate and taking the law in their own hands. I hope some of these cases get to court, and that they lose big. That will put an end to this stupidity...
I hate LCD's
on
LCD Round-up
·
· Score: 0, Offtopic
A contrived example would be a deck of cards. Imagine that you make each card an object, then you have a deck object, and a dealer object. In the real-world the dealer would shuffle a deck, but in our code this responsibility would fall on the deck, but the dealing mechanics would probably rest with the dealer.
Sounds like a bad design. I would pass the deck of cards to an instance of a shuffler interface. If this is the dealer object or not is unimportant.
However, I don't think it will ever come as naturally to me as functional programming. I am not saying that I do not use OO techniques in my functional code. You can see a sort of dynamic dispatch mimicked by function passing and you can see pseudo-object in functions that return different functions, each operating on the same lexically captured bindings. I am just saying that OO is over-hyped and I feel that the functional paradigm effectively captures OO benefits.
There's no reason to choose functional vs. OO programming, they work fine together. Closures and OO works perfectly together in Smalltalk.
The power of OO is data encapsulation and correct use of interfaces. These are things that are not easily modelled in a pure functional language.
The perfect programming language IMHO would be a mix of Java, Ruby and
Smalltalk. It would have the following features:
- Static, strict typing but with dynamically checked casting. This
would make the compiler detect many common programming errors.
- Single inheritance and interfaces.
- Generic types. Very useful for collections etc.
- Smalltalk blocks (also called closures). These would passed as
normal objects to functions. Allows you to write very short, readable
and powerful programs.
- Common language constructs like for, while, foreach. Closures can't
replace these in a good way.
- Types of local variables should be automatically infered when
possible.
- Syntax would be a mix of Ruby and Lisp. Clean and easy to read.
- Strip away all unneeded features.
An example:
# Generic type
class Vector
# Fields are private unless otherwise stated
fields
items T[] = T[].new 200
size int
end
def add (item T)
items[size] = item
size++
end
# Type (T) means a closure which takes a parameter of type T and returns nothing
def each (fn (T))
# Type of item is infered by compiler
foreach item items
fn item
end
end
end
class MyClass
def do
# Type of v is infered by compiler
var v = Vector.new
v.add (Point.new 10 20)
v.add (Point.new 20 30)
# {... } creates a closure object, type of parameter p is infered by compiler
v.each {p: p.setX (p.getX + 10)}
end
end
I'm involved in a project developing an open source Direct Connect client in Java. The project has just started and is hosted by Sourceforge. Check it out:
http://sourceforge.net/projects/javadc/
Direct Connect is a popular P2P file sharing program for Windows. There is also a free program that let's anyone start their own file sharing hub. Check out www.neo-modus.com for more info.
Consoles are great for fighting, platform games etc., but I think there will always be a market for PC games that have advanced graphics and a complex user interface. I would never play an RPG like NWN on a console using a TV as screen and gamepad for controls. These games require a PC with high resolution and a mouse and keyboard.
There are still some questions you need to answer:
How do you define "round"?
How do you define "similarly sized"?
How do you define "significantly affects the orbit"?
How do you define "the same orbit"?
How do you define "orbit eachother"? You might say that it is the lighter object that orbits the heavier, but for example the earth orbits the moon as well in a small circle.
The P800 is already old. Why post an article about an old phone? This one will be WAY cooler:
Neonode N1.
Damn losers! Try to make money out of others misery. Shame on you Symantec! I will never buy your products again!
My ultimate portable device would have the following features:
- GSM
- GPS
- MP3 player
- Upgradable OS and software
- Bluetooth
- J2ME
- Small and light
- Big color display
- Upgradable storage, ie MMC
The Neonode N1 comes pretty close.
Seems like the anti piracy groups are getting desperate and taking the law in their own hands. I hope some of these cases get to court, and that they lose big. That will put an end to this stupidity...
I have one on my alarm clock and it sucks...
Sounds like a bad design. I would pass the deck of cards to an instance of a shuffler interface. If this is the dealer object or not is unimportant.
However, I don't think it will ever come as naturally to me as functional programming. I am not saying that I do not use OO techniques in my functional code. You can see a sort of dynamic dispatch mimicked by function passing and you can see pseudo-object in functions that return different functions, each operating on the same lexically captured bindings. I am just saying that OO is over-hyped and I feel that the functional paradigm effectively captures OO benefits.There's no reason to choose functional vs. OO programming, they work fine together. Closures and OO works perfectly together in Smalltalk. The power of OO is data encapsulation and correct use of interfaces. These are things that are not easily modelled in a pure functional language.
The perfect programming language IMHO would be a mix of Java, Ruby and
... } creates a closure object, type of parameter p is infered by compiler
Smalltalk. It would have the following features:
- Static, strict typing but with dynamically checked casting. This
would make the compiler detect many common programming errors.
- Single inheritance and interfaces.
- Generic types. Very useful for collections etc.
- Smalltalk blocks (also called closures). These would passed as
normal objects to functions. Allows you to write very short, readable
and powerful programs.
- Common language constructs like for, while, foreach. Closures can't
replace these in a good way.
- Types of local variables should be automatically infered when
possible.
- Syntax would be a mix of Ruby and Lisp. Clean and easy to read.
- Strip away all unneeded features.
An example:
# Generic type
class Vector
# Fields are private unless otherwise stated
fields
items T[] = T[].new 200
size int
end
def add (item T)
items[size] = item
size++
end
# Type (T) means a closure which takes a parameter of type T and returns nothing
def each (fn (T))
# Type of item is infered by compiler
foreach item items
fn item
end
end
end
class MyClass
def do
# Type of v is infered by compiler
var v = Vector.new
v.add (Point.new 10 20)
v.add (Point.new 20 30)
# {
v.each {p: p.setX (p.getX + 10)}
end
end
I'm involved in a project developing an open source Direct Connect client in Java. The project has just started and is hosted by Sourceforge. Check it out:
http://sourceforge.net/projects/javadc/
Direct Connect is a popular P2P file sharing program for Windows. There is also a free program that let's anyone start their own file sharing hub. Check out www.neo-modus.com for more info.