Fork me on GitHub
Objective-PHP is a port of the Objective-C (or Objective-J runtime to PHP. This adds the language features of Objective-C nestled nicely inside the syntax of Objective-C. Moka is a port of the Apple Cocoa Frameworks (or Cappuccino).

Frequently Asked Questions (FAQ)

Here is a short list of FAQs. Please feel free to contact me with other questions.

Q: Why? PHP is so great, this is an abomination, how dare you…. (etc)

A: Because of the reasons stated [here](About.html) and a) if you want to learn
something well, implement its runtime! b) because I like.
Enough said.

Q: Why? PHP is rubbish and you are nothing but a script kiddie.

A: OK. See Q1.

Q: Can I help develop this?

A: Yes, please. Help out by contributing code or testing.

Q: What version of PHP does this require?

A: The current implementation requires 5.3.x ... When PHP 6 is
officially released the project will adopt it.

Q: What is the license of projects created using Objective-PHP and Moka?

A: It is released under the Lesser GNU GPL meaning anything using it can
be closed source and commercial but any changes to the runtime/parser/
Moka etc (any code in the Objective-PHP/Moka distribution) must be open
source. [See here for more on the LGPL](

_Q: Why super and not $super?

A: From cocoa docs "super is simply a flag to the compiler telling it where to begin searching for
the method to perform; it s used only as the receiver of a message. But self is a variable name
that can be used in any number of ways, even assigned a new value." Hence $super doesnt exist,
$self does, and in the case of Objective-PHP is the same as $this. $self and $this however are
parsed into $_op_obj , a special object pointer passed to each method pointing to the instance
object instance.

Q: (Flame/Troll/Hate)

A: OK.

Document status: IN-PROGRESS for current version.