GSoC/2016/StatusReports/IvanLakhtanov: Difference between revisions

From KDE Community Wiki
< GSoC‎ | 2016‎ | StatusReports
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 23: Line 23:
*** Caching of modules variables for faster update
*** Caching of modules variables for faster update
**Inline plots
**Inline plots
***Unit-tests
**Tab-completion
**Tab-completion
***Unit-tests
***Accounts current context, not simply showing all known symbols
***Accounts current context, not simply showing all known symbols
**Bindings for linear algebra and plotting wizards
**Bindings for linear algebra and plotting wizards
*In progress:
**Unit-tests for inline plots
**Unit-tests for tab-completion


'''Screenshot:'''
'''Screenshot:'''
[[File:Cantor_julia_backend_status.png]]


'''Blog:'''
'''Blog:'''
Line 55: Line 54:
*[https://phabricator.kde.org/D2458 Code completion]
*[https://phabricator.kde.org/D2458 Code completion]
*[https://phabricator.kde.org/D2459 Inline plots]
*[https://phabricator.kde.org/D2459 Inline plots]
*[https://phabricator.kde.org/D2509 Other unit-tests]
*[https://phabricator.kde.org/D2507 Documentation]
*[https://phabricator.kde.org/D2016 Highlighting fixes for Python]
*[https://phabricator.kde.org/D2016 Highlighting fixes for Python]
*[https://phabricator.kde.org/D2507 Documentation]

Latest revision as of 22:06, 20 August 2016

Project Overview

Project Name: Julia backend for Cantor

A Brief Description: The goal of the project is to implement Julia support for Cantor worksheet application with folowing features: command execution, variable management, syntax-highlighting, inline plotting and binding to existing wizards.

Status:

  • Completed :
    • Command execution
      • Error handling
      • Interrupt handling
      • Multiline input
      • Syntax errors
      • Unit-tests
    • Syntax highlighting
      • Simple keyword highlighting
      • Highlighting based on extracted symbols and their types
      • Correct highlighting of string literals and comments (ported also to Python backend)
    • Variable management
      • Showing available variables
      • Saving, loading, clearing, adding new variable
      • Caching of modules variables for faster update
    • Inline plots
      • Unit-tests
    • Tab-completion
      • Unit-tests
      • Accounts current context, not simply showing all known symbols
    • Bindings for linear algebra and plotting wizards

Screenshot:

Blog: https://juliacantor.blogspot.ru/

This is what I learned during GSoC:

  • Working with Phabricator
  • Get deeper knowledge of Qt5
  • Get familiar with KDEFrameworks
  • Understanding good Julia internals, especially part connected with embedding
  • More advanced Git stuff, like rebases

Work report

Phabricator