grapejuice
Initial release
あなたが探しているグレープジュースはgitlabにあります。これは、私が10代の頃に作ったかろうじて馬鹿げたプロジェクトです。
注:私はこれを作成して、シンプルなプログラミング言語を作成するのがどのようになるかを確認します。そのため、カップル以上の笑いにこれを使用することはお勧めしません
Linux用のGrapeJuiceインストーラー
GrapeJuiceは私が作った言語で、C ++にコンパイルします
私の友人は現在、Windowsバージョンに取り組んでいます
everything before it is the head. everything after is the body.
Functions:
defining a function:
In head of file:
[datatype (any c++ data type, or "string")]F_FunctionName [datatype]param1 [datatype]param2 ...
code
TOSS returnvalue
ENDDEF
for example:
[float]F_add [float]num1 [float]num2
[float]num1+num2 -> total
TOSS total
ENDDEF
calling a function:
In body:
F_functionName param1 param2 ...
(note that the parameters must be variables, not literals)
for example:
F_add one two
built-in functions:
F_RAND
returns a random number from 0 to 255
F_RAND_char
returns a random letter
F_PRINT message
prints message to the console
F_NL
prints a line break
F_BEEP
produces hard drive beep
F_GET_string
prints "::", gets user input, and returns value as string.
F_GET_float
prints "::", gets user input, and returns value as float
F_PAUSE
waits for user to press enter
F_INT_TO_CHAR int
returns a character with assci value of int
F_CHAR_TO_INT char
returns ascii value of char
logic:
use one per line with no spaces
multiply
*
divide
/
add
+
subtract
-
and
&
or
|
not
!
greater than
>
less than
<
equal to
=
flow:
if/else if/else:
IF booleanVarible
code
ENDIF
ELSEIF booleanVarible
code
ENDELSEIF
ELSE
code
ENDELSE
while:
WHILE booleanVariable
code
ENDWHILE
timer:
WAIT intVariableSeconds
variables:
declaring a varible:
[datatype]valueOrExpression -> name
examples:
[int]5 -> five
[int]3+3 -> six
changing a varible:
valueOrExpression -> name
example:
4 -> five
declaring an array:
[datatype]{index0 index1 index2 ...} -> name
example:
[int]{1 2 3 4 5} -> oneToFive
calling an array:
name{index}
example:
oneToFive{1}
strings:
the value for a string must be between quotes.
the symbol @ is the esape character
@_ is a space
@A is @
example:
[string]"strings@_and@_@A's" -> derp
プログラムの例は、 /プロジェクトに見つけることができます。各フォルダーには、コンパイルされていないバージョンである.grapeと、コンパイルされたバージョンである.juiceが含まれています。
[int] f_foo [int]番号 番号+1-> out 捨てます enddef $コメント エントリ [int] f_get_float->選んだ [int] f_foo picked-> thing f_printのもの f_nl f_pause