SEARCH KEYWORD -- Compiler
About JavaScript source map
Last week jQuery 1.9 was released. This is the last release before jQuery 2.0. It adds many new functions, one of them is the source map. By accessing http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js , you can scroll to the last line and you will see below line :  //@ sourceMappingURL=jquery.min.map This is source map, it is a separate file and it is put at the same directory as the source file. You can click here and see what it looks like. It's an very useful functio...
Source map, JavaScript, jQuery 2013-02-01 07:06:44
malloc/free and new/delete in C++
malloc and free are C++/C language standard library functions, while new/delete are operator of C++. They can be used to allocate dynamic memory and free memory in C++ programs malloc/free can not meet the requirements of dynamic objects creation. Object needs to call the constructor to initialize the object when creating, the object needs to call the destructor before it is destroyed Since malloc() and free() are library functions rather than operators, the compiler has no control permiss...
Python internals: adding a new statement to Python
This article is an attempt to better understand how the front-end of Python works. Just reading documentation and source code may be a bit boring, so I’m taking a hands-on approach here: I’m going to add an until statement to Python. All the coding for this article was done against the cutting-edge Py3k branch in the Python Mercurial repository mirror. The until statement Some languages, like Ruby, have an until statement, which is the complement to while (until num == 0 is equi...
Python,New statement,Research,Addition 2012-03-12 07:32:24
Scala Macros
This is the home page of project Kepler, an ongoing effort towards bringing compile-time metaprogramming to Scala. Our flavor of macros is reminiscent of Lisp macros, adapted to incorporate type safety and rich syntax. Unlike infamous C/C++ preprocessor macros, Scala macros: 1) are written in full-fledged Scala, 2) work with expression trees, not with raw strings, 3) cannot change syntax of Scala. You can learn more about our vision of metaprogramming from our talks. We propose to enrich Scala ...
Scala,Macro,Efficiency,Maintainebility 2012-02-01 00:12:15
Learning Go
This year I'm going to try a new programming language - Go. I had this notion that compiled, type based languages are overly complex and reduces developer efficiency. However, after doing some reading about Go, it appeared to take a different path from the rest and felt like something worth trying. Acquainting a programming language is a journey. First few steps you take with it will define your perception about it. These first few steps went well for me with Go and it felt lik...
JavaScript JVM runs Java
The world of software is made slightly crazy because of the huge flexibility within any computer language. Once you have absorbed the idea of a compiler written in the language it compiles what else is there left to gawp at? But... a Java Virtual Machine JVM written in JavaScript seems like another level of insanity.In fact it is a quite reasonable idea which is only made mad by the usual positions that Java, the top dog, and JavaScript the underling, usually occupy. Java is compiled not to mach...
JavaScript,JVM,BicaVM,Cross platform,JavaScript written JVM 2011-11-22 02:51:38
How big is sizeof structure?
First let's see the codes of a structure: struct node{ int a; int b; }; Question : What's sizeof(node)? The answer is very simple, on a 32 bit machine, an int will take 4 bytes and two ints will take 8 bytes. So sizeof(node) is 8. The answer for the above codes is 8, then how about the following structure: struct node{ char a; int b; }; Question : Then what's sizeof(node) now? int takes 4 bytes, char takes 1 bytes, is the answer 5? Now the answer may not be 5, on some mac...
Data structure alignment, pack 2012-10-29 12:13:37
What's Wrong with the For Loop
Closures in Java are a hot topic of late. A few really smart people are drafting a proposal to add closures to a future version of the language. However, the proposed syntax and the linguistic addition are getting a lot of push back from many Java programmers. Today, Elliotte Rusty Harold posted his doubts about the merits of closures in Java. Specifically, he asks "Why Hate the for Loop?": I don’t know what it is some people have against for loops that they’re so eager to...
For loop,Basic,Problem,Efficiency,Java 2012-02-24 05:06:15
Smuggling data in pointers
While reading up on The ABA Problem I came across a fantastic hack. The ABA problem, in a nutshell, results from the inability to atomically access both a pointer and a "marked" bit at the same time (read the wikipedia page). One fun, but very hackish solution is to "smuggle" data in a pointer. Example:#include "stdio.h"void * smuggle(void * ptr, int value){ return (void *)( (long long)ptr | (value & 3) );}int recoverData(void * ptr){ return (long long)ptr &...
Integer overflow
You may be familiar with integer overflow, but what you may not be familiar with is how gcc handles signed integer overflow. First let's look at the standard, for unsigned integer, the standard says : A computation involving unsigned operands can never overflow, because a result that cannot be represented by the resulting unsigned integer type is reduced modulo the number that is one greater than the largest value that can be represented by the resulting type. In other words, unsigned integer ov...
Integer overflow,gcc,Linux 2012-10-20 13:33:10
RECENT
- Tips for Socializing With Friends During College
- Proximity Cards Do More Than Just Open Doors
- How to choose quality painted auto parts
- Oval engagement rings from MoonOcean: Elegance of form and individual approach
- Hologres vs AWS Redshift
- GoLand connect to Hologres
- A journey to investigate a goroutine leakage case
- Understanding Slice Behavior in Go
- Breaking Barriers: How 3D Printing is Democratizing Product Development
- The Power of Efficiency: 10 Practical Energy-Saving Tips for Tech Startups
- more>>