Month: May 2017

How to index files inside your computer

Do you have tons of pdfs in your computer? Me too!

We are used to search in the web to file about the subject we are willing to know. But sometimes it is better to search in the PDFs files we already gathered.

In the past I used to use docFetcher (http://docfetcher.sourceforge.net/en/index.html) to index my files, but this program is heavy, slow (java) and crashes often.

Then today while looking for alternatives I found a program called “recoll”. It is a native program with Qt GUI. And I can install it with a single command:

$ sudo apt-get install recoll

Listing of JavaScript engines for embedded systems/IoT applications

JavaScript could be an awful language (i.e. “typeof null returning ‘object’ is a bug that can’t be fixed, because it would break existing code”), but it is everywhere and is one programming language of IoT (other is Lua).

I decided to list here some small JavaScript options for embedded system:

Duktape (http://duktape.org/) – A small footprint, easily embeddable Ecmascript E5/E5.1 engine.

Espruino (http://www.espruino.com/) – A very small footprint interpreter specifically for microcontrollers. Can run in less than 8 kB of RAM by executing from source (rather than bytecode).

JerryScript (https://github.com/jerryscript-project/jerryscript) – A very small interpreter developed by Samsung for IoT application.

MuJS (https://mujs.com/) – A lightweight ECMAScript interpreter library, designed for embedding in other software to extend them with scripting capabilities. Originally developed for MuPDF.

Throwback (https://github.com/getfilament/throwback) – The smallest JS engine for microcontroller, still in early stage of development

Tiny-JS (https://github.com/snoozbuster/tiny-js): A minimalJavaScript interpreter written in C++.

So, we have at least 6 JS engine options to use with microcontrollers. From this listing I think JerryScript is a step ahead, but Throwback could to evolve and be a real alternative for deep embedded systems.

Source: https://en.wikipedia.org/wiki/List_of_ECMAScript_engines