UROP Proceeding 2023-24

School of Engineering Department of Computer Science and Engineering 116 Programming Language Design and Implementation Supervisor: PARREAUX Lionel / CSE Student: KWAK Byeunggon / COMP Course: UROP 1100, Fall Effective debugging is important for both software development and programming language adoption. Existing debuggers often lack support for novel programming languages and paradigms, hindering their application and study. This work presents a new debugger for the MLscript language by leveraging the language-agnostic Debug Adapter Protocol. By designing as a compliant adapter, implementation focuses solely on MLscript aspects while gaining standardization through the protocol. Adhering to the protocol establishes extensibility and interoperability, allowing the debugger to evolve with the language and remain interoperable across contemporary development tools like Visual Studio Code and IntelliJ. Preliminary results demonstrate the debugger supports core functions like setting breakpoints and inspecting runtime variables. Programming Language Design and Implementation Supervisor: PARREAUX Lionel / CSE Student: NG Pui Hei Mark / COSC Course: UROP 1100, Spring In functional programming, recursion is the primary way of performing computation on data, and often leads to code that is easier to reason about. Unfortunately, when using traditional methods of compilation, each function requires the program to allocate a stack frame, which is expensive. This is a problem, as a large inputs can cause recursive functions to recurse on themselves many times, possibly leading to a stack overflow crash. In this UROP project, I resolved this problem in the IR of the MLscript programming language for a certain class of functions known as mutually tail-recursive functions, and further solve the problem for mutually tailrecursive modulo cons functions. I did this through two techniques: tail-recursion optimization and tailrecursion modulo cons. Capturing, Modeling and VR Rendering of Natural Environments Supervisor: SANDER Pedro / CSE Co-supervisor: BRAUD Tristan Camille / ISD Student: HSU Li-hsiu / COMP Course: UROP 1100, Spring This project aims to build a captivating VR experience that recreates the Sai Kung natural surroundings. It utilizes the ThreeJS library to construct the web-based 3D scene with strong emphases on the water rendering and the island models. It employs an FFT-based ocean shader set that allows the input of various water parameters such as color, choppiness, and wind. Machine learning strategies will be used in a later stage to estimate the parameters from drone footage. The website will also extend the immersive experience through enabling VR viewing with the support of WebXR API. The project remains a work in progress and is currently in the stage of ensuring the compatibility between the water shader and WebXR.

RkJQdWJsaXNoZXIy NDk5Njg=