311 lines
3.6 KiB
Plaintext
311 lines
3.6 KiB
Plaintext
|
; TextPad syntax definitions for Logtalk (http://www.logtalk.org/)
|
||
|
;
|
||
|
; Author: Paulo Moura
|
||
|
; Last changed in: May 21, 2002
|
||
|
;
|
||
|
; Tags used and sugested colors:
|
||
|
; Keywords 1 message sending operators blue
|
||
|
; Keywords 2 entity enclosing directives purple
|
||
|
; Keywords 3 entity directives purple
|
||
|
; Keywords 4 built-in predicates
|
||
|
; Keywords 5 built-in methods
|
||
|
|
||
|
|
||
|
C=1
|
||
|
|
||
|
[Syntax]
|
||
|
Namespace1 = 6
|
||
|
IgnoreCase = NO
|
||
|
InitKeyWordChars =
|
||
|
KeyWordChars = a-zA-Z0-9_:^;*+,-./;<=>?@[\]^{|}
|
||
|
KeyWordLength =
|
||
|
BracketChars =
|
||
|
OperatorChars = <=>?@[\]|
|
||
|
PreprocStart =
|
||
|
SyntaxStart =
|
||
|
SyntaxEnd =
|
||
|
HexPrefix = 0x
|
||
|
CommentStart = /*
|
||
|
CommentEnd = */
|
||
|
CommentStartAlt =
|
||
|
CommentEndAlt =
|
||
|
SingleComment = %
|
||
|
SingleCommentCol =
|
||
|
SingleCommentAlt =
|
||
|
SingleCommentColAlt =
|
||
|
SingleCommentEsc =
|
||
|
StringsSpanLines = Yes
|
||
|
StringStart = '
|
||
|
StringEnd = '
|
||
|
StringAlt = "
|
||
|
StringEsc = '
|
||
|
CharStart =
|
||
|
CharEnd =
|
||
|
CharEsc =
|
||
|
|
||
|
|
||
|
[Keywords 1]
|
||
|
|
||
|
; Logtalk message sending operators
|
||
|
|
||
|
^^
|
||
|
:-
|
||
|
.
|
||
|
,
|
||
|
;
|
||
|
::
|
||
|
|
||
|
|
||
|
; Logtalk external call
|
||
|
{
|
||
|
}
|
||
|
|
||
|
|
||
|
[Keywords 2]
|
||
|
|
||
|
; Logtalk opening entity directives
|
||
|
object
|
||
|
protocol
|
||
|
category
|
||
|
|
||
|
|
||
|
; Logtalk closing entity directives
|
||
|
end_object
|
||
|
end_protocol
|
||
|
end_category
|
||
|
|
||
|
; Logtalk entity relations
|
||
|
instantiates
|
||
|
specializes
|
||
|
extends
|
||
|
imports
|
||
|
implements
|
||
|
|
||
|
|
||
|
[Keywords 3]
|
||
|
|
||
|
; Logtalk directives
|
||
|
initialization
|
||
|
info
|
||
|
mode
|
||
|
dynamic
|
||
|
discontiguous
|
||
|
public
|
||
|
protected
|
||
|
private
|
||
|
metapredicate
|
||
|
op
|
||
|
calls
|
||
|
uses
|
||
|
|
||
|
|
||
|
[Keywords 4]
|
||
|
|
||
|
; Logtalk built-in predicates
|
||
|
current_object
|
||
|
current_protocol
|
||
|
current_category
|
||
|
create_object
|
||
|
create_protocol
|
||
|
create_category
|
||
|
object_property
|
||
|
protocol_property
|
||
|
category_property
|
||
|
abolish_object
|
||
|
abolish_protocol
|
||
|
abolish_category
|
||
|
extends_object
|
||
|
extends_protocol
|
||
|
implements_protocol
|
||
|
instantiates_object
|
||
|
specializes_object
|
||
|
imports_category
|
||
|
abolish_events
|
||
|
current_event
|
||
|
define_events
|
||
|
current_logtalk_flag
|
||
|
set_logtalk_flag
|
||
|
logtalk_compile
|
||
|
logtalk_load
|
||
|
forall
|
||
|
logtalk_version
|
||
|
retractall
|
||
|
|
||
|
|
||
|
[Keywords 5]
|
||
|
|
||
|
; Logtalk built-in methods
|
||
|
parameter
|
||
|
self
|
||
|
sender
|
||
|
this
|
||
|
current_predicate
|
||
|
predicate_property
|
||
|
abolish
|
||
|
asserta
|
||
|
assertz
|
||
|
clause
|
||
|
retract
|
||
|
retractall
|
||
|
bagof
|
||
|
findall
|
||
|
forall
|
||
|
setof
|
||
|
before
|
||
|
after
|
||
|
|
||
|
; Mode operators
|
||
|
?
|
||
|
@
|
||
|
|
||
|
; Control constructs
|
||
|
true
|
||
|
fail
|
||
|
call
|
||
|
!
|
||
|
,
|
||
|
;
|
||
|
->
|
||
|
catch
|
||
|
throw
|
||
|
|
||
|
; Term unification
|
||
|
=
|
||
|
unify_with_occurs_check
|
||
|
\=
|
||
|
|
||
|
; Term testing
|
||
|
var
|
||
|
atom
|
||
|
integer
|
||
|
float
|
||
|
atomic
|
||
|
compound
|
||
|
nonvar
|
||
|
number
|
||
|
|
||
|
; Term comparison
|
||
|
@=<
|
||
|
==
|
||
|
\==
|
||
|
@<
|
||
|
@>
|
||
|
@>=
|
||
|
|
||
|
; Term creation and decomposition
|
||
|
functor
|
||
|
arg
|
||
|
=..
|
||
|
copy_term
|
||
|
|
||
|
; Arithemtic evaluation
|
||
|
is
|
||
|
|
||
|
; Arithemtic comparison
|
||
|
=:=
|
||
|
=\=
|
||
|
<
|
||
|
=<
|
||
|
>
|
||
|
>=
|
||
|
|
||
|
; Stream selection and control
|
||
|
current_input
|
||
|
current_output
|
||
|
set_input
|
||
|
set_output
|
||
|
open
|
||
|
close
|
||
|
flush_output
|
||
|
stream_property
|
||
|
at_end_of_stream
|
||
|
set_stream_position
|
||
|
|
||
|
; Character input/output
|
||
|
get_char
|
||
|
get_code
|
||
|
peek_char
|
||
|
peek_code
|
||
|
put_char
|
||
|
put_code
|
||
|
nl
|
||
|
|
||
|
; Byte input/output
|
||
|
get_byte
|
||
|
peek_byte
|
||
|
put_byte
|
||
|
|
||
|
; Term input/output
|
||
|
read_term
|
||
|
read
|
||
|
write_term
|
||
|
write
|
||
|
writeq
|
||
|
write_canonical
|
||
|
op
|
||
|
current_op
|
||
|
char_conversion
|
||
|
current_char_conversion
|
||
|
|
||
|
; Logic and control
|
||
|
\+
|
||
|
once
|
||
|
repeat
|
||
|
|
||
|
; Atomic term processing
|
||
|
atom_length
|
||
|
atom_concat
|
||
|
sub_atom
|
||
|
atom_chars
|
||
|
atom_codes
|
||
|
char_code
|
||
|
number_chars
|
||
|
number_codes
|
||
|
|
||
|
; Implementation defined hooks functions
|
||
|
set_prolog_flag
|
||
|
current_prolog_flag
|
||
|
halt
|
||
|
|
||
|
; Evaluable functors
|
||
|
+
|
||
|
-
|
||
|
*
|
||
|
//
|
||
|
/
|
||
|
rem
|
||
|
mod
|
||
|
abs
|
||
|
sign
|
||
|
float_integer_part
|
||
|
float_fractional_part
|
||
|
float
|
||
|
floor
|
||
|
truncate
|
||
|
round
|
||
|
ceiling
|
||
|
|
||
|
; Other arithemtic functors
|
||
|
**
|
||
|
sin
|
||
|
cos
|
||
|
atan
|
||
|
exp
|
||
|
log
|
||
|
sqrt
|
||
|
|
||
|
; Bitwise functors
|
||
|
>>
|
||
|
<<
|
||
|
/\
|
||
|
\/
|
||
|
\
|
||
|
|
||
|
; Logtalk end-of-clause
|
||
|
.
|
||
|
|
||
|
; Logtalk list operator
|
||
|
|
|
||
|
|
||
|
|