{"id":5268,"date":"2015-03-13T07:00:40","date_gmt":"2015-03-13T15:00:40","guid":{"rendered":"http:\/\/formtek.com\/blog\/?p=5268"},"modified":"2015-02-06T09:04:04","modified_gmt":"2015-02-06T17:04:04","slug":"javascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript","status":"publish","type":"post","link":"https:\/\/formtek.com\/blog\/javascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript\/","title":{"rendered":"Javascript Evolves: Tech Heavyweights Battle Over Statically Typed Javascript"},"content":{"rendered":"<p><a title=\"Javascript Programming language of the year -- 2014\" href=\"http:\/\/www.tiobe.com\/index.php\/content\/paperinfo\/tpci\/index.html\" target=\"_blank\">Javascript was ranked as the programming language<\/a> of 2014 based on the frequency of searches made on public search engines like Google, Bing, Yahoo! and Wikipedia. \u00a0While Javascript has long had detractors, the fact that it&#8217;s the standard language of the browser has enabled it to remain popular.<\/p>\n<p>Rather than try to introduce totally new alternative languages to Javascript that would no doubt be difficult to get universally accepted, increasingly groups are attempting to introduce improvements to the Javascript language or to introduce new languages that ultimately compile to standard Javascript.<\/p>\n<p>The <a title=\"ECMAScript\" href=\"http:\/\/ecma-international.org\/memento\/TC39-M.htm\" target=\"_blank\">next generation of Javascript<\/a> standard, <a title=\"ECMAScript\" href=\"http:\/\/en.wikipedia.org\/wiki\/ECMAScript\" target=\"_blank\">ECMAScript 6<\/a>, or ES6 is in the final rounds of being finalized, now <a title=\"Targeted for June 2015\" href=\"http:\/\/stackoverflow.com\/questions\/15640233\/when-will-ecmascript-v-6-become-standard\" target=\"_blank\">targeted for June 2015<\/a>. \u00a0(<a title=\"ECMA -- what is it?\" href=\"http:\/\/en.wikipedia.org\/wiki\/Ecma_International\" target=\"_blank\">ECMA <\/a>stands for the European Computer Manufacturers Association). \u00a0ES6 will include <a title=\"ES6 enhancements\" href=\"http:\/\/codeutopia.net\/blog\/2014\/12\/18\/getting-started-with-using-es6-ecmascript-6\/\" target=\"_blank\">enhancements <\/a>like promises, the &#8216;let&#8217; keyword, and iterators. \u00a0It&#8217;s taken some time to get this far and there have been a number of delays before finalizing the specification.<\/p>\n<div id=\"attachment_5270\" style=\"width: 365px\" class=\"wp-caption alignleft\"><a href=\"http:\/\/formtek.com\/blog\/wp-content\/uploads\/2015\/03\/typescript.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-5270\" class=\" wp-image-5270 \" title=\"Microsoft TypeScript for Javascript\" alt=\"typescript\" src=\"http:\/\/formtek.com\/blog\/wp-content\/uploads\/2015\/03\/typescript.jpg\" width=\"355\" height=\"226\" srcset=\"https:\/\/formtek.com\/blog\/wp-content\/uploads\/2015\/03\/typescript.jpg 592w, https:\/\/formtek.com\/blog\/wp-content\/uploads\/2015\/03\/typescript-300x191.jpg 300w\" sizes=\"auto, (max-width: 355px) 100vw, 355px\" \/><\/a><p id=\"caption-attachment-5270\" class=\"wp-caption-text\">Microsoft&#8217;s TypeScript<\/p><\/div>\n<p>A quicker alternative to waiting for the ECMA committee to move forward with changes to the Javascript language is to create an &#8216;improved&#8217; Javascript-based language that ultimately compiles in to Javascript code and will run in today&#8217;s browsers.<\/p>\n<p>One area in particular that people find lacking with standard Javascript is the fact that it isn&#8217;t a statically typed language. \u00a0Some <a title=\"Benefits of Statically Typed Languages\" href=\"http:\/\/www.alorelang.org\/doc\/typeoverview.html\" target=\"_blank\">benefits of static typing<\/a> include:<\/p>\n<ul>\n<li>Detecting program errors early on before even running the program<\/li>\n<li>Type declarations adds a minimal amount of auto-documentation that improves the understanding of the program<\/li>\n<li>May improve runtime efficiency of the program<\/li>\n<\/ul>\n<p>While many people agree that that the benefits of statically typed languages are large, especially for projects of scale, on the flip side, some issues that people have with <a title=\"Problems with Statically Typed Languages\" href=\"http:\/\/kishorelive.com\/2013\/02\/24\/the-comeback-of-static-typing\/\" target=\"_blank\">statically typed languages<\/a> include:<\/p>\n<ul>\n<li>Verbose<\/li>\n<li>Hard to use for prototyping<\/li>\n<li>Time spent compiling<\/li>\n<\/ul>\n<p>Recently, three different approaches to creating new languages that support static typing and that ultimately compile into standard Javascript include <a title=\"Typescript\" href=\"http:\/\/www.typescriptlang.org\/\" target=\"_blank\">Microsoft&#8217;s TypeScript<\/a>, <a title=\"Facebook Flow\" href=\"http:\/\/flowtype.org\/\" target=\"_blank\">Facebook&#8217;s Flow<\/a>, and <a title=\"Google AtScript\" href=\"https:\/\/docs.google.com\/document\/d\/11YUzC-1d0V1-Q3V0fQ7KSit97HnZoKVygDxpWzEYW0U\/edit\" target=\"_blank\">Google&#8217;s AtScript<\/a>\u00a0and <a title=\"Google Closure\" href=\"https:\/\/developers.google.com\/closure\/compiler\/docs\/js-for-compiler\" target=\"_blank\">Closure<\/a>. \u00a0It appears that a new browser battle may be brewing between heavyweight tech companies.<\/p>\n<p>&nbsp;<\/p>\n<div class=\"lightsocial_container\"><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/digg.com\/submit?url=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F&amp;title=\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/digg.png\" alt=\"Digg This\" title=\"Digg This\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/www.reddit.com\/submit?url=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F&amp;title=\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/reddit.png\" alt=\"Reddit This\" title=\"Reddit This\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/www.stumbleupon.com\/submit?url=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F&amp;title=\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/stumbleupon.png\" alt=\"Stumble Now!\" title=\"Stumble Now!\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/buzz.yahoo.com\/buzz?targetUrl=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F&amp;headline=\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/yahoo_buzz.png\" alt=\"Buzz This\" title=\"Buzz This\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/www.dzone.com\/links\/add.html?title=&amp;url=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/dzone.png\" alt=\"Vote on DZone\" title=\"Vote on DZone\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/www.facebook.com\/sharer.php?t=&amp;u=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/facebook.png\" alt=\"Share on Facebook\" title=\"Share on Facebook\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/delicious.com\/save?title=&amp;url=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/delicious.png\" alt=\"Bookmark this on Delicious\" title=\"Bookmark this on Delicious\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/www.dotnetkicks.com\/kick\/?title=&amp;url=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/dotnetkicks.png\" alt=\"Kick It on DotNetKicks.com\" title=\"Kick It on DotNetKicks.com\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/dotnetshoutout.com\/Submit?title=&amp;url=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/dotnetshoutout.png\" alt=\"Shout it\" title=\"Shout it\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/www.linkedin.com\/shareArticle?mini=true&amp;url=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F&amp;title=&amp;summary=&amp;source=\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/linkedin.png\" alt=\"Share on LinkedIn\" title=\"Share on LinkedIn\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/www.technorati.com\/faves?add=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/technorati.png\" alt=\"Bookmark this on Technorati\" title=\"Bookmark this on Technorati\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/twitter.com\/home?status=Reading+https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/twitter.png\" alt=\"Post on Twitter\" title=\"Post on Twitter\" \/><\/a><\/div><div class=\"lightsocial_element\"><a class=\"lightsocial_a\" href=\"http:\/\/www.google.com\/buzz\/post?url=https%3A%2F%2Fformtek.com%2Fblog%2Fjavascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript%2F\" target=\"_blank\"><img decoding=\"async\" class=\"lightsocial_img\" src=\"https:\/\/formtek.com\/blog\/wp-content\/plugins\/light-social\/google_buzz.png\" alt=\"Google Buzz (aka. Google Reader)\" title=\"Google Buzz (aka. Google Reader)\" \/><\/a><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Javascript was ranked as the programming language of 2014 based on the frequency of searches made on public search engines like Google, Bing, Yahoo! and Wikipedia. \u00a0While Javascript has long had detractors, the fact that it&#8217;s the standard language of<span class=\"ellipsis\">&hellip;<\/span><\/p>\n<div class=\"read-more\"><a href=\"https:\/\/formtek.com\/blog\/javascript-evolves-tech-heavyweights-battle-over-statically-typed-javascript\/\">Read more &#8250;<\/a><\/div>\n<p><!-- end of .read-more --><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36],"tags":[],"class_list":["post-5268","post","type-post","status-publish","format-standard","hentry","category-technology"],"_links":{"self":[{"href":"https:\/\/formtek.com\/blog\/wp-json\/wp\/v2\/posts\/5268","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/formtek.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/formtek.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/formtek.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/formtek.com\/blog\/wp-json\/wp\/v2\/comments?post=5268"}],"version-history":[{"count":0,"href":"https:\/\/formtek.com\/blog\/wp-json\/wp\/v2\/posts\/5268\/revisions"}],"wp:attachment":[{"href":"https:\/\/formtek.com\/blog\/wp-json\/wp\/v2\/media?parent=5268"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/formtek.com\/blog\/wp-json\/wp\/v2\/categories?post=5268"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/formtek.com\/blog\/wp-json\/wp\/v2\/tags?post=5268"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}