ソースを参照

supporting c might be a good idea

Lucas Stadler 11 年 前
コミット
36b6baed3f
共有3 個のファイルを変更した8 個の追加0 個の削除を含む
  1. 1 0
      go/linguaevalia/README.md
  2. 5 0
      go/linguaevalia/bin/run-c
  3. 2 0
      go/linguaevalia/linguaevalia.go

+ 1 - 0
go/linguaevalia/README.md

@ -26,6 +26,7 @@ to have them installed as well.
26 26
- `rust`
27 27
- `julia`
28 28
- `pixie`
29
- `c`
29 30
30 31
Adding more is relatively simple: If there is a command that runs code in
31 32
a language given a file, just add [the appropriate line](./linguaevalia.go#L40-L47)

+ 5 - 0
go/linguaevalia/bin/run-c

@ -0,0 +1,5 @@
1
#!/bin/sh
2
3
result=/tmp/`basename $1 .c`
4
cc $1 -o $result && $result
5
rm -f $result

+ 2 - 0
go/linguaevalia/linguaevalia.go

@ -45,6 +45,7 @@ var Haskell = LanguageGeneral{"Haskell", "hs", "runhaskell", []string{}}
45 45
var Rust = LanguageGeneral{"Rust", "rs", "./bin/run-rust", []string{}}
46 46
var Julia = LanguageGeneral{"Julia", "jl", "julia", []string{}}
47 47
var Pixie = LanguageGeneral{"Pixie", "pxi", "pixie-vm", []string{}}
48
var C = LanguageGeneral{"C", "c", "./bin/run-c", []string{}}
48 49
49 50
var languageMappings = map[string]Language{
50 51
	"go":         Go,
@ -55,6 +56,7 @@ var languageMappings = map[string]Language{
55 56
	"rust":       Rust,
56 57
	"julia":      Julia,
57 58
	"pixie":      Pixie,
59
	"c":          C,
58 60
}
59 61
60 62
func writeCode(code string, extension string) (*os.File, error) {