Skip to content

Tenyaeva#18

Open
b08lsoai wants to merge 72 commits intoKakadu:masterfrom
b08lsoai:develop
Open

Tenyaeva#18
b08lsoai wants to merge 72 commits intoKakadu:masterfrom
b08lsoai:develop

Conversation

@b08lsoai
Copy link

implementation of the miniML interpreter

Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Zanuda-linter report

@@ -0,0 +1,84 @@
(** Copyright 2025, Tenyaeva Ekaterina *)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

File 'Tenyaeva/tests/generators.ml' doesn't have corresponding .mli interface

Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Zanuda-linter report

@@ -0,0 +1,32 @@
(** Copyright 2025, Tenyaeva Ekaterina *)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

File 'Tenyaeva/tests/qcheck.ml' doesn't have corresponding .mli interface

open Tenyaeva_lib.Ast

type options =
{ mutable dump_parsetree : bool

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using mutable data structures for teaching purposes is usually discouraged. Replace Hashtables by standard tree-like maps or consider Hash-Array Mapped Tries (HAMT). Use mutable references and mutable structure fields only if it is really required. In all places where it is needed indeed, describe in a comment why it is needed there.


type options =
{ mutable dump_parsetree : bool
; mutable max_steps : int

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using mutable data structures for teaching purposes is usually discouraged. Replace Hashtables by standard tree-like maps or consider Hash-Array Mapped Tries (HAMT). Use mutable references and mutable structure fields only if it is really required. In all places where it is needed indeed, describe in a comment why it is needed there.

let get st = st, Ok st
let put new_st _st = new_st, Ok ()
let fail e st = st, Error e
let run m st = m st

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Eta reduction proposed. It's recommended to rewrite 'fun st -> m st' as
'm'

Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Zanuda-linter report

@@ -0,0 +1,30 @@
(** Copyright 2025, Tenyaeva Ekaterina *)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

File 'Tenyaeva/lib/monad.ml' doesn't have corresponding .mli interface

open Tenyaeva_lib.Ast

type options =
{ mutable dump_parsetree : bool (* changed via command line argument *)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using mutable data structures for teaching purposes is usually discouraged. Replace Hashtables by standard tree-like maps or consider Hash-Array Mapped Tries (HAMT). Use mutable references and mutable structure fields only if it is really required. In all places where it is needed indeed, describe in a comment why it is needed there.

Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
Signed-off-by: Tenyaeva Ekaterina <b08lsoai@gmail.com>
@github-actions
Copy link

Документация и тестовое покрытие (98.53%) должны скоро появиться.

https://kakadu.github.io/fp25/docs/Tenyaeva

https://kakadu.github.io/fp25/cov/Tenyaeva

2026-02-27 22:38

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Zanuda-linter report

@@ -0,0 +1,30 @@
(** Copyright 2025, Tenyaeva Ekaterina *)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

File 'Tenyaeva/lib/monad.ml' doesn't have corresponding .mli interface


type options =
{ mutable dump_parsetree : bool (* changed via command line argument *)
; mutable max_steps : int (* changed via command line argument *)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using mutable data structures for teaching purposes is usually discouraged. Replace Hashtables by standard tree-like maps or consider Hash-Array Mapped Tries (HAMT). Use mutable references and mutable structure fields only if it is really required. In all places where it is needed indeed, describe in a comment why it is needed there.

@github-actions
Copy link

Linter report from 2026-02-27 22:39, for mini language Tenyaeva

File '_build/default/lib/monad.ml' doesn't have corresponding .mli interface

File "bin/REPL.ml", lines 10-11, characters 4-3:
10 | ....mutable dump_parsetree : bool (* changed via command line argument *)
11 |   ;................................................................
Alert zanuda-linter: Using mutable data structures for teaching purposes is usually discouraged. Replace Hashtables by standard tree-like maps or consider Hash-Array Mapped Tries (HAMT). Use mutable `ref`erences and mutable structure fields only if it is really required. In all places where it is needed indeed, describe in a comment why it is needed there.
File "bin/REPL.ml", line 11, characters 4-27:
11 |   ; mutable max_steps : int (* changed via command line argument *)
         ^^^^^^^^^^^^^^^^^^^^^^^
Alert zanuda-linter: Using mutable data structures for teaching purposes is usually discouraged. Replace Hashtables by standard tree-like maps or consider Hash-Array Mapped Tries (HAMT). Use mutable `ref`erences and mutable structure fields only if it is really required. In all places where it is needed indeed, describe in a comment why it is needed there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant