| 20 Jul 2022 |
infinisil | For some exotic platforms, this user seems to do some work: https://github.com/NixOS/nixpkgs/pulls?q=author%3Aamjoseph-nixpkgs | 16:08:57 |
yorik.sar | We could also fall back to generating Bash code... | 16:09:48 |
problems | the point is to do things bash can't do, like working with structured data | 16:10:43 |
Gytis Ivaskevicius | In reply to @yorik.sar:matrix.org We could also fall back to generating Bash code... I'd say either we keep mkderivation as it is or change it for the better | 16:10:51 |
infinisil | ash (it/its) 🏳️⚧️: I think yorik.sar means to essentially compile to bash from the language that's picked | 16:11:03 |
Gytis Ivaskevicius | In reply to @yorik.sar:matrix.org We could also fall back to generating Bash code... * I'd say either we keep mkderivation as it is or change it for the better. No middle ground | 16:11:03 |
infinisil | I think that's a viable temporary solution while the language waits for support for more exotic platforms | 16:11:25 |
yorik.sar | By the way, it's also an option - use Bash as runtime, but add a good language that can be translated to it. Then the translator is responsible for all type checking and guarnatees. | 16:11:38 |
infinisil | Oh but then the compiler from language X to bash needs to be portable.. | 16:11:57 |
infinisil | Sounds messy! | 16:12:09 |
yorik.sar | Well, we could build the builder on Linux or smth... | 16:12:28 |
Gytis Ivaskevicius | In reply to @yorik.sar:matrix.org By the way, it's also an option - use Bash as runtime, but add a good language that can be translated to it. Then the translator is responsible for all type checking and guarnatees. i am not aware of such languages and i find difficult to imagine something that does the job well. but surprise me ;) | 16:12:34 |
yorik.sar | (if we use system-agnostic drv for that) | 16:12:38 |
infinisil | Probably best to pick a very portable language from the start | 16:12:40 |
infinisil | Or wait for WASM | 16:12:50 |
infinisil | /WASI | 16:12:54 |
problems | my gf would like me to mention that if a language is picked for this that works with netbsd/vax, she's interested in trying to get it actually working on that platform | 16:12:58 |
yorik.sar | In reply to @kity:kity.wtf my gf would like me to mention that if a language is picked for this that works with netbsd/vax, she's interested in trying to get it actually working on that platform Port wasmtime there and all languages will come ;) | 16:13:29 |
kevincox | FWIW I don't think we need strong type checking for builder scripts. I just think we need more types than string and array of string. | 16:13:33 |
infinisil | Good point, portability isn't something static, people might be motivated to add support if they can use it for nixpkgs | 16:13:38 |
problems | In reply to@yorik.sar:matrix.org Port wasmtime there and all languages will come ;) not possible due to floating point issues | 16:13:46 |
yorik.sar | https://github.com/batsh-dev-team/Batsh | 16:14:14 |
Gytis Ivaskevicius | In reply to @infinisil:matrix.org Or wait for WASM lua/ruby can run on wasm as well as many others. Either way these derivations would not suddenly become system agnostic since we need something to covnvert xLang -> wasm | 16:14:15 |
yorik.sar | In reply to @kity:kity.wtf not possible due to floating point issues You can emulate them if needed. It would be slower, but would still work. | 16:14:49 |
kevincox | The performance of the builder script is unlikely to be a significant cost even with emulated floating point. | 16:15:31 |
problems | In reply to@yorik.sar:matrix.org You can emulate them if needed. It would be slower, but would still work. netbsd/vax doesn't have working support for ieee floating point emulation unfortunately. vax does have floating point it's just not what wasm requires | 16:16:06 |
problems | you could theoretically get it to work but it'd be subtly horribly broken | 16:16:24 |
yorik.sar | In reply to @kity:kity.wtf netbsd/vax doesn't have working support for ieee floating point emulation unfortunately. vax does have floating point it's just not what wasm requires I mean, you can always emulate it in wasmtime. | 16:16:48 |
problems | anyway, just a consideration | 16:16:48 |
problems | ruby and lua are good options and will work on that platform (and if you can run on netbsd/vax you can run on anything, pretty much) | 16:17:25 |