Did a quick impromptu talk on flux #365
Replies: 4 comments 7 replies
-
Hi @nihalpasham -- Awesome, looking forward to seeing the whole talk!!! To your question: as far as I know, no -- or not yet! I suspect
|
Beta Was this translation helpful? Give feedback.
-
This is awesome @nihalpasham! I just finished watching the talk. It's great to see a perspective on flux from the outside. As Ranjit said, there are currently no real/production projects as the tool is not yet sufficiently mature (we are getting there). But we are in a stage where we are looking for real projects to verify. I found the application to parsers mentioned in the talk particularly compelling. We would love to chat about this or any other particular use cases you may have in mind. |
Beta Was this translation helpful? Give feedback.
-
A couple of embedded use-cases I can think of - the first two (I guess) involve
I'm assuming this may already be the case but just thought I'd check -can flux provide hints/info for translating or encoding validations/refinements at the rust type-level i.e apart from the ability to annotate rust code with flux-specs to test functional properties (which is awesome) example, in the snippet of code below, flux shows a post-condition error at compile time, which is great but if for some reason the developer doesn't catch this, the rust compiler is still going to compile this. #[flux::sig(
fn<p: int -> bool>(x: i32, y: i32) -> i32{v: p(v) && v >= x && v >= y}
requires p(x) && p(y)
)]
fn max(x: i32, y: i32) -> i32 {
if x > y {
x
} else {
y
}
}
#[flux::sig(fn(x: i32, y: i32) -> i32{v: v % 2 == 0})]
fn modulo_max(x: i32, y: i32) -> i32 {
max(4, 5)
} |
Beta Was this translation helpful? Give feedback.
-
@nihalpasham I tried to teach myself some embedded over the weekend and went over the rust embedded book . To check if I'm following, the code you are linking here corresponds (roughly) to what they call the If all of this makes sense, then my follow-up question is: after writing that layer what else can go wrong? |
Beta Was this translation helpful? Give feedback.
-
Over the weekend, I decided to do an impromptu talk on functional correctness and ended up exploring flux (just the basics).
https://bit.ly/3jTrASs
One question that popped up after the talk was - is flux being used in a real (production) project and if yes, what's the experience been like?
Beta Was this translation helpful? Give feedback.
All reactions