Can Sequel be configured so it defer materializes?

No. Sequel does not defer typecasting. Typecasting happens at the dataset-retrieval level, not the model level.

What Sequel offers instead is the lazy_attributes plugin, which does not select the column during the query, but runs a new query on demand if the column value is actually needed (including handling of N+1 issues). This is superior in most cases, though it does require the plugin be specifically used.

It is theoretically possible to delay typecasting in adapters where the adapter does the typecasting instead of the driver (postgres when sequel_pg is not used). You could remove all of the type conversion procs, and then have the model column getter methods use the same procs for the conversion. Sequel doesn’t have an implementation for that, but it’s probably not hard. However, it’s not something I would want to support.

Basically, ActiveRecord is optimized for the case where the user is using inefficient queries, and Sequel is optimized for the case where the user is using efficient queries. Based on the average user of each, you could say that both are making the correct choice.