Giter VIP home page Giter VIP logo

crml-compiler's People

Contributors

adrpo avatar audrey-jardin avatar lenarb avatar p1way avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

crml-compiler's Issues

Sets not working

A placeholder to keep track of all the current issues with sets, current problem with mapping all operators on sets and propagating sets in all expression evaluation.

Time variable

Update/add some examples to test the new time variable once it is added to the compiler

is or a built in operator or not?

model OperatorExample2 is {
	// Definition of disjunction of two Booleans.
	Operator [ Boolean ] Boolean b1 or Boolean b2 = not (not b1 and not b2);
	// Example of function call
	Boolean b1 is external;
	Boolean b2 is external;
	Boolean b is b1 or b2;
};

but or is also defined in the specification as a built in operator, so it does not parse correctly, plus operator names should be in '', so the correct syntax is 'or' for a user defined operator

Solve problem when translating "check over" ETL operator

@lenaRB : The test report says that the "CheckOver_no_ext" example is successful but the translation of "check over" operator seems to me as still not finished. Is that normal?
I don't know if it requires a lot of effort from but it would be better for the user to stop the compilation in that case and say that such instructions are not supported yet.

Create doc folder

Create a folder to host CRML language specification as pdf (since html conversion is still under progress) as well as other publications made on CRML that are accessible online.

Wrong status in test_report.html

Status reported in test_report.html is not correct for some of the tests.
See in particular CheckOver example below that is mentioned as successful although no verification model has been provided (and hence no simulation could be verified).

image

update FORM-L library

update definition of 'check count' operators when traffic-light example will be supported by the compiler.

Running simulation tests on the files generated by the translator

Ideally we would find a way of running the docker image from JUnit, but there needs to be a way that does not reload it everytime otherwise it is ridiculously inefficient

Otherwise some script that runs all the simulated models

One issue to consider is that a lot of them rely on external variables, so we might need to connect them in some batch way.

the use of new

why is 'new' not used when creating a new period? I am still a bit fuzzy on when we use new and when it is implicit. Is it when we use it for type conversion? Like new Clock my_boolean?

RealExp example

RealExp.crml - there is exp which should be probably defined as something concrete

verifying test results

For some tests, especially ones without external variables it would be easiest to have the expected value as some kind of annotation instead of a whole reference file with results, because we only care about the value of the requirement for example.

Then we should just have an annotation for that in the relevant tests? var = b, expectedResult = true
@adrpo, @audrey-jardin what do you think?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.