Skip to main content

New Language Expands on Google's Go

InfoWorld (09/23/16) Serdar Yegulalp 

Polish developer Marcin Wrochniak has introduced Have, a computer language that transpiles to and expands on Google's Go. Wrochniak developed Have as a hobby project, with the goal of the language becoming a "companion" to Go that addresses some of its common "landmines." One of the most obvious differences between Have and Go is the formatting; Go uses curly braces similar to C/C++, while Have uses block indents like Python. Other differences address idiosyncrasies in Go. For example, the way that variable declaration, structs, and interfaces work have all been modified in Have to be more consistent with each other and to avoid internal inconsistencies that are a common source of bugs. The new language also plans to add generics to Go, which will enable programmers to create constructs in the language that use type parameters and make it possible to extend Have in ways not readily possible in Go. Have also features "specializations," which let generics use different code based on the type in question. Although many of the features Wrochniak wants to provide have not been implemented yet, Go's role as a platform for language innovation is notable.

Comments

Post a Comment

Pascal Fares and Open Source Lebanese Movement >

Popular posts from this blog

Setting up MySQL SSL and secure connections

There are different articles on how to setup MySQL with SSL but it’s sometimes difficult to end up with a good simple one. Usually, setting up MySQL SSL is not really a smooth process due to such factors like “it’s not your day”, something is broken apparently or the documentation lies... Read this article : Setting up MySQL SSL and secure connections Pre-requisite : Creating SSL Certificates and Keys Using openssl

HOWTO remove all dangling commits from your git repository

A good explanation of the dangling ( fr: ballants) commits source tells you how they get created. git fsck --full   Checking object directories: 100% (300/300), done. Checking objects: 100% (10658/10658), done. dangling commit x.... dangling blob y.... dangling commit z.... dangling blob w.... dangling blob a.... dangling commit b.... How to quickly remove those? git reflog expire --expire=now --all git gc --prune=now