The Cincom Smalltalk 2048 contest!

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Cincom Smalltalk 2048 contest!

Thomas, Arden
<script type="text/javascript" id="cosymantecbfw_resize">var kvcPushDownExceptions = {}; var retryCSSHack = 0; var isUrlExcepted = function() { if(!window.location || !kvcPushDownExceptions) { return false; } var path = kvcPushDownExceptions[window.location.host]; if(!path) { return false; } var patt = new RegExp(path); return patt.test(window.location.pathname); }; document.addEventListener("initializeExceptionListEvent", function(e) { if(!e || !e.detail) { return; } kvcPushDownExceptions = e.detail; }, false); var coAdjustToolbarHeight = function(h) { var e = document.getElementById("cosymantecbfw"); if(e) { var nOldHeight = 0; if(window.getComputedStyle(e,null)) { var height = window.getComputedStyle(e,null).getPropertyValue("height"); var oldHeight = height.replace("px", ""); nOldHeight = Number(oldHeight); if(!isNaN(nOldHeight)) { nOldHeight = 0; } } if(document.readyState === "complete") { applyCSSHack(nOldHeight, h); } else { window.addEventListener("onload", applyCSSHack(nOldHeight, h), false); } e.style.height = h + "px"; e.style.left = window.pageXOffset + "px"; } }; var arrayElements = new Array(); var applyCSSHack = function( oldHeight, newHeight) { if(isUrlExcepted()) { return; } if(!document.body) { if(retryCSSHack++ < 30) { setTimeout(function() { applyCSSHack(oldHeight, newHeight); }, 100); } return; } arrayElements = new Array(); if(document.body.style) { document.body.style.position = "relative"; var len = newHeight + "px"; document.body.style.setProperty("margin-top", len, "important"); document.body.style.setProperty("border", "1px solid transparent", "important"); } walk(document.body); for(var i = 0; i < arrayElements.length; i++) { var elem = arrayElements[i]; if(null == window.getComputedStyle(elem,null)) { continue; } var pos = window.getComputedStyle(elem,null).getPropertyValue("position"); if(pos !== "fixed") { continue; } if(elem.parentNode == document.body) { elem.style.position = "absolute"; continue; } var oldTop = window.getComputedStyle(elem,null).getPropertyValue("top"); oldTop = oldTop.replace("px", ""); var nOldTop = Number(oldTop); if(!isNaN(nOldTop)) { nOldTop = 0; } var top = nOldTop + (Number(newHeight) - Number(oldHeight)); if(elem.style) { elem.style.top = top + "px"; } } }; var walk = function (elm) { if(window.getComputedStyle(elm,null) && "auto" !== window.getComputedStyle(elm,null).getPropertyValue("top")) { arrayElements.push(elm); } var node; for (node = elm.firstChild; node; node = node.nextSibling) { if (node.nodeType === 1) { walk(node); } } };</script><script type="text/javascript" id="waxCS">var WAX = function () { var _arrInputs; return { getElement: function (i) { return _arrInputs[i]; }, setElement: function(i){ _arrInputs=i; } } }(); function waxGetElement(i) { return WAX.getElement(i); } function coSetPageData(t, d){ if('wax'==t) { WAX.setElement(d);} }</script>

The folks at Cincom Smalltalk have put together a fun challenge for developers;  the Cincom Smalltalk 2048 contest.  

It involves implementing or improving the recent popular game called 2048.

There is an example I put together to help folks new to Smalltalk get started in the public repository (TwentyFortyEight).

We have examples of 2048 for ObjectStudio and VisualWorks.

Details can be found here:

http://www.cincomsmalltalk.com/main/developer-community/cincom-smalltalk-contest/

We welcome you to participate, have fun, and help show people the power of Smalltalk!

Regards

Arden Thomas

Arden Thomas
Cincom Smalltalk Product Manager

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc