4 ms·
I am the author of Helvetia, feel free to ask me anything!
by lrenggli 8y ago
I am the author of Helvetia, feel free to ask me anything!
- yhoneycomb 8y agoHow did you decide on the name? I feel like it’s interesting but too easily confused with Helvetica, which could get annoying
- lrenggli 8y agoWe decided on the name because in Switzerland there are 4 official languages spoken and written; but all the infrastructure is shared (the promise of the tool). Helvetia is an alternate name for Switzerland: https://en.wikipedia.org/wiki/Name_of_Switzerland#Helvetia https://en.wikipedia.org/wiki/Name_of_Switzerland#Helvetia.
- DictumMortuum 8y agoIn Greece we call Switzerland Helvetia!
- mar77i 8y agoWith regard to the product, it could be a hint at mercenary times. Once upon a time it was possible for any army to employ Swiss mercenaries in their rows. Not that I, as an engineer, approve that it's generally a good idea to unite more technologies than absolutely necessary in the same project.
- mar77i 8y agoOh wait, "languages" in the title are natural languages! I haven't realized that typing the above comment. :D
- nkrisc 8y agoAsking as someone with a very shallow familiarity with Scandinavian languages: is there any connection to the Norwegian 'helvete', often translated to English as 'Hell'? EDIT: Adding this since I found it after asking https://en.wikipedia.org/wiki/Talk%3AHell,_Norway https://en.wikipedia.org/wiki/Talk%3AHell,_Norway Answer seems to be "probably not"
- atombender 8y ago"Helvete" comes from Old Norse helvíti, a combination of hel (death, also the land of the dead and the goddess Hel) + víti (punishment).
- em-bee 8y agodoes this work on current pharo versions?
- lrenggli 8y agoI don't think so, but you can download a working one-click image from http://source.lukas-renggli.ch/ http://source.lukas-renggli.ch/.
- em-bee 8y agohow can this be applied to other languages?
- lrenggli 8y agoI was arguing that it is possible, but given my limited resources I haven't built a working prototype. However, I have ported some of the infrastructure (dynamic grammars) that is used behind the scenes to Java: https://github.com/petitparser/java-petitparser https://github.com/petitparser/java-petitparser.
- ktpsns 8y agoMaybe you want to fix your server, it is down. https://downforeveryoneorjustme.com/scg.unibe.ch https://downforeveryoneorjustme.com/scg.unibe.ch
- lrenggli 8y agoSorry, I am no longer working at the university that is hosting the content. Please look at the cached site: http://webcache.googleusercontent.com/search?q=cache:6rmlBNhZ9cIJ:scg.unibe.ch/research/helvetia+&cd=1&hl=de&ct=clnk&gl=ch http://webcache.googleusercontent.com/search?q=cache:6rmlBNh...
- thecatspaw 8y agoDid they take it down since OP posted the link?
- lrenggli 8y agoNo, looks like there are too many people trying to access the site at the same time :-)
- drtse4 8y agoCan you add a link to a downloadable pdf of the presentation? The js thingy doesn't seem to work on most browsers :/
- lrenggli 8y agohttps://www.lukas-renggli.ch/dropbox/embedding-languages.pdf https://www.lukas-renggli.ch/dropbox/embedding-languages.pdf is a direct link to the presentation, but the slides might be hard to understand by themselves. https://www.youtube.com/watch?v=KXPv7vRb9jg https://www.youtube.com/watch?v=KXPv7vRb9jg is the video of the thesis presentation and http://scg.unibe.ch/archive/phd/renggli-phd.pdf http://scg.unibe.ch/archive/phd/renggli-phd.pdf is the thesis document itself.
- zackmorris 8y agoOne of the most productive periods of my life was in the late 90s writing C++ code and being able to embed an optimized asm block in the middle of the code when high performance was needed for blitters (note the Output Operands and Input Operands sections): https://wiki.osdev.org/Inline_Assembly https://wiki.osdev.org/Inline_Assembly The power of this is that the compiler did the work of connecting variables from the two environments so we didn't have to write glue code. There have been countless times where I've thought to myself "this would be trivial in another language". Can you write some kind of general purpose "embedder" that lets us use Javascript in C++, or PHP in Javascript even (PHP is simultaneously the best and worst language I've ever used). Maybe Swift or Kotlin or even Rust in Javascript. Stuff like that?
- lrenggli 8y agoYeah, had a similar experience with Turbo Pascal: it was a really cool to mix Pascal and assembler methods in the same file. Tools (debugger) were kind of broken though. In my thesis I propose to model the different languages as first-class elements that can be imported like a library and that do not only affect the compiler but also all other developer tools like syntax highlighting, formatters, auto-completion, debuggers, data viewers, etc.
- gambler 8y agoAny thoughts on OMeta? Or do you consider it to be completely different in terms of goals?
- lrenggli 8y agoOMeta is great to develop programming languages and I took some inspiration from it. At the time though, it did not allow dynamic language composition and did not have integration with developer tools. Though, I believe that some of these things could well be built on top of OMeta.