Christian Menard

Results 39 issues of Christian Menard

I tried today to compile and execute the [Banking](https://github.com/lf-lang/benchmarks-lingua-franca/blob/main/C/Savina/src/concurrency/Banking.lf) C benchmark. Executing the benchmark very quickly eats up all my memory (I have 32 GiB RAM + 32 GiB swap)....

bug
c

Now that we have formatting addressed, we should also introduce linting and enforce that the code is warning free. Gradle has a convenient plugin called [checkstyle](https://docs.gradle.org/current/userguide/checkstyle_plugin.html) for linting java code....

refactoring

This enables the checkstyle plugin for gradle using the google style template. As it turns out, the checkstyle tool isn't quite the tool that I was after when I wrote...

The adjustable port side feature implemented in https://github.com/lf-lang/lingua-franca/pull/1807 is a great addition to LF. However, I find it a bit challenging to use in conjunction with reactions. For instance, I...

enhancement
diagrams

While trying to fix https://github.com/lf-lang/lingua-franca/issues/725 for C++, I realized that we don't have a clear definition of timeout and targets implement this differently. The website says: > The [target property...

The following program ``` target Python reactor Src { physical action a @side("north") output out1 @side("east") output out2 reaction(a) -> out1, out2 {==} } ``` produced this diagram: ![ReactorEBA](https://github.com/lf-lang/lingua-franca/assets/6460123/a9864f24-2fd0-465c-b40b-f002af9d037c) This...

bug
diagrams

While implementing bodyless reactions for C++ (https://github.com/lf-lang/lingua-franca/pull/1933), I realized that it is currently not possible to have a bodyless reaction with a bodyless deadline handler. In C++, we currently generate...

language
feature

The following program ``` target C preamble {= #include =} main reactor { reaction(startup) {= lf_print("Maximum of 42.0 and 75 is %.2f", fmax(4.20, 75)); =} } ``` produces this error:...

bug
language

The LF code generator now requires C++20. Thus we can also upgrade the C++ version in this repo.

Currently, all reactor elements register a pointer to themselves at the containing reactor. When a ReactorElement is moved, this pointer stored at the containing reactor needs to be updated. This...

bug