Scripting Bits
Published in

Scripting Bits

Random Ideas About Programming Languages

Keeping up with current research

Being employed as an application developer limits my ability to get better at writing software. The job is a box that constrains my perspective to one codebase and the knowledge contained in one team. For 8 hours a day, I’m limited to doing the same day-to-day tasks slightly better, if I’m feeling adventurous.

For someone who once considered seeking a PhD in computer science, it’s not a great place to find myself in. Time to wander.

SPLASH is the main academic conference on programming languages. Its contributors seek to push the envelope on what programming languages can do and how well they do it. Many of the ideas presented in the conference won’t affect application developers for years.

Mμl: The Power of Dynamic Multi-Methods

I find it valuable to see how programming languages affect what implementation strategies are possible. It gives me a sense for how a language helps or hinders me in expressing my intent.

FlashFreeze: Low-Overhead JavaScript Instrumentation for Function Serialization

Concepts like foreign function interface or remote procedure call raise interesting questions about how different pieces of code could communicate. Are HTTP requests the end-all for client-server web applications? Does the intent that I express in implementation have to account for HTTP semantics? Maybe some of these new concepts can be used here.

code2vec: Learning Distributed Representations of Code

If code editors knew more about the code being edited, they could do more to support the process. Whether its showing related code or automatically producing automated tests, more can be done.

Dark: a holistic programming language

Watching a developer crank out an application involving a database and multiple external APIs is pretty compelling. A lot of the time consuming and redundant aspects of implementing this in mainstream technologies is automated away. Dark’s editing environment also provides useful feedback about what your code does as you write it. Surely, we can take bits and pieces from Dark and use them to augment our own development experience.

Active Learning for Software Engineering

This paper provides more examples of how tools can support developers in expressing their intent. From reverse engineering and making inferences about an existing piece of example code, to figuring out the general intent, to generating code that meets that general intent, this is eye-opening stuff.

--

--

--

Join me in my short coding experiments where I dive into the rabbit hole of what-ifs!

Recommended from Medium

Installing Docker Engine 19.03 on Raspberry Pi 3 in 2 Minutes

TIME COMPLEXITY AND BIG O NOTATION

Git & GitHub Beginner Tutorial

Convert Wav To Dss File Format

How to be a better software engineer? — Code Reviews

Maintain a build strategy

How to Deal with Overthinking as a Programmer

Differences SOAP vs REST: 🔍 Comparison of protocols and their security

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Vinson Chuong

Vinson Chuong

More from Medium

Perl warnings and the warn function

Static Analysis: A bringup, overview and additions that you will actually use

From Liskov substitution principle to covariance

Big O Notation with Sorting Algorithms