We propose theory Instruments, a novel kind of tangible tool, to bring perspective shifts and new vocabulary into design projects and organisations. they aim to bridge disciplinary gaps among practitioners. In this pi...
详细信息
Most text-based programming languages found in introductory programming courses use English words. this fact alone can deter non-English speakers who wish to learn to program: how can we expect them to learn a program...
详细信息
ISBN:
(纸本)9781450383264
Most text-based programming languages found in introductory programming courses use English words. this fact alone can deter non-English speakers who wish to learn to program: how can we expect them to learn a programming language if they do not even understand the meaning of the keywords they are manipulating? In addition, the syntax and semantics of programming languages are also known causes of learners' mistakes. In this paper, we highlight these difficulties and then present PseuToPy, a programming language which can be localized in several tongues on the one hand and produce instructions close to these natural languages on the other. PseuToPy is still a work in progress: we have developed a version in French and hope to study its use in an educational context to see whether or not programming beginners find it easier to learn programming by implementing algorithms in their native tongues.
the introduction of collaborative robots (cobots) into the workplace has presented both opportunities and chal-lenges for those seeking to utilize their functionality. Prior research has shown that despite the capabil...
详细信息
We present the design and implementation of two new tools for randomised testing of the compiler of the Dafny programming language. the Dafny language and tool-chain supports formal verification of rich functional pro...
详细信息
ISBN:
(纸本)9798350308198;9798350308181
We present the design and implementation of two new tools for randomised testing of the compiler of the Dafny programming language. the Dafny language and tool-chain supports formal verification of rich functional properties of programs, and is seeing increasing adoption by industry, being used by companies such as Amazon, Consensys, Microsoft and VMWare for the construction of high assurance software components. Bugs in the Dafny compiler are of critical importance because they have the potential to undermine the safety and security of deployed software that has been formally verified at the source code level. Our new testing tools, fuzz-d and DafnyFuzz, are based on randomised program generation, and overcome the test oracle problem using a combination of differential testing, metamorphic testing and the generation of programs with known expected results. the new tools go significantly further than XDsmith, an existing randomised compiler testing tool for Dafny, in terms of the features of the language that they support. We have used these tools to find and report 24 previously-unknown Dafny compiler bugs that were beyond the reach of XDsmith, of which 9 are soundness issues. Our fuzzing campaign has also led to changes to the Dafny language specification via the identification of ambiguous or under-documented language features. We present a set of controlled experiments looking at statement and mutation coverage on the Dafny compiler code base. the results show that fuzz-d and DafnyFuzz achieve substantial additional coverage on top of that provided by XDsmith, and can cover some areas missed by the Dafny compiler regression test suite. All three of fuzz-d, DafnyFuzz and XDsmith improve upon the number of mutants killed by the Dafny regression test suite.
Some Computer Science concepts, and programming in particular, are hard to learn. As CS is (re-)entering national school curricula throughout the world, qualified CS teachers need to be trained. In this PhD work we wi...
详细信息
ISBN:
(纸本)9781450383264
Some Computer Science concepts, and programming in particular, are hard to learn. As CS is (re-)entering national school curricula throughout the world, qualified CS teachers need to be trained. In this PhD work we will propose a training that will help teachers teach those concepts effectively. Based on the educational framework of learning transfer and cognitive load theory, we will do this through evidence-based instructional strategies. these explicit programming strategies aim to decrease cognitive load and foster learning transfer. My PhD will advance the topic of CS teacher training by understanding how CS teachers apply those programming strategies in their teaching through qualitative studies and by designing a validated training that can be used with tutors and teacher trainers.
the proceedings contain 15 papers. the topics discussed include: virtio-mem: paravirtualized memory hot(un)plug;how to design a library OS for practical containers?;(no)compromis: paging virtualization is not a fatali...
ISBN:
(纸本)9781450383943
the proceedings contain 15 papers. the topics discussed include: virtio-mem: paravirtualized memory hot(un)plug;how to design a library OS for practical containers?;(no)compromis: paging virtualization is not a fatality;automatically exploiting the memory hierarchy of GPUs through just-in-time compilation;effective exploitation of SIMD resources in cross-ISA virtualization;adaptive live migration of virtual machines under limited network bandwidth;extending Intel PML for hardware-assisted working set size estimation of VMS;multiple-tasks on multiple-devices (MTMD): exploiting concurrency in heterogeneous managed runtimes;and analysis of NVMe-SSD to passthrough GPU data transfer in virtualized systems.
It is important to educate students about acceptable practices with regard to programming plagiarism and collusion. However, the current approach is quite demanding since it is manual, relying heavily on instructors. ...
详细信息
ISBN:
(纸本)9781450383264
It is important to educate students about acceptable practices with regard to programming plagiarism and collusion. However, the current approach is quite demanding since it is manual, relying heavily on instructors. the information is delivered briefly, along with other general information, and students may not understand how it applies to their own cases. there is also no warning when students might be about to breach the rules. this doctoral project proposes a system that provides automated, personalised, and timely feedback about programming plagiarism and collusion. If a submission shares undue similarity with other students' submissions, all involved students will be given similarity feedback, showing their program with similar code fragments highlighted and the similarities explained in natural language, and they are expected to resubmit. Students whose programs do not show clear similarities will be shown a simulation feedback with comparable information. the system is evaluated with some technical measurements and three quasi-experiments.
To assist game developers in crafting game NPCs, we present EvolvingBehavior, a novel tool for genetic programming to evolve behavior trees in Unreal174;Engine 4. In an initial evaluation, we compare evolved behavio...
详细信息
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.
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.
暂无评论