Adding my own BIF
From Erlang Community
0) run configure
1) add your bifs to erts/emulator/beam/bif.tab
e.g. bif re:grep/2 bif re:compile/1
2) create a C file
e.g. erts/emulator/beam/erl_bif_re.c
3) add your C file to erts/emulator/<arch>/Makefile
e.g. RUN_OBJS = $(OBJDIR)/erl_bif_re.o \
4) implement your bifs by stealing bits from existing erl_bif_*.c files
e.g. BIF_RETTYPE re_grep_2(BIF_ALIST_2){ Eterm result; result = magic_function(); BIF_RET(result); }
5) run make; make install
steps 0-3 need only be done once.
note that if you add bif re:grep/2
to bif.tab there should be a erl_bif_re.c
that implements BIF_RETTYPE re_grep_2(BIF_ALIST_2);

Digg It
Del.icio.us
Reddit
Facebook
Stumble Upon
Technorati

