GSoC’24 - LPython: 6th Week

GSoC
Code
Internship
Python
LPython
Author

Vipul Cariappa

Published

July 6, 2024

This week was fun. Most of the things went smoothly this week.

Next week is GSoC’s mid-term evaluation.

Open Pull Requests

  • Support to print lists in REPL
    Adds support to print top-level expression of list type.
  • CI tests for LLVM 10, 14, 15 and 16
    LPython’s sister project LFortran tests its code base with multiple versions of LLVM. As LPython and LFortran share a lot of code, I am setting an automated CI workflow to build and run LPython with different versions of LLVM we intend to support. The versions selected are the ones LFortran supports and has automated CI workflow for.
    The CI passes all the tests for all versions of LLVM other than 14. I am not able to reproduce the bug on my local computer as of now.
  • Underscore: _ variable in REPL
    This PR introduces the _ (underscore) variable in LPython’s REPL (like in CPython’s REPL). The _ variable holds the value of the last evaluated expression from the previous REPL block.
  • Implement Jupyter kernel
    Implementation of Jupyter Kernel for LPython. The code is adapted from LFortran’s Kernel implementation.

Merged Pull Requests

Pull Requests On-Hold

I will be working on supporting to print of top-level expressions of other aggregate datatypes in REPL upcoming week. Some of the tests for existing PRs fail in GitHub CI, I will be looking into it.