home.social

Search

1000 results for “algo_luca”

  1. This is related to #pavex—I need to build the packages in the current workspace in a specific order, making sure to execute the code generation step _before_ trying to compile the generated code or any other crate that depends on it.

    I could introduce a `cargo` subcommand (e.g. `cargo pavex build`), but it'd be cool to make it transparent.

  2. This is related to —I need to build the packages in the current workspace in a specific order, making sure to execute the code generation step _before_ trying to compile the generated code or any other crate that depends on it.

    I could introduce a `cargo` subcommand (e.g. `cargo pavex build`), but it'd be cool to make it transparent.

  3. This is related to #pavex—I need to build the packages in the current workspace in a specific order, making sure to execute the code generation step _before_ trying to compile the generated code or any other crate that depends on it.

    I could introduce a `cargo` subcommand (e.g. `cargo pavex build`), but it'd be cool to make it transparent.

  4. This is related to #pavex—I need to build the packages in the current workspace in a specific order, making sure to execute the code generation step _before_ trying to compile the generated code or any other crate that depends on it.

    I could introduce a `cargo` subcommand (e.g. `cargo pavex build`), but it'd be cool to make it transparent.

  5. It looks like the next step for #pavex is becoming more aware of the borrow checker.

    In particular:

    1. emit code that passes the borrow checker where possible;
    2. emit errors when it's impossible;
    3. provide a "clone where needed" strategy for when you don't care.

    A bit scared of tackling 1. and 2., it could be a significant time sink.

  6. It looks like the next step for #pavex is becoming more aware of the borrow checker.

    In particular:

    1. emit code that passes the borrow checker where possible;
    2. emit errors when it's impossible;
    3. provide a "clone where needed" strategy for when you don't care.

    A bit scared of tackling 1. and 2., it could be a significant time sink.

  7. It looks like the next step for is becoming more aware of the borrow checker.

    In particular:

    1. emit code that passes the borrow checker where possible;
    2. emit errors when it's impossible;
    3. provide a "clone where needed" strategy for when you don't care.

    A bit scared of tackling 1. and 2., it could be a significant time sink.

  8. It looks like the next step for #pavex is becoming more aware of the borrow checker.

    In particular:

    1. emit code that passes the borrow checker where possible;
    2. emit errors when it's impossible;
    3. provide a "clone where needed" strategy for when you don't care.

    A bit scared of tackling 1. and 2., it could be a significant time sink.

  9. It looks like the next step for #pavex is becoming more aware of the borrow checker.

    In particular:

    1. emit code that passes the borrow checker where possible;
    2. emit errors when it's impossible;
    3. provide a "clone where needed" strategy for when you don't care.

    A bit scared of tackling 1. and 2., it could be a significant time sink.

  10. The API for nesting in #pavex
    is now more or less settled.
    What's left? Dealing with all the ambiguous situations that arise!

    An example:
    - the top-level blueprint defines a constructor for a singleton type, u64.
    - the nested blueprint overwrites it.

    What should happen?

    This is ambiguous!
    The nested route expects a certain constructor to be used.
    The parent route expects another one to be used.

    But the type is supposed to be a singleton, we can't create it twice!

    #rust

  11. The API for nesting in #pavex
    is now more or less settled.
    What's left? Dealing with all the ambiguous situations that arise!

    An example:
    - the top-level blueprint defines a constructor for a singleton type, u64.
    - the nested blueprint overwrites it.

    What should happen?

    This is ambiguous!
    The nested route expects a certain constructor to be used.
    The parent route expects another one to be used.

    But the type is supposed to be a singleton, we can't create it twice!

    #rust

  12. The API for nesting in
    is now more or less settled.
    What's left? Dealing with all the ambiguous situations that arise!

    An example:
    - the top-level blueprint defines a constructor for a singleton type, u64.
    - the nested blueprint overwrites it.

    What should happen?

    This is ambiguous!
    The nested route expects a certain constructor to be used.
    The parent route expects another one to be used.

    But the type is supposed to be a singleton, we can't create it twice!

  13. The API for nesting in #pavex
    is now more or less settled.
    What's left? Dealing with all the ambiguous situations that arise!

    An example:
    - the top-level blueprint defines a constructor for a singleton type, u64.
    - the nested blueprint overwrites it.

    What should happen?

    This is ambiguous!
    The nested route expects a certain constructor to be used.
    The parent route expects another one to be used.

    But the type is supposed to be a singleton, we can't create it twice!

    #rust

  14. The API for nesting in #pavex
    is now more or less settled.
    What's left? Dealing with all the ambiguous situations that arise!

    An example:
    - the top-level blueprint defines a constructor for a singleton type, u64.
    - the nested blueprint overwrites it.

    What should happen?

    This is ambiguous!
    The nested route expects a certain constructor to be used.
    The parent route expects another one to be used.

    But the type is supposed to be a singleton, we can't create it twice!

    #rust

  15. #pavex can now detect at **compile-time** if you are trying to extract a parameter that doesn't exist in the route template!

    It's taking a lot of work, but our router is shaping up to be incredibly robust and I'm thrilled about it.

  16. #pavex can now detect at **compile-time** if you are trying to extract a parameter that doesn't exist in the route template!

    It's taking a lot of work, but our router is shaping up to be incredibly robust and I'm thrilled about it.

  17. can now detect at **compile-time** if you are trying to extract a parameter that doesn't exist in the route template!

    It's taking a lot of work, but our router is shaping up to be incredibly robust and I'm thrilled about it.

  18. #pavex can now detect at **compile-time** if you are trying to extract a parameter that doesn't exist in the route template!

    It's taking a lot of work, but our router is shaping up to be incredibly robust and I'm thrilled about it.

  19. #pavex can now detect at **compile-time** if you are trying to extract a parameter that doesn't exist in the route template!

    It's taking a lot of work, but our router is shaping up to be incredibly robust and I'm thrilled about it.

  20. Six weeks have passed, it's time for another update on #pavex, the new #rust web framework I've been working on.

    I've focused on the router in March: trying to nail a good API and, most importantly, great error messages.
    It's looking quite promising!

    lpalmieri.com/posts/pavex-prog

  21. Six weeks have passed, it's time for another update on #pavex, the new #rust web framework I've been working on.

    I've focused on the router in March: trying to nail a good API and, most importantly, great error messages.
    It's looking quite promising!

    lpalmieri.com/posts/pavex-prog

  22. Six weeks have passed, it's time for another update on , the new web framework I've been working on.

    I've focused on the router in March: trying to nail a good API and, most importantly, great error messages.
    It's looking quite promising!

    lpalmieri.com/posts/pavex-prog

  23. Six weeks have passed, it's time for another update on #pavex, the new #rust web framework I've been working on.

    I've focused on the router in March: trying to nail a good API and, most importantly, great error messages.
    It's looking quite promising!

    lpalmieri.com/posts/pavex-prog

  24. Six weeks have passed, it's time for another update on #pavex, the new #rust web framework I've been working on.

    I've focused on the router in March: trying to nail a good API and, most importantly, great error messages.
    It's looking quite promising!

    lpalmieri.com/posts/pavex-prog

  25. Introducing the concept of scopes to a codebase later in the game is always a messy business.

    The implicit assumption that everyone can see everything has a way to percolate *everywhere*.

    Why are we here?
    #pavex needs to check at compile-time if your path extractor makes sense (i.e. does each field map to a route parameter?), which implies a way to go from a component to the relevant route.

    E.g. RouteParams<HomeParams> => /home/:home_id

  26. Introducing the concept of scopes to a codebase later in the game is always a messy business.

    The implicit assumption that everyone can see everything has a way to percolate *everywhere*.

    Why are we here?
    #pavex needs to check at compile-time if your path extractor makes sense (i.e. does each field map to a route parameter?), which implies a way to go from a component to the relevant route.

    E.g. RouteParams<HomeParams> => /home/:home_id

  27. Introducing the concept of scopes to a codebase later in the game is always a messy business.

    The implicit assumption that everyone can see everything has a way to percolate *everywhere*.

    Why are we here?
    needs to check at compile-time if your path extractor makes sense (i.e. does each field map to a route parameter?), which implies a way to go from a component to the relevant route.

    E.g. RouteParams<HomeParams> => /home/:home_id

  28. The more I work on diagnostics for #pavex, the more I appreciate all the effort that went into #rust.

    To call it "done" I have to find a way to include code snippets into the `help` section (using green/red for addition/deletions).

  29. How difficult is it going to be to support trivial specialization in #pavex? I'm about to find out 🔥

    The idea being: you can register a generic constructor for a type (e.g. `Json<T>`) and provide a more specific one (e.g. `Json<u64>`) that will take precedence.

    This is supposed to work exclusively in simplest case - i.e. your "more specific" constructor cannot have any unassigned generic type parameter.

  30. Quite happy with how the route conflict error is shaping up in #pavex!

    I have to do some work on sub-diagnostics (i.e. how to show multiple code snippets in a single error), but that's more of a general tech debt thing.