Ops Review

chromatic chromatic at wgz.org
Mon Jan 19 21:09:14 UTC 2009


I've skimmed all of the ops in our .ops files, and here are my recommendations 
for deprecations.  This is a first pass, so I may have missed a few ops we 
don't need (especially variants), and I may recommend removing something you 
use, so let's consider this a work in progress:

How often do we use the bitwise ops?
    - could they become functions?
    - multidispatch functions?
    - means pulling them out of vtables, which doesn't hurt my feelings

Do we still use prederef__?

Ops to remove:
	set_addr/get_addr
	pushmark/popmark/pushaction
	exchange
	set[insp]_ind
	clear[insp]
	bytelength
	sizeof

Ops we could make into methods:

	schedule
	addhandler
	debug
	bounds
	profile
	trace
	gc_debug
	interpinfo
	getstdin / getstdout / getstderr
	spawnw (make into a Proc object with methods?)
	time* (make into a Time object with methods?)
	sysinfo (make into a Sys object with methods?)

Debug ops:
	- most of these could be methods on a debugger object
	- getline/getfile can possibly stay

Experimental ops:
	- drop all except iter, exec, find_sub_not_null

Math ops:
	- ceil/floor
	- transcendental ops
	- gcd/lcm/fact

Object ops:
	- could add/remove parent become class methods?

Obscure ops:
	- remove

PIC ops:
	- remove

-- c


More information about the parrot-dev mailing list