From: Richard Weinberger <richard@nod.at> To: linux-kernel@vger.kernel.org Cc: linux-api@vger.kernel.org Subject: New syscall: leftpad() Date: Fri, 1 Apr 2016 00:33:31 +0200 [thread overview] Message-ID: <1459463613-32473-1-git-send-email-richard@nod.at> (raw) Recent happenings in the node.js community showed how fragile software is when it comes to dependencies of fundamental algorithms like leftpad[1]. A node.js package which provided ledpad vanished and broke a lot of software. This raised our attention and we came to the conclusion that it is the kernel's job to provide such functionality such that node.js based applications can in future rely in Linux's "don't break userspace" rule. We hope that glibc and Andoid's bionic will soon offer wrapper functions for this new leftpad system call. We put leftpad into the kernel not only because of Linux's stable ABI, also for performance reasons. As everyone knows, within the kernel everything is faster and better. Leftpad has millions of users, so it has to be as fast as possible. This new system call will also help making services like left-pad.io[2] faster and more reliable. If the leftpad() system call gets adopted by a wider user base it might also make sense to add a generic npm() system call which acts like ioctl() where kernel modules can register new functions that are often used by node.js. Such functions might be, is_array(), is_int(), etc. Enjoy, //richard [1] http://www.theregister.co.uk/2016/03/23/npm_left_pad_chaos/ [2] http://left-pad.io/ [PATCH] Implement leftpad syscall [PATCH] leftpad.2: Document new syscall
WARNING: multiple messages have this Message-ID (diff)
From: Richard Weinberger <richard-/L3Ra7n9ekc@public.gmane.org> To: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Subject: New syscall: leftpad() Date: Fri, 1 Apr 2016 00:33:31 +0200 [thread overview] Message-ID: <1459463613-32473-1-git-send-email-richard@nod.at> (raw) Recent happenings in the node.js community showed how fragile software is when it comes to dependencies of fundamental algorithms like leftpad[1]. A node.js package which provided ledpad vanished and broke a lot of software. This raised our attention and we came to the conclusion that it is the kernel's job to provide such functionality such that node.js based applications can in future rely in Linux's "don't break userspace" rule. We hope that glibc and Andoid's bionic will soon offer wrapper functions for this new leftpad system call. We put leftpad into the kernel not only because of Linux's stable ABI, also for performance reasons. As everyone knows, within the kernel everything is faster and better. Leftpad has millions of users, so it has to be as fast as possible. This new system call will also help making services like left-pad.io[2] faster and more reliable. If the leftpad() system call gets adopted by a wider user base it might also make sense to add a generic npm() system call which acts like ioctl() where kernel modules can register new functions that are often used by node.js. Such functions might be, is_array(), is_int(), etc. Enjoy, //richard [1] http://www.theregister.co.uk/2016/03/23/npm_left_pad_chaos/ [2] http://left-pad.io/ [PATCH] Implement leftpad syscall [PATCH] leftpad.2: Document new syscall
next reply other threads:[~2016-03-31 22:33 UTC|newest] Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-03-31 22:33 Richard Weinberger [this message] 2016-03-31 22:33 ` New syscall: leftpad() Richard Weinberger 2016-03-31 22:33 ` [PATCH] Implement leftpad syscall Richard Weinberger 2016-03-31 22:46 ` Michael Kerrisk (man-pages) 2016-03-31 22:46 ` Michael Kerrisk (man-pages) 2016-03-31 23:09 ` Greg KH 2016-03-31 23:09 ` Greg KH 2016-04-01 1:33 ` Frederic Weisbecker 2016-04-01 3:22 ` kbuild test robot 2016-04-01 3:22 ` kbuild test robot 2016-04-01 6:56 ` Richard Cochran 2016-04-01 6:56 ` Richard Cochran 2016-04-01 7:14 ` Scotty Bauer 2016-03-31 22:33 ` [PATCH] leftpad.2: Document new syscall Richard Weinberger 2016-04-08 18:10 ` Heinrich Schuchardt 2016-04-08 18:10 ` Heinrich Schuchardt 2016-04-09 14:12 ` Richard Weinberger 2016-03-31 23:36 ` New syscall: leftpad() Randy Dunlap 2016-03-31 23:36 ` Randy Dunlap 2016-04-01 8:06 ` Richard Weinberger 2016-04-01 8:06 ` Richard Weinberger
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1459463613-32473-1-git-send-email-richard@nod.at \ --to=richard@nod.at \ --cc=linux-api@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.