Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Extended Javascript for Pros
JavaScript
tree: e3b51b070a

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin
browser
browser2
expectations
lib
test
.DS_Store
.gitignore
LICENSE
README.md
package.json

README.md

  _  __      __  __     _           
 | |/ /__ _ / _|/ _|___(_)_ _  ___  
 | ' </ _` |  _|  _/ -_) | ' \/ -_) 
 |_|\_\__,_|_| |_| \___|_|_||_\___|
  • Progressively enhance Javascript syntax: ensure vanilla Javascript still works as normal
  • avoid nice-to-haves, concentrate on small useful feature set and pragmatism
  • Hackable, modular, extendable and testable
  • whitespace is not significant. Looks nice, but is painful to work with.

Example

Edge::add = (nick, name, complete) {
  @client.select 15
  user = User.find! {id: nick}
  puzzle = Puzzle.find! {name: name}
  err, data = client.set! "u:#{user}:p:#{puzzle}"
  complete()
}

READ MORE HERE ---> http://weepy.github.com/kaffeine <-----

also on IRC: #kaffeine.js

Tests

  • via Node
    • bin/expect will run all tests
    • bin/expect file_name will a particular test e.g. bin/expect expectations/arrow
  • via Browser

    • load browser/runner.html
  • Integration tests:

    • node test/test_node.js
    • knode test/test_knode.js

Building tests for the browser

bin/build

depends on brequire (http://github.com/weepy/brequire).

Install

npm install kaffeine

requires node >= 0.3.1

Use

Compile a script from the command line:

kaffeine -c /path/to/script.k

See kaffeine --help for more

Run a kaffeine file directly

knode /path/to/script.k

require kaffeine files in scripts (in this case my_script.k):

require('kaffeine')
require('my_script')

TODO

  • need --- operator for delimiting bangs!
  • nested for loops - is there a problem ?
Something went wrong with that request. Please try again.