Randolf Richardson (Zhang Wen Dao)

Inter-Corporate Computer & Network Services, Inc.

SearchBin.CA - Proudly Canadian

Electronic Frontier Foundation Blue Ribbon Campaign

Official definition of atheism (and atheist)

Academia.edu profile for Randolf Richardson

YouTube channel for Randolf Richardson

Google+ profile for Randolf Richardson

Facebook profile for Randolf Richardson

LinkedIn profile for Randolf Richardson

SETI @home profile for Randolf Richardson

Sunday, September 24th, 2017 Profile|Contact|Canada
Home | Profile | Freedom | Philosophy | Technology | Other topics | Links & Resources
Home page
Open Source Software
Richmond Signage challenge

Freedom - Canadian Charter of Rights and Freedoms

Educational resources

These are my contributions to Open Source Software.  I hope that they will be helpful to others.


INT1 - PostgreSQL data type extension (PostgreSQL is my favourite database software)

This is my first serious attempt at writing C code, and I chose to begin with the not-so-easy task of extending the PostgreSQL database engine with an 8-bit signed integer data type that I call INT1 (an alternative name could also be TINYINT).  You are welcome to download my first attempt (and others as this project progresses), which is a work-in-progress, but should be complete insofar as the main key features of a datatype are present, namely index support (BTREE and HASH), conversions with other types, various operators (and as a bonus I included a special operator of ">>>" which performs an unsigned bitwise shift right), etc.

I welcome all feedback.  I suspect that there are likely many areas of my code that can be improved (I also intend to make the error messages more consistent), and in particular I did not use the PASSEDBYVALUE option with this type because I intend to create more types in the future that have richer structures for which passing by value will not be suitable (and so I also regard this as practice for those later modules that are presently in the conceptualization stage).

Version 1.01 adds support for generate_series() using INT1 data types (the first two parameters must be of the INT1 data type, otherwise the parameters will be coerced to the INT4 data type since INT4 seems to be the default for untyped integers).

Copyright © 2001-2017 Randolf Richardson.  Beautiful British Columbia, Canada.
All rights reserved.  All trademarks are the property of their respective owners.