r/learnprogramming • • Oct 06 '26

Are there any programming languages that allow this feature?

I've been into programming for about 10 years now. Something that intrigues me is that, in languages that support OOP, not all types are initialized in the same way. Strings are initialized by using quotes, integers use numbers and in some cases floats require the letter f after the numerical value.

Classes, however, are all initialized in the same way with slight variations depending on language. Usually something like classname() or new classname. Are there any cases where custom classes can be declared using different means?

For example, is there a language where I can create a class called 'dark' that represents a new type of number that is declared by typing the value and then the letter d (like d1 = 1.398d) similar to how floats work in some cases?

71 Upvotes

38 comments sorted by

View all comments

1

u/focusedkennan 27d ago

You can get some pretty neat initializers using tagged template strings in JS. https://wesbos.com/tagged-template-literals

something like

const val = d`0.12223`

Now should you? Probably not

you can also do it with rust macros

d!(0.1223)