SML Code Writer with Completion Feature

Job ID: 37768545

Budget: $15 – $25 USD

I'm looking for a proficient SML developer who can create a code writer supporting Standard ML language, emphasising on the code completion functionality. Your work doesn't necessarily have to include syntax highlighting and auto-indentation, but your primary focus should be on writing code for code completion. Please note, the code completion must not use Chat GPT, but beyond that, you have free rein over the design and implementation of the code completion feature.

Ideally, you should have:
- Proficiency in SML language
- Previous experience with similar projects
- A thorough understanding of code completion mechanisms

Matrices can be represented by a list of rows in SML, where each row is represented by a list
of the elements (going left to right). A square matrix is one where the number of rows is the
same as the number of columns.
(a) Define a function is_sqmatrix which takes a list of lists as input and checks whether it
represents a square matrix.
(b) Define a function diagonal that takes a square matrix and returns its diagonal. You
need not consider the case where the input list does not represent a square matrix.
For instance,
- is_sqmatrix;
val it = fn : ’a list list -> bool
- diagonal;
val it = fn : ’a list list -> ’a list
- is_sqmatrix [[1,3], [2,4,5]];
val it = false : bool
- is_sqmatrix [[1,3], [2,4]];
val it = true : bool
- is_sqmatrix [[1,3,4], [2,4,5]];
val it = false : bool
- is_sqmatrix [[1,3,4], [2,4,5], [3,5,6]];
val it = true : bool
- diagonal [["a"]];
val it = ["a"] : string list
- diagonal [[1,3], [2,4]];
val it = [1,4] : int list
- diagonal [[1,3,4], [2,4,5], [3,5,6]];
val it = [1,4,6] : int list
Both functions should be in the same file, You need not
consider the case where the matrix is empty or where any row is empty.