algorithm-archive
algorithm-archive copied to clipboard
Add more languages to dev container
Feature Request
Add more languages to the dev container
Description
These langagues need to be accessabel by running their standard calling operation from inside the container. Some of them are already in progress but feel free to pick them up
- [x] Clojure
- [x] Dlang (#890)
- [x] go
- [x] kotlin (#930)
- [x] lolcode (#916)
- [x] piet (#918)
- [ ] matlab (octave)
- [x] emojicode (#890)
- [x] factor (#890)
- [x] racket (#875)
- [x] scheme (#876)
- [ ] scratch
- [x] swift (#880)
- [x] whitespace (#914)
- [x] elm (#911)
- [x] v (#910)
This will help the algorithm archive run many languages in the same environment and allow maintainers and contributors to use the container to test their code without having to install many, many languages.
Additional context
Related to #870 Feel free to reach out to @ntindle on GitHub or NTindle#1998 in the discord if you need help getting setup.
For Algorithm Archive Developers
- [x] This feature can be added to the Master Overview (if it cannot be, explain why in a comment below -- lack of technical expertise, not relevant to the scope of this project, too ambitious)
- [x] There is a timeline for when this feature can be implemented
- [x] The feature has been added to the Master Overview
- [x] The feature has been implemented (N/A)
What should we use for the whitespace
language?
I've sort of found the original interpreter here : https://web.archive.org/web/20130831115710/http://compsoc.dur.ac.uk/whitespace/download.php
Do we want to use that? :grin:
Or do we find/implement another interpreter?
(I don't think it's necessary to do so, but I should ask anyway).
clojure
seems to work fine, but I've tried it on the fft
file and it's not working with a missing dependency.
go
seems to be working fine.
clojure
seems to work fine, but I've tried it on thefft
file and it's not working with a missing dependency.
go
seems to be working fine.
Do you know what dependency it's complaining about
I'll have to test again, but I think it had to do with complex numbers. But I don't know Clojure
so I haven't really dived into the error yet.
That's fine, if you do end up running it again, open an issue for it
Most languages are sort of done now. The only last three missing are : scratch, matlab and kotlin.
Kotlin needs java to run. Do we use the official java or openjdk? I'm in favour of the second, but there might be reasons to use the official stuff. (Also it's a bit of a pain to setup...)
Scratch doesn't seem to have a way to automate the running scripts? I'll look into it more, but it might not be possible at all. Do we need to install the scratch program in this case?
For the Matlab language, I know that Octave is sort of an equivalent, but isn't a 100% match from what I remember (unless it's changed). What do we for this language?
I might've missed something but compared to the list of #906 aren't we missing languages to run here?
I'd prefer openjdk.
For scratch, I was afraid of that. Let's leave it until last and we may be able to mail the owner of the project and ask.
I'm not knowledgeable enough about matlab to determine if that is a problem.
I believe I listed only the languages that we didn't support after I built the initial list.
Java was already installed.
I've opened a question over at r/scratch for advice on integrating scatch.
@leios Could you or someone that knows a bit of Matlab shed some light on how to best proceed here for Matlab/Octave integration?