programming microcontrollers involves low level interfacing with hardware and peripherals that are concurrent and reactive. Such programs are typically written in a mixture of C and assembly using concurrent language ...
详细信息
ISBN:
(纸本)9781450386753
programming microcontrollers involves low level interfacing with hardware and peripherals that are concurrent and reactive. Such programs are typically written in a mixture of C and assembly using concurrent language extensions (like FreeRTOS tasks and semaphores), resulting in unsafe, callback-driven, error-prone and difficult-to-maintain code. We address this challenge by introducing SenseVM - a bytecode-interpreted virtual machine that provides a message passing based higher-order concurrency model, originally introduced by Reppy, for microcontroller programming. this model treats synchronous operations as first-class values (called Events) akin to the treatment of first-class functions in functional languages. this primarily allows the programmer to compose and tailor their own concurrency abstractions and, additionally, abstracts away unsafe memory operations, common in shared-memory concurrency models, thereby making microcontroller programs safer, composable and easier-to-maintain. Our VM is made portable via a low-level bridge interface, built atop the embedded OS - Zephyr. the bridge is implemented by all drivers and designed such that programming in response to a software message or a hardware interrupt remains uniform and indistinguishable. In this paper we demonstrate the features of our VM through an example, written in a Caml-like functional language, running on the nRF52840 and STM32F4 microcontrollers.
Wireless charging is a promising solution to resolving the energy constraint of wireless sensor networks. In a wireless rechargeable sensor network, mobile chargers (MCs) move around the network and charge the sensor ...
详细信息
Interactive user experiences on the web are becoming the norm. Client-side programs are becoming more complicated and have to deal with event handling, reading HTML document state and updating the interface. In this p...
详细信息
ISBN:
(纸本)9781450389860
Interactive user experiences on the web are becoming the norm. Client-side programs are becoming more complicated and have to deal with event handling, reading HTML document state and updating the interface. In this paper we propose a declarative language that supports these three facets of client-side browser development declaratively and provides a programming model where complex interfaces can be written using simple programming techniques such as records, functions and recursion.
this project proposes a programmable logic-oriented algorithm to solve the difficult problem of coding generation of aircraft control system. the synchronous data flow computing model suitable for control system model...
详细信息
To achieve high performance, modern HPC systems take advantage of heterogeneous GPU architectures. Often these GPUs are programmed using a vendor preferred parallel programming model. Unfortunately, this often results...
详细信息
Computational thinking (CT) is a key component of 21st century education. Withthat visual programming has become a major tool for primary school students to learn programming. In response to the current difficulties ...
详细信息
programming education has received extensive attention in recent years due to the increasing demand for programming ability in almost all industries. Educational institutions have widely employed online judges for pro...
详细信息
ISBN:
(纸本)9781450395731
programming education has received extensive attention in recent years due to the increasing demand for programming ability in almost all industries. Educational institutions have widely employed online judges for programming training, which can help teachers automatically assess programming assignments by executing students' code with test cases. However, a more important teaching process with online judges should be to evaluate how students master each of the programming skills such as strings or pointers, so that teachers may give personalized feedback and help them proceed to the success more efficiently. Previous studies have adopted deep models of knowledge tracing to evaluate a student's mastery level of skills during the interaction withprogramming exercises. However, existing models generally follow the conventional assumption of knowledge tracing that each programming exercise requires only one skill, whereas in practice a programming exercise usually inspects the comprehensive use of multiple skills. Moreover, the feature of student code is often simply concatenated with other input features without the consideration of its relationship withthe inspected programming skills. To bridge the gap, we propose a simple attention-based approach to learn from student code the features reflecting the multiple programming skills inspected by each programming exercise. In particular, we first use a program embedding method to obtain the representations of student code. then we use the skill embeddings of each programming exercise to query the embeddings of student code and form an aggregated hidden state representing how the inspected skills are used in the student code. We combine the learned hidden state with DKT (Deep Knowledge Tracing), an LSTM (Long Short-Term Memory)-based knowledge tracing model, and show the improvements over baseline model. We point out some possible directions to improve the current work.
the proceedings contain 2 papers. the topics discussed include: actions you can handle: dependent types for AI plans;and a simpler encoding of indexed types.
ISBN:
(纸本)9781450386166
the proceedings contain 2 papers. the topics discussed include: actions you can handle: dependent types for AI plans;and a simpler encoding of indexed types.
Governments and businesses routinely disclose large amounts of private data on individuals, for data analytics. However, despite attempts by data controllers to anonymise data, attackers frequently deanonymise disclos...
详细信息
ISBN:
(纸本)9781450392303
Governments and businesses routinely disclose large amounts of private data on individuals, for data analytics. However, despite attempts by data controllers to anonymise data, attackers frequently deanonymise disclosed data by matching it withtheir prior knowledge. When is a chosen anonymisation method adequate? For this, a data controller must consider attackers befitting their scenario;how does attacker knowledge affect disclosure risk? We present a multi-dimensional conceptual framework for assessing privacy risks given prior knowledge about data. the framework defines three dimensions: distinctness (of input records), informedness (of attacker), and granularity (of anonymisation program output). We model three well-known types of disclosure risk: identity disclosure, attribute disclosure, and quantitative attribute disclosure. We demonstrate how to apply this framework in a health record privacy scenario: We analyse how informing the attacker with COVID-19 infection rates affects privacy risks. We perform this analysis using Privug, a method that uses probabilistic programming to do standard statistical analysis with Bayesian Inference.
the proceedings contain 6 papers. the topics discussed include: graft: general purpose raft consensus in Elixir;the Hera framework for fault-tolerant sensor fusion with Erlang and GRiSP on an IoT network;detecting oxb...
ISBN:
(纸本)9781450386128
the proceedings contain 6 papers. the topics discussed include: graft: general purpose raft consensus in Elixir;the Hera framework for fault-tolerant sensor fusion with Erlang and GRiSP on an IoT network;detecting oxbow code in erlang codebases withthe highest degree of certainty;Makina: a new QuickCheck state machine library;bidirectional typing for Erlang;and what are the critical security flaws in my system?.
暂无评论