Jolie, the service-oriented programming language
jolie-lang.org
jolie-lang.org
[0] https://docs.jolie-lang.org/v1.11.x/language-tools-and-stand...
dependant types are not refinement [0]
ts and rust have ideas to have them[1], but not so officially
[0]https://www.reddit.com/r/dependent_types/comments/ay7d86/wha...
The premise was interesting but working with it was bad.
Maybe it improved in the last 5/6 years, but I doubt it's used for many (or any) real use case.
I'm guess eventually this will be the way but not for a while.
Specifically, you'll be able to use Jolie to write (tech-agnostic) APIs and then implement them in Java, using types automatically generated from the Jolie APIs.
I hope you guys try to make a first class transpiled language.
According to data from INSEE (France's Census Bureau equivalent), since 1925, only 6 babies were named Jolie in 2011 and then 5 more in 2018.
There's a Joline which you'd pronounce pretty much like jolie as the n is very weak, but it's barely more popular.
Anyway, jolie does mean pretty, but it's not really a name (11~0 at this scale).
I'm guessing the other commenters are right, GP probably meant "Julie".
A more common last name is Joly which is old form from joli, the masculine form of jolie.
No? Most software I use is a single service (in a sense that it's compiled to a single executable).
It is, however, the first time that I see the 'airbender explanation'. Nicely done!
The docs are overly wordy and in desperate need of editing.
It claims it's a language, but it looks more like a DSL on top of Java with non-obvious syntax.
It's been around since 2014? Is it used for anything serious? Or just riding the microservices gravy train?
The docs really need some love.. : - )
1. A contract-first language where all of your queries (reads) and mutations (writes) are defined in the GraphQL type language.
2. Refinement types can be implemented with directives or custom scalars.
3. The "built for the networked age" section is very similar to what Apollo Federation gives you - the ability to move implementations of part of your GraphQL API service to different servers with end clients being unaware.
4. Protocol agnositic - technically GraphQL is protocol agnostic but in really nobody cares because everyone uses HTTP or Websockets.
email:string( regex(".*@.*\\..*") )
This is incorrect regex for email. The correct one is https://pdw.ex-parrot.com/Mail-RFC822-Address.htmlI really wish people wouldn't code their own checks rather than use already existing standards. Some languages like Java even include proper checks in their standard library: https://java.net/projects/javamail
Several jobs back I had no end of arguments with some Java devs about not writing their own checks, that kept routinely failing on legitimate addresses.
The RFC says:
addr-spec = local-part "@" domain ; global address
atom = 1*<any CHAR except specials, SPACE and CTLs>
word = atom / quoted-string
so I think the bit in front of the @ has to be non-empty.Otherwise we can start saying not just not empty, it also needs no other @s etc. and before you know it we're rivalling the actually correct attempt up-thread. If you just want to catch typos, encourage entering real address (not just a space or full stop to fill mandatory field) then any basic thing is something, a compromise between legibility and how much it'll catch, we know there's a tonne of (mainly adversarial) bad input it'll miss, that's fine.
very.”(),:;<>[]”.VERY.”very@\\ "very”.unusual@strange.example.com
Which country are you claiming this entirely implausible legal scenario would work in?