Go Home Swift Compiler, You’re Drunk
Be aware of Swift's inability to efficiently parse and compile simple Dictionary/Array literals. The compilation time grows exponentially with each line.
The latest blog posts to take off on Hacker News. 5,637 posts.
Be aware of Swift's inability to efficiently parse and compile simple Dictionary/Array literals. The compilation time grows exponentially with each line.
QBE is a compiler backend that aims to provide 70% of the performance of industrial optimizing compilers in 10% of the code. QBE fosters language innovation by offering a compact user-friendly and performant backend. The size limit constrains QBE to focus on the essential and prevents embarking on a never-ending path…
Functors, Applicatives, and Monads in Plain English - This is a no-bullshit zone
We have released PyPy 5.1, about a month after PyPy 5.0. This release includes more improvement to warmup time and memory requirements,...
This is the first article in a series dedicated to multiple dispatch - an advanced abstraction technique available to programmers out-of-the-box in some languages, and implementable in others. This first post in the series presents the technique and explains the problem it intends to solve. It uses C++ as the…
Ok, I lied, there’s no weird trick. However, you can easily reduce a Go binary size by more than 6 times with some flags and common tools.
A while ago, I bought the book “ The Go Programming Language ” written by Alan Donovan and Brian Kernighan. I have always been a fan of Brian Kernighan’s writings. I should admit that I bought the book mainly for his great examples and writings than for the Go language itself, but since then have got interested in the…
The Scala language is large and complex, and it provides a variety of tools that a developer can use to do the same thing in a variety of ways. Given the range of possible solutions to every problem, how can a developer choose which one should be used? This is the first in a series of blog posts aiming to provide…
Obviously, not everyone hates Go. But there was a [quora question]( https://www.quora.com/Why-does-Go-seem-to-be-the-most-heavily- criticised-among-the-newer-programming-languages?srid=uCiY&share=1) recently about why everyone criticizes Go so much. (sorry, I don’t normally post links to Quora, but it was the…
Everything you need to integrate your application with 8x8 products, or embed 8x8 products into your own platform.
I have a couple of ideas about learning programming languages. The first is that we do it wrong. I’m sure you’ve experienced this. You try learning a new language and can’t quite see how it all works. Why do I use this syntax here and some other syntax over here? We get frustrated by all the weird bits and go back to…
This is a progress report on the Go toolchain improvements during the 1.7 development cycle. All measurements were taken using a Thinkpad x220, Core i5-2520M, running Ubuntu 14.04 linux.
Immutable data structures – also known as persistent or purely functional data structures – are a key part of modern functional programming. Once created, immutable data structures cannot be modified. Instead, they support operations which efficiently produce a new copy of the structure with the desired changes…
Interview with Matt Might, a professor, programming languages researcher, investigator of rare disease, and popular blogger.
ASDF , the de facto standard build system for Common Lisp, has been vastly improved between 2009 and 2014. These and other improvements finally bring Common Lisp up to par with "scripting languages" in terms of ease of writing and deploying portable code that can access and "glue" together functionality from the…
Five years ago, when I started writing the first lines of code of what would become later the Red/System compiler, I had a pretty good pictu...
For the past few years I’ve followed the evolution of Rust with interest. Rust is a new systems programming language (like C or C++) with greater emphasis on...
This has really been quite a journey for me lately. And regarding the frequently asked question “Why did you choose Python for Machine Learning?” I guess it…
Open Source Freelancer
This blog post came into being after a few discussions about Types in Scala after some of JavaOne’s parties in 2013. After those discussions I figured that many questions are often repeated by different people, during their learning of Scala. I though that we didn’t have a full list of all tricks what we can to with…
One thing that works well in practice in cases where you really don’t want to process single bytes at a time is to use a union for going from one type to another. Granted, writing one member of a union and reading from a different one also isn’t allowed per the standard, but every compiler I’ve come across allows it…