|
i feel like the ridiculous syntax is core to the cultural identity of annoying lispers
|
# ? Jan 19, 2020 19:50 |
|
|
# ? Jun 6, 2024 14:51 |
|
Suspicious Dish posted:i feel like the ridiculous syntax is core to the cultural identity of annoying lispers very much so i guess s-expressions are a product of their time, an artifact if you will of computing of days past
|
# ? Jan 19, 2020 20:38 |
|
badlang contains several layers of higher-level-languages embedded in comments of lower-level languages. for this reason every line must start with the string //#--(*
|
# ? Jan 19, 2020 20:41 |
|
badlang's compiler will definitely be faster in the next release
|
# ? Jan 19, 2020 20:55 |
|
badland comments start with ^^
|
# ? Jan 19, 2020 20:59 |
|
the delete operator is ,,|,,
|
# ? Jan 19, 2020 21:06 |
badlang ifs take the formcode:
|
|
# ? Jan 19, 2020 21:07 |
|
badlang's exception messages are just Aristotle quotes, and they are always statically linked
|
# ? Jan 19, 2020 21:27 |
|
dougdrums posted:badlang's exception messages are just Aristotle quotes, and they are always statically linked also you have to pass them up through the functions ala golang
|
# ? Jan 19, 2020 21:33 |
|
Boiled Water posted:also you have to pass them up through the functions ala golang badlang just lifts go's error handling exactly e: also it's module system (the old one anyway I know nothing about the new one)
|
# ? Jan 19, 2020 21:33 |
|
Suspicious Dish posted:i feel like the ridiculous syntax is core to the cultural identity of annoying lispers a bit, but racket has always been a bit of a rebel from that perspective, straying pretty far from scheme "standards" and so on.
|
# ? Jan 19, 2020 21:35 |
|
badlang only compiles to xop instructions
|
# ? Jan 19, 2020 21:39 |
|
dougdrums posted:badlang only compiles to xop instructions this, but xor
|
# ? Jan 19, 2020 21:43 |
|
how many bits are in a badlang int / byte / octet
|
# ? Jan 19, 2020 21:49 |
|
fritz posted:how many bits are in a badlang int / byte / octet You can set that at run time. Default is ten.
|
# ? Jan 19, 2020 21:58 |
|
Doom Mathematic posted:You can set that at run time. Default is ten. when asked why ten was the default, the developers replied that it only makes sense, since we naturally count in base 10
|
# ? Jan 19, 2020 22:09 |
|
fritz posted:how many bits are in a badlang int / byte / octet current year modulo 100
|
# ? Jan 19, 2020 22:17 |
|
The number of bits in a byte is configurable. It defaults to nine for one parity bit. The automatic parity counting feature was disabled two major releases ago after a number of critical flaws were found in it and was disabled by default before that, but some system libraries unpredictably expect it to be a parity bit and break if it's not while some use all 9 bits for data. You can change this value in a compiler setting but if you do this the standard library won't compile since the person who wrote the library thought anything other than 9 was dumb
|
# ? Jan 19, 2020 23:35 |
|
probably it should allow bit sizes to be configured per variable, so if you know an array will only ever hold numbers < 32, you can set it to use 5-bit elements and not waste memory to avoid confusing people with overly complex syntax, this should not be exposed in the type system. please remember to document accurately what size your function assumes its arguments will be.
|
# ? Jan 20, 2020 00:55 |
|
badlang has trigraphs
|
# ? Jan 20, 2020 01:27 |
|
to prevent arguments over tabs vs spaces, badlang forbids any leading whitespace. to prevent arguments over naming conventions, programmers are not permitted to choose their own variable or function names. instead, the ide will choose them for you by using a neural net to analyse how they are used and pick a semantically appropriate name, such as “n” or “butts”
|
# ? Jan 20, 2020 01:42 |
|
Tabs = 0. Spaces = 1. The choice of leading white space for each line is used as a parity bit for the rest of the line. This is an important feature for catching errors, so ides aren't allowed to automate it
mystes fucked around with this message at 01:55 on Jan 20, 2020 |
# ? Jan 20, 2020 01:53 |
|
Soricidus posted:probably it should allow bit sizes to be configured per variable, so if you know an array will only ever hold numbers < 32, you can set it to use 5-bit elements and not waste memory verilog works the same way
|
# ? Jan 20, 2020 02:58 |
|
Suspicious Dish posted:i feel like the ridiculous syntax is core to the cultural identity of annoying lispers racket's trying to become a real language rather than a dumb toy for annoying lispers. naturally the annoying lispers are unhappy about this.
|
# ? Jan 20, 2020 03:29 |
|
mystes posted:A lot of software has different versions of their documentation online like that. Theoretically they could use a robots.txt file to hide all the old versions from google but then you wouldn't be able to search for anything that was removed/changed which would sort of defeat the purpose. I don't know if there's any way they can tell google to just prefer the new version, unfortunately. rel=canonical lets you indicate that a different url with similar content should show up in the search results instead of this one, but google uses their advanced anti-spam ML techniques to usually just ignore it
|
# ? Jan 20, 2020 03:32 |
|
Plorkyeran posted:racket's trying to become a real language rather than a dumb toy for annoying lispers. naturally the annoying lispers are unhappy about this. a language that tries to retain all the lispiness it can while being actually useful for making things, and not just stroking off about macros, sounds really cool
|
# ? Jan 20, 2020 04:13 |
|
Plorkyeran posted:racket's trying to become a real language rather than a dumb toy for annoying lispers. naturally the annoying lispers are unhappy about this. tricking the masses into liking lisp isn't gonna happen tho. all you're doing is pissing off your only users, however terrible they are, and making searching for documentation impossible
|
# ? Jan 20, 2020 06:20 |
|
Suspicious Dish posted:tricking the masses into liking lisp isn't gonna happen tho. all you're doing is pissing off your only users, however terrible they are, and making searching for documentation impossible no ones being tricked, the bad is front loaded so the only person responsible for using bad language has only himself to blame not unlike lisp in the real world
|
# ? Jan 20, 2020 07:27 |
|
Phobeste posted:The number of bits in a byte is configurable. It defaults to nine for one parity bit. The automatic parity counting feature was disabled two major releases ago after a number of critical flaws were found in it and was disabled by default before that, but some system libraries unpredictably expect it to be a parity bit and break if it's not while some use all 9 bits for data. You can change this value in a compiler setting but if you do this the standard library won't compile since the person who wrote the library thought anything other than 9 was dumb Is this inspired by APL, where the array indexing base (e.g. 0- or 1-indexed) is controlled by a global variable that can be set at any time, which libraries do and depend on?
|
# ? Jan 20, 2020 11:19 |
|
Nomnom Cookie posted:a language that tries to retain all the lispiness it can while being actually useful for making things, and not just stroking off about macros, sounds really cool I’m suspicious
|
# ? Jan 20, 2020 13:53 |
|
Soricidus posted:to prevent arguments over tabs vs spaces, badlang forbids any leading whitespace. this logic is also applied to the default case sensitivity of string comparison operators. also badlang might use CPS sometimes?
|
# ? Jan 20, 2020 14:04 |
|
Athas posted:Is this inspired by APL, where the array indexing base (e.g. 0- or 1-indexed) is controlled by a global variable that can be set at any time, which libraries do and depend on? that's the downside of a language invented by a mathematician of course, idiomatic APL is probably among the languages least likely to use libraries at all, so often this wart is moot if you can read someone else's APL at all you're aware of this potential landmine
|
# ? Jan 20, 2020 14:15 |
|
Nomnom Cookie posted:a language that tries to retain all the lispiness it can while being actually useful for making things, and not just stroking off about macros, sounds really cool It depends on your definition of Lispiness. Clojure tried this and the Lisp weenies refuse to use it because it doesn't implement cons cells, the literal function names car/cdr and it uses reader macros for useful datatstructures instead of reimplementing garbage a-lists and whatever the hell else who cares
|
# ? Jan 20, 2020 14:18 |
|
SAVE-LISP-AND-DIE posted:It depends on your definition of Lispiness. Clojure tried this and the Lisp weenies refuse to use it because it doesn't implement cons cells, the literal function names car/cdr and it uses reader macros for useful datatstructures instead of reimplementing garbage a-lists and whatever the hell else who cares username post combo Pile Of Garbage posted:this logic is also applied to the default case sensitivity of string comparison operators. it absolutely needs call/cc and also setjmp long jump
|
# ? Jan 20, 2020 14:49 |
|
Pile Of Garbage posted:this logic is also applied to the default case sensitivity of string comparison operators. using badlang will immediately notify CPS to remove your children from your home
|
# ? Jan 20, 2020 14:55 |
|
It has TCO but with really strict rules around when it can occur that aren't just "tail call" (like maybe having more than some number of arguments?) and the tutorial has some examples of recursive search patterns that do not meet these requirements. Also the requirement is a tunable
|
# ? Jan 20, 2020 14:58 |
|
Until it is mature enough, Badlang is implemented in INTERCAL and so patching it requires using features such as: - DO FORGET to drop expressions from the call-stack - COME FROM, as an improvement over GO TO - PLEASE instructions that must be put in the program in the right amounts; not enough and you're not polite enough to run it, and too many also rejects the program for sniveling
|
# ? Jan 20, 2020 15:25 |
|
Internet Janitor posted:that's the downside of a language invented by a mathematician on another subject matter entirely: since you bothered to implement it at one point, do you know a reasonably idiomatic use of the odometer operator (in k and presumably others)? e.g. !4 2 3 yields 0 0 0 0 0 0 1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 (so !2 2 2 2 2 gives all 5-bit numbers as bit vectors) (i got to thinking about this since i was thinking that really !list should be an abbreviation of !#list to make keysets behave the same for maps and lists, which is the usual tiny mind consistency hobgoblin, but lead me to wonder why odometer gets such a simple shorthand when it is trivial to implement in terms of \: as well)
|
# ? Jan 20, 2020 15:48 |
|
Internet Janitor posted:that's the downside of a language invented by a mathematician "potential landmine" might be underselling a literal off-by-one error generator
|
# ? Jan 20, 2020 16:19 |
|
|
# ? Jun 6, 2024 14:51 |
|
Vomik posted:using badlang will immediately notify CPS to remove your children from your home it's package specific, interpreter specific and package specific. one day you'll do a casual import and BAM sorry your kids are in witness protection.
|
# ? Jan 20, 2020 16:20 |