If you want something more detailed, there is a library which does the same things (with more documentation inside :)) : https://github.com/anuragsoni/routes
If you want something more detailed, there is a library which does the same things (with more documentation inside :)) : https://github.com/anuragsoni/routes
I’ve tried something recently in a project with Dream.
Suppose you have an url like /page/param1/param2/
: you want to be able to do three things:
Of course, some pages will have two arguments, some other three, and you have to find a way represent this in the type system.
For this, I’ve used a gadt:
type ('a, 'b) t =
| Static : string * ('a, 'b) t -> (unit -> 'a, 'b) t
| Int : string * ('a, 'b) t -> (int64 -> 'a, 'b) t
| String : string * ('a, 'b) t -> (string -> 'a, 'b) t
| End : ('a, 'a) t
The string is the parameter name in the url (id, login, …) and the gadt make the representation for this parameter in the type system. This gives me a way to declare some urls in the application:
val root : (unit -> 'a, 'a) t
(** The path to root / *)
val topic_url : (string -> 'a, 'a) t
(** The path to /:topic *)
val thread_url : (string -> int64 -> 'a, 'a) t
(** The path to /:topic/:thread *)
Then I have some some functions wihch handle this gadt:
val repr : (unit -> ('a, 'b) t) -> string
(** Represent the route associated with this path *)
val unzip : (unit -> ('a, 'b) t) -> (string -> string) -> 'a -> 'b
(** Extract the parameters from the request.
[unzip path extract f] will apply the function extract for all the
arguments in the path, and gives them to f
The function [extract] is given in argument in order to break dependency
circle.
This should be something like:
let extract_param request name =
Dream.param request name |> Dream.from_percent_encoded
*)
C’est d’autant plus vrai en entreprise. J’ai compris ca le jour ou j’ai été présenté comme un “expert en PDF”. Bah oui, l’expert est celui qui apporte une expertise (un avis quoi), ca ne veut pas dire qu’il donne de bons avis (ce qui ferait de lui un bon expert si vous avez suivi), mais juste qu’il se permet d’en donner.
J’allais le proposer ! Les mises a jours sont fréquentes et le jeu est très riche.
Mon seul regret est la gestion de la difficultés, qui se fait en appliquant des coefficients de plus en plus penalisants. Je trouve que ca ne permet pas de réfléchir aux différentes stratégies dans chaque parties, ca donne plutôt le sentiment d’avoir “une” stratégie gagnante, qui oblige a suivre un chemin de plus en étroit quand on monte en difficulté
Je ne comprend pas les axes :
Cela aurait fait sens si le deuxième axe indiquait le nombre d’habitants, mais là, je n’arrive pas a me représenter la diagonale du graphique
Sinon [email protected] est une bonne source
I’ve made something very close, which create a mapping following the window name (windows/xlib)
https://git.chimrod.com/smartcropad.git/about/
I’ve made it for circuit python, and it works with a serial connexion / JSON messages. (It could be updated with raw USB )
Not yet finished, but already used daily.
Pour ceux qui suivent les flus européenns sur reddit/lemmy qu’est ce que ca donne comme réaction ?
Je suis bien d’accord, disais ca dans le sens ou quel que soit le prix que l’on est prêt a mettre, ca vaudra toujours moins cher que ce qu’il nous apporte !
C’est juste inestimable un bon lit !
I’m using passwordstore + self hosted git server.
Passwordstore uses gpg for the encryption layer which combine fine with ssh (used to connect to the private repo).
I’m using qtpass as gui and there is also a client for Android named password store
Quand t’as des murs en pierre de 30cm d’épaisseur c’est pas étonnant.
Par contre il faut accepter de ne pas pouvoir mettre d’étagère parce que les murs ne sont pas droits, ne pas capter le wifi a l’étage, et devoir faire un dossier auprès de l’architecte des bâtiments de France avant de repeindre tes volets…
Un lit ne vaut pas son prix
La partie finance est exprimée en euros, cela signifie que les serveurs sont hébergés en Europe ? (Je ne m’étais pas posé la question lors de l’inscription)
C’est ça ! Merci bcp !
Merci, j’ai beaucoup aimé :)
Je n’arrive plus à retrouver le nom de ce projet d’écriture collectif qui se présente sous la forme formes de rapports sur des évènements fantastiques. Ça m’a fait penser à ça.
Voilà m’sieur : https://git.chimrod.com/smartcropad.git/about/ !
J’ai édité le readme à la va-vite, il faudrait ajouter un peu plus de contexte…
C’est juste le code du client sur le bureau. Pour la partie sur le clavier lui-même c’est trop spécifique pour que je puisse proposer quoi que ce soit. Il faudrait ajouter un module usb_raw pour être compatible avec qmk, pour l’instant j’utilise la connexion sur port série qui est proposée par circuitpython.
Ton message m’a fait penser a la notion d’aura de Walter Benjamin. On était vers 1930 et il s’intéressait a la copie parfaite de la photo qui pouvait être reproduite en grand tirage par rapport a l’oeuvre d’art unique.
En fait on passe son temps a se poser les mêmes questions !
Ca fonctionne comment, tu fais chauffer a la casserole puis tu verses dans les moules ou c’est plus complexe que ca ? Tu as conçu la forme des pièces toi même ?
C’est modulable et ca fonctionne avec Windows et XLib (je n’ai pas d’environnement wayland pour tester).
I’ve already got a +10 chalice this way. But this was a long time ago.