00:04:30 `quote invisible 00:04:31 35) With enough crappiness a display can show you invisible pink unicorns. \ 995) "May you live in INVISIBLE TIMES." --Old Chinese proverb. (It can look confusing when written with the proper Unicode.) 00:55:00 -!- adu has joined. 01:24:17 -!- ARCUN has joined. 01:24:43 I just got Cygwin. 01:24:53 what fun things can I do? 01:25:30 I'm asking, as I currently don't have an active project. 01:25:52 You could write a compiler for my programming language. 01:26:04 what is it? 01:27:14 I'm not sure yet. 01:27:26 Is there a reason to use Cygwin nowadays with WSL? 01:28:14 I'm using it, since I don't have a PC of my own. I run it on a flashdrive 01:28:24 Its so far pretty good 01:28:50 If did have a PC, though, I'd be using WSL instead 01:28:53 Aha. 01:29:48 When you finish your lang, tell me on my talk page 01:30:01 I don't have a wiki account. 01:30:14 Make oen then 01:30:16 My language is going to be so good, if I make it. 01:30:19 one* 01:30:55 I'd like to see it in action when you complete it 01:31:06 You could write some fancy software. 01:31:20 Maybe you can make a good debugger for me. 01:32:43 Well, that'll happen when you make a wiki account and tell me about it 01:32:47 Good Night 01:32:51 -!- ARCUN has left. 01:46:15 -!- nfd9001 has joined. 02:02:40 -!- Sgeo_ has joined. 02:04:52 -!- Sgeo has quit (Ping timeout: 248 seconds). 02:24:06 -!- adu has quit (Quit: adu). 03:19:06 [[Ojc]] N https://esolangs.org/w/index.php?oldid=65668 * A * (+215) Created page with "[[Ojc]] (standing for O[b]j[e]c[t]) is an [[object-oriented]] language designed to be very concise. It is influenced by both Smalltalk and Simula. [[Category:Languages]] Cat..." 03:29:10 -!- nfd9001 has quit (Ping timeout: 272 seconds). 03:36:36 -!- MDude has quit (Ping timeout: 248 seconds). 03:56:23 [[Ojc]] M https://esolangs.org/w/index.php?diff=65669&oldid=65668 * A * (+2283) No Simula, since I can't learn it. 03:57:50 -!- Sgeo__ has joined. 04:01:08 -!- Sgeo_ has quit (Ping timeout: 248 seconds). 04:31:45 [[Ojc]] M https://esolangs.org/w/index.php?diff=65670&oldid=65669 * A * (+1049) Examples 04:31:57 `quote 04:31:58 417) Capitalism is a cancer. But I'm a smoker, anyway, so... 04:37:28 [[Ojc]] M https://esolangs.org/w/index.php?diff=65671&oldid=65670 * A * (+1467) /* Doing math */ 04:37:55 [[Ojc]] https://esolangs.org/w/index.php?diff=65672&oldid=65671 * A * (-6) /* Doing math */ Typo 04:59:54 [[Ojc]] M https://esolangs.org/w/index.php?diff=65673&oldid=65672 * A * (+5602) /* Math in Ojc */ 05:28:51 [[Ojc]] https://esolangs.org/w/index.php?diff=65674&oldid=65673 * A * (+1392) /* Sets */ 05:30:31 -!- nfd9001 has joined. 05:30:40 -!- sebbu2 has joined. 05:33:48 -!- sebbu has quit (Ping timeout: 245 seconds). 05:38:49 Is the "top-level scope" in a file really like a regular scope or do languages just trick you to make it look like one? 05:39:15 It seems pretty different. 05:41:04 Pretty sure it's regular in Tcl. 05:41:08 But Tcl is a weirdo. 05:41:16 Tcl is indeed a weirdo. 05:42:04 OK, one property of regular scopes is typically that "{ a; b; c; }" means the same as "{ a; { b; c; } }", and if b is a declaration, it's only visible inside the inner block. 05:42:21 I guess that's actually still true in C. 05:43:09 But say you have a thing that reads multiple files and lets declarations refer to each other -- then that's not true anymore. 05:43:14 Definitions are being exported. 05:43:45 I want to have things that modify a scope, as in "const { int x = 1; int y = 2; }" instead of "const int x = 1; const int y = 2;". But I want those declarations to go into the same scope as the regular declarations. 05:43:53 (const is maybe not the best example but you get the idea.) 05:44:28 It's possible that "exported" declarations should be marked explicitly rather than just looking like regular variable declarations? 05:54:21 I'm starting to suspect that nVidia's notion of stereoscopy is limited and I should write my own. 05:54:51 you wouldn't copy a stereo 05:58:50 [[Ojc]] M https://esolangs.org/w/index.php?diff=65675&oldid=65674 * A * (+4753) /* Sets */ 05:59:26 [[Ojc]] M https://esolangs.org/w/index.php?diff=65676&oldid=65675 * A * (-1486) /* Dictionaries */ 05:59:48 [[Ojc]] M https://esolangs.org/w/index.php?diff=65677&oldid=65676 * A * (+1488) /* Sets */ 06:20:05 btc is weird... why do you split inputs like this? https://bitinfocharts.com/bitcoin/block/530048/183hmJGRuTEi2YDCWy5iozY8rZtFwVgahM 06:25:29 Is there something special about that transaction? 06:25:50 It's padded. All the inputs come from the same address. 06:26:00 I think I accidentally defined a homogenous coordinate system 06:26:22 nVidia has an equation PsInput.x += Separation*(〖PsInput〗_w-Convergence) 06:26:46 I decided I wanted to be able to represent PsInput.x += some_constant, which that equation doesn't allow 06:26:51 So why would you pad transactions... to slow down the overall transaction rate maybe? This was at a local BTC price peak, too. I don't know. 06:27:01 So x += realSep * w - virtualSep * Convergence 06:27:19 When realSep = 0, then the equation cannot be converted to the nVidia form 06:27:38 (is equation the right word here? It feels wrong. Formula?) 06:28:14 * when realSep = 0 and virtualSep and Convergence are non-9 06:28:17 non-0 06:28:48 Anyway, enough time wasted on this. (I started looking into this because I tried to understand this peak: https://www.blockchain.com/charts/output-volume?timespan=30days 06:30:31 ... bit as far as I can see this is just many transactions siphoning off tiny amounts from a single rich address (output of transaction = balance of input). So basically how a bitcoin exchange might operate.) 06:31:01 int-e: I saw that, but I meant why you were looking at it in the first place, or whether this is common. 06:31:04 But meh I really shouldn't waste time on this. 06:32:53 I don't know whether this kind of padding is a common tactic, I don't even know what exactly it's supposed to achieve. 06:33:22 It's a curiosity, really. Odd enough to make me wonder, not important enough to make me care. 06:58:02 [[Ojc]] M https://esolangs.org/w/index.php?diff=65678&oldid=65677 * A * (+1809) /* Classes */ 06:59:45 [[User:JonoCode9374]] https://esolangs.org/w/index.php?diff=65679&oldid=65144 * JonoCode9374 * (+10) /* Languages I've Inspired (feel free to add anything I've missed) */ 07:08:23 -!- wob_jonas has quit (Ping timeout: 245 seconds). 07:15:51 -!- Sgeo_ has joined. 07:19:34 -!- Sgeo__ has quit (Ping timeout: 244 seconds). 08:05:22 -!- AnotherTest has joined. 08:21:10 -!- cpressey has joined. 08:23:32 Good morning. I wonder how well Haskell's $ operator would work in an S-expression-based language. 08:24:42 So instead of (f (g x)) you'd write ($ f (g x)) 08:24:54 That's an improvement. 08:25:16 I was thinking you'd write (f $ g x) 08:25:34 I should've lowercased that because it was very much not serious. 08:27:49 [[Flop]] https://esolangs.org/w/index.php?diff=65680&oldid=65666 * B jonas * (+119) 08:28:41 -!- wob_jonas has joined. 08:32:22 shachaf: Your error handling thing reminds me of "lexical exceptions", though I don't remember if it's something I saw somewhere, or something I made up once 08:32:46 In "lexical exceptions" you're only allowed to throw X in a location that is lexically enclosed by a catch X 08:33:36 [[Talk:Ojc]] N https://esolangs.org/w/index.php?oldid=65681 * JonoCode9374 * (+262) Lps 08:34:13 -!- Lord_of_Life has quit (Ping timeout: 245 seconds). 08:34:20 That doesn't make them totally static, for example if you have local functions, you could write a recursive function inside that lexical block, and throw inside it 08:34:40 Is X an exception type or something lexically bound? 08:35:19 I am sorely tempted to tell you it is a lexically bound exception type 08:35:46 It's some kind of exception type, sure. 08:35:46 I think I'm asking what sort of identifier X is, or where it comes from. 08:36:36 When you throw, you almost always throw a newly-created value, whether it is a value of type "exception" (as it usually is), or not 08:36:51 Throwing existing values is... not something I've seen done. 08:37:12 -!- heroux has quit (Ping timeout: 268 seconds). 08:37:27 -!- heroux has joined. 08:37:28 Maybe you make up a new exception value, out of some local variables you have - that's common. 08:37:34 I'm confused about what binds the values. 08:37:55 I don't know what you mean by that. 08:38:12 -!- Lord_of_Life has joined. 08:38:31 Maybe you can write a more specific example? 08:39:56 try { raise KeyError(12); } catch KeyError(n) { print(n); } <-- is ok 08:40:12 OK, I see. 08:40:20 try { foo(); /* which raises KeyError */ } catch KeyError(n) { print(n); } <-- is not ok, is not lexical 08:40:51 cpressey: so you only have lexical gotos? 08:41:32 btw, I hate that the opposite of "catch" is "throw" but the opposite of "raise" is "lower", and I usually end up saying "raise" and "catch" even though they're not opposites 08:41:39 I was wondering whether you meant something like "try { raise foo; } catch foo { ... }" where the identifier "foo" is bound by the catch. 08:43:29 wob_jonas: I guess so, but as I noted, they're still dynamic w.r.t. the stack, if you have e.g. a local recursive function in that lexical block 08:43:33 cpressey: I recommend "raise" and "except" then, as in python3 08:43:51 Can you give a recursive function example? 08:44:19 I don't really understand what you mean. 08:44:47 try { var f = function(m) { if m < 100 then f(m+1) else raise KeyError(13); } catch ... 08:44:48 Oh, I see, you mean you *define* a function inside a try. 08:44:59 Right, I'd just figured out what you meant. 08:45:50 but what happens if you copy f and leak it out of that scope? do you get a full call/cc? 08:46:45 wob_jonas: I guess it raises an exception that will never be caught. I guess you could also try to prevent it from leaking out. 08:47:08 This seems like a bizarre combination. 08:47:27 Well, I think this must be something I made up, rather than something I encountered somewhere. 09:24:28 -!- arseniiv has joined. 09:29:41 wob_jonas: I guess making the exception thrown by the escaped function, get caught by the lexical catch handler, would be a sensible way to handle it too (given that approximately none of this is very sensible) 09:30:21 cpressey: in that case what you have is a call/cc 09:30:25 [[Talk:Ojc]] M https://esolangs.org/w/index.php?diff=65682&oldid=65681 * A * (+528) 09:31:10 [[Talk:Ojc]] M https://esolangs.org/w/index.php?diff=65683&oldid=65682 * A * (+81) Link to tutorial 09:32:58 [[Ojc]] M https://esolangs.org/w/index.php?diff=65684&oldid=65678 * A * (+195) /* Tutorial */ 09:34:03 [[Special:Log/move]] move * A * moved [[Ojc]] to [[Salt]]: Because Ojc is not interesting 09:34:04 [[Special:Log/move]] move * A * moved [[Talk:Ojc]] to [[Talk:Salt]]: Because Ojc is not interesting 09:34:49 [[Salt]] M https://esolangs.org/w/index.php?diff=65689&oldid=65685 * A * (+4) 09:35:29 [[Talk:Salt]] M https://esolangs.org/w/index.php?diff=65690&oldid=65687 * A * (-3) 09:37:36 [[Salt]] M https://esolangs.org/w/index.php?diff=65691&oldid=65689 * A * (+17) /* Documenting the class */ A mess 09:38:15 [[Salt]] M https://esolangs.org/w/index.php?diff=65692&oldid=65691 * A * (-33) Smalltalk->Salt 09:39:40 [[Talk:Salt]] M https://esolangs.org/w/index.php?diff=65693&oldid=65690 * A * (+435) 09:45:29 wob_jonas: yes, and that feels slightly too "powerful" for what this was intended to achieve, probably, but who knows. 09:46:01 cpressey: you can always have a restriction of call/cc, such as call/ec 09:46:31 or something between 09:47:49 an explicitly bounded continuation where you tell how long you have to save the state 09:48:11 I'd like to know how linear continuations work. 09:51:59 -!- CountArthurStron has joined. 09:52:54 -!- CountArthurStron has quit (Client Quit). 09:53:10 -!- ArthurStrong has joined. 09:56:28 I have a language which is too "normal" to be an esolang, but is too weird to be a "normal" language. 09:56:46 apl? 09:57:32 myname: Point taken. 09:57:44 cpressey: if in doubt, make an entry about it on esolangs.org, but don't definitely claim that it's an esolang 09:57:57 we have a few such entries already 09:58:20 I've made so many esolangs that the languages I've made that aren't particularly esoteric will probably be considered esolangs by many 09:58:24 -!- ArthurStrong has quit (Quit: leaving). 09:58:40 Ah well 09:58:43 details! 09:59:26 -!- ArthurStrong has joined. 09:59:54 Do you think C++ is an esolang? 10:00:30 I think C++ is certainly a programming language that is esoteric 10:00:38 Whether it's an esoteric programming language is another matter 10:01:01 so almost every programming language is esoteric, right? especially modern ones 10:01:16 I think C++ is the way it is for nearly the same reasons esolangs are the way they are. 10:01:50 People enjoy doing things under odd constraints that make them hard but achievable. 10:01:53 myname: https://github.com/catseye/Robin/tree/develop-0.3 (I'm trying to get the next version of released) 10:02:24 -!- ArthurStrong has quit (Client Quit). 10:02:39 -!- ArthurStrong has joined. 10:03:59 [[Salt]] M https://esolangs.org/w/index.php?diff=65694&oldid=65692 * A * (+5853) 10:10:41 [[Salt]] M https://esolangs.org/w/index.php?diff=65695&oldid=65694 * A * (-6) I should not make a Smalltalk-based language yet before I learn Smalltalk. 10:11:28 [[Talk:Salt]] M https://esolangs.org/w/index.php?diff=65696&oldid=65693 * A * (+90) 10:27:48 -!- Sgeo__ has joined. 10:29:40 [[Hello world program in esoteric languages]] M https://esolangs.org/w/index.php?diff=65697&oldid=65656 * A * (+29) /* SADOL */ 10:31:17 -!- Sgeo_ has quit (Ping timeout: 268 seconds). 10:41:10 I think it's too freaky to be a "normal" language, even if it's not an esolang. So I think, things like trying to add Haskell's infix $ operator to it, are fair game. 10:41:35 Should probably just try hand-converting some Scheme code to use it first just to see what it looks like though. 10:48:31 `? password 10:48:32 The password of the month is surprising. 10:58:23 -!- xkapastel has joined. 11:01:10 . o O ( cpressey doesn't believe in type signatures ) 11:03:03 oh I've found a few. 11:05:09 https://gist.github.com/cpressey/030883cadaf9a12a802cd6c95affc01e 11:06:22 It *does* reduce the number of parens, just like it does in Haskell. Whether it does so nicely, or not, I don't know. 11:06:32 cpressey: now I want to get rid of the outermost parentheses as well 11:06:56 int-e: That's hard. 11:06:59 (and `if` is a bit awkward 11:07:00 ) 11:07:51 int-e: Why don't I believe in type signatures? 11:07:55 I've used ghc's BlockArguments for if-then-else last weekend... https://gist.github.com/int-e/57eefc6cce29ed47ddaaca13a0774533#file-quine-hs-L319-L329 11:08:03 cpressey: because your code uses them so sparingly 11:08:23 cpressey: whereas I, almost religiously, put signatures on all top-level bindings. 11:08:34 partly as documentation, partly to localize type errors 11:09:49 int-e: If I thought of these modules as public, I would probably try harder to do that. But this is largely experimental stuff. 11:09:57 (The latter was the driving factor historically. I just got tired of working on modifying a function and getting a type error in a different function as a result.) 11:10:14 cpressey: I think some older lisps (of the common lisp side, not the scheme side) had this syntax extension where you can use square brackets as well as round parens, and a close square bracket closes all round paren that was open since the matching open square bracket 11:10:41 cpressey: is your dollar sign syntax the same, except you write round parenthesis instead of square brackets and a dollar sign instead of a left round parenthesis? 11:11:00 because if so, then the bracket thing is more general 11:11:28 but has basically the same power 11:11:33 just possibly more convenience 11:12:15 cpressey: anyway indentation is the best bracket-avoiding mechanism. ;) 11:13:07 wob_jonas: I don't like the "this one close paren closes all open parens" approach because the parens are unbalanced. 11:14:59 int-e: re ifThenElse, I was wondering on the weekend if Haskell's `if` couldn't just be defined as a function :: Boolean -> a -> a 11:15:19 `then` and `else` are good syntax though, justifies the sugar 11:15:20 ​/srv/hackeso-code/multibot_cmds/lib/limits: line 5: exec: then`: not found 11:16:00 cpressey: there are advocates of that idea, but if-then-else is common enough and the alternative would have more parentheses and worse (usually type) errors. 11:17:47 cpressey: the main downside, I guess, is that the syntax really only works for booleans; it can't be overloaded for a DSL. 11:19:16 cpressey: sure, in a *lazy* language you can define it as a function, only in haskell you have to call it something different from "if" because that name is taken by a keyword 11:20:04 but I'm used to strict languages, where it can't be defined as a plain function 11:20:06 (A secondary issue is that I never really know how to layout if-then-else, especially inside do blocks. I do something, but it never feels right and I'm not sure how consistent I am... might be worth checking.) 11:20:16 wob_jonas: my point was they didn't need to define that keyword, they could've made `if` a function defined in the prelude 11:20:27 cpressey: sure 11:20:53 int-e: I have the same issue, I usually avoid it and use `case` instead 11:20:57 I think the function is there in the libraries under some other name 11:21:24 :t Data.Bool.bool -- almost 11:21:25 a -> a -> Bool -> a 11:21:57 @hoogle Bool -> a -> a -> a 11:21:58 Data.Bool.HT if' :: Bool -> a -> a -> a 11:21:58 Data.Bool.HT ifThenElse :: Bool -> a -> a -> a 11:21:58 NumericPrelude ifThenElse :: () => Bool -> a -> a -> a 11:23:01 "utility-ht-0.0.1", okay 11:23:28 I was going to ask isn't if' the canonical name for that. 11:23:50 @hoogle if' 11:23:51 Data.Bool.HT if' :: Bool -> a -> a -> a 11:23:51 Control.Conditional if' :: ToBool bool => bool -> a -> a -> a 11:23:51 Data.ProtoLens.Compiler.Combinators if' :: Exp -> Exp -> Exp -> Exp 11:23:54 @hoogle a -> a -> Bool -> a 11:23:55 Data.Bool bool :: a -> a -> Bool -> a 11:23:55 Data.Bool.Compat bool :: () => a -> a -> Bool -> a 11:23:56 Control.Error.Util bool :: a -> a -> Bool -> a 11:24:04 @more 11:24:29 @pl if b then t else f 11:24:29 if' b t f 11:24:30 Apparently HT stands for... Henning Thielemann? 11:24:49 just define bools like (\xy.x) and (\xy.y), that eliminates the need of an if altogether 11:24:49 Sounds conceivable 11:24:55 fizzie: @pl is the only reason I can think of that this name would be "canonical". 11:25:04 cpressey: Yes. 11:25:05 myname: that's hard in the original Haskell type system 11:25:18 int-e: Well, my definition of "canonical" here is "I've heard of it with that name". 11:25:43 fizzie: That's not the canonical definition of "canonical". ;-) 11:27:25 (Though if you've heard it somewhere that may support the idea that it is indeed canonical. But it might also be an idiosyncracy of your source, and not enshrined in any canon that everybody subscribes to.) 11:28:23 ("Everybody" is, of course, referring to a certain subculture or clique. :P) 11:31:31 It may be that the reordered "bool :: a -> a -> Bool -> a" is more useful as a function anyway. 11:32:20 :t maybe 11:32:21 b -> (a -> b) -> Maybe a -> b 11:33:07 @pl if x then y else z 11:33:08 if' x y z 11:33:17 @pl bool x y z 11:33:17 bool x y z 11:33:54 @hoogle Maybe a -> a -> a 11:33:55 Test.Framework.Providers.API orElse :: Maybe a -> a -> a 11:33:55 Control.Error.Util (?:) :: Maybe a -> a -> a 11:33:55 Universum.Monad.Maybe (?:) :: Maybe a -> a -> a 11:34:35 @hoogle a -> Maybe a -> a 11:34:36 Data.Maybe fromMaybe :: a -> Maybe a -> a 11:34:36 System.Directory.Internal.Prelude fromMaybe :: () => a -> Maybe a -> a 11:34:36 Distribution.Compat.Prelude.Internal fromMaybe :: () => a -> Maybe a -> a 11:34:41 I should learn more Haskell. 11:35:11 @unpl if' 11:35:12 if' 11:35:22 @unpl if' x y z 11:35:22 if' x y z 11:35:36 @unpl if' True y z 11:35:37 if' True y z 11:35:40 hmm 11:35:47 does this really know about if' ? 11:36:49 @run if' True x y 11:36:51 error: 11:36:51 • Variable not in scope: if' :: Bool -> Expr -> Expr -> t 11:36:51 • Perhaps you meant ‘f'’ (imported from Debug.SimpleReflect) 11:37:01 @run bool x y True 11:37:03 y 11:37:20 @pl \y z x -> bool x y z 11:37:20 flip . flip bool 11:38:28 -!- nfd9001 has quit (Ping timeout: 258 seconds). 11:39:04 @pl \c a b -> bool a b c 11:39:04 flip (flip . bool) 11:40:13 I don't even know enough Haskell syntax to write a `case` on one line 11:40:22 @pl \a b c -> if c then a else b 11:40:22 flip . flip if' 11:40:25 ah 11:40:51 Maybe it just knows enough about if' to translate if/then/else into it. 11:40:54 cpressey: it's like case expr of { pat0 => expr0; pat1 => expr1; } 11:41:21 I think 11:41:26 I'm not sure, I don't remember haskell syntax 11:41:48 > case otherwise of False -> "oops"; True -> "okay!" 11:41:50 "okay!" 11:41:54 > case otherwise of { False -> "oops"; True -> "okay!" } 11:41:56 "okay!" 11:42:16 ah with a single arrow 11:42:21 sorry 11:42:50 => in case is the mark of an ML programmer? 11:44:21 OK. I think it is just that @pl does not parse the syntax. 11:44:46 cpressey: how would you make \b f t -> if b then f else t point-free? 11:45:06 @pl would just not work with the syntax. 11:45:24 @pl \b f t -> if b then f else t 11:45:25 if' 11:45:41 @pl \b f t -> if b then f else t -- @pl parses all of Haskell syntax, didn't you know? 11:45:41 if' 11:45:56 It really doesn't. 11:45:59 @pl \b f t -> if b then f else t {- such as block comments -} 11:45:59 if' 11:46:08 Well, it doesn't parse case. 11:46:21 and that thing with the minus sign that I saw the last time 11:46:22 @pl \xs -> case xs of [] -> not; x:xs -> supported 11:46:22 (line 1, column 24): 11:46:23 unexpected '>' 11:46:23 expecting operator 11:47:03 @pl f x | odd x = 1 | otherwise = 2 11:47:03 (line 1, column 14): 11:47:03 unexpected " " 11:47:13 > @pl f x = if odd x then 1 else 2 11:47:15 :1:1: error: parse error on input ‘@’ 11:47:20 @pl f x = if odd x then 1 else 2 11:47:20 f = flip (flip if' 1 . odd) 2 11:48:10 @pl is an awful hack, really. 11:49:12 int-e: I'm not qualified to say how one could write `if'` point-free. 11:52:05 My inclination would be to write it in CPS. Which doesn't help? 11:53:06 You need a destructor for Bool. Something like if' or bool. ;-) 11:53:49 Or maybe a way of sectioning anything. 11:54:03 (if then else) b t f = (if b then t else f) ;-) 11:54:15 > (,2,) 1 3 11:54:17 (1,2,3) 11:56:06 "You need something else to complete it, something like if' itself" sounds a bit like my thought process was, yeah 11:57:31 @type (,2,) 11:57:33 Num t1 => t2 -> t3 -> (t2, t1, t3) 11:58:21 Sometimes Haskell reminds me of PL/I 11:58:43 "If some sequence of characters has a reasonable interpretation, the language will make that interpretation" 12:01:30 sounds also a lot like irp 12:03:38 > (2,) 1 3 12:03:40 error: 12:03:40 • Couldn't match expected type ‘Integer -> t’ 12:03:41 with actual type ‘(Integer, Integer)’ 12:04:01 > (1,2,3) : (,Int,) Int Int 12:04:03 error: 12:04:03 • Data constructor not in scope: Int 12:04:03 • Perhaps you meant one of these: 12:04:06 > (1,2,3) :: (,Int,) Int Int 12:04:08 :1:14: error: parse error on input ‘Int’ 12:04:14 hmm, doesn't work as a type? 12:09:15 well, a lot of things don't work as types 12:09:25 if-then-else, case expressions... 12:09:28 lambdas 12:09:48 in fact, since sections are lambdas, sections cannot really be expected to work on the type level 12:39:41 -!- MDude has joined. 12:40:51 You need a destructor for Bool. Something like if' or bool. ;-) => yeah, why isn’t it standard yet? 12:42:16 ah or is it? 12:42:27 I was confused, don’t mind that 12:43:03 I mean I revoke my question 12:47:40 . o O ( retract, withdraw ) 12:49:11 `? brevity 12:49:12 syn. "shortness" 12:53:57 So... "nub" is the very essence of brevity. 12:57:53 -!- Sgeo_ has joined. 13:00:11 int-e: yeah I wrote that and then it occurred I could write “I take back” 13:01:18 -!- Sgeo__ has quit (Ping timeout: 245 seconds). 13:32:27 -!- sebbu2 has changed nick to sebbu. 13:55:45 [[Flop]] https://esolangs.org/w/index.php?diff=65698&oldid=65680 * InfiniteDonuts * (+229) 14:32:38 For whatever it's worth, version 0.3 of Robin has been released. Already I know things I want to change for 0.4. But at least it is a little better than 0.2 was. https://github.com/catseye/Robin 14:36:31 cpressey: is this the questionable esoteric language that you've mentioned? 14:39:42 wob_jonas: yes 14:40:54 version 0.2 was in 2014, btw, so this is, like, a long-overdue update of something I haven't touched in 5 years, basically 15:20:27 [[SIMPLE (preprocessor)]] N https://esolangs.org/w/index.php?oldid=65699 * B jonas * (+1395) Created page with "'''SIMPLE''' is a text preprocessor created by [[David Madore]] in 1998, inspired by m4. SIMPLE has special syntax to expand a function parameter with each of its tokens qu..." 15:21:07 [[SIMPLE]] https://esolangs.org/w/index.php?diff=65700&oldid=8359 * B jonas * (+71) 15:21:59 [[Language list]] https://esolangs.org/w/index.php?diff=65701&oldid=65642 * B jonas * (+28) [[SIMPLE (preprocessor)]] 15:23:52 [[David Madore]] https://esolangs.org/w/index.php?diff=65702&oldid=59714 * B jonas * (+28) 15:28:50 -!- wob_jonas has quit (Remote host closed the connection). 15:32:13 -!- ArthurStrong has quit (Quit: leaving). 15:58:29 -!- cpressey has quit (Quit: A la prochaine.). 16:15:03 rats live on no evil star, huh 16:15:49 arseniiv: won't lovers revolt now? 16:17:05 Taneb: don’t know how well-known that palyndrome is, I took it from cpressey’s generated text :D 16:18:04 ah, seemingly it is more or less known 16:18:55 in poems and stories and music albums 16:22:45 [[Functional()]] https://esolangs.org/w/index.php?diff=65703&oldid=57492 * Hakerh400 * (-16) Update interpreter link 16:25:47 [[Bitwise Trance]] https://esolangs.org/w/index.php?diff=65704&oldid=59794 * Hakerh400 * (-3) Update interpreter link 16:25:55 arseniiv: I stole it from the song "Bob" by Al Yankovic 16:26:41 [[BitBounce]] https://esolangs.org/w/index.php?diff=65705&oldid=60020 * Hakerh400 * (+2) Update interpreter link 16:28:44 that’s weird 16:29:15 Yes 16:29:43 [[Functasy]] https://esolangs.org/w/index.php?diff=65706&oldid=60557 * Hakerh400 * (+93) Update interpreter link 16:30:30 [[Examinable Invocation Vector]] https://esolangs.org/w/index.php?diff=65707&oldid=62375 * Hakerh400 * (-188) Update interpreter link 16:31:01 [[Realm]] https://esolangs.org/w/index.php?diff=65708&oldid=64710 * Hakerh400 * (-164) Update interpreter link 16:41:18 -!- b_jonas has joined. 16:41:27 I just saw something funny 16:41:42 water was trapped between the two panes of the double-layered window of the bus 16:41:49 was a few centimeters high 16:41:56 it made nice waves as the bus accelerated 16:42:30 -!- FreeFull has joined. 17:11:05 [[SIMPLE (preprocessor)]] https://esolangs.org/w/index.php?diff=65709&oldid=65699 * B jonas * (+54) 17:45:04 -!- Phantom_Hoover has joined. 18:01:17 [ 0.45 * 50 75 18:01:18 b_jonas: 22.5 33.75 18:15:31 what language is [ 18:15:31 Whoah 18:15:39 * APic just thought, wtf, ##Esoteric is invite only 18:15:45 Then i realized it has one Hash less 18:15:46 😸 18:19:37 we are Officially Esoteric™ 18:21:03 [[Special:Log/newusers]] create * Antirapistrapistclub * New user account 18:22:22 *nod* 18:22:55 [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=65710&oldid=65630 * Antirapistrapistclub * (+419) 18:23:11 [[User:Antirapistrapistclub]] N https://esolangs.org/w/index.php?oldid=65711 * Antirapistrapistclub * (+0) Created blank page 18:23:20 [[User talk:Antirapistrapistclub]] N https://esolangs.org/w/index.php?oldid=65712 * Antirapistrapistclub * (+0) Created blank page 18:24:57 Ominous nick... 18:25:27 blank pages don't sound good 18:26:59 That could just mean that they don't like their user name/talk page links to be red. 18:32:26 Phantom_Hoover: J 18:32:41 Phantom_Hoover: [ is not the name of the language, it's the shortcut invocation for the bot 18:32:51 j-bot, jeval: 0.45 * 50 75 18:32:51 b_jonas: 22.5 33.75 18:33:53 oh, I see 18:35:10 and > is also not the name of a language, but it's a shortcut to evaluate things in a different language 18:35:40 > fmap (* 0.45) [50, 75] 18:35:42 [22.5,33.75] 18:37:43 [[Flop]] https://esolangs.org/w/index.php?diff=65713&oldid=65698 * InfiniteDonuts * (+69) /* Cat */ 18:38:01 [[Flop]] https://esolangs.org/w/index.php?diff=65714&oldid=65713 * InfiniteDonuts * (-1) /* Infinite Loop */ 18:42:14 cpressey: the definitions in https://github.com/catseye/Robin/blob/master/stdlib/cmp.robin#L147 don't seem right 18:42:41 either that or the documentation for what those functions are supposed to do 19:15:29 -!- Melvar has quit (Quit: WeeChat 2.4). 19:31:29 -!- laerling has left ("Leaving"). 19:32:33 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 19:36:55 [[Special:Log/newusers]] create * Zektay77 * New user account 19:37:04 @tell cpressey (hello) in your Robin description on Github, you said PicoLisp has macros; one of my friends says it isn’t true. I personally don’t know anything about it and then I can tell him something if you wish 19:37:05 Consider it noted. 19:38:09 [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=65715&oldid=65710 * Zektay77 * (+87) /* Introductions */ 19:38:37 [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=65716&oldid=65715 * Zektay77 * (+85) /* Introductions */ 19:52:45 -!- Phantom_Hoover has joined. 19:54:57 Should I use 0x8B or 0x89 for encoding reg-reg mov on x86? 19:57:56 -!- Melvar has joined. 19:58:23 Or more generally if there are redundant encodings like that with "foo r/m,r" and "foo r,r/m" is there a reason to prefer one? 20:09:02 [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=65717&oldid=65716 * Mid * (+139) /* Introductions */ 20:15:45 -!- unlimiter has joined. 20:21:37 shachaf: dunno, check (recent versions of) the intel optimization manual, the amd optimization manual, the optimization manual for your specific processor generation, and Agner's manuals 20:21:43 I think it doesn't matter 20:33:57 -!- Lord_of_Life_ has joined. 20:36:40 -!- Lord_of_Life has quit (Ping timeout: 258 seconds). 20:36:49 -!- Lord_of_Life_ has changed nick to Lord_of_Life. 20:57:25 -!- xkapastel has quit (Quit: Connection closed for inactivity). 21:23:37 -!- sftp has quit (Excess Flood). 21:24:09 -!- sftp has joined. 21:31:54 -!- flux98 has joined. 21:31:56 -!- flux98 has left. 21:34:13 -!- unlimiter has quit (Quit: WeeChat 2.5). 21:43:07 -!- xkapastel has joined. 21:51:43 -!- b_jonas has quit (Quit: leaving). 21:53:01 -!- Melvar has quit (Ping timeout: 246 seconds). 21:53:26 -!- Melvar has joined. 21:55:19 -!- AnotherTest has quit (Ping timeout: 276 seconds). 23:10:43 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds). 23:33:32 -!- FreeFull has quit.